dec05eba aa5ebfcf9f Do not unmute sound when hit by enemy bullet
Right now it forcefully sets sound instead of using the SetSnd function
that checks if audio is muted.
2022-08-13 21:33:40 +02:00
2022-08-11 04:02:45 -07:00
2022-08-11 04:02:45 -07:00
2022-08-11 04:02:45 -07:00
2022-08-11 04:02:45 -07:00
2022-08-11 04:02:45 -07:00
2022-08-11 04:02:45 -07:00
2022-08-11 04:02:45 -07:00
2022-08-11 04:02:45 -07:00
2022-08-11 04:02:45 -07:00

BlazeItFgt2

Header

BlazeItFgt2 is the latest action-packed video game and god word generator for the TempleOS 64-Bit Operating System.

Released August 11th 2022, the fourth anniversary of Terry Davis' death.

Images

Combat Boss

Title Screen Story

How to Play

download my distro ISO, boot it in VMware Workstation (or Player) as "Other 64bit", and you'll be prompted to play from the live CD.

The game can be launched manually by running #include "zRun" within C:/Home/BlazeItFgt2/. Alternatively the game can be built and manually transferred to existing installations.

VMware is highly recomended, It's a no-registration download, it's in the AUR (btwiua). VirtualBox has significant performance issues, and has no sound. QEMU has buggy mouse support and awful sound. Two cores is highly encouraged.

If you choose to install TempleOS you will be getting the canonical final release (1a1ec79) modified to 60FPS and BlazeItFgt2 added to the /Home directory. You can use this as a starting point to create your own TempleOS video games.

Notes

This year I wanted to work on something much smaller than DigGaym where I had to hard pivot at the last moment to meet the release date. I had been playing SHMUPs recently so creating a SHMUP-style sequel to BlazeItFgt seemed like a great idea. Despite SHMUPs being a "basic" genre with lots of reused code it still ended up being crunch situation.

I ended up writing a lot of code that I never ended up using, specifically centripetal CatmullRom splines due to performance and time constraints for bug fixing. I implemented and used Separating Axis Theorem for collision detection. Unfortunately I didn't have time to implement continous collision detection and stuck with discrete. Unused but perhaps interesting code is stored in the cutcode directory.

BlazeItFgt2 is my first TempleOS project to make use of SSE(2) and optimized C code through a process of rewriting the compiler generated assembly for use as a TempleOS function. This technique was used for the bomb visual effect which allowed the game to keep a solid 60FPS instead of dropping to ~30FPS (Ryzen 5600X).

Build

  • Run make all to build
  • Run make upload_all to transfer via MFA (instructions for using MFA not included)
  • Alternatively copy the src/ directory to the TempleOS disk.

Dependencies

  • gcc/clang (set CC for clang)
  • libpng
  • make
  • nasm
  • python3

License

MIT+NIGGER

S
Description
Sequel to the critically acclaimed TempleOS space shooter video game and god word generator
Readme 9.8 MiB
Languages
HolyC 86.3%
Python 7.5%
Makefile 3.5%
C 1.7%
Assembly 1%