Lemmings Boards > Tech & Research

lemmix player revisited

(1/17) > >>

EricLang:
Able to compile my old Lemmixplayer again about 15 years later, I started refactoring it, cleaning it as well as speeding it up because of some new language features like inlining.
Instead of compiling different lemmixplayers for each DOS-game I decided to include all DOS-games in it as a resource. After that it occurred to me that supporting custom levels would be nice as well. Just looking in a "styles" folder and analyzing the files. Because there are a *lot* of custom LVL files and .DAT files around.
In the near future (and after beta-testing the source code) the exe will be available for testing.

When supporting custom levels it will not be possible to decide - reading the LVL or DAT files - what graphics should be loaded unless there are ground and vgagr files in the folder as well.
In case of LVL files only probably some config-file should be included.

I'll post a message here when the player is ready for testing and share the github location.

namida:
I strongly suggest you use the source code from my modified versions (available on NeoLemmix.com - to be clear I don't mean NeoLemmix itself, but rather the updated versions me and ccexplore produced of vanilla Lemmix) - or at least see what's changed and reproduce these changes.

This has several fixes compared to your original, by myself and ccexplore. Off the top of my head, the important ones are:
- Triggered traps are too fast on your version. They finish 1 frame quicker than they do on DOS.
- Your version does not reproduce the nuke glitch or the pause-for-time glitch.
- Your version doesn't reproduce certain glitches relating to mouse positioning when assigning skills.

There's probably more.

(I'm assuming here, of course, your goal is still "accurately reproduce how DOS lemmings works", rather than "create a new, glitch-free engine".)

I should also mention - Lemmix isn't really used these days except to play the original levels for challenge purposes; NeoLemmix is where most of the custom content is nowdays. You're welcome to help out on NL - if you're good with optimizations, that could especially be useful, as that's one thing I'm not very good with myself, and NL could really use some optimization to speed things up (especially for the high-res mode) - of course, this must not be at the cost of "physics are now different" or "features are removed".

EDIT: Now that I think about it, "reproduce the changes yourself" is probably the better option here. My coding ability was not the greatest back when I made my upgrades to it; so chances are they're not very well-written, even though they do ultimately work. (ccx's on the other hand should be fairly solid, but I'm not sure if there's a copy of the source with *only* his changes.)

Download link for my-updates to Lemmix source: https://www.neolemmix.com/download.php?id=64

EricLang:
That is interesting. Indeed the plan is to stay with the DOS versions. A next seperate version will be high-res and hardware accelerated etc.
I will certainly try to find the shortcomings in the player you mention. Although I am in a state of refusal to reproduce the nuke glitch.
Optimizing is a reasonably strong side of me. When I have the time I will for sure have a look at Neolemmix.

EricLang:
O wow: all the old stuff is still in neolemmix! (and of course some new I see).
When I finished my lemmixplayer I will come up with some ideas. Give me some time!

namida:

--- Quote from: EricLang on March 02, 2020, 10:23:02 PM ---That is interesting. Indeed the plan is to stay with the DOS versions. A next seperate version will be high-res and hardware accelerated etc.
I will certainly try to find the shortcomings in the player you mention. Although I am in a state of refusal to reproduce the nuke glitch.

--- End quote ---

The two bolded parts seem self-contradictory to me. Surely, if your goal is to accurately reproduce DOS, it should accurately reproduce all DOS glitches? Of course - there aren't that many levels where it makes a difference, and those where it does it's usually very obvious whether a nuke-glitch solution passes or fails, but there are borderline cases... (indeed - I recall, ccexplore left a comment next to where you said "we will NOT be simulating the nuke glitch" - where he said "sorry, nuke glitch re-added by popular demand". This implies users really wanted it to be reproduced.)

Also - to be clear, because I don't think I made this very clear - the link above is the source code for my slightly-updated versions of Lemmix. This is still Lemmix; it remains true to DOS, and just fixes a few things Lemmix got wrong before (and adds a couple of cosmetic features).

Check the "Welcome to NeoLemmix" topic over on the NL board if you want to see NL source code. (Note - NL won't compile on D7, you'll need a newer version. I'm using 10.3, though it will probably compile at least as far back as XE6, as we were using that until quite recently.)

Navigation

[0] Message Index

[#] Next page

Go to full version