Menu

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.

Show posts Menu

Messages - Simon

#1
Lix Levels / Re: Chicago-Themed Terrain
October 20, 2026, 12:14:45 AM
Quote from: Simon on April 17, 2023, 11:58:34 PMMore feedback on the entire set to come, again with a deadline: Tuseday, April 25th

I'm over 3 years late, or really 6 years because Liebatron's first post is from November 2020.

I will not merge the Chicago tileset into the main Lix download in the upcoming years.

The Chicago set agrees with itself, and it has a lot of tiles/steel/idioms, but they don't mix well with the remainder of Lix. The lix get stuck in the fine details to the point where the tiles feel like they should be upscaled by 2x or 4x. But the set would lose a lot of character after the upscale. The ideas for traps, e.g., moving train is water, work in the Chicago set, but really need better support from the engine to shine. I'm not ready to implement that needed support. And the sheer number of steel tiles, terrain, ..., is required to make what you envision. but yet again, Lix's list-it-all steel browser is made for smaller amounts of steel. Levels want to be either all-Chicago, or no-Chicago. Mixing is hard. I believe that, for Lix as a project, it's more correct to reject the Chicago set than to merge it.

But because Chicago mixes well with only Chicago, it's still a lovely and consistent add-on. I don't want to erase it from anyone's memory. You have your fans in this thread, and the set is available for everyone here, and maybe we'll see more Chicago levels one day.

Liebatron, I must, in light of the decision not to merge Chicago into the main download, apologize for my early enthusiastic feedback. The early feedback came complete with easy-to-implement suggestions, and you followed through to improve it. This is the biggest sin that a maintainer can do to a contributor: Make you do extra work, and only then drop the news that the improved contribution won't be a good fit regardless. I didn't realize it in the first few months, and the set has found its fans here, that's what has made it so hard to say no outright for 6 years. The indecision has bugged me throughout this entire time.

Now there is closure.

It's a cute set and a labor of love. It's even, as you say, silly in a good way. Looking at the Chicago screenshots here still makes as happy as it has made me back in the day.

-- Simon
#2
Yeah, no need to upgrade. Anything from 2024, 2025, 2026 will be fine. It's even good if a few users play with older Lix. This way, I'll be able to see that I didn't break anything.

-- Simon
#3
Right, the level filename decompression.txt, but the replays start with decompressionmeth1- and should instead start with decompression-. It has 8 replays, many are practically identical. I'll toss all but 1 or 2 and rename the surviving ones to start with decompression-.

Pointing from within the replay is fine, they all point to decompression.txt. The mass replay verifier ignores the replay filename and looks only at the pointing. The replay file name is relevant for Rep4Lev, i.e., for the Load Replay button from the singleplayer browser.

Yesterday, I wrote a D script matches-pointer.d to find these misnamed replays in the collection. Only the 8 replays for Decompression Method had this issue. All other replays in the collection are fine.

More to reply these days.

-- Simon
#4
Renaming replays to include a judgment is good. There is no support in the replay format to mark this information, it's been a loose feature idea but I've never done anything toward it. Therefore we must resort to the filename, which is good anyway.

There is no precedence. We can make something up:
levelname-player-judgment-timestamp.txt
levelname-judgment-player-timestamp.txt
levelname-player-judgment.txt
levelname-judgment-player.txt

And the judgments might be strings over a-z0-9, e.g., intended, intended1, intended2, accepted, backroute, bug, ..., whatever proves useful. There is no tooling that looks for these strings yet.

Identical replays: Feel free to point them out. Back in the day, we tossed everything in and hoped that it become useful. It's still possible that future physics bugfixes will invalidate some replays but not others, and then levels will stay covered without extra work ... but that's not a strong argument. The levels with many replays tend to be easier levels that are quick to re-cover. And most levels with multiple replays will still have only one intended replay, which should pass (regardless of whether other replays pass) under this new system where we use replays to document intended routes. It makes sense to delete some dupes.

Failing replays: No need to point them out, I've found them with full replay verification. 22 replays fail in Lix 0.10.36, and 14 of the fails are in lemforum:

14 failing replays in lemforum
Daunting/cornerstone-Michael-2016-07-04-223017.txt
Hopeless/eyeoftheneedle-Michael-2017-11-30-022958.txt
Hopeless/fromtheotherside-geoo-2017-08-02-103750.txt
Hopeless/fromtheotherside-Michael-2018-04-29-162614.txt
Lovely/putyourlix-Michael-2016-06-27-144736.txt
Vicious/downamong-Michael-2018-04-14-170928.txt
Vicious/thelastlaugh-Michael-2016-07-05-120031.txt
Vicious/tinkertailorsoldier-mobius-2022-12-09-211843.txt
Vicious/tinkertailorsoldier-mobius-2023-01-16-194919.txt
Lovely/climbtofreedom-sekti.txt
Lovely/pipedream-Simon-2018-01-08-005723.txt
Vicious/fiveforfighting-geoo-2017-08-02-120536.txt
Vicious/theresa-Nepster-2017-08-09-131654.txt
Vicious/waitwhyisthereatree-geoo-2017-06-21-132852.txt

I'd say we delete them unless you pick some for explicit preservation. You can look at them to see if a replay documents an intended route found nowhere else, but we should re-cover that level then anyway.

Thanks for the new replays!

-- Simon
#5
Yes, this is an excellent undertaking. The original point of the collection was automated proof of solvability, and we submitted whatever passed the level, but it's equally important to collect the intended solutions.

I have these bugs left open from 2016:
#109 Rename replay directly in the replay browser
#102 Replay <-> level: run against arbitrary level

Do you still need support for rename-replay from the replay browser? Or do you use the show-replays-for-this-level dialog ("Rep4Lev") of the singleplayer browser instead? Improving rep4lev is harder than improving the replay browser, but I don't mind looking at what helps you with your archiving project.

-- Simon
#6
Lix Main / Re: Lix 0.10.36 released
October 11, 2026, 05:28:45 PM
Lix 0.10.36 released.

:lix-cool: Download for Windows 64-bit -- recommended
:lix: Download for Windows 32-bit -- fallback for ancient machines
:lix: Download for Linux 64-bit
:lix-evil: Source code
:8(): Changelog
:8:()[: Issue tracker

How to update
Quick and dirty: Extract over your old installation. Level moves will then result in duplicate levels that remain in your level tree.

Clean method: Extract to new directory, then copy these directories from old Lix into new Lix:
user/
replays/
...and any levels that you've built yourself or added manually.

  • NepsterLix: House of the Mad Trickster (Black Hole 20): Cover therectangular hole's entire ceiling with buzzsaws. Climbers will now die in this hole. That makes it more honest, the deadly-looking nook is indeed deadly now.
  • NepsterLix: Write the unenforced time limit in ticks, not seconds, into the level titles of the 3 Outtake levels that had time limits: It's Hero Time Again, Just a Quickie, Time Out. Reason: Lix counts in ticks only and doesn't convert 15 ticks to 1 second anywhere.
  • Fix #502 and #304: Detect hotkey duplication across tabs in the options menu between functions that can be available simultaneously. E.g., if you assign the same key to hold-to-scroll (on the general controls tab) and to a game feature (on the game hotkeys tab), the duplication gets highlit in red. You can still duplicate keys as much as you like; it's merely shown.
  • Fix #501: When you drag a selection frame in the editor, the info bar at the bottom will tell you the size of the dragged frame.
  • Fix #500: The dialog that loads replays for the current level now tells you where it looks for replays, typically in ./replays/, and what it lists, filenames starting with the level basename without extension. Before, the dialog showed only a list of files, possibly empty, without explantion.



-- Simon
#7
Hmm, in that case, your next prompt should be: Please run over all the singleplayer levels from the upstream Lix download, look for levels that match the pattern n-each-of-m-different-skills for n > 0, m > 7, remove from those files all skills that Walkers doesn't support, and print me the list of these so-modified levels so I can manually test them.

From that point, you'll have to play some of it yourself, but I'm sure you can do it. :-) We're happy to help with concrete suggestions if you get stuck. Examples:

  • Any Way You Want will certainly pass, and it's the iconic opener that would be nice to preserve.
  • Solar Eclipse will certainly fail even though it's easy with the full Lix skillset.
  • Put Your Lix on Ice is solvable with 5 climbers, 5 miners, but it will become harder than Lovely (more timing, no jumpers to help) and should rank higher or stay out.
  • Adventure Playground should pass.
  • The Hopeless n-of-everything will likely all fail after cutting skills. Labyrinth of Despair may be open-ended, but it's hard, it needs the many skills and it needs the flexibility.

Ah, and a curiosity from looking more into your linked list of levels: Was it really a prune according to skills only, or did you prune for other criteria, too? I'm wondering because Little Miner Puzzle (lemforum/Lovely) made it and Advent Calendar (simon/xmas20218) didn't, and both levels' skillset is exactly 5 miners and nothing else. Ah, traps aren't supported in Walkers, that explains it.

-- Simon
#8
Makes me wonder how you're going to load from file a previously-rotated forcefield.

Load it rotated (as it was saved), and you can then rotate the tile to default rotation via UI, but then not re-rotate via UI? That would bring small extra concerns like how an undo stack must support undoing the rotate-to-normal, which is a re-rotation, even if manual re-rotation is forbidden.

Load it unrotated (enforce the default rotation of the tile-from-tileset on the tile-in-map)? Then load-then-save will gain a new side effect, it will now normalize according to a new rule. But level maintainers rely on load-then-save for some other normalization anyway.

Load it rotated (as it was saved) and then forbid all rotation: That would be contrary to what the bugfix intends.

NL 12.14's format is going to support these rotations whether we like it or not. Ah, this is RetroLemmini, not NL, and you have the luxury of purging it from the future format, too. Then it's mainly an issue for how you'll load old levels.

-- Simon
#9
Interesting project!

The win rate over draw-1 Klondike should rise by packing on any different suit. It's hard to say by how much it will rise.

Draw-1 Klondike is essentially Klondike with a bouquet instead of a stock: All cards in the stock are available at all times. Do you deduct score for flipping the wastepile to make a new stock? Would it make sense to display all cards in the stock, at the cost of making it look non-traditional?

Are you considering to offer unlimited undo?

At the very right of the most recent screenshot, the suit of the jack of diamonds is hard to tell apart from the 10 of clubs. It looks like a same-suit packing. I think that the blue and the green look too similar. The jack has no pointy diamonds showing to compensate.

Are you considering different games (not only different deals, but games with different rules)? It's probably too early to decide. The point of the project is to see how Klondike behaves with 4-color packing.

Happy to try Russian Bank (a.k.a. Zankpatience, a 2-player competitive Canfield-like) under these 4-color rules with you in February 2027. Again, hard to say if it becomes too easy.

-- Simon
#10
Hi Jacob, thanks for showing this!

Walkers fills a niche. I've had a few bug reports that requested support for phones or tablets #485 #225, and I've never gotten around to any of it.

I hard-wired the mouse controls in a few places. Good job ripping them out.

Single-player Lix relies on two-handed play (second hand on keyboard) to remove the execution difficulty from harder levels. But the keyboard is unavailable on phones. Did you select easier levels in light of this? Or did you take everything that confined itself to the 8 skills?

From your screenshots and videos, the skill-assignment UI looks like it makes lot of sense on the confined screen. I cannot try the UI myself because I don't have these kinds of phones.

It's interesting that you can sell existing levels instead of your main contribution, the UI for phones. It makes sense for your closed system; the user can't separate the levels from the UI and really buys the levels with the UI. I've always told contributors how CC0 means that somebody might eventually come along, take everything and sell it. You're the first in those 15-20 years to sell it, and your UI makes a reasonable case.

You've understood the licensing situation: Music and font aren't CC0, everything else is CC0. Explicit attribution isn't required by CC0 but you're crediting me and the forums nonetheless. Thanks!

I assume the name change (Lix to Walkers) is to show unaffiliation in the most direct way.

Simon
#11
Lix Main / Re: Lix for kaywhyn
October 02, 2026, 03:24:29 PM
Quote from: kaywhyn on September 15, 2026, 12:17:14 PMprefer clicking the skills with the mouse rather than using the hotkeys
Lix multiplayer
I will have my skills hotkeys ready before then

Icho clicks the skills with the mouse and plays a strong game nonetheless.

My advice for a first session is to internalize ~4 hotkeys and use those consistently. I'd pick builder, miner, jumper, walker. These are common and urgent. Basher would be next. (Blocker is urgent but rarely available.)

Directional select (force-left, force-right) has two default bindings: Arrow keys and querty S and F. Prefer S and F over the isolated arrow keys. Then everything will be reachable from the left hand's home position.

-- Simon
#12
Site Discussion / Where should the Random Level Topic sit?
September 27, 2026, 01:16:03 AM
Hi,

namida wondered: Should the Random Level Sharing Topic continue to sit in In Development, or should it move to NeoLemmix Levels?

Rules for the Level Packs board: namida recommends one topic per user for loose levels (= levels that aren't due for a concrete pack). These loose-level topics go into NeoLemmix Levels, not into In Development. In that light, it makes sense that Random Levels is also on NeoLemmix Levels, not on In Development. It's essentially the union of the loose-levels topics from users who don't keep a loose-levels topic.

That would mean that there 4 ways to release levels:

  • Levels: Random levels by random authors.
  • Levels: Xyz's levels.
  • Levels: OhYesNoLems by Xyz.
  • In Development: OhYesNoLems WIP by Xyz.

Points 1 and 2 are now consistent, that's nice. But makes In Development feel strange: You post your levels on Levels, unless you believe they'll go into a level pack, then you don't post your levels in Levels. :o ... and instead in In Development.

Maybe there should be three boards: Loose Levels (for the Random topic and the per-author loose levels), Packs In Development, and Released Packs?

  • Loose Levels: Random levels by random authors.
  • Loose Levels: Xyz's levels.
  • Packs In Development: OhYesNoLems WIP by Xyz.
  • Released Packs: OhYesNoLems by Xyz.

Onboarding new users is clear either way. There is a recommended way to release however much you have.

-- Simon
#13
In Development / Re: X-tralems levels
September 27, 2026, 12:18:36 AM
Quote from: lemmkeev20 on September 26, 2026, 11:25:33 PMlevels for X-tralems ok?

All right, you're going to post your levels into here as they come out. That's good.

Quote from: Silken Healer on September 26, 2026, 11:51:32 PMde-facto "lemmkeev20's one-off levels" thread
I highly doubt your going to do a complete 180°

I'll give lemmkeev20 the benefit of the doubt here, and move/reinstantiate all the random levels into here.

-- Simon
#14
You're welcome to join! Play as many games as you like, and if it's not the whole session, that's no problem.

-- Simon
#15
General Discussion / Re: Simon blogs
September 24, 2026, 01:55:52 AM
Cryptic Puzzles

On September 5th, geoo and I participated in PaderPuzzle 2026. This was an outdoor puzzle hunt: You got 9 hours to travel the city of Paderborn in teams of 1-5 players, find pre-placed puzzle sheets with cryptic information, and enter solution phrases for each in an online system.

After solving a puzzle, you scored 4 points and learned the whereabouts of the next sheet in the city. You had the option to phone for hints (at cost of 1 point each) or skip (scoring 0 but learning the location of the next puzzle).

Example puzzle and solution
One puzzle was a poem of Japanese-sounding nonsense words, spelled in latin letters.

The solution: Transliterate each line into katakana; the standard katankana table a-ka-sa-ta-na-ha-..., i-ki-shi-chi-ni-hi-... was provided by the organizers to all teams in a general knowledge booklet. Color the location of these katakana in the standard table. See what the colored picture (pixel art) represents. Each picture (one picture per poem line) formed a kyrillic letter; transliterate the kyrillic back to German for the solution.

Example puzzle and solution
One puzzle was a sequence of colorful men (silhouettes of butlers).

The solution: Look around where you are the city. 50 meters from you, there was a store called BUTLER'S with its name printed in differently-colored letters. Replace each man on the sheet with the correspondingly-colored letter from the store logo. Easy once you see it, right?

But made the mistake of attacking this puzzle sitting a quiet corner for 20 minutes, websearching, thinking about color hex codes, ..., and nothing worked. Other teams sat down in better spots and solved it in 3 minutes.

Example puzzle and solution
One puzzle was a cryptic crossword. Each solution was either an animal or a plant. I got many clues right on this one:

Q: An einem zugefrorenen See stehend, gefragt wo er denn hier stehe, antwortete Goethe ganz poetisch: ...
A: Ameise ("am Eise")

Q: Reptil, das vor Gericht niemals lügen würde: ...
A: Eidechse

Q: Wenn ich mich nicht entscheiden kann, in welchem Topf ich mein Erdnusscurry erhitze, dann stehe ich vor einer ...
A: Pottwal

geoo asked me how this was even possible for me, given that I like to rant against ambiguous instructions and ill-defined gameplay!

geoo and I named the team Suicidal Rodents, in honor of the team name from 12 years ago that the Lemmings Forums team used for online puzzle competitions. We accepted one external student who didn't have a team yet, and ran as a team of 3.

PaderPuzzle 2026 statistics, we (Suicidal Rodents) placed 12th out of 32 teams. We scored 38 points. We bought a hint for puzzle 9; you can tell because we scored 3 points there instead of the usual 4 points. We solved bonus puzzle Z1 but failed Z2.

Several teams got the full score of 42 points. Some contestants were regular solvers and finished way earlier than the bunch. geoo and I were happy to do well as nonregulars, still, and I got to spend a day outside, away from the computer.

-- Simon