 _____________________________________________________________________________
/                                                                             \
|   Lix                                                     Version History   |
\_____________________________________________________________________________/



2016-01-09

    This is a bugfix-only release. Physics should be the same as before:
    All versions since 2015-08-09 should have identical physics.

    Bugfix: Too many effects generated during framestepping

        Assume you have assigned an exploder/imploder in 1-player, and the
        game has progressed a few frames past the explosion. If you now
        frame-step backwards, in a few frames right after the explosion,
        explosion effects will be created each frame you step back."

        Skip back several times, and sounds/arrows/explosions would appear
        every time you go back a frame.

    Replay verifier: 5x as fast

        We don't save auto-savestates anymore during noninteractive replay
        verification. They were inaccessible, useless, and slowed things down.

    Fast-forward click handling

        As NaOH has described on lemmingsforums:

        If the turbo button is down, it should be as easy as possible to stop
        turbo mode. In particular, looking at the turbo button down, it would
        make sense that clicking on it should deactivate it.

        On the other hand, it might make sense to want to speed up ffwd->turbo
        with a single click, if one tentatively enables ffwd mode and then
        becomes impatient.

        So (and this is clearly confusing behaviour), maybe the best would be
        this set of interactions:

        normal speed, left  click   ->   ffwd
        normal speed, right click   ->   turbo
        ffwd  mode  , left  click   ->   normal speed
        ffwd  mode  , right click   ->   turbo
        turbo mode  , left  click   ->   normal speed
        turbo mode  , right click   ->   normal speed

    L1 levels: read 2 bytes, ignore big byte

        Some values in the L1 format were treated as 2 byte values while
        one of the two bytes should be ignored. Fixed.
        This especially affects Lemmix levels exported with NeoLemmix.

    Swapped places of the "classic 8" and "modern 12" buttons in the editor.

    Some umlauts in some German tutorial texts.



2015-09-02

    Bugfix: Flickering framestepping button
        In multiplayer, one of the framestepping buttons was not properly
        hidden, and could be activated with its hotkey. That paused the game,
        which is not possible otherwise in multiplayer. Button is hidden now.

    Fennec hatch by geoo
        There's a new hatch, images/geoo/sandstone/fennec.H.

    Framestepping: 10 seconds ahead
        The secondary function of the button to framestep ahead is now
        to skip 10 seconds instead of 1 second. Reasoning: You could wait
        one second anyway, or use fast-forward. Even though you can queue
        builders and don't have to chain them every 10 seconds, skipping
        10 seconds is useful for many other precise long skips.

    Default screen settings
        Windowed mode is the default mode on a fresh installation.
        Fullscreen mode takes by default the user's desktop resolution
        instead of 640 x 480.

    Bugfix: Dates and checkmarks
        Level metadata is correctly initialized with a zero date now.
        This prevents strange "?!" icons even though a level has been solved,
        when the level doesn't specify the date when it was built/modified.

    Hints are hidden on level restart

    Bugfix: Button down
        When a two-tasks-button like the framestepping buttons is activated
        with its secondary hotkey, it appears pressed down, like when it's
        activated with its primary hotkey.



2015-09-01

    This version has identical physics to the previous release. These
    versions can play a networked game together, and exchange replays.

    Please pay attention to your existing hotkeys. The framestepping
    buttons, as described in the first item below, add three new hotkeys.
    Their default mappings are on the number row. Check out the ingame
    hotkeys in the options menu. Please remap your keys as appropriate.

    Framestepping buttons
        The ingame panel features different buttons now. You can advance and
        take back individual frames in singleplayer games and replays.

        They can be used in two ways: A normal function, accessible with the
        left mouse button and a hotkey, and an amplified function, accessible
        with the right mouse button and a secondary hotkey. The amplified
        function is always a stronger version of the normal function.

        Spawn interval buttons have the same left/right-click interface.
        A right click sets the spawn interval to the minimum/maximum.

    Amanda's forest tileset
        Amanda (NaOH) has designed a new forest tileset. Many thanks
        for this artistic set! It resides in images/amanda/forest/.

    Rubix's level pack
        Rubix has included a 6th rank in his single player pack.

    Bugfix: Spawn interval button flickering
        The text on the spawn-interval-changing buttons won't flicker anymore.

    Bugfix: Hint buttons were garbled
        They're now looking properly again, and still replace the zoom button.
        I should think of a solution for this missing button sometime, in
        levels that feature hints.

    Bugfix: Replay cancels on skill selection
        When the game is replaying something, you can cancel the game by
        pressing a skill hotkey, or by clicking a skill button with the mouse.

    Highlight next file after deletion
        In the large browsers, when you delete a file, the browser will now
        highlight the next file. It won't reset the highlighting to nothing.

    Digger looks better
        The digging hammer is now striped black and orange. The hammer bursts
        into pieces upon hitting steel and flies through the air, much like a
        pickaxe.

    Better-looking hatches
        The hut hatch from Matt's Earth tileset looks much better when
        floating in mid-air now. Hatch001 from my own directory has a
        granite texture.



2015-08-09

    Snappier terrain removal
        Basher, miner, and digger all remove terrin in a single frame during
        their animation. This prevents mid-stroke cancelling and basher
        staircases. Basher and digger have received entirelly new animations.

    Untimed singleplayer exploders
        Singleplayer exploder assignments will immediately make an explosion
        and not use the 5-second countdown anymore. Older replays are amended
        for this, but will likely break still due to the terrain removal
        changes explained above.

        Multiplayer exploders are still timed for balancing.

    Clam's levels
        Clam has updated many of his singleplayer levels.

    Many more changes
        Look at my github commit log:

        https://github.com/SimonN/Lix/commits/master



2015-07-08

    (experimental version, please don't play on the central server)

    Blocker/goal bugfix
        It's not possible anymore to assign skills to lix that would exit
        immediately when not assigned anything. Before, it was possible to
        wait for a stunned lix inside a goal trigger area to get up, then
        assign blocker. The blocker would prevent others from exiting and
        not exit herself.



2015-07-07

    Level format ignores skill order
        The editor will not save skills in any particular order anymore,
        and the game doesn't care about the order of skills in a level. It
        will display the skills in the default level-independent order.

        Level pack maintainers: The batch replay checker (--verify=path/to/dir)
        will continue to work with old replays that depend on the skill order.
        Only when a level updates and becomes order-independent, such old
        replays break. Workaround: While you still have the order-dependent
        level, open the replay and save it with the current Lix version.
        This converts the replay to become independent of skill order, and it
        will work with both level versions.



2015-06-24

    Untimed singleplayer exploders
        Both the flinging and non-flinging exploders activate instantly
        after assignment, without the 5-second fuse. Multiplayer plays exactly
        as before, with the fuse. Nukes behave like the exploder in the
        current game mode. Old replays are loaded correctly, exploder and
        nuke assignments in singleplayer are shifted correctly.

    Detonator animation
        The non-flinging exploder has a longer animation now, 8 frames instead
        of 4. Feedback is welcome. We need to make obvious that this can be
        assigned in mid-air and will explode instantly there -- the detonator
        animation doesn't make it obvious.

    Replay format
        Switching skills is no longer a part of replays. Each assignment
        carries the appropriate skill instead. Old replays are loaded
        correctly. You can switch skills without cancelling a running replay.

    Tooltips
        Allegedly undiscoverable features of the game have tooltips now.
        There's an option to switch off all of these tooltips, since they
        can get annoying over time. We have tooltips for:

        * queuing builders and platformers,
        * selecting lix walking left/right,
        * inverting priority,
        * right-click scrolling.



2015-06-04

    Skill panel in options menu
        The options menu has always allowed remapping the skill hotkeys. Now,
        skills in the options menu are presented in a row, exactly like they
        would appear during game.



2015-06-02

    14 skills in panel
        During the game, the skill panel displays all 14 implemented skills.
        To maintain backward compatibility, only 12 skills can be used per
        level. The two exploders still aren't differentiated enough.

    User-sortable skills
        The skills are automatically sorted when a level starts. The player
        can define a custom sort order. This doesn't have a dialog in the
        user options yet. If you want to sort the skills, start and exit the
        game once, then edit your user config file (data/config/yourname.txt).
        Instructions are written into that file.

    Colored multiplayer score graph
        During the multiplayer game, the panel displays a bar graph with each
        team's current score and potential score. Before this version, the
        panel displayed two cups with similar information. Very few people
        have looked at that. The bar graph is simpler and faster to interpret.

    Runner rolls into a ball
        A running jumper has a new animation now, it rolls into a ball during
        the jump. The physics are exactly the same as before.

    Avoid exploder -> batter off by default
        The user option "avoid exploder -> batter" is off by default now.
        The default should match a new player's expectation.

        You can hold RMB (right mouse button) to invert priority during skill
        assignment. Walking exploders have higher priority than normal walkers.
        Since it's often more useful to bat exploders, than to have the
        exploder bat non-exploders, the option inverted the exploder priority
        when batter was the selected skill. The option was on by default, but
        it has always confused new players. The option is still there now,
        but switched off in a fresh installation.



2015-04-25

    lemforum, the pack by lemmingsforums.net
        The new singleplayer pack lemforum is a joint work by many forum users
        from lemmingsforums.com. It has been in the making since 2012.

        Many thanks to our ingenious level designers! The most active authors:
        Insane Steve, Michael, geoo, mobius, Nortaneous.

    Unicode support
        Lix now allows Unicode characters (German umlauts, French/Hungarian
        accented letters, etc.) in the user interface. The German texts
        have been amended with umlauts. If you would like to translate the
        game to your language, please read doc/transl.txt.

        Many thanks to ccexplore for implementing this feature!

    F1-F12 positional hotkeys
        Some people might like to have the 12 F-keys mapped to the 12 skill
        keys, even though levels have different skills, differently ordered.
        There's a user option now to map the F-keys to the displayed skills

        I believe this to be too slow in multiplayer, and instead
        recommend to learn a per-skill keyboard layout that doesn't change
        between levels. It can be the default layout, or a custom one.

    Rubix's multiplayer maps
        I've merged in a couple of multiplayer map amendments by Rubix.

    Lemmings 1 level import bugfix
        In .LVL levels from Lemmings 1, interactive objects were moved to a
        multiple of 4 in the y-direction. This was wrong and is no longer so.

    Lemmigns 1 Crystal set colors
        The Crystal set gets its solid black replaced with a lighter
        turquoise than before, but it's still darker than any other set color.



2015-02-03

    Cross-compilation
        The makefile got a target "cross" to generate Windows binaries from
        a Linux-hosted installation of MinGW. I've documented extensively
        how to set up the cross compiler. The Windows downloadable on my
        website contains a cross-compiled binary from this setup, so users
        are encouraged to test it for possible oddities.

    Torus drawing bugfix
        Drawing trigger area rectangles were mistakenly torus-drawn in both
        directions even if the map wrapped around only horizontally. This is
        now fixed.



2015-01-30

    Tutorial levels
        We had agreed to ship them with the game, but I forgot to use them
        in my release script. Now, they're shipped with the main release.

    Nuke button on replays
        Single-clicking the nuke button or hitting its hotkey once does not
        cancel a replay anymore. Only double-clicking it, holding its hotkey
        for a little while, or hitting the key twice cancel a replay.

    Editor exit bugfix
        The following behavior is now fixed: In a directory in which no level
        is selected, you could press Edit to start a new blank level. After
        some changes and pressing "exit editor", Lix asked about saving to
        a new file. Upon entering and saving, Lix crashed or locked up.

    Editor graphics bugfix
        In the editor's save browser, after typing in a filename and
        leaving focus of the type field, the editor status bar vanished until
        the browser was closed. This is now fixed.

    Save browser made easier
        After typing in a filename and hitting enter, the save browser now
        saves the file immediately and exits. Before, hitting enter only
        disabled the type field, and the user had to click OK or hit its
        hotkey manually.



2015-01-28

    End of multiplayer bugfix
        The game didn't end automatically for everyone after there were
        no more lix in play. It should end now.

    Early replay data bugfix
        Old replays from before 2015-01-25 were amended internally to move
        all replay data from the skipped 2 seconds to the new beginning.
        Some of that data was ignored, this is now fixed.



2015-01-27

    #include order bugfix
        Since the replay verifier, no Windows build could be made due to
        a wrong #include order in the source. This is now fixed.



2015-01-26

    Result preference
        A singleplayer result from an old version of the level that saves
        enough lix to reach the new level version's required number is
        preferred over a result from the new version that doesn't solve.

    Replay verifier output
        This outputs the replay filename, the pointed-to level filename,
        the player, the number of saved and required lix, the number of
        skills used in total, and the number of updates, i.e., time units.

    Replay verifier bugfix
        The command-line replay verifier crashed when the user option to show
        hotkeys on the skill bar was activated.

    Directory checking bugfix
        Normal files were confused with directories. This affected the
        automatic replay verifier.



2015-01-25

    Soft time limit in singleplayer
        When running out of time in singlepalyer, instead of nuking, the exits
        will not add further saved lix to the saved score. Instead, such
        lix will be added to a saved-too-late score that is ignored for the
        solution. This allows the player to practise timed levels easier.
        However, there is no time bonus from the nuke any more, which has
        allowed late-spawned lix to walk on and exit after running out of time.

    Exiters count immediately
        When a lix reaches an exit, it's counted immediately towards the
        score. The lix doesn't have to go through its animation first. The game
        will wait until all exiters have gone through their animation before
        exiting singleplayer or, in multiplayer, triggering overtime.

    Faster first spawn
        In singleplayer levels, tutorial or not, lixes spawn 2 seconds after
        starting the level instead of 4 seconds. In multiplayer, they still
        take 4 seconds. Singleplayer time limits, therefore, are more lenient
        by 2 seconds now. This helps offsetting the missing nuke time bonus,
        see the feature "Soft time limit in singleplayer" above. The quicker
        spawn feels nice.

    Steel image bugfix
        The game tried to detect a graphics grid in steel objects, and
        therefore cut such pieces into frames when the top left 2x2 pixel block
        satisfied the grid condition. Now, steel is never cut into pieces.

    Documentation to CRLF endings
        The text files in doc/ and the main README.TXT have been changed back
        to CRLF line endings instead of just LF. Windows Notepad users can now
        enjoy the files.



2015-01-19

    Walker bugfix
        Assume a water object covered by a steel block of the exact same size
        and position. If a walker turned at this steel block, the walker
        drowned instead. This undesired behavior is now fixed.

    Floater bugfix
        A floater with high horizontal speed could land on a perfectly vertical
        wall and be assigned various skills before falling. The floater code
        has been almost completely rewritten to rule this out.

    Archive flag bugfix
        On Windows systems, the directory archive bit shouldn't affect anymore
        whether directories can be found from within the game.



2014-12-12

    Noninteractive replay verification
        Level pack maintainers can now verify entire directories full of
        replays to see whether they still work after physics updates or level
        editing. To learn how to do this, please read about command line switch
        "--verify=" documented in doc/readme.txt.

    100-% marks and little rings
        The singleplayer level browser displays a 100-% sign instead of the
        normal checkmark if a level has been solved with 100 %. It displays
        a little ring next to levels that have been tried, but not yet beaten.

    Editor save window bugfix
        Chroda has sent in a bug report: The level save browser said
        "filename" twice at the top, instead of "filename" and "level name".
        This is now fixed.

    Editor terrain browser RMB bugfix
        The terrain browser now exits properly whenever you right-click
        anywhere. Before, you had to right-click inside the image listing.



2014-07-07

    Mouse code
        sekti has send in better mouse code for Fullscreen. A hidden option
        MOUSE_ACCELERATION 0 can be set to 1 in the user configuration to
        choose mouse acceleration on Windows. It shouldn't have an effect
        on other platforms.

    Hotkey displaying bugfix
        If the user disables displayed hotkeys during the game, this option
        will now get saved to the configuration file properly.

    Disk saving sound
        A sound plays as feedback for writing levels, replays, or images to
        disk, or when making a savestate during the game.

    Amanda's multiplayer maps
        I forgot her maps in the release last week, now the maps are included.



2014-07-02

    Late steel cancelling
        Bashers and miners will always complete their stroke before cancelling
        due to a steel encounter earlier in the same stroke. Diggers are not
        changed to this behavior, they would move into steel if they were
        changed.

    Digger-cancelling bugfix
        Diggers cannot be reverted to walkers anymore by assigning miner or
        blocker in certain frames. If these skills are assigned to a digger
        now, they will be carried out normally, instead of terminating
        immediately due to lack of specific terrain. The fix consists of a
        slight amendment of the digger's terrain-removing mask and the digger's
        positioning.

    Miner bugfix
        The miner doesn't get an extra falling distance pixel when becoming
        faller. The unreleased version 2014-06-27 had a bug in this bugfix
        where the miner would stop at a gap below the terrain under his feet,
        but that is now fixed as well.

    Climber-ascender bugfix
        If a non-flinging exploder removes all terrain in front of a climber,
        it will not ascend in mid-air or further above anymore, it will simply
        move ahead and fall into the new gap.

    Platform jumping bugfix
        Jumpers could jump into a thin platform from below and proceed to
        ascend it. This is now fixed.

    Builder reimbursement bugfix
        Runners reimbursed queued builders and platformers twice, allowing
        to create builders from nothing. This is now fixed.

    No anti-blocker field
        The anti-blocker field around exits in multiplayer is a relic from
        the very first networking versions. Flinging exploders and batters are
        very popular in blocker levels, so the anti-blocker field is gone now.
        It was irritating to almost all players.

    Removing early nukes
        In singleplayer, if you nuke before the first lix spawns, this nuke
        is removed from the replay upon restarting the level.

    Esoteric skill hotkeys
        Undocumented skills like stunner, burner, ..., can still be used by
        hand-editing a level file, but don't get the "(no" hotkey written on
        them due to nonexistant keybinds.

    Directional force transmission
        Assignments in the replay now carry information about whether the
        player has used directional force, a.k.a. directional select. This
        makes multiplayer team games much easier: If both players force the
        same walker assignment to turn a lix, the result will be just one
        assignment.

    Default directional force keys
        Qwerty S and F are now used per default for dir force. Having it on
        A and S like before is less intuitive for new players.

    Lobby uses back/cancel key
        The lobby can be quit with the back/cancel hotkey. Accidental quittings
        can be remedied fast anyway, since most games are on the central server
        or hosted by someone running the daemon lixd. In the early networking
        version days, I wanted to prevent the host from accidentally leaving
        the lobby and thus kicking all peers.

    Bracketed checkmarks bugfix
        Bracketed checkmarks in the singleplayer browser properly vanish after
        the level gets replaced with an older version and solved again.

    Aligned editor dragging bugfix
        The editor preserves the relative alignment of the dragged selection.
        Only the tile grabbed with the mouse is aligned to the grid.

    Beach set hatch, exit
        The beach set hatch is now a pail animated by Matt. The exit is the
        sandcastle that was used previously as a hatch. The old hatch and
        palm tree exits were sometimes confused for each other.

    Beach set palm tree
        The palm tree in the beach set was probably not compatible with the
        CC0 waiver/fallback license, so it has been replaced by another tree
        drawn by Amanda. Thanks!

    Rubix's and Clam's maps
        Clams singleplayer levels have been updated, and so have Rubix's
        singleplayer and multiplayer levels. There are assault maps in
        levels/network/2p/rubix/atk-def/ to be played in two rounds, or as 2v2.



2014-04-04

    Amanda's occult tileset
        There is a new tileset with an occult Lovecraftian theme in
        images/amanda/. Many thanks to Amanda (NaOH) for allowing me to
        release it with Lix!

    Amanda's menu background image
        Further thanks to her for the great new main menu screen!

    Rubix's levels
        Both Rubix's singleplayer and multiplayer levels have been updated.
        His singleplayer collection is now Epic Adventure.

    hasufell's bugfixes
        hasufell from github has submitted several small fixes, mostly for the
        game's Makefile and libpng usage. Thanks!

    Team game bugfix
        Partners giving simultaneous assignments to the same lix caused a
        race bug. Such assignments are now ordered by player order, the same
        assignment is now the last one everywhere.

    Basher bugfix
        A basher without ground was previously able to survive a little deeper
        a fall than walkers.

    Ascender bugfix
        In rare cases, jumping climbers hit an edge and ascended way above it,
        looking weird and allowing assignments in midair afterwards.

    Chat bugfix
        Text input for the in-game chat looked garbled, it's better now.

    _order.X.txt for dirs
        If directory names are given in the level ordering file, either as
        "dirname" or as "dirname/" without quotes, matching subdirectories
        are sorted in the directory list just like levels in the level list.

    Tutorial and Phil's levels temporarily out
        The tutorials are being revised entirely. Phil's levels need
        adjustments, exits and traps are currently oddly placed or buried
        in the terrain.



2013-09-16

    Hint system
        Level hints are different from tutorials, they are shown sequentially.
        The Editor cannot edit hints, but leaves them in the file properly.
        No in-game hotkeys are assigned, and zoom is not available in levels
        with hints. doc/files.txt is updated with the hints/tutorial format.

    Main menu background image
        We now have a main menu background image by Mikex62 from the Lemmings
        Forums. Many thanks!

    Rubix's singleplayer levels
        Rubix has made some updates to his singleplayer levels.



2012-08-06

    Skill reimbursement bugfixes
        Quick builder-platformer-builder-platformer-... assignments will not
        delay a lix gratis anymore. Assigning walker didn't reimburse queued
        builders/platformers, but now it does.

    Legacy terrain bugfix
        Terrain from L1, ONML, Holiday, L2 could still be added, but the editor
        didn't list it in the browser. Now it does.



2012-06-28

    Proxima's terrain updated
        The pieces fit together better when using the 16-sized grid.
        There are 14 spheres in many colors now.



2012-06-27

    Proxima's terrain
        A new blocky terrain style by Proxima.

    Clam's levels updated
        Now with ordering files, directory description, and a few changes
        in the levels themselves.

    Multiplayer levels
        A couple of new multiplayer levels from geoo, thick molasses (TM),
        and me.

    Drawing order bugfix
        Workers are drawn properly over walkers again.

    Editor mirroring bugfix
        Select many pieces and hit the mirror button. Each piece was mirrored
        in place horizontally (correct), then each piece moved as if the
        selection should be mirrored vertically (false). Now fixed.

    Fast-forward and debris
        Don't wait anymore for the debris to clean up (exploder leftovers)
        before displaying end-of-level thing iff (ffwd or turbo-ffwd) is on.



(2011 to 2012)

    Lots of things.
        See commit messages: https://github.com/SimonN/Lix/commits/master

    Sprites done
        All lix skills now have sprites. Some might change slightly, but this
        is already very good to go.



2011-09-03

    (This is just a summary of the development in the past two months)

    New skills
        We now have the baseball batter, the runner, and the cuber.

    Physics updates
        We've done a lot of small physics fixes and features. Among others,
        climbers will stick to the wall when they jump into one and aren't
        a tumbler yet.

    Spectator mode
        It's now possible to observe live multiplayer games without
        participating or even hitting a button at the end of the game.

    Automatic replays
        Replays are saved into replay/auto/, unless the user disables that
        in the options.

    Many bugfixes
        Read the git commit messages if you wish to know everything.



2011-07-13

    Sprites
        Drew the exploder, two drowners, and included the previously drawn
        second splatter.

    Much more
        Read the numerous git commit messages, basically much small stuff >_>



2011-06-03

    Windows <-> Linux Desync fixed
        All terrain graphics are now loaded with even-numbered heights and
        widths. Odd sizes get expanded by a single transparent pixel row.
        The Linux port of Allegro 4.2 was rotating the graphics badly otherwise
        and will now work as expected. This fixes a desync, since the level
        terrain wasn't generated exactly the same on all machines.

        This desync never happened in L++ with the legacy Lemmings terrain,
        since was loaded with everywhere doubled pixels anyway.

    Pause and FF/FFF mutually exclusive
        Pause cancels FF/FFF/ZZZ, and vice versa.

    Digger physics
        The digger could dig alongside a steel block without terrain if placed
        with pixel precision. This is now fixed.



2011-06-01

    Digger physics
        These now match the image.

    Builder physics
        Builders can jump off their bridge at any time without getting stuck
        in the newly laid block.

        Also, they die when building out of the top of a non-wrapping level.


2011-03-05

    Skill retrieving
        When you had infinite builders, queued builders, and then cancelled
        them, you retrieved builders and ended up with very few leftover
        builders instead of still infinity. This is now fixed.



2011-03-01

    Editor bugs
        Fixed a few bugs related to numbers in strings. The bitmap browsers
        will display all images from an L1/ONML/L2 level set now instead of
        just the first 10, and the overtime is displayed properly in the
        corresponding dialogue.



2011-03-26

    Replay codewords
        The keyword LEMMING that appears in the replay files has been changed
        to the clearer and more universal ASSIGN. This and the upcoming
        versions will still read replays with the old LEMMING keyword.



2011-01-08

    999 of anything
        Instead of the old limit of 999 for both skill usages and lixes, the
        new limit is 999 now. Skills can be infinite as usual.

    Torus display
        Small torus maps will display without dark borders. In some cases,
        things will appear multiple times on the screen.



2010-10-16

    Lix redrawing
        Until now, the builder, lander and walker skills are redrawn with the
        Lix character design, to obtain completely free graphics at some time
        in the future. No frames are going to be drawn over any frames coming
        directy from the original Lemmings games.



2010-09-30

    Library version upgrades
        The game should be compiled with Allegro 4.4.1 and enet 1.3. Before,
        I've used Allegro 4.2 and enet 1.2. I'm not sure if you can connect
        to a L++ server compiled under 1.3 with an old L++ version that uses
        enet 1.2.

    Massive GUI rewrite
        It's probably not visible, but I've revamped the fundamental structure
        of my GUI code. It's now much more pleasant to write new dialogues
        with it.

    Editor hotkeys
        The editor hotkeys are fully configurable now. The default layout
        is different than before, it is now optimized for speed of the left
        hand. Moving objects around is on [E], [S], [D], [F], copying is on
        [A], and add terrain is on [Space]. Visit the options menu or switch
        on the editor's help function to learn the other hotkeys. As said,
        everything can be remapped.

    Dead lem bugfix
        If you nuked or assigned an exploder to a lem and he died before the
        explosion, he would still explode some time after he was killed. This
        is now fixed.

    Scrolling
        The middle mouse button can be used to scroll. It's off by default,
        but it can be toggled in the options menu. This allows the right mouse
        button to have only one function -- the non-priority lem assignment.

        The scroll speed of the right and middle mouse buttons can be chosen.
        The default value is 1, and this value acts as a multiplier for the
        previous versions' scroll speed.



2010-03-21

    Last public version
        This was the last version of L++ that got released to the public. This
        and the compatible 2010-03-23 version were known as the
        "March versions". The next public version were released with
        all-new ingame graphics, and the name was changed to Lix.



2010-03-11

    Builder sound
        The sound that builders and platformers make while placing their last
        bricks will only play for own lemmings during a network game. Before,
        it played in lower volume for other players as well, which was very
        distracting.



2010-03-09-02

    Chat bugfix
        Skill hotkeys and similar things are now disabled while the player is
        typing things into the chat text field.

    Background switching
        The game will now continue to run while it is in the background.
        It might be that some versions before didn't do that.



2010-03-09-01

    Hatch bugfix
        In a multiplayer match with less hatches than players, the direction
        of lems coming out of hatches alternates correctly between players
        again. It depends on the permutation now, while in several versions
        before it depended on the internal network player numbers.

    Steel bugfix
        Steel will now work properly even if it's placed in combination with
        dark and/or no-overwrite pieces.

    Climber bugfix
        In Rubix' video, you could observe strange climber behavior on the
        second map (Still everything to play for, L1 2-player map number 2).
        This is now fixed, climbers won't pass through thin walls any more.

    Builder bugfix
        Horus has found that builders could pass through thin walls right
        after becoming a builder. This is now fixed.

    Basher bugfix
        Horus has found another bug concerning bashers falling through
        land so that nobody can follow. This is also fixed now.



2010-03-09

    Lem count bugfix
        The number of lems per tribe in the level gets counted correctly
        again. This is important for the overtime and the displayed count of
        other players' lems.

    Hatch spawn point
        The point at which enter a lemming relative to a hatch has been
        revised, it's a bit lower now in some cases. Maybe this setting is to
        be kept, maybe not -- let's test.



2010-03-08-02

    Flinger bugfix
        The flingers should now animate correctly.



2010-03-08-01

    Hatch bugfix
        In the last build, lems always walked to the right when coming out of
        a hatch. This has been fixed again.

    Flinger bugfix
        Flingers will now get drawn, and hopefully fling lems into the correct
        direction.



2010-03-08

    L2 objects
        These got better trigger areas. Flingers are supported. Credits for
        all this go to geoo again.

    Hatch frame order
        The first frame is the closed hatch, the last one the fully opened
        hatch. L1 and L2 graphics get imported properly. Custom hatches should
        be fixed, if there are any.

    Editor page
        The terrain browser remembers the last page it had open when terrain
        was added to the level. Entering the browser again (by clicking the
        button in the panel or pressing its hotkey F5) opens the same page.

    Editor grid
        The editor switches to the 16 x 16 grid (8 x 8 low-res pixels) when
        an L2 piece is inserted. All newly added pieces are aligned to the
        currently selected grid, so they can be pushed around with the cursor
        keys immediately.

    Internal memory improvement
        Lems aren't saved in a linked list any more, but rather in a vector.
        I hope this will speed up games with lots of players on slow machines,
        because lems are frequently copied due to save state loading.



2010-03-06

    L2 graphic sets
        geoo has written code to load L2 graphic sets, complete with their
        special objects. Many thanks to him for this huge addition!



2010-03-05-02

    Skill panel bugfix
        A panel couldn't be selected if the panel to its right ran out of
        skills. This is now fixed.



2010-03-05

    Alt+Enter
        You can press the combination [Alt] and [Enter] to toggle between
        windowed mode and fullscreen.

    Customizable hotkeys
        The in-game hotkeys have been reordered. There is a new page in the
        options menu to assign hotkeys for every in-game command. Some players
        might prefer Clones-style hotkeys, others the traditional F-keys.

    Multiplayer winner sounds
        When the game results for a completed mutiplayer game are shown,
        a sound will be playing depending on your result.

    Editor selection
        The selection boxes of terrain pieces and others were sometimes larger
        then the graphic inside. The boxes are now cropped to fit the graphic.
        This improves the selection of pieces by a dragged rectangle.
        The graphics themselves are not cropped, so placement, rotation and
        mirroring are still based on the regular coordinates. L1/ONML levels
        can still be loaded as before.



2010-03-01

    Level end dialogue
        After a game, the statistics can be dismissed not only with [ESC], but
        also with [SPACE]. This makes it possible to just tab [SPACE] twice
        to play a level right again.

    Original two-player levels
        If there is one hatch, the first player will always get the goal on
        the right. If there are two hatches, their directions are set towards
        the level's center.



2010-02-28

    Ready checkmarks
        There was a server-side issue of not resetting readiness when a level
        was selected. This is now fixed.



2010-02-27

    Lobby bugfix
        The correct color buttons appears pushed down again when one comes
        back into the lobby after a game.

    New levels
        Gallow Flinging by geoo/Simon is included in three versions
        (2 players, 2/4 players, and 3/6 players).

    Lemming colors
        The yellow player color is now a light orange. Nobody wanted to use
        the yellow lems before!

    Replay bugfix
        The permutation gets saved into a replay properly now.



2010-02-26

    Teamplay
        Players who select the same color in multiplayer get to play the same
        tribe: They control the same lemmings and share a single skillset.
        The game treats each team like it has treated every single player in
        the versions before.

    Multiple rooms
        The server now supports multiple parallel games in separate rooms.

        While revamping the networking code for the multiple rooms, the bug
        of a level being not sent to a newly incoming player got fixed.

    New multiplayer levels
        I've gone through the Lemmings Forums and collected all the neat
        multiplayer maps. They are now included in the downloadable archive.
        Some old ones have received an update as well. The most important
        designers were geoo, Clam Spammer, Insane Steve, Rubix, and Liam.

    Burner bugfix
        A burner could be assigned a new skill, i.e. you could have made him
        jump out of a fire. This is now fixed.

    Editor rotation bugfix
        The rotation button will now rotate into any position again, instead
        of just alternating between two.

    Editor copying
        Selecting a whole range of objects, for example all objects with the
        hotkey [A], and then pressing [C] to copy them doesn't invert the
        z-order anymore.

        The offset of copied pieces is now 5 pixels in each direction when
        using no grid, 4 pixels when using the 2 grid, and the grid size
        itself for the larger grids.

    Replay saving
        Multiplayer replays can be saved properly again, i.e. the whole level
        is written into the replay file.



2009-11-08

    Lobby button
        The networking lobby now features a button to connect to the central
        server. This is Mindless' server at flux.camanis.net.

    Lobby bugfix
        When typing a space character into the lobby chat line, the "ready"
        button was triggered. The [SPACE] button will continue to be the
        button's hotkey, but not anymore during text input.

    Editor saving
        The L++ editor will never overwrite a .LVL file again, but instead
        always create a new .TXT file. A .TXT file can still be overwritten
        as usual with the Save or Save As functions.



2009-11-01

    Dedicated server
        I have reorganized all the networking, and there is a standalone
        server program available now. The possibility for any player to
        host using the L++ application itself is still there.

    VGASPEC support
        Mindless has implemented support for the VGASPEC levels like
        "A Beast of a Level". Thank you very much!

    Hatch direction
        The editor allows to set a walk direction for each entrance hatch,
        all lemmings falling from the hatch will have this direction. If a
        level in the LVL format is loaded from the network/ directory, it
        is assumed that each hatch's walking direction is towards the center.

    Goal trigger area
        The y/yl values for the trigger area for goals are now always the L++
        default. The x/xl values are read from the original graphics sets
        as before. This prevents lemmings to jump through the roof of the
        Crystal goal.

    Digger physics
        The digger will take its first swing now a bit faster after it has
        been clicked upon, and the check for ground under the digger will
        be done on every logic update. This makes it easy to overtake
        opponents' diggers with one's own, a necessity for multiplayer.

    Lemming bugfix
        Lemmings can now walk up to the very first pixel row of a non-torus
        map and still not get sucked into oblivion, unless they are climbers.
        Non-climbers will turn around instead.

    Editor grid
        The grid can now be set to 1, 2, 10 or 16.

    Level loading
        The format (L1 or L++) that a level is saved in is not any more
        determined by the file extension, but rather by the first bytes of
        the file. The extension must still be .LVL or .TXT for the level to
        be found in the menu.

        It is still advised that levels are only saved as .TXT files. This
        makes it easier to tell the format outside of L++ without relying
        on the size or first bytes of the file.

    Screen start bugfix
        If the screen's starting position was set too far to the right or
        down, it wasn't used correctly. It's now working correctly again.

    Sound bugfixes
        The ticking sound the gameplay's clock makes when there are only 15
        seconds left aren't repeated anymore if a packet with game information
        comes in and the game has to recalculate. The clock now ticks
        exactly once per second.

        The sounds for an exiter (lemming walks into an exit) in networking
        mode have been changed to this: Any lemming walking into your own
        exit triggers the goal sound with full volume. The "hehehe" sound
        for stolen lemmings is only played if your lemmings walk into a
        goal that doesn't belong to you, and also with full volume then.



2009-10-19-01

    Network ESC menu
        The gameplay menu you can access via pressing [ESC] doesn't stop the
        game in the background any more, and the restart option has been
        removed from it.

    Bugfixes
        The names in the game panel at the bottom right are now correct.
        Before, every player was labelled with the last player's name.

        Older levels don't have the terrain's z-order wrongly reversed when
        played over the network any more.



2009-10-18-04

    Network bugfixes
        Mindless has tested the networking mode on his 64-bit machine, and
        it didn't work. I have revamped some fundamental parts of the code
        to make it independent from the machines' word length and endianess.
        The field test of this version has yet to be performed.



2009-10-18-02

    New multiplayer maps
        Some new multiplayer maps are included: Equator (by me, 4 players),
        Towerhack (by ADmiral, 5 players) and Precise Fastclick Solves
        (by ADmiral, 3 players).

    Editor, small bugfixes
        Altering the level size does not mess up the starting position any
        more. The starting position on a torus can now also be one with
        the seam in the visible area.



2009-10-18-01

    Editor bugfixes
        You can scroll vertically over the torus' y seam and select objects
        below the line again, which was not possible before.

        You can select the hatch/goal order now with [+] and [-] again, as
        well as with the single-plus and single-minus keys on the panel.



2009-10-18

    Builder bugfix
        The builder could build through vertical walls with a width of 2
        pixels. This has been fixed.

    Editor, original graphics sets
        It is now possible to add new elements from the original graphics sets
        inside the L++ editor. All elements are located in subdirectories of
        orig/. The editor doubles the grid if it is uneven and an element
        from an original set is added.




2009-10-16-04

    Drawing order bugfix
        Some older TXT levels had their terrain drawn in the wrong order.
        This should be fixed now.



2009-10-16-03

    Two-player level order
        The 20 two-player levels from L1 have been brought into their correct
        order, given by their appearance in L1. The complexity increases from
        the first levels to the last levels now.



2009-10-16-02

    Decorations
        Images with the pre-extension .D. can be included in L++ as deco-
        rations, i.e. animated objects without interaction. Click on the
        ribbon in the editor panel to browse for decoration objects.

    Two-player original levels
        The 20 two-player levels from L1 and the 10 two-player levels from
        ONML are included in the main download file. Thanks to Mindless
        for the files! According to the change from 2009-10-14-01, they
        feature knockback exploders instead of L1-style exploders.

    Time in original multiplayer levels
        If an original level from the network/ directory is loaded, its
        overtime is set to (1/2 of its time) - 30 seconds. If the resulting
        time is equal or lower to zero, 15 seconds are used. This yields
        2 minutes for an original two-player level set to 5 minutes, and
        allows for better options when editing the LVL format.

    Flags
        The two-player levels from the original games had a waving flag above
        each goal. These do not show up in L++ anymore, since L++ has a better
        way of indicating goal ownership.

    Editor with original levels
        The editor can now display, alter and save the original games' levels
        properly, with the following restrictions. Saving is only possible
        in L++'s own format at this time. The bitmap browsers cannot add
        pieces from the original games' graphics sets yet.



2009-10-14-01

    Original levels in multiplayer
        Original levels (i.e. LVL and DAT files from L1/ONML/etc.) can now
        be played in multiplayer mode. According to the changes for version
        2009-10-14, all original levels feature knockback exploders instead
        of L1-style exploders.



2009-10-14

    Graphics loading
        The grafic files from the L++ bitmap directory are not loaded all at
        once when the game starts anymore. Each graphic is loaded just when
        it is first required, and then stored in memory afterwards as before.

    Exploders in multiplayer games
        All exploders in a multiplayer game are knockback exploders now.
        If you load a level with L1-style exploders (without knockback) and
        play it in multiplayer, the players will still have knockback
        exploders. The level file itself is not altered.



2009-09-26

    Source code compatibility
        Mindless from Lemmings Forums has sent me a patchfile for L++ that
        enables error-free compilation on his Arch Linux machine. The changes
        from the patch are now implemented in this version. Thanks, Mindless!



2009-09-24-01

    OSD-Zeichnungs-Bugfix
        Ein Mini-Bugfix, der die Spielerbuttons in der Lobby wieder korrekt
        zeichnen laesst.



2009-09-24

    Explosionspixel
        Dies ist ein alternativer Stil fuer die Lemming-Explosionen, der in
        den Grafikoptionen gewaehlt werden kann.

    Netzwerk-Timing
        Der Server und die Clients sind nun besser zeitlich aneinander
        angeglichen.

    OSD-Zeichnungs-Bugfix
        Die Aenderung der Version 2009-09-21 hatte noch ein paar Schoenheits-
        fehler, die wurden jetzt behoben. In der Netzwerklobby hinterliessen
        einige unbenoetigte Buttons noch Grafikreste.



2009-09-21

    Speicherdialog-Bugfix
        Wenn man im Editor eine Datei ueberschreiben wollte und die Nachfrage
        mit "Ja" bestaetigte, wurde die Nachfrage nicht vom Bildschirm
        geloescht. Das wird sie jetzt wieder.



2009-09-20

    Editor-Bugfix
        Neue Elemente werden nun wieder im Vordergrund eingesetzt anstatt
        im Hintergrund.

    Tarinf
        Wenn die Maus ueber einem eigenen Lemming liegt, so wird im Panel
        anstatt der Zeit nun angezeigt, wie viele Lemminge unter der Maus
        liegen sowie die Taetigkeit und dauerhaften Faehigkeiten des Lemmings
        mit der hoechsten Prioritaet.

    Mitspieler-Namen im Spiel
        Im Mehrspieler-Panel werden jetzt, sofern Platz ist, die Namen der
        Mitspieler unter dem jeweiligen Spielerbereich angezeigt.

    Vollbildmodus
        Gibt man im Optionsmenue eine Vollbild-Aufloesung von 0 mal 0 Pixeln
        an, so erfragt L++ die Desktop-Aufloesung des Benutzers und nutzt
        diese ebenfalls.



2009-09-19

    Netzwerk-Bugfix
        Von Zeit zu Zeit vergass das Spiel, ein Update neuzuberechnen,
        naemlich immer dann, wenn ein Paket zum laufenden, bereits berechneten
        Update eintraf. Das fuehrte zur sporadischen, aber in langen Spielen
        nahezu sicheren Desynchronisation. Der Bug ist jetzt behoben.

    Stahlmaske geaendert
        Die Stahlmaske kommt nun mit beliebig geformtem Stahl zurecht, ferner
        werden Stahlpixel in Originallevels nun korrekt erkannt.

        Ich lese hier nicht die Stahlzonen aus der Leveldatei, sondern setze
        alle Pixel in die Stahlmaske, die zu einem Stahlobjekt gehoeren und
        nicht durch anderes Terrain ueberschrieben werden. Dadurch entsteht
        eine Stahlmaske, die nicht dem Originalspiel entspricht - aber das ist
        auch nicht das Ziel von L++.

        Hierdurch dauert das Starten eines Levels nun etwas laenger, da die
        Stahlmaske durch viele selbstgeschriebene Per-Pixel-Funktionen
        erstellt wird.

    Nachspielzeit-Bugfix
        Die Nachspielzeit startet jetzt wieder korrekt in Netzwerkspielen.
        In den letzten Versionen tat sie das ueberhaupt nicht.



2009-09-16-01

    Grafik-Bugfix
        Lemminge und Sterne, die mal an einer Position gewesen waren, wurden
        ein Grafik-Frame lang sichtbar, wenn man an ihre alte Position nach
        links oder oben scrollte. Ist jetzt behoben.



2009-09-16

    Zeichnen von Originallevels
        Die Originallevels werden praktisch korrekt gezeichnet, sowohl mit
        schwarzem als auch mit nichtueberschreibendem Terrain. Moeglicherweise
        werden einige Objekte noch ein-zwei Pixel zu hoch gezeichnet, ich
        bin mir nicht sicher, ob dies derzeit auftritt.

        Achtung - dies funktioniert noch nicht:
        - Einwegpfeile funktionieren nicht.
        - Editor zeigt Originallevels nicht korrekt an.

    Versionsbezeichnung
        Versionen, die auf "-00" enden, erscheinen nur mit Datum und ohne
        Endung "-00".



2009-08-29-01

    Originallevels
        Es koennen erstmals Originallevels geladen werden. Die Levels aus L1,
        ONML und Holiday 1994 sind im Spiel enthalten.

    Walker-Physik
        Walker koennen nun eine Wandhoehe von bis zu 12 Pixeln erklimmen,
        bisher war 10 das Maximum. Hiermit gleiche ich die Physik etwas an die
        Physik der Originalspiele an. Es gibt etwa im Hell-Grafikset Steine mit
        einer Original-Hoehe von 6 Pixeln, bei L++ sind das entsprechend 12.
        Solche Steine sollten weiterhin erklimmbar sein.

    Falldistanz
        Die maximale sichere Falldistanz betraegt nun 126 Pixel anstatt 120
        wie bisher. Das erreicht die im Original korrekte Distanz von 63
        Pixlen. Es gab mehrere Original-Lemmings mit einer Distanz von 66
        Pixeln, dort waren die Levels "We All Fall Down" ohne Faehigkeits-
        -Einsatz loesbar. 60 Pixel Falldistanz gab es in keinem Original.

    Replay-Bugfix
        Die Replays wurden seit mehreren Wochen unbrauchbar in Dateien
        geschrieben, naemlich ohne Aktionsnamen. Das ist jetzt korrigiert.

    Netzwerk-Bugfix
        Pakete mit Replay-Daten wurden mit Groesse der Spielerdaten allokiert.
        Jetzt ist es korrekt. Ob das Netzwerk nun einwandfrei funktioniert,
        weiss ich allerdings noch nicht, der Feldtest steht noch aus.

    Replays im Spiel
        Wenn das Replay fertiggespielt ist und die Zeitlupe aktiviert ist,
        wurde das Spiel absichtlich pausiert. Das ist jetzt nicht mehr so.



2009-08-03-00

    Sound-Bugfix
        Der Sound wurde beim Faehigkeitszuweisen in den ersten 15 Sekunden
        doppelt abgespielt. Das ist nun behoben.



2009-07-29-00

    Datei-Bugfix
        Lange Verzeichnisnamen wurden in der Konfigurationsdatei gespeichert,
        ohne dass sie durch ein Leerzeichen vom Schluesselwort getrennt waren.
        Dadurch vergass der Editor, in welchem Verzeichnis man zuletzt
        gearbeitet hatte, wenn man das Spiel neu startete. Ist jetzt behoben.



2009-07-08-00

    Benutzerverwaltung
        Der Benutzername, die allgemeine Konfigurationsdatei sowie die
        benutzereigene Konfigurationsdatei werden jetzt wieder korrekt behan-
        delt. Es wird etwa, wenn L++ zum zweiten Mal gestartet wird, nicht
        noch einmal nach dem Namen gefragt, sondern der bekannte Name genutzt.



2009-02-17-00

    Ladetext
        Die Meldung beim Spielstart, dass derzeit Daten geladen werden, ist
        nun groesser und besser lesbar. Sie sieht jetzt genauso aus wie der
        Original-Ladetext von Lemmings 1.

    Quelltext
        L++ besteht nun 23.200 Zeilen Quelltext, davon sind 15.000 Code.



2009-02-17-00

    Permutation
        Im Netzwerkspiel werden die Startpositionen nun zufaellig permutiert,
        anstatt dass sie lediglich um eine zufaellige Anzahl Plaetze weiter-
        geschoben werden. Waren die Klappen etwa 1 3 (Platz) 2 4 verteilt,
        so war man bisher immer mit demselben Gegner auf einer Seite. Mit
        beliebigen Permutationen ist die Startposition nun komplett zufaellig.

        Das Replay-Format ist entsprechend angepasst worden. Werden mit der
        aktuellen Version alte Replays abgespielt, werden Spielernamen nicht
        mehr gelesen (betrifft auch Einzelspieler-Replays) und alle Spieler
        haben Gartenlemminge.



2009-02-16-00

    Fenstermodus
        Die Aufloesung fuer den Fenstermodus kann nun ebenfalls frei gewaehlt
        werden. Um mit dieser Aufloesung zu spielen, muss die Option
        "Fenstermodus" aktiviert sein. Der Schalter "-w" fuehrt weiterhin
        immer zum Fenstermodus mit einer Aufloesung von 640 x 480 Pixeln.

    Sound-Option
        Im Audio-Menue kann das Laden des Soundtreibers komplett deaktiviert
        werden. Unter einigen Linuxsystemen (nicht in der Mathe) bereitete
        das Spiel mit aktiviertem Sound sonst Probleme.



2009-02-14-01

    Erfolgspeicher-Bugfixe
        Wird ein Level im Spiel zwar geloest, dann aber mit [ESC] abgebrochen,
        so wird der Erfolg trotzdem abgespeichert.

        Wurden genau so viele Lemminge gerettet wie erforderlich, erschien
        bisher nur der Haken im Einzelspieler-Menue, nicht der Ergebnistext
        unten rechts. Das ist jetzt behoben.

    Tumbler-Bugfix
        Bei der letzten Anpassung war ein Vorzeichen falsch und der Tumbler
        bewegte sich rasend schnell weiter in soliden Felsen. Ist korrigiert.



2009-02-14-00

    Geschaffte Levels
        Pro Spieler wird nun gespeichert, ob und wie gut jeder Einzelspieler-
        level geschafft wurde. Ein durchgespielter Level bekommt einen Haken
        in der Dateiliste, unten rechts wird das beste Ergebnis des Spielers
        angezeigt. Wurde der Level zwischenzeitlich editiert, wird der Haken
        in Klammern gesetzt und unten rechts ein Hinweis angezeigt.

        Bei der Bestimmung des besten Ergebnisses wird so vorgegangen:
        Neuere Levelversion schlaegt immer jede alte Levelversion.
        Bei gleicher Levelversion gewinnt das Retten der meisten Lemminge.
        Bei gleicher Anzahl Geretteter gewinnt das Geben weniger Faehigkeiten.
        Bei gleicher Faehigkeits-Anzahl gewinnt die kuerzere Spieldauer.



2009-02-11-00

    Tumbler-Bugfix
        Der Tumbler teleportiert nun nicht mehr durch das Land hindurch, wenn
        er durch Explosionen in feste Landschaft geschleudert wird. Nun wird
        er einfach zum naheliegensten offenen Bereich bewegt, der horizontal
        oder vertikal erreichbar ist.



2008-12-27-00

    Bilddialog
        Das aktuelle Verzeichnis wird nun auch in all den Editordialogen
        angezeigt, in denen man Terrain und andere Objekte fuer den Level
        aussuchen kann.

    Siedler-II-Scrolling
        Wird gegen den Rand gescrollt und bewegt man die Maus anschliessend
        zurueck, so wird erst dann wieder vom Rand weggescrollt, wenn die
        urspruengliche Entfernung vom Bildschirmrand mit der Maus erreicht
        ist. Dies fuehlt sich wesentlich natuerlicher an.



2008-12-22-00

    Optionsmenue aufgeteilt
        Das Optionsmenue ist nun in vier Gruppen von Optionen eingeteilt:
        Allgemeines, Steuerung, Grafik, Klaenge. Das schafft Platz fuer neue
        Optionen, die ich bereits seit Laengerem einbauen wollte.

    Siedler-II-Scrollen
        Optional kann nun gescrollt werden, indem die rechte Maustaste fest-
        gehalten und dabei die Maus bewegt wird. Standardmaessig ist sowohl
        dieses Scrollen wie auch das Scrollen am Rand aktiviert.

    Editor-Bugfix
        Wenn man ein Raster (2, 5, 10, 25) aktivierte, konnte man die Objekte
        nicht ins Negative ziehen. Das habe ich behoben.

    Augenzucker
        Die herumfliegenden Sterne und Woelkchen koennen fuer andere Spieler
        oder auch komplett deaktiviert werden.

    Speicherdialog
        Im Speicherdialog werden die Daten des Levels oder des Replays, den/
        das man abspeichern moechte, stets oben angezeigt. Das hilft beim
        Einsortieren in die eigene Dateistruktur.

    Trauerrand dunkler
        Der Trauerrand ist, sofern er ueberhaupt aktiviert ist, nur noch
        halb so hell wie zuvor.



2008-12-07-00

    Feinere Zahlen
        Zeit und Levelgroesse besitzen im Editor jetzt Zahl-Einstellfelder mit
        jeweils drei Buttons fuers Erhoehen und Verringern. Damit ist die Zahl
        feiner einstellbar als bisher.



2008-11-26-00

    Trauerrand einfaerben
        Es gibt nun eine Option, den Trauerrand im Vollbildmodus in einer
        dunklen Farbe einzufaerben. Dadurch wird im Spiel deutlicher, wo der
        Spielfeldrand ist. Diese Option ist standardmaessig deaktiviert.



2008-11-23-00

    Feuer
        Objekte mit der Prae-Endung .F. durchlaufen eine Animation aehnlich
        wie Wasser und lassen Lemminge verbrennen, wenn sie in diese Objekte
        geraten.

    Kletterer-Bugfix
        Kletterer erklimmen wieder die kleinen Hoehen, vor denen sie seit dem
        letzten Bugfix faelschlicherweise nur umdrehten.



2008-11-21-00

    Kletterer-Bugfix
        Der Kletterer klettert nun wieder alle Waende hoch, unabhaengig von
        ihrer X-Paritaet (Rest der X-Koordinate beim Teilen durch zwei).

    Bohrer-Bugfix
        In manchen Faellen blieb eine ein Pixel breite Wand stehen nach dem
        Bohren. Ich kontrolliere den Boden daher einen Pixel weiter als bisher.
        Der Feldtest dieses Bugfixes steht allerdings noch aus.



2008-11-16-00

    Augenzucker
        Die Exploder produzieren herumfliegende Sternchen und Woelkchen.
        Hackern, die in den Stahl hacken, springt die Hacke um die Ohren.

        Geplant ist, diese Effekte in den Optionen regulierbar zu machen, damit
        sie den Mehrspielermodus nicht weiter mit visuellen Reizen ueberladen.



2008-11-13-03

    Tumbler-Bugfix
        Die herumfliegenden Lemminge zuckeln nicht mehr im Gestein hin und her,
        sondern liegen direkt in der Naehe des Punktes, an dem sie ins Terrain
        eingetreten waeren.

    Replaybrowser-Bugfix
        Replays, deren zugehorige Leveldatei fehlt, koennen nun korrekt aus
        dem Browser geloescht werden.



2008-11-13-01

    Maus-Bugfix
        Die fuer Version 2008-11-11-00 angekuendigte Ausbesserung des Yassin-
        -Bugfixes wurde nochmals ueberarbeitet und sollte nun funktionieren.

    Stahlgraben
        Der senkrechte Graeber arbeitet liberaler: Damit er aufhoert, muss
        sowohl links als auch rechts von ihm Stahl sein. Versperrt Stahl nur
        eine seiner Seiten, graebt er einfach ein schmaleres Loch als normal.

    Sounds
        Neue Sounds eingebaut fuer Stahlgraben, Wasser, Nuke-Taste, Verlassen
        des Spielfeldes am Rand.



2008-11-11-00

    Button-Einrasten
        Es gibt kalte, warme und heisse Buttons: Die kalten reagieren wie die
        bisherigen. Warme Buttons springen schon beim Druecken der Maustaste
        an, nicht erst beim Loslassen. Beispiel: Pausetaste im Spiel. Heisse
        Buttons springen schon an, wenn man mit gedrueckt gehaltener Maustaste
        darueber faehrt. Beispiel: Faehigkeitstasten im Spiel.

    Maus-Bugfix
        Beim Beheben des Yassin-Bugs habe ich offenbar zu viel behoben:
        Manchmal dachte das Spiel nach einem Klick, dass in jedem folgenden
        Tick ebenfalls geklickt werde. Das ist nun abgestellt, der Feldtest
        unter Linux hat allerdings noch zu erfolgen.



2008-11-10-00

    Sounds unter Linux
        Ich verwende jetzt erfolgreich den OSS-Soundtreiber unter Linux. Die
        automatische Allegro-Treiberwahl moechte immer den eigentlich besseren
        ALSA-Treiber nutzen, der allerdings von Allegro vermutlich nicht
        korrekt initialisert wird.

    Sounds im Netzwerk
        Die Sounds, die Lemminge andere Spieler verursachen, werden wesentlich
        leiser abgespielt. So kann man besser unerwartete Ereignisse durch
        Zuhoeren erkennen, falls die eigene Horde betroffen ist.

    Effektmanager
        Intern: Ein Effektmanager uebernimmt nun das Anzeigen von Pfeilen,
        Sounds und Explosionen, um zu vermeiden, dass beim Netzwerk-Neurechnen
        beispielsweise Sounds doppelt gespielt werden.



2008-11-07-01

    Uhr-Bugfix
        Im Netzwerkspiel startet der Countdown wieder ordnungsgemaess.



2008-11-07-00

    Sounds
        Ein paar Sounds sind testweise schon eingebaut. Im Netzwerkmodus werden
        ggf. einige Sounds doppelt gespielt, wenn neu gerechnet wird. Das wird
        in zukuenftigen Versionen aber behoben.

    Editor-Drehen
        Die Drehtaste im Editor dreht nun wirklich um 90 Grad, ohne dabei zu-
        saetzlich zu spiegeln, wie es bisher gemacht wurde.



2008-10-29-02

    Bitmapbrowser-Bugfix
        Im Editor ragten lange Dateinamen im Bild-Browser ueber den Button des
        Bildes hinaus. Jetzt werden zu lange Namen dort gekuerzt.



2008-10-28-01

    Bildformate
        Bilder werden jetzt ins Spiel geladen, wenn sie BMP, TGA oder PCX mit
        der jeweils passenden Endung ".bmp", ".tga" oder ".pcx" versehen sind.
        Neu abgespeicherte Levels haben nur den Dateinamen ohne Endung als
        Angabe fuer die Bilder, die sie benutzen. Man kann somit alle Bilder
        nach Belieben in andere Formate konvertieren und die Endung aendern,
        solange der Name vor der Endung gleich bleibt.

        Anmerkung: Weitere Formate ausser den dreien sind schwerer einzubauen,
        da Allegro ohne Zusatzbibliotheken keine weiteren Formate unterstuetzt.

    Drehungs-Bugfix
        Spiegelungen und Drehungen von Objekten wurden manchmal nicht korrekt
        gespeichert, das ist jetzt behoben.

    Bildzerstoerungs-Bugfix
        Ich habe beim Beenden von L++ aus einem destroy_bitmap(bitmap) gemacht:
        if (bitmap) destroy_bitmap(bitmap). Eventuell behebt das den Bug, bei
        dem L++ nach dem Beenden noch in der Taskleiste/-liste aktiv ist, aber
        da muessen wir den Feldtest abwarten.



2008-10-28-00

    Stahl-Bugfix
        Stahl wurde in den vergangenen Versionen, die Drehen und Spiegeln
        unterstuetzten, nicht korrekt in die Stahlmaske eingetragen: Oftmals
        wurden dort X- und Y-Laenge vertauscht. Das ist jetzt korrigiert.

        Vergleichbare Codezeilen finden sich ebenfalls fuer das Blitten von
        Landschaftsobjekten in der Naehe von Torusnahtstellen. Dort wurde in
        manchen Faellen ein Objekt nur auf einer Seite der Nahtstelle auf die
        Landschaft geblittet, was jetzt analog zum Stahlproblem behoben ist.

    Grobpixelungs-Bugfix
        Egal, in welche Richtung Lemminge laufen, immer wird eine ein Pixel
        breite Mauer entweder als Luft oder als Mauer erkannt. Diese Richtungs-
        unabhaengigkeit war zuvor nicht gewaehrleistet. Die Tatsache, dass die
        duenne Mauer ueberhaupt mitunter als Luft erkannt wird, ist erwuenscht:
        Fuer die Spielmechanik soll nur jeder zweite Pixel in X-Richtung
        relevant sein, in Y-Richtung ist es jeder Pixel.

    Blocker-Bugfix
        Blocker funktionieren nun auch an Torus-Nahtstellen wie gewohnt.

    Tumbler-Bugfix
        Der Tumbler durchlaeuft wieder seine gewohnte Animation. In den letzten
        Versionen wurde stets das erste Bild gezeigt.



2008-10-27-00

    Zurechtschneiden
        Bildobjekte ohne Prae-Erweiterung werden nicht mehr in Stuecke
        geschnitten. Prae-Erweiterungen sind einzelne Buchstaben zwischen zwei
        Punkten: ./bitmap/goal.G.bmp hat etwa die Prae-Erweiterung 'G' und
        wird gemaess des Rasters in Einzelbilder geschnitten. Bei normaler
        Landschaft ist das hingegen nicht noetig.



2008-10-22-01

    Dreh-Bugfix
        Im Editor gedrehte Dinge hinterliessen beim Umherziehen manchmal noch
        eine Spur, weil sie nicht korrekt positioniert waren. Jetzt geht's.



2008-10-22-00

    Drehen und Spiegeln
        Alle Terrain-Objekte sind im Editor nun dreh- und spiegelbar. Klicks
        auf den Dreh-Button fuehren eine Drehung inklusive Spiegelung aus, da
        dann auch nach dem ersten Knopfdruck die Lichtverhaeltnisse sofort
        noch stimmen (Objekte sind in der Regel oben und links hell).

    Tumbler-Bugfix
        Beim senkrechten Fall koennen die Tumbler nicht mehr mit dem Hinter-
        kopf irgendwo anstossen, was manchmal dazu gefuehrt hatte, dass sie
        ihre Geschwindigkeit nullsetzten und erneut anfingen zu beschleunigen.



2008-10-19-00

    Menuewahl
        Nach dem Spielende kommt man in das Menue zurueck, aus dem man das
        Spiel aufgerufen hat. Bei Replays kam man, falls der Level existierte,
        zuvor mitunter ins Einzelspielermenue nach dem Spiel.

    Yassin-Bugfix
        Ich hoffe, dass nun kurze Klicks sauberer registriert werden.
        Der Feldtest hat allerdings noch zu erfolgen.



2008-10-16-01

    Verzeichnisnamen
        In den Browsern, bei denen man Levels oder Replays auswaehlen kann,
        werden jetzt die Verzeichnisnamen in der Titelleiste angezeigt.

    Platformer-Bugfix
        Wenn der Platformer einen soliden Pixel ueber ihm hat, dann hoerte
        er bisher auf. Walker laufen unter dem Pixel her, also baut der Plat-
        former jetzt auch darunter her weiter.



2008-10-09-01

    Replay-Bugfix
        Daten von Spielern mit aktivierem Builder-Mehrfachklick werden jetzt
        auch bei Spielern, die den Mehrfachklick deaktiviert haben, korrekt
        abgespielt. Vorher wurden dort die Mehrfachklicks einfach ignoriert.

    Neustart und Schnelladen
        Srollposition und Zoom-Einstellung bleiben beim Neustart erhalten,
        ebenso, falls vorhanden, die Schnellspeicherung. Laedt man eine
        Schnellspeicherung, bei der man null Stueck der ausgewaehlten Faehig-
        keit hat, erscheint der Button im Panel nicht mehr eingedrueckt.



2008-10-09-00

    Torus-Bugfix
        Stahl auf den Torus-Nahtstellen kann nicht mehr durchgraben werden.
        Lemminge, die auf Zylinderkarten (horizontal, aber nicht vertikal
        rundumgehend) runterfallen, kommen nicht mehr oben raus.



2008-10-08-01

    Editor-Buttons
        Neben den Vorder-/Hintergrund-Buttons gibt es nun zwei Buttons, die
        die Objekte jeweils nur vor/hinter das naechste Objekt setzen.

        Man kann Objekte nun viel exakter mit der Maus anwaehlen, da man auf
        einen nichttransparenten Bildpixel zeigen muss, nicht nur allgemein
        in das Objekt-Rechteck.



2008-10-03

    Toruskarten
        Solche Karten ermoeglichen balanciertere Mehrspielerpartien auch mit
        mehr als zwei Spielern. Man kann fuer jede Karte festlegen, ob sie
        vertikal, horizontal oder in beiden Richtungen wiederholt fortgesetzt
        werden soll, sobald der Rand erreicht ist.

    Replay-Pfeile
        erscheinen bei zugewiesenen Faehigkeiten im Replay und/oder in
        Netzwerkpartien. Beides ist unabhaengig voneinander im Optionsmenue
        einstellbar.

    Quelltext
        Der Quelltext von Lemmings++ umfasst jetzt 20.000 Zeilen. Davon sind
        13.000 Zeilen reiner Code, der Rest Kommentare und Leerzeilen.



2008-10-01?

    Replay-Menue
        Hier koennen die gespeicherten Replays ausgewaehlt und angesehen
        werden. In der folgenden Woche kommt der Loesch-Button dazu.



2008-09-21

    Walker
        Laesst Arbeitstiere aufhoeren, sogar Blocker, oder dreht Walker um.

    Platformer
        Baut horizontale Bruecken.

    Exploder Nr. 2
        Hat Rueckstoss und ist ungemein wertvoll fuer das Balancing im
        Mehrspielermodus. Diese Faehigkeit ist dort die lustigste von allen!

    Desyncs weg
        Der Netzwerknodus hat nicht mehr diese seltenen Desynchronisations-
        fehler. Vermutlich sind sie verschwunden, als ich die interne
        Speicherung der Replaydaten ueberarbeitet habe.



2008-08-24

    Statusanzeige im Netzwerk
        Aktuelle Lemming-Daten der Mitspieler werden im Mehrspielermodus
        angezeigt.

    Editor-Speichern-Dialog
        Der Editor bietet nun eine "Aenderungen speichern"-Abfrage, anstatt
        bei jedem Beenden eine automatische Sicherheitskopie anzulegen.



2008-08-02

    Allegro-Projekt
        Bei allegro.cc ist mein Projekt akzeptiert worden. Dies ist somit die
        erste Version, die oeffentlich heruntergeladen werden konnte.

    Sprachwahl
        Saemtliche Texte sind in Deutsch oder Englisch verfuegbar.

    Optionsmenue
        Mit diesem Menuepunkt erspart man sich das Aendern der Spielerdaten
        in der Datei config.txt.



2008-07-10?

    L++ in der Mathe
        Die Leute spielen zum Zeitvertreib L++ in der Mathe, auch wenn ich gar
        nicht zum Testspielen da bin. Super! :-D



2008-06-23

    Netzwerkmodus
        Endlich steht ein funktionstuechtiger Netzwerkmodus! Die Replays sind
        bei beiden Spielern allerdings noch nicht exakt gleich und werden auch
        nicht immer identisch abgespielt. Das Neu-Rechnen-Prinzip hat sich
        dennoch bereits bewaehrt, sofern nicht ein Rechner zeitlich stark dem
        anderen hinterherhinkt.

    Quelltext
        L++ besteht nun 16.000 Zeilen Quelltext, davon sind 9.700 Code.



2006-04-01

    Anfang
        Nach einem Monat Einarbeitung in C++ und Allegro habe ich mit der
        Programmierung von L++ angefangen. Mit den neuen Kenntnissen etwas
        anderes als noch eine Lemmings-Variante zu programmieren, hatte ich
        bis dahin nicht im Sinn. ;-)

        Die erste Version besteht aus einem einzelnen Walker vor schwarzem
        Hintergrund, der an den Seiten umdreht.



2003-12-24

    Weihnachtslemminge?
        Frapela schreibt mir eine Mail, wo denn die Weihnachtslemminge 2003
        als Erweiterung von GS Lemmings bleiben. Aehnliche Mails trudeln ab
        sofort jedes Jahr mit schoener Regelmaessigkeit ein. :-)



2003-09-10

    GS Lemmings, Version zwei
        Die zweite Version von GS Lemmings, meiner ersten Lemmings-Variante,
        kommt ins GS-Forum. Es gibt die zwanzig Originallevels, zwanzig Modi-
        fikationen dieser Levels von Frapela sowie zwanzig komplett neue
        Levels. Ebenfalls neu sind das Nutzen mehrerer Klappen und Fallen
        pro Level, ferner das Setzen von Fallen.



2003-06-04

    GS Lemmings
        Die erste Version von GS Lemmings ist auf der Gravity-Strike-Seite
        zum Herunterladen veroeffentlicht. Es gibt zwanzig Levels, alle
        jeweils ein bildschirmgrosses mit MS-Paint gemaltes Bild.
