Destiny Hunter (PETSCII story-adventure)

Talk about your programs in progress. Discuss how to implement features, etc.
Forum rules
This section is for testing Commander X16 programs and programs related to the CX16 for other platforms (compilers, data conversion tools, etc.)

Feel free to post works in progress, test builds, prototypes, and tech demos.

Finished works go in the Downloads category. Don't forget to add a hashtag (#) and the version number your program was meant to run on. (ie: #R41).
Post Reply
Xiphod
Posts: 600
Joined: Thu Apr 15, 2021 8:05 am

Destiny Hunter (PETSCII story-adventure)

Post by Xiphod »


Greetings!   

Destiny Hunter is a brief game I've written for the Commodore PET.    It has been ported to several other platforms (including Z80 and x86 processor systems), but the PET build is the only one I feel is 100% complete.  That is, all the levels were developed with the 40x25 screen in mind, the "graphics" intended to use the PETSCII characters, and I haven't yet found any bug or correction that is needed (plus there just aren't any more bytes to add any content to the game, and still fit in 32K).   

The Apple2 port is probably the next closest to 100% complete (in that it includes audio and joystick support).  The C64 port still lacks SID support, the TRS-80 port sort of needs some level design updates due to the 64x16 text screen, and the IBM PC port also still lacks sound -- but each of those ports are complete in that the game is playable and beatable).   I wanted to keep it as a "PET exclusive" -- I still have my PET that I found in a dumpster back in 1988, so I wanted to make a tribute to Chuck Peddle who is now passed.   But curiosity got the best of me and I wanted to see if my "flicker free animation" approach carried over to those other platforms -- and it does!   

 

I'm not exactly sure what category the game is - action, adventure, arcade, RPG?  It's a bit of a mix of each of those.  I specifically wanted the game to be a standalone "in-memory-only" program, a "booter" that is loadable from tape.  So, for that, it might be an "arcade" game?  Except most arcade games are 1-hit-dead and start over (more quarters!), so it's not like that.   It's a bit action-oriented, yet I was striving for something that could be enjoyed by folks young and old (in terms of playability and not getting overwhelmed with opponents).  But there is a backstory to the game, so it is a bit of an adventure (at least on the first playthru) to find out what things you'll encounter.

 

The project started when I unexpectantly came across the cc65 compiler one day - it just never occurred to me look for a C compiler that targeted the old PET platform.  So I wanted to see if that actually worked, and it did!  Early 2021 was still "sort of" lockdown and we didn't make any spring break travel plans, so my daughter and I drafted up a backstory, creatures, and levels, and things just came together.   cc65 also supports inline assembly, so that helped some critical performance parts.  Using the "standard C" library never would have been fast enough.

 

Originally, I hadn't planned on any joystick support.  But while working on the C64 port, I decided to give it a try.  I thought I had come up with a clever strategy for using that 1-button joystick (where holding the 1-button down changes the D-pad into a "command mode" instead of a movement mode).  It was at the point I came across the SNES adapter for the C64, which then of course led to finding out about PETSCII Robots!  It was exciting to discover such an extensive modern project for the PET, it is extremely well done (in technical arrangement of the code, and the game is fun too!).   Dave was the first "beta tester" of Destiny Hunter ?  While it wasn't a stellar review (he's not a huge fan of action games), he did give some very useful feedback - and I tightened up the code further, finally incorporating everything that I wanted to include:  sound support, joystick support, a mini-intro, built-in keyboard instructions (that takes code space!!), end-game screen, cross compatible with either keyboard style of the PET (business or graphic, it auto-detects), and the full 8 levels we had in mind (in honor of 8-bit computing! there are several themes of "8" in the game).

 

The "level editor" I produced for DH also runs on the PET and does use disk files, so cc65 and the libraries available do allow one to make a more extensive game.  So I could have loaded the intro scene, end scene, from a file, or loaded each level separately from a file, and made a much more extensive game.   But that equipment wouldn't have been available until 1980.   I tried to imagine it like this: meeting Chuck Peddle in January 1977, and he needs a "killer app" for his new PET system.  I think by the end of that year, in 1977, DH could have been produced and ran on an original "2001" series PET and loaded from tape.  The only issue might have been finding a working set RAM chips (since those Apple boys were probably buying them all up, to re-sell at marked up prices ? )!  If anyone heads back in time to that pre-1980 era, bring DH with you ? 

 

I maintain details and free downloads of the game binaries (all ports) at:

https://destinyhunter.org/

The source is in github (not all the ports are incorporated, I leave it as an exercise to others!):

https://github.com/voidstar78/DestinyHunter

And recently, I've put together a play-thru description about the game (it has spoilers! but if you don't have h/w or don't want to use an emulator, it's a way to see what the game is about)

NOTE: Turn on "CC" for additional notes/commentary.

 





 

 

 

 

NOTE: I recall looking into doing an Apple1-port, but I can't remember what was the limiting factor there (probably not a cc65 target, but still no obvious technical reason it wouldn't work).    Now that Dave's finished his Apple1 replica, maybe I'll look into again, to give him something to run on it  (if it doesn't have 32K, we can cut back some levels) ?

Xiphod
Posts: 600
Joined: Thu Apr 15, 2021 8:05 am

Re: Destiny Hunter (PETSCII story-adventure)

Post by Xiphod »

Ah, now with ZSMKIT, I don't have an excuse not to have sound anymore!!

But on the other hand, I sort of wanted to keep Destiny Hunter as a PET Exclusive :D The "most complete version" is still for the PET (which has gamepad and sound support completed - even the Apple2 port version had sound).

But the X16 port is still playable (it's in SD card /EXPLORE/GAMES) Here is a peek at the final stage with the 3-headed hydra. Changing the fireballs to sprites might be an interesting upgrade.


dhunter.prg.jpg
dhunter.prg.jpg (397.54 KiB) Viewed 3040 times
Post Reply