Re: [stella] Crazy Balloon Update

Subject: Re: [stella] Crazy Balloon Update
From: Kirk Israel <kirkjerk@xxxxxxxxx>
Date: Wed, 9 Mar 2005 12:07:46 -0500
OK, I finally got to play around with this...
I didn't quite follow your description at first but then when I got
into the code it proved easy enough...I made a note to myself in
LEVELDATATAB...

;layoutType -- LAYOUTDATATAB
;enemyType   -- ENEMYDATATAB
;spikesType -- SPIKESDATATAB
;screenscroll  -- $00=still, $01=scroll 

which just said what thing was a "array pointer" into, if you'll
pardon the looseness in terminology.

Now, while you make very good reuse of layout info and the like, I
assume the editor should allow freeform "painting" of the board and
setting of the spikes and
enemy location? (are spikes always going to be horizontal only?) As
opposed to just gluing together the pre-existing chunks I
mean...though I could see the ability to fill in a part of the board
canvas with a pre-existing chunk.  I guess I'm thinking we should save
any "chunk reuse" as a possible post-contest optimization, somehow
scanning to find out if any chunks are duplicates of any others.

--Kirk



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... ;-))
> LAYOUTDATA
> ENEMYDATA
> SPIKESDATA
> 
> 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 http://www.biglist.com/lists/stella/archives/
> Unsub & more at http://stella.biglist.com
> 
>

Archives (includes files) at http://www.biglist.com/lists/stella/archives/
Unsub & more at http://stella.biglist.com

Current Thread