New game uploaded: Equinoxe Demo

All aspects of programming on the Commander X16.
Post Reply
User avatar
svenvandevelde
Posts: 488
Joined: Wed Dec 23, 2020 6:30 am
Location: Belgium, Antwerpen

New game uploaded: Equinoxe Demo

Post 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

 






 
KICKC home page by Jesper Gravgaard.
My KICKC alpha with Commander X16 extensions.
Ed Minchau
Posts: 508
Joined: Sat Jul 11, 2020 3:30 pm

New game uploaded: Equinoxe Demo

Post 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.

User avatar
svenvandevelde
Posts: 488
Joined: Wed Dec 23, 2020 6:30 am
Location: Belgium, Antwerpen

New game uploaded: Equinoxe Demo

Post 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

KICKC home page by Jesper Gravgaard.
My KICKC alpha with Commander X16 extensions.
User avatar
desertfish
Posts: 1123
Joined: Tue Aug 25, 2020 8:27 pm
Location: Netherlands

New game uploaded: Equinoxe Demo

Post by desertfish »


Looking good!!

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

User avatar
svenvandevelde
Posts: 488
Joined: Wed Dec 23, 2020 6:30 am
Location: Belgium, Antwerpen

New game uploaded: Equinoxe Demo

Post 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. 

KICKC home page by Jesper Gravgaard.
My KICKC alpha with Commander X16 extensions.
epsilon537
Posts: 31
Joined: Sun May 01, 2022 12:12 pm

New game uploaded: Equinoxe Demo

Post 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?

User avatar
svenvandevelde
Posts: 488
Joined: Wed Dec 23, 2020 6:30 am
Location: Belgium, Antwerpen

New game uploaded: Equinoxe Demo

Post 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.

KICKC home page by Jesper Gravgaard.
My KICKC alpha with Commander X16 extensions.
User avatar
svenvandevelde
Posts: 488
Joined: Wed Dec 23, 2020 6:30 am
Location: Belgium, Antwerpen

New game uploaded: Equinoxe Demo

Post 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

KICKC home page by Jesper Gravgaard.
My KICKC alpha with Commander X16 extensions.
Edmond D
Posts: 501
Joined: Thu Aug 19, 2021 1:42 am

New game uploaded: Equinoxe Demo

Post by Edmond D »


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

 

Post Reply