Jump to content
mzxrules

A silly little project

Recommended Posts

A short story:

 

A few years back I was browsing r/speedrun when I stumbled on the Dragster drama. Someone looked at the assembly of Dragster and created a sim in an attempt to figure out if a certain someone's world record time was actually achievable. Having done quite a bit reverse engineering of Ocarina of Time, and dabbled for a day or so reversing The Legend of Zelda for the NES to figure out the heart container glitch, I figured I'd might try my own hand at it despite never having played an Atari game in my life before. Though I never got too far into understanding the code, I was amazed at how you can print the entire game on only a few pages of paper, and finally understood how it was possible to do animated sprites with so little ram.

 

Fast forward to this year. I'd just replayed The Legend of Zelda on the switch (both quests of course), and I got it in my head that I wanted to make an Atari 2600 port. 

 

So here's how far I've gotten: 

 

The game is written in 6502 assembly. To create the sprites I use a GCS program called MegaZeux, which has a pretty nice built-in 1 bit sprite editor. I also coded my world editor in MegaZeux, using it's "robotic" language. "Robotic" can be fairly esoteric at times, but it's the first programming language I ever learned and it was the easiest thing I could think of to use without rolling my own rendering code. I also use Python 3 for data manipulation purposes. For example, in order to save rom space I use a superstring algorithm to pack the sprite data for the text kernel tighter. Additionally, the music sequence data is completely generated by Python, so that I could write music using proper notes instead of numbers.

 

I can't say for sure that I will continue working on it, as I hit a bit of a wall and decided to switch gears to a different thing I'm working on. But I don't think I'll stop working on it for good just yet.

Edited by mzxrules
  • Like 15

Share this post


Link to post
Share on other sites

Really cool. Interesting to read about the different processes you took.

Share this post


Link to post
Share on other sites

This looks like a great start to something phenomenal. Don't let the wall you hit discourage you. Their are some great developers here on AtariAge that may be able to help you out.

 

Regardless, what a interesting concept👍😎

  • Like 1

Share this post


Link to post
Share on other sites

Very cool, the flashing of the enemy when hit, the dungeon map, “it’s dangerous to go alone” text, great work! 

  • Like 1

Share this post


Link to post
Share on other sites

It's interesting.  (OP might consider abandoning the direct Zelda (and directly Zelda inspired) assets and exploring a design that can be published later on without fear of legal issues.)

Share this post


Link to post
Share on other sites

Progress has been a bit slow. Been just doing minor refactoring and tweaked my world kernel so that ball sprites can be drawn on grid:

 

 

I've also been trying to implement different enemies. I've got two more enemy types mostly implemented: Wallmasters and Like Likes (both rather annoying to deal with). I've also got Octoroks walking around, but haven't implemented their attack yet. I've also implemented dying: 

One thing that's kind of got me struggling is figuring out how best code enemies to maximize code reusability, while also being able to tweak minor stuff like health/enemy color.

  • Like 3

Share this post


Link to post
Share on other sites

Still plugging away at this. It took me way too long to figure out how to add in random item drops, but once I had a plan, coding it wasn't too bad. One thing I haven't figured out is why the audio seems to cut out randomly.

 

 

Edited by mzxrules
  • Like 8

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...