ascii-plague-shooter is a simple top-down shooter game made with ncurses.
untitled.mp4
The objective is to survive against rage-infected zombie-like enemies
until rescue arrives.
- Animations: Animations such as explosions.
- Real formulas: Real physics formulas and randomized values for realism.
- Multiple firearms: Variety of — real — different firearms.
- Realistic reloading: Same magazines are used after reloading. Firearms are chambered, shooting the entire mag increases the time to reload.
- Bullets: Different bullet types with higher lethality.
- Accuracy: The further an enemy, the less probability of a successful hit.
- Hit locations: Bullets can hit different locations which affect the probability of it being fatal.
- Splatter effect: Splatter effects after shooting an enemy may occur — although rare.
- Supply drops: Supply drops will be dropped to help you survive.
- Explosives: Explosives can be used which are mostly lethal by fragments.
- Realistic death and injury mechanics: Enemies don't have health — they die on multiple factors.
Different firearms use different cartridge types, each have a different
probability of being fatal.
Enemies shot may also have a delayed death — it may take a several
seconds or even longer depending on the hit location and severity.
Enemies may even be hindered when shot or hit by explosive fragments.
If there are multiple enemies and you can't reload, you can fast reload — you will lose the entire mag at the cost of reloading faster.
If the firearm does not use detachable magazines, fast reloading loads a single round, whereas regular reloading continues until the magazine is full or there are no more rounds in the inventory.
The further an enemy is being shot at is, the less chance of the shot being a successful hit.
Some bullets can be a hollow point, which will increase the probability of a shot being fatal at the cost of penetrating less enemies.
Explosives can be used to take out multiple enemies if you are low on ammo or reloading.
Tip
Your own explosives can kill you, stay far away!
An M67 grenade can be thrown with the g
key. The distance of the thrown
grenade is random, this is due to the throw angle and throw velocity being
randomized.
The M67 grenade will have about a thousand fragments going in all
directions.
The time to detonate is randomized from 4 to 5 seconds.
Claymores can be placed with the c
key, once a claymore is placed, it can
be detonated with the c
key again which will have a 1 second delay.
The claymore will shoot hundreds of fragments in the direction it is facing.
When an infected steps on an M16 mine, it will explode and send fragments in all directions, killing nearby infected.
When rescue arrives, you have a limited amount of time to get to the aircraft before they leave without you — you will lose the game.
- Movement:
wasd
- Look:
WASD
- Shoot:
space
- Reload:
r
- Fast reload:
R
- Equip item:
e
- Throw grenade:
g
- Throw grenade close:
G
- Plant claymore:
c
- Plant mine:
m
- Swap firearm:
q
- Quit game:
backspace
To install, cd
into the root of the repo and use the make
command to
compile.
Example on compiling and running the game:
$ make
$ ./plague-shooter
To play without colors:
$ ./plague-shooter --no-color
To reduce rescue arrival time:
$ ./plague-shooter --quick
To play without animations:
$ ./plague-shooter --no-animation