Parallaxian Update November 2022
I realise I have been inexcusably neglectful in providing any substantial news on my "next gen" Commodore 64 game in development, Parallaxian for a very long time, so this blog post is an attempt at redressing that shortfall.
Let me begin by saying that, in addition to a host of issues behind the scenes unrelated to the game itself, I have also been absorbed in developing a smaller, less ambitious unrelated game which, among other objectives, should serve as a pathfinder for the release of Parallaxian.
So those are my reasons, rather than excuses for the lack of updates.
Now let's crack on with showing some real progress!
The video below shows me playing the latest Parallaxian technical testbed and includes the following highlights:
- Chasing down the Backfire.
- Dogfighting with some Hunter-Killer drones.
- Engaging the Groundhog (aka "Tarantula").
- The Figment's prototype main explosion, along with Shuttle-borne recovery sequence (in a nice little nod to IO).
Some features are disabled, for example, the landing sequencer and others have been removed, such as the enemy homing missiles, which require a ground-up rewrite to make the code more efficient and performant, but the key point I make concerning the testbeds is always the same: proof of concept, for later transplanting into the playable version of the game.
And, being a technical testbed, it also showcases some previously unseen items of special "next gen" tech developed specifically for this game, such as the totally unpretentiously (!) named "hyper sprite" concept and "compound sprites".
(I also realise I have somehow messed up / accidentally done away with some of the older SFX, such as the Hunter-Killer's laser sound, so apologies for that).
Hyper Sprite Concept
I wanted a hovering, belligerent adversary that is hard to dispatch and is armed with homing missiles, so that the player would have to perform
multiple swooping attacks on it to try to destroy it.
My original design called for a vertically expanded sprite with transparent flame effect beneath it, but I found the look too blocky for the overall game aesthetic, which meant I could either dispense with the y-expand altogether and run with a conventional MCM sprite, or use a hi-res overlay at the cost of an extra sprite for the enemy ship.
But then I recalled that, whilst standing in the queue at an alternative medicine shop in eastern Europe not so long previously, I had the idea of alternating hi-res and MCM definitions in a single sprite to generate a dynamic smoothing effect.
(I'm sure you'll agree, there is nothing quite like shopping in a dodgy looking slum for triggering creative thought processes).
The concept is explained by the diagram below.
As a special bonus, you can
download a little hyper sprite demo (.prg file)
showing another hyper sprite designed for Parallaxian in action.
This is an enemy designed for later levels, and it goes by the name of Ironside; I won't tell you what it does yet, but there's a hint in its name ;-)
Compound Sprite Concept
Far less innovative than the hyper sprite idea is the compound sprite, which in one form or another has been around in the Commodore 64 gaming scene
since the mid 1980s, if not earlier.
However, the form of it that I am talking about does not use hi-res sprite overlays; rather, it uses hi-res char underlays, and as the video clip above showed, that's what the ground vehicles were refined with in the Parallaxian testbed.
Note that the tank is x-expanded, but the hi-res char underlay diverts from the unavoidable resolution loss entailed in the x-expansion.
And of course, there is no rule that says overlays / underlays can only be used with MCM sprites, as the hi-res satellite dish shows.
Sneak Peek at other In-Game Sprites
Since we've gone all spritey in this blog post, let's have a quick peek (not a poke!) at some other in-game adversaries
developed for Parallaxian.
- Bomblebee: This is an airborne enemy that can only be destroyed by bombing it from above as it bobbles about. This was one of those very rare examples of an idea that looked cool at the design stage and in my imagination, only to look far less impressive in actual deployment. I think it will be removed as I just found basic play-testing with it irritating rather than fun, plus the visuals just don't work (for me) in the game.
- Groundhog: An as-yet not superlatively designed ground-based foe that also can only be destroyed by bombing it; unlike the Bomblebee, this one fires back and is highly mobile. The version in the WIP video is more arachnid-like, hence the working nickname of "Tarantula" which may become its formal name in due course, unless I replace it with a different design in the interim. You have to destroy the Groundhog to make its adjoining Swarms vulnerable to your laser, an idea loosely based on / stolen from Creatures (on the occasions where Clyde has to kill enemy A to destroy enemy B)... or you could say it's the inversion of Space Invaders! Anyway, until the Groundhog is killed, the Swarms remain invulnerable (indicated by being in monochrome hues) and just suck your plane into their path and thrust it away from the Groundhog.
- Backfire: I have shown an early prototype of this enemy before, which you have to hunt down while avoiding its truly savage backfiring "sunbeam" laser. The present Backfire codebase has to be 100% rewritten as I am unhappy with how it feels during testing and would prefer that it would dive down low to skim at treetop level and thereby give an enhanced sensation of high speed chase to the player.
- Piranha: A shape-shifting liquid metal (yes, Terminator 2's T-1000 inspired this idea) stealthy attack aircraft that likes to sneak up behind you and drain your shields. This enemy was designed specifically for the Figment's tailslide action, so that you can turn and fire back at it while still sliding forwards. I was going to include this in the WIP video but went with the Groundhog prototype instead.
The Cutting Room Floor
Just as musicians make more material than they need when recording an album, or directors of a film record more scenes
and demand more takes of each scene than is required, so in the process of designing (and coding) a new game does a
developer produce more gfx and code than will ever make it into the final product.
Some of it ends up canned forever, whereas some gets put on hold until a better version can be cooked up.
Below I present a cameo of such "not good enough" designs, some of which will just be abandoned and others I hope will make it into the game.
So When will the Game be Finished?
The only reasonable answer to that question is "when I get all the components completed".
The project has been delayed because of external issues, yes, BUT... The game is much closer to completion than I had imagined up until I returned to working on it in recent times.
But, it is also important to take note of the following observations:
- I have almost zero support from within the scene to continue with the project (not a complaint, just an observation!), so I have tended to proceed cautiously, lest I go all-in with it at the expense of making a living!
- That said, I was ridiculously generously supported (privately off-platform - and thanks again to the person who did that) during the abortive and extensively sabotaged Kickstarter campaign, so that still drives me to see the project through.
- I have deliberately taken a step back from the game over the summer so that I can finish the other game I mentioned earlier, and see how the scene reacts to it; like Parallaxian, it is a very technical, ambitious project, but on a smaller scale.
- Parallaxian has been a labour of love for me and a pet project for a long time, so no matter what happens, I know that finishing Parallaxian would be a dream-come-true for me and the realisation of an ambition going back to my teenage years when I first started coding 6502 on the Commodore 64... As I have said before multiple times, Parallaxian is the C64 game I always wanted and now I have a chance to make that happen.
- When I started coding Parallaxian, I was returning to 6502 after a 25 year absence so let's just say I was a little rusty. Essentially, I have been learning on the job ever since, acquiring new technical knowledge through the pain of many mistakes and a lot of research. That in turn has seen the codebase for the game undergo multiple refactoring processes to strip out bloat and make it do more with less code, and do it faster, so that as much as possible can be squeezed into the available CPU time and RAM. Needless to say, that has also been a methodical, but slow, process.
- Following on from my previous point, something like 95% of my development time is either debugging or trying to overcome hardware limitations; to do anything ambitious on the Commodore 64 requires a real fight with the hardware. I'm not talking about one or two fancy demo scene effects; I'm talking about an advanced game environment, with all the additional raster time overhead and RAM demands that come with that. It often boils down to a case of whack-a-mole, in which you get one feature fully functional, only to find you have degraded another in the process. And that takes time to resolve.
A Bonus Downloadable Effect: Large Explosion!
Okay... that last section was a little... heavy.
So let's lighten the mood with another download, showing the prototype of the Figment's explosion (.prg file) when it finally succumbs to enemy attack in the game.
When you run the program, hit the space bar to view the effect! (You can press it again to repeat, ad infinitum).
And kindly contact me if you have any questions about the project going forward. Encouragement, even if only a few words, means a lot!
To-Do List (Major Items)
- Radar functional on airspace indicator.
- Rescue / ferrying sequencers.
- Ground object & terrain collisions.
- Landing sequences (as current one is not good enough).
- Enhanced vertical parallax effect (mostly done, just needs some laborious GFX tweaking).
- Homing missile sequencer.
- 100% rewrite of the Backfire.
- Piranha sequencer.
- Add boats, water effects, terrain (for other levels).
- Add other in-game enemies not mentioned yet.
- Superlative SFX.
- Improved handling + scrolling mechanics, esp. @ low speeds; presently acceleration @ u-turns is too "snappy".
- May also revise the camera situation on turns.
- Redesign all other levels.
- Disk loader (not looking forward to that one!)
PS: Don't forget to check the home page regularly for more articles like this.
And of course, kindly subscribe to my YouTube channel!
Last of all, for additional short snippets of content, check out the posts on my Ko-fi page.
Help Make Parallaxian Happen!
...and get special perks!
Progress on Parallaxian has slowed down since summer 2021 for several reasons, one of which has been the very low level of support from
the C64 scene which has made it difficult to continue justifying to my family the long hours of hard work a project as complex as this requires.
Now, I understand these are difficult times and I admit I am not entitled to any support at all, but it really does encourage me to continue developing this sensational game when you make a regular Paypal donation.
And as a special thank you, all who do this can enjoy the following perks:
- Your name credited in the game (unless you opt out of it if you have the same kind of incognito hermit tendencies I do).
- Access to the ongoing beta-testing of the game (unless you would prefer not to see it before its release date).
- The finished game on media (e.g. cartridge) for FREE one week before its release.