Prototyping is for sure an important phase of game development.The objective of prototyping is to create a small playable version of your game without sinking too much time into its development in order to verify early if some aspects of the game are actually viable.
The objective of this article is to show you how machinations and ue4 visual scripting can help you create and iterate fast on your game prototype.
We use machinations to prototype the game system and ue4 to prototype the gameplay,but let's first answer some questions:
What is Machinations and why use it:
As they say in the front page of https://machinations.io/, Machinations is a browser-based platform to design, balance and simulate game systems.
Despite the fact that the tool is still not perfect, Machinations is a pretty effective alternative to paper prototype. here, you don’t have to simulate the system by yourself by moving card and coin. it makes the system design prototype phase faster and the system easy to iterate.
We use it first also because it take less time than the second part, so we can iterate in this step and open unreal engine only when we are satisfied with the game systems prototyped in the machination tool.
Why use unreal visual scripting instead of coding:
To answer this question, an extract from the book “Game Design Workshop: A Playcentric Approach To Creating Innovative Games”:
<<Prototyping is not about so ware engineering.. It is an opportunity to try out ideas in a quick and dirty fashion. It is not the “real” code...In their Game Developers Conference presentation on the topic, Chris Hecker and Chaim Gingold of Maxis advise “stealing it, faking it, or rehashing it. The takeaways from a prototype should be abstract ideas, like algorithms or gameplay concepts.
One good way to keep yourself from the trap of turning your prototype into the final product is to prototype in another language>>...or to use visual scripting. And unreal engine blueprint is a really easy tool to prototype fast and have a playable result very quickly, definitively a good idea to use it if you want to prototype a gameplay concept.
Before we start prototyping, we first need a game idea. I recommend to use an ‘’elevator pitch’’ (see this article: http://dangenentertainment.com/how-do-you-pitch-to-us)
We use the elevator pitch of an old concept I have done: Dancetruction (Don’t judge me) - a dancing turn based rpg.
We only prototype the “Battle phase”: it’s typically Pokemon with dancer instead of little monster who fight each other with dance moves instead of flashy element attacks and you have to succeed a QTE in order to not fail your dance moves.
In the initial concept, we have many types of dancers, with many types of move, with different type of crowd effect and…we don’t care! To see if the gameplay concepts work we test it with a simple “fight” between two dancers who have 3 dance moves each so don’t hesitate to focus on a precise aspect in your prototype, less is more.
So the player chooses between 3 moves:
- an easy one associated to an easy QTE sequence which does less damages;
- a medium one, medium QTE difficulty and damages;
- a hard one, high QTE difficulty and high damages.
The player plays against the computer who also have a higher risk to miss is move depending of which move he try to do.
I-First phase: Machinations prototyping
In machinations, like in paper prototype, you can’t really prototype some aspect of the game which are highly related to computer experience (like the aim and shoot mechanic with a mouse for an FPS), so don’t hesitate to focus only on the features that can be prototype with this method. In my case, the QTE part can’t be prototyped with this tool, so here we represent the complexity of the QTE by a higher chance for the player to randomly fail its move. This can be really useful to balance your game by finding the perfect percentage of success and failure in the machinations system and make your QTE harder or easier until you get the same percentage of fail and success in average on a sample of tester in the real game.
So actually in the Machinations prototype, and the unfolding of a combat phase:
I have added a difficulty level which give you more chance to fail your dance move.
When you finish your Machinations prototype, don’t hesitate to do some playtest with people who match your persona, and to verify if your system can not be broken. If the game is already fun in this step, it’s a good point, but if it’s not, it’s ok especially if you work on a highly related to computer experience.
II-First phase: Unreal Engine Prototyping
We just prototype exactly the same things we have in machinations with the help of Mixamo’s characters and animations (https://www.mixamo.com) and add the QTE aspect. Using external royalty free resources helps you focus on the game features you want to test, in our case, it’s the QTE aspect. The only objective here is to make it work at fast a possible. In ue4, you can use projects template and modify them and you have a lot of nodes to prototype effectively, like a node for camera shaking, for time dilation, which can be really useful. If you’re a beginner with unreal engine, they are a lot of documentation and tutorial and you can find resources to help you do nearly everything, and with practice, you are able to do a lot of things without help.Don’t think about optimization, with a good computer and for a little prototype, that is not an issue. Depending on the prototype you’re working on, begin with the camera and the player control just after.
I still have work on the quick time event aspect but here is a video of my prototype on unreal engine:
When you finish your prototype, do more playtest oriented on the main features, iterate when it’s necessary and here you go, you’re ready to integrate the feature in the real game.