Zuma and Plants vs Zombies on the C64!

The Commodore 64 game developers continue to surprise the community. This time, two games that are quite well-known have been ported and released by Dr. Mortal Wombat and were exclusively published on the latest edition of ZZAP! 64 (https://www.patreon.com/zzapmagazine).

Whilst they have also been released as Balls like a Frog and Veggies vs Undead, they are better known to the public as Zuma and Plants vs Zombies!

I caught up with the developer to get some commentary, starting with Zuma:


Dr. Mortal Wombat writes:

“In a previous job, I was tasked with analysing if Zuma could be ported to a tile-based game system we were developing at the time. It had way more tiles than the C64 chars and also more CPU power, but I came to the conclusion that it would not be feasible. 

When Crisps showed me ARCADIA for the Atari XL, I got interested again, this time trying to stay within the limits of the C64. With more than 100 simultaneous balls in the game, hardware sprites are out of the question and dynamic software sprites or bitmap objects would have been too much of a burden for the CPU, so the only viable option was to prepare tiles for the balls upfront. Working on the character grid of 40×25 would have been easy, but would also result in very blocky movement. Going on a pixel-accurate placement on the other hand would not fit into the tight character constraint, so I settled on a half-grid resolution of 80×50. So, each ball would need four versions.

Balls frequently touch in this game, so I needed several tile versions with two balls sharing the same character cell. To avoid a colour clash, the placement of the balls into the cells was not at 0 and 4 but at 2 and 6. This way, only the outline and shadow of one ball will be part of each shared character, and only the colour of one ball is present in each char cell.

The original plan was to use joystick input, moving the frog in the direction of the stick. The eight-way limit of the digital stick is alleviated by delayed movement. Pressing the stick for a short moment will rotate the frog only a little towards the target direction, thus allowing for precise aiming. While this is an okay way to play the game, it is far from perfect. Therefore, support for paddles and mouse was added, which provides a more natural rotation input.”


Background
You, as a loveable little amphibian, have stumbled upon the temple of Blaf (Zuma).

This disturbance has made you aware of the Sun god being trapped inside one of the temples, where he is kept encased in stone.

While at this temple you see that it tries to destroy you with spheres on a path, so you must get firing and bust those balls before they reach the skull and end the frog’s hopping life. Progress through 76 levels and 22 maps to free the sun god!

More information – https://drmortalwombat.itch.io/balls-like-a-frog

Now over to Plants vs Zombies, this classic tower defence game has finally been ported to the C64. With limited resources on the breadbin including the availability of sprites, it is quite an amazing achievement that Dr. Mortal Wombat has managed to bring this over.


So, how was this done? The developers help us with some background information on the conversion process:

Dr. Mortal Wombat: “The simple layout with the fixed rows made it an “easy” port for the C64. Splitting the screen into five attack lanes and a menu row at the top follows the screen layout, by using four-character rows per lane. Unfortunately, it was therefore not possible to combine two sprites vertically for one zombie, which results in a rather small specimen.

With the sprites taken, the plants and shots had to be multicolor bitmap graphics, which is a drain on the CPU to animate.

The biggest challenge was thus the sheer number of moving parts that had to be controlled, moved, displayed and animated. The slow pace of the game allowed us to split the work into 10 frames, 5 for the zombies and 5 for the plants, with each lane of zombies or plants taking up one frame time. Shots are animated every (or when the screen becomes busy every second) frame.

Each type of zombie needs its own set of animation frames, and with hires graphics, the number of sprites was severely limited. So, in the end, I could fit only nine zombie types, each with six animation cells for walking, and four for eating or vaulting.”

The music for PvZ was performed by Crisps. He had the advantage of the music being made in the. xm file format. This meant he could open it up and read the music as it was initially written in openMPT. The obvious main challenge was moving from 32 channels to the 3-channel limitation on the C64, especially for Rigor Mortis with the last section being very percussive and cramming it all into one channel. Crisps writes a little info about the music: “Remixing the tracks was in some places harder than the original tunes. Overall, there was a consistent battle with sound design. I tried coming up with simple but effective changes to the instrumentation used mainly by emulating the 808 drums used in the game. This was to avoid the music sounding the same as previous pieces although sometimes I made instruments VERY accurate to the original by complete mistake. It was quite fun to compose for though, despite me pushing the memory limits and stretching what I can get away with.”


Background
The zombies are on the loose, actually, they are already in front of your property. The only thing between your brain and their insatiable appetite is your front lawn. Luckily you just acquired an assortment of powerful flower seeds. Plant them fast and smart to protect your home.

More information: https://drmortalwombat.itch.io/veggies-vs-undead

As mentioned at the start of this announcement, both games were published on the covermount of ZZAP! 64 Micro Action. The covermount is exclusively available to Patreon subscribers only. More information at https://www.patreon.com/zzapmagazine

David Simmons
News editor and cover disk organiser at ZZAP! 64 and ZZAP! AMIGA.

One thought on “Zuma and Plants vs Zombies released on C64!”

Leave a Reply

Your email address will not be published. Required fields are marked *