Author Topic: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.51)  (Read 33207 times)

0 Members and 1 Guest are viewing this topic.

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: [WIP] L3DEdit: Lemmings 3D Level Editor - Release topic (V0.34)
« Reply #15 on: June 23, 2019, 05:07:28 AM »
Uploaded V0.34. There's only one change, but it's a big one:
- Land areas can now be edited.

This pretty much means everything - minus a few very obscure flags that I doubt anyone will miss - can be edited via L3DEdit. As such, the focus will now switch to bug fixing - so please report any bugs you find! I will also, in time, look into further rendering speed improvements.

But yep - V0.34 now edits everything important. And we got here less than three weeks from starting editor development. A huge thanks to Pooty in particular, once again, for his documentation of the Lemmings 3D file formats, and for futher assistance in figuring out the remaining details of these during L3DEdit's development. That aside, also, thanks to everyone else who contributed in any way - whether it was throwing out random thoughts (some of these really did lead us to useful info!), or even just showing support.

Now - what are you waiting for, let's see some custom L3D levels! :D And don't forget - it's always a good idea to keep solution replays, which is possible thanks to L3DReplay. :)
« Last Edit: June 23, 2019, 05:18:15 AM by namida »
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline Flopsy

  • Global Moderator
  • Posts: 953
  • Lix Nerd
    • View Profile
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.34)
« Reply #16 on: June 24, 2019, 01:23:18 AM »
Just to re-iterate that I am still waiting on a copy of the game and I am still intending to test this when I get the chance to.

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.35)
« Reply #17 on: June 24, 2019, 08:17:42 AM »
Uploaded V0.35. Mostly a bugfix update, but there's a couple of nice new features.
- L3DEdit finally has an actual icon instead of the generic Lazarus app icon.
- Added a menu to reorder (or mass-replace-with-placeholders) levels - hugely useful if you're working on a large pack! (It's under "Utilities".)
- The spawn direction of lemmings is indicated on top of any entrance blocks.
- When switching to land editing, the selected axis is automatically changed to Y and the selected slice to 0 (unless it's at "none", in which case it stays at none).
- You can press Alt+O to get a count of how many blocks, and how many non-block-3 blocks, are in your level. This is mostly a debugging / testing feature but I saw no reason to take it out for the release version - but do be aware that whether this feature exists and/or how to access it could change without warning.
- When no slice is selected, L3DEdit says "None" instead of "-1" for the currently selected slice.
- Fixed bug: Shift level shifts in the wrong direction.
- Fixed bug: Land coordinates (when placing land) are inaccurate when view is rotated.
- Fixed bug: Some UI components don't update properly when hotkeys are used to change the currently-edited component.
- Fixed bug: Some UI components don't update properly when objects are selected by right-clicking.
- Fixed bug: Some UI components don't update properly when changing style options via the presets.

As a reminder: Please report any bugs you run into! I'm regularly creating levels myself so I do end up finding a lot, but it's possible that some things would be so minor I don't really register them, or that they don't occur with the way I work (which is very strongly hotkey driven, so the mouse options often have limited testing).

The immediate next thing to do is "Undo". The editor really needs this in my experience.
« Last Edit: June 24, 2019, 09:42:11 PM by namida »
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.36)
« Reply #18 on: June 24, 2019, 11:59:48 PM »
Uploaded V0.36. This is a minor update compared to the last one:
- The "All Levels Unlocked" save option now actually generates a save file, instead of just extracting one that's embedded into L3DEdit's EXE. In particular, this means (a) the saves created by it no longer have some existing lemming kill / save and skill use counts; and (b) when used with custom levels, the save file will have accurate titles. This option still erases all your records / completion / etc and replaces it with a save that has all levels unlocked but none complete, it's just truly a blank save (and with accurate titles) now. Huge thanks to ccexplore for cracking the checksum algorithm.
- The L3D palette file is no longer embedded in L3DEdit, it relies on the copy from L3D's data files. Since it relies on other files from L3D anyway, and thus already has to be in the same folder (or in a folder with a copy of L3D's files), this probably wouldn't have even been noticed had I not mentioned it. ;)
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.36)
« Reply #19 on: June 25, 2019, 11:35:49 PM »
Uploaded an alternate V0.36 build that's built with Delphi XE6 rather than Lazarus. Delphi-compiled code is generally faster, especially where Graphics32 is involved. If you're having issues with L3DEdit's rendering speed, try this alternate build. However - be warned that it's highly experimental, so take even more care than usual with saving / backing up your work, etc. (It's unlikely there's any bugs that will corrupt data, unless they also exist in the Lazarus version, but better safe than sorry!)

If you use hotkeys much, please read over the new notes at the start of the hotkeys section regarding the Delphi version - they work a bit differently from the Lazarus version. (I'll likely bring the Lazarus verison in line with this behaviour in a future update.)

Linux users: It won't be possible to compile the Delphi version for Linux, but there's a good chance it'll work correctly under WINE (except maybe the RNC decompression, so you may have to decompress files manually), based on that NeoLemmix does, and that Delphi L3DEdit is compiled with the same compiler using only libraries that NeoLemmix also uses.

---

Known Delphi version bugs (and workarounds where applicable):
- When block segments are modified via the checkboxes (but not when done via hotkeys), the block is not updated. Workaround: Re-select the block type from the dropdown menu after changing these checkboxes, and it will update correctly.
- The "No Invisibles" option doesn't appear to work.
« Last Edit: June 26, 2019, 12:28:49 AM by namida »
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.36)
« Reply #20 on: June 25, 2019, 11:59:32 PM »
Linux, but there's a good chance it'll work correctly under WINE (except maybe the RNC decompression

Out of curiosity, what's so special about the RNC decompression that it might not work correctly under WINE? ???

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.36)
« Reply #21 on: June 26, 2019, 12:29:31 AM »
Linux, but there's a good chance it'll work correctly under WINE (except maybe the RNC decompression

Out of curiosity, what's so special about the RNC decompression that it might not work correctly under WINE? ???

I haven't written my own code for this; rather, I embedded a common tool into the EXE, which is extracted and run when needed. This is something that I could foresee possibly not working correctly, and is not something NeoLemmix does so can't make guesses based on that.
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.36 / V0.37-D)
« Reply #22 on: June 26, 2019, 03:13:37 AM »
Uploaded V0.37-D. To be clear, this is an update ONLY to the Delphi version of L3DEdit - there's no new update to the Lazarus version. (I could release an update that solely changes the version number to V0.37, but what would be the point?)

Some UI elements in the Delphi version did not respond correctly (or more likely - not at all) when clicked. This update fixes all cases I could find of this.
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.38)
« Reply #23 on: June 26, 2019, 08:36:06 PM »
Uploaded V0.38 and V0.38-D. Changes:
- Added an option (under the View menu) to pick between the standard grid, corners-only grid, or no grid at all for the selected level slice.
- Negative water movement speeds now can be entered and load correctly.
- Right clicking while editing land will now delete the last vertex, meaning you don't have to start the land over again if you mess up.
- A specific byte is always written to level files, that may help reduce the impact of the face render limit.
- (Lazarus version) Hotkeys now match the Delphi version.
- Fixed bug: Level is not re-rendered after adding a new vertex to land.
- Fixed bug: The editor allows creating land with more than 8 vertexes (which are then lost when saving).
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.38)
« Reply #24 on: June 26, 2019, 11:10:19 PM »
Uploaded V0.39 and V0.39-D. Changes:
- Added Undo and Redo. They're under the "Edit" menu, or alternatively, use the shortcut keys Ctrl+Z and Ctrl+Shift+Z respectively.
- Fixed bug: Adding more than 8 lands is possible, with excess being lost.
- Fixed bug: L3DEdit treated land vertexes with an X coordinate of 0 as invalid. (This is correct behaviour for Z, but not for X.)
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.38)
« Reply #25 on: June 26, 2019, 11:20:16 PM »
I have just pushed commits which now put the source code under the MIT Licence. As per the wording of the L3DEdit Temporary Licence that applied to older commits, they too may be used now as if they were under the MIT Licence.
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline Flopsy

  • Global Moderator
  • Posts: 953
  • Lix Nerd
    • View Profile
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.39)
« Reply #26 on: June 27, 2019, 01:38:30 AM »
Ok I'm on board with bug reporting at last.

I have had great difficulty getting L3D working in DOSBox but thanks to Nessy helping me I have managed to get it working decently now.

I didn't get much time to play around with the editor but I did notice that I'd get an access violation if I ever clicked outside of the grid in the level working area.

Also Nessy did help me learn this (among other things) but I have to apparently load a level with the tiles required to get the tiles to make a level with myself. In other words treat the level as a mini "tileset".

Looks good from what I've seen so far but the editor looks like a steep learning curve.

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.39)
« Reply #27 on: June 27, 2019, 03:58:24 AM »
Quote
I didn't get much time to play around with the editor but I did notice that I'd get an access violation if I ever clicked outside of the grid in the level working area.

Which level components tab were you on (ie: land, blocks, etc) when this happened? Also, Lazarus version or Delphi version? (If you're not sure, check Help -> About. If the version number has "-D" at the end, it's Delphi, if not, it's Lazarus.)

Quote
Also Nessy did help me learn this (among other things) but I have to apparently load a level with the tiles required to get the tiles to make a level with myself. In other words treat the level as a mini "tileset".

You don't have to - you can right click on an empty (or not-empty, for that matter) block slot in the block selection menu to edit it and choose textures yourself - but it is much easier to use another level's block data as a starting point, perhaps with your own changes on top of that. (This is my usual approach - I'll use the block data from a level with similar blocks, then make my own tweaks on top of that.)
« Last Edit: June 27, 2019, 05:42:15 AM by namida »
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline Simon

  • Administrator
  • Posts: 3860
    • View Profile
    • Lix
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.39)
« Reply #28 on: June 27, 2019, 08:42:55 AM »
I have had great difficulty getting L3D working in DOSBox but thanks to Nessy helping me I have managed to get it working decently now.

What problems did you encounter? How did you solve them?

This is highly valuable to write down in a public post. I don't mind maintaining the info afterwards, but I need the info first.

-- Simon

Offline Flopsy

  • Global Moderator
  • Posts: 953
  • Lix Nerd
    • View Profile
Re: L3DEdit: Lemmings 3D Level Editor - Release topic (V0.39)
« Reply #29 on: June 28, 2019, 12:47:17 AM »
Quote from: namida
Which level components tab were you on (ie: land, blocks, etc) when this happened? Also, Lazarus version or Delphi version?

It only happens on the Blocks tab and I was using the Lazarus version

____________________________________________________________________________________________

Here you go Simon, this is the entire conversation on Discord last night which me and Nessy had (it was in a private conversation so it's not publicly viewable other than what is posted here). I hope this is helpful.

Spoiler (click to show/hide)