William Jul/ 24/ 2019 | 0
One of the most common questions in game development is,
“How do I get started?”
A common, well-repeated answer is,
“Just start doing the thing!”
This definitely isn’t the first time that someone has talked about this. But, we thought it’d be interesting to explore the unique ways it’s worked out in Jumping the Gun’s early development.
How we Started
For starters, the engine we’re using, Unreal 4, isn’t the one we were most familiar with going in. All of us came in with a Unity background, where Prefabs and snap-on Components reign. That alone presented its own set of goals. Even tasks as simple as getting an object in the level! So, the best way to get a feel for the engine was to just start setting up the basics.
To set up our main ”character”, we had to create a (gun-shaped) game object, give it physics properties, and turning it into a reusable asset. None of these steps worked quite the way we expected, because Unreal and Unity have different names for almost every concept. The best way to get used to these changes in our workflow was, of course, to get hunt down tutorials and give it a try. While we definitely hit some roadblocks on the way,
It really helped to hit them early.
After the basics, the next step was to get some game mechanics going. We always planned for the central concept of Jumping the Gun to be simple – propel an oddly-shaped object around a level, but in a specific and controlled way. With this core mechanic, it was easy for us to set up and play around with. We knew that any 3D game engine we used was going to have built-in physics for us to use and a simple function or component to get that going.
We didn’t know, however, was exactly how the main mechanic was going to pan out. Details such as the force required, mass of the gun, and, particularly, the launch angle, were things we knew could only be figured out with some highly-scientific bumbling around. While common knowledge can help us guesstimate a few things before starting work in-engine, the only way to find satisfying values for force and mass was trying them out for ourselves.
It is very easy to get caught in the trap of endless optimization and mechanical perfection right off the bat. However, this approach really impedes progress, especially for beginners. It’s important to realize that the mechanics you’re working to improve might not make it into the final game. So, we intentionally haven’t done any optimization – it’s simply too early to do so.
So what does all this lead up to? Well, for one thing, the “just build it” philosophy helps you shape your game’s design. You can write a beautiful Game Design Document, but no amount of writing can completely define a player’s complete experience.
A Game Design Document can’t capture all the small things a player experiences in gameplay. They also can’t foresee every single mechanic they’ll want to add or take out as development progresses. The best way to find out how a game should play is to play it. And the only way to play a game is to make it first!