Sunday night, I was browsing some GameDev Subreddit on my cellphone and stumbled on a thread that caught my attention.It was talking about Rapid Game Prototyping. I found myself reading 3 articles about game prototyping and found it really interesting. Here they are :
My reaction after reading the articles: I can do that.
So here I am, prototyping 5 games in 5 days. I started my first game yesterday at 9h00 AM and spent around 8-10 hours on it. The goal was to have a simple game at a working level , and I’m proud to say I did it! Game definitly need some polishing but it will do it! So without more waiting, here’s my game!
Day 1 – 3DRunner
Make a simple 3D Runner with procedurally generated world, Temple Run being the most known example in the genre right now. I also wanted to create all assets(Tracks,Ship, Obstacles) myself for this project so it was even harder to fit in a single day.
How I did it :
I started by creating a LevelManager that would put tracks in the world at start of level. I then Created a World GameObject and made it move at a continually increasing speed. This way, I only had to attach all Tracks and Obstacle to the world and they automatically started moving.
This way, the player is not moving and it is really simple to control. Everytime the tracks are created, a difficulty is randomly evaluated between 0 and 1. Depending on the result, tracks might be created with obstacles or holes in it.
Lesson learned :
- I learn to use Cououtines and Yield. This is a powerful tools that I wish I used before.
- I improved my Blender/Unity workflow. The ship and tracks weren’t too complicated to create but it took a bit of time and it’ll be easier next time.
- I used the Particle System for the rockets fire. Playing with it going in different directions always make me more comfortable with it.
- Overall runner experience. How to generate world, give a nice feeling to the player, Saving highscore…
- I got a weird bug while trying to build to webplayer. Everything worked well in editor but I couldn’t build at all. Here are the error I got :
“An asset is marked as dont save, but is included in the build: UnityEditor.HostView:OnGUI()”
“Building – Failed to write file: sharedassets1.assets UnityEditor.HostView:OnGUI()”
When I searched for this bug, people said to reimport assets and try to force the refresh of the bugged asset/script. However none of what I tried worked until I found a link that gave me the answer. It was the NGUI Built-In font Lucia Grande. I changed it and everything worked. I decided to put it here in case other get this error.
What’s Left :
Polishing, definitly. Adding a background and some models on the side would improve the speed feeling to the player. The interface could be a bit more polished and I could add some functions to customize the speed/difficulty for the player.
Also, at a certain speed, it’s impossible to fall in the holes even if there are no tracks. I tried to make gravity bigger but it didn’t completly solve the issue. I would need to think of a better way to evaluate player’s dead if he should fall down a hole.
For a first game I’m really happy with the result. Making assets myself took some time but it was worth it. The WebPlayer build bug took me almost an hour this morning so I’m already late for my next game, so I should get started right now, I’m not even sure what game I want to build right now!!