Okay this maybe harder than I thought
but im curious about the basics of making a level editor
I understand the concepts and I have a few ideas on exactly how to do it
But im not a hundred percent sure
Like for example would i be using any extensions (Mmf 1.5)
Its not enough,I need more
Not enough to satisify
I said I dont want it, I just need it.
To believe, to feel, to know I'm alive.
Knuckle deep beneath the borderlines.
This may hurt a little but its something you'll get used to.
Relax. Slip Away...
No, you shouldn't need any extensions to make one. The easiest way is to use a two-dimensional array, which you use to store all the level data in. Then, to load everything, you use a fastloop to loop through the array and create all objects and stuff.
to save the position of several identical objects you can do:
pick "your object" at random => save x and y position, destroy object
you need to use counters to make a different name of key for each x and y positions, it will be for example: 1x, 1y for the first object, 2x, 2y for the 2nd...
the best way to understant how an editor works is to download a tutorial, i'm sure that there are many articles about editors
well i started working on it - using just my mind and I have a pretty basic one working
however Im stuck on the loading
Im not a hundred percent how im going to load each tile individuallly - anythoughts???
Its not enough,I need more
Not enough to satisify
I said I dont want it, I just need it.
To believe, to feel, to know I'm alive.
Knuckle deep beneath the borderlines.
This may hurt a little but its something you'll get used to.
Relax. Slip Away...
Fastloops. Here, assuming you're using a tile-based system and a two-dimensional numerical array, where each number in the array represents a different kind of tile:
* Run this event once
- Start loop "Load Y" [Y dimension] times
* On loop "Load Y"
- Start loop "Load X" [X dimension] times
* On loop "Load X"
* ValueAtXY( "Array", LoopIndex("Load X"), LoopIndex("Load Y")) == 1
- Create "Active" at (0,0)
- Active: Set X position to LoopIndex("Load X") * [Tile width]
- Active: Set Y position to LoopIndex("Load Y") * [Tile height]
Then, just duplicate the last event to make different kinds of tiles. For example, 1 could be a grass tile, 2 could be a house, 3 could be an enemy, etcetera.
u think u could post an example out of this?
i mean every friggin tutorial or engine that is out there about this has some extension for some reason i cant open (even after dling the extension)
Its not enough,I need more
Not enough to satisify
I said I dont want it, I just need it.
To believe, to feel, to know I'm alive.
Knuckle deep beneath the borderlines.
This may hurt a little but its something you'll get used to.
Relax. Slip Away...
DaVince This fool just HAD to have a custom rating
Registered 04/09/2004
Points 7998
21st March, 2007 at 16:42:43 -
Then they probably use the old fastloop extension, which WAS required because a long time ago fastloops weren't built into MMF.
Get kfcloop.cox and copy it to the usual folders.
Besides that, he just gave you an example on how to do it.
no no no
like phizzy's tutorial pack which features a level editor - string.cox - which i know is string parser 1 object - i have string parser 2 - but it wont let me - i even downloaded like 5 string.cox put it in every folder imaginable and yet no dice
another person needed iniplus.cox - i got the extension (even though it doesnt work for mmf just there for porting) no dice with that either
however, i got the jist of it down but axel told me to do is not working at all, ive been searching all over dc and i got a couple ideas
Its not enough,I need more
Not enough to satisify
I said I dont want it, I just need it.
To believe, to feel, to know I'm alive.
Knuckle deep beneath the borderlines.
This may hurt a little but its something you'll get used to.
Relax. Slip Away...
No, you can make it work with many kinds of tiles. Just copy this event (frame 2, line 3):
* On loop "Load X"
* ValueAtXY( "Array", LoopIndex( "Load X" ), LoopIndex( "Load Y" ) ) == 1
- Create Active at (0,0)
- Active: Set X position to LoopIndex( "Load X" ) * 32
- Active: Set Y position to LoopIndex( "Load Y" ) * 32
And do something like:
* On loop "Load X"
* ValueAtXY( "Array", LoopIndex( "Load X" ), LoopIndex( "Load Y" ) ) == 2
- Create Another_Active at (0,0)
- Another_Active: Set X position to LoopIndex( "Load X" ) * 32
- Another_Active: Set Y position to LoopIndex( "Load Y" ) * 32
Just from experience, I find that it's usually better to make levels by hand than using a level editor. Level editors make the game look.. bland. Unless everything is tile based, where they'd look bland with or without an editor.
But I guess they're OK you're going for the nerdy, classic SNES look.
Disclaimer: Any sarcasm in my posts will not be mentioned as that would ruin the purpose. It is assumed that the reader is intelligent enough to tell the difference between what is sarcasm and what is not.
It really depends on the game, Muz. All games don't need editors. If the game is small and simple, or if it needs to have a lot of stuff hard-coded for each level, then making a level editor might just be a waste of time. But for large-scale projects and grid-based games, a level editor is ideal, and makes the development process easier and saves a lot of time. Plus, you can let the players design their own levels, if it's that sort of game.
so i downloaded urs assault andy - i had to download mmf2 demo for it
and IM STILL HAVING PROBLEMS - i copied ur code exactly on the loading procedure
and still NO luck
it works fine for one type of tile, but multiple types of tiles have problems
it will create one tile but not all the tiles i put it
Im almost ready to bite the big one
Edited by the Author.
Its not enough,I need more
Not enough to satisify
I said I dont want it, I just need it.
To believe, to feel, to know I'm alive.
Knuckle deep beneath the borderlines.
This may hurt a little but its something you'll get used to.
Relax. Slip Away...
when i went to creat object - i created an object from the previous frame and then coded it that the object in the current frame to move thus creating one object and moving another object all across the screen till the final spot
when i fixed that - plust the one u noticed and put everything on Load X - it worked - i copied that coding into mine and it didnt work
erggh - ill just use urs
thanks man
Its not enough,I need more
Not enough to satisify
I said I dont want it, I just need it.
To believe, to feel, to know I'm alive.
Knuckle deep beneath the borderlines.
This may hurt a little but its something you'll get used to.
Relax. Slip Away...
I just want to thank Axel, Radix, and Assault Andy for helping me with this.
I even got it to work in another app for my game, so now I can start making my levels. I also have an idea that instead of using more than one array file for different levels, but using the Z dimension to do different levels.
I dunno if thats correct - if it isnt I'm sure Ill figure it out.
Thanks again guys
Its not enough,I need more
Not enough to satisify
I said I dont want it, I just need it.
To believe, to feel, to know I'm alive.
Knuckle deep beneath the borderlines.
This may hurt a little but its something you'll get used to.
Relax. Slip Away...
Assault Andy Administrator
I make other people create vaporware
Registered 29/07/2002
Points 5686
25th March, 2007 at 03:44:21 -
It's very possible to use the Z dimension to do different levels. That should leave you with less external files to muck up.