Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

 
Advanced search

1347615 Posts in 61901 Topics- by 53552 Members - Latest Member: SweetieBun

September 22, 2018, 07:51:51 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsSHOWDOWN: GUNSLINGING ACTION! (PLAYABLE INSIDE!)
Pages: [1] 2
Print
Author Topic: SHOWDOWN: GUNSLINGING ACTION! (PLAYABLE INSIDE!)  (Read 2128 times)
IllustriousChef
Level 0
**


View Profile
« on: June 04, 2018, 05:08:49 PM »

INTRODUCTION

"Gentlemen. The street is yours."

Hi all,

Over the weekend and the past few weeks, I have started a new project in my spare time, SHOWDOWN! I have always loved westerns and especially gunfighter movies so I decided to make my own!

The idea is simple, you are a gunslinger that will face down some of the baddest gunfighters the world has ever known! You have one life to reach the top and crown yourself as the ultimate lead slinger!

I will be posting more clips, vids, plans, ideas and demos for people to try out in the coming days and weeks!

Inspiration:
The Kid vs the Sweed




EDIT: 7/5/2018

PROTOTYPE AVAILABLE

Attached is everything you need to play the prototype and provide feedback:

Steps:

1. Click on and Download the Prototype Build from the link below:

2. Click on the Gameplay Instructions

3. Unzip the file Build_02.zip

4. Open the folder WindowsNoEditor and Double Click Project_Showdown to launch the project.

5. Play and enjoy!

6. Once you have had enough, click on the Feedback Form and submit

How to Duel (Gameplay Instructions)
https://drive.google.com/open?id=1yHFVMO1Bs1Bkea2WjljXiveLN11fZWq6VughqAlYhr4

Feedback Form
https://drive.google.com/open?id=1lQzp1_xa3Lt09CDFkMD9P71ok-2lJ1WXO0Rd6WbwKos

Prototype Build (Download Link)
https://drive.google.com/open?id=1hFVQhgwtj1DAgoLHoN5RKErCYSzovte7RomB

Again thank you all for following this DEV Log. I will update the links as new prototypes become available.

Enjoy!

Chef
« Last Edit: July 21, 2018, 10:14:42 AM by IllustriousChef » Logged
IllustriousChef
Level 0
**


View Profile
« Reply #1 on: June 05, 2018, 04:52:35 PM »

DEV LOG Post # 2

DRAW. AIM. FIRE.

Before I get into the mechanics of the game system I wanted to explain my target goals in regards to gameplay feel and mechanics. A Gunfight is broken up into 3 main components; the Draw, the Aim, and Fire.

  • Draw - Drawing will be handled by Hand Speed. The player will need to manage this to get a maximum Speed rating. Max Speed gives the player the opportunity to fire faster with greater accuracy.

    Aim - The second component is the Aim. The player will need to manage this to get the maximum Aim. This component is called Focus. Max Focus ensures that after a player has drawn and fired, the bullet lands were they want it to.

    Fire - The last component is Fire. Firing your weapons should be straightforward and intuitive. When a player taps anywhere on the screen that is where their weapon will fire.

Today I will begin building out the prototype of what I have discussed above.

Breaking Down The Fast Draw




Chef
Logged
IllustriousChef
Level 0
**


View Profile
« Reply #2 on: June 06, 2018, 04:47:34 PM »

DEV Log Post #3

BUILDING A PROTOTYPE

Yesterday I discussed building out the prototype. Let me explain what I am working on.

Currently, I have the basics working, the Left Stick is used for speed, the Right Stick for Focus and Accuracy.

I went ahead and implemented a Focus Cursor friction model, however, there is ALOT of tweaking required. I don't believe I will have this sorted out until near the end of development as I have things planned for different gun types etc.

In the meantime my goals for this week are:

Implement the Accuracy function based on the amount of time the cursor is held over the target.


Failed Experiments:
Using Phone Tilt for Aiming - Since this is a mobile game my first iteration was using the phone's tilt capabilities. While it was novel it wasn't fun. Once I switched to the joysticks the game became much more enjoyable.

Notes on Pre-Production
This is a prototype. Its main job is to gauge fun and interest. In pre-production, I'm going to experiment, learn and fail ALOT. I may not have a shiny new feature to show every day but I will have progress. I will reveal more of the overall plan and things continue.

Inspiration:
Call of Juarez: Gunslinger - Duels




Chef
Logged
IllustriousChef
Level 0
**


View Profile
« Reply #3 on: June 07, 2018, 04:58:20 PM »

DOUBLE DEV POST DAY!

DEV Log Post #4

DESIGN. BUILD. TEST. LEARN

Last night as I was testing the Focus mechanic, I came across an issue with accuracy as it relates to world space and screen space. Depending on the device and screen that was used, there was a disconnect between the focus cursor location and the trace location. I suspect this is due to parallax.

This causes several issues with the largest being that the player will not have an accurate representation of where the focus cursor should be. This is game breaking.

I attempted to resolve this by placing the cursor in the middle of the screen like a traditional shooter and allowing players to turn the camera. Players would still need to line up the with their target to increase Focus.

This is a cool solution that allows the player to move the camera around and give you a traditional sense of aiming. However, it creates another problem; screen space. First, I really want to keep the cinematic look and feel of a gunfight so screen space is a big deal. Second, it doesn't take advantage of the mobile medium by having traditional aiming controls.

I need another solution.

I have a few ideas I will try tonight. The first of which will be reversing how the cursor is drawn on screen with respect to the targeting position. I want to let the game engine do as much heavy lifting as possible in the math department.

-------------------------------------------------------------------------------------------------------------------

DEV Log Post #5

BREAKTHROUGH

After several iterations, and some internet searching I was able to find a solution to the paralax issue! Players can now correctly use the Right Stick to move the cursor around the screen and the interaction between focusable objects and non-focusable objects is 100% accurate regardless of screen size!

This is a major gameplay piece!

For tonight, I am going to take a break from the Focus mechanic and work on the Hand Speed mechanic. For prototyping, I will use a 2D image to give me an idea of screen space and layout. I will use that 2D image to create the logic for prototyping purposes. The plan is for the game to be in 3D.

How Hand Speed Works
Hand Speed determine how fast you can draw and get your weapon on target. A High speed rating means you will be in a position to fire an accurate shot in a shorter amount of time.

It is also tied to how fast you tighten your Bullet Spread.

When you first draw your weapon your Spread is at MAX and by the time your draw is complete your Spread is tightened and locked to the amount of FOCUS you earned during the SHOWDOWN phase through having your cursor placed directly over your target.

Below is a video that gives a pretty good overview of Weapon Spread and Bloom in Fortnite.

Fortnite Bloom Explained | What is Bloom? 




Chef
Logged
IllustriousChef
Level 0
**


View Profile
« Reply #4 on: June 08, 2018, 05:54:55 PM »

DEV Log Post #6

ACCURACY AND FOCUS AND HAND SPEED

"Speed is good. Accuracy is Final."

Yesterday was a good day! I am one step closer to a playable prototype!

I was able to get the Hand Speed logic and 2D interface I discussed yesterday working together. I was able to get the Focus and scale functions working together along with its 2D asset.

Now, the player is able to use the Left Stick for keeping their hand close to their holster to increase Speed, While at the same time using the Right Stick to focus on an object to increase Focus. Their Hand will pull away from their holster over time so it is a constant game of positioning. The focus cursor will also "float" around requiring constant re-positioning.

Next Steps:
Creating an enemy and setting up the game mode. These tasks will be planned for next week. One week closer to a playable...

Inspiration:
Once upon a time in the West (1968) - Final duel (HD)





Chef
Logged
IllustriousChef
Level 0
**


View Profile
« Reply #5 on: June 09, 2018, 08:48:31 AM »

DEV Log Post #7

#SCREENSHOTSATURDAY


https://twitter.com/firstplayergame/status/1005489960265236480

Apologies for the link. I couldn't figure out how to post images to this thread.

Chef

Logged
IllustriousChef
Level 0
**


View Profile
« Reply #6 on: June 11, 2018, 05:02:48 PM »

DEV Log # 8

ENEMIES

Today we are back in the saddle. The plan for today is to create an enemy the player can compete against.

The enemy will:
  • React to something in the world that triggers their draw state.
  • Aim and shoot at the player.

Enemy States:
Since we don't have animations I will use colors to represent the enemy states. The color will remain until that state is complete. THIS IS STRICTLY FOR PROTOTYPE PURPOSES.

  • Staredown: Grey. The enemy is idle and waiting to react. Begining of the encounter.
  • Reaction: Red. The enemy has heard the signal and is starting to react to it. The player can now draw and fire.
  • Draw: Orange. After the enemy has reacted, they will begin drawing their weapon.
  • Aim: Yellow. The enemy will take some time to Aim their weapon.
  • Fire: Green. The enemy has fired at the player.

Enemy Stats:

Below are the stats that I will implement that will give each enemy and encounter its own unique personality.

  • Reaction Time: The time from when the enemy should react to the gunfight.
  • Draw Time: The time it takes the enemy to draw AND aim their weapon.
  • Accuracy: How accurate an enemies shot will be. This is to simulate the Focus mechanic on the player side for the enemy.
  • Fire Rate: How quickly the enemy will follow up their first shot with additional shots.

I'm toying with some ideas about what to do if a player draws early but I will discuss those at a later time.

Goals for the Week:
Implement the Enemy Character and a Game Mode.

Inspiration:
The Great Silence


Logged
IllustriousChef
Level 0
**


View Profile
« Reply #7 on: June 12, 2018, 05:06:49 PM »

DEV Log #9

THE NORTH STAR

We are going to take a detour today.

When doing indie game development it is important to have a plan. A Plan is your North Star. It allows you to stay on track and adjust to changes as they come up. Below is the current plan to get this prototype released and into the world, gather feedback, and improve the game.

Pre-Production / Prototype Phases and Plans

Phase I - The Foundation

  • Basic Player Controls and Functions
  • Basic Enemy Actions
  • Basic Game Mode
  • Basic Cursor Friction

Every game has a foundation and this is the foundation for this game from which everything else will be adjusted. Below are goals for this phase and completion criteria. YOU MUST HAVE COMPLETION CRITERIA WHEN DEVELOPING A PLAN. 

Basic Player Controls and Functions:
  • Implementation of Left Stick Controls for Hand Speed (done)
  • Implementation of Right Stick Controls for Focus (done)
  • Implementation of Touch Screen to Fire (In Work)

Basic Enemy Actions:
  • Implementation of React, Draw, Aim, Fire (done)
  • Implementation of Enemy Movement

Basic Game Mode:
  • Using the Player Controls and Enemy Actions, to determine winner and loser and hit location.
  • The game should keep looping for testing purposes allowing unlimited gunfights. This is done to test mechanics rapidly.
 

Basic Cursor Friction:
  • Implement Basic Focus Cursor Friction while Aiming
  • Implement Basic Idle Cursor Friction while Cursor is Idle
  • Implement Basic Hand Speed Friction and Movement

Phase II - Enemy Types and Abilities

Phase III - Game Structure

Phase IV - Weapons and Accessories

Phase V - Weather System

Phase VI - Menus and UI


Any of these items above can be changed, removed, or updated at any time during pre-production.

The Goal for this week is to get Touch and Fire At Screen Location implemented

Chef

Mad Bullets (Touch and Fire At Screen Location Gameplay)


Logged
IllustriousChef
Level 0
**


View Profile
« Reply #8 on: June 13, 2018, 04:53:18 PM »

DEV Log #10

SHOWDOWN GAMEMODE

Last night I was able to get the touchscreen controls working! Players can shoot at any location on the screen by touching!

Hit Scan vs. Projectiles
Currently, bullets are projectile based which means they have a flight time based around velocity. I just like the feel of this implementation better so that is what I'm going to go with for now. I am designing the game to have an arcade feel to it so I'm not planning on going deep into the ballistic model.

Next Steps:
This week I'll continue developing the SHOWDOWN Game mode. The plan is by the weekend to have a fully playable prototype minus the friction models.

I have some great ideas for the story mode but I'll discuss that at a later time.

Chef
Logged
IllustriousChef
Level 0
**


View Profile
« Reply #9 on: June 14, 2018, 05:32:11 PM »

Dev Log #11

WE HAVE A GAME

Ladies and Gentlemen, we have a game!

I define a game through win/loss conditions. Last night I implemented game mode logic to determine win/loss conditions. If the player shoots the target before the target can fire then you are the winner. Everything else is a loss. The idea here is there are no ties. 

Win Scenarios:
  • You shoot the enemy BEFORE they shoot you.

Loss Scenarios:
  • The enemy shoots you BEFORE you shoot them.
  • You shoot the enemy AND the enemy shoots you.

I played the game for around 30mins last night after I implemented stuff and it felt pretty good!

Testing Observations:
Due to this being a mobile game, you can only register one touch at a time. This means if you hold the virtual joysticks then you can't fire. This is a limitation I might need to design around.

Next Steps:
  • Reimplement Hand Speed and Accuracy to affect draw and shoot placement.
  • Put the combat on a loop to increase test case exposure.

PLAYABLE PROTOTYPE (Comming Soon):
I believe I am close to releasing a playable prototype to the world. I am thinking maybe two more weeks...

We're close people. Very close.

Stay Tuned.

Chef
Logged
IllustriousChef
Level 0
**


View Profile
« Reply #10 on: June 16, 2018, 11:20:44 AM »

DOUBLE-POST SATURDAY!

Dev Log #12

Hand Speed. Accuracy and Focus. Touch to Fire. Basic Showdown.

#ScreenShotSaturday




Chef

-------------------------------------------------------------------------------------------------------------------


Dev Log #13

90%

To make up for my lack of a Friday post today will be a double post!

Hand Speed and Accuracy has been implemented and it affects draw time and shot placement. Let me explain the mechanics a little further.

Draw
The Draw, in purely mechanical gameplay terms, is the time from when the player taps the screen to draw until the time the player is allowed to fire. This simulates pulling the gun from the holster and aiming it. To Draw the player must tap the screen once (you can draw at any time during a fight) then tap again to fire. The time between the first tap and when a successful second tap could register is based on Speed.

Accuracy
Accuracy is based on Focus. As the player increases their focus their Accuracy tightens. This was explained in more detail in DEV Log #5. What is different from Log #5 is instead of players being able to fire an inaccurate shot immediately while the accuracy reticle tightened, players now cannot fire until the weapon is fully drawn. After some testing, I believe this is more fun to play.

As of today, I believe we are 90% through the first draft of the player controls for duel gameplay. The next step will be recording the focus friction. This will be done over the next week.

Chef



Logged
IllustriousChef
Level 0
**


View Profile
« Reply #11 on: June 18, 2018, 07:37:31 PM »

DEV Log #14

FRICTION & TIME

Today I'm going to begin working on the Friction Model for the focus cursor. The idea is to get a nice feel for the cursor movement then iterate from there. The idea is to use Call of Juarez Gunslinger as inspiration.

To get the feeling it is going to take a little bit of time so the daily updates will be focused around this process for the next few days.

Mobile or Console or Both?
While I have been developing this as primarily a mobile game I have begun thinking about making it for consoles and PC as well. I have to admit I have a soft spot for joysticks. As I develop the friction model I will be using both mobile and gamepad to test out the movement. That is what lead to my controller consideration.


Trick Shot & Duel Mode




Until tomorrow...

Chef
Logged
IllustriousChef
Level 0
**


View Profile
« Reply #12 on: June 19, 2018, 04:29:11 PM »

DEV Log #15

FRICTION & TIME part 2

Last night was a success! I was able to successfully implement a model that feels pretty good for this stage of the prototype. I will continue to test and refine throughout the week.

Further Refinements
As I worked on the cursor friction model, I realized I would like to further refine the model further using the two techniques below; Focus Influence Movement, Crosshair Slowdown and Camera Rotation.

  • Focus Influences Movement - Movement Speed should also be based on Current Focus. As Focus increases the movement get tighter.
  • Crosshair Slowdown - An old trick used in console FPS to give aiming that sticky feeling. Once the cursor is over the target the movement amount is reduced to allow more precise movements.
  • Camera Rotation - The camera will need to lag behind the cursor movement. Not 100% sure how I'm going to implement this.

As I continue to refine the cursor friction model I will begin testing different weapons. One of the advancements over Call of Juarez will be the ability for the player to equip different weapons each with its own feel. the idea here is to allow players to find a playstyle or perfect one.

More information on weapons coming soon...

Chef
Logged
IllustriousChef
Level 0
**


View Profile
« Reply #13 on: June 20, 2018, 04:33:21 PM »

DEV Log #16

ROLLING ROLLING ROLLING

Camera rotation based on screen position is in. This was a minor update in terms of gameplay that probably could have waited until after the prototype was released but I felt I wanted to go ahead and put it in.

The Right Stick is used to control the Focusing Recticle so a solution for camera rotation was necessary. I decided to allow players once they place their cursor on the edge of the screen to rotate the camera a fixed amount. This creates better immersion and a better sense of scale.

Continuing on my path to Focus Refinement the next updates are planned...

  • Focus Influences Movement - Movement Speed should also be based on Current Focus. As Focus increases the movement get tighter.
  • Crosshair Slowdown - An old trick used in console FPS to give aiming that sticky feeling. Once the cursor is over the target the movement amount is reduced to allow more precise movements.

Hopefully, I can implement both items tonight.

Chef
Logged
IllustriousChef
Level 0
**


View Profile
« Reply #14 on: June 21, 2018, 06:15:40 PM »

DEV Log #17

FOCUS, MAN!

We are 17 days into this development and I feel pretty good about everything! Thanks for all of the support through views!

Developing a game in front of the world is kind of refreshing. Still trying to figure out how I want to hold back certain things with regards to story etc...

Last night I accomplished quite a bit, I was able to get the Crosshair Slowdown and the Focus Influencing Friction working. Now as the Focus increases the movement of the Focus cursor is reduced allowing more precision. Also as you sweep the Focus cursor over a target the cursor has a tendency to "stick" again allowing for more precision. Both of these could change in the future but for now, they feel pretty good and will be present in the first feedback prototype I release. 

Mobile Vs. Joysticks

I started this game out as a mobile game cause I had some ideas on how it might be cool. As I started developing I just couldn't shake the feeling of having the joystick in my hands. So going forward I will be developing the game with the joystick in mind. We will see how this works but I think It can be for the better.

Draw and Holster Action

One of the cool things I like is now tilting UP on the Left Stick Draws the weapon and tilting Down Holsters it. I think this gives a more visceral feeling to the gunfights.

Again this change is temporary for testing purposes and could change again once I get animations and art in...

Hand Speed

As I was testing the new Focus Friction mechanics I decided to recode how the player draws and how Hand Speed is built up. At first, I just had the hand speed tied to how close your hand was to the holster. I always knew I wanted to change it cause there was no gameplay there.  Now it is more about managing your hand location to build up your speed.

Plans

Don't know how much I'll be able to get to tonight, however. I might just have some duels back to back and see how many I can win before getting caught!

Chef
Logged
IllustriousChef
Level 0
**


View Profile
« Reply #15 on: June 22, 2018, 08:51:30 PM »

Dev Log #18

BUILDING THE WAREHOUSE

When creating/coding a game often you have to build the foundation first. In this case, we will be focusing on the system that calculates Focus. There are alot of components to Focus and I want to make sure I design a system that allows for uniqueness and supports variable playstyles.

Focus Gains and Loses: How much focus you gain or lose per tick will have a big impact on their feeling and playstyle. The basis of this system will be to use data curves. Data curves allow designers to create a curve and simply update the variable with the new curve giving the weapon a completely different feel.

Focus Friction: Another aspect of how a weapon feels is the friction that is applied> More friction will feel like a heavier weapon while less will feel lighter. I am currently working to get these systems synched and fun.

Hopefully I will be able to complete this system over the weekend...

Chef
Logged
IllustriousChef
Level 0
**


View Profile
« Reply #16 on: June 23, 2018, 09:08:14 PM »

DEV Log Post #19

#SCREENSHOTSATURDAY

https://twitter.com/firstplayergame/status/1010691002535833600

Chef
Logged
IllustriousChef
Level 0
**


View Profile
« Reply #17 on: June 25, 2018, 04:46:06 PM »

DEV Log #20

SPACE PANIC AND DONKEY KONG

"When people give you advice, they are just talking to themselves in the past." -Austin Kleon-

This post is more for beginning game developers and indie guys. This one is less about the game and more about the process.

I was working on SHOWDOWN over the weekend and started thinking about originality and innovation. I started thinking about the number of posts I had created using Call of Jaurez Gunslinger as inspiration for this game. I thought about implementing Call of Jaurez's mechanics as the first milestone to prototype completion. After all, every prototype has a clearly defined goal. In my case, that goal was/is can you recreate the mechanics of a single Gunslinger match.

But that also got me to thinking about originality. If I release the prototype with Gunslinger's mechanics is that good enough? How would this be perceived? would it be perceived as a knockoff or as the first step in innovation?

So I wanted to provide my insights and an explanation of this process.

First, when innovating or creating something original I believe it is best to start with something that has already been created. I see this as the natural progression of ideas. You play a game and think "Hey why didn't they do this instead?" Now with the availability of UE4, Unity etc. you can answer that question for yourself.

So I began with the question, "What would a game based on duel mode look and play like? Would it be fun? What other things does the game need to support it? Does it need those things? etc, etc."

This is when you need to fully embrace the idea of stealing like an artist. I don't want to make this overly long so I'll leave you with a list that separates Good Thieves from Bad Ones.

  • When stealing you want to: Honor not Degrade
  • When stealing you want to: Study not Skim
  • When stealing you want to: Steal From Many not Steal from one
  • When stealing you want to: Give Credit not Plagiarize
  • When stealing you want to: Transform not Imitate
  • When stealing you want to: Remix not Rip-Off


Steal like an Artist




Steal like an Artist (Book)
https://www.amazon.com/Steal-Like-Artist-Things-Creative-ebook/dp/B0074QGGK6/ref=sr_1_1?ie=UTF8&qid=1529966456&sr=8-1&keywords=steal+like+an+artist

Stay tuned...

Chef
Logged
M4uesviecr
Level 5
*****



View Profile WWW
« Reply #18 on: June 26, 2018, 02:34:17 AM »

Really good article! Kind of one I needed to hear. I'm currently working on music for a project and, like you, a lot of my references are being pulled from a few *extremely* reliable sources. IT got to one point, though, that I felt as though I was pulling techniques, and styles from a particular composition and started to question the breadth of my "innovativeness" in my approach to writing.

I would agree with literally every bullet point you posted in regards to stealing, but I wouldn't call it that. Everything is a derivative of another source in some way. If it's a carbon copy imitation then yeah, I consider that stealing. I'm curious to see where you end up pushing the Jaurez mechanics. I believe getting a deep rooted understanding of how a system works puts you in a position to push the limits.

Like I tell my students, learn the basics *first*, before you experiment.

This isn't what I intentionally planned on posting. I have *really* enjoyed watching you make your game and, more importantly, seeing gameplay videos of CoJ because I had *never* heard of it. The only gunslinger-ish game I've played (that I was absolutely addicted to) was a SNES favorite called Tinstar:



Anyway, keep up the great work!
Logged

IllustriousChef
Level 0
**


View Profile
« Reply #19 on: June 26, 2018, 04:55:00 PM »

@M4uesviecr,

Thanks for the kind words and I appreciate you following the project! The greatest compliment a creator can get is "I see you." So thanks for that!

Quote
" I'm curious to see where you end up pushing the Jaurez mechanics. I believe getting a deep rooted understanding of how a system works puts you in a position to push the limits."

I am also interested in seeing where I can take them! I have a few ideas that I'll express through prototyping and iteration so stay tuned for that. Some will fail some will be unexpected. 

You are correct in your point, you have to understand the systems and also the intent of the systems. Why the creator made those decisions.

CoJ:G has the Focus and Accuracy mechanics tied to a friction model. That makes the cursor feel like it has weight. This is to reinforce the idea that the cursor is the visual representation of a person trying to focus and aim. This is the "feeling" the designer was trying to replicate through mechanics.

When designing, I like to try to understand the "feeling" then design mechanics around that.

Quote
"Like I tell my students, learn the basics *first*, before you experiment."

Agreed. People say you have to know the rules to break them. I say know the rules so you can bend them to your vision or ignore them.

Quote
"I have *really* enjoyed watching you make your game and, more importantly, seeing gameplay videos of CoJ because I had *never* heard of it."

Thanks again! And I'm glad you are enjoying the ride! I am having a blast working and testing ideas and coming up with new designs and throwing out old ones. I can't wait to see the response to some of the ideas I have planned.

As I mentioned I am planning on releasing a prototype once I get it to the point where I can get valuable feedback. I'll put a link to download in this thread so keep watching!

Chef
Logged
Pages: [1] 2
Print
Jump to:  

Theme orange-lt created by panic