So I decided to abandon the previous idea and start a new one. I tried to prototype “How to Hack Friends and Influence Robots” as a simple command line game and I couldn’t wrap my head around how to make the game mechanics work. Mainly, I couldn’t figure out how to prevent the game from being just a glorified matching game.
I didn’t realize Global Game Jam was happening until I checked my twitter feed during the weekend. Instead of rushing to downtown SF and trying to join a team mid-way through the game jam, I decided to use the weekend to prototype a different game for this month’s #1gam. My soundcloud feed consists solely of 3 genres: bboy breaks, dumb meme songs, and anime remixes. One of the songs that ended up playing had some anime girl screaming, “SENPAI!!” and so I thought making a game based on that might work out for the theme of “Friends.”
Once again, I decided to name it first before actually even thinking about how the game would work. I decided to call it, “Watashi no Senpai Collection Overrush.” I don’t speak or understand Japanese, so I had to do some light googling in order to figure something out. The general idea is that you play as some anime girl running around collecting boys within a time limit. The gameplay is a lot easier to describe and understand than the mechanics within “How to Hack Friends and Influence Robots.” It’s a bit anime meme-ish, but I’m 100% down with that.
This is what I was able to build so far during the weekend:
I used a bunch of pre-made models on the Unity asset store to help me with the process.
Query-chan:
https://www.assetstore.unity3d.com/en/#!/content/35616
Taichi:
https://www.assetstore.unity3d.com/en/#!/content/15667
Stylized Simple Cartoon City:
https://www.assetstore.unity3d.com/en/#!/content/50095
I also purchased Super Text Mesh back during Unity’s Christmas asset sale, and so I slapped that into the project to get some use out of it.
Implementing the game was fairly basic. The camera follows the player at a fixed position. Character movement is strictly in the X and Z coordinates, and the player character has a dash ability that decreases some X% during dash and increases some Y% after a 2 second delay.
The Senpai was a bit more complex, but not by much. It was still very basic. The senpai have a very typical random roaming AI. They have a NavMeshAgent attached to them and a reference Vector that points to a random position within the play space. The NavMeshAgent moves towards the direction of the reference vector, and the reference vector changes to a new random position every X seconds. In summary, the Senpai walks to a different location every time the reference vector changes.
In terms of the Senpai’s level exit logic, if the player doesn’t collide with the Senpai within XX seconds, the Senpai will travel directly to one of six exit points outside the play space (located on the side walk). After reaching the exit point, the Senpai will travel in a straight line towards the nearest despawn point located outside of the game level.
Lastly, I added some cars in the background. They absolutely aren’t necessary to the gameplay, and they will most likely go unnoticed, but it did make the level feel a little bit more alive. Luckily, the fixed camera only shows the roads on the left and right side of the level, so cars only needed to move in one direction to provide the illusion of movement. No fancy steering necessary.
Overall, the game was able to appear very busy without the need of complex code. It’s a bit messy looking sometimes and can use some tweaking, but it looks pretty decent so far.
Now that I have something actually playable, its just a matter of polish from here on out. The game is lacking music and sound, so that will probably be the first thing to work on.