General Loap progress discussion topic

Started by namida, January 08, 2022, 11:18:41 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

namida

#45
Mostly thanks to DireKrow, it is now confirmed that all official levels are solvable in the latest build of Loap.

As for Lemmings Plus 3D, all Fun and Tricky levels are confirmed solvable except for Tricky 22 "Redirect Loop", which is unsolvable due to a physics bug. The Taxing and Mayhem levels remain mostly untested, although Mayhem 79 "Power Distribution" is also unsolvable, in this case due to an intentional physics difference (once I do a proper conversion of the pack, I will adjust this level as necessary to restore solvability).

The only levels I can think of off the top of my head that are explicitly confirmed solvable in LP3D Taxing and Mayhem are Taxing 45 "Deathspring Tunnel", Taxing 56 "Ultimate Lemja Warrior" and Mayhem 70 "Detour Shot". This does not mean the others aren't (except, as noted above, Mayhem 79 "Power Distribution"); just that they're not confirmed either way - it is very likely the vast majority of them are solvable. (EDIT: On further thought, Taxing 53 "Complimentary Lemmings", Mayhem 64 "Candy Corner" and Mayhem 71 "Kingdom Of Chaos" are also confirmed solvable.)
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

NieSch

I said it before but I'm loving this project! One thing I miss is the sound effect of happy and sad Lemmings after finishing a level: https://youtu.be/UqPKF9D993w?t=370
My NeoLemmix packs: All You Need Is Lemmings - Long Live Lemmings! - Yippee! More Lemmings
SuperLemmix: Tomb Rodents featuring Lemmina Croft

namida

As per some discussion on Discord, at this point I feel the important matters before I can declare Loap to officially have reached a stable ("1.0") version are:
- Options menu (including hotkeys)
- Fixing all known physics bugs
- Adjustable sensitivity for mouse camera movement
- "Trap mouse in window" option (and correspondingly, a key to release it)
- Mass replay checking
- In-game records display

Additionally, while I don't consider it a dealbreaker if I don't make any progress, I would like to at least try to improve on some of the rendering glitches.

In particular, I do not intend for a level editor to be a "1.0" feature; that will come later. In the meantime of course, L3DEdit can be used to create levels (albeit subject to the limitations of what DOS L3D supports, for the most part; as well as limited to official / LP3D graphics files and no support for tileset mixing).
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

V0.0.22.0 implemented almost all of the above. The only things that remain:
- Hotkey configuration menu (the rest of the Options menu is done)
- Mass-replay checking
- In-game record display
- If possible, improvements on the visuals (I've made a couple of attempts at this, but so far no success)
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

#49
I've begun working on the mass replay check.

Unlike NeoLemmix, Loap is written from the start to completely seperate rendering from game logic. This should mean the mass replay checking is much faster in Loap than in NeoLemmix. This in turn may even allow for, in a situation where it is not clear which level a replay file is for, simply brute-forcing it to find out (ie: testing the replay against every level until one is found where it solves it - of course, this only works if the replay actually solves a level, but "does not solve any level" is still slightly more helpful than "can't find level").

It will be a bit simpler than NeoLemmix's replays in a couple of ways. In particular, it won't keep track of the user who made the replay (and by extension, won't use this to determine whether or not to update records). To allow the "mass replay check to restore progress" feature, Loap will instead provide a specific option to enable or disable record-overwriting during a mass replay test.
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

Aside from a few minor tidyups (things like giving a visible clickable link to it from the level select menu, rather than it being hidden behind a hotkey), the mass replay check is now implemented, though not merged into the master branch yet (though as no changes have been made on the master branch since I started working on it, the chance of conflicts is 0%).

It works very nicely; as expected, faster than NL's check. The brute force identification (if a replay can't be matched to a specific level, just try it on every level until one is found that it solves) is practical but a bit slow - probably not great for entire collections of replays with wrong/no info to identify the level, but certianly good enough to sort out the occasional case of a broken reference - but an option is given to disable it.
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

In light of this, the remaining things for a V1.0 milestone are - note that I've added some new ones:

- Hotkey configuration menu
- A few more tidyups / optimizations on mass replay checking
- In-game record display
- Select walker hotkey
- "Crack" graphics on blocks from destructive skills
- Support for custom assets via a "translation table" type setup
- If possible, improvements on the visuals
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

#52
I've completed the improvements on mass replay checking, and implemented the translation table type setup for custom assets. As a key difference from how NL's worked, the translation tables are part of packs. This is due to the reliance on index numbers in L3D, which might be a bit limiting (and annoying to avoid collisions) if multiple sets of custom assets were to pop up.

It would probably be quite tedious to put a custom translation table together by hand though, so I'll consider whether to make a tool for this (likely one that takes one or more Loap assets as input, and converts them to an L3D-format file that L3DEdit can use + a translation table to allow loading the created levels into Loap).

On a side note, it'd also be possible using these (together with the right OGG files) to create a patch to play the CD music tracks on L3D levels, while leaving other packs untouched. Of course, this will only work until the point at which Loap switches to custom formats (although the majority of L3D level files can be used direct from the official game if one wished to - only a very small number needed modifications, and those usually for cosmetic purposes).
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

#53
And, crack graphics from destructive skills are in! I attached a screenshot, or if you want to see it in video: https://youtu.be/tBIGOav9QFo

This now leaves (including one new one):

- Hotkey configuration menu
- In-game record display
- Select walker hotkey
- Spawn direction indicator for entrances
- If possible, improvements on the visuals


EDIT: And, select walker hotkey is done too. As well as its inverse, "force select non walker". Some things to note - I grouped Slider in with Walker here as a special case; while Shruggers are also a special case and can be selected regardless of which (if any) of these hotkeys is held. Yes, these go a bit against the literal definition, but I feel that in practice they'll be more useful this way.
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

I implemented records display on the preview screen a while back, so that one's out of the way. Likewise for spawn direction indicator. That pretty much just leaves the hotkey config menu now, although I'd also like to do replay insert / suspend mode - and in fact those will probably come before the hotkey menu. I'll probably release V0.0.24.0 before doing the hotkey menu, as there's a few fixes I'd like to get out there (including a few physics fixes someone else contributed).

And of course, the ever-present dream of fixing or at least reducing the visual glitches, but I still don't have any useful ideas on how to do that while still running at an anywhere-near-respectable framerate (and even solutions I've tried that aren't great framerate-wise - some are on the order of 2 or 3 FPS - aren't all that huge of an improvement).
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

So, the hotkey menu is finally implemented. That's everything checked off that I considered critical before releasing a stable version.

With that being said, aside from of course more testing, I do want to see if I can do anything about the rendering issues, as well as some of the minor performance issues that have been noticed. Definitely though, we're getting there! (I will note in particular that a dedicated editor is *not* on the list of things to do before releasing a stable version. If that happens, it will come later; use L3DEdit for now, it works.)
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

I finally finished putting together a collection of replays for the L3D levels in Loap.

Note that two of these - "Five Towers" and "Castle Peralus" - at least, won't work on the current test build. They'll work on the next one, or if you build from the current source. This is due to a physics fix regarding climber-bombers.
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

When the option to lock the mouse while panning / rotating the camera is enabled, the performance can be a bit awkward in 0.0.25.0 due to the new code for this functionality. Next update will have some significant improvements for this.

I've also found a bug where the camera can't be rotated while in virtual lemming mode using the mouse. I haven't figured out the cause (or even narrowed down if this is related to the new code) yet.
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

#58
I re-tested all replays, given that I'd implemented a few bugfixes while making them. Out of the 186 replays, only 7 failed:

(L3D Mayhem) Five Towers - Confirmed as due to adjusting the climber-bomber physics to match DOS L3D.
(L3D Mayhem) Final Maze - Confirmed as due to fixing a turner-bomber bug.
(LP3D Tricky) The Nightman Cometh - Confirmed as due to fixing the "builder stacking" bug.
(LP3D Taxing) The Ancient Lemming Curse - Confirmed as due to fixing a turner-bomber bug (not turner-on-bridge bug as initially suspected).
(LP3D Taxing) The Claw - Confirmed as due to the turner-on-builder-brick faller momentum bug being fixed.
(LP3D Mayhem) The Grand Arch - Confirmed as due to the turner-on-builder-brick faller momentum bug being fixed.
(LP3D Mayhem) Aerial Assault - Confirmed as due to the turner-on-builder-brick faller momentum bug being fixed.

Five Towers was the only one that needed an entirely new replay; the rest all just needed some tweaks.
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

I just uploaded V0.0.26.0. The main thing holding me back from going RC at this point is the rewind bug of unknown cause - since I don't know exactly how to trigger it, it's very difficult to say if my attempted fix has worked or not, though for what it's worth I haven't encountered issues since making that fix.

The one other feature that might make it in before RC, is Clear Physics Mode. Depends how complex it turns out to be to implement - all I've done so far is create some graphics for it.
My 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)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)