Jump to content
Sign in to follow this  
RSS Bot

Great Exploitations - Lesser Evils

Recommended Posts

When initially looking at the SC as a development platform, the 6144 bytes of RAM piqued some wide-eyed optimism in me. "Wow, what am I going to do with all that space?" When you think about it, it's really significant - The SC increases the RAM by a factor of 48! At first blush, the potential seems endless.

 

Then I start to write some code, and come to realize is that, compared to a standard 4k cart, the total space is increased by only 50%. It didn't take long at all to use all of this up!

 

Multiloads, you say? Well, I am disappointed with the SC's multiload capability. Multiloads take time and apparently are best suited for sequential access, while my game is suited for random access. Also, a serious drawback is that the SC obliterates 256 bytes of your code/data every time you do an additional load. I need the 256 bytes!

 

I generally do not like optimizing my code for space. Well, I don't mind picking the low-hanging fruit, like taking sections of repeated code and making subroutines out of them. When I reach the point where I need to heavily obfuscate my code, to save a few bytes here and there, it becomes wholly unfun. There are few things that can whittle the love away from this labor of love more than spending a hours freeing up a few dozen bytes, and then using it up in minutes by a minor feature or bug fix.

 

So I am left with a few solutions to my problem, none of which I like:

 

1. Abandon SC development and opt for another platform with >= 2k RAM and more code space.

2. Put maze generator in initial load, generate maze, then multiload the rest of the game.

3. Do a single load and abandon some of the features I want to add to the game.

 

Disadvantages to each:

 

#1: Will require a lot of work to port to a new platform, and will further limit the number of people who can play the game on the hardware they already own.

#2: Will require a lot of work, and probably a power cycle every time you want to generate a new maze.

#3: The end result will be less fulfilling.

 

Advantages to each:

 

#1: I can add all of the features I want to.

#2: Will retain the same level of compatibility with available hardware (SC, CC, CC2.)

#3: Less work, less frustrating, and a much greater chance of actually reaching completion.

 

Overall:

#1. :evil:

#2. :evil:

#3. :x

 

#3 is not really the winner, but the least undesirable. Largely, because I am beginning to get tired of this project In the future, I will not choose any platform with such limited code space unless the game will fit comfortably within that space.

 

Changes as of late:

- completely rewritten and vastly simplified (in terms of code space) kernel.

- added ability to select maze - hit select, then joystick to change. (I request comments on the UI here.)

- can generate a braided maze (left difficulty A before generating a new maze.)

mazecraze2c_sc.bin

 

http://www.atariage.com/forums/index.php?a...&showentry=1399

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...