It's the year 42-XX...
Twitter has become sentient
Rouge @
symbols have started attacking mankind.
Our future depends on you!
Controls:
- Arrows or WASD movement.
- Spacebar to fire lasers
Fly through text-space dodging rouge @
symbols!
Press the space bar to shoot bullets -
at them!
You gain 10 points per @
destroyed!
You lose 1 point per @
that makes it past you!
Hoo-rah! We have a basic game working!
The game is meeting the requirements listed below!
We took inspiration and content from this source:
https://github.com/fundamelon/terminal-game-tutorial
We have a few ideas for moving forward:
- Clock based time via
clock_t clock (void)
- Window / Area to show score, game messages and story
- Scoring for time spent alive
Here are some old ideas:
- player drops stuff
- ground grows to try and kill the player
- good falling stuff / bad falling stuff
??? - Space Dodger (Just like the tutorial for now!) ??? - Collector / Bomber (Get ammo, drop bombs to stop death plants)
- qho
- myoung
- Make sure this is a
C++
program not aC
orC+
program. - Make sure all functions are in Copliens Form.
- Your program must be compiled with a Makefile
- The executable must be named ft_retro
The goal of this project is to implement a simplistic shoot-em-up style game in your terminal.
You will use a screen made up of a grid of 'squares'. These can be equated to the characters on your terminal. Entities of your game are each represented by a character on the screen.
- Acquire input
- Update game entities
- Render display
- Repeat until end of game
- Single-player mode
- Display using the ncurses library
- Horizontal or vertical scrolling
- Random Enemies
- The player can shoot at enemies
- Basic collision handling (if an enemy touches you, you die!)
- Game entities occupy one 'square' of the map only.
- Frame-based timing
- Display score, time, number of lives on the screen
- Clock-based timing using whatever system facilty or library you like
- Entities that can occupy multiple squares
- Enemies can also shoot
- Scenery (Collidable objects or simple background)
- Large and hard-to-beat boss enemies
- Enemies have a scripted behaviour
- Multiplayer, either local keyboard or network.
- Scripted game worlds with pre-determinded batches of enemies.