diff options
author | Lucki | 2022-10-22 12:51:51 +0200 |
---|---|---|
committer | Lucki | 2022-10-22 12:51:51 +0200 |
commit | 4154e4f585fc54fe4b9f3c2eca0abcf3340c4ce8 (patch) | |
tree | fbbe2e04dfbb27b98ec12453e7f61df08eff21b6 | |
parent | 4227f60300fb69e20676fa715da5a7a3aa2ed70d (diff) | |
download | aur-4154e4f585fc54fe4b9f3c2eca0abcf3340c4ce8.tar.gz |
upgpkg: lix 0.10.0-1
upstream release
-rw-r--r-- | .CHANGELOG | 7532 | ||||
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | PKGBUILD | 4 |
3 files changed, 3809 insertions, 3733 deletions
diff --git a/.CHANGELOG b/.CHANGELOG index 5f4bcba55719..ab20182da5b0 100644 --- a/.CHANGELOG +++ b/.CHANGELOG @@ -1,3728 +1,3804 @@ -Version history
-===============
-
-0.9.48
-------
-
-2022-10-15
-
-Don't cap level search results at 18, but show all results. Downside: Now, I
-expect the search to be slow when you enter the first one-two letters. We'll
-see what is worse and can still improve the search in the future.
-
-Always return to lobby after playing multiplayer with a single tribe, even
-when that tribe hasn't fulfilled the hidden save requirement from
-singleplayer. Lix has never properly supported 1-tribe multiplayer, but Lix
-has never explicitly disallowed it either.
-
-The connection picker in the networking menu will now connect when you press
-the generic Okay hotkey, in addition to the networking menu hotkey.
-
-Fixed option dialog's help text for the username option: All translations
-explained ./data/user/yourname.txt, which is out of use since 2017. Now,
-all translations explain ./user/options.sdl, the correct save file.
-
-Added FreeDesktop resources in ./data/desktop/ by Matthias Mailänder. Thanks!
-I don't know yet where to put such resources (that aren't needed directly by
-Lix while Lix is running) in the future; ./data/ is catch-all for now.
-
-
-0.9.47
-------
-
-2022-08-11
-
-Add Swedish translation of the Lix user interface by Sanchez. Thanks!
-
-Fix #387: Update skill panel on tweak. Now, after shifting a skill assignment
-forward or backward by a single frame in the replay tweaker, the skill panel
-updates all skill buttons' counts accordingly. This matters when some skills
-assignments have become illegal in the now-edited replay.
-
-
-
-0.9.46
-------
-
-2022-06-25
-
-Added geoo's new multiplayer maps, including the two asymmetric maps
-Uphill Battle and Ivory Tower. Updated some of geoo's maps:
-Fixed the drop straight into exit pit in Rescue Ranger Trolls.
-Added block to default version of Ghetto Party. Minor other changes.
-
-Added Kingshadow's new multiplayer levels. Updated Kingshadow's levels, e.g.,
-added a missing trap to Straight & Curved 4p.
-
-Prevent infinite fallers at the sides of Flopsy's Rescue Plan 5p by
-narrowing the map horizontally to the existing terrain.
-
-Renamed my old 2p map Rescue Rangers to Fry-Day to avoid a name collision with
-the popular maps Rescue Ranger Trolls and Rescue Rangers Double Team.
-
-Fix #434: Always topology-wrap newly inserted pieces in the editor to avoid
-running into some strict assertions in a debug build. There should have been
-no bug here in release builds. Improved some assertion texts.
-
-
-
-0.9.45
-------
-
-2022-05-21
-
-Added many multiplayer levels by Flopsy, including Krypton Factor race.
-
-Added multiplayer levels by Kingshadow: Straight & Curved,
-Marble Puzzle League, Spiral Spyfall, The Ascending Lix Scenario,
-Tricky Breakthrough.
-
-Added tags ($TAG lines in levels) to several maps by Flopsy.
-
-Fix lagging client in a 10-hour netgame. This was an esoteric bug that never
-surfaced in normal usage. When the same networking game (not netplay session
-or server run, but really individual game; what happens after you click
-"ready" in the lobby) ran for over 10 hours, the client would stop
-updating at the normal speed of 15 physics updates per second, and instead run
-at 10 frames per second.
-
-Make Lix compile with the newly released DMD 2.100.0.
-
-Mention FreeGameDev IRC channel #lix in the main readme. QuakeNet #lix
-is still the development channel. I still recommend QuakeNet #lix to find
-players, with FreeGameDev #lix as an alternative.
-
-
-
-0.9.44
-------
-
-2022-03-03
-
-Fix a memory-corrupting bug when sending chat messages.
-I introduced this bug in 0.9.43.
-
-Fix #432: Don't resave watched multiplayer replays. The bug was: After the
-replay, we entered the end-of-singleplayer dialog, and this dialog always
-re-saved the watched replay as a new multiplayer replay. Now, we directly
-return to the replay browser. The end-of-singleplayer dialog doesn't appear
-and doesn't save a duplicate.
-
-
-
-0.9.43
-------
-
-2022-03-29
-
-Fix server-side permutation bug: In 0.9.42, the server re-rolled the
-permutation of starting points for every player. This desynched the maps --
-unless you were only playing 2-player on perfectly symmetrical maps and never
-used directional force.
-
-Don't send up to 300 nullbytes on short chat packets, send only the necessary
-bytes. Keep max chat length at 300 UTF-8 code units.
-
-In the lobby, sort the list of players. First criterion: Players sort higher
-than observers. Second criterion: Red sorts higher than orange, yellow, ...
-Third criterion: Within each color, sort by player name. Ready/unready doesn't
-affect sorting. It's easier now to see which/how many colors are in use, but
-I'll leave open github issue #407: Color buttons in lobby, show current usage.
-
-Disable the expensive level-drawing unittest that also didn't clean up
-its file in ./export/.
-
-macOS: Rely on pkg-config according to Allegro's documentation here:
-https://github.com/liballeg/allegro5/blob/master/README_pkgconfig.txt
-Before, on macOS ARM64, ld didn't find the Allegro libs even with pkg-confic
-installed; see github issue #430.
-
-Remove obsolete build documentation ./doc/build/allegro5.txt and
-cross-reference more clearly between other files in ./doc/build/.
-
-
-
-0.9.42
-------
-
-2022-02-25
-
-Don't focus the IP address entry field in the lobby when you select "connect
-to somebody else". The focusing led to a bug that is now fixed: The field
-would even be unhidden and focused whenever the lobby window reappeared after
-a game, when you were already connected and in a room.
-
-Alleviated enet versioning mismatch: derelict-enet offers D bindings only for
-enet 1.3.15, but the binaries of enet 1.3.16 or the current enet 1.3.17 have
-differently-sized struct ENetPeer. Now, the Lix server computes the struct
-size at runtime, allowing to run with all enet binaries >= 1.3.13.
-
-Fixed a theoretically possible, although unlikely, memory leak in networking.
-
-Fixed a linker warning about max!(int, int). Now, Lix's code itself generates
-zero warnings again.
-
-Refactored the server-side networking code. Rooms carry their own logic. This
-will help in the future to support version restrictions per room.
-
-Fixed DMD 64-bit build on all operating systems by avoiding obscure usercode
-that crashes DMD.
-
-Linux build notes: Added workaround for LDC running out of stack space. You
-can raise the stack size in the current shell with: ulimit -s 16384
-
-Windows 32-bit build notes: Added DLL download for LDC-compatible 32-bit
-libraries.
-
-Removed note from April 2020 in the readme about compilers before LDC 1.21;
-compilers that old aren't prevalent anymore.
-
-
-
-0.9.41
-------
-
-2022-01-06
-
-Support tags in level files to help organize the multiplayer levels. Levels
-can contain zero or more tags, one per line. Edit tags with a text editor; we
-can work towards better editing support in Lix itself in the future. Example:
-$TAG mytag
-
-The editor loads and saves tags, but doesn't yet display them anywhere and
-doesn't offer to edit them. The level browsers don't print tags anywhere
-either yet.
-
-The level search (in the singleplayer or multiplayer browser) will find
-tags, but you have to enter the exact tag completely. Half-words that
-appear inside tags do not find that tag. (I'm not yet sure if this behavior
-is best; we can change it.)
-
-
-
-0.9.40
-------
-
-2021-12-13
-
-Added configurable hotkeys to play next levels from the end-of-singleplayer
-screen. Default is F1 to replay the same level, Space to play the next level,
-F to play the next unsolved level. There is no default hotkey to save the
-replay manually; you can configure it.
-
-Hotkey reminders on buttons are printed in slightly darker text. They're
-still brighter than the button itself, but darker than the main button text.
-
-Fix #417: The editor shows all teams per gadget. Example: 4 players A, B, C, D
-and the map has 2 exits. Before 0.9.40, the editor printed on the exits: A, B.
-Now, the editor print on the exits the outcome of distributing the 4 players
-round-robin to the exits: AC, BD.
-
-Clarify tile group names in the documentation doc/formats/level.txt: Groups
-can have any name, not necessarily only a number. Since I don't have support
-in the program for copying tile groups between levels, you can at least rename
-the groups in one level, e.g, by search-and-replace, then copy-paste them into
-the second level, and have no name clashes.
-
-Fixed exits order in Tunnel of Love 6p. There were 7 exits in a 6-player map,
-leading to apparent removal of a necessary exit in play. Now it has 6 exits.
-
-Added new multiplayer maps by Flopsy: The Lix and the Saboteurs 4p, 6p, 8p.
-
-Clarify documentation on tile groups in doc/format/level.txt: Tile groups
-can have any names. When you copy tile groups by hand between levels, you
-can first rename them with text replacement.
-
-Allow warnings when building Lix. This circumvents a warning in Phobos that
-would otherwise abort the build: Duplicate symbol for max!(int, int).max,
-_D3std9algorithm10comparison__T3maxTiTiZQjFNaNbNiNfiiZi.
-
-
-
-0.9.39
-------
-
-2021-10-12
-
-Added a dedicated end-of-singleplayer screen to show stats of the finished
-attempt, to offer the immediate next level, and to offer the next unsolved
-level in case the player has already solved the immediate next level.
-
-Darkened the labels "by" and "Goal:" in front of level nameplates in
-the browser and in the end-of-level screen. They're now darker than the
-normal text color. Title, author and goal stand out better in their normal
-text color now.
-
-Re-added 3 levels -- Fill the Floor, Interval Training, Chaos Theory --
-to single/clam/Outtakes. Fill the Floor and Interval Training originally
-needed variable spawn intervals during play; now, they employ floaters and
-runners at fixed spawn intervals. Chaos Theory originally needed the nuke
-to solve; now, it employs manually assigned exploders to fling.
-
-Updated the Lix source code to comply with the future meaning of the "in"
-keyword. Updated Lix for package optional 1.3.0 instead of 0.6.3.
-
-
-
-0.9.38
-------
-
-2021-06-27
-
-Windowed mode at 1280x720 is now the default on running Lix for the very first
-time. Before, the default was software fullscreen a.k.a. fullscreen window.
-
-Smaller widescreen resolutions such at 1280x720 that would barely fail to pick
-2x for the skill panel icons (instead of the tiny 1x) will get slightly higher
-panel to accomodate the better-looking 2x skill icons.
-
-Adjusted text vertical offset to vertically center text on buttons better at
-1280x720. 1280x800 is still okay, text is now slightly too high here. The text
-positioning is already full of hacks and compromises, anything better either
-needs more hacks or a clean do-over. I feel like a 90's website designer.
-
-The main menu preserves the background's aspect ratio. To fill a screen that
-is not 4:3, it crops the background's sides.
-
-Revenge of the Giant Crab (2p): Added decoration, walkers 10->30, overtime
-30->90 seconds.
-
-Fix #424: Always show the level title in the lobby under the graphical preview,
-even when we return from a netgame.
-
-Fix #423: De-duplicate the multiplayer level tree, as reported by Dullstar.
-I had extra copies of Along the Fabrics of Your Clothing in the 8p directory.
-
-Updated Allegro DLLs to Allegro 5.2.7.1. You can check what Lix uses at
-runtime with Lix's command-line argument: --allgero-version
-
-I build the 32-bit Windows release with LDC, not with DMD. LDC generates
-faster-running machine code, exactly what we want for a release version. Tell
-me in case you run into any problems. (64-bit Windows release has always been
-built with LDC and it still is.)
-
-During compilation, Lix prints target architecture, OS, and compiler.
-
-Fix deprecations for DMD 2.097.0: In the source code, the "body" keyword is
-finally deprecated. Converted the entire codebase to the "do" keyword in front
-of function bodies. Added "static import std.stdio;" to access std.stdio.File
-in Lix's file.filename.base.
-
-Documentation: src/icon/readme.txt has CRLF line endings, to be readable in
-Windows Notepad. (Documentation should have CRLF endings, code should have LF
-endings.) Removed note in the 32-bit DMD Windows build notes about NuGet libs,
-DMD 32-bit doesn't play well with them.
-
-The build documentation points to new archives (lix-dlls-libs-dmd32.zip,
-lix-dlls-libs-ldc32.zip, lix-dlls-libs-win64.zip) because the .lib files
-can be incompatible between compilers.
-
-
-
-0.9.37
-------
-
-2021-05-17
-
-Added new maps from the multiplayer level contest. Thanks,
-Dominator_101, Dullstar, Flopsy, geoo, IchoTolot, WillLem!
-Includes Dominator_101's Rescue Rangers Double Team.
-
-Fixed flickering mouse cursor in the dialog that aborts a networking game.
-Before, when you hovered over a lix in the background of the dialog, the
-cursor would osciallte between open and closed. Now, the cursor stays closed
-because you can't assign to lix during the dialog.
-
-Partly address #234: When you resize the map in the editor, the editor will
-zoom out as far as it can to show you the entire map. It's still disorienting
-to resize maps with large empty areas.
-
-Fix: When you verified a directory containing 0 replays in the GUI verifier,
-the GUI verifier didn't print the line that you can now click to exit. Now
-it prints that line.
-
-In the main menu, below the version number, print name of operating system and
-32/64-bit for which the running version is built.
-
-The debugging build's user options defaults show the phyus/FPS. This only
-matters when you run a debugging build without a user option file
-user/options.sdl. The normal release build defaults to not showing phyus/FPS
-until you enable it in the options menu.
-
-In dub.json, removed obsolete architecture restriction for Windows builds
-with LDC.
-
-The Windows 64-bit build notes point to LDC's multilib release instead of to
-the pure 64-bit release. You can use LDC's installer or LDC's 7z download. The
-main difference is that LDC's lib/ dir is now called lib64/. Updated
-http://www.lixgame.com/dow/lix-dlls-libs-win64.zip with the new directory name
-lib64/ instead of lib/.
-
-Documented the level format in doc/formats/level.txt. Documented in the
-Windows build notes doc/build/win*.txt where to get Allegro binaries from
-NuGet.
-
-
-
-0.9.36
-------
-
-2021-02-24
-
-Add a whopping 66 multiplayer maps by Flopsy, including Perfect Situation.
-
-Fix #413: The new-level button in the editor will now ask for data loss
-before clearing the map and clearing the undo buffer. You can click Save,
-Discard, or Cancel.
-
-Reword the grid tooltip in the editor to clarify that it will affect future
-moves; it will have no immediate effect on the current selection.
-Before: "Grid 2: Rounds tiles' coordinates to multiples of 2."
-Now: "Grid 2: Tiles will move in steps of 2 pixels."
-Thanks to WillLem for feedback and wording.
-
-Support a hidden option (not in the options menu) that allows you to suppress
-the editor's offset of copypasted tiles; this is (16,16) by default.
-(Hidden options are hacks; for the long term, I need to visualize the copying
-in place.) For now, to suppress the offset, put in your user/options.sdl:
-editorCopiedTilesOffset 0
-
-Mouse speed on Linux defaults to 10, not 20. This produces better results
-on my machine when (fast movement frees mouse) is off, the default on Linux.
-I haven't examined the speed on other systems yet.
-
-Update the build docs in doc/build/ about minimum compiler versions.
-
-In the doc/formats/ directory, document replay pointing, terrain lines in
-levels, groups in levels.
-
-
-
-0.9.35
-------
-
-2020-12-24
-
-Undo/redo feature: The editor allows full undo and redo. Everything that is
-visible in the editor's level display is undoable: Tile moves, z-reorderings,
-additions, deletions, copying, rotations, mirroring, darkening, and changing
-the level's height, width, wrappings, and background color. Pressing the
-button to create a new level clears the undo history. Changing the level's
-name, lix, save requirement, player count, or skillset isn't undoable, but
-doesn't clear the undo history either; you can still undo earlier things.
-This undo/redo feature has been in development for 7 months.
-
-Fix #406: The camera rounds correctly to determine the mouse coordinates
-in the level. Before, with deep zoom, the mouse seemed to select things
-1 pixel too far right and 1 pixel too far down.
-
-Fix #405: The editor reinitializes its camera when the level's torus wrapping
-changes. This prevents graphical leftovers.
-
-Fixed compilation errors that appeared with DMD 2.094.2.
-
-Added build notes for a 64-bit Windows build with DMD. I encourage to use LDC
-instead of DMD for release builds, but it's good to have more options.
-
-
-
-0.9.34
-------
-
-2020-10-11
-
-lemforum: Backroute fixes for 6 levels, mainly due to Wibble's backroutes:
-Bipolar Maniac, initial lix 10->11, floaters 5->6.
-Las Ranas Hermanas, raise frogs.
-Triangle Inequality, eliminiate trivializing backroute.
-One Lix Showdown, likely functional but slightly unelegant fix.
-Some Like to Run, faster spawn interval, needs checking.
-Skulls, Sludge and Steel - possible fix, needs checking.
-(No fixes yet for Duality and Dream the impossible Dream.)
-
-Fix #404: The 64-bit Windows enet.dll crashed on hosting a networking game.
-Now, I ship a new 64-bit enet.dll, version 1.3.12, that fixes the crash
-on Windows, even though it still crashes in Wine.
-
-Support 32-bit Windows again: I publish 32-bit Windows binaries in the github
-releases and added linker flags for the 32-bit Windows DMD build in dub.json.
-
-Updated D source libraries in dub.json: derelict-enet 4.1.0 -> 4.2.0,
-taggedalgebraic 0.11.12 -> 0.11.18. This should have no visible effects.
-
-Credit minim in doc/thanks.txt for upscaling the GUI icons to 150%, 200%, 300%
-of the C++ Lix icons for 640x480 = 100%. minim worked on these icons in 2016.
-
-Remove doc/oldwish.txt, it has become outdated. The text is preserved at:
-https://www.lemmingsforums.net/index.php?topic=5132.0
-Let's file issues on github instead.
-
-
-
-0.9.33
-------
-
-2020-08-09
-
-Fix #402: With more than 18 assignments, the tweaker doesn't mispaint the
-line for current physics update over the tape recorder buttons anymore.
-
-Fix #401: The tweaker erases the lines properly when two assignments change
-order from tweaking. This fixes a mispainting of assignment lines.
-
-Fix #385: Before, with 18 or more assignments, the completely filled tweaker
-always hid the assignments that came last in the replay. Now, the tweaker
-hides assignments that are far away from the current physics update. Now, to
-view early assignments, rewind the game. To see late assignments, forward the
-game.
-
-
-
-0.9.32
-------
-
-2020-08-01
-
-Distribution: Lix has an openSUSE package for easy installation on openSUSE
-Linux, thanks to Martin H.! This is our third Linux packaging after Debian and
-Arch. Updated Lix's readme and documentation.
-
-Added Raymanni's crab trap at images/raymanni/crab.T.txt. There is an example
-level, Crab Nightmare, in levels/misc/simon/crabnightmare.txt.
-
-Added Thirteen Little Skills (version 2), a level contest entry by Proxima.
-
-Every Lix for Herself (lemforum Lovely): Quicken the spawn interval, to
-make it nicer to assign floaters to lix from the leftmost hatch.
-
-Multiplayer: Pressing twice the end-game key (Esc by default) doesn't
-exit the match, but rather opens and cancels the exit-match dialog.
-This avoids accidental exiting. To exit the match via keyboard,
-press Esc, then the key to delete files/lose data.
-
-Replay tweaker: Add an extra line for the currently-shown physics update.
-
-Remove the unnecessary translatable string optionShowButtonHotkeys. Button
-hotkeys are always shown, there is no option to disable that; this option was
-removed in Lix 0.9.30. This removes the leftover language field, so that
-data/language/*.txt doesn't warn on loading a language.
-
-Code: Fix deprecations according to DMD 2.093: Annotate ref-returning
-functions with return
-
-
-
-0.9.31
-------
-
-2020-04-23
-
-Compiling yourself: On Windows, Lix requires LDC 1.21.0, LDC or newer to
-compile out of the box. For LDC 1.20.1 or older, in Lix's dub.json file, you
-must first change all appearances of "-entry:wmainCRTStartup"
-with "-entry:mainCRTStartup".
-See doc/build/win64.txt, section "Old LDC versions" for details.
-
-Compiling yourself: Increased version of dependency sdlang-d: 0.10.4 -> 0.10.6,
-so that Lix still compiles with older versions of DMD, with the current stable
-DMD 2.091.0, and with even newer versions.
-
-Fix #394: The editor now sorts tilesets alphabetically by the shown directory,
-which is its second-level-nested directory in images/.
-Old order: forest/, occult/, abstract/, construction/, ..., because forest and
-occult were in images/amanda/ and abstract, construction were in images/geoo/.
-New order: abstract/, beach/, bricks/, carnival/, construction/, ..., forest/,
-..., occult/, ..., irrespective of the unshown author's name.
-
-Fixed a backroute in Ifo Island. The building at the bottom takes longer now.
-
-
-
-0.9.30
-------
-
-2019-12-28
-
-Fix #339: Imploder animation: Now, purple stars and vortexes circle around the
-center, then get sucked into the center. The old animation was too slow
-and subtle.
-
-Fix #388: Oblivion sound was too noisy and high-pitched. Replaced this
-sound effect with meow-like voice acting that is not shrill.
-
-lemforum: ccexplore fixed a backroute in Brickout.
-
-Always print hotkeys on buttons' lower-right corner. Removed user option that
-toggled whether hotkeys would be printed on buttons.
-
-Code: Remove body encounters from physics implementation; these happened at
-(foot - 4), (foot - 8), (foot - 12). Always check foot encounters instead.
-Before, only fire hazards checked for body encounters. Draw larger trigger
-area (in the editor) for fire to compensate. No changes to file formats. No
-changes to physics.
-
-Multiplayer maps: Added Down with Frogs by Flopsy.
-Added remake of Humps (2-player map from 2010) using Lix's earth terrain.
-Removed endless falls at the side of Honeypots.
-
-
-
-0.9.29
-------
-
-2019-07-18
-
-Observers in a networking game begin zoomed out; they see the entire map
-without any extra input.
-
-In multiplayer, there are no more black boxes on the score graph after a nuke.
-The black boxes obscured the bars of low-scoring players. The black boxes were
-a hack solution before we had the nice score board when you mouse over the
-score graph. Now, to see who nuked, mouse over the score graph.
-
-Partially fix #385: The replay tweaker displays only the first 18 plies
-(= assignments or nukes) instead of painting the 19th, 20th, ... ply over the
-remainder of the panel. In the long run, the tweaker needs a scrollbar.
-
-The tweaker explains itself with short text while it has no plies to show yet.
-This is better than presenting the tweaker as a completely blank GUI widget.
-
-Fix #327: After you save a replay manually from the replay browser, the browser
-reloads the directory and immediately shows the newly saved file.
-
-Fix: The splat ruler draws properly again when the mouse is on the map (i.e.,
-off the panel). 0.9.28 had a bug where the ruler would only draw while the
-mouse was on the panel instead of on the land.
-
-Fix: In multiplayer battles, you can zoom again, even though there is no
-GUI button to zoom. By default, zoom is bound to the mouse wheel.
-
-Fix #317: In a deeply nested directory hierarchy, the browsers' breadcrumb
-navigation condenses some higher-level directories into a single button.
-The top-level directory keeps its exclusive button at the very left.
-
-Removed a default keybinding duplication: Highlight goals and splat ruler were
-both bound to Tab. Now, only the splat ruler is bound to Tab, highlight goals
-has no default hotkey.
-
-
-
-0.9.28
-------
-
-2019-07-07
-
-Replay tweaker: A new feature for singleplayer puzzle solving. To open the
-replay tweaker, click the filmstrip button in the panel. The tweaker allows
-you to move and delete assignments deep in the replay without erasing
-any other assignments. The tweaker is not perfect yet: I'm sure we'll find
-many ways to improve it.
-
-Added 22 singleplayer levels from various level design contests. They are in
-levels/single/misc/contests/. All levels are proven solvable. Some proofs may
-be backroutes. For Key to the Sacred Kingdom, I chose its version 9, the
-miniature, but extended it with decoration from its big version 7. Adapted
-Long Division to 0.9 physics, it's fairer now and less nasty.
-
-Fix #364: If the enet DLL is missing, the networking lobby prints an error
-message to its console. Before, the game would crash from an uncaught
-exception.
-
-Code: Fix deprecations for dmd 2.087.0: Don't initialize immutable variables
-in thread-local static this(), instead initialize them in shared static this().
-Lix should now compile warning-free.
-
-
-
-0.9.27
-------
-
-2019-05-20
-
-Fixed a backroute in The Bottomless Closet, a miniature by geoo.
-
-Fix #379: The editor avoids cloning tiles outside of the map. Usually, the
-editor moves freshly-cloned tiles down-right by (16, 16). Sometimes, this
-would move tiles out of the map. New behavior: If a cloned tile would move out
-of the map, or even very close to the edge (= undercutting a safety margin of
-16 pixels), all cloned tiles are moved up-left by (16, 16) instead. If neither
-offset keeps all tiles on the map, we move down-right by (16, 16) and accept
-that some are outside. In torus directions, tiles are always on the map within
-the safety margin.
-
-Fix #380: While you change the background color in the editor's map dialog,
-the level behind the dialog previews your chosen color in real time. When
-you press OK, the color stays; when you press Cancel, the color reverts.
-
-Code: Fixed deprecations, now Lix compiles warning-free on dmd 2.086.0.
-
-Code: Removed module constructors and moved construction of user options
-into al_run_main. We hope to troubleshoot a segfault on macOS with this,
-github issue #381. Renamed DisplayTryMode to ScreenChoice.
-
-
-
-0.9.26
-------
-
-2019-04-24
-
-Added 24 singleplayer levels in misc/lemforum-outtakes. These levels were
-once part of out flagship pack lemforum, but have been taken out over time.
-They're all proven solvable with 0.9 physics.
-
-Fixed #301: Separated the ping-exit functionality from show-splat-ruler.
-In multiplayer, there are now two buttons. Both have much clearer icons
-(an exit with beams, a ruler) instead of the generic cool shades.
-
-Fixed #293: Savestate icon, don't use floppy disk (means: write file).
-Now, the icon to save state is a flag, and the icon to load state is
-a flag with an arrow pointing towards it. Once a savestate exists,
-the load icon (default hotkey F2) is to the left of the save icon
-(default hotkey F3), to have their default hotkeys (F2, F3) in ascending
-order. (Before, load appeared to the right of save).
-
-Renamed the level folder "Community Collab Project" to "Collab"
-for concise breadcrumb navigation captions, preventing abbreviation.
-
-Attributed correct authors (Rubix/Simon, Simon/Wuzzy) on two tutorials.
-
-Rewrote screen options functions, to rule out a possible source of a crash
-on macOS (no more try-return-catch, always return outside of try/catch).
-See issue #381: macOS 10.14: Black screen then crash.
-
-Rewrote internal graphics code to get already-cached images more efficiently.
-
-
-
-0.9.25
-------
-
-2019-02-04
-
-Added 44 singleplayer levels in levels/single/misc: 17 miniatures by Simon and
-geoo, 13 levels by mobius (originally called leftovers and non-tutorials), 10
-levels by Nessy, 4 non-miniatures by Simon. These levels were released around
-2017 and 2018 on Lemmings Forums and are now part of the main download.
-
-Added 15 tutorials for basic skill usage. A new Lix installation will still
-highlight Any Way You Want as first level, not the tutorials.
-
-Eased the 2-player multiplayer map Anything Can Work: Removed buzzsaws, added
-terrain to allow a downwards route without preparatory platforming above exits.
-
-Fixed deprecations (silent conversion from size_t to int in loop indices)
-to allow a warning-free building with the current compiler DMD 2.084.
-
-Refactored code for clarity: Alcol constructors -> al_map_rgba_f, magic
-numbers in EffectManager -> enums. Split ScoreBoard into two classes and
-moved to the GUI code, to decouple from gameplay.
-
-
-
-0.9.24
-------
-
-2019-01-03
-
-Work around bug #372 (garbled exit markers): Removed alpha channel from
-data/images/goalmark.I.png. Arrow's white overlay is entirely opaque. Made
-overlay line thinner to compensate for the fully-opaque overlay. This should
-avoid #372 to trigger at all. Everything should recolor properly.
-
-Multiplayer directories: Sort authors with easier multiplayer maps.
-Easy means that it's easy to save lix against opponents that do nothing.
-Reason: New players click on the first-listed authors very often.
-This is not an ideal permanent solution, but we have needed something like
-this quickly for the Debian 10 release.
-
-New multiplayer maps by Flopsy: Cascade Squared (4p, 6p, 8p) and
-The Storeroom (6p, 8p).
-
-Fix bug with _order.X.txt files: When you go to a dir A with order file, then
-go to a different dir B without order file but with files named like those in
-A, the files in B are now sorted alphabetically, not wrongly by the order
-file from A.
-
-The options file ./user/options.sdl contains a comment explaining that
-screenMode 0 is windowed, 1 is software fullscreen, 2 is hardware fullscreen.
-
-
-
-0.9.23
-------
-
-2018-12-09
-
-xmas2018: Fixed backroutes in Home Time for Santa, Snow Cat Love,
-Decorate the Tree, Past the Xmas Tree.
-
-ClamLix: Time is Running Out, decorated the steel with a steel hourglass.
-
-Fix #371: Miners throw a pickaxe again when they cancel on steel. Diggers
-won't throw pickaxes anymore by mistake when they cancel on steel.
-
-Added a manpage for Linux package maintainers: doc/lix.6, thanks to tarzeau.
-
-
-
-0.9.22
-------
-
-2018-11-30
-
-Include xmas2018: a new singleplayer pack with 24 holiday-themed levels.
-
-Fix #350: In singleplayer, the splat ruler button tooltip claimed falsely
-that this button also pings hatches and exits, but it does that only in
-multiplayer. Fixed this tooltip. (Issue #301 remains: In multiplayer, this
-button should be functionally split into two buttons.)
-
-Support 64-bit Windows builds with LDC >= 1.13.0-beta2. I encourage all
-Windows users to choose the 64-bit build over the 32-bit build, hoping to
-avoid the out-of-RAM crashes on large maps.
-
-Binary downloads are now hosted on github, not on Lix's homepage.
-
-Binary download archives carry a version number in their filename and unpacked
-Lix directory. With self-contained Lix (i.e., not installed system-wide via a
-Linux package manager), you should still update existing self-contained Lix as
-usual by copying your user files, custom levels, and replays from the old
-directory into the new.
-
-Fix #369: When you build from source and choose a debugging version instead
-of a release version, Lix will start windowed by default, not with software
-fullscreen. User options can override this as usual.
-
-Updated the DAllegro5 bindings to 4.0.4+5.2.0 and removed Lix's allegro-color
-dependency on all platforms.
-
-Many refactorings in the source code for physics updates. No physics changes.
-This will be useful in case I manage efficient skill blueprints a.k.a. skill
-shadows.
-
-
-
-0.9.21
-------
-
-2018-10-19
-
-Fix #313: Options and trophies (level checkmarks) are now saved in ./user/,
-not in ./data/user/yourname.txt. In the future, whenever you update Lix by
-hand, copy the folder user/ into the new installation. Old settings and
-trophies are imported: To update to 0.9.21, you should still copy
-./data/config.txt and ./data/user/yourname.txt to let Lix 0.9.21 import your
-old settings and write them to ./user/.)
-
-Fix #255: Trophies (level checkmarks) are associated to levels by the levels'
-basename (the part of the filename that is independent from directories),
-author, and English title. Trophies are not associated to full level path
-anymore, even though they remember that path as extra information. This means
-that you keep your trophy even when its level moves to a different rank
-directory.
-
-lemforum: Feel the Pressure: Hopeless -> Daunting. This Is a Stickup: Daunting
--> Vicious. Evacuate the Sinking Ship: Vicious -> Hopeless. Little Miner
-Puzzle 1: Adjusted height of one bar to avoid accidental splatting while a
-miner is working. The Borderland: Added buzzsaw that This Lix Is Your Lix
-(repeat) already had.
-
-Raymanni's Holiday exit: Enlarged sprite at the bottom to look better when
-the exit sits on bumpy terrain.
-
-Fix #359: When you have lost singleplayer and the game tells you to framestep
-back or abort, you can doubleclick the nuke to quit.
-
-Fix #323: Wide, flat torus maps start with less default zoom (you see a larger
-portion of the level).
-
-Editor: All steel is offered in a single flat list. I've sorted the more
-commonly used tiles to the top of this list.
-
-Editor: Removed an invisible extra button that 0.9.20 mistakenly generated
-and that sometimes became visible when you hovered over the 3 rightmost text
-buttons in the panel and held the mouse key down.
-
-Fix #363: Editor: The terrain browser does not offer the 3 directories
-./authorName/steel/, to de-clutter the tileset list.
-
-Fix #355: Multiplayer: Exit markers are solid, colorful arrows instead of
-large lixes. They still go behind the terrain. The outline of your own arrow
-is drawn semi-transparent over the terrain.
-
-The networking menu offers to host a game (a server will run within Lix) and
-offers to change the port for listening or connecting.
-
-Fix #358: In a networking room, the current level title is printed under the
-preview image, above the chat.
-
-License: During the CC0 public domain waiver, I mention explicitly that the
-levels are CC0.
-
-Server executable understands the switch --port <number> to listen on a
-different port.
-
-Server is now its own dub package in ./src/server/ in the Lix repository.
-Documented how to build and run standalone server executable in Lix's main
-README.md.
-
-Code: I refactored Hatch to contain Graphic instead of to inherit from
-Graphic. Hatches remember which players spawn from them. Physics remain
-identical. (I tested a lot manually, no automatic test; I still lack physics
-unittests in general.)
-
-Git users: I version-control dub.selections.json now. If you get merge issues,
-delete your local copy and then pull.
-
-
-
-0.9.20
-------
-
-2018-09-23
-
-Backroute fixes in Continuum Hypothesis and Inside the Fourth Wall.
-Fewer lixes in Undercutting the Competition.
-
-Reshaded rectangular blocks in matt/marble: Shading at the left and top should
-only become lighter towards the outside. Before, the blocks looked flattened.
-Diagonal blocks in matt/marble still have this issue.
-
-Fix #349: Mirror button icon shows horizontal mirroring with two triangles,
-not vertical mirroring with an upside-down tree anymore.
-
-Partially fix #348: Custom grid button shows size of current custom grid.
-
-Center images on BitmapButtons more accurately.
-
-Removed unused UI graphics: Spawn interval graphic, hint selection graphic,
-editor hatch direction graphic that is shown with a unicode arrow instead.
-
-Fix #356: When you specify -w or --resol=XXXxYYY on the command line,
-loading/switching the user configuration will not override the command line's
-resolution in this session.
-
-Reorganized the trophy area of the singleplayer browser: Don't draw last
-game's results over the personal best of lix saved.
-
-dub package Optional: I use Optional 0.6.3 now instead of Optional 0.4.x. This
-requires a recent compiler (I know that 2.082 or newer works) when you build
-Lix yourself.
-
-
-
-0.9.19
-------
-
-2018-08-10
-
-RepForLev: For a highlighted level in the singleplayer browser, you can enter
-the new dialog RepForLev that will offer all replays that start with the
-basename of the highlit level. (If the level file is "mylevel.txt", RepForLev
-will offer all replays that start with "mylevel-".)
-
-lemforum, some backroute fixes: Get Hype, remove flinging backroute. Toccata,
-use Proxima's backroute fix against a solution that takes 30 minutes. Striking
-News, add water pit at the top, different cactus placement at the bottom.
-Behind Bars, save 8/10.
-
-Multiplayer maps: Flopsy's shorter Block Chaos, Harden the Paint. Raymanni's
-Rainbow Road, The Frog-Hotel, Follow the Thread.
-
-Fix #354: Prevent the one-pixel-thick line of graphical garbage at the right
-edge of the map. This line occurred with some noninteger zooms during
-play/editor.
-
-Fix #344: Guideline pieces are selectable from the terrain browser again.
-Depth-2-directories (e.g., "geoo/construction/") are listed as only the second
-directory ("construction/") in the root selection of tile browser.
-
-
-
-0.9.18
-------
-
-2018-07-01
-
-lemforum: Behind Bars 7/10->8/12 to remove backroute. One Step Off
-80/80->20/20. Segmentation Fault 20/40->21/40. Merge Sort, hollow terrain
-to remove red herrings. Rhapsody in Blue, aligned traps to terrain
-(removes 1-pixel gaps). Removed obviously unassignable
-imploders/exploders/cubers according to save requirement.
-
-Rubix's levels: Lost Underground, cap reachable ceiling more clearly.
-Removed obviously unassignable imploders/exploders/cubers.
-
-Tiles: Raymanni's improved carnival exit, cleaner large proxima/tiles/orange2.
-
-Fix #23: Don't show obsolete replay arrows/pickaxes/sounds when you
-framestep after a quickload.
-
-Fix #346: When you watch a replay, interrupt, and win, the solution
-replay is auto-saved.
-
-Singleplayer exits the level after nuking instead of prompting to
-framestep back.
-
-On display creation, the mouse cursor centers on the Lix window. This prevents
-edge scrolling when watching replays from the command line.
-
-Fix #340: For translations, use format strings (containing %s, %d with runtime
-checks) instead of several concatenated translated strings.
-
-Fix #341: Translate the output of the replay verifier.
-
-Fix #342: Better grammar, fewer Denglish (English words in the German
-translation even though good German words exist), add umlauts. Thanks to
-Wuzzy for this patch!
-
-In displayed strings, use typographical quotation marks. In file/shell output,
-use double quotes both to begin and end instead of asymmetric quotes.
-
-
-
-0.9.17
-------
-
-2018-05-27
-
-lemforum/Hopeless: Swapped Bipolar Maniac (now 3rd) and Systematic Separation
-(now 10th) in Hopeless.
-
-Score board in multiplayer: Hover over the score graph to see player names,
-exact lix counts, and exact number of scored points, in a large tooltip.
-
-Fix #319: The terrain/steel browsers offer all dirs of depth 2 in images/ at
-once. After navigating to such a depth-2-dir, the terrain/steel browsers offer
-in one flat list all tiles recursively found in that dir.
-
-Don't save other people's winning replays as your own checkmarks. Correctly
-save checkmarks after playing levels passed to Lix on the command line.
-
-On loading a replay with zero players, don't crash anymore, instead create one
-player with the singleplayer color.
-
-The Windows download contains Allegro 5.2.4 DLLs. These newer DLLs fix any
-remaining chance that Lix starts without sound when starting Lix from the
-Windows 8/10 quicklaunch bar.
-
-Lix has a new command-line switch --allegro-version to print the version
-number of the dynamically-loaded Allegro DLLs.
-
-Build system: Lix builds with both the most recent DMD 2.080 and with the
-better-optimizing LDC. I added allegro_color to the link libs. I require D
-Allegro 5 bindings of version >= 4.0.2 to fix a stack overflow in Debian
-LDC-built Lix.
-
-0.9.16
-------
-
-2018-05-01
-
-lemforum: Removed backroutes in We're in This One Together (added steel)
-and From the Other Side (larger fire pit).
-
-Fix #328: Automatic replays are saved after multiplayer games again.
-
-Fix: Watching a multiplayer replay will never save another replay.
-
-I credit our contributors in doc/thanks.txt. Let me know if anything there
-is inaccurate.
-
-0.9.15
-------
-
-2018-04-20
-
-Behind You, Down Among the Dead Lix: Removed backroutes. Added Twelve-Bar
-Blues, a new multiplayer map by Proxima.
-
-Fix #326: In the editor, clicking steel, then opening the terrain browser
-won't override the current terrain directory any more. You can still click on
-a regular terrain piece to open the terrain browser on its directory.
-
-Fix #325: The default steel directory is images/geoo/steel/.
-
-Fix #332: Tile groups will always be saved with relative coordinates that
-are all >= 0, even when some of their parts have transparent boundaries.
-(There is a bug left behind where tile groups with coordinates < 0 are loaded
-wrongly on torus maps, but changing the interpretation of a level file affects
-physics; thus, that second fix is postponed.)
-
-0.9.14
-------
-
-2018-04-03
-
-Waltz in C Sharp Miner, removed backroute.
-
-Moved Arty's race maps (Heart of a Gambler, one map per player count, 2-8
-players) from network/*p/arty to network/races/arty.
-
-Fix #314, #315, #318: When you win a singleplayer game or win an edited
-replay, either browser shows the game's stats under the preview and saves the
-replay automatically. (These bugs were regressions after I removed the
-end-of-singleplayer dialog.)
-
-Fix: The command-line verifier generates checkmarks again.
-
-0.9.13
-------
-
-2018-03-14
-
-Close to the Edge, save 46/50->16/20. Building Block Maze, SI 32->50. The
-Abominable Snowlix, save 15/30->5/10. Block Chaos, walkers 20->60, overtime
-1:00->2:00.
-
-Fix #312: Splat ruler option is now public. Choose one of three ruler designs.
-Default is the 3-bar ruler with huge snap distance from 0.9.5 to 0.9.10.
-
-Fix #308: Include Zanzindorf's lasers.
-
-Fix #305: Autosave 4 pairs of savestates, not 3, on most maps, for performant
-framestepping/multiplayer.
-
-Fix #55: Remove dialog on winning singleplayer. You go to the browser
-immediately after winning the level. Game pauses after losing, allowing you to
-framestep backwards or restart with the regular commands. I hope this
-satisfies the desire for a next-level button in the old dialog.
-
-Fix #302: Remove end-of-multiplayer dialog. You go to the lobby immediately
-after finishing a networking game. The lobby console shows the result, but I
-plan to show better statistics here. This fixes the bug where observers were
-shown instead of players in the end-of-multiplayer dialog.
-
-Fix #309: Show indexing progress of the search dialog. I still don't cache the
-search results; maybe the indexing feels still too slow on older computers
-even when its progress is shown.
-
-When you show FPS and Phyus, I don't display VRAM anymore. Reason: Once VRAM
-got cached on huge maps, the Lix-estimated VRAM usage didn't match the real
-VRAM usage anyway.
-
-New build dependency, Optional type. This is a source-only dependency and is
-automatically fetched by dub.
-
-Batch file to build Lix on Windows conveniently by double-clicking.
-
-0.9.12
-------
-
-2018-02-23
-
-Multiplayer maps: Arty's Let Them Eat Cake (rename of Feaster Island),
-Layer of Hell, Flopsy's Block Chaos, Nessy's Abandoned Sanctuaries.
-
-lemforum: Some Cunning/Daunting levels reordered. This Lix, extra sawblade.
-Bipolar Maniac, imploders 5->1 because the level is lose-1. Tribute to
-Benny Hill, imploders 1->0.
-
-On previewing/editing maps with more than 2.8 x 2^20 pixels (about 2.8
-million pixels), Lix warns that these maps will likely crash. You can still
-play and edit these maps normally. The warning is not perfect, but OK for now;
-any real fix will be difficult.
-
-Fix #229: Tooltips for all skills and all buttons during play.
-
-Fix #306: `--fullscreen' command-line switch works again.
-
-Allow the command-line parameter `--' to terminate switches. Subsequet
-arguments will be interpreted as files even if they look like switches.
-
-Linking on Linux: In dub.json, specify only `allegro-5', not `allegro', and
-let dub use pkg-config to deduce linker flags (typically -lallegro).
-
-
-0.9.11
-------
-
-2018-02-07
-
-New multiplayer maps: Schism 2p by me, Team Attack 2p by Yung. Fixed exit
-order in Pave the Way 4p.
-
-Implemented geoo's design for a splat ruler with only two bars. Both bars snap
-to terrain up to 16 pixels away. Hidden user option SPLAT_RULER_DESIGN in the
-config file can be set to 0 for this ruler, or to 1 or 2 for the three-pronged
-rulers from Lix 0.9.4 or 0.9.10.
-
-Fix #220: On losing network connection, don't crash, but go back to the
-Connect screen of the lobby.
-
-Fix #297: In the singleplayer browser, removed the gap between the delete and
-back buttons.
-
-Fix #298: Option to invert the hold-to-scroll direction.
-
-Fix #292: geoo/construction/Laser* flashes more clearly, to distinguish the
-lasers frmo red abstract pipes.
-
-Fix #303: Print names of missing tiles on the level preview.
-
-Previews in level browsers downscale the level more smoothly.
-
-Mitigate #296 (RAM balloons to 1.5 GB on Windows) without solving it:
-Auto-savestate every 12 frames, not every 10, and keep 3 pairs, not 4.
-
-Option to display torus seams is off by default.
-
-In data/transl/*.txt, merged option titles and option descriptions in the same
-line per option, instead of having two lines per option.
-
-0.9.10
-------
-
-2018-01-30
-
-Updated Arty's multiplayer maps, removed Knock 'em Dead, added Feaster Islands.
-
-Fix #294: Loading manual savestates could occasionally desync physics.
-This fix is covered with an automatic regression test.
-
-Fix #295: Stateload won't preserve the future when you wish to discard
-replay actions undone with framestepping. Covered with an automatic
-regression test.
-
-Fix #250: Permanent abilities appear as little icons over your own lix.
-
-Slightly reduced Lix's hunger for RAM by running the garbage collection
-more often. I still have to debug this gigantic hunger for RAM properly.
-On large maps, Lix might want 1.5 GB on Windows and 500 MB on Linux.
-
-Hardcoded the first miner eye position for the fuse and ability icons. Reason:
-This miner pose covers the eye with her arm.
-
-Don't paint over the level search button when the directory list updates.
-
-Translated the search string "Search for filenames or level titles".
-
-Removed the unused multiplayer jingles from data/sound/.
-
-Editor shows coordinates only in decimal, not in hex. The map size dialog
-still displays the size both in decimal and in hex.
-
-Editor doesn't count exits in singleplayer maps, to improve the visible
-difference between singleplayer and multiplayer maps.
-
-Documented SiegeLord's batch file for the Windows build. Discourage installing
-extra software on Windows merely to build 64-bit. 32-bit Lix runs fine and
-is easier to build.
-
-0.9.9
------
-
-2018-01-22
-
-Added Arty's multiplayer maps: Knock 'em Dead, Pyramid Scheme, Pandemonium
-Box. Modified Rubix's Access Denied to make it completely symmetric.
-
-Fix #289: Replays that didn't point to levels, or even empty text files,
-crashed the replay browser on highlight.
-
-Fix #290: Fixed crash when running Lix from the quicklaunch bar on Windows.
-Allegro 5 has an issue where the Windows sound driver depends on an active
-display, and I assumed that the sound initialization would always succeed.
-I've reordered my initializations and display an error message, not crash, in
-case the sound driver still fails to initialize, which should be rare.
-
-Fix #288: Added optional program-wide hotkey to take a screenshot of the
-entire Lix window, saved in the export directory. No default keybinding.
-Plays disksave.ogg on screenshotting.
-
-Fix #291: Replay verifier called from the replay browser won't interrupt
-the main menu music.
-
-Fix #286: The player list in the multiplayer lobby won't draw over other parts
-of the window.
-
-The splat ruler isn't drawn while the mouse hovers over the panel. All three
-colored bars of the ruler are drawn at 80 % opacity, not 100 %, to keep
-terrain details visible behind. Activating splat ruler/exit ping doesn't play
-a sound effect anymore.
-
-Drew sunglasses icon and multiplayer nuke icon at scale 200 %.
-
-Savestates during game play clock.ogg, not disksave.ogg, because they aren't
-written to disk. disksave.ogg is always played quietly, not loudly, because
-the sound file is extremely loud already.
-
-0.9.8
------
-
-2018-01-15
-
-lemforum: Lix Cannon, cover confusing gaps that were solid. Pipe Dream, remove
-miners, improve lower route. Snow Jump, raise two pieces slightly.
-
-Fix #285: Solving singleplayer replays are auto-terminated with a nuke if you
-leave a game with ESC before the game is over.
-
-Fix #281: Explain airclick to cancel replays in a tooltip.
-
-When you scroll at the screen edge, a tooltip explains hold-to-scroll.
-
-Fix #279: With music enabled, but no music installed, the main menu explains
-how to download the music archive from the Lix website. Text will appear in
-the corner of the screen, not as a dialog box.
-
-Fix: Sound volume setting had no effect.
-
-Editor shows mouse coordinates in the panel, in addition to the piece
-coordinates that it has already shown before.
-
-TAB is default binding for the splat ruler/exit ping. If you keep your old
-user file, this change will not affect your bindings.
-
-Removed unused hotkey to cycle spectated teams. When I have a better ingame
-score board with player names, I'll think about how to implement this.
-
-Removed unused strings from translation files in data/transl/. Each file lost
-over 60 strings, mostly leftovers from C++ Lix.
-
-0.9.7
------
-
-2018-01-03
-
-lemforum: Path to Mahiman, fixed backroute by early bashing.
-
-ClamLix: Swapped Inside the Fourth Wall with Urban Ledge-End. Applied mobius's
-fix to Square Squabble from 2017-12-28.
-
-Removed silent tile replacements, e.g., `moon.D' to `moon'. I've fixed about
-20 levels that still used outdated tile names. I will make a pull request
-against NepsterLix with these replacements.
-
-Fix #276: Replay browser prints the pointed-to filename, to avoid confusion
-what the pointedTo button does. I'd like to improve level-to-replay-matching
-further.
-
-Fix #278: Don't link against allegro_main on any system. Linking against that
-produced warnings on Windows and program-terminating errors during dynamic
-library loading on Mac.
-
-Fix #114: Don't index tiles at program start, allow adding tiles to the tree
-while Lix is running. This made the code far simpler. You still cannot change
-tiles while Lix is running because the file is read only once, then cached.
-
-Fix #275: When a basher ran out of earth to bash, some basher code ran on
-walker memory, failing asserts in debugging mode. I don't believe this fix
-changes physics, therefore no major version number bump.
-
-Fix #41: Options menu offers hardware fullscreen. This shouldn't be used
-normally, only when software fullscreen brings problems.
-
-Fix #238: Lobby uses radio buttons for choice of server. We hide the manual
-address field when central server is chosen.
-
-Fix: The level-to-image exporter crashed when called from the command line.
-
-Document where to download music in the main readme, in the detailed build
-notes, and in the notes for package maintainers.
-
-I ship the Windows binaries with newer Allegro libraries, their version is
-now 5.2.3. Any Allegro 5.2.x should work well with Lix.
-
-0.9.6
------
-
-2017-12-26
-
-Added Raymanni's Holiday tileset. Thanks so much for this beautiful set!
-
-Added multiplayer maps by IchoTolot. Removed my worst old multiplayer maps.
-
-Rubix's singleplayer, reduced initial lix in 3 levels to combat long waits
-when route is finished. Cropped small lemforum/Quirky maps with repeating
-decoration from 640x400 to 640x320. Compression Method 2 has a 2nd hatch.
-
-Fix #251: geoo/construction/pillar_* looks hexagonal instead of round, and
-looks more like concrete, to avoid confusion with steel.
-
-Fix #79: geoo/construction/squisher.T has a flashing exclamation sign and
-looks different from pillar terrain. It's now clearer where terrain ends and
-where the trap begins.
-
-Fix #253: Level search matches the level author, too, not merely the level's
-name and path.
-
-Fix #222: When you enter a different windowed resolution, (un)check
-windowed/fullscreen, or load a user config file, the program immediately
-switches to the desired resolution and screen mode. You don't have to exit and
-restart.
-
-Fix #249: Editor, rectangle dragging: Prefer to drag 1xN rectangles instead of
-(full-width)xN on torus maps.
-
-Fix #219: On torus maps, editor draws hatch/goal annotations properly across
-torus seams.
-
-Fix: Restarting the level from the end-of-level dialog resets speed to normal.
-
-Fix #226: Enforce datafiles (= on missing important files, print & log error
-even in release mode), don't assert for datafiles
-
-Log unplayable music only once per file per program start.
-
-0.9.5
------
-
-2017-12-13
-
-In NepsterLix/Moon, 10 levels got backroute fixes on 2017-11-30. All levels
-are proven solvable.
-
-In ClamLix/Outtakes, beautified Korean Border Crossing (version from
-2017-12-13) and Abridged Version v1. All levels remain solvable.
-
-Merged multiplayer maps by Arty: Blow Your Top, Shaft of Chaos, Showdown at
-Chainsaw Gap.
-
-Distinguished the pillars in matt/bricks from steel by yellow-brown color.
-Still to do: Distinguish pillars in geoo/construction from steel.
-
-Fix #272: Always draw splat ruler in front of terrain. Draw splat ruler even
-when it doesn't snap to anything.
-
-Fix #263, fix #269: Network game computes correct overtime when somebody
-nukes before saving lix, then saves some. This fixes crashes from assertion
-failures in the debugging build.
-
-Fix #209: The replay verifier called from the replay browser creates
-checkmarks when it finds solving replays whose player name matches the user's
-name. Command-line verification doesn't create any checkmarks.
-
-Fix #271: Verifier distinguishes normal failures without lix left from
-failures from running more than 5 minutes after the final skill assignment.
-
-Fix #157: Playing back winning replays on a wrong level version turned your
-correct checkmarks into '?!'. Now, replays will only affect checkmarks when
-the played level matches exactly.
-
-Fix #260: When you interrupt or modify a replay, then save it, your name
-replaces the old player name in the replay.
-
-Better key names on Windows when remapping hotkeys. If you still see keycode
-numbers instead of a proper key name, please tell me key and number.
-
-Translated leftover options to German: Sound and music volume, fast movement
-frees mouse, unpause on skill assignment.
-
-Fixed links in the build instructions that were still pointing to asdfasdf;
-they now point to lixgame.com.
-
-
-0.9.4
------
-
-2017-11-30
-
-ClamLix is included, a singleplayer pack with 113 levels. All levels are
-proven solvable. Thanks, Clam, Forestidia, and mobius!
-
-New multiplayer maps by Arty, Flopsy, and Yung. In particular, more maps for 7
-and 8 players. Some fixes to multiplayer maps by geoo and Steve.
-
-lemforum's Eye of the Needle: removed a backroute. Rubix's Holly Jingle: save
-99/99 -> save 10/10.
-
-Restarting a level disables fast-forward or turbo-fast-forward.
-
-Fix #267: Allow multiple hotkeys per skill.
-
-Fix #257: When A's lix enters B's exit, B will hear the saving sound.
-
-Splat ruler. In multiplayer, the splat ruler is combined with the
-exit-highlighting-function. Needs feedback.
-
-Score graph marks players who nuked with black-and-white squares. Ideally, I
-find a better solution.
-
-Fix: Disable editor grid-size hotkey whenever an editor window is open.
-
-Fixed an assertion failure in the debugging build when dragging quickly in the
-editor.
-
-Fix #258: The multiplayer server crashed when somebody left, then the
-remaining players started a game. Still needs field testing.
-
-0.9.3
------
-
-2017-11-18
-
-Music: Download http://www.lixgame.com/dow/lix-music.zip and extract
-into your Lix root dir. You can create additional subfolders in ./music/
-and put your own tracks inside -- ideally as .ogg, .mod, .xm, .it, or .s3m.
-Lix will play a random track per level.
-
-Fix #216: The manual savestate function will now always overwrite the
-savestate replay with the current replay.
-
-Improved the mouse handling on Windows, there should be fewer odd jumps
-of Lix's cursor over half the game window.
-
-When you restart a level during pause, the game unpauses.
-
-0.9.2
------
-
-2017-10-22
-
-Rubix reordered his singleplayer levels and added the Community Collab
-Project: 4 levels in single/rubix/Extras.
-
-lemforum: Path to Mahiman, removed indirect jump backroute. Runaround up to
-Cunning, Raindow Road down to Quirky.
-
-Fix #252: Level search queries won't match the prefix 'levels/' in the
-filenames because all levels would match.
-
-Fix #256: When you export levels to images or save replays manually, the
-button replacement will not say "done", but instead tell you the filename.
-
-Fix #254: When you run out of VRAM during a level, the game won't crash, but
-instead stop making internal savestates. This won't display a warning, it will
-merely log. Recalculation due to incoming network packets will take longer,
-but that's better than crashing. The game remains VRAM-hungry and this
-solution is not ideal.
-
-0.9.1
------
-
-2017-10-05
-
-Fix #243: Sounds play in the lobby or browser when somebody joins or when
-somebody picks a map. When observers browse for maps and others start a game,
-the observer's browser closes, and the observer will see the game.
-
-Fix #244: Malformed UTF-8 in files within the level tree (e.g., zip archive)
-won't crash the Lix level search anymore. The offending file still will not
-appear as a searchable level; instead, the offending filename is logged. I
-validate all keyboard input for UTF-8.
-
-Fix #246: Tiles with coordinates far out-of-bounds crashed the editor once
-torus wrapping became enabled. Will now torus-wrap these tiles properly.
-
-Fix #247: The lix under the mouse is lighlighted far brighter and gets a dark
-outline to its left, right, and above it.
-
-Fix #248: Multiplayer colors: Purple is lighter. Black is darker. Yellow is
-darker and has less green hue.
-
-Removed a backroute in lemforum's Duality from abusing decoration.
-
-Added about 40 remakes by Proxima of maps from 2009. I've
-inserted the maps in their original authors' directories.
-
-Removed hidden water in Sharing the Water Supply 4p. Removed duplicate map
-files for Going Up 7p/8p.
-
-0.9.0
------
-
-2017-09-28
-
-Raymanni's Toy, Lab, and Gore tilesets to v3: Raymanni has drawn Lab monitors,
-Gore tentacles, eyes, and a bonesaw, a Toy chalkbox, and several more. All
-tiles have shading from the top-left as normal for Lix tiles. Thanks!
-
-Added Proxima's and mobius's multiplayer levels, merged geoo's level changes
-for the tileset update.
-
-Level search.
-
-Fix #230: Frogs ate cubers, and flung cubers reanimated. Now, cubers stay dead.
-
-Fix #231: Tumblers oscillated in thin walls. Now, tumblers will either move or
-land. (The tumbler code is not perfect yet, I'm planning to rewrite it, but
-the rewrite's subtle physics changes would invalidate too many replays still.)
-
-Fix #214: Players permute correctly in networking games.
-
-Fix #239: The server sends a permutation of correct size. This fixes wrong
-hatch/goal distributions in games with many observers and larger teams.
-
-Fix #217: Skip remaining overtime when everybody has nuked or finished
-playing.
-
-Race maps (= maps that have zero overtime) nuke automatically on the first
-scoring.
-
-Fix #240: Observers don't have to cancel the end-of-game dialog anymore. I
-print the game result to the console. This is not beautiful, but it's an
-acceptable medium-term solution.
-
-0.8.8
------
-
-2017-09-24
-
-(Still 0.8.5 physics: This 0.8.8 still has the severe bug where you can fling
-cubers and thereby reanimate them, leading to wrong counts of lix alive. 0.9
-will fix this.)
-
-Merged 9 new multiplayer maps by Colorful Arty. Merged multiplayer map updates
-by geoo.
-
-All racing maps, and geoo's Tower Defense 22934, have zero overtime. All other
-maps have nonzero overtime.
-
-The ping button highlights both your hatches and your exits in multiplayer.
-
-Multiplayer colors: Orange and yellow are more distinct. Grey is lighter. Blue
-and black are darker.
-
-Warn about fewer key collisions in the the options tab for hotkeys in menus.
-
-Linux packaging: You can override the XDG install path with a custom path, see
-doc/build/package.txt. In the git repository, data/images/lix_logo.svg has a
-large logo as SVG. I don't ship that in the download because it's over 3 MB.
-
-0.8.7
------
-
-2017-09-19
-
-The out-of-skills beep was too trigger-happy: When we clicked a mining lix
-and had miners left in the skill panel, the game beeped as if we were out of
-skills. Fixed.
-
-0.8.6
------
-
-2017-09-19
-
-Fix #227: Lobby player list shows 8 entries at a time and scrolls. Before, it
-let the the 9th, 10th, ..., button bleed underneath the list.
-
-Fix #228: Edge scrolling requires the hardware mouse inside the window.
-
-Fix #229: Pressing the hotkey of an empty skill deselects all skills instead
-of keeping the previous selection.
-
-Included Rubix's variants on Marble Run, Eater Island, Diagonal 8p, and
-removed dead space on Across the Gap. Everybody else: Post your multiplayer
-maps, then I can include them in the next version.
-
-Optionally print during play the number of physics updates, frames per second,
-and a ballpark guess of allocated VRAM.
-
-0.8.5
------
-
-2017-09-09
-
-Fix #244: Grouping certain tiles led to an assertion failure: The game
-attempted to cut the group like a gridded animation. Fixed.
-
-Most of #216: Ping button: A small button in multipalyer games, next to the
-nuke. Button clicks highlight all own goals for 4 seconds by flashing them
-inside black and white boxes above the terrain. Can be hotkeyed; by default,
-no key is bound.
-
-Fix #162: In the hotkey options, if you bind the same key twice, all its
-bindings show in red. You can decide whether to remove one binding or keep
-all.
-
-Fix: When the editor inserts a tile from the terrain browser into a level, the
-tile will be aligned to the grid.
-
-I enforce bitmap creation: If you run out of VRAM, Lix should now terminate
-with a proper exception, not crash later in unrelated functions. If you crash,
-screenshot the error, or send me [tt]data/log.txt[/tt].
-
-I optimized the lix Job hierarchy for speed: Lixes are value types, and carry
-their job as a value type within themselves. (Drawing many exploder fuses at
-once is still slow. Organ Symphony will still kill the framerate.)
-
-Fix #211: On Linux, you can pass a compiler switch to make Lix system-wide
-installable, follwing the XDG base directory structure. For arbitrary
-installation paths, open an issue on github.
-
-0.8.4
------
-
-2017-08-30
-
-Fix #4 and #213: Some graphics cards cannot load textures wider or taller than
-4096 pixels. Amanda's tar and occult hatch were too wide. Now, I allow
-two-dimensional spritesheets for single-animation gadgets, and I've
-rearranged the frames in the tar and occult hatch. In Lix, looks and physics
-should be unaffected.
-
-lemforum: Over the Hump out, Duality in. Duality and Round Trip swap places
-within Daunting.
-
-5 new multiplayer maps by Rubix.
-
-0.8.3
------
-
-2017-08-27
-
-Fix #176: Make a tile group with at least one non-dark tile where all non-dark
-tiles are covered entirely by dark tiles. This crashed the game before. This
-crash is now fixed.
-
-Fix #191: Initial zoom on tall narrow maps (e.g., Rubix's Hamunaptra for 4
-players) is fit-to-height, or zoom 1 if fit-to-height would zoom even further
-out. Initial zoom on small narrow maps (e.g., The Runaround) fits the entire
-map on the screen, obviating scrolling, allowing dark borders.
-
-Merged editor's Topology and Looks dialogs into a single new Map dialog.
-No new functionality yet. I'm thinking about custom screen starts.
-
-For a new player, the singleplayer browser highlights Any Way You Want,
-the first map of the lemforum pack.
-
-lemforum, Forest of Fears: Wider exit platform, should look less cramped now.
-
-0.8.2
------
-
-2017-08-24
-
-Fixed magic crash: The Wine build, in release mode, run in Wine but not in
-Windows, crashed on entering a nonexistant user name. This would have been
-very bad because can't do anything on new installation before entering a name.
-The fix is pure magic, a mere rearrangement of lines. Fixed for safety, even
-though it was OK in Windows.
-
-0.8.1
------
-
-2017-08-24
-
-The save-as browser (used by the editor to save levels) allows to create
-new directories.
-
-Editor defaults to 30 seconds of overtime on new levels. Singleplayer levels
-discard their time.
-
-Removed hints during levels and manual screen start.
-
-Rebevelled [tt]matt/underworld/{00,01,02}.png[/tt]: Better shading, these
-bricks don't look flattened near their left edge anymore.
-
-lemforum: Sinking Ship, geoo is author. namida written in only small letters.
-Setting a Fundament, renamed to Cubic Interpolation. Forest of fears, removed
-2 backroutes.
-
-0.8.0
------
-
-2017-08-22
-
-Stable 0.7.22 physics. I would like to keep these physics at least for several
-months.
-
-Tooltips during game explain directional select, priority invert,
-and double-click on nuke. Can disable tooltips in the options menu.
-
-Removed the unused editor button to add decoration. To fill the void,
-the button to add terrain is twice as large. Not perfect, but good for now.
-
-0.7.22
-------
-
-2017-08-20
-
-Physics: Flinging downwards initializes pixelsFallen with the distance that
-speed-0 tumblers normally fall before reaching the given speed. Still, all
-flinging overwrites pixelsFallen without respect to earlier values. Tumblers
-splat when pixelsFallen on impact is larger than 126.
-
-Re-introduced downwards steam and the 2016 decoration on Goblin City, Gomen
-ne, 100 Ways to Die.
-
-Digger unchanged since 0.7.19: Still 5/9 with anti-razor-edging. Discussing.
-
-lemforum: Bulldozer out, Sinking Ship v2 in. Empty Space reverted to the 2014
-version, rejecting both propesed versions from 2017. Renamed Cuber Replacement
-to Jack in the Box.
-
-0.7.21
-------
-
-2017-08-18
-
-Fix: The last exiter didn't play the exiter sound.
-
-Renamed Rubix's "Just a Minute... (Part three)" to "Come on Down! The Price Is
-Right", which is almost too long but still fits well.
-
-Removed lemforum/wip-0.7/ and images/geoo/construction/chain1.png, the
-now-obsolete tile because its size doesn't conform to multiples of 8.
-[url=http://www.lixgame.com/etc/unused-levels-0.7.zip]Download unused levels
-and chain1[/url].
-
-Removed simon/wood/ tileset. I've replaced these tiles with Matt's wooden
-planks in the 3 multiplayer levels by Rubix used them:
-Going Up, Coming Down (2p); Naoh's Ark (2p), Naoh's Ark (Team).
-
-0.7.19
-------
-
-2017-08-16
-
-Physics: Digger has anti-razor-edging: Whenever a digger ignores steel, he
-cannot remove earth pixels beyond the steel in the same row. (The digger stays
-at 5/9 steel sensitivity, i.e., chokes on steel in the central 10 of 18 hi-res
-pixels and continues despite steel in the outermost 4 hi-res pixels on either
-side.)
-
-Updated lemforum's Down Among the Dead Lix, Let's All Go Down the Strand,
-Division of Labor, Empty Space is Hardly a Waste (Proxima's 2017-08-15
-version). Theresa v2 has been up-to-date since 0.7.16.
-
-Merged Rubix's remakes of The Clairvoyant and Flatlined. Thanks!
-
-Removed the downwards steam. I adapted the decoration in the only 3 lemforum
-levels that used downwards steam: Giblin City, Gomen Ne, 100 Ways To Die.
-(Downwards transportation beams are slow, not intended to kill, and therefore
-still in the game.)
-
-In the editor, you can delete tiles by dragging them onto the panel. While
-hovering over the panel with dragged tiles, the mouse cursor becomes a
-trashcan and the tiles become invisible.
-
-Fix: Drag tiles around in the editor, tap the tile-deleting hotkey, and
-continue to drag around nothing. The game crashed. Fixed by stopping the
-dragging on deleting a selection.
-
-Fix #174: The ingame level map, during non-integral zoom, sometimes
-didn't initialize/overwrite outside rows of pixels. Fixed by rounding up.
-
-Fix #201: The ingame level map during large integral zoom that didn't
-divide the length of the map, didn't initialize/overwrite outside rows of
-pixels. Fixed by rounding up.
-
-0.7.18
-------
-
-2017-08-12
-
-Tumblers remember how many pixels they have moved downwards since (they got
-flung for the last time, or since they moved upwards, whatever of these
-happened later). When non-floatable tumblers hit the ground, they splat if the
-fallen hi-res pixels exceed 126. They ignore the y-speed for splatting.
-
-I've drawn 4 new digger frames before the animation loop begins.
-
-In multiplayer, when overtime starts, the bell sounds and the console warns
-about how much time will be left before the nuke.
-
-0.7.17
-------
-
-2017-08-10
-
-100 % proof coverage for lemforum and NepsterLix! Thanks to all who submit
-replays. The coverage is for the 5/9 digger.
-
-Rubix's singleplayer levels are almost covered: 155/157. Uncovered levels are
-The Clairvoyant and Flatlined, these Oriental levels need an overhaul due to
-tileset breakage. I'll PM Rubix. Removed The More You Know because that's a
-nuke level, but D Lix locks the exits during the nuke. Lowered initial lix on
-many levels.
-
-No decision yet for the digger. 5/9 is implemented. I'm leaning towards
-keeping this 5/9 digger, but I want to read over yesterday's chatlogs again
-and Proxima might post to the 0.7-steel-sensitivity topic.
-
-0.7.16
-------
-
-2017-08-09
-
-All water gadgets in images/simon have multiples of 16 for their sizes: 48x48
-or 48x32 or 48x16. The old water size was 50x50. I've looked through all
-singleplayer levels -- lemforum, NepsterLix, and Rubix -- and fixed the few
-water placements that had not yet looked good with 48x48.
-
-All triggered gadgets (triggered traps and triggered flingers) have two rows
-of animations: The first row loops while idle, the second row plays while
-busy. After the final frame of the second row has played, the gadget will
-eat another lix and jump back to the frontmost frame of the second row, or,
-if nobody is in range, begin looping the idling animation from the front.
-
-Kept digger at 5/9 sensitivity for now: Digger chokes on steel when the
-innermost 10 of 18 pixels contain any steel. I should make a final decision
-this week.
-
-Rubix's singleplayer levels, Perplexing: Lowered initial lix on some levels.
-Coverage 108/158 -> 119/158, need 39 more.
-
-Get Hype and Theresa V2 merged into lemforum from the 0.7-lemforum thread.
-lemforum coverage is 239/240, need 1 more: Theresa V2.
-
-0.7.15
-------
-
-2017-08-04
-
-Revert basher mask: Bottom 16 pixels are steel-sensitive, not only the
-bottom 13. I.e., we have 2, not 5, insensitive pixels over the sensitive.
-
-Replay verifier logs to `data/verifier.txt' and closes the file after
-writing its last line or after closing the dialog.
-
-0.7.14
-------
-
-2017-08-02
-
-Proxima's planned changes to the lemforum pack. Snowball Battle: Spawn
-interval 20->22, to keep it solvable.
-
-0.7.13
-------
-
-2017-08-01
-
-Physics: The basher ignores steel in its top 5/18 rows, not merely 2/18.
-The digger ignores steel in its 4 outermost hi-res pixels on both sides,
-not merely in its outermost 2 on each side. The digger digs every (16*n)
-frames following its assignment, not already every (16*n - 4).
-
-Fixed bug #202: Small levels image-export with all stats again, not only
-with their skills.
-
-0.7.12
-------
-
-2017-07-31
-
-lemforum pack: Simple renamed to Lovely. Some backwards-compatibility code
-that converts progress checkmarks during loading the user file.
-
-lemforum/wip-0.7 has all levels in consideration for lemforum pack's stable
-release with 0.7.x in 2 weeks. I hope all levels are up-to-date.
-
-Raymanni's 3 water tiles have higher trigger areas. (Lixes drown earlier and
-higher up than before when they drop into the water.)
-
-Zoom 1x is always allowed, even if the level doesn't fill the available area.
-
-Fix #206: Editor browsers show the innermost directory of hatches, goals,
-traps, and other gadgets.
-
-Goals are locked during the nuke. The nuke is purely for decoration and
-to finish replays in style.
-
-Mouse code reverted to the 0.6 mouse code. If anybody has trouble, tell me.
-
-Keyboard key duration before first repeat for moving selected editor
-pieces: 0.33 seconds -> 0.2 seconds.
-
-Lots of multiplayer nuke code that handles conceding and calling for the nuke.
-When you press the nuke button, you lose control over your lix, overtime
-starts, but your lix don't explode yet. We'll see how it feels.
-
-Editor allows to set overtime in multiplayer levels. Existing multiplayer
-levels are tagged with the correct player number.
-
-0.7.11
-------
-
-When you want to nuke, you can't assign skills anymore. The game core dismisses
-assignments after your nuke, and the GUI shows zero skills.
-
-Game doesn't show FPS in the panel by default. It's an option still.
-
-0.7.10
-------
-
-2017-07-17
-
-Updated lemforum/Vicious/_order.X.txt, ordering One-Lix Showdown.
-
-0.7.9
------
-
-2017-07-17
-
-Physics change:
-Reverted the physics change from 0.7.8: The walker skill behaves like in 0.6
-again. Either the lix cancels her activity and walks on, or turns.
-
-Shotgun-debugged mobius's mouse problem by applying a Linux workaround for
-all systems. I couldn't test, hope this helps.
-
-More lemforum level pack coverage. Only 7 levels left to cover:
-fromtheotherside.txt metalcitymayhem.txt thecontinuum.txt
-dreamtheimpossible.txt lixsterquadrille.txt survivalofthecraft.txt
-toccata.txt
-
-0.7.8
------
-
-2017-07-01
-
-Physics change:
-0.6 walker: If target lix is working, revert to walker. Otherwise, turn.
-0.7.8 walker: If target lix is working, revert to walker. Turn in every case.
-
-0.7.6
------
-
-2017-06-20
-
-Fix: Builders and platformers duplicate bricks for free when turning at
-blockers. Before, number bricks left decreased for these extra bricks.
-
-0.7.5
------
-
-2017-06-20
-
-lemforum: Completely Ridiculous Level is narrower by 48 pixels.
-203/240 levels are proven solvable in 0.7 physics, let's cover 37 more.
-
-Down-facing tumblers drown head-first, not feet-first.
-
-0.7.4
------
-
-2017-06-14
-
-simon/oriental/bonsai: This tree got lixes stuck beneath its leaves.
-Changed some pixels and therefore the tree's physics. Didn't affect any
-levels for the worse.
-
-Rubix's Pleasand and Sinister are 100 % covered. The higher difficulties
-aren't covered yet.
-
-When you verify dirs in the replay browser, that dir becomes the most recent
-dir for exiting and restarting the browser.
-
-0.7.3
------
-
-2017-06-14
-
-NepsterLix is 100 % solvable with 0.7.2 physics.
-
-The replay browser offers a button "Verify dir" that verifies all replays
-in the current directory, recursing through subdirectories. Lix shows the
-results in the GUI and copies them to the logfile.
-
-0.7.2
------
-
-2017-06-11
-
-Blocker field is back like in 0.6: LLLLLL-RRRRRR against everything.
-This is simplest and allows crowd-follows-builder in at least 70 % of the
-cases.
-
-0.7.1
------
-
-2017-05
-
-Blocker fields by geoo's suggestion, LLLLLL-RRRRRR against nonbuilders and
-LLLLL---RRRRR against builders.
-
-0.7.0
------
-
-2017-05
-
-Lots of changes, see experimental version thread on lemmingsforums.com.
-
-0.6.39
-------
-
-2017-07-01
-
-The replay browser allows you to batch-verify all replays in the current
-directory. The results are printed on screen and to the logfile.
-
-Fixed 3 backroutes in NepsterLix; the changed levels are A Day in Lixtown,
-House of the Mad Trickster, and No Matter What I Try.
-
-0.6.38
-------
-
-2017-05-14
-
-Fixed #158: When you exported levels as images from the game and your game's
-resolution was not 640x480, the images had blank stripes instead of skillbars.
-
-Editor draws teams on hatches and goals. (Bug: When you have fewer gadgets
-of either type than teams, only the first team will be drawn.)
-
-Editor terrain browser shows more tiles with smaller buttons.
-
-0.6.37
-------
-
-2017-04-29
-
-Codebase builds with dmd 2.074.
-
-Fix #197: Create a new level, never save, then instruct the editor to exit.
-When the editor asks about potential data loss, choose to save. The buttons
-in the save browser didn't work, the level was lost. This is now fixed.
-
-Fix #198: When the editor inserts a tile from a browser, the new tile
-aligns to the grid.
-
-0.6.36
-------
-
-2017-04-28
-
-Re-enable the option to untrap mouse with fast movement. I have a kludgy fix
-against the buggy mouse jump (Arch 2016, Allegro 5.2, my old code or Allegro
-generated extra move events when I merely wanted to warp the mouse).
-* This kludge is only helpful when you always trap the mouse inside Lix.
-* If you allow the mouse to leave with fast movement, you'll still have a
- warp when you begin right-click scrolling. Need kludge on top of kludge?
-* The kludge is only active on Linux, I've static-if'd it away elsewhere.
-
-0.6.35
-------
-
-2017-04-25
-
-Fix #183: Multiplayer panel shows only number of saved, not any requirement.
-We can still improve this later, e.g., by showing the score of the best
-opponent.
-
-Fix #180: Chat during play implemented.
-
-Fix #181: Chat message length is unlimited. The entry box scrolls along.
-
-Fix #146: Skill arrows scale only once. There are only 1x-zoomed arrows,
-they are drawn straight to the map, then scroll and zoom along with the
-terrain. Maybe GUI-scaled arrows should move as GUI components along with
-the scrolling, but that would be very hard and force frequent total redraws.
-
-0.6.34
-------
-
-2017-04-16
-
-Fix #192: While you are in the multiplayer level browser, incoming console
-messages don't overwrite the browser anymore.
-
-Fix #194: Show both the score bar graph and the tape recorder buttons
-when you watch a saved multiplayer replay.
-
-Fix #195: Client shows version mismatch in their console when they attempt to
-connect to a server running an incompatible version. Versions X.Y.Z are
-compatible iff they have the same X and the same Y. The patch version Z
-doesn't matter.
-
-Fixed asserts in the delayed exploder code. Undelayed, lix explode in the next
-fame following their assignment. Delayed exploders explode in the 75-th-next
-frame after the assignment, this is 74 frames later than undelayed.
-
-Removed my desert tileset (images/simon/desert). It has become unacceptable
-MS-Paint programmer art. Almost nobody used it. The levels "Hrududu" and
-"Group Therapy" used it for decoration, I have re-decorated them in similar
-style. The asymmetric multiplayer maps "Shine On You Crazy Lix" used desert
-for the main terrain. I won't ship these until they're redesigned; this is
-a good opportunity to fix the advantage of the higher-spawning players.
-
-0.6.33
-------
-
-2017-04-14
-
-Fix #182: Timed exploders in multiplayer have a nice burning fuse. I examine
-the spritesheet for the eye position. The fuse burns slow at the beginning,
-then faster when it's short, for visibility.
-
-Fix #193: Most opponents' sounds aren't played. Opponents' deaths and baseball
-bats still play sounds.
-
-Fix #168: Server resets all room data once a room is empty, and deallocates
-the level. Before, you could find old levels when entering a new room.
-
-NaOH's forest exit has animated candles. Physics remain identical.
-
-Singleplayer nuke buttons don't have a red background anymore. I want to
-redesign multiplayer nuke buttons, e.g., by printing overtime on them.
-
-0.6.32
-------
-
-2017-04-11
-
-Partly fix #182: Draw a rudimentary exploder flame over the lix's head
-in multiplayer. I don't draw a fuse yet, and I don't examine the spritesheet
-for the exact eye position.
-
-Fix #190: Override "asdfasdf.ethz.ch" with "lixgame.com" in outdated
-config files left behind by C++ Lix.
-
-0.6.31
-------
-
-2017-04-06
-
-Fix #186: Observers can't assign skills even locally.
-
-Fix #58: Option to keep replay actions after framestepping backwards over them,
-this is enabled by default. mobius likes to remove them on framestepping.
-
-Don't float-downscale UI CutbitElements, always display at integer scale >= 1.
-
-Removed images/matt/oriental/dragon.png. That tile was huge, clashed
-in style with other pieces, and is nowhere used.
-
-0.6.30
-------
-
-2017-03-30
-
-Fix #184: Observing players don't add colors to the game. There is still a
-bug with observers: The can assign skills, changing their own replay, even
-though others won't interpret these assignments.
-
-Maybe fix #177: Multiplayer or state-loaded singleplayer produced outdated
-land, even though physics were correct. Copying the land without transparency
-should fix that.
-
-0.6.29
-------
-
-2017-03-29
-
-Moved gamestate memory management from GC with manual GC calls to reference
-counting. Maybe that fixes #177, outdated terrain during multiplayer?
-
-Fix #179: Unfocus lobby chat when a game starts.
-
-Fix #178: Don't flash the R for replaying during multiplayer.
-
-Fix #185: Hotkeyed zoom during multiplayer, even if the button isn't shown.
-
-Fix #171: Terrain browser doesn't upscale small tiles.
-
-0.6.28
-------
-
-2017-03-18
-
-First version for the networking test on lemmingsforums.net.
-
-Removed the option to untrap the mouse with quick mouse movements. This
-option was buggy on linux and has always required workarounds. To untrap
-the mouse now, press Alt+Tab.
-
-Matt's winter hatch has no snow, but wooden triangles.
-
-0.6.27
-------
-
-2017-03-16
-
-In multiplayer, the server sends time-syncing packets to all players in a
-room. This happens every 0.5 seconds during the first few seconds in the game,
-and every 5 seconds later on. Players adjust their physics' speed to match.
-Even if players open the ESC menu, a networked game will continue to run.
-
-0.6.26
-------
-
-2017-03-09
-
-NepsterLix 1.6 is an excellent singleplayer puzzle pack with 106 levels.
-It was released in 2016, now it's finally included in the main download.
-
-Sharper small text on small resolutions such as 800x600 and below: Instead
-of small shadow text, I print small text with a dark outline.
-
-More networking code: Transferring and interpreting game data works.
-Can't interrupt other players' replay actions anymore. Game's network
-connection is picked up by lobby after game. But the server doesn't yet
-send time-syncing packets every few seconds, thus clients will time-shift.
-
-0.6.25
-------
-
-2017-03-05
-
-The Windows executable has a Lix icon in the file manager. On all operating
-systems, the application window and taskbar entry have a Lix icon.
-
-0.6.24
-------
-
-2017-03-04
-
-Fix #167: Editor button zooms again. Map is rezoomed when editor resizes map.
-
-Fix #170: Game crashed due to the Nurse indexing players in the replay by
-PlNr. Now, the replay uses a PlNr-indexed associative array.
-
-I offer more zoom values: 1/sqrt(2), 1, sqrt(2), 2, 3, 4, 6, 8, 16, and
-fitting the level's width or height to screen.
-
-0.6.23
-------
-
-2017-03-02
-
-Fewer zooms are considered similar. This addresses Nepster's concerns:
-http://www.lemmingsforums.net/index.php?topic=3128.msg63116#msg63116
-
-Fix #169: I validate all user files for good UTF-8 before calling Phobos.
-
-Implemented the transparent console for networking messages during play.
-
-I've worked on starting networking games and transferring game data.
-I haven't tested this yet, don't expect anything yet.
-
-0.6.22
-------
-
-2017-02-18
-
-When you zoom in or out, the mouse points to the same pixel on the land
-before and after the zoom. Exception: Map scrolling is restricted on low zoom.
-
-Fix: In-game map boundary was sometimes too thin, there was a 1-pixel wide
-column or row of non-erased pixels between the boundary and the land.
-
-Fix #94: Show spawn interval only when hovering over a hatch. I'm showing
-it in the panel still, not laid over the hatch, which would have been better.
-
-If a map is taller than wide, it tries to fit its width to the screen width,
-not the height.
-
-0.6.21
-------
-
-2017-02-16
-
-Merged a contribution by CyberShadow to upscale the 640x480 GUI icons
-for high resolutions by integer factors when no high-res icon exists. Thanks!
-
-Initial zoom fits the level height on the screen height, allowing horizontal
-scrolling if the map is very wide. Exception: The map is only slightly wider
-than the screen, then initial zoom fits the width on the screen width,
-generating a black border at the top.
-
-When you increase the zoom factor, the game centers on the mouse cursor.
-
-0.6.20
-------
-
-2017-02-04
-
-Code compiles with dmd 2.073: Masks initialize at runtime, before main menu.
-I removed tharsis.prof, that dependency didn't build with dmd 2.072.
-
-Reworkings under the hood towards minimum viable multiplayer. In case you
-have replays from old C++ Lix, you can watch them in D Lix now. But you still
-cannot start multiplayer games yet in D Lix.
-
-0.6.19
-------
-
-2016-11-01
-
-I require Allegro 5.2 now instead of 5.0.
-
-Included Rubix's levels. They're all solvable in D Lix.
-
-Fix #159: Better encapsulation for physics caching. Don't switch timelines
-merely by framestepping back. Maybe this fixes Rubix's sporadic crashes, #154.
-
-Fix #24: GUI text vertically centered on buttons. I'd like to see how this
-looks on Windows machines.
-
-More work on the networking lobby. You can chat, browse rooms, send and receive
-levels, but can't start a game yet.
-
-0.6.18
-------
-
-2016-10-08
-
-Fix: When you picked a tile from the editor's tile browsers, the tile wouldn't
-appear in the level. Now it does again.
-
-0.6.17
-------
-
-2016-09-21
-
-Fix #153: I have culled the no-effect decoration. The still decoration is now
-solid terrain. Animated decoration is gone, except for the beach bonfire, which
-became a fire trap. I have changed levels that I distribute with the game to
-use the new tiles. Backwards compatibility for levels that I don't maintain:
-The level loading function silently replaces decoration with the new tiles.
-
-I removed the auto-replacements for Matt's terrain that I made in 2010 and
-2011. Almost no levels relied on them anymore, and I've changed the remaining
-two levels that did. These levels remain functionally identical.
-
-Fix #156: Switching to a parent directory in the singleplayer browser clears
-the preview again.
-
-Rubix has created a cute sound for (singleplayer, you have lost too many lix).
-It's included, and plays once when triggered, not five times like the old tick.
-
-The warning sound for empty skill doesn't play on mouse click, only on hotkey.
-
-0.6.16
-------
-
-2016-09-14
-
-Fix #152: The singleplayer browser has a button to create a new level.
-This button is always visible, whether a level is selected or not.
-
-Fixed smearing FPS text in the editor.
-
-0.6.15
-------
-
-2016-09-13
-
-Started networking backend, lobby, and console. You can log onto the central
-server at lixgame.com and chat.
-
-Fix #145: The editor calced twice after its boxes lost focus. You could cancel
-a box with a hotkey, and the editor interpreted the hotkey itself once more.
-
-Fix #151: When there is no savestate, the state-load button is hidden.
-
-Fast movement frees mouse: This option is off by default.
-
-0.6.14
-------
-
-2016-09-01
-
-Command-line switches to jump into play:
- lix level.txt plays the level.
- lix replay.txt plays the replay against its included level.
- lix --pointed-to replay.txt plays the replay against its pointed-to level.
- lix level.txt replay.txt plays the replay against the given level.
-
-Minor bugs left behind here: Depending on from where the levels are run,
-they do or don't generate checkmarks. Auto-replays should always be saved,
-even if, when not run from the root directory, the replays are called unknown.
-
-Command-line switch to export images. The following command-line exports as
-images the two given levels, and all levels recursively found in mydir:
- lix --image level1.txt level2.txt mydir
-
-Fix #149: Singleplayer always displays a dialog at end of play again,
-so you can control the entire application with the mouse alone. You can
-framestep back from this dialog.
-
-0.6.13
-------
-
-2016-08-27
-
-Lemforum levels got updates from August 2016. I deleted the tutorial levels:
-The lemforum pack is our flagship pack and starts with very easy levels.
-Other packs need not provide tutorial levels.
-
-Fix #142: There is a virtual file system. It recognizes ./ and ../ now.
-Other directories, in particular installations in Linux File System Hierarchy
-trees, aren't supported yet, but the necessary changes have become easy.
-
-Fix #148: When you fail a singleplayer level, the game halts and allows you
-to go back in time. It doesn't spawn a dialog box anymore.
-
-Fix #144: In the editor, when you mirrored a piece with transparent pixels at
-its sides, the piece moved. Entire selections diverged on repeated mirroring.
-
-Fix #84 and #90: The options menu explains its options, except on the editor
-tab. The box near the menu's bottom provides two lines of explanation.
-
-0.6.12
-------
-
-2016-08-07
-
-Fix #134: Select multiple tiles in the editor and press rotate.
-The tiles rotate correctly with respect to each other. Rotating 4 times
-puts them back exactly where they started, they don't wander. This works
-even if oddly-sized tiles or unrotatable gadgets are in the selection.
-
-Fix #139: The browsers for hatches, goals, decoration, and hazards display
-all tiles in the images/ tree in one listing.
-
-Fix #140: The terrain browser starts browsing from the directory of the
-tile you have selected at the moment. If you haven't selected anything,
-they start from the directory from which you've most recently added a tile.
-
-Fix #143: The file selector scrolls to the final row, even if it's less
-than half-filled. Before, the scrollbar looked like there were more files,
-but didn't make the tiler display these extra files.
-
-Swapped author and level title in the editor's constant-setting window.
-
-0.6.11
-------
-
-2016-08-06
-
-lemforum pack: Many updates by Proxima and geoo. Fewer lix in Hopeless.
-geoo has rebuilt Spin Geometry with completely new terrain, and renamed it
-to All Aboard the Pain Train. Off the Rails is now Railroad Plot, and
-Derailed Level got a derailing locomotive as decoration.
-
-Fix #117: Name-asking menu for new players exits with plain Esc. I don't
-display anything for this.
-
-Fix #131 and #111: Simpler starting zoom. Depending on your game
-resolution, either all levels start as 1x or all levels start as 2x. Test
-and see if you like the zoom for your resolution.
-
-Fix #122: When you continue from a saved replay, then win, or save
-manually, the new replay goes into the correct directory and points to the
-correct level file.
-
-Fix #133: The singleplayer menu shows the player's best score: Lix saved
-and skills used.
-
-Fix #138: Editor hotkeys work even while you're dragging. The buttons on
-screen are disabled for the mouse during drag.
-
-Fix #127: I hide dot-files, like .git, in level directories.
-
-0.6.10
-------
-
-2016-07-31
-
-In the lemforum pack, 237 of all 240 levels are guaranteed to be solvable.
-The remaining possibly-unsovable levels are Trading and Cooperating,
-The Mile High Club, and Striking News at Ten.
-
-Fix #116: Editor shows the top-left point of a multiple selection, the minimal
-coordinate each in both the x- and y-direction.
-
-Fix #130: After state-loading a different timeline, framestepping moved back
-to the undesired timeline. Now, I discard old savestates until the merge base
-of the two timelines, and recompute from there on savestate.
-
-Fix #91: Editor buttons are disabled when dragging.
-
-0.6.9
------
-
-2016-07-27
-
-Miners throw their pickaxe into the air when they hit steel.
-
-Option: Do fast mouse movements untrap the mouse from windowed Lix?
-
-lemforum pack updated by Proxima, again first 5 ranks solvable.
-
-0.6.8
------
-
-2016-07-22
-
-Decoration updated on Any Way You Want, The Road Goes Ever On, Just Stop
-the Bleeding.
-
-Fix #125: disksave.ogg was too loud, changed from 0 dBFS to -4.5 dBFS.
-
-0.6.7
------
-
-2016-07-22
-
-The lemforum pack's first 5 ranks are guaranteed to be solvable. geoo has
-given maintenance of the lemforum pack to Proxima. Proxima has spent days
-on careful level adaption to D Lix and difficulty reordering.
-Out: Get Down From There, Minimalism Part 3.
-In: Don't Look Back (jagged floor instead of a time-limit gadget),
- Canadian Glade (inspired by Get Down From There, uses the forest tileset).
-
-Fix #111: Initial zoom on torus maps was too zoomed in.
-
-Fix #112: Hotkey labels ran over nearby buttons.
-
-Fix #118: When Lix wasn't the foreground window, it trapped the mouse
-nonetheless when the cursor passed over the inactive window. Now, you must
-click into the window to trap the mouse. This fix made visible another bug:
-In the inactive Lix, the ingame cursor moves offset from the hardware cursor.
-
-Worked on #124: I don't add 0x0 as a fullscreen mode anymore.
-
-0.6.6
------
-
-2016-07-17
-
-The lemforum community pack has Proxima's suggestions up to 2016-07-17.
-Several levels have moved between ranks. Some have been replaced entirely:
-Out: Minimalism (Part 1), Fear of Heights, That Pesky Gap, Don't Look Back,
- Too Far to Walk
-In: A Necklace of Raindrops, The Road Not Taken, All Around the World,
- Diggin' the Air, A Soulful Bounding Leap
-
---coverage switch to use along with --verify, to compute level directory
-coverage. From all levels that reside in level directories from where you
-have tested at least one pointed-to level of a replay with --verify,
---coverage lists those levels that didn't enjoy even a single solution.
-Please read levmaint.txt for detailed instructions. Example command line:
-
- lix --verify=replays/path/to/dir --coverage
-
-Fix #113: Shorter key names with unicode symbols. In particular, keys on
-the numeric pad have a nice symbol that looks like the keypad.
-
-Fix #120: Topology updates correct equation, not only the horizontal equation
-
-Some assertions to debug issue #121 on MacOS.
-
-0.6.5
------
-
-2016-07-03
-
-Fix #103: When you re-enter the window, the ingame mouse starts moving from
-where the hardware mouse entered the window.
-
-Fix #108: Adventure Playground displays again in the preview and is playable.
-
-The replay browser has two buttons to start replays: One replays against the
-included level, one replays against the pointed-to level.
-
-Updated the lemforum community pack to geoo89/lixlfpack commit 2a91852.
-This reorders some levels. Two levels have been replaced entirely:
-Out: Three Days of the Condor, Absolute Zero
-In: Lixes in Motion, Eye of the Needle
-
-Afterwards, the lemforum pack got fewer initial lix in the lower three ratings
-Simple, Quirky, Cunning. Proxima has played all these levels, tested for
-solvability under a fixed spawn interval, and recommended lower initial lix
-counts that keep the level idea fully intact. We have removed about 2,000 lix.
-
-0.6.4
------
-
-2016-06-27
-
-Editor increases the level's $BUILT when saving a changed level.
-
-Fix #106: With mixed dirs and files, picker couldn't scroll to the last file.
-Fix #107: Prefer queuing builders to spamming, then you couldn't queue at all.
-
-New user option to unpause on skill assignments.
-
-Tutorial levels are solvable again, and you can't die in them as easily.
-
-0.6.3
------
-
-2016-06-22
-
-Fix #97: The game advances physics on assignment and unpauses on nuking.
-
-The browsers' breadcrumbs are wider and less tall. I don't display the current
-directory in the browser's title bar anymore. The picker shows 20 files
-instead of 19, this fixes #96.
-
-The preview draws a dark border around the level instead of the menu color.
-Under the preview, I write the level name.
-
-0.6.2
------
-
-2016-06-20
-
-Multiple hotkeys can be bound to the same function. By default, the editor
-moves tiles both with the arrow keys and with ESDF. Pause is bound to [Space]
-and to the middle mouse button.
-
-Editor grouping, ungrouping, saving, and save-as can be hotkeyed.
-
-0.6.1
------
-
-2016-06-18
-
-Editor displays the trigger area of all gadgets.
-
-0.6.0
------
-
-2016-06-15
-
-Physics: Imploder mask is symmetric. It's wider by 1 lo-res pixel to the right.
-
-You can drag the scrollbar thumb with the left mouse button.
-
-0.5.0
------
-
-2016-06-14
-
-Physics: Groups with steel have correct distribution of steel, earth, air.
-
-I highlight on the map the lix under the mouse cursor who would get assigned.
-
-The Editor allows to ungroup tiles.
-
-I show hatch spawn direction, describe hovered tiles, and use a more
-peaceful color flow for hovers and selections. Save-as forbids special chars.
-
-The game shows the constant spawn interval in the panel. I don't know
-whether I want to keep this and make an icon for it, or whether people
-don't need it later.
-
-0.4.4
------
-
-2016-06-06
-
-Bugfixes for these github issues:
-#67: Z-ordering several tiles
-#85: Hover sorting guarantees group's z-order
-#81: Crash on nonexistant base directory of a browser
-Button hotkeys are drawn on top of buttons, not behind main text.
-
-I now try to paint the screen black immediately on display creation.
-I don't want a white flash before showing the main menu. I have to test at
-Icho's Windows machine whether this prevents the white flash.
-
-0.4.3
------
-
-2016-06-02
-
-Loading levels auto-converts from no-overwrite to tile groups.
-
-Even in a release build, an on-the-fly conversion takes 5.5 seconds for
-A Day In Lixtown and 1.2 seconds for Heed the Traffic Light. Lixtown has 2000
-pieces and does fancy tricks with no-overwrite. I have to decide whether
-the performance is acceptable, whether to improve the algorithm, or whether
-to save converted levels to file.
-
-Merged a tree tile by Amanda to prevent getting stuck in its leaves.
-
-Editor remembers the recently-loaded or recently-saved file, similar to how
-the game remembers the recently-played level. The singleplayer browser
-shows the most recent file.
-
-Don't show elapsed time in singleplayer. It looks like a time limit.
-Does anyone want the elapsed time shown nonetheless?
-
-0.4.2
------
-
-2016-06-01
-
-Level reads and writes tile groups.
-
-The game renders groups with correct air parts inside.
-I haven't tested steel, I expect bugs when grouping steel.
-
-There is no conversion yet from no-overwrite to groups.
-
-0.4.1
------
-
-2016-05-25
-
-Game and editor draw a thin line at the torus seam. This is optional.
-
-The automatic screen start snaps to the level boundary if it's close to it
-and the level has no wrapping in that direction.
-
-Started tile grouping using Nepster's algorithm. Thanks for the straightforward
-idea in O(n^2), with tips on how to optimize to O(n log n) if wanted!
-
-0.4.0
------
-
-2016-05-23
-
-Physics change: Climbers couldn't ascend into 1-pixel high gaps with an
-overhanging ceiling.
-
-Fix #73: Tile selection boxes were offset. Reason: A5 rotates tiles clockwise.
-Many parts of the D Lix source assumed a counter-clockwise rotation.
-
-0.3.7
------
-
-2016-05-21
-
-The editor's save-as dialog is implemented. It doesn't preview the old level,
-but asks before overwriting.
-
-0.3.6
------
-
-2016-05-18
-
-Editor: new file, quit, and save to existing file are implemented. The editor
-asks whether you would like to save when you would lose data on new or quit.
-
-Fixed an editor crash on querying terrain on tiles with negative coordinates.
-
-The editor saves to ./levels/editor-emergency-save.txt when you click save-as,
-because save-as is not implemented yet. The editor saves to that file too
-on assertion fails, as a safeguard.
-
-0.3.5
------
-
-2016-05-15
-
-geoo has designed awesome glyphs, representing mouse wheel and buttons.
-The infinity symbol is now a big lemniscate. I've included the new glyphs
-in the default font. Thank you, geoo!
-
-Editor has a window to set the main level constants, and another to set
-the level topology. Non-browser-opening editor buttons have words, not icons.
-This addresses issue #74 partially.
-
-The editor can only set the English level title. You can set the intended
-number of players per level, but that field has no effect anywhere yet.
-
-0.3.4
------
-
-2016-05-08
-
-Right mouse button, middle mouse button, wheel up, wheel down are all available
-keys to map in the hotkey dialog. There are two keys to map for zoom now.
-Default value for zoom-in is wheel-up, default for zoom-out is wheel-down.
-
-Removed the boolean options that became superfluous after allowing mouse
-buttons as hotkey bindings. Set the edge scroll speed to 0 to disable it.
-
-Pause accepts two keybindings. I'd like multiple keys for any function.
-
-Singleplayer browser shows author and save requirement, allows to delete level.
-
-Culled variable spawn interval UI and level variables.
-
-Fixed wrong phymap querying: clamping coordinates on a torus must wrap them.
-
-Fixed a crash, the game tried to dispose a null state after long play.
-
-0.3.3
------
-
-2016-05-03
-
-Fix #42: Zoom increases at level start until at least 70 % of map screen
-space is filled. This makes for dynamic zoom per level, per resolution.
-
-Fix #31: I drew air where solid after batch-framestepping, when lots of
-drawing and removing happened in short succession. geoo has suggested
-the new algorithm that's both simpler and bug-free. Thanks!
-
-0.3.2
------
-
-2016-05-03
-
-Editor skill window: Clicking the label "Fling-exploder" affects checkbox,
-too. Buttons resized and captioned according to Proxima's suggestions.
-
-0.3.1
------
-
-2016-05-01
-
-File picker scrolls with the mouse wheel.
-
-Replay browser can delete files and lists player names next to files.
-
-The editor keeps the manual or automatic screen start from old levels,
-even though it cannot change the screen start yet.
-
-Fix #66: Boolean options react to mouse clicks on their label, not only
-to mouse clicks on the checkbox itself.
-
-0.3.0
------
-
-2016-04-27
-
-Physics change: We don't check for physics near the eye, which would have
-depended on the spritesheet. Instead we check at (foot) + (0, y), where
-y is 0, -4, -8, and -12. This check is independent from the current lix job.
-Rationale: http://www.lemmingsforums.net/index.php?topic=2678
-
-0.2.49
-------
-
-2016-04-27
-
-Level and replay browsers select adjacent directories and files by hotkey.
-
-Tile browsers in the editor remember the last-chosen tile's directory,
-and use the screen real estate better with 6 x 10 items at a time.
-
-0.2.48
-------
-
-Fix: Singleplayer results overwrite outdated level results.
-
-Editor rotates and mirrors terrain pieces, and toggles the dark flag.
-
-When you enter a directory in a browser and the picker highlights the
-recent file, this file is scrolled into view.
-
-0.2.47
-------
-
-2016-04-20
-
-Fix #65: Sign error when computing the offset for steel checks. The error
-shifted steel checks too far into the ground and to the right.
-
-Backwards framestepping is accelerated by 1/lag, where the lag is measured
-as ratio (FPS / ideal number of FPS). Slight difference in memory management
-for savestates, but no manual management yet.
-
-0.2.46
-------
-
-2016-04-20
-
-Fix regression #64: Options menu didn't offer choice of language.
-
-Fix minor bug #62: Profiling via version statements, not empty structs that
-would make a call to an allocating string-formatter.
-
-Fixed a crash on opening non-UTF8 files in the Lix file format reader.
-
-Editor allows to clone and z-order-rearrange tiles. There is a bug left behind
-when reordering many pieces at once: Sometimes, they reorder among each other
-only, producing no change after the entire reordering command.
-
-Sound effects are loaded lazily, that boosts the program start.
-
-0.2.45
-------
-
-2016-03-11
-
-Editor UI allows to set the grid by mouse and hotkeys, as in C++/A4 Lix.
-
-Editor moves tiles according to the grid. The clicked-and-dragged tile snaps
-to the grid. All other selected tiles move along with it, without snapping to
-grid themselves. When moving by keyboard, nothing snaps to grid. The behavior
-in this paragraph is identical to C++/A4 Lix.
-
-Editor saves on exiting to ./levels/editor-test.txt.
-
-0.2.44
-------
-
-2016-03-30
-
-Browsers offer breadcrumb navigation to pick directories.
-We're missing some central features in these browsers now:
-https://github.com/SimonN/LixD/issues/63
-
-Fixed imports for dmd 2.071.
-
-0.2.43
-------
-
-2016-03-26
-
-Editor offers the window to set skills.
-
-The chosen ploder is loaded and offered during play. Levels remember the
-chosen ploder, even if 0 ploders are available. The ploder shown on the
-panel is the nuke skill.
-
-Bug #4 (game ignores tiles that don't fit into VRAM) doesn't crash anymore,
-but ignores the tile instead. The game shows the missing-image error.
-
-0.2.42
-------
-
-2016-03-23
-
-Editor adds pieces selected from the tile browser. Editor moves tiles by
-keyboard and mouse. No snapping to grid yet.
-
-Fixed #57: The builder gets closer to a vertical wall before stopping.
-Fixed #60: The editor selects newly-added tiles immediately.
-Fix: Editor-added tiles are clamped to the map, they don't spawn off-bounds.
-Fix: The file listing ignores files with pre-extension X, like _order.X.txt.
-
-Rewrote many functions everywhere to take one Point instead of 2 ints.
-I have to test for performance regressions.
-
-0.2.41
-------
-
-2016-03-18
-
-Singleplayer browser, replay browser, and editor terrain browser all use
-the new file picker.
-
-Bugs:
-* Keyboard controls for file up/down are missing. Regression due to rewrite.
-* Scrollbar doesn't react to mouse wheel, or to clicks on the track or car.
-* Replay browser formats the button like the level browser. There is a
- child class for replay button formatting, which I am not using yet.
-
-Misdesign: Picker should control UpOneDirButton. See comment in uponedir.d.
-
-0.2.40
-------
-
-2016-03-13
-
-Editor has a terrain browser that can only exit. No browsing for terrain yet.
-There's a scrollbar in that terrain browser. The buttons at its end can be
-clicked and move the car. The car doesn't do anything when dragged or pulled.
-
-0.2.39
-------
-
-Fixed bug #51: Basher always left relics after his first swing.
-
-0.2.38
-------
-
-Editor moves tiles by dragging with the mouse. No keyboard movement yet.
-
-0.2.37
-------
-
-2016-03-06
-
-Editor can select all tiles.
-
-Editor can add and remove tiles to/from the existing selection.
-
-0.2.36
-------
-
-2016-03-05
-
-Fixed the bug described in 0.2.35: Frame-spanning goes across or not across
-the torus seam, according to mouse position on the screen. I like the results
-in many cases so far. Anything more would require tracking the map scrolling.
-
-Editor has a button for frame-dragging. The button's on-ness and its hotkey
-are handled in a nonstandard way, which we want.
-
-Editor has a zoom button toggling between 1x, 2x, 4x zoom, like the game.
-We should brainstorm about the zoom UI, and about default zoom.
-
-0.2.35
-------
-
-2016-03-05
-
-Editor frame dragging implemented. It selects the correct pieces on a torus.
-
-Bug: It doesn't yet span the frame in the correct direction. Right now,
-it always spans so that the torus seam is not included.
-
-0.2.34
-------
-
-2016-03-03
-
-Top edge kills unconditionally.
-
-The editor counts and annotates hatches and exits.
-
-0.2.33
-------
-
-2016-03-01
-
-I run D's garbage collection whenever there are obsolete game states during
-play. Profiling result: My 9-year-old laptop takes 3 ms per collection.
-At 16.6 ms per frame, this slows down the back-by-1-second command.
-My goal is to attack this bug: https://github.com/SimonN/LixD/issues/38
-Let's see whether anybody experiences this bug #38 still, then think again.
-
-0.2.32
-------
-
-2016-03-01
-
-Application starts much faster. All bitmap-loading and recoloring is lazy.
-Only eye matrix generation is eagerly done at application start.
-
-0.2.31
-------
-
-2016-02-28
-
-Implemented editor delete button.
-
-0.2.30
-------
-
-2016-02-27
-
-Fix #52: Mose over a transparent terrain tile, gadget behind it:
-This selects the gadget now. Before, it selected the terrain tile.
-
-0.2.29
-------
-
-2016-02-25
-
-Editor selects pieces on mouse click. No moving yet.
-
-Game starts slightly faster, because I'm not searching through all internal
-graphics of all resolutions. Most internal graphics are loaded lazily.
-Spritesheet/player-dependent GUI elements are still eagerly loaded, so there
-is opportunity for optimization here.
-
-0.2.28
-------
-
-2016-02-24
-
-Fix: Replays were saved with a null $BUILT instead of the level's $BUILT.
-
-Editor mouse hovering: Solid pixels are more important than the selection box.
-Holding priority invert inverts the entire sequence of terrain and gadgets.
-
-Refactored the code, Filename and Date are immutable by default.
-
-0.2.27
-------
-
-2016-02-21
-
-Fix #49: Animate gadgets (most importantly, water and fire) on level start.
-
-0.2.26
-------
-
-2016-02-21
-
-Game saves level result on leaving play, or on loading an old state.
-Autoreplays are only saved on leaving the game. Should they be saved on
-reaching the end-of-game dialog already?
-
-0.2.25
-------
-
-2016-02-20
-
-The singleplayer browser shows checkmarks next to solved levels. However,
-the game doesn't save any new checkmarks on winning yet.
-
-0.2.24
-------
-
-2016-02-17
-
-The editor draws white rectangles around all mouse-hovered terrain pieces.
-Refactored TerPos and GadPos to be subclasses of AbstractPos, not structs.
-
-Fix: Editor dark terrain doesn't overwrite gadgets anymore.
-
-0.2.23
-------
-
-2016-02-16
-
-Editor renders terrain and gadgets. It uses the same scroll starting position
-as the game. I want to reintroduce the manual scroll starting position.
-
-0.2.22
-------
-
-2016-02-15
-
-Fixed #44: We sort dirs and levels according to the listing _order.X.txt.
-
-0.2.21
-------
-
-2016-02-14
-
-In singleplayer, lix start spawning 1 second after level start, not 4 seconds
-after start. The nan-nan sound is played when you start the game, or whenever
-you revert to the starting position.
-
-Fixed #48: Assertion failure of climber on torus maps.
-Fixed sprite positioning of the climber.
-
-0.2.20
-------
-
-2016-02-12
-
-The panel displays elapsed minutes and seconds since level start.
-
-Time limits or overtime haven't been introduced yet. I'm considering to
-cull singleplayer time limits from the game altogether.
-
-0.2.19
-------
-
-2016-02-11
-
-Fixed an assert fail for new users upon entering the singleplayer browser.
-
-Added a command-line switch to force true fullscreen an arbitrary resolution.
-This makes the game run for Ramond. If you have problems getting Lix to run,
-try the following, replacing 1600x900 with your possibly different resolution:
-
- lix --hardfull=1600x900
-
-0.2.18
-------
-
-2016-02-10
-
-Sped up turbo-fast-forward: I auto-savestate only every 50 frames instead of
-every 10 frames during turbo-fast-forward.
-
-0.2.17
-------
-
-2016-02-09
-
-Tiles are loaded differently, depending on whether they're terrain or gadgets.
-Terrain tiles are loaded with an extra physics map, and a white copy of
-themselves for fast dark-drawing.
-
-I don't think this speeds up the creation of the physics mask, I'm still pretty
-slow with that. This vastly speeds up the creation of the level preview image
-and the VRAM level bitmap. There is profiling by RAM/VRAM and by drawing mode
-of the tiles.
-
-Fixed an assert fail in the file listings used by the browser.
-
-Fixed #40: Misaligned image/physics for dark piece.
-I want to ask Clam before I close this issue.
-
-Culled the trampolines.
-
-0.2.16
-------
-
-2016-02-06
-
-Started the editor. It displays terrain and can be exited.
-There is much to do still with terrain handling, dark, and no-overwrite.
-
-0.2.15
-------
-
-2016-02-04
-
-Slightly simplified the keyboard code. I don't believe this fixes Nepster's
-stuck keys, but it might be worthwhile to ask Nepster nonetheless about it.
-
-0.2.14
-------
-
-2016-02-03
-
-Culled the per-level option to set a custom screen starting position.
-The game centers on the average position of all hatches. This accounts
-for arbitrary distributions of hatches on tori.
-
-0.2.13
-------
-
-2016-02-02
-
-Blocker -> walker: removed 1 frame of the anim, to mimick C++ behavior.
-There is an entire unused frame now in the blocker->walker anim now.
-
-Most things -> walker: Added a stand-still walker frame.
-
-Floater y speed should match C++ floater.
-
-0.2.12
-------
-
-2016-02-02
-
-Platformer should behave as in C++ Lix now: The first brick is 8 pixels long,
-all bricks while kneeling are 6 pixels long.
-
-0.2.11
-------
-
-2016-02-01
-
-Fixed left-facing bashers, they now ignore steel in the top 2 hi-res pixels.
-
-Floater assignments don't cancel the builder queue anymore.
-
-0.2.10
-------
-
-2016-01-31
-
-Disabled the extra console on Windows by linking with -L/subsystem:windows.
-
-Panel offers imploders.
-
-Listing the included level's name in the replay browser when the pointed-to
-level is not there. There's a bug left over for now anyway, see commit message.
-
-0.2.9
------
-
-2016-01-31
-
-Fixed 3 little bugs: Effects are correctly deleted after framestepping back.
-On deleting a replay, the browser highlights the next one correctly again.
-The file browser title bar shows the correct subdirectory on browser startup.
-
-0.2.8
------
-
-2016-01-31
-
-Implement #34: The game mimicks the level tree when saving replays.
-
-0.2.7
------
-
-2016-01-30
-
-Fix #35: Omitting drawing allowed bypassing traps.
-
-The lix eye coordinate is used to determine where trigger areas affect the
-lix. Before this fix, the eye coordinate was only updated on drawing the
-lix, becasue the fuse should be positioned there. This allowed to bypass
-traps with the head.
-
-Also refactored over 1,000 lines of game code, for a slightly better separation
-of physics model and controlling/drawing code.
-
-0.2.6
------
-
-2016-01-28
-
-Fixed crash during replay verification upon nuking.
-
-0.2.5
------
-
-2016-01-28
-
-Making shutdown much faster by not freeing any RAM or VRAM.
-This is standard for RAM, I have to read up on VRAM practises.
-
-Loading way less internal data for replay verification, speeding up the
-startup in that mode massively. We have to decide whether the spritesheet
-should affect physics. Right now, existence of frames and eye positions
-are meaningful for the physics.
-
-0.2.4
------
-
-2016-01-27
-
-Noninteractive Replay verification implemented.
-Run it from the command line, as in C++ Lix:
-bin/lix --verify=replays/solutions
-bin/lix --verify=replays/manual/myreplay.txt
-
-Fix: Don't save every possible replay into replays/network/.
-
-Refactoring: Renamed PerformedActivity to Job. Made graphic objects, lixes,
-and gadgets take a Topology on construction instead of a Torbit. This makes
-the design much more lightweight, we don't even have to generate a Map for the
-noninteractive Game.
-
-0.2.3
------
-
-2016-01-26
-
-Command-line argument `--fullscreen' forces fullscreen, no matter what the
-user settings are.
-
-The menu-OK hotkey always performs the most sensible action in the window
-during a singleplayer game: resume if it's not at the end, exit if won,
-restart if failed.
-
-Editor button in the singleplayer browser, but it doesn't do anything yet.
-
-0.2.2
------
-
-2016-01-25
-
-Fix #15: Basher always left relics. The basher mask is 2 pixels wider in D
-Lix. The relics check accounts for that now.
-
-We wanted to start the basher faster by 2 frames in C++ Lix, to make it
-more powerful. Right now, this is implemented in D Lix, because I used as
-many recommendations by geoo as I could. In light of the mask that reaches
-further by 2 pixels, we should discuss that again. The faster-starting
-basher is still OK, probably.
-
-0.2.1
------
-
-2016-01-25
-
-Implemented ask-for-username menu when no name is given. This prevents having
-no name set, and therefore being unable to save options.
-
-Covered the empty space for the spawnint buttons with the info bar for now.
-
-0.2.0
------
-
-2016-01-24
-
-This is a test release, designed to try singleplayer. Don't replace your
-existing installation of Lix with this D/A5 port yet. Keep it separate.
-
-Minim has designed several scaled-up versions of the internal graphics.
-They're visible whenever the game's resolution is at least 1.5 times as big
-as the old 640x480. Many thanks to Minim for this work!
-
-Levels and terrain graphics have been updated from C++ Lix.
-
-I'm cross-compiling to Windows from Linux now. Let me know of any problems.
-
-0.1.40
-------
-
-2016-01-23
-
-Top-left corner of map shows the floating 'R' while replaying. The FPS are
-shown on the panel right now, that's intended as a temporary solution only.
-
-Lix target info in the panel shows (RCF) for runners/climbers/floaters, and
-displays the number of bricks left for builders and platformers.
-
-Replays cancel on LMB anywhere, and on activating the nuke.
-
-Fix: With lixes returning equal priority, the closest one to the cursor is
-preferred for an assignment. Previous bug: the farthest one was preferred.
-Inverting priority doesn't invert this check, which is correct.
-
-0.1.39
-------
-
-2016-01-22
-
-Fix #32: With mouse speed different from 20, RMB-scrolling continued to
-move even after the mouse has stopped moving, as long as RMB was kept down.
-
-0.1.38
-------
-
-2016-01-22
-
-The panel info bar uses the correctly recolored garden icons. They have the
-correct shadow, according to the user's GUI color settings. (Even though, like
-all GUI parts, they aren't recolored until the next program start.)
-
-graphic.gralib has been refactored into a package for better readability.
-
-0.1.37
-------
-
-2016-01-21
-
-The replay browser can delete replays. It asks for confirmation with a message
-box and moves the highlighting to the next replay.
-
-During the game, the panel's info bar shows colored icons with numbers,
-instead of the previously text-only lix counts.
-
-0.1.36
-------
-
-2016-01-19
-
-Faster drawing code, by holding bitmaps. Empty skills don't show their hotkey.
-Fixed an assert fail on framestepping backwards across Phybit.needCol.
-
-0.1.35
-------
-
-2016-01-18
-
-Hatches marked as rotated in the level format spawn lemmings facing left.
-
-0.1.34
-------
-
-2016-01-18
-
-Replays are saved automatically on quitting a solved singleplayer level.
-This still holds for exiting the game with Shift+Esc immediately.
-No replay tree yet; replays are saved as manual/*.txt or solved/*.txt.
-
-0.1.33
-------
-
-2016-01-18
-
-Fix #12: Builders, platformers and cubers won't overwrite existing terrain.
-Fix #22: Terrain removers don't draw over steel pixels.
-
-Neither fix has affected physics. The remover visuals were particularly
-urgent, because they made steel transparent, even though they didn't remove
-the steel.
-
-These fixes are implemented with iteration over the lookup map, then issuing
-many copies of 1x1 rectangles to the graphics card. This is likely slower
-than hardware shaders that examine the existing pixel. It's faster than
-making lots of 1x1 sub-bitmaps on the heap, then destroying these again.
-
-(Miner hits steel on my 9.5-year-old laptop: 30 ms for 1x1 sub-bitmaps, 7 ms
-for 1x1 rectangles. Miner digging only through non-steel earth is much faster,
-about 0.1 ms, and therefore uses the previously existing drawing code.)
-
-The cuber sprite is transparent where it has been drawn to land already.
-Now, the player can guess much better when which pixels are added.
-I've added a few sparky lines to the cuber's last few frames.
-
-I have removed the tumbler assert. See comment on issue #21:
-https://github.com/SimonN/LixD/issues/21
-
-0.1.32
-------
-
-2016-01-17
-
-Fix #28: Empty skills are now re-selected if replenished after state loading.
-Fix #29: Drawing explosions properly now.
-
-I haven't tested implosions. They should be drawn behind the terrain anyway,
-or get a completely new animation.
-
-0.1.31
-------
-
-2016-01-16
-
-Basher ignores top two rows of his 18 rows for steel.
-
-Partial fix of #22: basher/miner cancels on hitting steel, but still takes
-out some of the graphics. Physics are correct.
-
-After class Game finishes, the correct browser is loaded, either singleplayer
-or replay. Browsers exit on RMB. No option to auto-save singleplayer replays
-that fail the level.
-
-0.1.30
-------
-
-2016-01-15
-
-Replay browser implemented. Loads replays, renders the correct level in the
-preview. Program main loop calls game with the correct level and replay file,
-the game plays back the correct replay. After viewing the replay, the program
-goes back to the singleplayer browser, not to the replay browser.
-
-Framestepping backwards is more performant over long distances, it omits
-unnecessary intermediate savestates that would be discarded anyway. More ideas:
-https://github.com/SimonN/LixD/issues/26
-
-Slightly better text shadow positioning. Removed demo and benchmark code.
-
-0.1.29
-------
-
-2016-01-12
-
-Level preview renders and scales the level correctly, instead of displaying
-only a colorful rectangle.
-
-User savestating is implemented including saving/loading, but it doesn't
-preserve effects, see issue #23.
-
-Fixed bug #13: Framestepping buttons execute continuously on holding RMB.
-
-0.1.28
-------
-
-Implemented the nuke.
-
-Implemented replay arrows upon skill assignments, which are correctly
-played back during framestepping and after restarting the level.
-
-Explosions, flying pixels, and flying terrain remover equipment isn't in yet.
-
-0.1.27
-------
-
-Miner implemented with geoo's anti-shock C++ code.
-
-Flingers and trampolines are implemented.
-
-0.1.26
-------
-
-2016-01-04
-
-Singleplayer browser remembers the most recently played level.
-
-Fixed bug #18: Assigning runner to a walker didn't make her run immediately.
-Fixed bug #20: Assigning exploder to builder crashed the game due to
-inability to return skills.
-
-Fixed climber horizontal alignment with the wall, the alignment was set
-correctly previously, but never reset correctly.
-
-Exploder with flinging is now implemented similar to how it was in C++.
-It should be checked for accuracy, once loading replays from disk is
-implemented.
-
-Fixed a crash on becoming tumbler. There is still an elusive assert fail
-triggerable in the tumbler function. That should be debugged once replays
-can be loaded from disk.
-
-0.1.25
-------
-
-2016-01-03
-
-Fixed bug #19: Tumbler selected only frames 2 or 3. Now, it selects its frame
-by angle of flight now, while not advancing too far in any single frame.
-https://github.com/SimonN/LixD/issues/19
-
-0.1.24
-------
-
-2016-01-02
-
-Fixed bug #10: Map drawing: Target area too large.
-https://github.com/SimonN/LixD/issues/10
-
-0.1.23
-------
-
-2016-01-01
-
-Options menu complete. Some options don't do anything yet, but are loaded/saved
-correctly nonetheless. Removed fullscreen resolution option. Switching users
-works. Switching Language works.
-
-I found the first bug of 2016 in the D compiler. ^_^
-
-0.1.22
-------
-
-2015-12-31
-
-Implemented GUI elements: Text entry, number picker, hotkey picker.
-In the options menu, implemented 2/3 hotkey pages, and the graphics page.
-Each hotkeyed button displays its hotkey in the bottom-right-hand corner.
-
-Added 0.5f to the djvuM offset (the main font's vertical position), now
-it looks great on 640x480, 800x600, 1280x1024, and 1400x1050.
-
-0.1.21
-------
-
-2015-12-29
-
-Implemented goals (exits), triggered traps, and dying outside of the level.
-Implemented the Esc-during-level menu and the end-of-level menu. No browser
-to save/view replays yet. Begun implementing the options menu.
-
-0.1.17
-------
-
-2015-12-17
-
-Bugfix: Blockers are now released upon walker assignment.
-
-0.1.16
-------
-
-2015-12-16
-
-All skills are implemented fully or mostly each, except for the miner,
-which is missing completely still. Effects, like arrows, flying dig hammers,
-and explosions, are missing.
-
-Skills behave mostly identical to C++ Lix. Some extremely arcane behavioral
-bugs were fixed while porting; report if things behave obviously strangely.
-Probably also report if things behave differently.
-
-Known differences: Exploder crater is 1 pixel smaller, diameter of 46 pixels
-instead of 47 pixels, but should be completely symmetrical now. Blocker
-doesn't get released on walker assignment; this fixed only in 0.1.17.
-
-0.1.12
-------
-
-2015-11-30
-
-Implemented builder and digger. The builder still draws on top of existing
-land, which is merely a visual bug, not a physics bug. The digger makes
-steel transparent, but the steel and terrain data inside the steel remains
-present for physics; again only a visual bug.
-
-0.1.5
------
-
-2015-11-19
-
-Map detects mouse on the land properly, at least with zoom == 1. Priority
-computation has been ported over. You can click lix and hear the assign
-sound being played if the assignment were legal. Assignments aren't in yet.
-
-0.1.4
------
-
-2015-11-15
-
-Walker, Faller and Ascender are implemented and should perform like their
-C++ versions. I would like to keep close to the C++ behavior for now.
-Savestates have been implemented for framestepping. Skill assignments
-are not possible yet.
-
-0.1.2
------
-
-2015-10-30
-
-Started implementing Lix skills. There will likely be no problem with them
-scanning the terrain from the lookupmap. I'm anxious about them writing to
-the terrain later on, when the more interesting skills get added.
-
-0.1.0
------
-
-2015-08-24
-
-First Windows build released on Lemmings Forums as a smoke test. It runs
-well for most people. Drawing has bad performance still with about 3,500
-animated gadgets, but is much better with about 200 than in the previous
-months.
-
-0.0.0
------
-
-2015-02-28
-
-Started development by porting the fundamental Lix graphic classes from
-Allegro 4.4 to Allegro 5 with the D Programming Language.
-
-C++ Lix
--------
-
-2006 to 2016
+Version history +=============== + +0.10.0 +------ + +2022-10-23 + +The server allows 0.9 and 0.10 in separate rooms. Decide with your friends +whether and when to update as a group to Lix 0.10. + +Both 0.9 and 0.10 players can chat with each other in the server's lobby. The +0.10 client will see both 0.9 and 0.10 rooms, and print a console error when +you attempt to join a 0.9 room. Since 0.9 has no such functionality, the +server will not show 0.10 rooms to 0.9 players at all; instead, the server +will write a chat message to those 0.9 players in the lobby if any 0.10 rooms +exist, suggesting to update to 0.10. + +Renamed the server executable from server to lixserv. + +Added handicap for multiplayer games. If you're too strong for your group, +consider to click the handicap icon with the unbalanced scales in the game +room. You can choose fewer initial lix, fewer skills, a spawn delay, fewer +points per lix saved, or any combination of these four handicap types. + +Fix #265: Allow simultaneous exiting. When you're playing a race map and reach +the exit at the same time as one or more different teams, all teams will score. +Before, only the red team would score. + +Fix #311: Top and bottom of maps are hollow. Terrain checks beyond those edges +will not behave as if the edge row's terrain extended infinitely. Now, only the +left and right edges of the level extend terrain in this way, not all four +edges. Staircases built to the deadly ceiling will kill the builder as before, +but now all following walkers will also leave the level and die. + +Adapted the singleplayer levels Cry for Me, Baywatch, and Walking in a Winter +Wonderland to work well with the hollow ceiling. + +Allow ability assignments (climber, floater, runner) to blockers. For now, +these assignments have low priority; we can raise the priority after +playtesting as a UI change without changing physics. + +Fix blocker dancing: Now, walkers (and other non-blockers) don't move when +they're both in a left-forcing blocker field and in a (different blocker's) +right-forcing blocker field. Before, walkers would move sideways through the +fields, turning each phyu. This looked like dancing. + +Fix #266: Grant batters extra backwards range against blockers. We keep +forward batter range vs. blockers as in 0.9, even though it's a lot of forward +range so the batter sprite needn't overlap the blocker to still bat the +blocker. Nobody has complained so far, and it's nice to bat blockers without +awkward precision. We keep the batter range against other activities. + +Half-fixed #397: The faller's distance in pixels fallen will not overflow +the 32-bit int anymore. I didn't fix the overflow for physics updates yet, you +can still play longer than what fits into the 32-bit int that counts physics +updates (4.5 years at normal speed, or 46 days at turbo-fast-forward). + +Moved the frogs' trigger areas downward by 1 pixel, so that the coordinates +are divisble by 2. No levels broke from this, not even Las Ranas Hermanas. + +Fix #410: Removed spike at top of both matt/beach/04 tiles (day and night). +Before, both tiles had identical masks; now, both tiles still have identical +masks, although the mask is different than before. There is no odd prong +at the top right of those tiles anymore. + +Fix #414: Fixed transparency/air pixels in earth.png from the Oriental set. +The top row of pixels was not fully transparent (that would be 0 % alpha); +it had an estimated 5 % alpha. Lix treats that as solid. Walkers were walking +over solid, nearly invisible pixels. Now, earth.png has full transparency +above the earth. No levels broke from this change. + +Fixed #322: Don't wrap during tile group construction: Now, when you load a +tile group on a small torus map, Lix will construct the group without wrongly +wrapping the group's elements before grouping. Only when Lix has fully +constructed the group tile, Lix will insert the group into the torus level. + + + +0.9.48 +------ + +2022-10-15 + +Don't cap level search results at 18, but show all results. Downside: Now, I +expect the search to be slow when you enter the first one-two letters. We'll +see what is worse and can still improve the search in the future. + +Always return to lobby after playing multiplayer with a single tribe, even +when that tribe hasn't fulfilled the hidden save requirement from +singleplayer. Lix has never properly supported 1-tribe multiplayer, but Lix +has never explicitly disallowed it either. + +The connection picker in the networking menu will now connect when you press +the generic Okay hotkey, in addition to the networking menu hotkey. + +Fixed option dialog's help text for the username option: All translations +explained ./data/user/yourname.txt, which is out of use since 2017. Now, +all translations explain ./user/options.sdl, the correct save file. + +Added FreeDesktop resources in ./data/desktop/ by Matthias Mailänder. Thanks! +I don't know yet where to put such resources (that aren't needed directly by +Lix while Lix is running) in the future; ./data/ is catch-all for now. + + +0.9.47 +------ + +2022-08-11 + +Add Swedish translation of the Lix user interface by Sanchez. Thanks! + +Fix #387: Update skill panel on tweak. Now, after shifting a skill assignment +forward or backward by a single frame in the replay tweaker, the skill panel +updates all skill buttons' counts accordingly. This matters when some skills +assignments have become illegal in the now-edited replay. + + + +0.9.46 +------ + +2022-06-25 + +Added geoo's new multiplayer maps, including the two asymmetric maps +Uphill Battle and Ivory Tower. Updated some of geoo's maps: +Fixed the drop straight into exit pit in Rescue Ranger Trolls. +Added block to default version of Ghetto Party. Minor other changes. + +Added Kingshadow's new multiplayer levels. Updated Kingshadow's levels, e.g., +added a missing trap to Straight & Curved 4p. + +Prevent infinite fallers at the sides of Flopsy's Rescue Plan 5p by +narrowing the map horizontally to the existing terrain. + +Renamed my old 2p map Rescue Rangers to Fry-Day to avoid a name collision with +the popular maps Rescue Ranger Trolls and Rescue Rangers Double Team. + +Fix #434: Always topology-wrap newly inserted pieces in the editor to avoid +running into some strict assertions in a debug build. There should have been +no bug here in release builds. Improved some assertion texts. + + + +0.9.45 +------ + +2022-05-21 + +Added many multiplayer levels by Flopsy, including Krypton Factor race. + +Added multiplayer levels by Kingshadow: Straight & Curved, +Marble Puzzle League, Spiral Spyfall, The Ascending Lix Scenario, +Tricky Breakthrough. + +Added tags ($TAG lines in levels) to several maps by Flopsy. + +Fix lagging client in a 10-hour netgame. This was an esoteric bug that never +surfaced in normal usage. When the same networking game (not netplay session +or server run, but really individual game; what happens after you click +"ready" in the lobby) ran for over 10 hours, the client would stop +updating at the normal speed of 15 physics updates per second, and instead run +at 10 frames per second. + +Make Lix compile with the newly released DMD 2.100.0. + +Mention FreeGameDev IRC channel #lix in the main readme. QuakeNet #lix +is still the development channel. I still recommend QuakeNet #lix to find +players, with FreeGameDev #lix as an alternative. + + + +0.9.44 +------ + +2022-03-03 + +Fix a memory-corrupting bug when sending chat messages. +I introduced this bug in 0.9.43. + +Fix #432: Don't resave watched multiplayer replays. The bug was: After the +replay, we entered the end-of-singleplayer dialog, and this dialog always +re-saved the watched replay as a new multiplayer replay. Now, we directly +return to the replay browser. The end-of-singleplayer dialog doesn't appear +and doesn't save a duplicate. + + + +0.9.43 +------ + +2022-03-29 + +Fix server-side permutation bug: In 0.9.42, the server re-rolled the +permutation of starting points for every player. This desynched the maps -- +unless you were only playing 2-player on perfectly symmetrical maps and never +used directional force. + +Don't send up to 300 nullbytes on short chat packets, send only the necessary +bytes. Keep max chat length at 300 UTF-8 code units. + +In the lobby, sort the list of players. First criterion: Players sort higher +than observers. Second criterion: Red sorts higher than orange, yellow, ... +Third criterion: Within each color, sort by player name. Ready/unready doesn't +affect sorting. It's easier now to see which/how many colors are in use, but +I'll leave open github issue #407: Color buttons in lobby, show current usage. + +Disable the expensive level-drawing unittest that also didn't clean up +its file in ./export/. + +macOS: Rely on pkg-config according to Allegro's documentation here: +https://github.com/liballeg/allegro5/blob/master/README_pkgconfig.txt +Before, on macOS ARM64, ld didn't find the Allegro libs even with pkg-confic +installed; see github issue #430. + +Remove obsolete build documentation ./doc/build/allegro5.txt and +cross-reference more clearly between other files in ./doc/build/. + + + +0.9.42 +------ + +2022-02-25 + +Don't focus the IP address entry field in the lobby when you select "connect +to somebody else". The focusing led to a bug that is now fixed: The field +would even be unhidden and focused whenever the lobby window reappeared after +a game, when you were already connected and in a room. + +Alleviated enet versioning mismatch: derelict-enet offers D bindings only for +enet 1.3.15, but the binaries of enet 1.3.16 or the current enet 1.3.17 have +differently-sized struct ENetPeer. Now, the Lix server computes the struct +size at runtime, allowing to run with all enet binaries >= 1.3.13. + +Fixed a theoretically possible, although unlikely, memory leak in networking. + +Fixed a linker warning about max!(int, int). Now, Lix's code itself generates +zero warnings again. + +Refactored the server-side networking code. Rooms carry their own logic. This +will help in the future to support version restrictions per room. + +Fixed DMD 64-bit build on all operating systems by avoiding obscure usercode +that crashes DMD. + +Linux build notes: Added workaround for LDC running out of stack space. You +can raise the stack size in the current shell with: ulimit -s 16384 + +Windows 32-bit build notes: Added DLL download for LDC-compatible 32-bit +libraries. + +Removed note from April 2020 in the readme about compilers before LDC 1.21; +compilers that old aren't prevalent anymore. + + + +0.9.41 +------ + +2022-01-06 + +Support tags in level files to help organize the multiplayer levels. Levels +can contain zero or more tags, one per line. Edit tags with a text editor; we +can work towards better editing support in Lix itself in the future. Example: +$TAG mytag + +The editor loads and saves tags, but doesn't yet display them anywhere and +doesn't offer to edit them. The level browsers don't print tags anywhere +either yet. + +The level search (in the singleplayer or multiplayer browser) will find +tags, but you have to enter the exact tag completely. Half-words that +appear inside tags do not find that tag. (I'm not yet sure if this behavior +is best; we can change it.) + + + +0.9.40 +------ + +2021-12-13 + +Added configurable hotkeys to play next levels from the end-of-singleplayer +screen. Default is F1 to replay the same level, Space to play the next level, +F to play the next unsolved level. There is no default hotkey to save the +replay manually; you can configure it. + +Hotkey reminders on buttons are printed in slightly darker text. They're +still brighter than the button itself, but darker than the main button text. + +Fix #417: The editor shows all teams per gadget. Example: 4 players A, B, C, D +and the map has 2 exits. Before 0.9.40, the editor printed on the exits: A, B. +Now, the editor print on the exits the outcome of distributing the 4 players +round-robin to the exits: AC, BD. + +Clarify tile group names in the documentation doc/formats/level.txt: Groups +can have any name, not necessarily only a number. Since I don't have support +in the program for copying tile groups between levels, you can at least rename +the groups in one level, e.g, by search-and-replace, then copy-paste them into +the second level, and have no name clashes. + +Fixed exits order in Tunnel of Love 6p. There were 7 exits in a 6-player map, +leading to apparent removal of a necessary exit in play. Now it has 6 exits. + +Added new multiplayer maps by Flopsy: The Lix and the Saboteurs 4p, 6p, 8p. + +Clarify documentation on tile groups in doc/format/level.txt: Tile groups +can have any names. When you copy tile groups by hand between levels, you +can first rename them with text replacement. + +Allow warnings when building Lix. This circumvents a warning in Phobos that +would otherwise abort the build: Duplicate symbol for max!(int, int).max, +_D3std9algorithm10comparison__T3maxTiTiZQjFNaNbNiNfiiZi. + + + +0.9.39 +------ + +2021-10-12 + +Added a dedicated end-of-singleplayer screen to show stats of the finished +attempt, to offer the immediate next level, and to offer the next unsolved +level in case the player has already solved the immediate next level. + +Darkened the labels "by" and "Goal:" in front of level nameplates in +the browser and in the end-of-level screen. They're now darker than the +normal text color. Title, author and goal stand out better in their normal +text color now. + +Re-added 3 levels -- Fill the Floor, Interval Training, Chaos Theory -- +to single/clam/Outtakes. Fill the Floor and Interval Training originally +needed variable spawn intervals during play; now, they employ floaters and +runners at fixed spawn intervals. Chaos Theory originally needed the nuke +to solve; now, it employs manually assigned exploders to fling. + +Updated the Lix source code to comply with the future meaning of the "in" +keyword. Updated Lix for package optional 1.3.0 instead of 0.6.3. + + + +0.9.38 +------ + +2021-06-27 + +Windowed mode at 1280x720 is now the default on running Lix for the very first +time. Before, the default was software fullscreen a.k.a. fullscreen window. + +Smaller widescreen resolutions such at 1280x720 that would barely fail to pick +2x for the skill panel icons (instead of the tiny 1x) will get slightly higher +panel to accomodate the better-looking 2x skill icons. + +Adjusted text vertical offset to vertically center text on buttons better at +1280x720. 1280x800 is still okay, text is now slightly too high here. The text +positioning is already full of hacks and compromises, anything better either +needs more hacks or a clean do-over. I feel like a 90's website designer. + +The main menu preserves the background's aspect ratio. To fill a screen that +is not 4:3, it crops the background's sides. + +Revenge of the Giant Crab (2p): Added decoration, walkers 10->30, overtime +30->90 seconds. + +Fix #424: Always show the level title in the lobby under the graphical preview, +even when we return from a netgame. + +Fix #423: De-duplicate the multiplayer level tree, as reported by Dullstar. +I had extra copies of Along the Fabrics of Your Clothing in the 8p directory. + +Updated Allegro DLLs to Allegro 5.2.7.1. You can check what Lix uses at +runtime with Lix's command-line argument: --allgero-version + +I build the 32-bit Windows release with LDC, not with DMD. LDC generates +faster-running machine code, exactly what we want for a release version. Tell +me in case you run into any problems. (64-bit Windows release has always been +built with LDC and it still is.) + +During compilation, Lix prints target architecture, OS, and compiler. + +Fix deprecations for DMD 2.097.0: In the source code, the "body" keyword is +finally deprecated. Converted the entire codebase to the "do" keyword in front +of function bodies. Added "static import std.stdio;" to access std.stdio.File +in Lix's file.filename.base. + +Documentation: src/icon/readme.txt has CRLF line endings, to be readable in +Windows Notepad. (Documentation should have CRLF endings, code should have LF +endings.) Removed note in the 32-bit DMD Windows build notes about NuGet libs, +DMD 32-bit doesn't play well with them. + +The build documentation points to new archives (lix-dlls-libs-dmd32.zip, +lix-dlls-libs-ldc32.zip, lix-dlls-libs-win64.zip) because the .lib files +can be incompatible between compilers. + + + +0.9.37 +------ + +2021-05-17 + +Added new maps from the multiplayer level contest. Thanks, +Dominator_101, Dullstar, Flopsy, geoo, IchoTolot, WillLem! +Includes Dominator_101's Rescue Rangers Double Team. + +Fixed flickering mouse cursor in the dialog that aborts a networking game. +Before, when you hovered over a lix in the background of the dialog, the +cursor would osciallte between open and closed. Now, the cursor stays closed +because you can't assign to lix during the dialog. + +Partly address #234: When you resize the map in the editor, the editor will +zoom out as far as it can to show you the entire map. It's still disorienting +to resize maps with large empty areas. + +Fix: When you verified a directory containing 0 replays in the GUI verifier, +the GUI verifier didn't print the line that you can now click to exit. Now +it prints that line. + +In the main menu, below the version number, print name of operating system and +32/64-bit for which the running version is built. + +The debugging build's user options defaults show the phyus/FPS. This only +matters when you run a debugging build without a user option file +user/options.sdl. The normal release build defaults to not showing phyus/FPS +until you enable it in the options menu. + +In dub.json, removed obsolete architecture restriction for Windows builds +with LDC. + +The Windows 64-bit build notes point to LDC's multilib release instead of to +the pure 64-bit release. You can use LDC's installer or LDC's 7z download. The +main difference is that LDC's lib/ dir is now called lib64/. Updated +http://www.lixgame.com/dow/lix-dlls-libs-win64.zip with the new directory name +lib64/ instead of lib/. + +Documented the level format in doc/formats/level.txt. Documented in the +Windows build notes doc/build/win*.txt where to get Allegro binaries from +NuGet. + + + +0.9.36 +------ + +2021-02-24 + +Add a whopping 66 multiplayer maps by Flopsy, including Perfect Situation. + +Fix #413: The new-level button in the editor will now ask for data loss +before clearing the map and clearing the undo buffer. You can click Save, +Discard, or Cancel. + +Reword the grid tooltip in the editor to clarify that it will affect future +moves; it will have no immediate effect on the current selection. +Before: "Grid 2: Rounds tiles' coordinates to multiples of 2." +Now: "Grid 2: Tiles will move in steps of 2 pixels." +Thanks to WillLem for feedback and wording. + +Support a hidden option (not in the options menu) that allows you to suppress +the editor's offset of copypasted tiles; this is (16,16) by default. +(Hidden options are hacks; for the long term, I need to visualize the copying +in place.) For now, to suppress the offset, put in your user/options.sdl: +editorCopiedTilesOffset 0 + +Mouse speed on Linux defaults to 10, not 20. This produces better results +on my machine when (fast movement frees mouse) is off, the default on Linux. +I haven't examined the speed on other systems yet. + +Update the build docs in doc/build/ about minimum compiler versions. + +In the doc/formats/ directory, document replay pointing, terrain lines in +levels, groups in levels. + + + +0.9.35 +------ + +2020-12-24 + +Undo/redo feature: The editor allows full undo and redo. Everything that is +visible in the editor's level display is undoable: Tile moves, z-reorderings, +additions, deletions, copying, rotations, mirroring, darkening, and changing +the level's height, width, wrappings, and background color. Pressing the +button to create a new level clears the undo history. Changing the level's +name, lix, save requirement, player count, or skillset isn't undoable, but +doesn't clear the undo history either; you can still undo earlier things. +This undo/redo feature has been in development for 7 months. + +Fix #406: The camera rounds correctly to determine the mouse coordinates +in the level. Before, with deep zoom, the mouse seemed to select things +1 pixel too far right and 1 pixel too far down. + +Fix #405: The editor reinitializes its camera when the level's torus wrapping +changes. This prevents graphical leftovers. + +Fixed compilation errors that appeared with DMD 2.094.2. + +Added build notes for a 64-bit Windows build with DMD. I encourage to use LDC +instead of DMD for release builds, but it's good to have more options. + + + +0.9.34 +------ + +2020-10-11 + +lemforum: Backroute fixes for 6 levels, mainly due to Wibble's backroutes: +Bipolar Maniac, initial lix 10->11, floaters 5->6. +Las Ranas Hermanas, raise frogs. +Triangle Inequality, eliminiate trivializing backroute. +One Lix Showdown, likely functional but slightly unelegant fix. +Some Like to Run, faster spawn interval, needs checking. +Skulls, Sludge and Steel - possible fix, needs checking. +(No fixes yet for Duality and Dream the impossible Dream.) + +Fix #404: The 64-bit Windows enet.dll crashed on hosting a networking game. +Now, I ship a new 64-bit enet.dll, version 1.3.12, that fixes the crash +on Windows, even though it still crashes in Wine. + +Support 32-bit Windows again: I publish 32-bit Windows binaries in the github +releases and added linker flags for the 32-bit Windows DMD build in dub.json. + +Updated D source libraries in dub.json: derelict-enet 4.1.0 -> 4.2.0, +taggedalgebraic 0.11.12 -> 0.11.18. This should have no visible effects. + +Credit minim in doc/thanks.txt for upscaling the GUI icons to 150%, 200%, 300% +of the C++ Lix icons for 640x480 = 100%. minim worked on these icons in 2016. + +Remove doc/oldwish.txt, it has become outdated. The text is preserved at: +https://www.lemmingsforums.net/index.php?topic=5132.0 +Let's file issues on github instead. + + + +0.9.33 +------ + +2020-08-09 + +Fix #402: With more than 18 assignments, the tweaker doesn't mispaint the +line for current physics update over the tape recorder buttons anymore. + +Fix #401: The tweaker erases the lines properly when two assignments change +order from tweaking. This fixes a mispainting of assignment lines. + +Fix #385: Before, with 18 or more assignments, the completely filled tweaker +always hid the assignments that came last in the replay. Now, the tweaker +hides assignments that are far away from the current physics update. Now, to +view early assignments, rewind the game. To see late assignments, forward the +game. + + + +0.9.32 +------ + +2020-08-01 + +Distribution: Lix has an openSUSE package for easy installation on openSUSE +Linux, thanks to Martin H.! This is our third Linux packaging after Debian and +Arch. Updated Lix's readme and documentation. + +Added Raymanni's crab trap at images/raymanni/crab.T.txt. There is an example +level, Crab Nightmare, in levels/misc/simon/crabnightmare.txt. + +Added Thirteen Little Skills (version 2), a level contest entry by Proxima. + +Every Lix for Herself (lemforum Lovely): Quicken the spawn interval, to +make it nicer to assign floaters to lix from the leftmost hatch. + +Multiplayer: Pressing twice the end-game key (Esc by default) doesn't +exit the match, but rather opens and cancels the exit-match dialog. +This avoids accidental exiting. To exit the match via keyboard, +press Esc, then the key to delete files/lose data. + +Replay tweaker: Add an extra line for the currently-shown physics update. + +Remove the unnecessary translatable string optionShowButtonHotkeys. Button +hotkeys are always shown, there is no option to disable that; this option was +removed in Lix 0.9.30. This removes the leftover language field, so that +data/language/*.txt doesn't warn on loading a language. + +Code: Fix deprecations according to DMD 2.093: Annotate ref-returning +functions with return + + + +0.9.31 +------ + +2020-04-23 + +Compiling yourself: On Windows, Lix requires LDC 1.21.0, LDC or newer to +compile out of the box. For LDC 1.20.1 or older, in Lix's dub.json file, you +must first change all appearances of "-entry:wmainCRTStartup" +with "-entry:mainCRTStartup". +See doc/build/win64.txt, section "Old LDC versions" for details. + +Compiling yourself: Increased version of dependency sdlang-d: 0.10.4 -> 0.10.6, +so that Lix still compiles with older versions of DMD, with the current stable +DMD 2.091.0, and with even newer versions. + +Fix #394: The editor now sorts tilesets alphabetically by the shown directory, +which is its second-level-nested directory in images/. +Old order: forest/, occult/, abstract/, construction/, ..., because forest and +occult were in images/amanda/ and abstract, construction were in images/geoo/. +New order: abstract/, beach/, bricks/, carnival/, construction/, ..., forest/, +..., occult/, ..., irrespective of the unshown author's name. + +Fixed a backroute in Ifo Island. The building at the bottom takes longer now. + + + +0.9.30 +------ + +2019-12-28 + +Fix #339: Imploder animation: Now, purple stars and vortexes circle around the +center, then get sucked into the center. The old animation was too slow +and subtle. + +Fix #388: Oblivion sound was too noisy and high-pitched. Replaced this +sound effect with meow-like voice acting that is not shrill. + +lemforum: ccexplore fixed a backroute in Brickout. + +Always print hotkeys on buttons' lower-right corner. Removed user option that +toggled whether hotkeys would be printed on buttons. + +Code: Remove body encounters from physics implementation; these happened at +(foot - 4), (foot - 8), (foot - 12). Always check foot encounters instead. +Before, only fire hazards checked for body encounters. Draw larger trigger +area (in the editor) for fire to compensate. No changes to file formats. No +changes to physics. + +Multiplayer maps: Added Down with Frogs by Flopsy. +Added remake of Humps (2-player map from 2010) using Lix's earth terrain. +Removed endless falls at the side of Honeypots. + + + +0.9.29 +------ + +2019-07-18 + +Observers in a networking game begin zoomed out; they see the entire map +without any extra input. + +In multiplayer, there are no more black boxes on the score graph after a nuke. +The black boxes obscured the bars of low-scoring players. The black boxes were +a hack solution before we had the nice score board when you mouse over the +score graph. Now, to see who nuked, mouse over the score graph. + +Partially fix #385: The replay tweaker displays only the first 18 plies +(= assignments or nukes) instead of painting the 19th, 20th, ... ply over the +remainder of the panel. In the long run, the tweaker needs a scrollbar. + +The tweaker explains itself with short text while it has no plies to show yet. +This is better than presenting the tweaker as a completely blank GUI widget. + +Fix #327: After you save a replay manually from the replay browser, the browser +reloads the directory and immediately shows the newly saved file. + +Fix: The splat ruler draws properly again when the mouse is on the map (i.e., +off the panel). 0.9.28 had a bug where the ruler would only draw while the +mouse was on the panel instead of on the land. + +Fix: In multiplayer battles, you can zoom again, even though there is no +GUI button to zoom. By default, zoom is bound to the mouse wheel. + +Fix #317: In a deeply nested directory hierarchy, the browsers' breadcrumb +navigation condenses some higher-level directories into a single button. +The top-level directory keeps its exclusive button at the very left. + +Removed a default keybinding duplication: Highlight goals and splat ruler were +both bound to Tab. Now, only the splat ruler is bound to Tab, highlight goals +has no default hotkey. + + + +0.9.28 +------ + +2019-07-07 + +Replay tweaker: A new feature for singleplayer puzzle solving. To open the +replay tweaker, click the filmstrip button in the panel. The tweaker allows +you to move and delete assignments deep in the replay without erasing +any other assignments. The tweaker is not perfect yet: I'm sure we'll find +many ways to improve it. + +Added 22 singleplayer levels from various level design contests. They are in +levels/single/misc/contests/. All levels are proven solvable. Some proofs may +be backroutes. For Key to the Sacred Kingdom, I chose its version 9, the +miniature, but extended it with decoration from its big version 7. Adapted +Long Division to 0.9 physics, it's fairer now and less nasty. + +Fix #364: If the enet DLL is missing, the networking lobby prints an error +message to its console. Before, the game would crash from an uncaught +exception. + +Code: Fix deprecations for dmd 2.087.0: Don't initialize immutable variables +in thread-local static this(), instead initialize them in shared static this(). +Lix should now compile warning-free. + + + +0.9.27 +------ + +2019-05-20 + +Fixed a backroute in The Bottomless Closet, a miniature by geoo. + +Fix #379: The editor avoids cloning tiles outside of the map. Usually, the +editor moves freshly-cloned tiles down-right by (16, 16). Sometimes, this +would move tiles out of the map. New behavior: If a cloned tile would move out +of the map, or even very close to the edge (= undercutting a safety margin of +16 pixels), all cloned tiles are moved up-left by (16, 16) instead. If neither +offset keeps all tiles on the map, we move down-right by (16, 16) and accept +that some are outside. In torus directions, tiles are always on the map within +the safety margin. + +Fix #380: While you change the background color in the editor's map dialog, +the level behind the dialog previews your chosen color in real time. When +you press OK, the color stays; when you press Cancel, the color reverts. + +Code: Fixed deprecations, now Lix compiles warning-free on dmd 2.086.0. + +Code: Removed module constructors and moved construction of user options +into al_run_main. We hope to troubleshoot a segfault on macOS with this, +github issue #381. Renamed DisplayTryMode to ScreenChoice. + + + +0.9.26 +------ + +2019-04-24 + +Added 24 singleplayer levels in misc/lemforum-outtakes. These levels were +once part of out flagship pack lemforum, but have been taken out over time. +They're all proven solvable with 0.9 physics. + +Fixed #301: Separated the ping-exit functionality from show-splat-ruler. +In multiplayer, there are now two buttons. Both have much clearer icons +(an exit with beams, a ruler) instead of the generic cool shades. + +Fixed #293: Savestate icon, don't use floppy disk (means: write file). +Now, the icon to save state is a flag, and the icon to load state is +a flag with an arrow pointing towards it. Once a savestate exists, +the load icon (default hotkey F2) is to the left of the save icon +(default hotkey F3), to have their default hotkeys (F2, F3) in ascending +order. (Before, load appeared to the right of save). + +Renamed the level folder "Community Collab Project" to "Collab" +for concise breadcrumb navigation captions, preventing abbreviation. + +Attributed correct authors (Rubix/Simon, Simon/Wuzzy) on two tutorials. + +Rewrote screen options functions, to rule out a possible source of a crash +on macOS (no more try-return-catch, always return outside of try/catch). +See issue #381: macOS 10.14: Black screen then crash. + +Rewrote internal graphics code to get already-cached images more efficiently. + + + +0.9.25 +------ + +2019-02-04 + +Added 44 singleplayer levels in levels/single/misc: 17 miniatures by Simon and +geoo, 13 levels by mobius (originally called leftovers and non-tutorials), 10 +levels by Nessy, 4 non-miniatures by Simon. These levels were released around +2017 and 2018 on Lemmings Forums and are now part of the main download. + +Added 15 tutorials for basic skill usage. A new Lix installation will still +highlight Any Way You Want as first level, not the tutorials. + +Eased the 2-player multiplayer map Anything Can Work: Removed buzzsaws, added +terrain to allow a downwards route without preparatory platforming above exits. + +Fixed deprecations (silent conversion from size_t to int in loop indices) +to allow a warning-free building with the current compiler DMD 2.084. + +Refactored code for clarity: Alcol constructors -> al_map_rgba_f, magic +numbers in EffectManager -> enums. Split ScoreBoard into two classes and +moved to the GUI code, to decouple from gameplay. + + + +0.9.24 +------ + +2019-01-03 + +Work around bug #372 (garbled exit markers): Removed alpha channel from +data/images/goalmark.I.png. Arrow's white overlay is entirely opaque. Made +overlay line thinner to compensate for the fully-opaque overlay. This should +avoid #372 to trigger at all. Everything should recolor properly. + +Multiplayer directories: Sort authors with easier multiplayer maps. +Easy means that it's easy to save lix against opponents that do nothing. +Reason: New players click on the first-listed authors very often. +This is not an ideal permanent solution, but we have needed something like +this quickly for the Debian 10 release. + +New multiplayer maps by Flopsy: Cascade Squared (4p, 6p, 8p) and +The Storeroom (6p, 8p). + +Fix bug with _order.X.txt files: When you go to a dir A with order file, then +go to a different dir B without order file but with files named like those in +A, the files in B are now sorted alphabetically, not wrongly by the order +file from A. + +The options file ./user/options.sdl contains a comment explaining that +screenMode 0 is windowed, 1 is software fullscreen, 2 is hardware fullscreen. + + + +0.9.23 +------ + +2018-12-09 + +xmas2018: Fixed backroutes in Home Time for Santa, Snow Cat Love, +Decorate the Tree, Past the Xmas Tree. + +ClamLix: Time is Running Out, decorated the steel with a steel hourglass. + +Fix #371: Miners throw a pickaxe again when they cancel on steel. Diggers +won't throw pickaxes anymore by mistake when they cancel on steel. + +Added a manpage for Linux package maintainers: doc/lix.6, thanks to tarzeau. + + + +0.9.22 +------ + +2018-11-30 + +Include xmas2018: a new singleplayer pack with 24 holiday-themed levels. + +Fix #350: In singleplayer, the splat ruler button tooltip claimed falsely +that this button also pings hatches and exits, but it does that only in +multiplayer. Fixed this tooltip. (Issue #301 remains: In multiplayer, this +button should be functionally split into two buttons.) + +Support 64-bit Windows builds with LDC >= 1.13.0-beta2. I encourage all +Windows users to choose the 64-bit build over the 32-bit build, hoping to +avoid the out-of-RAM crashes on large maps. + +Binary downloads are now hosted on github, not on Lix's homepage. + +Binary download archives carry a version number in their filename and unpacked +Lix directory. With self-contained Lix (i.e., not installed system-wide via a +Linux package manager), you should still update existing self-contained Lix as +usual by copying your user files, custom levels, and replays from the old +directory into the new. + +Fix #369: When you build from source and choose a debugging version instead +of a release version, Lix will start windowed by default, not with software +fullscreen. User options can override this as usual. + +Updated the DAllegro5 bindings to 4.0.4+5.2.0 and removed Lix's allegro-color +dependency on all platforms. + +Many refactorings in the source code for physics updates. No physics changes. +This will be useful in case I manage efficient skill blueprints a.k.a. skill +shadows. + + + +0.9.21 +------ + +2018-10-19 + +Fix #313: Options and trophies (level checkmarks) are now saved in ./user/, +not in ./data/user/yourname.txt. In the future, whenever you update Lix by +hand, copy the folder user/ into the new installation. Old settings and +trophies are imported: To update to 0.9.21, you should still copy +./data/config.txt and ./data/user/yourname.txt to let Lix 0.9.21 import your +old settings and write them to ./user/.) + +Fix #255: Trophies (level checkmarks) are associated to levels by the levels' +basename (the part of the filename that is independent from directories), +author, and English title. Trophies are not associated to full level path +anymore, even though they remember that path as extra information. This means +that you keep your trophy even when its level moves to a different rank +directory. + +lemforum: Feel the Pressure: Hopeless -> Daunting. This Is a Stickup: Daunting +-> Vicious. Evacuate the Sinking Ship: Vicious -> Hopeless. Little Miner +Puzzle 1: Adjusted height of one bar to avoid accidental splatting while a +miner is working. The Borderland: Added buzzsaw that This Lix Is Your Lix +(repeat) already had. + +Raymanni's Holiday exit: Enlarged sprite at the bottom to look better when +the exit sits on bumpy terrain. + +Fix #359: When you have lost singleplayer and the game tells you to framestep +back or abort, you can doubleclick the nuke to quit. + +Fix #323: Wide, flat torus maps start with less default zoom (you see a larger +portion of the level). + +Editor: All steel is offered in a single flat list. I've sorted the more +commonly used tiles to the top of this list. + +Editor: Removed an invisible extra button that 0.9.20 mistakenly generated +and that sometimes became visible when you hovered over the 3 rightmost text +buttons in the panel and held the mouse key down. + +Fix #363: Editor: The terrain browser does not offer the 3 directories +./authorName/steel/, to de-clutter the tileset list. + +Fix #355: Multiplayer: Exit markers are solid, colorful arrows instead of +large lixes. They still go behind the terrain. The outline of your own arrow +is drawn semi-transparent over the terrain. + +The networking menu offers to host a game (a server will run within Lix) and +offers to change the port for listening or connecting. + +Fix #358: In a networking room, the current level title is printed under the +preview image, above the chat. + +License: During the CC0 public domain waiver, I mention explicitly that the +levels are CC0. + +Server executable understands the switch --port <number> to listen on a +different port. + +Server is now its own dub package in ./src/server/ in the Lix repository. +Documented how to build and run standalone server executable in Lix's main +README.md. + +Code: I refactored Hatch to contain Graphic instead of to inherit from +Graphic. Hatches remember which players spawn from them. Physics remain +identical. (I tested a lot manually, no automatic test; I still lack physics +unittests in general.) + +Git users: I version-control dub.selections.json now. If you get merge issues, +delete your local copy and then pull. + + + +0.9.20 +------ + +2018-09-23 + +Backroute fixes in Continuum Hypothesis and Inside the Fourth Wall. +Fewer lixes in Undercutting the Competition. + +Reshaded rectangular blocks in matt/marble: Shading at the left and top should +only become lighter towards the outside. Before, the blocks looked flattened. +Diagonal blocks in matt/marble still have this issue. + +Fix #349: Mirror button icon shows horizontal mirroring with two triangles, +not vertical mirroring with an upside-down tree anymore. + +Partially fix #348: Custom grid button shows size of current custom grid. + +Center images on BitmapButtons more accurately. + +Removed unused UI graphics: Spawn interval graphic, hint selection graphic, +editor hatch direction graphic that is shown with a unicode arrow instead. + +Fix #356: When you specify -w or --resol=XXXxYYY on the command line, +loading/switching the user configuration will not override the command line's +resolution in this session. + +Reorganized the trophy area of the singleplayer browser: Don't draw last +game's results over the personal best of lix saved. + +dub package Optional: I use Optional 0.6.3 now instead of Optional 0.4.x. This +requires a recent compiler (I know that 2.082 or newer works) when you build +Lix yourself. + + + +0.9.19 +------ + +2018-08-10 + +RepForLev: For a highlighted level in the singleplayer browser, you can enter +the new dialog RepForLev that will offer all replays that start with the +basename of the highlit level. (If the level file is "mylevel.txt", RepForLev +will offer all replays that start with "mylevel-".) + +lemforum, some backroute fixes: Get Hype, remove flinging backroute. Toccata, +use Proxima's backroute fix against a solution that takes 30 minutes. Striking +News, add water pit at the top, different cactus placement at the bottom. +Behind Bars, save 8/10. + +Multiplayer maps: Flopsy's shorter Block Chaos, Harden the Paint. Raymanni's +Rainbow Road, The Frog-Hotel, Follow the Thread. + +Fix #354: Prevent the one-pixel-thick line of graphical garbage at the right +edge of the map. This line occurred with some noninteger zooms during +play/editor. + +Fix #344: Guideline pieces are selectable from the terrain browser again. +Depth-2-directories (e.g., "geoo/construction/") are listed as only the second +directory ("construction/") in the root selection of tile browser. + + + +0.9.18 +------ + +2018-07-01 + +lemforum: Behind Bars 7/10->8/12 to remove backroute. One Step Off +80/80->20/20. Segmentation Fault 20/40->21/40. Merge Sort, hollow terrain +to remove red herrings. Rhapsody in Blue, aligned traps to terrain +(removes 1-pixel gaps). Removed obviously unassignable +imploders/exploders/cubers according to save requirement. + +Rubix's levels: Lost Underground, cap reachable ceiling more clearly. +Removed obviously unassignable imploders/exploders/cubers. + +Tiles: Raymanni's improved carnival exit, cleaner large proxima/tiles/orange2. + +Fix #23: Don't show obsolete replay arrows/pickaxes/sounds when you +framestep after a quickload. + +Fix #346: When you watch a replay, interrupt, and win, the solution +replay is auto-saved. + +Singleplayer exits the level after nuking instead of prompting to +framestep back. + +On display creation, the mouse cursor centers on the Lix window. This prevents +edge scrolling when watching replays from the command line. + +Fix #340: For translations, use format strings (containing %s, %d with runtime +checks) instead of several concatenated translated strings. + +Fix #341: Translate the output of the replay verifier. + +Fix #342: Better grammar, fewer Denglish (English words in the German +translation even though good German words exist), add umlauts. Thanks to +Wuzzy for this patch! + +In displayed strings, use typographical quotation marks. In file/shell output, +use double quotes both to begin and end instead of asymmetric quotes. + + + +0.9.17 +------ + +2018-05-27 + +lemforum/Hopeless: Swapped Bipolar Maniac (now 3rd) and Systematic Separation +(now 10th) in Hopeless. + +Score board in multiplayer: Hover over the score graph to see player names, +exact lix counts, and exact number of scored points, in a large tooltip. + +Fix #319: The terrain/steel browsers offer all dirs of depth 2 in images/ at +once. After navigating to such a depth-2-dir, the terrain/steel browsers offer +in one flat list all tiles recursively found in that dir. + +Don't save other people's winning replays as your own checkmarks. Correctly +save checkmarks after playing levels passed to Lix on the command line. + +On loading a replay with zero players, don't crash anymore, instead create one +player with the singleplayer color. + +The Windows download contains Allegro 5.2.4 DLLs. These newer DLLs fix any +remaining chance that Lix starts without sound when starting Lix from the +Windows 8/10 quicklaunch bar. + +Lix has a new command-line switch --allegro-version to print the version +number of the dynamically-loaded Allegro DLLs. + +Build system: Lix builds with both the most recent DMD 2.080 and with the +better-optimizing LDC. I added allegro_color to the link libs. I require D +Allegro 5 bindings of version >= 4.0.2 to fix a stack overflow in Debian +LDC-built Lix. + +0.9.16 +------ + +2018-05-01 + +lemforum: Removed backroutes in We're in This One Together (added steel) +and From the Other Side (larger fire pit). + +Fix #328: Automatic replays are saved after multiplayer games again. + +Fix: Watching a multiplayer replay will never save another replay. + +I credit our contributors in doc/thanks.txt. Let me know if anything there +is inaccurate. + +0.9.15 +------ + +2018-04-20 + +Behind You, Down Among the Dead Lix: Removed backroutes. Added Twelve-Bar +Blues, a new multiplayer map by Proxima. + +Fix #326: In the editor, clicking steel, then opening the terrain browser +won't override the current terrain directory any more. You can still click on +a regular terrain piece to open the terrain browser on its directory. + +Fix #325: The default steel directory is images/geoo/steel/. + +Fix #332: Tile groups will always be saved with relative coordinates that +are all >= 0, even when some of their parts have transparent boundaries. +(There is a bug left behind where tile groups with coordinates < 0 are loaded +wrongly on torus maps, but changing the interpretation of a level file affects +physics; thus, that second fix is postponed.) + +0.9.14 +------ + +2018-04-03 + +Waltz in C Sharp Miner, removed backroute. + +Moved Arty's race maps (Heart of a Gambler, one map per player count, 2-8 +players) from network/*p/arty to network/races/arty. + +Fix #314, #315, #318: When you win a singleplayer game or win an edited +replay, either browser shows the game's stats under the preview and saves the +replay automatically. (These bugs were regressions after I removed the +end-of-singleplayer dialog.) + +Fix: The command-line verifier generates checkmarks again. + +0.9.13 +------ + +2018-03-14 + +Close to the Edge, save 46/50->16/20. Building Block Maze, SI 32->50. The +Abominable Snowlix, save 15/30->5/10. Block Chaos, walkers 20->60, overtime +1:00->2:00. + +Fix #312: Splat ruler option is now public. Choose one of three ruler designs. +Default is the 3-bar ruler with huge snap distance from 0.9.5 to 0.9.10. + +Fix #308: Include Zanzindorf's lasers. + +Fix #305: Autosave 4 pairs of savestates, not 3, on most maps, for performant +framestepping/multiplayer. + +Fix #55: Remove dialog on winning singleplayer. You go to the browser +immediately after winning the level. Game pauses after losing, allowing you to +framestep backwards or restart with the regular commands. I hope this +satisfies the desire for a next-level button in the old dialog. + +Fix #302: Remove end-of-multiplayer dialog. You go to the lobby immediately +after finishing a networking game. The lobby console shows the result, but I +plan to show better statistics here. This fixes the bug where observers were +shown instead of players in the end-of-multiplayer dialog. + +Fix #309: Show indexing progress of the search dialog. I still don't cache the +search results; maybe the indexing feels still too slow on older computers +even when its progress is shown. + +When you show FPS and Phyus, I don't display VRAM anymore. Reason: Once VRAM +got cached on huge maps, the Lix-estimated VRAM usage didn't match the real +VRAM usage anyway. + +New build dependency, Optional type. This is a source-only dependency and is +automatically fetched by dub. + +Batch file to build Lix on Windows conveniently by double-clicking. + +0.9.12 +------ + +2018-02-23 + +Multiplayer maps: Arty's Let Them Eat Cake (rename of Feaster Island), +Layer of Hell, Flopsy's Block Chaos, Nessy's Abandoned Sanctuaries. + +lemforum: Some Cunning/Daunting levels reordered. This Lix, extra sawblade. +Bipolar Maniac, imploders 5->1 because the level is lose-1. Tribute to +Benny Hill, imploders 1->0. + +On previewing/editing maps with more than 2.8 x 2^20 pixels (about 2.8 +million pixels), Lix warns that these maps will likely crash. You can still +play and edit these maps normally. The warning is not perfect, but OK for now; +any real fix will be difficult. + +Fix #229: Tooltips for all skills and all buttons during play. + +Fix #306: `--fullscreen' command-line switch works again. + +Allow the command-line parameter `--' to terminate switches. Subsequet +arguments will be interpreted as files even if they look like switches. + +Linking on Linux: In dub.json, specify only `allegro-5', not `allegro', and +let dub use pkg-config to deduce linker flags (typically -lallegro). + + +0.9.11 +------ + +2018-02-07 + +New multiplayer maps: Schism 2p by me, Team Attack 2p by Yung. Fixed exit +order in Pave the Way 4p. + +Implemented geoo's design for a splat ruler with only two bars. Both bars snap +to terrain up to 16 pixels away. Hidden user option SPLAT_RULER_DESIGN in the +config file can be set to 0 for this ruler, or to 1 or 2 for the three-pronged +rulers from Lix 0.9.4 or 0.9.10. + +Fix #220: On losing network connection, don't crash, but go back to the +Connect screen of the lobby. + +Fix #297: In the singleplayer browser, removed the gap between the delete and +back buttons. + +Fix #298: Option to invert the hold-to-scroll direction. + +Fix #292: geoo/construction/Laser* flashes more clearly, to distinguish the +lasers frmo red abstract pipes. + +Fix #303: Print names of missing tiles on the level preview. + +Previews in level browsers downscale the level more smoothly. + +Mitigate #296 (RAM balloons to 1.5 GB on Windows) without solving it: +Auto-savestate every 12 frames, not every 10, and keep 3 pairs, not 4. + +Option to display torus seams is off by default. + +In data/transl/*.txt, merged option titles and option descriptions in the same +line per option, instead of having two lines per option. + +0.9.10 +------ + +2018-01-30 + +Updated Arty's multiplayer maps, removed Knock 'em Dead, added Feaster Islands. + +Fix #294: Loading manual savestates could occasionally desync physics. +This fix is covered with an automatic regression test. + +Fix #295: Stateload won't preserve the future when you wish to discard +replay actions undone with framestepping. Covered with an automatic +regression test. + +Fix #250: Permanent abilities appear as little icons over your own lix. + +Slightly reduced Lix's hunger for RAM by running the garbage collection +more often. I still have to debug this gigantic hunger for RAM properly. +On large maps, Lix might want 1.5 GB on Windows and 500 MB on Linux. + +Hardcoded the first miner eye position for the fuse and ability icons. Reason: +This miner pose covers the eye with her arm. + +Don't paint over the level search button when the directory list updates. + +Translated the search string "Search for filenames or level titles". + +Removed the unused multiplayer jingles from data/sound/. + +Editor shows coordinates only in decimal, not in hex. The map size dialog +still displays the size both in decimal and in hex. + +Editor doesn't count exits in singleplayer maps, to improve the visible +difference between singleplayer and multiplayer maps. + +Documented SiegeLord's batch file for the Windows build. Discourage installing +extra software on Windows merely to build 64-bit. 32-bit Lix runs fine and +is easier to build. + +0.9.9 +----- + +2018-01-22 + +Added Arty's multiplayer maps: Knock 'em Dead, Pyramid Scheme, Pandemonium +Box. Modified Rubix's Access Denied to make it completely symmetric. + +Fix #289: Replays that didn't point to levels, or even empty text files, +crashed the replay browser on highlight. + +Fix #290: Fixed crash when running Lix from the quicklaunch bar on Windows. +Allegro 5 has an issue where the Windows sound driver depends on an active +display, and I assumed that the sound initialization would always succeed. +I've reordered my initializations and display an error message, not crash, in +case the sound driver still fails to initialize, which should be rare. + +Fix #288: Added optional program-wide hotkey to take a screenshot of the +entire Lix window, saved in the export directory. No default keybinding. +Plays disksave.ogg on screenshotting. + +Fix #291: Replay verifier called from the replay browser won't interrupt +the main menu music. + +Fix #286: The player list in the multiplayer lobby won't draw over other parts +of the window. + +The splat ruler isn't drawn while the mouse hovers over the panel. All three +colored bars of the ruler are drawn at 80 % opacity, not 100 %, to keep +terrain details visible behind. Activating splat ruler/exit ping doesn't play +a sound effect anymore. + +Drew sunglasses icon and multiplayer nuke icon at scale 200 %. + +Savestates during game play clock.ogg, not disksave.ogg, because they aren't +written to disk. disksave.ogg is always played quietly, not loudly, because +the sound file is extremely loud already. + +0.9.8 +----- + +2018-01-15 + +lemforum: Lix Cannon, cover confusing gaps that were solid. Pipe Dream, remove +miners, improve lower route. Snow Jump, raise two pieces slightly. + +Fix #285: Solving singleplayer replays are auto-terminated with a nuke if you +leave a game with ESC before the game is over. + +Fix #281: Explain airclick to cancel replays in a tooltip. + +When you scroll at the screen edge, a tooltip explains hold-to-scroll. + +Fix #279: With music enabled, but no music installed, the main menu explains +how to download the music archive from the Lix website. Text will appear in +the corner of the screen, not as a dialog box. + +Fix: Sound volume setting had no effect. + +Editor shows mouse coordinates in the panel, in addition to the piece +coordinates that it has already shown before. + +TAB is default binding for the splat ruler/exit ping. If you keep your old +user file, this change will not affect your bindings. + +Removed unused hotkey to cycle spectated teams. When I have a better ingame +score board with player names, I'll think about how to implement this. + +Removed unused strings from translation files in data/transl/. Each file lost +over 60 strings, mostly leftovers from C++ Lix. + +0.9.7 +----- + +2018-01-03 + +lemforum: Path to Mahiman, fixed backroute by early bashing. + +ClamLix: Swapped Inside the Fourth Wall with Urban Ledge-End. Applied mobius's +fix to Square Squabble from 2017-12-28. + +Removed silent tile replacements, e.g., `moon.D' to `moon'. I've fixed about +20 levels that still used outdated tile names. I will make a pull request +against NepsterLix with these replacements. + +Fix #276: Replay browser prints the pointed-to filename, to avoid confusion +what the pointedTo button does. I'd like to improve level-to-replay-matching +further. + +Fix #278: Don't link against allegro_main on any system. Linking against that +produced warnings on Windows and program-terminating errors during dynamic +library loading on Mac. + +Fix #114: Don't index tiles at program start, allow adding tiles to the tree +while Lix is running. This made the code far simpler. You still cannot change +tiles while Lix is running because the file is read only once, then cached. + +Fix #275: When a basher ran out of earth to bash, some basher code ran on +walker memory, failing asserts in debugging mode. I don't believe this fix +changes physics, therefore no major version number bump. + +Fix #41: Options menu offers hardware fullscreen. This shouldn't be used +normally, only when software fullscreen brings problems. + +Fix #238: Lobby uses radio buttons for choice of server. We hide the manual +address field when central server is chosen. + +Fix: The level-to-image exporter crashed when called from the command line. + +Document where to download music in the main readme, in the detailed build +notes, and in the notes for package maintainers. + +I ship the Windows binaries with newer Allegro libraries, their version is +now 5.2.3. Any Allegro 5.2.x should work well with Lix. + +0.9.6 +----- + +2017-12-26 + +Added Raymanni's Holiday tileset. Thanks so much for this beautiful set! + +Added multiplayer maps by IchoTolot. Removed my worst old multiplayer maps. + +Rubix's singleplayer, reduced initial lix in 3 levels to combat long waits +when route is finished. Cropped small lemforum/Quirky maps with repeating +decoration from 640x400 to 640x320. Compression Method 2 has a 2nd hatch. + +Fix #251: geoo/construction/pillar_* looks hexagonal instead of round, and +looks more like concrete, to avoid confusion with steel. + +Fix #79: geoo/construction/squisher.T has a flashing exclamation sign and +looks different from pillar terrain. It's now clearer where terrain ends and +where the trap begins. + +Fix #253: Level search matches the level author, too, not merely the level's +name and path. + +Fix #222: When you enter a different windowed resolution, (un)check +windowed/fullscreen, or load a user config file, the program immediately +switches to the desired resolution and screen mode. You don't have to exit and +restart. + +Fix #249: Editor, rectangle dragging: Prefer to drag 1xN rectangles instead of +(full-width)xN on torus maps. + +Fix #219: On torus maps, editor draws hatch/goal annotations properly across +torus seams. + +Fix: Restarting the level from the end-of-level dialog resets speed to normal. + +Fix #226: Enforce datafiles (= on missing important files, print & log error +even in release mode), don't assert for datafiles + +Log unplayable music only once per file per program start. + +0.9.5 +----- + +2017-12-13 + +In NepsterLix/Moon, 10 levels got backroute fixes on 2017-11-30. All levels +are proven solvable. + +In ClamLix/Outtakes, beautified Korean Border Crossing (version from +2017-12-13) and Abridged Version v1. All levels remain solvable. + +Merged multiplayer maps by Arty: Blow Your Top, Shaft of Chaos, Showdown at +Chainsaw Gap. + +Distinguished the pillars in matt/bricks from steel by yellow-brown color. +Still to do: Distinguish pillars in geoo/construction from steel. + +Fix #272: Always draw splat ruler in front of terrain. Draw splat ruler even +when it doesn't snap to anything. + +Fix #263, fix #269: Network game computes correct overtime when somebody +nukes before saving lix, then saves some. This fixes crashes from assertion +failures in the debugging build. + +Fix #209: The replay verifier called from the replay browser creates +checkmarks when it finds solving replays whose player name matches the user's +name. Command-line verification doesn't create any checkmarks. + +Fix #271: Verifier distinguishes normal failures without lix left from +failures from running more than 5 minutes after the final skill assignment. + +Fix #157: Playing back winning replays on a wrong level version turned your +correct checkmarks into '?!'. Now, replays will only affect checkmarks when +the played level matches exactly. + +Fix #260: When you interrupt or modify a replay, then save it, your name +replaces the old player name in the replay. + +Better key names on Windows when remapping hotkeys. If you still see keycode +numbers instead of a proper key name, please tell me key and number. + +Translated leftover options to German: Sound and music volume, fast movement +frees mouse, unpause on skill assignment. + +Fixed links in the build instructions that were still pointing to asdfasdf; +they now point to lixgame.com. + + +0.9.4 +----- + +2017-11-30 + +ClamLix is included, a singleplayer pack with 113 levels. All levels are +proven solvable. Thanks, Clam, Forestidia, and mobius! + +New multiplayer maps by Arty, Flopsy, and Yung. In particular, more maps for 7 +and 8 players. Some fixes to multiplayer maps by geoo and Steve. + +lemforum's Eye of the Needle: removed a backroute. Rubix's Holly Jingle: save +99/99 -> save 10/10. + +Restarting a level disables fast-forward or turbo-fast-forward. + +Fix #267: Allow multiple hotkeys per skill. + +Fix #257: When A's lix enters B's exit, B will hear the saving sound. + +Splat ruler. In multiplayer, the splat ruler is combined with the +exit-highlighting-function. Needs feedback. + +Score graph marks players who nuked with black-and-white squares. Ideally, I +find a better solution. + +Fix: Disable editor grid-size hotkey whenever an editor window is open. + +Fixed an assertion failure in the debugging build when dragging quickly in the +editor. + +Fix #258: The multiplayer server crashed when somebody left, then the +remaining players started a game. Still needs field testing. + +0.9.3 +----- + +2017-11-18 + +Music: Download http://www.lixgame.com/dow/lix-music.zip and extract +into your Lix root dir. You can create additional subfolders in ./music/ +and put your own tracks inside -- ideally as .ogg, .mod, .xm, .it, or .s3m. +Lix will play a random track per level. + +Fix #216: The manual savestate function will now always overwrite the +savestate replay with the current replay. + +Improved the mouse handling on Windows, there should be fewer odd jumps +of Lix's cursor over half the game window. + +When you restart a level during pause, the game unpauses. + +0.9.2 +----- + +2017-10-22 + +Rubix reordered his singleplayer levels and added the Community Collab +Project: 4 levels in single/rubix/Extras. + +lemforum: Path to Mahiman, removed indirect jump backroute. Runaround up to +Cunning, Raindow Road down to Quirky. + +Fix #252: Level search queries won't match the prefix 'levels/' in the +filenames because all levels would match. + +Fix #256: When you export levels to images or save replays manually, the +button replacement will not say "done", but instead tell you the filename. + +Fix #254: When you run out of VRAM during a level, the game won't crash, but +instead stop making internal savestates. This won't display a warning, it will +merely log. Recalculation due to incoming network packets will take longer, +but that's better than crashing. The game remains VRAM-hungry and this +solution is not ideal. + +0.9.1 +----- + +2017-10-05 + +Fix #243: Sounds play in the lobby or browser when somebody joins or when +somebody picks a map. When observers browse for maps and others start a game, +the observer's browser closes, and the observer will see the game. + +Fix #244: Malformed UTF-8 in files within the level tree (e.g., zip archive) +won't crash the Lix level search anymore. The offending file still will not +appear as a searchable level; instead, the offending filename is logged. I +validate all keyboard input for UTF-8. + +Fix #246: Tiles with coordinates far out-of-bounds crashed the editor once +torus wrapping became enabled. Will now torus-wrap these tiles properly. + +Fix #247: The lix under the mouse is lighlighted far brighter and gets a dark +outline to its left, right, and above it. + +Fix #248: Multiplayer colors: Purple is lighter. Black is darker. Yellow is +darker and has less green hue. + +Removed a backroute in lemforum's Duality from abusing decoration. + +Added about 40 remakes by Proxima of maps from 2009. I've +inserted the maps in their original authors' directories. + +Removed hidden water in Sharing the Water Supply 4p. Removed duplicate map +files for Going Up 7p/8p. + +0.9.0 +----- + +2017-09-28 + +Raymanni's Toy, Lab, and Gore tilesets to v3: Raymanni has drawn Lab monitors, +Gore tentacles, eyes, and a bonesaw, a Toy chalkbox, and several more. All +tiles have shading from the top-left as normal for Lix tiles. Thanks! + +Added Proxima's and mobius's multiplayer levels, merged geoo's level changes +for the tileset update. + +Level search. + +Fix #230: Frogs ate cubers, and flung cubers reanimated. Now, cubers stay dead. + +Fix #231: Tumblers oscillated in thin walls. Now, tumblers will either move or +land. (The tumbler code is not perfect yet, I'm planning to rewrite it, but +the rewrite's subtle physics changes would invalidate too many replays still.) + +Fix #214: Players permute correctly in networking games. + +Fix #239: The server sends a permutation of correct size. This fixes wrong +hatch/goal distributions in games with many observers and larger teams. + +Fix #217: Skip remaining overtime when everybody has nuked or finished +playing. + +Race maps (= maps that have zero overtime) nuke automatically on the first +scoring. + +Fix #240: Observers don't have to cancel the end-of-game dialog anymore. I +print the game result to the console. This is not beautiful, but it's an +acceptable medium-term solution. + +0.8.8 +----- + +2017-09-24 + +(Still 0.8.5 physics: This 0.8.8 still has the severe bug where you can fling +cubers and thereby reanimate them, leading to wrong counts of lix alive. 0.9 +will fix this.) + +Merged 9 new multiplayer maps by Colorful Arty. Merged multiplayer map updates +by geoo. + +All racing maps, and geoo's Tower Defense 22934, have zero overtime. All other +maps have nonzero overtime. + +The ping button highlights both your hatches and your exits in multiplayer. + +Multiplayer colors: Orange and yellow are more distinct. Grey is lighter. Blue +and black are darker. + +Warn about fewer key collisions in the the options tab for hotkeys in menus. + +Linux packaging: You can override the XDG install path with a custom path, see +doc/build/package.txt. In the git repository, data/images/lix_logo.svg has a +large logo as SVG. I don't ship that in the download because it's over 3 MB. + +0.8.7 +----- + +2017-09-19 + +The out-of-skills beep was too trigger-happy: When we clicked a mining lix +and had miners left in the skill panel, the game beeped as if we were out of +skills. Fixed. + +0.8.6 +----- + +2017-09-19 + +Fix #227: Lobby player list shows 8 entries at a time and scrolls. Before, it +let the the 9th, 10th, ..., button bleed underneath the list. + +Fix #228: Edge scrolling requires the hardware mouse inside the window. + +Fix #229: Pressing the hotkey of an empty skill deselects all skills instead +of keeping the previous selection. + +Included Rubix's variants on Marble Run, Eater Island, Diagonal 8p, and +removed dead space on Across the Gap. Everybody else: Post your multiplayer +maps, then I can include them in the next version. + +Optionally print during play the number of physics updates, frames per second, +and a ballpark guess of allocated VRAM. + +0.8.5 +----- + +2017-09-09 + +Fix #244: Grouping certain tiles led to an assertion failure: The game +attempted to cut the group like a gridded animation. Fixed. + +Most of #216: Ping button: A small button in multipalyer games, next to the +nuke. Button clicks highlight all own goals for 4 seconds by flashing them +inside black and white boxes above the terrain. Can be hotkeyed; by default, +no key is bound. + +Fix #162: In the hotkey options, if you bind the same key twice, all its +bindings show in red. You can decide whether to remove one binding or keep +all. + +Fix: When the editor inserts a tile from the terrain browser into a level, the +tile will be aligned to the grid. + +I enforce bitmap creation: If you run out of VRAM, Lix should now terminate +with a proper exception, not crash later in unrelated functions. If you crash, +screenshot the error, or send me [tt]data/log.txt[/tt]. + +I optimized the lix Job hierarchy for speed: Lixes are value types, and carry +their job as a value type within themselves. (Drawing many exploder fuses at +once is still slow. Organ Symphony will still kill the framerate.) + +Fix #211: On Linux, you can pass a compiler switch to make Lix system-wide +installable, follwing the XDG base directory structure. For arbitrary +installation paths, open an issue on github. + +0.8.4 +----- + +2017-08-30 + +Fix #4 and #213: Some graphics cards cannot load textures wider or taller than +4096 pixels. Amanda's tar and occult hatch were too wide. Now, I allow +two-dimensional spritesheets for single-animation gadgets, and I've +rearranged the frames in the tar and occult hatch. In Lix, looks and physics +should be unaffected. + +lemforum: Over the Hump out, Duality in. Duality and Round Trip swap places +within Daunting. + +5 new multiplayer maps by Rubix. + +0.8.3 +----- + +2017-08-27 + +Fix #176: Make a tile group with at least one non-dark tile where all non-dark +tiles are covered entirely by dark tiles. This crashed the game before. This +crash is now fixed. + +Fix #191: Initial zoom on tall narrow maps (e.g., Rubix's Hamunaptra for 4 +players) is fit-to-height, or zoom 1 if fit-to-height would zoom even further +out. Initial zoom on small narrow maps (e.g., The Runaround) fits the entire +map on the screen, obviating scrolling, allowing dark borders. + +Merged editor's Topology and Looks dialogs into a single new Map dialog. +No new functionality yet. I'm thinking about custom screen starts. + +For a new player, the singleplayer browser highlights Any Way You Want, +the first map of the lemforum pack. + +lemforum, Forest of Fears: Wider exit platform, should look less cramped now. + +0.8.2 +----- + +2017-08-24 + +Fixed magic crash: The Wine build, in release mode, run in Wine but not in +Windows, crashed on entering a nonexistant user name. This would have been +very bad because can't do anything on new installation before entering a name. +The fix is pure magic, a mere rearrangement of lines. Fixed for safety, even +though it was OK in Windows. + +0.8.1 +----- + +2017-08-24 + +The save-as browser (used by the editor to save levels) allows to create +new directories. + +Editor defaults to 30 seconds of overtime on new levels. Singleplayer levels +discard their time. + +Removed hints during levels and manual screen start. + +Rebevelled [tt]matt/underworld/{00,01,02}.png[/tt]: Better shading, these +bricks don't look flattened near their left edge anymore. + +lemforum: Sinking Ship, geoo is author. namida written in only small letters. +Setting a Fundament, renamed to Cubic Interpolation. Forest of fears, removed +2 backroutes. + +0.8.0 +----- + +2017-08-22 + +Stable 0.7.22 physics. I would like to keep these physics at least for several +months. + +Tooltips during game explain directional select, priority invert, +and double-click on nuke. Can disable tooltips in the options menu. + +Removed the unused editor button to add decoration. To fill the void, +the button to add terrain is twice as large. Not perfect, but good for now. + +0.7.22 +------ + +2017-08-20 + +Physics: Flinging downwards initializes pixelsFallen with the distance that +speed-0 tumblers normally fall before reaching the given speed. Still, all +flinging overwrites pixelsFallen without respect to earlier values. Tumblers +splat when pixelsFallen on impact is larger than 126. + +Re-introduced downwards steam and the 2016 decoration on Goblin City, Gomen +ne, 100 Ways to Die. + +Digger unchanged since 0.7.19: Still 5/9 with anti-razor-edging. Discussing. + +lemforum: Bulldozer out, Sinking Ship v2 in. Empty Space reverted to the 2014 +version, rejecting both propesed versions from 2017. Renamed Cuber Replacement +to Jack in the Box. + +0.7.21 +------ + +2017-08-18 + +Fix: The last exiter didn't play the exiter sound. + +Renamed Rubix's "Just a Minute... (Part three)" to "Come on Down! The Price Is +Right", which is almost too long but still fits well. + +Removed lemforum/wip-0.7/ and images/geoo/construction/chain1.png, the +now-obsolete tile because its size doesn't conform to multiples of 8. +[url=http://www.lixgame.com/etc/unused-levels-0.7.zip]Download unused levels +and chain1[/url]. + +Removed simon/wood/ tileset. I've replaced these tiles with Matt's wooden +planks in the 3 multiplayer levels by Rubix used them: +Going Up, Coming Down (2p); Naoh's Ark (2p), Naoh's Ark (Team). + +0.7.19 +------ + +2017-08-16 + +Physics: Digger has anti-razor-edging: Whenever a digger ignores steel, he +cannot remove earth pixels beyond the steel in the same row. (The digger stays +at 5/9 steel sensitivity, i.e., chokes on steel in the central 10 of 18 hi-res +pixels and continues despite steel in the outermost 4 hi-res pixels on either +side.) + +Updated lemforum's Down Among the Dead Lix, Let's All Go Down the Strand, +Division of Labor, Empty Space is Hardly a Waste (Proxima's 2017-08-15 +version). Theresa v2 has been up-to-date since 0.7.16. + +Merged Rubix's remakes of The Clairvoyant and Flatlined. Thanks! + +Removed the downwards steam. I adapted the decoration in the only 3 lemforum +levels that used downwards steam: Giblin City, Gomen Ne, 100 Ways To Die. +(Downwards transportation beams are slow, not intended to kill, and therefore +still in the game.) + +In the editor, you can delete tiles by dragging them onto the panel. While +hovering over the panel with dragged tiles, the mouse cursor becomes a +trashcan and the tiles become invisible. + +Fix: Drag tiles around in the editor, tap the tile-deleting hotkey, and +continue to drag around nothing. The game crashed. Fixed by stopping the +dragging on deleting a selection. + +Fix #174: The ingame level map, during non-integral zoom, sometimes +didn't initialize/overwrite outside rows of pixels. Fixed by rounding up. + +Fix #201: The ingame level map during large integral zoom that didn't +divide the length of the map, didn't initialize/overwrite outside rows of +pixels. Fixed by rounding up. + +0.7.18 +------ + +2017-08-12 + +Tumblers remember how many pixels they have moved downwards since (they got +flung for the last time, or since they moved upwards, whatever of these +happened later). When non-floatable tumblers hit the ground, they splat if the +fallen hi-res pixels exceed 126. They ignore the y-speed for splatting. + +I've drawn 4 new digger frames before the animation loop begins. + +In multiplayer, when overtime starts, the bell sounds and the console warns +about how much time will be left before the nuke. + +0.7.17 +------ + +2017-08-10 + +100 % proof coverage for lemforum and NepsterLix! Thanks to all who submit +replays. The coverage is for the 5/9 digger. + +Rubix's singleplayer levels are almost covered: 155/157. Uncovered levels are +The Clairvoyant and Flatlined, these Oriental levels need an overhaul due to +tileset breakage. I'll PM Rubix. Removed The More You Know because that's a +nuke level, but D Lix locks the exits during the nuke. Lowered initial lix on +many levels. + +No decision yet for the digger. 5/9 is implemented. I'm leaning towards +keeping this 5/9 digger, but I want to read over yesterday's chatlogs again +and Proxima might post to the 0.7-steel-sensitivity topic. + +0.7.16 +------ + +2017-08-09 + +All water gadgets in images/simon have multiples of 16 for their sizes: 48x48 +or 48x32 or 48x16. The old water size was 50x50. I've looked through all +singleplayer levels -- lemforum, NepsterLix, and Rubix -- and fixed the few +water placements that had not yet looked good with 48x48. + +All triggered gadgets (triggered traps and triggered flingers) have two rows +of animations: The first row loops while idle, the second row plays while +busy. After the final frame of the second row has played, the gadget will +eat another lix and jump back to the frontmost frame of the second row, or, +if nobody is in range, begin looping the idling animation from the front. + +Kept digger at 5/9 sensitivity for now: Digger chokes on steel when the +innermost 10 of 18 pixels contain any steel. I should make a final decision +this week. + +Rubix's singleplayer levels, Perplexing: Lowered initial lix on some levels. +Coverage 108/158 -> 119/158, need 39 more. + +Get Hype and Theresa V2 merged into lemforum from the 0.7-lemforum thread. +lemforum coverage is 239/240, need 1 more: Theresa V2. + +0.7.15 +------ + +2017-08-04 + +Revert basher mask: Bottom 16 pixels are steel-sensitive, not only the +bottom 13. I.e., we have 2, not 5, insensitive pixels over the sensitive. + +Replay verifier logs to `data/verifier.txt' and closes the file after +writing its last line or after closing the dialog. + +0.7.14 +------ + +2017-08-02 + +Proxima's planned changes to the lemforum pack. Snowball Battle: Spawn +interval 20->22, to keep it solvable. + +0.7.13 +------ + +2017-08-01 + +Physics: The basher ignores steel in its top 5/18 rows, not merely 2/18. +The digger ignores steel in its 4 outermost hi-res pixels on both sides, +not merely in its outermost 2 on each side. The digger digs every (16*n) +frames following its assignment, not already every (16*n - 4). + +Fixed bug #202: Small levels image-export with all stats again, not only +with their skills. + +0.7.12 +------ + +2017-07-31 + +lemforum pack: Simple renamed to Lovely. Some backwards-compatibility code +that converts progress checkmarks during loading the user file. + +lemforum/wip-0.7 has all levels in consideration for lemforum pack's stable +release with 0.7.x in 2 weeks. I hope all levels are up-to-date. + +Raymanni's 3 water tiles have higher trigger areas. (Lixes drown earlier and +higher up than before when they drop into the water.) + +Zoom 1x is always allowed, even if the level doesn't fill the available area. + +Fix #206: Editor browsers show the innermost directory of hatches, goals, +traps, and other gadgets. + +Goals are locked during the nuke. The nuke is purely for decoration and +to finish replays in style. + +Mouse code reverted to the 0.6 mouse code. If anybody has trouble, tell me. + +Keyboard key duration before first repeat for moving selected editor +pieces: 0.33 seconds -> 0.2 seconds. + +Lots of multiplayer nuke code that handles conceding and calling for the nuke. +When you press the nuke button, you lose control over your lix, overtime +starts, but your lix don't explode yet. We'll see how it feels. + +Editor allows to set overtime in multiplayer levels. Existing multiplayer +levels are tagged with the correct player number. + +0.7.11 +------ + +When you want to nuke, you can't assign skills anymore. The game core dismisses +assignments after your nuke, and the GUI shows zero skills. + +Game doesn't show FPS in the panel by default. It's an option still. + +0.7.10 +------ + +2017-07-17 + +Updated lemforum/Vicious/_order.X.txt, ordering One-Lix Showdown. + +0.7.9 +----- + +2017-07-17 + +Physics change: +Reverted the physics change from 0.7.8: The walker skill behaves like in 0.6 +again. Either the lix cancels her activity and walks on, or turns. + +Shotgun-debugged mobius's mouse problem by applying a Linux workaround for +all systems. I couldn't test, hope this helps. + +More lemforum level pack coverage. Only 7 levels left to cover: +fromtheotherside.txt metalcitymayhem.txt thecontinuum.txt +dreamtheimpossible.txt lixsterquadrille.txt survivalofthecraft.txt +toccata.txt + +0.7.8 +----- + +2017-07-01 + +Physics change: +0.6 walker: If target lix is working, revert to walker. Otherwise, turn. +0.7.8 walker: If target lix is working, revert to walker. Turn in every case. + +0.7.6 +----- + +2017-06-20 + +Fix: Builders and platformers duplicate bricks for free when turning at +blockers. Before, number bricks left decreased for these extra bricks. + +0.7.5 +----- + +2017-06-20 + +lemforum: Completely Ridiculous Level is narrower by 48 pixels. +203/240 levels are proven solvable in 0.7 physics, let's cover 37 more. + +Down-facing tumblers drown head-first, not feet-first. + +0.7.4 +----- + +2017-06-14 + +simon/oriental/bonsai: This tree got lixes stuck beneath its leaves. +Changed some pixels and therefore the tree's physics. Didn't affect any +levels for the worse. + +Rubix's Pleasand and Sinister are 100 % covered. The higher difficulties +aren't covered yet. + +When you verify dirs in the replay browser, that dir becomes the most recent +dir for exiting and restarting the browser. + +0.7.3 +----- + +2017-06-14 + +NepsterLix is 100 % solvable with 0.7.2 physics. + +The replay browser offers a button "Verify dir" that verifies all replays +in the current directory, recursing through subdirectories. Lix shows the +results in the GUI and copies them to the logfile. + +0.7.2 +----- + +2017-06-11 + +Blocker field is back like in 0.6: LLLLLL-RRRRRR against everything. +This is simplest and allows crowd-follows-builder in at least 70 % of the +cases. + +0.7.1 +----- + +2017-05 + +Blocker fields by geoo's suggestion, LLLLLL-RRRRRR against nonbuilders and +LLLLL---RRRRR against builders. + +0.7.0 +----- + +2017-05 + +Lots of changes, see experimental version thread on lemmingsforums.com. + +0.6.39 +------ + +2017-07-01 + +The replay browser allows you to batch-verify all replays in the current +directory. The results are printed on screen and to the logfile. + +Fixed 3 backroutes in NepsterLix; the changed levels are A Day in Lixtown, +House of the Mad Trickster, and No Matter What I Try. + +0.6.38 +------ + +2017-05-14 + +Fixed #158: When you exported levels as images from the game and your game's +resolution was not 640x480, the images had blank stripes instead of skillbars. + +Editor draws teams on hatches and goals. (Bug: When you have fewer gadgets +of either type than teams, only the first team will be drawn.) + +Editor terrain browser shows more tiles with smaller buttons. + +0.6.37 +------ + +2017-04-29 + +Codebase builds with dmd 2.074. + +Fix #197: Create a new level, never save, then instruct the editor to exit. +When the editor asks about potential data loss, choose to save. The buttons +in the save browser didn't work, the level was lost. This is now fixed. + +Fix #198: When the editor inserts a tile from a browser, the new tile +aligns to the grid. + +0.6.36 +------ + +2017-04-28 + +Re-enable the option to untrap mouse with fast movement. I have a kludgy fix +against the buggy mouse jump (Arch 2016, Allegro 5.2, my old code or Allegro +generated extra move events when I merely wanted to warp the mouse). +* This kludge is only helpful when you always trap the mouse inside Lix. +* If you allow the mouse to leave with fast movement, you'll still have a + warp when you begin right-click scrolling. Need kludge on top of kludge? +* The kludge is only active on Linux, I've static-if'd it away elsewhere. + +0.6.35 +------ + +2017-04-25 + +Fix #183: Multiplayer panel shows only number of saved, not any requirement. +We can still improve this later, e.g., by showing the score of the best +opponent. + +Fix #180: Chat during play implemented. + +Fix #181: Chat message length is unlimited. The entry box scrolls along. + +Fix #146: Skill arrows scale only once. There are only 1x-zoomed arrows, +they are drawn straight to the map, then scroll and zoom along with the +terrain. Maybe GUI-scaled arrows should move as GUI components along with +the scrolling, but that would be very hard and force frequent total redraws. + +0.6.34 +------ + +2017-04-16 + +Fix #192: While you are in the multiplayer level browser, incoming console +messages don't overwrite the browser anymore. + +Fix #194: Show both the score bar graph and the tape recorder buttons +when you watch a saved multiplayer replay. + +Fix #195: Client shows version mismatch in their console when they attempt to +connect to a server running an incompatible version. Versions X.Y.Z are +compatible iff they have the same X and the same Y. The patch version Z +doesn't matter. + +Fixed asserts in the delayed exploder code. Undelayed, lix explode in the next +fame following their assignment. Delayed exploders explode in the 75-th-next +frame after the assignment, this is 74 frames later than undelayed. + +Removed my desert tileset (images/simon/desert). It has become unacceptable +MS-Paint programmer art. Almost nobody used it. The levels "Hrududu" and +"Group Therapy" used it for decoration, I have re-decorated them in similar +style. The asymmetric multiplayer maps "Shine On You Crazy Lix" used desert +for the main terrain. I won't ship these until they're redesigned; this is +a good opportunity to fix the advantage of the higher-spawning players. + +0.6.33 +------ + +2017-04-14 + +Fix #182: Timed exploders in multiplayer have a nice burning fuse. I examine +the spritesheet for the eye position. The fuse burns slow at the beginning, +then faster when it's short, for visibility. + +Fix #193: Most opponents' sounds aren't played. Opponents' deaths and baseball +bats still play sounds. + +Fix #168: Server resets all room data once a room is empty, and deallocates +the level. Before, you could find old levels when entering a new room. + +NaOH's forest exit has animated candles. Physics remain identical. + +Singleplayer nuke buttons don't have a red background anymore. I want to +redesign multiplayer nuke buttons, e.g., by printing overtime on them. + +0.6.32 +------ + +2017-04-11 + +Partly fix #182: Draw a rudimentary exploder flame over the lix's head +in multiplayer. I don't draw a fuse yet, and I don't examine the spritesheet +for the exact eye position. + +Fix #190: Override "asdfasdf.ethz.ch" with "lixgame.com" in outdated +config files left behind by C++ Lix. + +0.6.31 +------ + +2017-04-06 + +Fix #186: Observers can't assign skills even locally. + +Fix #58: Option to keep replay actions after framestepping backwards over them, +this is enabled by default. mobius likes to remove them on framestepping. + +Don't float-downscale UI CutbitElements, always display at integer scale >= 1. + +Removed images/matt/oriental/dragon.png. That tile was huge, clashed +in style with other pieces, and is nowhere used. + +0.6.30 +------ + +2017-03-30 + +Fix #184: Observing players don't add colors to the game. There is still a +bug with observers: The can assign skills, changing their own replay, even +though others won't interpret these assignments. + +Maybe fix #177: Multiplayer or state-loaded singleplayer produced outdated +land, even though physics were correct. Copying the land without transparency +should fix that. + +0.6.29 +------ + +2017-03-29 + +Moved gamestate memory management from GC with manual GC calls to reference +counting. Maybe that fixes #177, outdated terrain during multiplayer? + +Fix #179: Unfocus lobby chat when a game starts. + +Fix #178: Don't flash the R for replaying during multiplayer. + +Fix #185: Hotkeyed zoom during multiplayer, even if the button isn't shown. + +Fix #171: Terrain browser doesn't upscale small tiles. + +0.6.28 +------ + +2017-03-18 + +First version for the networking test on lemmingsforums.net. + +Removed the option to untrap the mouse with quick mouse movements. This +option was buggy on linux and has always required workarounds. To untrap +the mouse now, press Alt+Tab. + +Matt's winter hatch has no snow, but wooden triangles. + +0.6.27 +------ + +2017-03-16 + +In multiplayer, the server sends time-syncing packets to all players in a +room. This happens every 0.5 seconds during the first few seconds in the game, +and every 5 seconds later on. Players adjust their physics' speed to match. +Even if players open the ESC menu, a networked game will continue to run. + +0.6.26 +------ + +2017-03-09 + +NepsterLix 1.6 is an excellent singleplayer puzzle pack with 106 levels. +It was released in 2016, now it's finally included in the main download. + +Sharper small text on small resolutions such as 800x600 and below: Instead +of small shadow text, I print small text with a dark outline. + +More networking code: Transferring and interpreting game data works. +Can't interrupt other players' replay actions anymore. Game's network +connection is picked up by lobby after game. But the server doesn't yet +send time-syncing packets every few seconds, thus clients will time-shift. + +0.6.25 +------ + +2017-03-05 + +The Windows executable has a Lix icon in the file manager. On all operating +systems, the application window and taskbar entry have a Lix icon. + +0.6.24 +------ + +2017-03-04 + +Fix #167: Editor button zooms again. Map is rezoomed when editor resizes map. + +Fix #170: Game crashed due to the Nurse indexing players in the replay by +PlNr. Now, the replay uses a PlNr-indexed associative array. + +I offer more zoom values: 1/sqrt(2), 1, sqrt(2), 2, 3, 4, 6, 8, 16, and +fitting the level's width or height to screen. + +0.6.23 +------ + +2017-03-02 + +Fewer zooms are considered similar. This addresses Nepster's concerns: +http://www.lemmingsforums.net/index.php?topic=3128.msg63116#msg63116 + +Fix #169: I validate all user files for good UTF-8 before calling Phobos. + +Implemented the transparent console for networking messages during play. + +I've worked on starting networking games and transferring game data. +I haven't tested this yet, don't expect anything yet. + +0.6.22 +------ + +2017-02-18 + +When you zoom in or out, the mouse points to the same pixel on the land +before and after the zoom. Exception: Map scrolling is restricted on low zoom. + +Fix: In-game map boundary was sometimes too thin, there was a 1-pixel wide +column or row of non-erased pixels between the boundary and the land. + +Fix #94: Show spawn interval only when hovering over a hatch. I'm showing +it in the panel still, not laid over the hatch, which would have been better. + +If a map is taller than wide, it tries to fit its width to the screen width, +not the height. + +0.6.21 +------ + +2017-02-16 + +Merged a contribution by CyberShadow to upscale the 640x480 GUI icons +for high resolutions by integer factors when no high-res icon exists. Thanks! + +Initial zoom fits the level height on the screen height, allowing horizontal +scrolling if the map is very wide. Exception: The map is only slightly wider +than the screen, then initial zoom fits the width on the screen width, +generating a black border at the top. + +When you increase the zoom factor, the game centers on the mouse cursor. + +0.6.20 +------ + +2017-02-04 + +Code compiles with dmd 2.073: Masks initialize at runtime, before main menu. +I removed tharsis.prof, that dependency didn't build with dmd 2.072. + +Reworkings under the hood towards minimum viable multiplayer. In case you +have replays from old C++ Lix, you can watch them in D Lix now. But you still +cannot start multiplayer games yet in D Lix. + +0.6.19 +------ + +2016-11-01 + +I require Allegro 5.2 now instead of 5.0. + +Included Rubix's levels. They're all solvable in D Lix. + +Fix #159: Better encapsulation for physics caching. Don't switch timelines +merely by framestepping back. Maybe this fixes Rubix's sporadic crashes, #154. + +Fix #24: GUI text vertically centered on buttons. I'd like to see how this +looks on Windows machines. + +More work on the networking lobby. You can chat, browse rooms, send and receive +levels, but can't start a game yet. + +0.6.18 +------ + +2016-10-08 + +Fix: When you picked a tile from the editor's tile browsers, the tile wouldn't +appear in the level. Now it does again. + +0.6.17 +------ + +2016-09-21 + +Fix #153: I have culled the no-effect decoration. The still decoration is now +solid terrain. Animated decoration is gone, except for the beach bonfire, which +became a fire trap. I have changed levels that I distribute with the game to +use the new tiles. Backwards compatibility for levels that I don't maintain: +The level loading function silently replaces decoration with the new tiles. + +I removed the auto-replacements for Matt's terrain that I made in 2010 and +2011. Almost no levels relied on them anymore, and I've changed the remaining +two levels that did. These levels remain functionally identical. + +Fix #156: Switching to a parent directory in the singleplayer browser clears +the preview again. + +Rubix has created a cute sound for (singleplayer, you have lost too many lix). +It's included, and plays once when triggered, not five times like the old tick. + +The warning sound for empty skill doesn't play on mouse click, only on hotkey. + +0.6.16 +------ + +2016-09-14 + +Fix #152: The singleplayer browser has a button to create a new level. +This button is always visible, whether a level is selected or not. + +Fixed smearing FPS text in the editor. + +0.6.15 +------ + +2016-09-13 + +Started networking backend, lobby, and console. You can log onto the central +server at lixgame.com and chat. + +Fix #145: The editor calced twice after its boxes lost focus. You could cancel +a box with a hotkey, and the editor interpreted the hotkey itself once more. + +Fix #151: When there is no savestate, the state-load button is hidden. + +Fast movement frees mouse: This option is off by default. + +0.6.14 +------ + +2016-09-01 + +Command-line switches to jump into play: + lix level.txt plays the level. + lix replay.txt plays the replay against its included level. + lix --pointed-to replay.txt plays the replay against its pointed-to level. + lix level.txt replay.txt plays the replay against the given level. + +Minor bugs left behind here: Depending on from where the levels are run, +they do or don't generate checkmarks. Auto-replays should always be saved, +even if, when not run from the root directory, the replays are called unknown. + +Command-line switch to export images. The following command-line exports as +images the two given levels, and all levels recursively found in mydir: + lix --image level1.txt level2.txt mydir + +Fix #149: Singleplayer always displays a dialog at end of play again, +so you can control the entire application with the mouse alone. You can +framestep back from this dialog. + +0.6.13 +------ + +2016-08-27 + +Lemforum levels got updates from August 2016. I deleted the tutorial levels: +The lemforum pack is our flagship pack and starts with very easy levels. +Other packs need not provide tutorial levels. + +Fix #142: There is a virtual file system. It recognizes ./ and ../ now. +Other directories, in particular installations in Linux File System Hierarchy +trees, aren't supported yet, but the necessary changes have become easy. + +Fix #148: When you fail a singleplayer level, the game halts and allows you +to go back in time. It doesn't spawn a dialog box anymore. + +Fix #144: In the editor, when you mirrored a piece with transparent pixels at +its sides, the piece moved. Entire selections diverged on repeated mirroring. + +Fix #84 and #90: The options menu explains its options, except on the editor +tab. The box near the menu's bottom provides two lines of explanation. + +0.6.12 +------ + +2016-08-07 + +Fix #134: Select multiple tiles in the editor and press rotate. +The tiles rotate correctly with respect to each other. Rotating 4 times +puts them back exactly where they started, they don't wander. This works +even if oddly-sized tiles or unrotatable gadgets are in the selection. + +Fix #139: The browsers for hatches, goals, decoration, and hazards display +all tiles in the images/ tree in one listing. + +Fix #140: The terrain browser starts browsing from the directory of the +tile you have selected at the moment. If you haven't selected anything, +they start from the directory from which you've most recently added a tile. + +Fix #143: The file selector scrolls to the final row, even if it's less +than half-filled. Before, the scrollbar looked like there were more files, +but didn't make the tiler display these extra files. + +Swapped author and level title in the editor's constant-setting window. + +0.6.11 +------ + +2016-08-06 + +lemforum pack: Many updates by Proxima and geoo. Fewer lix in Hopeless. +geoo has rebuilt Spin Geometry with completely new terrain, and renamed it +to All Aboard the Pain Train. Off the Rails is now Railroad Plot, and +Derailed Level got a derailing locomotive as decoration. + +Fix #117: Name-asking menu for new players exits with plain Esc. I don't +display anything for this. + +Fix #131 and #111: Simpler starting zoom. Depending on your game +resolution, either all levels start as 1x or all levels start as 2x. Test +and see if you like the zoom for your resolution. + +Fix #122: When you continue from a saved replay, then win, or save +manually, the new replay goes into the correct directory and points to the +correct level file. + +Fix #133: The singleplayer menu shows the player's best score: Lix saved +and skills used. + +Fix #138: Editor hotkeys work even while you're dragging. The buttons on +screen are disabled for the mouse during drag. + +Fix #127: I hide dot-files, like .git, in level directories. + +0.6.10 +------ + +2016-07-31 + +In the lemforum pack, 237 of all 240 levels are guaranteed to be solvable. +The remaining possibly-unsovable levels are Trading and Cooperating, +The Mile High Club, and Striking News at Ten. + +Fix #116: Editor shows the top-left point of a multiple selection, the minimal +coordinate each in both the x- and y-direction. + +Fix #130: After state-loading a different timeline, framestepping moved back +to the undesired timeline. Now, I discard old savestates until the merge base +of the two timelines, and recompute from there on savestate. + +Fix #91: Editor buttons are disabled when dragging. + +0.6.9 +----- + +2016-07-27 + +Miners throw their pickaxe into the air when they hit steel. + +Option: Do fast mouse movements untrap the mouse from windowed Lix? + +lemforum pack updated by Proxima, again first 5 ranks solvable. + +0.6.8 +----- + +2016-07-22 + +Decoration updated on Any Way You Want, The Road Goes Ever On, Just Stop +the Bleeding. + +Fix #125: disksave.ogg was too loud, changed from 0 dBFS to -4.5 dBFS. + +0.6.7 +----- + +2016-07-22 + +The lemforum pack's first 5 ranks are guaranteed to be solvable. geoo has +given maintenance of the lemforum pack to Proxima. Proxima has spent days +on careful level adaption to D Lix and difficulty reordering. +Out: Get Down From There, Minimalism Part 3. +In: Don't Look Back (jagged floor instead of a time-limit gadget), + Canadian Glade (inspired by Get Down From There, uses the forest tileset). + +Fix #111: Initial zoom on torus maps was too zoomed in. + +Fix #112: Hotkey labels ran over nearby buttons. + +Fix #118: When Lix wasn't the foreground window, it trapped the mouse +nonetheless when the cursor passed over the inactive window. Now, you must +click into the window to trap the mouse. This fix made visible another bug: +In the inactive Lix, the ingame cursor moves offset from the hardware cursor. + +Worked on #124: I don't add 0x0 as a fullscreen mode anymore. + +0.6.6 +----- + +2016-07-17 + +The lemforum community pack has Proxima's suggestions up to 2016-07-17. +Several levels have moved between ranks. Some have been replaced entirely: +Out: Minimalism (Part 1), Fear of Heights, That Pesky Gap, Don't Look Back, + Too Far to Walk +In: A Necklace of Raindrops, The Road Not Taken, All Around the World, + Diggin' the Air, A Soulful Bounding Leap + +--coverage switch to use along with --verify, to compute level directory +coverage. From all levels that reside in level directories from where you +have tested at least one pointed-to level of a replay with --verify, +--coverage lists those levels that didn't enjoy even a single solution. +Please read levmaint.txt for detailed instructions. Example command line: + + lix --verify=replays/path/to/dir --coverage + +Fix #113: Shorter key names with unicode symbols. In particular, keys on +the numeric pad have a nice symbol that looks like the keypad. + +Fix #120: Topology updates correct equation, not only the horizontal equation + +Some assertions to debug issue #121 on MacOS. + +0.6.5 +----- + +2016-07-03 + +Fix #103: When you re-enter the window, the ingame mouse starts moving from +where the hardware mouse entered the window. + +Fix #108: Adventure Playground displays again in the preview and is playable. + +The replay browser has two buttons to start replays: One replays against the +included level, one replays against the pointed-to level. + +Updated the lemforum community pack to geoo89/lixlfpack commit 2a91852. +This reorders some levels. Two levels have been replaced entirely: +Out: Three Days of the Condor, Absolute Zero +In: Lixes in Motion, Eye of the Needle + +Afterwards, the lemforum pack got fewer initial lix in the lower three ratings +Simple, Quirky, Cunning. Proxima has played all these levels, tested for +solvability under a fixed spawn interval, and recommended lower initial lix +counts that keep the level idea fully intact. We have removed about 2,000 lix. + +0.6.4 +----- + +2016-06-27 + +Editor increases the level's $BUILT when saving a changed level. + +Fix #106: With mixed dirs and files, picker couldn't scroll to the last file. +Fix #107: Prefer queuing builders to spamming, then you couldn't queue at all. + +New user option to unpause on skill assignments. + +Tutorial levels are solvable again, and you can't die in them as easily. + +0.6.3 +----- + +2016-06-22 + +Fix #97: The game advances physics on assignment and unpauses on nuking. + +The browsers' breadcrumbs are wider and less tall. I don't display the current +directory in the browser's title bar anymore. The picker shows 20 files +instead of 19, this fixes #96. + +The preview draws a dark border around the level instead of the menu color. +Under the preview, I write the level name. + +0.6.2 +----- + +2016-06-20 + +Multiple hotkeys can be bound to the same function. By default, the editor +moves tiles both with the arrow keys and with ESDF. Pause is bound to [Space] +and to the middle mouse button. + +Editor grouping, ungrouping, saving, and save-as can be hotkeyed. + +0.6.1 +----- + +2016-06-18 + +Editor displays the trigger area of all gadgets. + +0.6.0 +----- + +2016-06-15 + +Physics: Imploder mask is symmetric. It's wider by 1 lo-res pixel to the right. + +You can drag the scrollbar thumb with the left mouse button. + +0.5.0 +----- + +2016-06-14 + +Physics: Groups with steel have correct distribution of steel, earth, air. + +I highlight on the map the lix under the mouse cursor who would get assigned. + +The Editor allows to ungroup tiles. + +I show hatch spawn direction, describe hovered tiles, and use a more +peaceful color flow for hovers and selections. Save-as forbids special chars. + +The game shows the constant spawn interval in the panel. I don't know +whether I want to keep this and make an icon for it, or whether people +don't need it later. + +0.4.4 +----- + +2016-06-06 + +Bugfixes for these github issues: +#67: Z-ordering several tiles +#85: Hover sorting guarantees group's z-order +#81: Crash on nonexistant base directory of a browser +Button hotkeys are drawn on top of buttons, not behind main text. + +I now try to paint the screen black immediately on display creation. +I don't want a white flash before showing the main menu. I have to test at +Icho's Windows machine whether this prevents the white flash. + +0.4.3 +----- + +2016-06-02 + +Loading levels auto-converts from no-overwrite to tile groups. + +Even in a release build, an on-the-fly conversion takes 5.5 seconds for +A Day In Lixtown and 1.2 seconds for Heed the Traffic Light. Lixtown has 2000 +pieces and does fancy tricks with no-overwrite. I have to decide whether +the performance is acceptable, whether to improve the algorithm, or whether +to save converted levels to file. + +Merged a tree tile by Amanda to prevent getting stuck in its leaves. + +Editor remembers the recently-loaded or recently-saved file, similar to how +the game remembers the recently-played level. The singleplayer browser +shows the most recent file. + +Don't show elapsed time in singleplayer. It looks like a time limit. +Does anyone want the elapsed time shown nonetheless? + +0.4.2 +----- + +2016-06-01 + +Level reads and writes tile groups. + +The game renders groups with correct air parts inside. +I haven't tested steel, I expect bugs when grouping steel. + +There is no conversion yet from no-overwrite to groups. + +0.4.1 +----- + +2016-05-25 + +Game and editor draw a thin line at the torus seam. This is optional. + +The automatic screen start snaps to the level boundary if it's close to it +and the level has no wrapping in that direction. + +Started tile grouping using Nepster's algorithm. Thanks for the straightforward +idea in O(n^2), with tips on how to optimize to O(n log n) if wanted! + +0.4.0 +----- + +2016-05-23 + +Physics change: Climbers couldn't ascend into 1-pixel high gaps with an +overhanging ceiling. + +Fix #73: Tile selection boxes were offset. Reason: A5 rotates tiles clockwise. +Many parts of the D Lix source assumed a counter-clockwise rotation. + +0.3.7 +----- + +2016-05-21 + +The editor's save-as dialog is implemented. It doesn't preview the old level, +but asks before overwriting. + +0.3.6 +----- + +2016-05-18 + +Editor: new file, quit, and save to existing file are implemented. The editor +asks whether you would like to save when you would lose data on new or quit. + +Fixed an editor crash on querying terrain on tiles with negative coordinates. + +The editor saves to ./levels/editor-emergency-save.txt when you click save-as, +because save-as is not implemented yet. The editor saves to that file too +on assertion fails, as a safeguard. + +0.3.5 +----- + +2016-05-15 + +geoo has designed awesome glyphs, representing mouse wheel and buttons. +The infinity symbol is now a big lemniscate. I've included the new glyphs +in the default font. Thank you, geoo! + +Editor has a window to set the main level constants, and another to set +the level topology. Non-browser-opening editor buttons have words, not icons. +This addresses issue #74 partially. + +The editor can only set the English level title. You can set the intended +number of players per level, but that field has no effect anywhere yet. + +0.3.4 +----- + +2016-05-08 + +Right mouse button, middle mouse button, wheel up, wheel down are all available +keys to map in the hotkey dialog. There are two keys to map for zoom now. +Default value for zoom-in is wheel-up, default for zoom-out is wheel-down. + +Removed the boolean options that became superfluous after allowing mouse +buttons as hotkey bindings. Set the edge scroll speed to 0 to disable it. + +Pause accepts two keybindings. I'd like multiple keys for any function. + +Singleplayer browser shows author and save requirement, allows to delete level. + +Culled variable spawn interval UI and level variables. + +Fixed wrong phymap querying: clamping coordinates on a torus must wrap them. + +Fixed a crash, the game tried to dispose a null state after long play. + +0.3.3 +----- + +2016-05-03 + +Fix #42: Zoom increases at level start until at least 70 % of map screen +space is filled. This makes for dynamic zoom per level, per resolution. + +Fix #31: I drew air where solid after batch-framestepping, when lots of +drawing and removing happened in short succession. geoo has suggested +the new algorithm that's both simpler and bug-free. Thanks! + +0.3.2 +----- + +2016-05-03 + +Editor skill window: Clicking the label "Fling-exploder" affects checkbox, +too. Buttons resized and captioned according to Proxima's suggestions. + +0.3.1 +----- + +2016-05-01 + +File picker scrolls with the mouse wheel. + +Replay browser can delete files and lists player names next to files. + +The editor keeps the manual or automatic screen start from old levels, +even though it cannot change the screen start yet. + +Fix #66: Boolean options react to mouse clicks on their label, not only +to mouse clicks on the checkbox itself. + +0.3.0 +----- + +2016-04-27 + +Physics change: We don't check for physics near the eye, which would have +depended on the spritesheet. Instead we check at (foot) + (0, y), where +y is 0, -4, -8, and -12. This check is independent from the current lix job. +Rationale: http://www.lemmingsforums.net/index.php?topic=2678 + +0.2.49 +------ + +2016-04-27 + +Level and replay browsers select adjacent directories and files by hotkey. + +Tile browsers in the editor remember the last-chosen tile's directory, +and use the screen real estate better with 6 x 10 items at a time. + +0.2.48 +------ + +Fix: Singleplayer results overwrite outdated level results. + +Editor rotates and mirrors terrain pieces, and toggles the dark flag. + +When you enter a directory in a browser and the picker highlights the +recent file, this file is scrolled into view. + +0.2.47 +------ + +2016-04-20 + +Fix #65: Sign error when computing the offset for steel checks. The error +shifted steel checks too far into the ground and to the right. + +Backwards framestepping is accelerated by 1/lag, where the lag is measured +as ratio (FPS / ideal number of FPS). Slight difference in memory management +for savestates, but no manual management yet. + +0.2.46 +------ + +2016-04-20 + +Fix regression #64: Options menu didn't offer choice of language. + +Fix minor bug #62: Profiling via version statements, not empty structs that +would make a call to an allocating string-formatter. + +Fixed a crash on opening non-UTF8 files in the Lix file format reader. + +Editor allows to clone and z-order-rearrange tiles. There is a bug left behind +when reordering many pieces at once: Sometimes, they reorder among each other +only, producing no change after the entire reordering command. + +Sound effects are loaded lazily, that boosts the program start. + +0.2.45 +------ + +2016-03-11 + +Editor UI allows to set the grid by mouse and hotkeys, as in C++/A4 Lix. + +Editor moves tiles according to the grid. The clicked-and-dragged tile snaps +to the grid. All other selected tiles move along with it, without snapping to +grid themselves. When moving by keyboard, nothing snaps to grid. The behavior +in this paragraph is identical to C++/A4 Lix. + +Editor saves on exiting to ./levels/editor-test.txt. + +0.2.44 +------ + +2016-03-30 + +Browsers offer breadcrumb navigation to pick directories. +We're missing some central features in these browsers now: +https://github.com/SimonN/LixD/issues/63 + +Fixed imports for dmd 2.071. + +0.2.43 +------ + +2016-03-26 + +Editor offers the window to set skills. + +The chosen ploder is loaded and offered during play. Levels remember the +chosen ploder, even if 0 ploders are available. The ploder shown on the +panel is the nuke skill. + +Bug #4 (game ignores tiles that don't fit into VRAM) doesn't crash anymore, +but ignores the tile instead. The game shows the missing-image error. + +0.2.42 +------ + +2016-03-23 + +Editor adds pieces selected from the tile browser. Editor moves tiles by +keyboard and mouse. No snapping to grid yet. + +Fixed #57: The builder gets closer to a vertical wall before stopping. +Fixed #60: The editor selects newly-added tiles immediately. +Fix: Editor-added tiles are clamped to the map, they don't spawn off-bounds. +Fix: The file listing ignores files with pre-extension X, like _order.X.txt. + +Rewrote many functions everywhere to take one Point instead of 2 ints. +I have to test for performance regressions. + +0.2.41 +------ + +2016-03-18 + +Singleplayer browser, replay browser, and editor terrain browser all use +the new file picker. + +Bugs: +* Keyboard controls for file up/down are missing. Regression due to rewrite. +* Scrollbar doesn't react to mouse wheel, or to clicks on the track or car. +* Replay browser formats the button like the level browser. There is a + child class for replay button formatting, which I am not using yet. + +Misdesign: Picker should control UpOneDirButton. See comment in uponedir.d. + +0.2.40 +------ + +2016-03-13 + +Editor has a terrain browser that can only exit. No browsing for terrain yet. +There's a scrollbar in that terrain browser. The buttons at its end can be +clicked and move the car. The car doesn't do anything when dragged or pulled. + +0.2.39 +------ + +Fixed bug #51: Basher always left relics after his first swing. + +0.2.38 +------ + +Editor moves tiles by dragging with the mouse. No keyboard movement yet. + +0.2.37 +------ + +2016-03-06 + +Editor can select all tiles. + +Editor can add and remove tiles to/from the existing selection. + +0.2.36 +------ + +2016-03-05 + +Fixed the bug described in 0.2.35: Frame-spanning goes across or not across +the torus seam, according to mouse position on the screen. I like the results +in many cases so far. Anything more would require tracking the map scrolling. + +Editor has a button for frame-dragging. The button's on-ness and its hotkey +are handled in a nonstandard way, which we want. + +Editor has a zoom button toggling between 1x, 2x, 4x zoom, like the game. +We should brainstorm about the zoom UI, and about default zoom. + +0.2.35 +------ + +2016-03-05 + +Editor frame dragging implemented. It selects the correct pieces on a torus. + +Bug: It doesn't yet span the frame in the correct direction. Right now, +it always spans so that the torus seam is not included. + +0.2.34 +------ + +2016-03-03 + +Top edge kills unconditionally. + +The editor counts and annotates hatches and exits. + +0.2.33 +------ + +2016-03-01 + +I run D's garbage collection whenever there are obsolete game states during +play. Profiling result: My 9-year-old laptop takes 3 ms per collection. +At 16.6 ms per frame, this slows down the back-by-1-second command. +My goal is to attack this bug: https://github.com/SimonN/LixD/issues/38 +Let's see whether anybody experiences this bug #38 still, then think again. + +0.2.32 +------ + +2016-03-01 + +Application starts much faster. All bitmap-loading and recoloring is lazy. +Only eye matrix generation is eagerly done at application start. + +0.2.31 +------ + +2016-02-28 + +Implemented editor delete button. + +0.2.30 +------ + +2016-02-27 + +Fix #52: Mose over a transparent terrain tile, gadget behind it: +This selects the gadget now. Before, it selected the terrain tile. + +0.2.29 +------ + +2016-02-25 + +Editor selects pieces on mouse click. No moving yet. + +Game starts slightly faster, because I'm not searching through all internal +graphics of all resolutions. Most internal graphics are loaded lazily. +Spritesheet/player-dependent GUI elements are still eagerly loaded, so there +is opportunity for optimization here. + +0.2.28 +------ + +2016-02-24 + +Fix: Replays were saved with a null $BUILT instead of the level's $BUILT. + +Editor mouse hovering: Solid pixels are more important than the selection box. +Holding priority invert inverts the entire sequence of terrain and gadgets. + +Refactored the code, Filename and Date are immutable by default. + +0.2.27 +------ + +2016-02-21 + +Fix #49: Animate gadgets (most importantly, water and fire) on level start. + +0.2.26 +------ + +2016-02-21 + +Game saves level result on leaving play, or on loading an old state. +Autoreplays are only saved on leaving the game. Should they be saved on +reaching the end-of-game dialog already? + +0.2.25 +------ + +2016-02-20 + +The singleplayer browser shows checkmarks next to solved levels. However, +the game doesn't save any new checkmarks on winning yet. + +0.2.24 +------ + +2016-02-17 + +The editor draws white rectangles around all mouse-hovered terrain pieces. +Refactored TerPos and GadPos to be subclasses of AbstractPos, not structs. + +Fix: Editor dark terrain doesn't overwrite gadgets anymore. + +0.2.23 +------ + +2016-02-16 + +Editor renders terrain and gadgets. It uses the same scroll starting position +as the game. I want to reintroduce the manual scroll starting position. + +0.2.22 +------ + +2016-02-15 + +Fixed #44: We sort dirs and levels according to the listing _order.X.txt. + +0.2.21 +------ + +2016-02-14 + +In singleplayer, lix start spawning 1 second after level start, not 4 seconds +after start. The nan-nan sound is played when you start the game, or whenever +you revert to the starting position. + +Fixed #48: Assertion failure of climber on torus maps. +Fixed sprite positioning of the climber. + +0.2.20 +------ + +2016-02-12 + +The panel displays elapsed minutes and seconds since level start. + +Time limits or overtime haven't been introduced yet. I'm considering to +cull singleplayer time limits from the game altogether. + +0.2.19 +------ + +2016-02-11 + +Fixed an assert fail for new users upon entering the singleplayer browser. + +Added a command-line switch to force true fullscreen an arbitrary resolution. +This makes the game run for Ramond. If you have problems getting Lix to run, +try the following, replacing 1600x900 with your possibly different resolution: + + lix --hardfull=1600x900 + +0.2.18 +------ + +2016-02-10 + +Sped up turbo-fast-forward: I auto-savestate only every 50 frames instead of +every 10 frames during turbo-fast-forward. + +0.2.17 +------ + +2016-02-09 + +Tiles are loaded differently, depending on whether they're terrain or gadgets. +Terrain tiles are loaded with an extra physics map, and a white copy of +themselves for fast dark-drawing. + +I don't think this speeds up the creation of the physics mask, I'm still pretty +slow with that. This vastly speeds up the creation of the level preview image +and the VRAM level bitmap. There is profiling by RAM/VRAM and by drawing mode +of the tiles. + +Fixed an assert fail in the file listings used by the browser. + +Fixed #40: Misaligned image/physics for dark piece. +I want to ask Clam before I close this issue. + +Culled the trampolines. + +0.2.16 +------ + +2016-02-06 + +Started the editor. It displays terrain and can be exited. +There is much to do still with terrain handling, dark, and no-overwrite. + +0.2.15 +------ + +2016-02-04 + +Slightly simplified the keyboard code. I don't believe this fixes Nepster's +stuck keys, but it might be worthwhile to ask Nepster nonetheless about it. + +0.2.14 +------ + +2016-02-03 + +Culled the per-level option to set a custom screen starting position. +The game centers on the average position of all hatches. This accounts +for arbitrary distributions of hatches on tori. + +0.2.13 +------ + +2016-02-02 + +Blocker -> walker: removed 1 frame of the anim, to mimick C++ behavior. +There is an entire unused frame now in the blocker->walker anim now. + +Most things -> walker: Added a stand-still walker frame. + +Floater y speed should match C++ floater. + +0.2.12 +------ + +2016-02-02 + +Platformer should behave as in C++ Lix now: The first brick is 8 pixels long, +all bricks while kneeling are 6 pixels long. + +0.2.11 +------ + +2016-02-01 + +Fixed left-facing bashers, they now ignore steel in the top 2 hi-res pixels. + +Floater assignments don't cancel the builder queue anymore. + +0.2.10 +------ + +2016-01-31 + +Disabled the extra console on Windows by linking with -L/subsystem:windows. + +Panel offers imploders. + +Listing the included level's name in the replay browser when the pointed-to +level is not there. There's a bug left over for now anyway, see commit message. + +0.2.9 +----- + +2016-01-31 + +Fixed 3 little bugs: Effects are correctly deleted after framestepping back. +On deleting a replay, the browser highlights the next one correctly again. +The file browser title bar shows the correct subdirectory on browser startup. + +0.2.8 +----- + +2016-01-31 + +Implement #34: The game mimicks the level tree when saving replays. + +0.2.7 +----- + +2016-01-30 + +Fix #35: Omitting drawing allowed bypassing traps. + +The lix eye coordinate is used to determine where trigger areas affect the +lix. Before this fix, the eye coordinate was only updated on drawing the +lix, becasue the fuse should be positioned there. This allowed to bypass +traps with the head. + +Also refactored over 1,000 lines of game code, for a slightly better separation +of physics model and controlling/drawing code. + +0.2.6 +----- + +2016-01-28 + +Fixed crash during replay verification upon nuking. + +0.2.5 +----- + +2016-01-28 + +Making shutdown much faster by not freeing any RAM or VRAM. +This is standard for RAM, I have to read up on VRAM practises. + +Loading way less internal data for replay verification, speeding up the +startup in that mode massively. We have to decide whether the spritesheet +should affect physics. Right now, existence of frames and eye positions +are meaningful for the physics. + +0.2.4 +----- + +2016-01-27 + +Noninteractive Replay verification implemented. +Run it from the command line, as in C++ Lix: +bin/lix --verify=replays/solutions +bin/lix --verify=replays/manual/myreplay.txt + +Fix: Don't save every possible replay into replays/network/. + +Refactoring: Renamed PerformedActivity to Job. Made graphic objects, lixes, +and gadgets take a Topology on construction instead of a Torbit. This makes +the design much more lightweight, we don't even have to generate a Map for the +noninteractive Game. + +0.2.3 +----- + +2016-01-26 + +Command-line argument `--fullscreen' forces fullscreen, no matter what the +user settings are. + +The menu-OK hotkey always performs the most sensible action in the window +during a singleplayer game: resume if it's not at the end, exit if won, +restart if failed. + +Editor button in the singleplayer browser, but it doesn't do anything yet. + +0.2.2 +----- + +2016-01-25 + +Fix #15: Basher always left relics. The basher mask is 2 pixels wider in D +Lix. The relics check accounts for that now. + +We wanted to start the basher faster by 2 frames in C++ Lix, to make it +more powerful. Right now, this is implemented in D Lix, because I used as +many recommendations by geoo as I could. In light of the mask that reaches +further by 2 pixels, we should discuss that again. The faster-starting +basher is still OK, probably. + +0.2.1 +----- + +2016-01-25 + +Implemented ask-for-username menu when no name is given. This prevents having +no name set, and therefore being unable to save options. + +Covered the empty space for the spawnint buttons with the info bar for now. + +0.2.0 +----- + +2016-01-24 + +This is a test release, designed to try singleplayer. Don't replace your +existing installation of Lix with this D/A5 port yet. Keep it separate. + +Minim has designed several scaled-up versions of the internal graphics. +They're visible whenever the game's resolution is at least 1.5 times as big +as the old 640x480. Many thanks to Minim for this work! + +Levels and terrain graphics have been updated from C++ Lix. + +I'm cross-compiling to Windows from Linux now. Let me know of any problems. + +0.1.40 +------ + +2016-01-23 + +Top-left corner of map shows the floating 'R' while replaying. The FPS are +shown on the panel right now, that's intended as a temporary solution only. + +Lix target info in the panel shows (RCF) for runners/climbers/floaters, and +displays the number of bricks left for builders and platformers. + +Replays cancel on LMB anywhere, and on activating the nuke. + +Fix: With lixes returning equal priority, the closest one to the cursor is +preferred for an assignment. Previous bug: the farthest one was preferred. +Inverting priority doesn't invert this check, which is correct. + +0.1.39 +------ + +2016-01-22 + +Fix #32: With mouse speed different from 20, RMB-scrolling continued to +move even after the mouse has stopped moving, as long as RMB was kept down. + +0.1.38 +------ + +2016-01-22 + +The panel info bar uses the correctly recolored garden icons. They have the +correct shadow, according to the user's GUI color settings. (Even though, like +all GUI parts, they aren't recolored until the next program start.) + +graphic.gralib has been refactored into a package for better readability. + +0.1.37 +------ + +2016-01-21 + +The replay browser can delete replays. It asks for confirmation with a message +box and moves the highlighting to the next replay. + +During the game, the panel's info bar shows colored icons with numbers, +instead of the previously text-only lix counts. + +0.1.36 +------ + +2016-01-19 + +Faster drawing code, by holding bitmaps. Empty skills don't show their hotkey. +Fixed an assert fail on framestepping backwards across Phybit.needCol. + +0.1.35 +------ + +2016-01-18 + +Hatches marked as rotated in the level format spawn lemmings facing left. + +0.1.34 +------ + +2016-01-18 + +Replays are saved automatically on quitting a solved singleplayer level. +This still holds for exiting the game with Shift+Esc immediately. +No replay tree yet; replays are saved as manual/*.txt or solved/*.txt. + +0.1.33 +------ + +2016-01-18 + +Fix #12: Builders, platformers and cubers won't overwrite existing terrain. +Fix #22: Terrain removers don't draw over steel pixels. + +Neither fix has affected physics. The remover visuals were particularly +urgent, because they made steel transparent, even though they didn't remove +the steel. + +These fixes are implemented with iteration over the lookup map, then issuing +many copies of 1x1 rectangles to the graphics card. This is likely slower +than hardware shaders that examine the existing pixel. It's faster than +making lots of 1x1 sub-bitmaps on the heap, then destroying these again. + +(Miner hits steel on my 9.5-year-old laptop: 30 ms for 1x1 sub-bitmaps, 7 ms +for 1x1 rectangles. Miner digging only through non-steel earth is much faster, +about 0.1 ms, and therefore uses the previously existing drawing code.) + +The cuber sprite is transparent where it has been drawn to land already. +Now, the player can guess much better when which pixels are added. +I've added a few sparky lines to the cuber's last few frames. + +I have removed the tumbler assert. See comment on issue #21: +https://github.com/SimonN/LixD/issues/21 + +0.1.32 +------ + +2016-01-17 + +Fix #28: Empty skills are now re-selected if replenished after state loading. +Fix #29: Drawing explosions properly now. + +I haven't tested implosions. They should be drawn behind the terrain anyway, +or get a completely new animation. + +0.1.31 +------ + +2016-01-16 + +Basher ignores top two rows of his 18 rows for steel. + +Partial fix of #22: basher/miner cancels on hitting steel, but still takes +out some of the graphics. Physics are correct. + +After class Game finishes, the correct browser is loaded, either singleplayer +or replay. Browsers exit on RMB. No option to auto-save singleplayer replays +that fail the level. + +0.1.30 +------ + +2016-01-15 + +Replay browser implemented. Loads replays, renders the correct level in the +preview. Program main loop calls game with the correct level and replay file, +the game plays back the correct replay. After viewing the replay, the program +goes back to the singleplayer browser, not to the replay browser. + +Framestepping backwards is more performant over long distances, it omits +unnecessary intermediate savestates that would be discarded anyway. More ideas: +https://github.com/SimonN/LixD/issues/26 + +Slightly better text shadow positioning. Removed demo and benchmark code. + +0.1.29 +------ + +2016-01-12 + +Level preview renders and scales the level correctly, instead of displaying +only a colorful rectangle. + +User savestating is implemented including saving/loading, but it doesn't +preserve effects, see issue #23. + +Fixed bug #13: Framestepping buttons execute continuously on holding RMB. + +0.1.28 +------ + +Implemented the nuke. + +Implemented replay arrows upon skill assignments, which are correctly +played back during framestepping and after restarting the level. + +Explosions, flying pixels, and flying terrain remover equipment isn't in yet. + +0.1.27 +------ + +Miner implemented with geoo's anti-shock C++ code. + +Flingers and trampolines are implemented. + +0.1.26 +------ + +2016-01-04 + +Singleplayer browser remembers the most recently played level. + +Fixed bug #18: Assigning runner to a walker didn't make her run immediately. +Fixed bug #20: Assigning exploder to builder crashed the game due to +inability to return skills. + +Fixed climber horizontal alignment with the wall, the alignment was set +correctly previously, but never reset correctly. + +Exploder with flinging is now implemented similar to how it was in C++. +It should be checked for accuracy, once loading replays from disk is +implemented. + +Fixed a crash on becoming tumbler. There is still an elusive assert fail +triggerable in the tumbler function. That should be debugged once replays +can be loaded from disk. + +0.1.25 +------ + +2016-01-03 + +Fixed bug #19: Tumbler selected only frames 2 or 3. Now, it selects its frame +by angle of flight now, while not advancing too far in any single frame. +https://github.com/SimonN/LixD/issues/19 + +0.1.24 +------ + +2016-01-02 + +Fixed bug #10: Map drawing: Target area too large. +https://github.com/SimonN/LixD/issues/10 + +0.1.23 +------ + +2016-01-01 + +Options menu complete. Some options don't do anything yet, but are loaded/saved +correctly nonetheless. Removed fullscreen resolution option. Switching users +works. Switching Language works. + +I found the first bug of 2016 in the D compiler. ^_^ + +0.1.22 +------ + +2015-12-31 + +Implemented GUI elements: Text entry, number picker, hotkey picker. +In the options menu, implemented 2/3 hotkey pages, and the graphics page. +Each hotkeyed button displays its hotkey in the bottom-right-hand corner. + +Added 0.5f to the djvuM offset (the main font's vertical position), now +it looks great on 640x480, 800x600, 1280x1024, and 1400x1050. + +0.1.21 +------ + +2015-12-29 + +Implemented goals (exits), triggered traps, and dying outside of the level. +Implemented the Esc-during-level menu and the end-of-level menu. No browser +to save/view replays yet. Begun implementing the options menu. + +0.1.17 +------ + +2015-12-17 + +Bugfix: Blockers are now released upon walker assignment. + +0.1.16 +------ + +2015-12-16 + +All skills are implemented fully or mostly each, except for the miner, +which is missing completely still. Effects, like arrows, flying dig hammers, +and explosions, are missing. + +Skills behave mostly identical to C++ Lix. Some extremely arcane behavioral +bugs were fixed while porting; report if things behave obviously strangely. +Probably also report if things behave differently. + +Known differences: Exploder crater is 1 pixel smaller, diameter of 46 pixels +instead of 47 pixels, but should be completely symmetrical now. Blocker +doesn't get released on walker assignment; this fixed only in 0.1.17. + +0.1.12 +------ + +2015-11-30 + +Implemented builder and digger. The builder still draws on top of existing +land, which is merely a visual bug, not a physics bug. The digger makes +steel transparent, but the steel and terrain data inside the steel remains +present for physics; again only a visual bug. + +0.1.5 +----- + +2015-11-19 + +Map detects mouse on the land properly, at least with zoom == 1. Priority +computation has been ported over. You can click lix and hear the assign +sound being played if the assignment were legal. Assignments aren't in yet. + +0.1.4 +----- + +2015-11-15 + +Walker, Faller and Ascender are implemented and should perform like their +C++ versions. I would like to keep close to the C++ behavior for now. +Savestates have been implemented for framestepping. Skill assignments +are not possible yet. + +0.1.2 +----- + +2015-10-30 + +Started implementing Lix skills. There will likely be no problem with them +scanning the terrain from the lookupmap. I'm anxious about them writing to +the terrain later on, when the more interesting skills get added. + +0.1.0 +----- + +2015-08-24 + +First Windows build released on Lemmings Forums as a smoke test. It runs +well for most people. Drawing has bad performance still with about 3,500 +animated gadgets, but is much better with about 200 than in the previous +months. + +0.0.0 +----- + +2015-02-28 + +Started development by porting the fundamental Lix graphic classes from +Allegro 4.4 to Allegro 5 with the D Programming Language. + +C++ Lix +------- + +2006 to 2016 @@ -1,6 +1,6 @@ pkgbase = lix pkgdesc = An action-puzzle game inspired by Lemmings - pkgver = 0.9.48 + pkgver = 0.10.0 pkgrel = 1 url = http://www.lixgame.com/ changelog = .CHANGELOG @@ -14,7 +14,7 @@ pkgbase = lix depends = enet depends = hicolor-icon-theme depends = liblphobos - source = lix-0.9.48.src.tar.gz::https://github.com/SimonN/LixD/archive/v0.9.48.tar.gz + source = lix-0.10.0.src.tar.gz::https://github.com/SimonN/LixD/archive/v0.10.0.tar.gz source = lix-music-1.zip::http://www.lixgame.com/dow/lix-music.zip source = lix-allegro::git+https://github.com/SiegeLord/DAllegro5.git#tag=v4.0.4+5.2.0 source = lix-bolts::git+https://github.com/aliak00/bolts.git#tag=v1.3.1 @@ -27,7 +27,7 @@ pkgbase = lix source = lix-silly::git+https://gitlab.com/AntonMeep/silly.git#tag=v1.0.2 source = lix-taggedalgebraic::git+https://github.com/s-ludwig/taggedalgebraic.git#tag=v0.11.22 source = lix-unit-threaded::git+https://github.com/atilaneves/unit-threaded.git#tag=v0.7.55 - sha512sums = 27e7e432625c9f6197601cea1062f8861cc4f82559f2b7fb74740b137cc6cf6f8bddec8146f821ba477d58676eb7b365922d390fa2fe5e4a649a9a9502afa2dc + sha512sums = 92625d77ee2c200b4430c36b9e7cd9bccfd12671e81a6f642cce592c51054e924a50d555aeacdc94f355a6150745cd5eca5296bc0f11636c2a1145627c9d4164 sha512sums = 37349c98b739ea43c25137dd03865f1c9c41eec91e5edc109afd9d50ce3871bd0c7f63c3f3599a47bb4ef52f5bfd14e034010de0ac2aec5a9c0c83eaf0b89425 sha512sums = SKIP sha512sums = SKIP @@ -4,12 +4,12 @@ # shellcheck disable=2034,2154 pkgname=lix -pkgver=0.9.48 +pkgver=0.10.0 pkgrel=1 changelog=.CHANGELOG source=("$pkgname-$pkgver.src.tar.gz::https://github.com/SimonN/LixD/archive/v$pkgver.tar.gz" "$pkgname-music-1.zip::http://www.lixgame.com/dow/lix-music.zip") -sha512sums=('27e7e432625c9f6197601cea1062f8861cc4f82559f2b7fb74740b137cc6cf6f8bddec8146f821ba477d58676eb7b365922d390fa2fe5e4a649a9a9502afa2dc' +sha512sums=('92625d77ee2c200b4430c36b9e7cd9bccfd12671e81a6f642cce592c51054e924a50d555aeacdc94f355a6150745cd5eca5296bc0f11636c2a1145627c9d4164' '37349c98b739ea43c25137dd03865f1c9c41eec91e5edc109afd9d50ce3871bd0c7f63c3f3599a47bb4ef52f5bfd14e034010de0ac2aec5a9c0c83eaf0b89425') _gitname=LixD |