Subject: Re: [stella] Crazy Balloon Update From: Manuel Rotschkar <cybergoth@xxxxxxxx> Date: Tue, 1 Mar 2005 16:50:25 -0500 |
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
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [stella] Crazy Balloon Update, Kirk Israel | Thread | Re: [stella] Crazy Balloon Update, Dennis Debro |
Re: [stella] Atari memory, André Wagner | Date | Re: [stella] Crazy Balloon Update, Dennis Debro |
Month |