News:

11 March 2016 - Forum Rules

Main Menu

ZANAC Randomizer

Started by Omaha, September 08, 2020, 10:36:17 PM

Previous topic - Next topic

Omaha

Using my age-old love of the game for inspiration, the existing documentation on Data Crystal as a starting point, and a ton of reverse engineering as a challenge, I've put together a ZANAC Randomizer that can do basic shuffling but also goes as far as completely replacing the default levels with randomly generated ones.

It's web-based, located at https://www.zanacga.me

It is not perfect by any means and there are still changes to be made but it's at a point that I am excited enough about it to share it and hope that it works as well for you as it does for me.

Enjoy!

Googie

Hell yeah! :D

I'm gonna have to try this out, Zanac was the game I always played back then, thanks for hooking us up with the Randomizer.  :thumbsup:

KingMike

I thought the game was already sorta-randomized (or at least it was supposedly one of the earliest game to have a dynamic difficulty adjustment), but I suppose if someone wants to full randomize it.
"My watch says 30 chickens" Google, 2018

Omaha

It is semi-randomized in that it can use things that happen in-game to determine what enemies spawn next, but the randomizer does a lot more than that. 8)

8.bit.fan

#4
Hi Omaha!

Zanac is my all time favorite shooter and this is incredible!
I'm going to have to try this out when I have the chance!

I wonder if this would work with my Zanac Music Restoration hack?  :)
http://www.romhacking.net/hacks/3792/

Awesome work on this and keep it up!!

Cheers!! :thumbsup: :beer:

8-bit fan

EDIT:
Just tried this out and it is absolutely amazing!! :D

I love Zanac but never really liked any of its sequels more than the original so this is like having infinite amount of sequels of my beloved shooter!! :D

One request if possible. So I tried to use my Zanac Music Restoration hack and obviously it didn't work due to the checksum. I was wondering if it'd be possible to make it work with my Zanac music hack? Or, if not, would it be possible for an option to choose which music tracks to include and exclude?

Thank you so much! :)

8-bit fan

Edit:
Having a lot of fun with this! :D
In the year of 200X, a super robot named Mega Man...
http://www.8bitfan.info/
FF4 Ultima Discord: https://discord.gg/4MqjwJt

PolishedTurd

This sounds really cool.

Would you consider posting the source or otherwise releasing a version that would work offline as well?

Omaha

Quote from: 8.bit.fan on September 16, 2020, 02:50:06 AM
One request if possible. So I tried to use my Zanac Music Restoration hack and obviously it didn't work due to the checksum. I was wondering if it'd be possible to make it work with my Zanac music hack? Or, if not, would it be possible for an option to choose which music tracks to include and exclude?

What happens if you reverse it and run the output of the randomizer through the music hack?  I haven't played with the music upgrade yet so I'm not sure exactly what it does internally; I'll see if I can play with it and do comparisons to see if both tools would step on each other.  I fear that the two programs might be doing conflicting things with the ROM, but the good news is that the randomizer does most of its "damage" in one 8kB portion so it's /possible/ they may be intercompatible. 

I am glad you're enjoying it.  Presently I am trying to make level generation a bit more interesting (adding more variety to currently boring areas like 6) and working on making fortress fights better, including adding midlevel fortress fights.

Omaha

Quote from: PolishedTurd on September 17, 2020, 09:35:54 PM
Would you consider posting the source or otherwise releasing a version that would work offline as well?

I was originally going to go the route of a downloadable version but realized that it was easier to push updates via the web route, and also that it would make it easier to generate ROMs for usage on, for example, a phone or tablet.  Then I decided "why can't we have both?" and I split the code up in such a way that though the front-end is web based now, there's no reason a local client can't be written later and use the same randomizer core, because it's modular.

I am in the process or organizing the core code to possibly publish it at some point.