[v2.11.3] Abiathar: The superior Keen Galaxy editor
I haven't given it a try yet, but I'm definitely excited about a new level editor. I hope that it would be a relatively simple process to transfer levels from TOM to this. It would be great if all you add to do was open them up in this editor and not even worry about changed file formats and patches.
Once I actually try it I'll have more thoughts to share, but there is one feature I would really like to see implemented. As you may know, the foreground tiles representing sprites can be used as tiles in a level. However, level editors make this tricky because you can't directly scroll up to see them, and they make placing sprites tricky when the icon is overwritten by a tile. It would help if you had the option to load the sprite icons from a separate .bmp file. Then, it would be easier to use the additional foreground tiles.
Also, tileinfo editing sounds wonderful. I've always wanted to see a super program like this for Keen modding.
Once I actually try it I'll have more thoughts to share, but there is one feature I would really like to see implemented. As you may know, the foreground tiles representing sprites can be used as tiles in a level. However, level editors make this tricky because you can't directly scroll up to see them, and they make placing sprites tricky when the icon is overwritten by a tile. It would help if you had the option to load the sprite icons from a separate .bmp file. Then, it would be easier to use the additional foreground tiles.
Also, tileinfo editing sounds wonderful. I've always wanted to see a super program like this for Keen modding.
Armageddon Begins Again. The Alphamatic has arrived.
Atroxian Realm: viewtopic.php?f=4&t=3536
The Alphamatic: viewtopic.php?f=4&t=4086
Lol this is where technology brought us. I need a bigger machine to edit a 25 year old game. Reminds me of website updates. I was able to use flickr just fine with my laptop, then they updated with that useless endless scrolling nobody ever wanted and it brings down my cpu. and it's the same only less usable.Fleexy wrote: Official system requirements
Recommended:Code: Select all
* Windows 7 * Microsoft .NET Framework 4.5 * 2 GB of RAM * 3.66Ghz multi-core processor
I hope this proves to be an advancement in terms of features at least.
You crack me up little buddy!
It reads TOM-created Galaxy levels and Keen:Next exported levels normally. (Mink was a bit too creative in writing Dreams mapheads, that's what FxTomDMh is for.) I'd just like to be able to take KN intermediary files as well, maybe even reversing the effects of CKGuy's weird Carmackizer.Gridlock wrote:I haven't given it a try yet, but I'm definitely excited about a new level editor. I hope that it would be a relatively simple process to transfer levels from TOM to this. It would be great if all you add to do was open them up in this editor and not even worry about changed file formats and patches.
Once I actually try it I'll have more thoughts to share, but there is one feature I would really like to see implemented. As you may know, the foreground tiles representing sprites can be used as tiles in a level. However, level editors make this tricky because you can't directly scroll up to see them, and they make placing sprites tricky when the icon is overwritten by a tile. It would help if you had the option to load the sprite icons from a separate .bmp file. Then, it would be easier to use the additional foreground tiles.
As for placing infoplane tiles in the foreground, that's what Assimilate Infoplane mode is for. Also, Abiathar reads the EGA files directly (that's part of what FMod.dll does), so there's no need to worry about Modkeen vs KeenGraph style. I'll probably figure something out to allow different images for the infoplane and foreground in that region.
I might have gone a little overboard with the "recommended" settings, Abiathar runs fine (in normal mode!) on my school's old WinXP computers. If it gets too laggy, just click "High Speed Mode" under Edit. About the features: yes, Abiathar blows all other editors out of the water in terms of capability, especially after the next few updates I'm working on.tulip wrote:I hope this proves to be an advancement in terms of features at least.
-
- Kuliwho?
- Posts: 2167
- Joined: Fri Jan 20, 2012 7:02
- Location: Tied up in the Oracle Chamber's basement
- Contact:
I'm not sure what you did this in, but Gambas3 is pretty similar to VB: http://gambas.sourceforge.net/en/main.html Though I certainly don't expect you to download and learn that just to make a port for the six or so Linux users on this forum. Also I have no idea if you could get FleexCore2 to work with it.Fleexy wrote: (In fact, I'd have to learn some other language and re-implement everything.)
Looks a really good program though. Good enough for me to consider creating a Windows VM to use it.
Keening_Product was defeated before the game.
"Wise words. One day I may even understand what they mean." - Levellass
"Wise words. One day I may even understand what they mean." - Levellass
This is great! (The tileinfo is supposed to be part of the maphead, anyway).Fleexy wrote:In other news, the v1.1 update is on the way; we'll see it publicly out in one or two days! Integrated tileinfo editing, anyone?
Do you think that it might even be possible to make a function for rearranging tiles in the tileset so that the map, tileinfo, and graphics archive are all updated simultaneously?
This is probably a good idea anyway, because the best tool to use for compiling the source code will be Borland C++. A Win32 environment would probably be better than relying on DosBox, as I've had problems building the CKCM using Borland in DosBox.Keening_Product wrote:Looks a really good program though. Good enough for me to consider creating a Windows VM to use it.
UPDATE
v1.1: The tileinfo update
Documentation
+ Added the "Tile Property Modifier" tileset tool!
+ Added an internal versioning system
+ Added the Infoplane Helper
* Changed the DC to accommodate tile property editing
* Fixed some GUI bugs
* Fixed some FleexCore bugs
The Infoplane Helper replaces the Tile ID Entry dialog box when right-clicking the infoplane selected tile. Documentation on the Tile Property Modifier is on page 33 of the new help file.
Abiathar can now handle NetKeen's combined maphead/tileinfo without the help of ManTliMh. However, using the combined metamap for normal modding is not recommended because the CKPatch %maphead command deliberately patches only what's necessary for the map header pointers.
Note: For your and your mod's protection, Abiathar v1.1 considers tileinfo from v1.0 dependency files to be read-only. If you want to take advantage of the TPM, you'll need to re-bind the files with the DC (which is probably a good idea anyway to take advantage of the internal version management system).
Just launch Abiathar as you normally would, and if you're connected to the Internet, it will detect the update and ask to download it. The stand-alone update client will also see the new version automatically. Or, if you really want to, you could use this full v1.1 ZIP.
Happy Keening! Now, onto feedback!
Fleexy
v1.1: The tileinfo update
Documentation
+ Added the "Tile Property Modifier" tileset tool!
+ Added an internal versioning system
+ Added the Infoplane Helper
* Changed the DC to accommodate tile property editing
* Fixed some GUI bugs
* Fixed some FleexCore bugs
The Infoplane Helper replaces the Tile ID Entry dialog box when right-clicking the infoplane selected tile. Documentation on the Tile Property Modifier is on page 33 of the new help file.
Abiathar can now handle NetKeen's combined maphead/tileinfo without the help of ManTliMh. However, using the combined metamap for normal modding is not recommended because the CKPatch %maphead command deliberately patches only what's necessary for the map header pointers.
Note: For your and your mod's protection, Abiathar v1.1 considers tileinfo from v1.0 dependency files to be read-only. If you want to take advantage of the TPM, you'll need to re-bind the files with the DC (which is probably a good idea anyway to take advantage of the internal version management system).
Just launch Abiathar as you normally would, and if you're connected to the Internet, it will detect the update and ask to download it. The stand-alone update client will also see the new version automatically. Or, if you really want to, you could use this full v1.1 ZIP.
Happy Keening! Now, onto feedback!
Eventually, I'd like to have graphics management a part of Abiathar. That's probably a long way off, but you never know. Currently, Abiathar will not touch the graphics.lemm wrote:Do you think that it might even be possible to make a function for rearranging tiles in the tileset so that the map, tileinfo, and graphics archive are all updated simultaneously?
Abiathar is written in Visual Basic .NET, targeting framework v4.0. Gambas, though code written in it looks kind of like VB, is not similar. (It's more like C++.) Thanks for your willingness to research though!Keening_Product wrote:I'm not sure what you did this in, but Gambas3 is pretty similar to VB: http://gambas.sourceforge.net/en/main.html Though I certainly don't expect you to download and learn that just to make a port for the six or so Linux users on this forum. Also I have no idea if you could get FleexCore2 to work with it.
Fleexy
Fleexy is the hero that the Keen Community needs.
That's good to hear. If you plan on doing that, though, you might want to have Abiathar rely on some kind of "episode definition file" that allows the editor to handle arbitrary chunk structures. When the Keen Galaxy source code is released, people will start modifying the number of foreground tiles, background tiles, sprites, and so forth, so you'll need some general way of handling all of that.
Eventually, I'd like to have graphics management a part of Abiathar. That's probably a long way off, but you never know. Currently, Abiathar will not touch the graphics.
That's good to hear. If you plan on doing that, though, you might want to have Abiathar rely on some kind of "episode definition file" that allows the editor to handle arbitrary chunk structures. When the Keen Galaxy source code is released, people will start modifying the number of foreground tiles, background tiles, sprites, and so forth, so you'll need some general way of handling all of that.
This is the best part of the help file.Abiathar Help File wrote:Gregory Young: Created The Omegamatic, which nobody will ever use again because they have Abiathar now!
This already exists, see Interop/Profiles in persist.aconf. (You can even create entirely new profiles for the DC!)lemm wrote:...you might want to have Abiathar rely on some kind of "episode definition file" that allows the editor to handle arbitrary chunk structures. When the Keen Galaxy source code is released, people will start modifying the number of foreground tiles, background tiles, sprites, and so forth, so you'll need some general way of handling all of that.
Aaaand, Word apparently autocorrected "Yauney", Mink's real last name, to "Young." Thanks for quoting that, I guess. Fixed and reuploaded to the same spot.lemm wrote:Abiathar Help File wrote:Gregory Young: Created The Omegamatic, which nobody will ever use again because they have Abiathar now!
With those out of the way,
SUPER CRITICAL EMERGENCY FIX UPDATE
v1.1.1: the Max 1 update
I don't know how I didn't catch it before, but I just found a really bad bug in FleexCore2 that causes Abiathar to erase all the levels if level 0 is deleted. While I was poking around in FleexCore, I also added automatic detection and correction of "Instant Carma!" format. This makes Abiathar the only existing editor to be able to read the public version of CKGuy's K5 level pack. Saving with Abiathar will normalize the format.
Like always, this update can be downloaded from the magic auto-updater or the standalone update client. Fine, here's a ZIP too.
Sorry!
Woo, finally got to some testing. And I read through the documentation, really thrilled that you put so much work into that!
Here's some issues I ran into:
1. Lone editing does not seem to toggle correctly.
2. The free form tile placer requires mouse movement to start placing; it should place a tile immediately and then follow mouse movement.
3. Highlighted tiles are too dim! They ought to be brightened and perhaps have a border around them.
4. When 'view tile properties' is toggled on and tiles are pasted over the top of each other, both tile properties remain (for example, paste a slope over a solid or vice versa as the property lines for both overlap).
Here's some functions I'd like to suggest:
1. An option to toggle a limit to scrolling/borders within the context of level boundaries. In addition, when this is toggled, mouse wheel scrolling should alternate from vertical to horizontal when the field of view reaches a 'corner'. See this function in TOM.
2. Toggle paste opacity (or just change it completely) to opaque. Far more useful, imo. Perhaps left to the config file.
3. If the free form tile placer is my default tool, I'd like to see the paster function with those rules; click and drag my stamp.
4. When pasting, it'd be nice if right clicking performed an 'eraser' function, placing all zero tiles (see TOM). Frequently I copy large chunks just to use as an eraser when level editing. Pasting by default should probably paste only non-zeros anyway (your original right click function).
5. A level signature option (only utilized in netkeen). See TOM (note, I haven't tried editing netkeen files yet, maybe you thought of this already)
And lastly, the tile property editor looks functional, and useful for adjustments, but I'm not sure it's nearly as ergonomic as CKd456tli, or Galactile (for those of us privy to it ). I'll be trying it out in the future.
This is all quite nearly to my tastes to let go of beloved TOM. Sometime soon I'll be updating my galaxy modding tutorial and netkeen modding tutorial for Abiathor use.
Here's some issues I ran into:
1. Lone editing does not seem to toggle correctly.
2. The free form tile placer requires mouse movement to start placing; it should place a tile immediately and then follow mouse movement.
3. Highlighted tiles are too dim! They ought to be brightened and perhaps have a border around them.
4. When 'view tile properties' is toggled on and tiles are pasted over the top of each other, both tile properties remain (for example, paste a slope over a solid or vice versa as the property lines for both overlap).
Here's some functions I'd like to suggest:
1. An option to toggle a limit to scrolling/borders within the context of level boundaries. In addition, when this is toggled, mouse wheel scrolling should alternate from vertical to horizontal when the field of view reaches a 'corner'. See this function in TOM.
2. Toggle paste opacity (or just change it completely) to opaque. Far more useful, imo. Perhaps left to the config file.
3. If the free form tile placer is my default tool, I'd like to see the paster function with those rules; click and drag my stamp.
4. When pasting, it'd be nice if right clicking performed an 'eraser' function, placing all zero tiles (see TOM). Frequently I copy large chunks just to use as an eraser when level editing. Pasting by default should probably paste only non-zeros anyway (your original right click function).
5. A level signature option (only utilized in netkeen). See TOM (note, I haven't tried editing netkeen files yet, maybe you thought of this already)
And lastly, the tile property editor looks functional, and useful for adjustments, but I'm not sure it's nearly as ergonomic as CKd456tli, or Galactile (for those of us privy to it ). I'll be trying it out in the future.
This is all quite nearly to my tastes to let go of beloved TOM. Sometime soon I'll be updating my galaxy modding tutorial and netkeen modding tutorial for Abiathor use.
- ckguy
- Bipship Engineer
- Posts: 1169
- Joined: Thu Nov 01, 2007 17:56
- Location: Wakefield, RI, US
- Contact:
The Galactile that Ceilick's referring to is http://dl.tl-dr.org/galactile-beta3.zip
Back in 2011 I made some improvements to Ck456Tli/CkD456Tli and did like 85% of the work needed to make a new version of the program and then stopped for some reason. All that's missing I think is some sanity checks and some updated documentation.
Back in 2011 I made some improvements to Ck456Tli/CkD456Tli and did like 85% of the work needed to make a new version of the program and then stopped for some reason. All that's missing I think is some sanity checks and some updated documentation.
UPDATE
v1.2: the TOM absorption update
Documentation
Get the update with the amazing auto-updater, or at this ZIP.
Thanks, everybody! If you find any other bugs or have feature requests (I'm working on yours, Gridlock), notify me!
Fleexy
v1.2: the TOM absorption update
Documentation
Get the update with the amazing auto-updater, or at this ZIP.
Lone Editing will only do the automatic lock after switching to a tile palette. I tested it more and didn't find anything wrong with it.Ceilick wrote:1. Lone editing does not seem to toggle correctly.
Fixed in v1.2.Ceilick wrote:2. The free form tile placer requires mouse movement to start placing; it should place a tile immediately and then follow mouse movement.
Fixed in v1.2? I'm not really sure what you mean, but I changed the default selection overlay color to make it more obvious. Delete the Selection entry in persist.aconf to have the new default generated.Ceilick wrote:3. Highlighted tiles are too dim! They ought to be brightened and perhaps have a border around them.
Fixed in v1.2.Ceilick wrote:4. When 'view tile properties' is toggled on and tiles are pasted over the top of each other, both tile properties remain (for example, paste a slope over a solid or vice versa as the property lines for both overlap).
Added in v1.2. It's not a perfect copy of TOM behavior, but gets the job done. Set Core/CanvasScroll to False in persist.aconf to enable this feature.Ceilick wrote:1. An option to toggle a limit to scrolling/borders within the context of level boundaries. In addition, when this is toggled, mouse wheel scrolling should alternate from vertical to horizontal when the field of view reaches a 'corner'. See this function in TOM.
That's been in the config file since v1.0, set Core/Preview/Opaque to True in persist.aconf. (A small bug with that affecting the selection rectangle too has been fixed in v1.2.)Ceilick wrote:2. Toggle paste opacity (or just change it completely) to opaque. Far more useful, imo. Perhaps left to the config file.
This is more difficult and not included in this update. I'll maybe figure out a better way to manage mouse dragging soon. EDIT: Added in v1.2.3.Ceilick wrote:3. If the free form tile placer is my default tool, I'd like to see the paster function with those rules; click and drag my stamp.
Added in v1.2. Non-zero mode is now default and can be toggled by pressing Enter. Right-click is now an eraser.Ceilick wrote:4. When pasting, it'd be nice if right clicking performed an 'eraser' function, placing all zero tiles (see TOM). Frequently I copy large chunks just to use as an eraser when level editing. Pasting by default should probably paste only non-zeros anyway (your original right click function).
Added in v1.2.Ceilick wrote:5. A level signature option (only utilized in netkeen). See TOM (note, I haven't tried editing netkeen files yet, maybe you thought of this already)
Improved in v1.2. (Also, I feel special having Galactile on my hard drive previous to ckguy's linking it above.)Ceilick wrote:And lastly, the tile property editor looks functional, and useful for adjustments, but I'm not sure it's nearly as ergonomic as CKd456tli, or Galactile (for those of us privy to it ). I'll be trying it out in the future.
Thanks, everybody! If you find any other bugs or have feature requests (I'm working on yours, Gridlock), notify me!
Fleexy
Last edited by Fleexy on Thu Mar 20, 2014 23:08, edited 1 time in total.
I'm afraid key rebinding is not currently possible. However, I deduce that you are trying to use the function keys to change plane states, so I will tell you about another way to do that. (Logic! It's amazing.) You can use the mouse on the little plane state label (the one that says things like "Active" or "Locked") to change the plane state. Right-click to make less interactive (active -> locked -> hidden) or left-click to make more interactive (hidden -> locked -> active). Lone Editing is also very helpful if you only edit one plane at a time; you can make it default in persist.aconf, Core/Defaults/LoneEditing.
Also, in reply to your post about the tileinfo, Abiathar does allow custom tileinfo settings, just choose <Custom> at the bottom of the drop-down.
UPDATE
v1.2.3: just fixing stuff
Documentation
Stuff got fixed, minor improvements were done. v1.2.1 happened last night, v1.2.2 and v1.2.3 happened earlier today; I didn't want to unnecessarily bump the thread with those minor updates. I guess I'll take advantage of Levellass now to tell everyone about them.
Also, in reply to your post about the tileinfo, Abiathar does allow custom tileinfo settings, just choose <Custom> at the bottom of the drop-down.
UPDATE
v1.2.3: just fixing stuff
Documentation
Stuff got fixed, minor improvements were done. v1.2.1 happened last night, v1.2.2 and v1.2.3 happened earlier today; I didn't want to unnecessarily bump the thread with those minor updates. I guess I'll take advantage of Levellass now to tell everyone about them.