Re: [stella] Crazy Balloon Update

Subject: Re: [stella] Crazy Balloon Update
From: Kirk Israel <kirkjerk@xxxxxxxxx>
Date: Wed, 2 Mar 2005 14:46:08 -0500
Some cool stuff there....I'm still willing to take a stab at this
though I have to digest all of the below, figure out which values are
just "unique identifiers" and which are memory locations.

Rob or Lee, do you want to take this on, or are you content to leave
it in my lap? Both of your javascriptt/CSS skills might be better than
mine, but it could be a worthwhile learning experience..

On Tue, 1 Mar 2005 16:50:25 -0500, Manuel Rotschkar <cybergoth@xxxxxxxx> wrote:
> Hi Kirk!
> > Manuel, let us know if this perks your interest.
> Definitely!
> I must say that I'm totally overwhelmed by your offer. I hadn't really
> expected someone volunteering on creating a level editor... ;-)
> Hm... maybe before anything else happens, I'll try explaining the data
> which is describing a single level. It's not put in stone yet though, but
> maybe it already helps you getting a better idea of what could be edited
> with an editor.
> Ok, each level in Crazy Balloon is composed out of four objects:
> DATA (Well, when I started I just had all info in DATA... ;-))
> Each level is identified simply by a number. Even the title screen is a
> standard level. The level number is pointing to a DATA object, which is
> pretty simple:
> layoutType          ds 1
> enemyType           ds 1
> spikesType          ds 1
> screenscroll        ds 1
> So each level is pointing to a certain layout, enemy and spike object. And
> you can individually activate the scrolling for each level.
> LAYOUTDATA looks like this:
> PFPtr               ds 8
> verPosBalloon       ds 1
> horPosBalloon       ds 1
> balloonColor        ds 1
> So it's holding 4 pointers to as many PF stripes (each 26 lines high), the
> starting position of the balloon and the ballloon color.
> (This object will be extended with layoutcolor and "finishing coordinates"
> soon)
> ENEMYDATA looks like this:
> verPosEnemy         ds 1
> horPosEnemy         ds 1
> enemyHeight         ds 1
> enemyPtr            ds 2    ; enemy data end
> It's currently holding the position of the enemy, it's height and shape.
> As you see it's already prepared to do other things than the face. I'm not
> sure yet how the engine will later distinguish between different enemies.
> Most likely according to certain ranges of the enemyType value.
> SPIKESDATA looks like this:
> verPosSpike1        ds 1
> verPosSpike2        ds 1
> horPosSpike1        ds 1
> horPosSpike2        ds 1
> leftMax1            ds 1
> leftMax2            ds 1
> rightMax1           ds 1
> rightMax2           ds 1
> moveAdd             ds 1
> moveAdd2            ds 1
> I's holding the info for the two spikes alternating. There's a starting
> position, the left and right edges of their movement and moveAdd is
> holding the current "direction", as it is normally either 1, 0 or -1.
> On the title screen I have both spikes overlayed, so it's not flickering.
> And there's also screens where a PF stripe would differ only by one single
> spike from a previous level, so I just have both spikes overlayed with "0"
> moveAdd there... (See the single spike on the left bottom in level 8
> versus level 6)
> Ok, that's it for a start. Well, it's maybe still a bit too early for an
> editor, but I hope it'll give you at least a basic idea of what is
> required here...
> Feel free to toy a bit with the current data in the source (maybe some
> experimenting will help for a better understanding) or just ask anything
> else you'd like to know.
> Greetings,
>        Manuel
> Archives (includes files) at
> Unsub & more at

Archives (includes files) at
Unsub & more at

Current Thread