Page 1 of 1

New game uploaded: Equinoxe Demo

Posted: Sat May 28, 2022 6:49 am
by svenvandevelde



Equinoxe Demo




View File






Hi,





Find a first playable demo of Equinoxe, my Commander X16 shooter ...

I know it's not much yet, but I've come from very far making this.

To make this, I had to learn how to:

- implement a memory manager algorithm for vram on the vera

- implement a memory manager algorithm for bram

- implement a (fast) collision detection algorithm using spacial hashing technique

- implement a fast method to shoot bullets to an angle direction

- implement a fast method to calculate the angle between 2 coordinates (so calculate the unit vector)

- fixed point arithmetic

- sprite design using blender and spriter

- tile design

- implement a dynamic tile walking algorithm

- vera library with all kinds of functions to paint sprites and tiles and control the video ram

- dynamic level loading

- memory banking

- mouse control of the CX16



and more ...

So as this demo may not be much, I've really learned a lot on this path to make this.

And still continuing to develop this game as time floats...



Let me know in the comments if this is something you like or not ...



This demo must be downloaded as the emulator version on the web does not allow to load a card.

So unzip the cx16.zip and a cx16.vhd file will be created.

Load the game with x16emu -sdcard cx16.vhd

In the emulator, type load "equinoxe.prg", 8, 1

Enjoy!

Sveni

 






 

New game uploaded: Equinoxe Demo

Posted: Sat May 28, 2022 7:34 am
by Ed Minchau

I had this in mind when I was making FASTMATH.  I think I can find a way to do really fast conversion from 16.8 fixed point to the fractional notation and back so you can take full advantage of it.


New game uploaded: Equinoxe Demo

Posted: Sat May 28, 2022 12:20 pm
by svenvandevelde

Yeah. Thank you ed. Most of the base logic is in place now

 Now comes the challenge of making great graphics and a nice game concept. Thinking about making the player and enemy ships "configurable" based on pre-rendered smaller sized parts like 8x16, 16x16, 16x32 or 32x16 dimensions around a base ship of 32x32. This saves memory and I think this is what @Frank van den Hoef had in mind when he created this sprite engine capable of controlling 128 sprites at the same time. The small pieces can have more extensive animations and "glue" to the base ship or other extensions. Stuff like cannons, lighting, engines, defense shields, radars, tractor beams, magnets, wings, ...

It also allows for weapon loading, adding game experience. 

Enemies are also a challenge. What to model as enemies without doing "cliché" ... Am thinking on some drone concept or chopper concept.

The game concept and making the game exciting should add some randomness and side challenges in addition to just shooting. Something like a puzzle to be solved might be interesting. So your brain must think of solutions while shooting and evading.

The video vram of 128KB is a real challenge to manage in such a shooter game. Many may have a lot of comments about this and that's fine. But doing is another. A game like this needs animations otherwise this game will get boring quickly.

I've put the tiles in 8bpp mode because it is impossible to tile with shadows and light effects using only 4bpp palettes, and have a smooth colour experience.

Sven


New game uploaded: Equinoxe Demo

Posted: Sat May 28, 2022 12:52 pm
by desertfish

Looking good!!

reminds me of battlesquadron on the Amiga one of my all time favorite vertical shoot em ups


New game uploaded: Equinoxe Demo

Posted: Sun May 29, 2022 3:46 am
by svenvandevelde


On 5/28/2022 at 2:52 PM, desertfish said:




reminds me of battlesquadron on the Amiga



Checked it out. Indeed it has flavours of it. 

I never had an Amiga unfortunately as I was too young when the Amiga came out. I do remember I envied those who had one ? But then the C64 and C128 had lots of those games implemented of the Amiga. 


New game uploaded: Equinoxe Demo

Posted: Tue May 31, 2022 7:29 am
by epsilon537


On 5/28/2022 at 8:49 AM, svenvandevelde said:




- implement a (fast) collision detection algorithm using spacial hashing technique



Collision detection looks like a challenge in a game like this. Will the algorithm also handle sprite-to-tile collisions?


New game uploaded: Equinoxe Demo

Posted: Tue May 31, 2022 9:45 am
by svenvandevelde


On 5/31/2022 at 9:29 AM, epsilon537 said:




Collision detection looks like a challenge in a game like this. Will the algorithm also handle sprite-to-tile collisions?



Well... if you mean collision detection of the player plane and bullets with ground tiles, this has not been added. I plan to use sprites for gun turrets. However, such a collision detection could be added by merely adding the relevant tile quadrants to the spacial hash.


New game uploaded: Equinoxe Demo

Posted: Mon Sep 12, 2022 6:24 pm
by svenvandevelde

Some further progress on my game Equinoxe. Now implemented a "Least Recently Used" cache and my VRAM heap manager, which allows me to dynamically copy in images into vram and replace images which are not used anymore ...

https://screencast-o-matic.com/watch/c3QlFQVOoQS


New game uploaded: Equinoxe Demo

Posted: Wed Sep 14, 2022 5:36 am
by Edmond D

Very impressive - both the game and the supporting code constructs!