I've been making games with TGF for a long time, but I always used standard movement, no really advanced solutions and stuff like that.
I recently became interested in making stuff again, and dived back in, this time with MMF 2. The first project is a simple platformer based loosely on Addams Family for the SNES, and elements from, yes, Gradius. I made my own engine using and adjusting a platform engine tutorial, and got the basic physics down nicely, but here come the problems.
The first: a global engine How far completed do i really need to have my engine before I start making the levels? The thing is, I want to use multiple characters with different abilities (different jump heights and speeds are not that much of a problem) which I honestly not yet have concretely decided upon for every character.
Is there a way to make the engine more global, or do I really need to adjust every level over and over? (is this done with that nifty Behaviours thing I saw?)
The second problem: collectibles remain picked up The game itself has a very open structure, you can move from screen to screen freely (it's a little bit of a free roaming platform game). But when I move away from a frame where I picked up some stuff, on return, they logically reload which is really exploitable.
How can I make a collectible (or doing it framewise) remember that it is picked up while I move away from the frame?
The last problem: A more general problem on bouncing balls In a side view that is, of course. I have some enemies that need to bounce around, and some of their projectiles.
How can a ball alike object distinguish between colliding with the floor and colliding with the wall?
And that's it basically. There are probably some noobish things in there, so go easy on me. And to show that it is not all for nothing, I have some screens of the game so far (in all it's 1 and a half level gloryness)
The first man to compare the cheeks of a young woman to a rose was obviously a poet; the first to repeat it was possibly an idiot.
Originally Posted by cec¿l ini's are your friend. that is all.
I was considering using ini's for the collectibles, but I was hoping there was a way that did not involve storing every single object in the game in a text file...
Well, that is, I am guessing you are talking about storing collectibles in an ini
The first man to compare the cheeks of a young woman to a rose was obviously a poet; the first to repeat it was possibly an idiot.
you could save them in an array. anyway you slice it. external storage is probably the way to go. unless you use globals which couls be troublesome. or instead of haveing every area of a level on a different frame. just have them all in one and just scroll the screen
Dustin Gunn Gnarly Tubular Way Cool Awesome Groovy Mondo
Registered 15/12/2004
Points 2659
20th February, 2008 at 17:20:27 -
My advice:
For the engine, unless you love copying and pasting, I'd recommend you get your engine as close to finished as possible before duplicating frames. This is probably the biggest problem with clickteam products, and basically sapped 2-3 years of worktime on my game because I wanted to make absolutely sure everything was final.
The alternative, if you don't use qualifiers at all, is to transfer all your code to global events. Qualifiers are damn useful of course, but it's an option. To access the global events editor click on the game icon and in the properties window under events there's an "events" button.
For bouncing balls, you could make an engine that moves its X and Y movements seperately, for all 4 directions, and check for collisions after every direction like:
*Is Xspeed < 1
-Move left
*Is over obstacle?
-Move right one, now you know it's collided with the right wall
*Is Yspeed > 1
-Move down
*Is over obstacle?
-Move up one, now you know it's collided with the floor
For the bouncing ball/background collisions movement, I have an example that works in the way that Dustin described. It's far from perfect (it doesn't deal well with "above" collisions) but you might find it useful.
http://lowflyingcow.googlepages.com/backdropCollisions.mfa
As for the collectible items, you're going to have to store some values in some kind of way. If you want to use inis, know that they're just text files and can be accessed by anyone. If you use an array, you'll probably have to think about the structure of it and keep a note of what each value stands for.