Page 1 of 4

Keen: Galaxy editor - it's here

Posted: Tue Jul 13, 2010 4:01 am
by Mink
So after some hard work over this past week, I now have a bare-bones level editor for Keens 4, 5, and 6: The Omegamatic. As of now, it can open fresh gamemaps files along with any saved by TPT3. Try it out, and be sure to let me know any features you think it could use. Keep in mind though, that I'm planning to implement most of the applicable tools from Mindbelt/TPT3, including the all-important copy-from-tile-palette tool. Also the info tile font isn't done, so expect those to be a little messed up. Oh, and sorry about the really long startup/changing level times, those will hopefully be cut down in future releases.

Thanks to CK Guy for the source of Mindbelt, on which this is heavily based (i.e. this borrows a fair bit of code). And the interface of this is practically an exact replica of TPT3 for now (it's tough to improve on what works), although it will probably end up getting some changes as time goes on.

So yeah, this is ultra-incomplete, to the point that it can pretty much only load, save, and the usual picking up and placing tiles (hey, I wasn't lying when I called it bare-bones!), but it's a start.

P.S. You have no idea how hard it was to restrain myself from calling this release The Alpha- or Betamatic. ;-P

Posted: Tue Jul 13, 2010 11:01 am
by levellass
Must... make... Alphanumeric... program....


Will this be made compatible with Keen Dreams (And Dave 3/4) The difference is that KD levels are huffman compressed. (This can be avoided by patching the huff dict, so you won't even have to carmackize them!) Can is extract maphead from executables?

I'm liking what I see, basic thought it is. Looks to be quite stable so far. Will there be Mindbelt-oid features?

Posted: Tue Jul 13, 2010 3:22 pm
by Mink
Yes, I'm hoping this will eventually support Dreams, but that's not very high on the to-do list since I'd rather have a fully-functioning Galaxy editor than a minimally-working one with Dreams support. And as for carmackization, I don't have to worry about that now since the save function only uses RLEW, no carmackization needed. So this is a distinct possibility for the future.

As of now, it can only read external maphead files, as I don't really see any need to extract them since I included the originals (already manually extracted) in there.

And yep, Mindbelt-/TPT3-esque features like gridmode, copy, paste, and the link tool are on their way. I'm hesitant to add the script files, though, because they are 1) a hassle to implement and 2) a hassle to edit to your needs. Although they may be necessary if I want to implement some sort of magic tool (which is definitely an if, not a when - that thing is insanely complex for Vorticons and I shudder to think about it having to handle the Galaxy perspective) or level statistics later on. What do all of you think on this?

Posted: Tue Jul 13, 2010 11:13 pm
by thehackercat
Hey, that's pretty sweet, Mink! Will definitely check this out on the monster-PC.

Posted: Wed Jul 14, 2010 2:28 am
by levellass
As of now, it can only read external maphead files, as I don't really see any need to extract them since I included the originals (already manually extracted) in there.
For one it would allow you to support more games, for two it shouldn't be too hard to extract, all you need to keep in mind is the location and size of the maphead file or, if you want to be really thorough, scan the exe for the $ABCDW signature of mapheads. It may be something to add later on.

Posted: Thu Jul 15, 2010 3:47 am
by Mink
Ah, then that extraction will likely be added should this be adapted for more games later on.

And release two is now up! There are a few new features, specifically grid mode, tile search mode, and the actual infotile font (lifted from TED5, of course) shows up now. And then it's got a lot of internal changes and tweaks, mostly restructuring stuff to get ready for the tools (coming soon, I promise!), and a whole slew of bug fixes like incorrect level numbers and placing tiles when clicking in the status bar. Oh, and I redid the mouse-wheel scrolling so you don't chunk around the screen anymore. Be sure to let me know what you think of the altered active-tile-color things - I decided to change them a little so that tile search mode would be less muddled.

Edit: Whoops, forgot to mention that this now supports opening and saving Keen: Next editmaps files. Be warned, though, that K:N can't reopen these after you save them (yet), so be sure to back up any files you test out (and actually back up anything you open with this... just to be on the safe side).

Posted: Thu Jul 15, 2010 3:57 am
by levellass
Could there be a 'save as' option? As a single executable, TED5 or K:N type map? That could be useful when doing say, levelpacks.

Also, will it eventually have a 'import map' function like in Keen 5? I use that often for duplicating levels or backing up things.

Posted: Thu Jul 15, 2010 4:11 am
by Mink
Excellent suggestions, you're right - the current "save all levels in the format the were loaded from" is pretty limiting. I'll be sure to add these to the to-do list.

Posted: Sun Jul 18, 2010 6:15 am
by gerstrong
levellass wrote:
As of now, it can only read external maphead files, as I don't really see any need to extract them since I included the originals (already manually extracted) in there.
For one it would allow you to support more games, for two it shouldn't be too hard to extract, all you need to keep in mind is the location and size of the maphead file or, if you want to be really thorough, scan the exe for the $ABCDW signature of mapheads. It may be something to add later on.
You can also find more information in CG as it already extracts that information from the exe file.

Posted: Mon Jul 19, 2010 2:19 am
by lemm
Request:

You know the 5 tile reservoirs in mindbelt? I was wondering if you could add something similar. HOWEVER, the reservoir is arranged more like a queue than five independent wells. If you pick up one tile on the map by right clicking, it is put into the top of the queue, the current tiles in the queue shift down one spot, and the one at the bottom is pushed out. (You can still access any tile in the queue by pressing 1 thru 5 or clicking on it though).

Posted: Wed Jul 21, 2010 1:05 am
by Mink
Alrighty, the third release is ready. New stuff: finally being able to specify your own infotile values by pressing [Enter], a new level function, and the same tools as in TPT3 (plus paste preview!). Coming soon are the ever-important copy from tile palette, resizing/-naming levels, and hopefully those tasty saving/loading options you wanted, Lass.

And man, Lemm, that actually does sound pretty neat. It might be tricky to ultimately decide on good hotkeys since 1-3 are currently for toggling active planes and 4-6 are for visibility, but we'll work something out for next release hopefully.

Posted: Wed Jul 21, 2010 5:25 am
by levellass
F1-F8.

Posted: Thu Jul 29, 2010 2:23 am
by Mink
So here's the next release - it now has a fair bit more of the Mindbelt tools, the most exciting of which is the show links option which is amazingly helpful for doors/switches. And there's also a bunch of behind-the-scenes optimizing so now the load times should be comparable to TPT3's (Oh, and a nice side-effect: now toggling a plane's visibility shouldn't take forever).

Edit: And hopefully that queue idea will be added in the near future, Lemm (Lol, I know I keep saying this, but soon, I promise).

Edit again: And maybe this lack of bug-reports means you guys think this is really-well tested (hint: it's not). Come on people, if you try it, at least tell me whether or not you encounter any problems!

Posted: Thu Jul 29, 2010 9:18 am
by Tulip
So the different planes (fore/back/info) aren't handled separately yet, right?
I wonder how you'll handle copy/paste with the 3 planes. Mindbelt never copied both tiles & sprites at once, so maybe tom should also copy only one plane at a time.

If you do a plane visibility feature you could make an "show only active plane" option, which shows the plane you're working in only, which you can switch like in mindbelt via SPACE.

Posted: Thu Jul 29, 2010 1:28 pm
by lemm
I guess my biggest complaint is that it still takes a good ten seconds to load when I open a gamemaps file, and a few seconds to switch between levels. Granted, I am running it under WINE, so this could be the reason.

An undo button would be nice as well, even if it's only the last action.

I like the Mindbelt-style interface. I have not run into any obvious bugs yet, but I haven't used it to make any levels. I'll guess I'll give it a more serious critique later (and perhaps make a mini level pack or something :p)