Plans for V12.7.0

Started by namida, August 27, 2019, 07:53:24 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

namida

V12.7.0 Release Candidate planned release date: 2019-10-05

In accordance with the release plan schedule, NeoLemmix V12.7.0 is currently aimed for release in mid-November (with a release candidate build in mid-October).

Planned new major features for V12.7.0 are:
- Reintroducing anti-splat pads
- Official support for custom pickup skills
- Neutral lemmings
- Recoloring for lemming sprites
- Slight tweaks to file formats to have more consistency. Auto-update tools will be available for this, as it's generally not "something is no longer supported", but just that the format will be tidier.
- "Cleanse levels" - a feature that will go through a pack and re-save all the levels as latest-format NXLV files. This can be used to keep levels in an up-to-date format, as well as (up until V12.10.0) being useable as a way to convert any remaining old-formats levels.

Deprecations planned for V12.7.0 are:
- Use of "_mask.png" files in custom lemming sprites (but the same effect can be achieved a new way)
- Support for files which have not been given the V12.7.0 updates as mentioned above
- Additionally, anything deprecated prior to V12.7.0, will be treated as if it were deprecated in V12.7.0 for the "three major versions deprecated, then it gets culled" rule.

Culls planned for V12.7.0 are:
- The "orig_dirt_md" style. Code will be in place until V12.10.0 to automatically use "orig_dirt" in its place. (We have a large enough number of styles without palette swaps, and the "orig_" in the name implies it's an officially-supported style when it's not.)


Part of the reason for the format tidyup, as well as the freeze on non-important editor features, is that I'm writing a new editor. I don't intend for this editor to become stable at the same time as V12.7.0, but these changes are in preparation for it, so that I don't need to include heaps of backwards-compatibility code in 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

Regarding deprecations for NL 12.7.0 - virtually everything that's changing, except for the custom pickup skills, it will be possible for a tool to automatically update everything, so the only manual work that will be needed is uploading an updated copy of content.

For levels, it'll be a matter of "run them through the new Cleanse Levels feature, then use the cleansed version of the levels to replace the existing ones". As always, it's recommended you run a mass replay test just to check nothing broke.

For styles that are included in NL's styles downloads as at the time of either the RC or stable 12.7.0 release, I will handle upgrading everything other than custom pickup skills - AS LONG AS it's been updated where needed to be 12.6.X compatible. Doesn't have to specifically take advantage of 12.6.X features (like secondary anims), it just has to be compatible with 12.6.X. If part of a style is compatible and part isn't (eg. if the objects work fine, but the lemming sprites aren't updated), I will upgrade the parts that are compatible, and leave the parts that are not. If your style is still private, or hasn't been made 12.6.X compatible, as of the time of the V12.7.0 RC release, you will need to wait until the V12.7.0 stable release for me to upgrade it. If it still hasn't been updated for V12.6.X compatibility by the time of the V12.7.0 stable release, you're on your own to update it - of course, I'll likely release an app that does it, but you're on your own to run your content through the app and check the result is indeed as it should be.

Content that does not get upgraded will still work in V12.7.X, and also V12.8.X and V12.9.X - but it will stop working in V12.10.X onwards, and also will not work with the new editor when released.
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

Due to a bug, there's an edge case that occurs in specific cases where alpha-blended terrain is partially (but not completely) steel or one-way. Because this is so obscure, I doubt an immediate fix is necessary - just, if you are using alpha-blended terrain in such situations, double-check your levels when V12.7.0 is released. The majority of such cases should work without issue.
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)

Dullstar

If Cleanse Levels will work on old formats levels, would it be possible to work on directories (and subdirectories if the user wants) of levels that are not part of a pack? Currently, standalone old formats levels cannot be converted in bulk without first using old formats versions of the pack tools to create a pack out of them, as the automated converter only works on packs. It's true that the editor can open old formats, but it's tedious because you have to do it one-by-one.

namida

Quote from: Dullstar on September 01, 2019, 06:07:20 PM
If Cleanse Levels will work on old formats levels, would it be possible to work on directories (and subdirectories if the user wants) of levels that are not part of a pack? Currently, standalone old formats levels cannot be converted in bulk without first using old formats versions of the pack tools to create a pack out of them, as the automated converter only works on packs. It's true that the editor can open old formats, but it's tedious because you have to do it one-by-one.

Simple answer: It only works on packs.

More detailed answer: ...of course, since you can create a pack (albeit without subgroups, ordering, etc) just by throwing a bunch of LVL or NXLV files (or a mixture thereof) in a subfolder of "levels", and then run Cleanse Levels on that...

(You will, however, need to create a suitable levels.nxmi file to pull Lemmini or Lemmins levels into it - it will only automatically detect NXLV or LVL files. But you can reference such levels in a levels.nxmi file and it will work - though the only reason you should really do so is to run them through this kind of conversion.)

In short - the most efficient way to convert old-format levels and not-up-to-date NXLV levels all at the same time (and my advice: assume every NXLV is not up to date unless it was created with the editor released alongside V12.7.0 Release Candidate or newer, as I'm tidying up the format a bit at the same time as this update), where those aren't part of a pack, is to create a subfolder in "levels", which will appear as a pack in NL, and then run Cleanse Levels on it. You can have subfolders, it will catch them too. You can have a mixture of NXLV and LVL files in here (and the LVL files in turn can be either old-formats NeoLemmix, or DOS / Lemmix levels); though further effort is needed to get Lemmini or Lemmins levels converted.
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

#5
Here are the remaining issues I want to at least attempt to resolve before releasing a V12.7 release candidate. If there's another issue that you believe should be addressed in V12.7 and will not need long discussion that will delay V12.7's release (or are so important that a delay could be justified over it) - rather, either it's a bug that just needs to be reported and addressed, or it's something where there's already a consensus and only the implementation is needed - please bring it up as soon as possible.

New bug reports are likely to also get considered; but new suggestions at this stage will likely need to wait for a future release, unless they directly relate to one of the new features still under discussion. EDIT: To clarify what I mean here - I'm talking about new suggestions that are posted from now on; feel free to point out already-made suggestions that you think I should take a closer look at.

This is not a comprehensive list of everything that will be new / changed. This is a list of things that I feel need to be addressed, but haven't yet done so, only.

Engine
[SUG][PLAYER] Fix misleading traps!
[SUG][PLAYER] Remove support for fully custom lemming sprites, allow recolors. - Mostly this just comes down to "I need to make a proper tutorial on it"; also, after discussion, this became "keep support for fully custom, but also implement the option of recolors"
[DISC.][PLAYER] Appearance of neutral lemmings
[BUG][PLAYER] Clear physics mode doesn't color shift if paused during CPM
[DISCUSSION][PLAYER] Neutral lemmings vs nuke
[DISCUSSION] User interface and neutrals
[BUG][PLAYER] A few bugs in test play mode. - Bug #3 remains unfixed
[BUG][PLAYER] Skill assignments via highlit lemming do not get queued
[BUG][PLAYER] If music file is missing, last level's music is played instead.
[Player][Suggestion] Use level name in automatic replay names if unordered.
[BUG][DEV-PLAYER] Neutral lemmings invisible in clear physics mode
Autoreplay: Solve-then-replay shouldn't save identical replays
[BUG][PLAYER] Zombies don't always infect Blockers
[BUG][PLAYER] Cloner-stacker shadow incorrect for one frame
[BUG][PLAYER] On assignment for frame n, first erase old assignment for n - Main bug fixed, but a related bug persists
Skill panel does not redraw upon minimizing another window [BUG] [PLAYER]
[DISCUSSION][PLAYER] Official support for custom pickup skills. - Mostly there, but a "simple mode" is proposed
[Bug][Investigation] Multiple Talismans in a single level
[BUG][PLAYER] NeoLemmix hangs under certain conditions when changing level
Integrate the new Disarmer sprite by WillLem


Editor
[BUG][EDITOR] No Grid Toggle button visible in Drop-down menu.
[Bug][Editor] Moving background objects don't move - I want to get actual editing implemented
[Suggestion][Editor] Indicate style associated with backgrounds
[Suggestion] Move talisman editing from Pack Toolkit to level editor. - This one is somewhat unlikely as it's very tricky, but I want to at least give some effort to trying to do it
[BUG][EDITOR] One-way arrows with "No Overwrite" drawn incorrectly.
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

#6
At this stage, the only thing that remains that needs further input before a Release Candidate build can be made is [SUG][PLAYER] Fix misleading traps!, where there is an ongoing discussion regarding the fire pit object in orig_fire. I've set an ultimatum on this one for when we need a result by.

The other remaining issues on the engine side:
- Lemming recoloring, this doesn't need any further work. It just needs me to write a proper tutorial for it. Thus, the RC doesn't need to be delayed for it.
- Neutral lemming appearances, I feel that the benefit of having the RC build to do real-world testing for this, outweighs the fact that this might be something that changes between RC and stable (especially given this is purely a question of visuals). I will likely release the first RC build with the neutral lemmings as they currently are.
- EDIT: And one bug that I discovered ages ago but only just remembered now. This should be a relatively simple fix though.

The remaining issues on the editor side are all "would be nice, but aren't critical" matters, so I will not delay the RC for these. I might implement them between RC and stable.

There's a little bit more preparation I have to do to get ready for the release, but overall, I feel that we're more or less ready for 12.7 RC at this stage.

As such - V12.7.0 RC will, all going well, be released (UTC) Friday evening or Saturday morning. If there is anything else you feel needs to be accounted for in V12.7.0, especially on the engine side, please speak up about it now.

Please remember - Release Candidate builds are considered stable enough that you can build content that targets them or use them to work on updating your existing content; but you should not release such content (unless it's content specifically made for testing / demonstration purposes that needs to be shared to acheive that, of course) until there is a corresponding stable release. However, you can submit V12.7-ready styles to the NL styles download during this phase. So in short: Public release content should be V12.6.5-compatible; submitting-for-next-update styles can be either but V12.7-ready is preferred (exception: pickup skills must be V12.7-ready).
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)