Join us on Discord!
You can help CodeWalrus stay online by donating here.

Calcuzap - An asm shoot-em-up for TI-84 Plus C Silver Edition & TI-84 Plus CE

Started by Patrick Davidson, July 12, 2016, 02:36:22 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Patrick Davidson

I have now released version 1042 of Calcuzap, an asm shoot-em-up game for the TI-84 Plus C Silver Edition, TI-84 Plus CE, and TI-83 Premium CE.  This version includes 47 levels, user-selectable speed and difficulty, 6 types of power-ups including 3 enhanced weapons for the player, a starfield background (not available on the TI-84 Plus C Silver Edition), and a high-score table.

This new version adds pixel-exact collision detection, improved performance on the TI-84 Plus C Silver Edition version (no impact on the other calculators which are already fast enough!), and fixes a bug that would sometimes corrupt parts of the display on later levels when the enemies released escape pods.

The new version is not up on ticalc.org yet, but you can download it straight from the original source --  https://www.ocf.berkeley.edu/~pad/

Edit by DJ: fixed web link

Dream of Omnimaga

I'm still amazed at how fast the TI-84 Plus C Silver Edition version manages to run despite the severe hardware limitations. I know you apparently used some tricks to get around the speed bottleneck caused by the LCD+CPU but it's still cool to see when I play it on my CSE.

I admit that I haven't tried new versions, though, except the first CE version, because one hit and the game was over, so I never got past stage 6 or so. But I'll probably redownload it soon to see if you added more lives and see if I can beat what you got so far. :) I beat Galaxian twice in the past, but we had 9 lives and a super laser weapon thing. :P
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Patrick Davidson


Dream of Omnimaga

Will the final version only have 2 lives? O.O

I guess that makes the game more challenging, though. But I tell myself: Imagine playing Ghost N Goblins with only 1 life and no continue
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Patrick Davidson


Dream of Omnimaga

Yeah true. But during most levels there are so many bullets to dodge O.O. I would say 3 lives maybe? (Galaxian had 9 but it would probably be overkill for Calcuzap)

Also is the max highscore possible still 65535 like in Galaxian? :P
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Patrick Davidson

The code keeps the score in ASCII so it the code that adds up the score can reach a maximum of 999,999.

However, it would be extremely difficult (to say the least) to actually score above 65536.

There are around a thousand enemies in the whole game -- the base score from destroying them all is about 1,000 times your speed.  If you are playing at maximum speed, you get a base of 9,000 from destroying them.  If you play on hard mode you can get twice the points for destroying enemies in rapid succession.  Assuming you get this all the time (an optimistic assumption) then you can get about 18,000.  You also get 10 times speed for bonus scoring powerups (90 per powerup) and 100 speed for each life left at the end of the game.  To get the rest of the way you'd need a whole lot of these -- if you got an equal number of life and score powerups you'd need about 47 of  each to get there.  You would need very good luck with the random number generation for that many to even drop -- and also would have to collect every one without getting hit, unless you get even more drops to balance the lost lives.

Dream of Omnimaga

Ah I see. Interesting scoring system. I thought it was more like in Galaxian or GalagACE where each enemy gave a fixed amount of points.

One thing I wonder, though: Didn't the game sometimes run at the same speed in slow and fast mode on the CSE? IIRC the calc couldn't keep up.

EDIT: Wow I finally tried the newest version and while I couldn't reach level 5 I was amazed at the star background and foreground effect. I like how some stars move faster to give the game a depth feel O.O. The speed was also pretty smooth O.O
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Dream of Omnimaga

So I finally reached that one level where enemies shoot missiles. I forgot if I actually beat it and died in the next one or if I died in the first missile level, but now my highscore is 3015, in hard mode at max speed.

Something I noticed is that in hard mode it's still possible to get extra lives, so there is actually a way to not get killed in a single hit. But the difference with easy mode is that once you get hit you only become invincible for about 0.25 seconds.

Is it me or enemies in stage 6-7 or so shoot twice as often? It basically became like Touhou at one point. O.O
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Patrick Davidson

The CSE version does sometimes fail to keep up at higher speeds but that depends on how much is going on though the recent optimization improve it somewhat.  When you are not shooting at all but just trying to dodge enemy bullets it can run at full speed up to speed 8.  When you are firing rapidly then it may be limited to speed 6.  However, once you've destroyed most of the enemies, then the game will be able to run at full speed 9 for the rest of the level even on the CSE.

Dream of Omnimaga

Yeah, I noticed in some levels that things get really crazy with bullets on the screen, so I was trying to picture how the CSE handles it.

On the CE it's perfectly constant at speed 9.

Also I remember back when the game ran at speed 1 no matter the speed setting in 2013 or so on the CSE when no enemy ship was destroyed. It was still a true showcase of how to get around speed limitations on that calculator, though, because back then many people still had the wrong misconception that every CSE game would run at 4 FPS, even if it justs moving 1 pixel around. I had to repeat the truth quite a lot on Omnimaga and CW in the past to explain to people that games could run fast if coded properly on that calculator. :X
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Dream of Omnimaga

By the way, I notice that the lower the amount of ships left on the screen, the faster they shoot. With just 5 or 6 ships left, sometimes they shoot about the same amount of bullets as when there are 30+ left, which requires me to sacrifice a life in order to hit them because there's no way to hit them without getting hit yourself. D:

Sometimes when you manage to kill an extra ship, though, they suddenly stop shooting this much. Could this be a bug? Also I spotted a bug when you exit the game after pressing ON then DEL:




EDIT: Also I have a video of a "tool-assisted" run of the entire game (no savestates/whatever, just 10% emulation speed) but it obviously contains spoilers and there's an unrelated surprise at the end. I'll upload it when it's done converting :3=

EDIT 2: WARNING: Spoilers!
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Powered by EzPortal