I'm still working on this (-300- nope - 5 tokens left :D ) - let me know what you think here or on my Twitter - there might be bugs and/or unexplainable weirdness!
You're a cat, you're magical, you're in a duel with the finest feline magic practitioners the realm has to offer. Grab your wand and enter the arena!
Controls
- Arrow keys - move
- X - strafe/sidestep (press left and right)
- Z/C - shoot
Use the PICO-8 menu to disable AI to wander round the maps, and to toggle overhead view.
What's new?
12 July 2020
FIXED crash bug when dropping the quad
11 July 2020
- ADD single player red+blue keys+doors!!!! Check single player test map for an example
- FIXED showing scoreboard upon being frogged in single player.
- No more tokens left!
09 July 2020
- ADD light viewbob
- ADD damage indicator
- ADD new map Tower Of Confusion
- ADD basic single player map support (with sample map)
- ADD 1 second delay on scoreboard
- ADD 1 second invulnerability on respawn
- CHANGED cat AI tries to find a wand if possible/pick up your stuff after frogging
- CHANGED player movement
- CHANGED minor texture improvements
- FIXED Particles obey zbuffer
- FIXED Sounds cutting off
- FIXED Cats using incorrect palette when far away
Since April (v early itch.io release) I have:
- Added several maps
- Rewrote chunks of the graphics for more speed and more complex geometry
-- diagonal walls
-- working overhang textures
-- faster ceiling rendering
-- tline() floors/sky
-- tall ceiling indoor spaces
-- doubled texture limit from 16 to 32 - Added 3 extra wands, and items
- Improved sounds
- Better AI
- Better controls
Still to do
- More maps
- Map editing guide
- More sounds
- More textures
Credits
- Programming, art, sounds - Ben Jones/Powersaurus
- Raycasting engine based on Lode Vandevenne's Raycasting Tutorial
- PICO-8 heap sort by Morgan McGuire
- Point-line/line-line collision based on 2DArray's Gamedev tutorials
License
All source and assets are licensed under Attribution-NonCommercial-ShareAlike 4.0 International https://creativecommons.org/licenses/by-nc-sa/4.0/


Impressive - the game plays well with keyboard only and cats are smart/stupid enough to make it fun!
Some levels are quite a feat with a raycasting engine fitting in a single cart - kudos!
Gameplay wise:
- add some hit marker (right/left/back/front) to avoid being killed from an unseen enemy
- water blocks player, texture is not clear (imho)
Tech/code remarks:
- you've gazillion of tokens to reclaim using short variable declaration:
-- no local a=1 local b=2 -- yes local a,b=1,2 |
- particles are showing through walls
- ceilings should have been done with tline! this is tanking cpu


@freds72 - brilliant feedback - thank you!
The hit marker is something I'm planning on adding. I'll also take a look at improving the water texture. The particles beng visible through walls should be an easy fix, the z buffer just needs checking (wasn't doing it for performance reasons, but I'll see if I have the budget to do it).
The ceilings/tline() thing is a bit tricky. Because I do a second raycast pass for overhangs/doorways/outdoors-indoors transitions, there is always a chance I will draw over some of the ceiling with the second pass.
e.g.

Hmmm, now thinking about it, maybe a vertical tline() solution could work. That would probably save some cpu on the floor too. Going to try that.
Tokens - thank you - seems so obvious now! Off to do that now.


@freds72 - changing local variable declarations saved over 100 tokens without msking things totally unreadable - thanks again :)
You're right about the vertical tlines not working withe distance shading, but I removed it for ceilings anyway, so in theory would look fine. Would need to profile whether 128 small tlines is better than <128 wide ones.
I'm looking forward to your DOOM engine and enjoying the progress so far!


Awesome graphics and fun theme / concept! Really feels like a good arena shooter with originality.
I wonder if shooting / not shooting near the enemies could affect their awareness of you, or if there could be a delay when holding the shoot button, if you'd like to discourage holding down the shoot-button at all times with the default spell. The other spells do provide a nice variety.
I was missing the score board for a while, because I'd always be shooting when I died (even when not holding). Maybe respawn could be another button or a button combo? Or e.g. have a menu option to show the scores at any point.
(I also find moving a bit tricky but that's just me being spoiled by modern control schemes I guess :D)
Cool stuff, looking forward to another or the final update :)


@noppa thank you for the feedback!
At the moment cats target the nearest opponent, and select a new target if they can't reach their current one after a few seconds. If you hit them, there is a chance that they will target you. I am continuing to tweak the weapon speed + damage, it was loosely based on the Quake 1 weapon profiles https://quake.fandom.com/wiki/Weapon_(Q1) . I might make the starting wand slower to fire, but with higher powered fireballs, so that you have to consider your aim+when to shoot.
Related, and regarding the movement, I changed it just before this release, by decreasing strafe speed+strafe speed friction so you'd start sliding once strafing allowing you to circle strafe (which the cats can do, with high effectiveness). I'm not sure it is 100% a success yet. Before I added this though, I was making the fireballs less powerful as cats were too good at targeting you, so I might have messed the balance up.
The scoreboard - you're right, I'm going to add a 0.5-1 second delay before accepting any input you see the scores.


Nice wizard/cat mash up ! the raycast engine is cool.
As a early doom player, I find the game hard :D (Yes i admit..) but I should take some more times to learn the maps and weapons.
My suggestions :
-I find there is too much momentum when turning
-You could put strafe on player 2 left/right buttons
-One or two seconds invulnerability while respawning could help some times
Did you try Tripplefox shellsort ? You could gain some CPU and tokens, but lose a bit of precision
https://www.lexaloffle.com/bbs/?tid=2477


@dhostin Thanks! I have a build nearly ready to go with updates based on all the suggestions above. Will upload tomorrow with details. I'm going to leave strafe as a toggle though, I'm keen to stick to the one set of controls for this project.
I didn't know about shellsort! I picked Morgan3D's one from that thread as it was "state of the art" at the time, and never changed it (see extremely old git log below :D ). I will probably stick with it at this point, unless I get desperate for tokens.



Uploaded a new version with the following changes:
- ADD light viewbob
- ADD damage indicator
- ADD new map Tower Of Confusion
- ADD basic single player map support (with sample map)
- ADD 1 second delay on scoreboard
- ADD 1 second invulnerability on respawn
- CHANGED cat AI tries to find a wand if possible/pick up your stuff after frogging
- CHANGED player movement
- CHANGED minor texture improvements
- FIXED Particles obey zbuffer
- FIXED Sounds cutting off
- FIXED Cats using incorrect palette when far away


New version, with the major addition of keys, vital for a cool single player map!
- ADD single player red+blue keys+doors!!!! Check single player test map for an example
- FIXED showing scoreboard upon being frogged in single player.
- No more tokens left!
Next up, finishing off a couple of maps and level editing guide.
[Please log in to post a comment]