Author Topic: Working on Lemmix again  (Read 11868 times)

0 Members and 1 Guest are viewing this topic.

Offline EricLang

  • Posts: 464
    • View Profile
Working on Lemmix again
« on: December 26, 2013, 10:56:25 AM »
Since a long time started with the Lemmix program (editor and player and database in one) again. The program can import different types of lemmings and custom levelpacks.
I was wondering if it is an idea to add some drawingmodes:
- tile flip horizontal
- tile rotation (90, 180, 270 degrees)
- tile stretchfactor (stretch horizontal and vertical)

(I added 2 stretch examples (x=4, y=1.5) and (x=0.5 y=2)

Offline Simon

  • Administrator
  • Posts: 3860
    • View Profile
    • Lix
Re: Working on Lemmix again
« Reply #1 on: December 26, 2013, 11:36:28 AM »
Rotation is common in similar games, it's very handy to have that. Horizontal mirroring then is merely vertical mirroring with a half turn.

Stretching, I'm hesitant about this . With the low overall resolution, stretches by more than 1 become ugly. Strechtes by less than 1 are less problematic, probably depend on the piece.

-- Simon

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: Working on Lemmix again
« Reply #2 on: December 26, 2013, 12:03:54 PM »
If you're going to add custom features, I think the first thing you should look at is a custom (or even just extended) level format that's suited to retaining the traditional gameplay style, but overcomes the limitations on steel areas etc. I myself considered extending Lemmix to do this at one point; but by the time I was familiar enough with the code to actually do so, a great majority of LPII had already been designed tuned to the existing limitations so I saw little point. :/

Also - I'm not sure if you saw, but ccexplore made his own modifications (adding nuke glitch, an emulation of pause-for-time glitch, and some others that weren't reproduced properly, I think he might've also improved the support for reproducing glitches in replays), you might want to work from that? You can grab his modified source code here:
http://www.mediafire.com/download/uhk6207aw9smtmd/LemmixPlayer_ccexplore.zip
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline EricLang

  • Posts: 464
    • View Profile
Re: Working on Lemmix again
« Reply #3 on: December 26, 2013, 12:49:00 PM »
I will take a look at that ccexplore thing :)

Offline Proxima

  • Posts: 4562
    • View Profile
Re: Working on Lemmix again
« Reply #4 on: December 26, 2013, 04:09:43 PM »
The stretched tiles are rather ugly. Perhaps it would be better to offer scaling (i.e. stretch x and y by the same factor)?

Also, please can you make it so pressing R comes out of fast-forward mode?

Offline EricLang

  • Posts: 464
    • View Profile
Re: Working on Lemmix again
« Reply #5 on: December 26, 2013, 08:21:37 PM »
There are many Lemmix feature requests. Maybe a 'sticky' Lemmix request list thread is an option?

Offline Simon

  • Administrator
  • Posts: 3860
    • View Profile
    • Lix
Re: Working on Lemmix again
« Reply #6 on: December 26, 2013, 08:24:07 PM »
If you're picking up development again, an entire board might be better :-) One thread per feature is much more adequate. I'll PM Mr. K.

-- Simon

Offline EricLang

  • Posts: 464
    • View Profile
Re: Working on Lemmix again
« Reply #7 on: December 26, 2013, 08:40:37 PM »
Okidoki, thanks.
It would be nice to have things gathered here, instead of gathering them all by my self :)

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: Working on Lemmix again
« Reply #8 on: December 27, 2013, 02:10:57 AM »
If you want to add compatibility for the LPII gimmicks into it (I don't think you would since it's kinda a specific-to-LPII thing, but you might), I can send you the LPII source code too. (Can't do much about LPDOS, I lost that ages ago, but the only modification in it IIRC (apart from the different number of ranks/levels etc) was the bombers, which LPII has the same modification.)


Also, a discrepancy between Lemmix and the DOS games that wasn't fixed in ccexplore's updates because it wasn't even known at the time:
As you know, the terrain pieces are planar bitmaps where each pixel is represented by a color index from 0 to 15. And as you probably know, the official graphic sets only ever use colors 8-15 for terrain pieces (0 to 7 may be used in objects, but never terrain). If you make a custom graphic set that DOES use one of the fixed colors in a terrain piece, it behaves differently in DOS Lemmings than in Lemmix. In DOS, it will be drawn correctly, but will NOT be treated as solid. In Lemmix, it behaves just like any other pixel of terrain.

Also, ccexplore's documentation of the graphic set format states that the 4th plane and the mask for terrain pieces is in fact the same data in all the official sets, but he isn't sure if that has to be the case for a custom one. It does not - you can have a seperate 4th plane and mask. Lemmix already handles this correctly, though - just pointing out in case you need to know the actual answer at some point.
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline EricLang

  • Posts: 464
    • View Profile
Re: Working on Lemmix again
« Reply #9 on: December 27, 2013, 08:30:07 PM »
Thanks. I would like to have information on Lemmings 2 (Tribes I hope you mean, because 3D is not Lemmings in my view) because they would be nice to import and play (already trying to create a plugin system for alternative mechanics).
I hope a Lemmix thread is created somewhere for adjustments.

The first thing I will do is release a test-version of the player, including a prefab database.
(Player and Editor will both be in 1 program BTW, the editor is more difficult).

In the new thread we also could discuss mechanics without the dos-bugs and limitations.




Offline mobius

  • Posts: 2747
  • relax.
    • View Profile
Re: Working on Lemmix again
« Reply #10 on: December 27, 2013, 10:55:48 PM »
If you'd like some ideas here is (just my personal opinion) of what should be a priority on Lemmix: [until there is a better place to put it I'll just write this here: I'll move it if/when we get a sticky topic or something]

-on the editor-
Having level files/replay files that are editable text files would be nice. Lix does this.

once I got used to the editor I actually found it very easy to use and I like it now. There are some issues however:

Please fix the glitch where if you re-size the panels on the bottom of the editor hot keys stop working. I still have not gotten any confirmation that this happens to anybody else but it's annoying + it caused me to think there were no hot keys for a long time.

-somehow make it easier for new users to figure out the controls. Maybe install one of those "tips" menus that pop-up when you start the program (be sure u can turn this feature on/off for experienced users)

-something brand new I thought of from a Chips Challenge editor: A feature that calculates where a lemming will walk; in the form of a line that goes through the level.
For example, the line goes down from the entrance then goes on the ground, falls if there is a gap in the terrain, ends if it goes into water,


-THE PLAYER-
The current version of the player almost perfectly emulates the original DOS. So for people who want that, they already have it. I strongly think we should move to make Lemmix a new game which FIXES all of the old glitches and does not emulate the original game.

-trigger areas are no longer restricted to any useless grid

-steel is fixed. Lemmini's steel mechanic is pretty sound. I suggest you look at that or Lix to see an example. There is a small issue I observed in Lemmini that if a Lemming explodes on a thin piece of steel with terrain underneath it; the steel will not be destroyed  but the terrain underneath it WILL be destroyed if the steel is thin enough. I've never tested this in Lix I'm curious what others think about this.

-trigger areas for the exits should all be the same; the ONML triggers are too small
-Most of the traps in current Lemmix are ok (I think//not including the grid problem). Except: The needle trap in Pillar, It ought to be the full length of the device instead of the small square it currently is. see Lemmini.

-Fix asymmetry issue. Builders should build exactly the same going left or right, blockers should work ditto etc...

-fix all the glitches with the skills. We ought to focus on the major ones first and some of them are obscure enough you shouldn't feel you need to tackle all of them at once.
-miners pass through 1 pixel gaps
-fallers can exit from any height

-of course I am also a fan of adding new features. I personally some prefer mechanics from Lemmings Revolution. I recommend you take a look at the game to see for yourself.

http://www.youtube.com/watch?v=0AROar4q8OM

this level demonstrates one of my favorite features of this game.
everything by me: https://www.lemmingsforums.net/index.php?topic=5982.msg96035#msg96035

"Not knowing how near the truth is, we seek it far away."
-Hakuin Ekaku

"I have seen a heap of trouble in my life, and most of it has never come to pass" - Mark Twain


Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: Working on Lemmix again
« Reply #11 on: December 28, 2013, 12:34:52 AM »
Thanks. I would like to have information on Lemmings 2 (Tribes I hope you mean, because 3D is not Lemmings in my view) because they would be nice to import and play (already trying to create a plugin system for alternative mechanics).
I hope a Lemmix thread is created somewhere for adjustments.

The first thing I will do is release a test-version of the player, including a prefab database.
(Player and Editor will both be in 1 program BTW, the editor is more difficult).

In the new thread we also could discuss mechanics without the dos-bugs and limitations.

By LPII I was meaning my game, Lemmings Plus II. It uses Lemmix as the base engine but has a few tweaks too. Have a look if you haven't already:
http://www.lemmingsforums.com/index.php?topic=879.0
One way right miner glitch is disabled, but Lemmix already has support for turning that on or off. That aside, the only difference that's global to the whole game is how the bombers work - you'll notice it VERY quickly. Beyond that, a few specific levels have gimmicks (similar to Superlemming from ONML) - Nice 9 and 15, Cheeky 8 and 10, Sneaky 4 and 14, Cunning 19, and Genius 9 and 16. Also, there's added functionality for secret levels.

Quote from: Still-undiscovered (by ANYONE) LPII spoiler, highlight to read
And Cunning 21 for the list of level with gimmicks.


That being said, integrating L2 into it as well might not be a bad idea. I also very much like your idea of plugin systems. Here's a thought - why not have some form of rudimentary "interpreted" language that can be loaded that define how these work? Perhaps just for each specific frame a lemming can be in, a list of what masks to apply, where to move the lemming, etc? Hopefully you understand what I'm saying, I don't think I'm explaining this very well...


Another thing to consider is what to use for a level format. Ideally, we don't want to be adding even MORE new formats, we've already got 3 in active or semi-active use (LVL, INI and Lix's format) plus how many more that are no longer used (Cheapo LEVs come to mind)... but at the same time, no existing format is completely suited to this... INI comes close, but text-based format isn't too ideal I would think (plus, Lemmini is based on a 2x resolution). Though I don't know the details of Lix's format, maybe it's more suitable.


Another thing I'd suggest, do you think it's worth choosing a name not so similar to "Lix"? (Although technically, I believe Lemmix was around first...)
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline EricLang

  • Posts: 464
    • View Profile
Re: Working on Lemmix again
« Reply #12 on: December 28, 2013, 09:56:49 AM »
Could you give me a downloadlink of the exe and source code?

I was indeed planning to change the file format drastically. An SQL database with everything in it.
But I am still in a philosofical state about this...
A text based database does not appeal to me...

This is the (simplified) structure now, which still lacks sound, music, replay.
Code: [Select]
STYLE
    TRIBE
        LEMMING
    TILESET
        TILE
        STRUC
    PACK
        SECTION
            LEVEL
                LEVELSTRUC
                LEVELTILE
                LEVELMATERIAL (steel)

Offline namida

  • Administrator
  • Posts: 12398
    • View Profile
    • NeoLemmix Website
Re: Working on Lemmix again
« Reply #13 on: December 28, 2013, 10:09:41 AM »
I would reccomend sticking with a binary format in normal files... it's way easier for other apps to support, that way. Unless you're planning on not making it suitable for that?

Do you mean for LPII? One sec, I'll upload and PM it to you.
My Lemmings projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)

Offline EricLang

  • Posts: 464
    • View Profile
Re: Working on Lemmix again
« Reply #14 on: December 28, 2013, 10:16:13 AM »
I mean LP II yes. Never saw it!
There are soo much formats thinkable. But I made the program more or less independant of storage so I can always add or delete something :)