mirror of
https://gitlab.com/drummyfish/anarch.git
synced 2024-11-24 01:42:19 -05:00
Merge branch 'master' of https://gitlab.com/drummyfish/sucklessfps
This commit is contained in:
commit
e214780e9f
@ -110,6 +110,8 @@ portability, only backend, avoiding dependencies
|
|||||||
|
|
||||||
how to port to new platform, frontend, configs in files
|
how to port to new platform, frontend, configs in files
|
||||||
|
|
||||||
|
All global identifiers of the game code start with the prefix `SFG_` (meaning *suckless FPS game*).
|
||||||
|
|
||||||
The **engine** -- raycastlib -- works on the principle of **raycasting** on a square grid and handles the rendering of the 3D environment (minus sprites). There is a copy of raycastlib in this repository but I maintain raycastlib as a separate project in a different repository, which you can see for more details about it. For us, the important functions interfacing with the engine are e.g. `SFG_floorHeightAt`, `SFG_ceilingHeightAt` (functions the engine uses to retirieve floor and ceiling height) and `SFG_pixelFunc` (function the engine uses to write pixels to the screen during rendering, which in turn uses each platform's specific `SFG_setPixel`).
|
The **engine** -- raycastlib -- works on the principle of **raycasting** on a square grid and handles the rendering of the 3D environment (minus sprites). There is a copy of raycastlib in this repository but I maintain raycastlib as a separate project in a different repository, which you can see for more details about it. For us, the important functions interfacing with the engine are e.g. `SFG_floorHeightAt`, `SFG_ceilingHeightAt` (functions the engine uses to retirieve floor and ceiling height) and `SFG_pixelFunc` (function the engine uses to write pixels to the screen during rendering, which in turn uses each platform's specific `SFG_setPixel`).
|
||||||
|
|
||||||
integer math
|
integer math
|
||||||
|
10
TODO.txt
10
TODO.txt
@ -5,8 +5,10 @@ general:
|
|||||||
setting)
|
setting)
|
||||||
- try to remove the debug flag (-g1) from compiler and see if it decreases size
|
- try to remove the debug flag (-g1) from compiler and see if it decreases size
|
||||||
- port to GB Meta
|
- port to GB Meta
|
||||||
- add enemy moving/dying sound
|
- music:
|
||||||
- sounds (music?)
|
Probably just one long music track playing over and over -- KISS. The frontend
|
||||||
|
could have a callback function play_music_bar(n) which would be called by the
|
||||||
|
backend, the music track would be in sounds.h.
|
||||||
- level 2D map (with revealing, bitmap), special key for quick displaying map
|
- level 2D map (with revealing, bitmap), special key for quick displaying map
|
||||||
- save/load (optional):
|
- save/load (optional):
|
||||||
When a level is finished, the state at the beginning of the next one (health,
|
When a level is finished, the state at the beginning of the next one (health,
|
||||||
@ -147,9 +149,11 @@ done:
|
|||||||
- try to compress images: store images as 4 bits per pixel + 16 color palette
|
- try to compress images: store images as 4 bits per pixel + 16 color palette
|
||||||
(subset of the 256 color palette), check if performance stays ok
|
(subset of the 256 color palette), check if performance stays ok
|
||||||
- custom font
|
- custom font
|
||||||
- make barrels explode.
|
- make barrels explode
|
||||||
- enemies
|
- enemies
|
||||||
- weapons
|
- weapons
|
||||||
|
- sounds
|
||||||
|
- add enemy moving/dying sound
|
||||||
- create tables for monster and weapon stats in constants.h and read from that
|
- create tables for monster and weapon stats in constants.h and read from that
|
||||||
instead of cheking with ifs
|
instead of cheking with ifs
|
||||||
- check if monsters are hit by bullets from completely up close
|
- check if monsters are hit by bullets from completely up close
|
||||||
|
Loading…
Reference in New Issue
Block a user