Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - WillLem

Pages: [1] 2 3 ... 21
1
SuperLemmix / [SUG] Object updates
« on: March 22, 2024, 12:36:09 AM »
Since a lot of new objects have made their way into SLX, it's time to look at what we can get rid of.

Splitters - these will be kept

Splitters are particularly problematic code-side, and I've personally never found them to be particularly useful as a designer or enjoyable to encounter as a player. So, unless there are any objections from people who currently use SuperLemmix, these will be removed shortly.


Teleporters/Receivers
- these will be kept

Now that Portals are a thing (and a much more useful thing at that), I'm not sure if we need Teleporters any more. This one is very much up for discussion, though; these will not be removed unless others agree that they aren't needed. If there are no replies, these will be kept.



Paint/Background

These both achieve more or less the same thing: a no-effect object that doesn't have a trigger, and is only there for decoration. My instinct here is to merge these into a single object (likely "Paint", to remove the confusion between "Background" and background images, which are in fact a different thing), which can then be drawn wherever the designer likes (e.g. in the background or on terrain as decoration) by using the "No Overwrite" and "Only On Terrain" properties. I'll wait for feedback before actioning this - if there are no replies, this one will go ahead.


Animation/Single-Shot Animation

These are triggered animations that can be used mainly for fun, or to delay a lemming - they don't remove the lemming like traps do. However, I'm thinking these can be merged into traps; we can check a trap's .nxmo for "NO_REMOVE" or something similar (that way there's no need to change existing traps), and then the trap would essentially become an "animate only" object. I'll wait for feedback before actioning this - and, if it turns out that there are lots of existing animation objects in the styles, then that might be enough to put me off this one!

2
See this topic. Another one from the old wish list! :lemcat:

SLX now has the option to assign a "Skill Button" to a hotkey. So, for example, "Skill Button 5" would assign the hotkey to the 5th button on the panel, whatever the skill on that button may be.

This can also be used together with the "Highlight Lemming" hotkey to assign the chosen skill to the highlit lemming.

Implemented in Commits c5b7f8c4e and 51a920600

3
Rather than simply displaying "You unlocked a talisman!" (not really much use when there are multiple talismans), let's display the talisman icons on the postview screen and make them clickable, as per the preview screen.

I'll look at various display positions and see what works.

4
8-)



The replay "R" icon now has a simple 2-frame animation to increase visibility, and is clickable to cancel the replay. It works for both standard and insert mode (previously, insert could only be cancelled with a hotkey).

Hopefully, this will help out any new users who haven't yet figured out the hotkeys or the click-anywhere-to-cancel behaviour.

Feedback welcome!

5
Hi all,

It's possible a few people may have noticed this, but a number of my recent posts have been missing images. This is because around June last year I began to use Discord as a pseudo-image-host, copy-pasting the image link in order to display it here on the Forums. Discord apparently isn't too reliable for this sort of use in the long term, and the images began to disappear (not necessarily in any particular order).

The main reason I began to use Discord to host images is that it supports copy-pasting directly from the Windows clipboard, so sharing quick screenshots is so much easier than saving the file to desktop and then browse-uploading it to an image hosting site. However, it turns out that Imgur now supports pasting from clipboard as well, so I'll be going back to this as an image host.

Thankfully, I haven't uploaded too many images from Discord. And, since Proxima enlightened me as to LF's Advance Search feature, I was able to quickly find all posts with missing images by searching "media.discordapp" and "by user: *WillLem".

So, I'm happy to confirm that the images have now all been correctly restored :lemcat:

If anyone on the Forums needs any help with anything relating to image hosting or adding pictures to a Forum post, feel free to ask and I'll be more than happy to guide you with it.

6
I originally requested this as a NeoLemmix feature back in Dec 2020, and have finally got around to figuring it out! :lemcat:

If Windows file association is set for .nxrp files, clicking on them now loads the level into the SLX player, opens straight to preview screen, and loads the replay into memory. Clicking into the level from here then plays the replay. The presence of >1 level with the same ID is accounted for with a selectable list dialog, and it's possible to cancel loading from here if the user is unsure which level to select.

Here's a video to demonstrate the feature. Super chuffed with how this one has turned out.

Some concerns for further development:

Cancelling exits to Menu, but it's also possible to exit SLX entirely - it's difficult to decide which is more preferable here. I suppose it depends entirely on use case, and possibly on this:

Currently, opening multiple replay files in this manner will open multiple instances of the SLX player, each with the relevant level & replay loaded. I personally think this is OK, and I'm not 100% sure if there's a way to load directly into an currently-open instance. Might investigate this further if people think it would be worth it.

This will definitely be present in 2.7 (due end of April). Implemented in Commit 1aa6df537


7
Note for NeoLemmix users: this bug is also present in the NeoLemmix Editor, and has been for a while. If I can get it resolved in the SLX Editor, I'll absolutely provide the fix for the NL Editor as well.



The problem

Steps to reproduce:

1 Find a level that has some pieces in it that are definitely not present in the styles folder (perhaps temporarily remove the level's style from the styles folder for testing)

2 Open this level in the Editor

A dialog similar to this one should pop up:



Any attempt to move past this dialog (either by clicking OK or [X]) results in the same dialog popping up again. You either have to reach for Windows Task Manager (:forehead:), or if you have enough patience (and a rapid-fire button on your mouse!), you can repeatedly click it up to 40-50 times and it will eventually close, and the level will load.

This should clearly not happen. Ideally, the dialog disappears after a single click.

With that said - if the level is missing multiple pieces, this dialog appears per piece. So, even if a single click closes the dialog, this is still very inconvenient if you have to click through many missing pieces.

The fix

It's a very easy fix, thankfully. If we remove the code that causes the dialog to open and silently log the exception instead, it turns out that the Editor code already features a much better way of handling missing pieces; it shows a much more user-friendly dialog with a list of all missing pieces, and explains that the image files cannot be found:



Please note that I have already modified this dialog in the latest working copy of the SLX Editor, but the original version was essentially the same; I've simply added some line breaks for readability, and a Cancel button. The reason being, clicking "OK" closes the dialog and loads the level, albeit with the missing pieces; the user should also be able to cancel the loading of the level altogether at this point.

I do wonder, though - what is the most desirable behaviour here? Should the level load with missing pieces? This is not necessarily a good result; if the level is saved at that point, the missing pieces will have disappeared unrecoverably.

I suggest it would be far better to simply not load the level, instead preserving it as it whilst encouraging the user to gather the missing style pieces so that the level can be opened properly.

Offering the choice (as the working copy currently aims to do - I haven't quite finished it yet) seems like a happy medium, but maybe preserving the level file should be top priority here. I feel like an extra step should be necessary to open the level with missing pieces (an "are you sure?" dialog with a warning, perhaps), and cancelling loading the level should be an easier default.

Thoughts on this? Should it be a choice? Should the level never load with missing pieces? Should it always load with missing pieces?

One thing is for sure - the repeatedly-opening dialog is GONE, so the bug is fixed. We just need to figure out what is the best thing to do with the "missing pieces level" from that point.

8
Site Discussion / Solved: Allow PMs to be viewed as a single thread
« on: February 26, 2024, 12:15:35 PM »
Maybe there’s already a way to do this?

When messaging the same person, particularly if there is a back and forth, all of the messages appear as separate entities and must be viewed by switching from Inbox view to Sent view.

By the time a considerable back and forth has been established, this can amount to many messages and can quickly become confusing, particularly if speaking to multiple people at once.

If all messages to a single person are grouped into a single thread, this would help greatly with following a conversation and also would help keep the message boxes tidy.

Happy to help with this if necessary.

9
SuperLemmix Bugs & Suggestions / [SUG] Collectibles
« on: February 25, 2024, 04:01:04 AM »
It's an idea that's come up a number of times in a number of different conversations.

Mario has coins and power-ups, Sonic has rings and chaos emeralds, Lara has jade, silver and gold dragon statues (in TRII, that is).

I've always thought that Lemmings is a game for which collectibles would be an ideal match, particularly in levels which offer multiple solutions.

What collectible should Lemmings have? Pickups and buttons have a very specific in-game purpose, and can be made non-optional for the level's solution; ideally, we need something that rewards exploration and provides value whilst remaining fully optional at all times. We want to do something cool if a player gets them all, as well.

Ideas and suggestions very welcome.

10
Lemmings Main / Lemmings Scoring System
« on: February 23, 2024, 05:26:09 PM »
What would the best scoring system for a Lemmings game be?

We have 3 main factors over which the player has control:

1) How many lemmings are saved
2) How much (in-game) time is used
3) How many skills are used

But, how to score this?

It seems that percentages need to become an immediate filter: if we score 10 points per lemming, then an easy level with 100 lemmings offers 1000 points, whereas a difficult level with 5 lemmings only offers 50. So, we'd need this to become "how many lemmings are saved vs. how many are available." 100/100 should score the same as 5/5, perhaps.

Unfortunately, it's not as simple to apply the same logic to time and skills. An infinite time level doesn't provide a suitable basis for comparison; we'd need to know how long the solution is supposed to take, which would mean collecting more information from the level designer.

Meanwhile, using 1 of 200 available skills in a Tame level is not as much of an achievement as using, say, 5 of 8 skills in a Havoc level. So, percentages also fail here (assuming that using fewer skills is necessarily better).

There are abviously other factors to consider. But, could an algorithm be built which sufficiently factors in lemmings saved, skills used, time used and level difficulty? Maybe the higher a level's rank, the more weight certain features carry? Is the logicial conclusion of this that each level needs its own individual scoring system?

11
Other Projects / [Tools] Duplicate Deleter for .lvl / .nxlv
« on: February 21, 2024, 12:06:38 AM »


Attached here is a simple program that can find and delete any .lvl files that have a corresponding .nxlv file with the same name in the same folder. Particularly useful if you're doing a lot of old-to-new formats conversions and want a quick way to keep things tidy!

A confirmation dialog shows which files are set to be deleted before the deletion process begins.

The .lvl files to be deleted are moved to the recycle bin, so they can be recovered later if necessary.

Hope this helps!

12
NeoLemmix Main / Converting .lvl to .nxlv (for NeoLemmix & SuperLemmix)
« on: February 20, 2024, 11:54:43 PM »
So, you want to convert your old (or new!) pack of .lvl levels to new-formats NeoLemmix, namely the .nxlv format, so that they can be played in NeoLemmix or SuperLemmix.

There are a number of ways this can be achieved, but here's the way I do it. Everything you need for this method is attached to or linked in this post:

1. Create a backup of the .lvl levels that you want to convert

2. Create a New Folder on your Desktop and name it "Converted Levels" (or something you'll remember later)

3. Move all of the .lvl files that you want to convert into the "Converted Levels" folder

4. Open the NeoLemmix 12.9.4 directory (download it here if you don't already have it)

5. Move your "Converted Levels" folder from the desktop to the "levels" folder in the NeoLemmix 12.9.4 directory

6. Open NeoLemmix 12.9.4

7. Press F2 to navigate to the level select menu and select "Converted Levels" from the list

8. Press OK. This should load the first level, so hit Esc to back out to the NeoLemmix menu (you may get a "Could not find logo.png" error - just ignore this and hit "OK")

9. Once you're at the main NeoLemmix menu with your levels loaded, hit F8. This will run the Cleanse Levels process. You'll know it's happening if the scroller lemmings stop moving. Once the process is complete, a dialog box will pop up to let you know it's completed, and if there were any errors (hopefully there aren't! See troubleshooting if you're having problems).

10. Go to the NeoLemmix 12.9.4 directory - there should new be a folder in there titled "Cleanse". Inside this folder will be a folder containing your levels in both .lvl and .nxlv format! You're done :lemcat:

11. (Optional) If you don't want to keep the .lvl copies, you can use this purpose-built DuplicateDeleter to find and delete any .lvl files that have a corresponding .nxlv file in the same folder - this can save some time if you have a lot of them (particularly if not all levels were converted successfully)! N.B. This program only moves the files to the recycle bin, so they can be recovered later if necessary.

13
NeoLemmix Main / NeoLemmix Experimental 12.13
« on: February 13, 2024, 10:17:53 PM »
This version of NeoLemmix is for testing this feature which is currently in progress.

It's based from the very latest version of NeoLemmix, so all features and physics are up to date. However, stability of any features not included in 12.12.5 cannot be guaranteed until the next proper release, so please only use this version for testing the relevant feature.

Feature overview:

:lemming: There are now 3 options for when all lemmings have been removed: Never Exit to Postview, Only Exit to Postview if Save Requirement Met, Always Exit to Postview
:lemming: Never Exit and Only Exit also include an additional option to Pause (Version 2) or Freeze (Version 3) gameplay when all lemmings have been removed (otherwise, gameplay will continue as normal)
:lemming: Always Exit is the current NL default behaviour
:lemming: A message is drawn to the minimap area to alert the player that the unplayable state has been reached:



:lemming: Pause Version disallows forwards frameskip once the unplayable state is reached (this prevents overshooting when using frameskips), but the game can be unpaused / fast-forwarded after the initial pause state has been achieved, allowing gameplay to continue into the unplayable state if the player deems it necessary. Note that this only applies when the Pause option is active
:lemming: Freeze Version freezes the game instead of pausing, so it's only possible to backskip or restart from there - the unplayable state is completely inaccessible. Again, this is only applicable when the Freeze option is active

Main points for testing:
  • Are the options sufficient and clear enough? (see Config menu / Interface tab)
  • Does the feature behave as expectated depending on which option is chosen?
  • Anything not behaving as expected: Does it pause when it shouldn't, or does it ever not pause when it should? Does it interact properly with skips past the frame on which the last lemming is removed (in both directions)?
  • Is the paused state sufficient for halting gameplay, or should something else happen? Do we need any further visual cues?
Feedback very welcome. Let me know if there's any improvements that can be made, or if it's good as it is by all means share that as well.

Enjoy!



N.B. Please use this topic to continue any discussion of this feature.

14
Site Discussion / SLX child board requests
« on: February 07, 2024, 08:45:07 PM »
Hi admins, please can I get a board in which to place all closed SLX-related topics? It'd be good to tidy up the main board a bit and help to keep focus on active topics.

15
Challenges / [SLX] Which levels can be solved using only the new skills?
« on: November 29, 2023, 03:57:50 PM »
Now that SuperLemmix has 5 engine-exclusive skills (Ballooner, Ladderer, Freezer, Spearer, Grenader) and the option to include 14 different skill types in a single level, I'd like to revisit Minim's "new-skills-only" challenge with SuperLemmix as the host engine.

There can be 2 different versions of the challenge:

Version 1) All 14 slots used

For this version of the challenge, all 14 slots can be filled with any skill type, with the following rules applied:

  • None of the skills can be the "Classic 8" from the original L1 game, or the Timebomber
  • All 5 SuperLemmix-exclusive skills must be present on the panel
  • The remaining 9 slots can be any combination of the 12 remaining skills

Version 2) Strictly SLX-exclusive skills only

Within each version, we then track the following results:

:lemming: Fewest-of-each-type to 100% the level - e.g. for this result, it's better to use 5 Laserers and 5 Grenaders rather than 10 Laserers. All lemmings must be saved. The result would then be "5 of each"
:lemming: Fewest types to 100% the level - e.g. for this result, it's better to use 10 Laserers rather than 5 Laserers and 5 Grenaders. All lemmings must be saved. The result would then be "1 type"
:lemming: Fewest-of-each-type to pass the level - e.g. for this result, it's better to use 5 Laserers and 5 Grenaders rather than 10 Laserers. Only the save requirement must be met, with fewest skills being preferred over most lems saved. The result would then be "5 of each, X saved"
:lemming: Fewest types to pass the level - e.g. for this result, it's better to use 10 Laserers rather than 5 Laserers and 5 Grenaders. Only the save requirement must be met, with fewest skill types being preferred over most lems saved. The result would then be "1 type, X saved"

We could shorthand the results as follows:

14_FOE_100 - 5

The above would be the 14 slots challenge version, Fewest-Of-Each, 100%, with the result being "5 of each"

SE_FT_SR - 3

The above would be the SuperLemmix-Exclusive-only challenge version, Fewest Types, Save Requirement met, with the result being "3 types"



Some questions before getting started:

1) Should we decide upon 14 skills to be used for the "14 slots" version of this challenge, or allow players to customise the panel throughout the challenge? Either way, it's probably a good idea to decide on 14, then I can use the skill-changing tool to automatically apply this to all of the challenge levels. From there, we can tweak individual levels wherever needed to get the optimum result.

2) Should this be broken into separate challenges for each of the categories, or is the proposed format clear enough to gather the required information?

3) Any other suggestions?



Get the latest version of SuperLemmix here to partake in this challenge.

Pages: [1] 2 3 ... 21