I present to you Red Vs Blue, a strategy first person shooter game. Red Vs Blue is heavily inspired by the Precinct Assault mode of the PlayStation 1 game, Future Cop: LAPD.
- Arrow Up: Move Forward
- Arrow Down: Move Backward
- Arrow Left: Turn Left
- Arrow Right: Turn Right
- Z (in-game as O): Shoot
- X (in-game as X): Next/Accept/Purchase
- FPS gameplay by way of Wolfenstein 3D raycasting.
- Team select- Choose from 2 completely identical teams!
- AI enemy powered by a neural network.
- More than 1 map!
- Visuals that could be described as almost adequate.
- Beeps and, on occasion, boops.
How To Play:
The goal of the game is to have one of your drones reach the enemy heart. However, there are capture-able turrets scattered across each map. Capturing a turret is simple: Walk up to it and stand there until it changes colors. Capturing a turret not only causes it to fight for you, but each owned turret provides $1 every 10 seconds. Money can be used to purchase drones at a cost of $5 per drone. Once a drone is spawned in, it will happily march toward the enemy heart firing at anything it comes across. That could be an enemy drone, turret, or your rival, 99. Watch out for 99- it spent over 3 weeks in virt training to kill you.
99 is controlled by a real neural network. I trained the neural network using a process called Neuro Evolution. This process involves creating a population of neural networks (100 in this case) and having them play the game. We score each "brain" based on how well it played the game. Once all 100 brains have had a chance to play, we crossbreed and mutate them and start the whole process over again. This simulates evolution and over time the brains get better and better at the game. Honestly, this took about two weeks of constantly running to get a viable brain, which is about twice as long as it took to make the game in the first place.
99 is pretty good at playing the game, but honestly I would like to try again to see if I can get something better. 99 is great at capturing turrets and putting up a decent fight, but I feel it needed more time in the oven, so to speak. Maybe one day in the future.
99 "sees" the game world in much the same way as the player. For walls, we cast out rays in front of 99 to tell it the distance. Object vision is a little different in that we use vision cones. I did try raycasting for objects, but it leaves such large gaps in 99's vision at far distances so it didn't work out as well. 99 cannot see through walls, but does make twice as much money from turrets as the player does, just for a little difficulty boost.
I had a lot of fun making this project, but my biggest regret is that I tried to cram way too many things into this game. For the first time, I ran out of tokens! As of this writing, my token use is 8119 out of 8192, so yikes. I had to cut some things out, which was a big bummer. Originally I was using Flow Field Generation for automatic pathfinding for the drones. It worked great! But was also 700 tokens, so that had to go. Training the neural network took so many tokens that I had to move it into its own .p8 file and manually copy the neural network "brain" over to rvb.p8. So that was a fun mess, but hey it worked. And my second biggest regret is that I left all audio until the very end. I have the least experience in the audio department, so I procrastinated on it and that kind of bit me.
Thank you all for the kind words! I had a lot of fun working on this project.
cmounce, that's great to hear- thank you. And I'm glad the dated movie reference wasn't lost!
Kudos to Verb for finding my number one strategy for defeating 99- works every time, haha. I might have the tokens to add a temporary invulnerability on respawn and I could try having the starting turret be locked to its team to help stop spawn camping.
And thank you, citizen608! I can't take credit for the game idea, but I'm happy to hear it translated over to Pico-8. Future Cop was a fun game.
Top Gun quotes aside, what made me feel like an old man was kookycookies' comment. It wasn't until my 8 year old son, who played the game many times before I uploaded, saw the comment and said, "Yeah dad, they do look like Among Us." LOL, my bad.
Thank you all again for your feedback!
[Please log in to post a comment]