Game development tips: Thinking outside the (asset) box
Staff Writer By: Sergio Rosa (nemirc)
As you know, making games is (or should be) a creative process, from design, story, visual art and all that. However, it should also be a creative process when it comes to solving problems in the programming or gameplay routines.
For example, there are times when you want to do something in your game, but, to put it bluntly, you lack the programming or artistic skill to do it. When this happens, you have to do the next best thing: think of an alternative that may not be exactly what you wanted, but that will provide a somewhat similar result. However, creativity also plays an important role when you find yourself needing to solve problems related to game systems with assets that you may already have, but were not designed for your current kind of game.
Besides my small point-and-click game that I've been sharing with you for the last blog posts, we're also working on a third person platformer titled The Nightmare from Beyond. The game is described as "Tomb Raider meets Lovecraft" and that already gives you a good idea of what kind of gameplay the game will offer.
For the point-and-click game, I've been using Adventure Creator for the entire game. At some point, I wondered if Adventure Creator could be used for a not-so-point-and-click game, so we tried to make a quick 5-level prototype of a third person game similar to the PS2 horror games like Haunting Ground or Silent Hill. The main difference between this quick prototype and the point-and-click game you already know is the fact that the quick prototype had to be controlled via keyboard/controller, not via mouse clicking. The following video is from Haunting Ground, and it should give you a good idea of what I'm talking about.
So, why did we do that? Basically, we wondered if we could make a game similar to Haunting Ground (from a gameplay perspective) using Adventure Creator, even if it was not a point-and-click game, because Adventure Creator already had built-in all the features we needed: inventory, level switching, menus, hotspots, puzzles and item usage, swapping characters/skins, multiple save slots.
To be honest, this transition was not so difficult, because Adventure Creator already has options for "direct" controls. However, this is where things become interesting. As I said before, our "big" project right now is a third person platformer. There's a huge difference between that and a point- and-click game, mostly because the main character in a platformer does many things a character from a simple adventure game can't (like grabbing from ledges, for example).
However, even if both games are very different, they share some basic systems: we needed an inventory, level swapping, object picking and usage, and saving (the multiple save slots became a plus). Thanks to our previous experiment, we already knew how to make an Adventure Creator game that didn't require a mouse, so we already knew how to do some things. That doesn't mean we didn't need to deal with other specifics, like controls or custom cameras, since we already had those.
The following video shows the game with a dialogue system built using Adventure Creator, and also dynamic camera switching, using that same asset:
Since Adventure Creator allows you to create custom menus, we also took advantage of that and created a custom inventory menu and a few other menus (like a start menu or a game over menu) that would work well with our game.
The takeaway from this is that you should keep in mind that, many times you buy an asset from the Asset Store to fit a specific need, but sometimes you realize that same asset can be re-purposed to fit a completely different kind of game. In a similar fashion, I've ended up using some particle effects for very specific purposes that aren't quite what the original author intended.
At the end, it's all a matter of stepping back and thinking how you can do your job easier with whatever assets/tools you have. I hope you found this tip useful.
Relevant links Unity Asset Store: http://assetstore.unity3d.com/
Sergio Aris ROSA
Sr. Staff Writer