So now that my time is gradually trickling back into my own personal end of the pool I've been able to put more time into programming, designing, going over my logical set-ups and such, and so on and so on.
The immediately pratical upshot of all of this is that one I actually sit down and start hardcore programming it won't take very long and I'll have already considered most of the problems that I'll be encountering, and my code will already be in a row of nice, neat little interacting capsules that I can switch on and off while I test.
Anyway, onto the newest bit I've gotten down, the levels. I didn't just want to do simplistic flat levels with different images, so I set about trying to simulate chaotic SSB style levels with spawning objects and animations. Things from little touches to big touches, and so on.
So each level is made up of first and foremost a data based background of solid objects, platforms, edges you can grab onto, etc.
On top of that is a layer of image holders where it arranges several images, some set to move in the background independently, some wiggling about in the foreground, some being the midground. On top of those, I've got it set so you can set little animations here and there, so you don't have to load the same big image 20 times over just to animate a small patch of grass blowing in the wind.
Levels themselves will have snippets of the same code that enemy A.I. will, in that the can randomly decide things, and spawn automatas that will interfere with gameplay. For example, the Advance War Battlefield stage will have little troops wandering around in the level that will occasionally shoot at each other and you if you're in the path.
This doesn't mean that every automata will be some amazing little self sufficient program that is gunning for you. Some of them might simply be visual aspects, like creatures running through the background, leaves blowing by in the foreground, etc.
The levels themselves will have the data logic set-ups as A.I., as I mentioned before, meaning they will be able to pull a few subtle tricks as well. For example, let's say you wanted to pull a Mushroomy Kingdom kind of level where half the time players would wind up on one level, half the time they'd get another level. Entirely possible with a little snippet of code in the load code of the level.
Amusingly, you can even pull off scrolling stages if you have the stage set to spawn obstacle type automata that spawn on the left, move along the stage to the right, then vanish, and repeat after a set amount of time.
You can also use the code for simplistic tricks. For example, one of the things I'm working on at the moment is Joy Mech Fight's Stadium. Typically there's a cheesy little LCD looking big-screen in the back (I'm working to mimic the original game on this one) which typically has little black and white cheerleaders cheering you on. But every so often when you load it it won't be cheerleaders, but little ostriches dancing.
Simple, yes, but I like to think that the system I'm throwing together can acomodate people who want subtlety, and the people who want big flashy storms of shrapnel and lawn shrubs.
So here's the wrap up for this update.
You could, if you wanted, simply take a big clean sheet of paper, grab some crayons and doodle out a level, and scan it into the computer. Heck, you could toss up a big level in microsoft paint. Then open up the custom editor, throw down a few obstacles and platforms, and nicely place your image over it, save it, and there you go. Custom level.
You could also spend hours programming special little tricks and automatas that would happen randomly from time to time, so you could simulate some giant mech fight in which Stafy, Little Mac, and Tom Nook are running from giant monster robots while fighting one another and dodging magic fireballs made of zombies.
I've got a lot of programming to do.
- Mood:
Cheerful - Listening to: Zero Punctuation - Fear 2
- Reading: My Own Design Documents
- Watching: Murder By Death
- Playing: Lock's Quest
- Eating: A Blimpie Club Sub. Bub.
- Drinking: Water