Author Topic: Extracting levels from console versions  (Read 16241 times)

0 Members and 1 Guest are viewing this topic.

WNivek

  • Guest
Extracting levels from console versions
« on: May 03, 2007, 02:06:57 PM »
I've been wondering, does anyone know of a way to extract level data from the various console versions of Lemmings, so as to generate PC-playable versions of the console-exclusive levels?

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #1 on: May 03, 2007, 03:59:37 PM »
Unfortunately no one knows anything about this as far as I can tell.

For the SNES and Genesis versions, since the game mechanics appear to be extremely close to the computer versions, there's a chance that the levels may be stored in a similar format as well (either the compressed .DAT format, or less likely, the uncompressed .LVL format).  So you can try to take a level that exists in both the computer and console versions, and do a byte-sequence search of parts of the level data and see if you can locate it in the console version.  This can be the first step in trying to find the levels you actually want.

One thing to note about the Genesis version is that the graphics style appears to have additional terrain pieces that don't exist on the computer versions, so even if you manage to extract the level data, you still won't be able to port the level directly to the computer versions.

For other consoles, it can very well be the case that the levels are stored in a totally different format.  The more different the game mechanics and/or the hardware capabilities of the console, the more likely the format will be different.  The NES and Gameboy versions for example, the game mechanics isn't even pixel-based, due to the tile-based characteristics of those consoles' display handling.  The levels are as expected pretty much completely different from the computer versions, and there's simply no meaningful way to use the levels in the computer versions.

Another possible approach to porting the levels is to write a program to reverse-engineer the locations of terrain pieces based on screenshots of the level.  Screenshots of levels in various ports, particularly the SNES and Genesis ports, can be found on the Internet, and of course you can always download the ROM and an emulator, and make screenshots yourself.  You then write a program to basically find matches between pixels in the screenshot and pixels from a terrain piece.  Maybe when I have spare time, I'll look myself into writing such a program and see if I can successfully port the levels in question.

WNivek

  • Guest
Re: Extracting levels from console versions
« Reply #2 on: May 07, 2007, 08:55:34 PM »
Just thought I should mention that, based on a bunch of screenshots, I've adapted the five Sega levels ('Sega One' through 'Sega Five'. Catchy titles, huh?) from the Sega MasterSystem version to play under Lemmini as 'special' levels. (They use their own graphics set, and I figured it probably isn't worth it to try creating a whole style just for five levels)

Download

(Also included in that archive are the Sega Genesis special levels, the Budget Amiga special-replacement levels, and Going Their Separate Ways.)

By the way, any chance there's a Mod of the music for the Sunsoft Special level floating around somewhere? Or a way to create a mod from VGZ file?

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #3 on: May 07, 2007, 11:52:41 PM »
By the way, any chance there's a Mod of the music for the Sunsoft Special level floating around somewhere? Or a way to create a mod from VGZ file?

Unlikely.  The Sega sound chips use FM synthesis, while MODs use waveform samples.  To convert from the former to the latter is far from trivial.  You can try searching the Internet for conversion tools but good luck.

If it's just for your personal use with Lemmini, one possible approach is to record the VGZ as a WAV audio file, and then see if you can find tools on the Internet that can "convert" WAV to MOD.  I said "convert" because what those tools would do is simply to chop up the WAV into many segments and make each segment its own sample.  So it's a MOD only in terms of format, and will end up larger than even the WAV file, but for personal use that could suffice.

0xdeadbeef

  • Guest
Re: Extracting levels from console versions
« Reply #4 on: May 08, 2007, 04:17:18 PM »
There are VGM to Midi converters though. For FM synthesis, maybe the Midi files are not that bad. For tools look e.g. here:
http://www.smspower.org/music/vgmtools.shtml

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #5 on: May 10, 2007, 12:55:43 PM »
By the way, any chance there's a Mod of the music for the Sunsoft Special level floating around somewhere? Or a way to create a mod from VGZ file?

Ok, I must be posessed by the devil; I actually went ahead and try out a WAV -> MOD "conversion".  Sadly I failed to find a program out there to do it automatically, so much of this is done manually with aid from Modplug tracker.  Here's the result (slightly under 1 MB):

http://it.travisbsd.org/lemmings/lemmingswelt/index.php?cmd=get&file=/sunsoftspecial.mod

Yeah I know, it doesn't sound great.  Blame Lemmini (more precisely, the MicroMod library) for only supporting the true original MOD formats and not better ones like s3m/xm/it.  The original MOD formats limit the amount of sample data so I'm forced to chop up the WAV into pieces, downgrade the audio quality significantly to reduce the amount of data, and stitch the pieces back together in the MOD.  Ugh.

0xdeadbeef

  • Guest
Re: Extracting levels from console versions
« Reply #6 on: May 11, 2007, 05:33:25 PM »
Well, if there's a demand for it, I could update to the IBXM player which supports XM formats (Fast Tracker 2, ScreamTracker 3 and Protracker):
http://geocities.com/sunet2000/

If you just want to abuse the mod format to play a WAV, it would be more reasonable if I would support WAV in the first place. I just never considered it since I figured WAV music would take too much space.

BTW: Midi conversion is not an option?

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #7 on: May 11, 2007, 06:28:26 PM »
Well, if there's a demand for it, I could update to the IBXM player which supports XM formats (Fast Tracker 2, ScreamTracker 3 and Protracker):
http://geocities.com/sunet2000/
I wouldn't say a huge demand for it, but since it's almost no work on your part, go for it.

Quote
If you just want to abuse the mod format to play a WAV, it would be more reasonable if I would support WAV in the first place. I just never considered it since I figured WAV music would take too much space.
I agree on all points.  It probably makes more sense anyway to support formats like MP3 and OGG instead of WAV.

Quote
BTW: Midi conversion is not an option?
Hmm, didn't know Lemmini supports MIDI.  But in any case, I can tell you the MIDI conversion is not that great and would need a lot of manual cleanup work.  I should know since I made an attempt with this music via conversion back when I'm making MIDIs for Ahribar.

0xdeadbeef

  • Guest
Re: Extracting levels from console versions
« Reply #8 on: May 11, 2007, 07:17:15 PM »
Quote from: ccexplore
I wouldn't say a huge demand for it, but since it's almost no work on your part, go for it.
Not much work but more than almost none. I'll have to check.

Quote
I agree on all points.  It probably makes more sense anyway to support formats like MP3 and OGG instead of WAV.
MP3 should be possible, though it would increase runtime and memory footprint considerably. Could be hard to find a stable library with a acceptable license though.

Quote
Hmm, didn't know Lemmini supports MIDI.  But in any case, I can tell you the MIDI conversion is not that great and would need a lot of manual cleanup work.  I should know since I made an attempt with this music via conversion back when I'm making MIDIs for Ahribar.
Was just an idea and yes, Lemmini does support Midi.

Just in theory, it would probably be possible to emulate the YM2612 in Java. Looking at some of the C code available, it doesn't look much more complex than a mod player. Then again, I didn't find a Java library yet.

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #9 on: May 21, 2007, 06:11:50 PM »
I've been wondering, does anyone know of a way to extract level data from the various console versions of Lemmings, so as to generate PC-playable versions of the console-exclusive levels?

All right, some good news.  Last week I worked on and managed to figure out much of how the levels are stored in the Sega Genesis/Megadrive version of Lemmings.  You know, the one that has many, many extra and different levels.

I'll write a program this week to try and extract them into LVL files.  There's still the issue that some (many?) of the levels will require additional terrain graphics.  I'll work on that next after the levels are successfully extracted.

WNivek

  • Guest
Re: Extracting levels from console versions
« Reply #10 on: May 21, 2007, 08:04:32 PM »
All right, some good news.  Last week I worked on and managed to figure out much of how the levels are stored in the Sega Genesis/Megadrive version of Lemmings.
Awesome!  :thumbsup:

Of course, now I feel slightly foolish for having manually recreated the Genesis's Fun 14 & 15, but at least those two were easy enough.

Any chance the info you've uncovered will also be helpful for the SNES version, or should I be remaking those six levels myself? (Already done Tricky 21, 'Ohayo Lemming san!')

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #11 on: May 21, 2007, 10:19:10 PM »
There's a moderately good chance that what I knew from the Genesis version may help with the SNES version, because they are both made by the same company I think.  That said, there are many technical differences between the two consoles so who knows.

Of the six unique levels in SNES, two of them appears 100% identical (besides the titles) to levels in the Genesis/Megadrive version:
  • Sunsoft Special 1 (SNES) -> Two Heads Are Better... (Genesis, Sunsoft #27)
  • Sunsoft Special 5 (SNES) -> Lemmings' Ark (Genesis, Mayhem #30)

Another three are very similar to levels in the Genesis version, except the Genesis version of the levels are shortened (to fit the reduced 512x160 playfield used in the Genesis version):
  • Sunsoft Special 2 (SNES) -> I am A.T. (Genesis, Sunsoft #29)
  • Sunsoft Special 3 (SNES) -> Private Room Available (Genesis, Present #29)
  • Sunsoft Special 4 (SNES) -> Final Impediment (Genesis, Present #30)

This leaves "Ohayo Lemmings San" as the one and only level that's truly unique to the SNES version.


WNivek

  • Guest
Re: Extracting levels from console versions
« Reply #12 on: May 21, 2007, 11:45:50 PM »
Of the six unique levels in SNES, two of them appears 100% identical (besides the titles) to levels in the Genesis/Megadrive version:
<snip>
Another three are very similar to levels in the Genesis version, except the Genesis version of the levels are shortened (to fit the reduced 512x160 playfield used in the Genesis version)
Hmm, interesting. I hadn't noticed that... guess I wasn't looking closely enough.

As a side note, and I know I'm being pedantic here, but those '100% identical' levels aren't quite 100%...
SNES Sunsoft 1 shortens the platforms between the spinning-blade traps, changes the arrangement of some of the steel, shifts the entrance, exit and crusher trap by a few pixels, and adds terrain piece 55 on the left-most decorative hill.
SNES Sunsoft 5 shifts the whole level down by four pixels (except for the upper section of one-way arrows) and adds three blocks off the left side.
Minor differences, but I just thought I'd point them out.

This leaves "Ohayo Lemmings San" as the one and only level that's truly unique to the SNES version.
Heh, good thing I've already remade that one, then. :)

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #13 on: May 21, 2007, 11:51:20 PM »
As a side note, and I know I'm being pedantic here, but those '100% identical' levels aren't quite 100%...<snip>

Hmm, good eye.  I guess all six SNES levels could use some extracting from the ROM then, since none of the Genesis levels are actually identical.

Did you remake "Ohayo..." as a special graphics level or using individual terrain pieces?  Because unless a level is remade with individual terrain pieces, they won't be as easily usable outside of Lemmini (eg. CustLemm, Lemmix, other ports of Lemmings that uses the LVL file format, etc.)  So I think there's still a use for a ROM extraction of the levels that you have already remade manually.

WNivek

  • Guest
Re: Extracting levels from console versions
« Reply #14 on: May 22, 2007, 12:20:27 AM »
Did you remake "Ohayo..." as a special graphics level or using individual terrain pieces?
I was indeed using individual terrain pieces. That's why I didn't get through Genesis Fun 16 - I found the Dirt style to be quite difficult to figure out. Incidentally, that hardship led to me adapting SNES Tricky 21.

I have been working in Lemmini's ini format (needing to enter a LOT of data by hand, a text editor is convenient) but it should be possible to port them to lvl format.

I think there's still a use for a ROM extraction of the levels that you have already remade manually.
I agree completely. I'm a bit of a perfectionist, and said extraction would be much more 'perfect' than any hand-made recreation could hope to be. Even if the clone manages to be pixel-accurate, there's always hidden factors like drawing order and the 'no overwrite' flag. ('is this ball being drawn before that bar, or is coming afterwards and just not overwriting?')

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #15 on: May 22, 2007, 11:53:06 AM »
All right, some good news.  Last week I worked on and managed to figure out much of how the levels are stored in the Sega Genesis/Megadrive version of Lemmings.  You know, the one that has many, many extra and different levels.

I'll write a program this week to try and extract them into LVL files.  There's still the issue that some (many?) of the levels will require additional terrain graphics.  I'll work on that next after the levels are successfully extracted.

Ok, here's a teaser of 5 levels I've extracted using the program I'm still developing:

http://www.geocities.com/guestlevels/lemmings/genesis_teaser.zip

One absolutely amazing thing I discovered from this is, the Genesis graphics sets actually do not use any additional terrain pieces!  That's right, things like the rings in Present 14, and the greenery in Sunsoft 20, are actually made entirely of standard terrain pieces!

Anyway, there's still a bunch of work left, mainly in fixing various errors with the conversions (you should be able to spot some in the levels included in the teaser).  So while you can feel free to start using the levels in the teaser, if you wait a few days I might be able to save you some of the work of fixing mistakes in the conversion.

Oh, one more thing:  remember that Genesis Lemmings can handle up to 100 lemmings in a level, but PC Lemmings can only do 80.  So if you're going to actually play one of the extracted levels using CustLemm or DOS Lemmings, be sure to adjust the number of lemmings out and to be saved accordingly.  The level should play fine w/o modification on Lemmix or Lemmini or Amiga Lemmings or anything that doesn't have the 80-lemming limitation.

Offline Fleech

  • Posts: 94
    • View Profile
Re: Extracting levels from console versions
« Reply #16 on: May 22, 2007, 12:55:08 PM »
Excellent, ccexplore! :thumbsup:

Having not played most of these levels I'm really looking forward to when you're finished with this.

Offline Mr. K

  • Posts: 793
  • Former admin, always Lemmings fan
    • View Profile
    • Wafflenet
Re: Extracting levels from console versions
« Reply #17 on: May 23, 2007, 03:44:17 AM »
Windows Lemmings can also support up to 117 lemmings, so it will work fine there.

Offline DragonsLover

  • Posts: 1234
  • Do you want fire?
    • View Profile
Re: Extracting levels from console versions
« Reply #18 on: May 23, 2007, 04:27:11 AM »
I did test with 100 Lemmings under Lemmings95, but it causes a crash. How do you do that? And anyway, Lemmings95 sucks because of some bad differences from the Dos version.
I like dragons! They're the center of my life! I'll never forget them...

Offline Mr. K

  • Posts: 793
  • Former admin, always Lemmings fan
    • View Profile
    • Wafflenet
Re: Extracting levels from console versions
« Reply #19 on: May 23, 2007, 05:47:57 AM »
It's always worked fine for me until 117...

WNivek

  • Guest
Re: Extracting levels from console versions
« Reply #20 on: May 23, 2007, 07:12:55 AM »
With the aid of a hex-editor (can't get Lemmini to give me > 100 lemmings) I've been able to confirm that Ji Hoon is indeed correct - WinLemm works fine with 116 lemmings. Ask for 117, though, and it crashes the instant it tries to spawn that last one in the level.
Interesting.

Odd, then, that WinLemm's levels would still retain the 80-lemming cap from the Dos version...

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #21 on: May 23, 2007, 09:58:08 AM »
Ok, this is still not finished, but since some people are probably dying to play the levels even if they're not perfect yet, here they are, all 180 Genesis levels extracted:

http://www.geocities.com/guestlevels/lemmings/genlvls_raw.zip

Enjoy! ;)

[By the way, don't bother with Fun 22, Tricky 14, Taxing 15, Mayhem 22, and Sunsoft 18.  Those are the five special graphics levels in Genesis, and w/o the special graphics the LVLs alone are useless.]

----------------------------

(Below I explain in many words why it's not finished and what problems remain before it's fully finished.)

The big reason this is not finished is that, it turns out while the graphics sets used in Genesis Lemmings is almost identical to the PC/Amiga graphics sets, there are a few subtle differences here and there, and those differences need to be identified and adjusted for the level to be the same when played on the PC/Amiga versions.  For example, I discovered that in graphics set 0, the Genesis version switched the meaning of terrain id 42 and 43, so I had to fix that in my extraction program so that the correct terrain would be used when playing the level on PC/Amiga Lemmings.  As another example, there's some other not-yet-identified difference at play causing Present 27 ("Try Anything Once") to incorrectly have narrow gaps in certain places.  Etc.

To completely identify all these differences, I'd need to write another program that can insert specially crafted levels back into the Genesis ROM that displays all terrain pieces and objects in a well-arranged manner, so that I can fully identify all the differences manually.  This obviously will take some time, and since most levels are not affected by this issue, I figure I'd release the levels now in their slightly imperfect but mostly playable form.

Other differences that need to be taken care of:

- the Genesis version only has a 512x160 playfield while the PC/Amiga versions use 1600x160.  So when translating the Genesis levels into LVLs, I shifted the x by an amount such that the 512x160 Genesis playfield is centered horizontally within the 1600x1600 PC/Amiga playfield.  One effect of this is that graphics which are partially clipped on the Genesis version are not clipped when you play them on the PC/Amiga version.

While I can add eraser pieces to manually clip the unclipped portions, that might not always be the best thing to do aesthetically.  Thus ultimately these clipping differences will have to be manually reviewed on a case-by-case basis.

- similar to the clipping issues, sometimes a water object which would normally be at the edge of the Genesis playfield is now no longer at the edge on the PC/Amiga version, and so it'd look a little odd.  Again, the best aesthetical fix (generally, to add a terrain piece to cover the exposed left/right edge of the water object) is not something that can easily be determined by program, and therefore must be done manually.

- Genesis Lemming's viewport size is only 240x160, smaller than the 320x160 in PC/Amiga.  (By viewport size, I mean the size of the portion of playfield shown on the screen at any instant.)  Thus using the same starting-X position means that the initial starting screen will expose more stuff on the right side of the screen on PC/Amiga compared with Genesis Lemmings.  Depending on how the level looks and works, this may or may not be appropriate.  So again, each level's starting-X screen position will need to be manually re-adjusted on a case-by-case basis.

- Genesis Lemmings may have slightly different calculation for the positioning of an interactive object's trigger area.    Thus once in a while, in the levels I uploaded, you may find a trap or exit or some object that should be functional but isn't, even though the object's visual position is correct (meaning it matches its visual position in the level in Genesis Lemmings).  Please let me know if you discover such problems.  Because an object's (x,y) position must be aligned in certain ways, fixing the problem may in some cases require changing the terrain slightly, so again some instances of this problem will require manual effort to fix.

As you can see, to get the levels to perfection will take some work, and frankly I'm not sure I want to commit to doing all that.  I will certainly make sure all extracted levels have accurate terrain positioning and to fix serious gameplay issues like nonfunctioning traps and exits, but beyond that, the more aesthetic fixes I'll probably leave it to other people here to do.

Offline Fleech

  • Posts: 94
    • View Profile
Re: Extracting levels from console versions
« Reply #22 on: May 23, 2007, 10:15:56 AM »
Huge thanks for all of this.

I've just started going through them now to test the traps/exits etc. (nice excuse not to do any real work :tongue:) and will post the results when I'm done. Regarding having to edit the appearance of some of the levels, I'd be happy to help out where I can.

EDIT: thought I'd update this as I going along. All objects listed do NOT work at present.

Fun21: Both laser traps
Fun26: Rope trap
Fun28: Both flame pits

All Tricky objects seem to be fine.

Taxing03: Both laser traps

Mayhem05: Both flame pits
Mayhem13: Rope trap

Present17: Both laser traps
Present24: Both laser traps
Present25: Spike trap
Present29: Laser trap

Sunsoft09: Laser trap

Think that's the lot. :)

Offline Mr. K

  • Posts: 793
  • Former admin, always Lemmings fan
    • View Profile
    • Wafflenet
Re: Extracting levels from console versions
« Reply #23 on: May 23, 2007, 10:18:44 AM »
Would it be possible to extract (or screenshot and convert) the special graphics for the Sunsoft 18?

Offline Fleech

  • Posts: 94
    • View Profile
Re: Extracting levels from console versions
« Reply #24 on: May 23, 2007, 10:25:14 AM »
There's an option in Lemmix that allows you to create Extended Graphic levels. I've not used it before, but I guess if you were to screenshot the level and import it it should work? May need to alter the colour count though.

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #25 on: May 23, 2007, 11:44:30 AM »

Offline Fleech

  • Posts: 94
    • View Profile
Re: Extracting levels from console versions
« Reply #26 on: May 23, 2007, 11:53:40 AM »
I've now finished going through the levels so hopefully the list above is complete. I'll have a crack at the special levels later perhaps, need to be getting on with something more constructive now. :tongue:

WNivek

  • Guest
Re: Extracting levels from console versions
« Reply #27 on: May 23, 2007, 08:43:43 PM »
If anyone wants those PNGs of the Genesis special levels, with the entrances and exits carefully removed, here they are.

Also, Lemmini users can find playable versions in an earlier post of mine in this thread.

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #28 on: May 24, 2007, 01:25:42 PM »
The big reason this is not finished is that, it turns out while the graphics sets used in Genesis Lemmings is almost identical to the PC/Amiga graphics sets, there are a few subtle differences here and there, and those differences need to be identified and adjusted for the level to be the same when played on the PC/Amiga versions.<snip>To completely identify all these differences, I'd need to write another program that can insert specially crafted levels back into the Genesis ROM that displays all terrain pieces and objects in a well-arranged manner, so that I can fully identify all the differences manually.

Progress update:  I've written the program mentioned above, and with its help, I think I have now identified all the terrain differences between the DOS and Genesis graphics sets:

1) set #0:  terrain piece id #42 and #43 are switched
2) set #2:  terrain piece id #40:  Genesis version has one extra terrain pixel at (1, 1)
3) set #3:  terrain piece id #32:  Genesis version's graphics is wider by 2 columns of pixels

Difference 1 and 3 causes the majority of terrain problems but are very easy to fix automatically by my extraction program.  Difference 2 is harder to fix but probably makes little difference in actual levels.

Since the differences above are spotted by eye, I probably should at some point also make a program to do a full pixel-by-pixel comparison to make sure I didn't miss anything.  I also need to modify my program so it can create suitable levels for me to compare the object graphics.

[edit:  I browse through all Genesis levels using graphics set #2 and it looks like difference 2 is truly a non-issue.  Because in all levels that use the affected terrain piece, the ends of the terrain piece are never exposed.  There's still the slight possibility that some levels use that terrain piece as an eraser, in which case any differences would easily be missed in a visual inspection.  I'll re-check that possibility later]

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #29 on: May 24, 2007, 06:09:03 PM »
If anyone wants those PNGs of the Genesis special levels, with the entrances and exits carefully removed, here they are.

You missed a pixel in the graphics for the Sunsoft special.  The orange pixel at (451,135) is part of the exit graphic and not terrain, and therefore should be removed.  You can verify that by comparing to a normal level using the Dirt exit, such as Sunsoft 17:

http://www.neolemmix.com/levelimg/extra/0317.png

WNivek

  • Guest
Re: Extracting levels from console versions
« Reply #30 on: May 24, 2007, 06:28:33 PM »
You missed a pixel in the graphics for the Sunsoft special.
Hmm, you're right. I wonder how I missed that. Guess I wasn't as careful as I'd thought...
Anyway, thanks for the heads-up. I have corrected the error, and reuploaded the file.

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #31 on: May 25, 2007, 12:03:16 PM »
Since the differences above are spotted by eye, I probably should at some point also make a program to do a full pixel-by-pixel comparison to make sure I didn't miss anything.  I also need to modify my program so it can create suitable levels for me to compare the object graphics.

It turns out I did miss a few other, very minor differences.  With the comparison done by program, I'm now confident that I've identified all differences in terrain pieces.  The result (old and new differences) can be seen in this image:

http://www.geocities.com/guestlevels/lemmings/genterrdiff.png

The left column are the Genesis graphics and the right column are the PC counterparts.  All the newly found differences are only a pixel or two.  This makes them quite hard to fix in a general manner, but on the other hand it also means not fixing them probably won't affect a level much if at all.

Next step is for me to do the same thing for object graphics.  Although with objects, the exact graphics doesn't matter much since what really counts in the gameplay is only the object's trigger area.

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #32 on: May 26, 2007, 10:44:57 PM »
Next step is for me to do the same thing for object graphics.  Although with objects, the exact graphics doesn't matter much since what really counts in the gameplay is only the object's trigger area.

I have made comparisons to both the objects' graphics and trigger areas.  For the most part they're the same or nearly the same between the PC and Genesis versions, but there are some significant differences:

1) the Genesis version appears to have corrected the errors in the trigger areas for one-way walls and water objects (in the PC version the trigger areas for those objects are short by 4 pixels vertically, not extending all the way to the bottom of the object as one would expect)

2) In graphic set #4 (aka "Blue"/"Crystal"), the slicer trap and the laser traps are positioned quite differently from the PC version.  Their graphics appear to be shifted 4 pixels to the left, and for the slicer trap, 6 pixels down as well.  Their trigger areas in Genesis version are both shifted 4 pixels left and 4 pixels down.  This is one major reason why many of the laser traps aren't working in the current extracted levels when played on the PC.

===========================

Unfortunately, it's not possible to shift an object's position in a level by 4 pixels; the x-position is always aligned to multiple of 8.  So I can't really fix the graphic positioning issue for problem #2, but I may be able to deal with the trigger areas.

There are two approaches to handling the trigger area differences:

1) Create a modified set of GroundXo.dat files that uses the Genesis version's trigger area specifications.
2) Use the PC version's GroundXo.dat files, but adjust the objects' positioning in the level to compensate for the difference in trigger area positioning.

My preference is of course approach #1; however, I can see that it may be confusing and slightly inconvenient for people to maintain a separate set of GroundXo.dat files just for playing the Genesis levels, plus replacing the GroundXo.dat files may be trickier in other versions like Amiga or Mac.  So I'm likely going to provide two versions of each affected level, one using the modified GroundXo.dat files, and the other using the unmodified PC GroundXo.dat files but with modified positioning of objects in the affected levels.

------------------

One other thing to note is that based on the comparison of trigger area positoning, some traps (eg. the rope trap in Fun 26) really do appear to be not working in the Genesis level even when played on the console.  For now I will probably leave such issues unfixed since they are present in the actual console game as well.  If those nonfunctional traps are causing unacceptable major backroutes that totally ruin a level, then we can consider fixing them later at the stage when we start fixing other things like clipping and screen starting position.

I'm planning to modify my extraction program, and will hopefully be able to upload an update to the extracted levels by sometime tonight or tomorrow afternoon.

WNivek

  • Guest
Re: Extracting levels from console versions
« Reply #33 on: May 27, 2007, 07:30:48 AM »
Unfortunately, it's not possible to shift an object's position in a level by 4 pixels; the x-position is always aligned to multiple of 8.
I know it's not as widely compatible as a level format, but Lemmini's ini levels aren't limited in that manner. If you decide to also extract levels to ini, that one detail won't be an issue.
(Note that I'm not trying to suggest abandoning lvl. I know it's a much more widely accepted format, and should be considered the priority. However, it might be worth considering to additionally provide ini directly, in order to sidestep the 4-pixel issue for some users)

Out of curiosity, which version are you working from? I seem to recall seeing that there were three versions of the Gen/MD Lemmings - PAL, NTSC (rev00), and NTSC (rev01).
I don't know just what differences might exist (beside the obvious) but, if you're not already, it might be a good idea to compare between them and see if anything you're dealing with here is altered from one to another.

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #34 on: May 27, 2007, 08:18:14 AM »
Out of curiosity, which version are you working from? I seem to recall seeing that there were three versions of the Gen/MD Lemmings - PAL, NTSC (rev00), and NTSC (rev01).

I don't know just what differences might exist (beside the obvious) but, if you're not already, it might be a good idea to compare between them and see if anything you're dealing with here is altered from one to another.

I'm not sure how to tell which version is mine.  I don't want to search the web since I don't know if they'll always indicate which version they are offering, so if you want me to go through all three versions you better either e-mail me the ROMs or point me to some web pages where I can find each version.

Offline Mindless

  • Posts: 719
  • Inactive - may respond to PM.
    • View Profile
Re: Extracting levels from console versions
« Reply #35 on: May 27, 2007, 02:22:33 PM »
PAL, NTSC (REV00), NTSC (REV01)

Hit "Telecharger" -- you may have to wait a bit if you download multiple ROMs.

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #36 on: May 28, 2007, 02:02:01 AM »
Thanks Mindless.

It looks like the ROM I had is the "NTSC (REV00)" version.

I'll investigate the other versions later, but only after I'm done with the REV00 version level extraction to my satisfaction.

Craig3410

  • Guest
Re: Extracting levels from console versions
« Reply #37 on: May 29, 2007, 10:59:53 PM »
Nice work on extracting them.

Now if only I could compile the levels into a playable level pak; clicking "load level" and picking the right level 150 times gets annoying....  :smiley:

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #38 on: May 29, 2007, 11:34:12 PM »
Progress update:  I finally updated my extraction program to both apply some fixes automatically, and warn me about the rest.

So I'm now at the process of reviewing "the rest" and see which need fixing.  I've gone through Fun and Tricky so far.  As mentioned before, when I'm done I'll release two versions of the extracted levels, one using the original PC-DOS groundXo.dat files, and the other using a modified version of the groundXo.dat files to better match the Genesis version.  The main difference is that the one using the modified groundXo.dat would have less changes in the levels themselves.

Since there are always subtle differences in the game mechanics itself (especially since the levels may be played on a multitude of ports and clones that support the LVL format), I've decided it's pointless to try to get the levels to be 100% identical to Genesis, so unless a difference has a significant effect on gameplay it won't be fixed.  For example, I mentioned that the laser traps are positioned 4 pixels more left in the Genesis version than the PC version, but in all instances where the traps are used, this doesn't seem to make any difference to the gameplay, so I would consider the difference not worth fixing (ignoring the fact that it can't be easily fixed anyway for PC Lemmings and many other ports).  Ditto for those terrain pieces that differ by one or two pixels in the Genesis version (unless that pixel really makes a crucial difference in a level, which so far haven't been the case).

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #39 on: May 30, 2007, 05:53:49 PM »
I've now reviewed up to Mayhem, so only 60 more levels to go <pant, pant...>

Hopefully I'll be done with this by end of this week.

[edit:  finished reviewing Present.  Progress has slowed down because the two Genesis-unique ratings have more levels that need reviewing.  I also discovered that some levels need further adjustments due to differences between how Genesis Lemmings and DOS Lemmings calculate fall distances for non-walkers.  With great luck I might finish by Sunday but who knows......]

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #40 on: May 31, 2007, 02:36:17 PM »
I'm still not done reviewing the levels, but I have finished making the alternate GroundXo.dat files for the Genesis levels.

http://it.travisbsd.org/lemmings/lemmingswelt/index.php?cmd=get&file=/GenesisGroundX.zip

There are two sets of GroundXo files in that zip file.  One set ends in "G" (eg. Ground0G.dat), and the other set ends in "H".  In both sets, I modified the trigger areas of various objects to better match the values in Genesis Lemmings.  The G set also has the palettes (ie. color scheme) modified so that it looks more like the Genesis graphics; the H set uses the original palettes of PC-DOS Lemmings.

How to use:  if you use Lemmix to play these levels, you can create a new style to make use of these files.  First, make sure to exit all running instances of Lemmix.  Then make a backup copy of the LemmixStyles.ini file in case you mess up the following steps and Lemmix stops working.  Now open up LemmixStyles.ini in a text editor.  Add the following to the beginning of the file:

[style_10]
StyleClass=TDosOhNoStyle
CommonPath=C:\Lemmix\
MainDataFile=main.dat
OddTableFile=
StyleDescription=Sega Genesis/Megadrive
StyleName=Genesis

(change the value for CommonPath from "C:\Lemmix\" to the correct path on your computer, pointing to the directory where Lemmix resides)

Then add the following at the end of the file:

[Genesis_0]
GraphicSetClass=TBaseDosGraphicSet
BrickColor=4291854368
GraphicExtFile=
GraphicFile=VGAGR0.DAT
GraphicSetArchive=
GraphicSetId=0
GraphicSetIdExt=0
GraphicSetName=Dirt
MetaInfoFile=GROUND0G.DAT

[Genesis_1]
GraphicSetClass=TBaseDosGraphicSet
BrickColor=4278214800
GraphicExtFile=
GraphicFile=VGAGR1.DAT
GraphicSetArchive=
GraphicSetId=1
GraphicSetIdExt=0
GraphicSetName=Fire
MetaInfoFile=GROUND1G.DAT

[Genesis_2]
GraphicSetClass=TBaseDosGraphicSet
BrickColor=4290818288
GraphicExtFile=
GraphicFile=VGAGR2.DAT
GraphicSetArchive=
GraphicSetId=2
GraphicSetIdExt=0
GraphicSetName=Marble
MetaInfoFile=GROUND2G.DAT

[Genesis_3]
GraphicSetClass=TBaseDosGraphicSet
BrickColor=4293980256
GraphicExtFile=
GraphicFile=VGAGR3.DAT
GraphicSetArchive=
GraphicSetId=3
GraphicSetIdExt=0
GraphicSetName=Pillar
MetaInfoFile=GROUND3G.DAT

[Genesis_4]
GraphicSetClass=TBaseDosGraphicSet
BrickColor=4293980400
GraphicExtFile=
GraphicFile=VGAGR4.DAT
GraphicSetArchive=
GraphicSetId=4
GraphicSetIdExt=0
GraphicSetName=Crystal
MetaInfoFile=GROUND4G.DAT

Notice how in each section the "MetaInfoFile" points to the new files I provided.  If you want to use the H set instead of the G set, simply change it to GROUNDxH wherever you see GROUNDxG above.

Save your changes to LemmixStyles.ini.  Then, unzip/copy the GroundXG/H files to the directory where Lemmix resides.  Also copy the VGAGRx.DAT files from DOS Lemmings or CustLemm into the Lemmix directory if you haven't already done so.  Now, to check that it's working, run Lemmix, and open one of the extracted Genesis LVL level file.  Lemmix would then make you pick a style to be used.  If you change LemmixStyles.ini as above, the drop-down list of styles should now have an entry named "Sega Genesis/Megadrive" at the end of the list.  Selecting that style and click OK, and the level should open using my Genesis style.

======================

If you use CustLemm or one of the original PC-DOS Lemmings game to play, the best thing to do is to make a copy of the entire folder containing CustLemm/Lemmings, to be used exclusively for playing the Genesis levels.  Then in that folder, copy the GroundXG (or GroundXH if you prefer) files over the original GroundXo files.  This means deleting the old GroundXo files, copy the new GroundXG/H files into the folder, and then renaming them so they end in "o" like the original files.

--------------------------------------

I don't know if other ports/clones of Lemmings besides the ones mentioned above use GroundXo.dat files, so these files probably won't be of use for Amiga Lemmings, WinLemm or Lemmini.

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #41 on: June 12, 2007, 02:01:00 PM »
All right, I finally finished with my first pass with the extracted Genesis levels:

http://www.geocities.com/guestlevels/lemmings/genlvls_6-12-07.zip

This is a first pass because I haven't dealt with certain mainly aesthetic issues, such as needing to erase terrain that would be clipped out of view in Genesis Lemmings.  The main goal of the first pass is to make sure the levels work more or less as they would when played in Genesis, in terms of solving.

The zip file contains a bunch of folders, and you'd find that some levels exist in more than one folder.  This is because for some levels, I need to make multiple versions of a level.  The two factors that lead to this are:

1) If you choose to use the original DOS Lemming styles (groundXo.dat files) instead of the Genesis Lemmings styles (groundxG.dat or groundxH.dat) I provided earlier, some objects' trigger areas will be setup differently, and in some cases this may cause a level to not work correctly without changes.

2) If you choose to use CustLemm or one of the programs from the DOS Lemmings series to play the levels, these programs have the limitation of no more than 80 lemmings in a level.  Some Genesis levels have up to 100 lemmings.

Thus to account for these two factors, alternate versions of the affected levels were made to mitigate these issues.  The readme.txt in the zip file explains how to work out the correct set of files to use based on how you plan to play the levels.  If anyone has any questions regarding this please feel free to ask me.

Note:  if you're going to play the levels using CustLemm, make sure to use CustLem2.exe or nocdlem2.exe.  Those versions of CustLemm have the same maximum safe falling distances as DOS Lemmings, ONML, and Genesis Lemmings, unlike CustLemm or nocdlem.exe.  To illustrate the problem with CustLemm, note for example that you don't have to do anything to solve the "We All Fall Down" levels in CustLemm because of its higher safe falling distance!  Quite a few of the Genesis levels are sensitive to the correct falling distance, so just don't use CustLemm, use CustLem 2 or nocdlem2.  Similarly if you use Lemmix, you should not use the "Customize Lemmings" style to play the levels; use "DOS Original Lemmings" or my "Sega Genesis/Megadrive" styles instead.

==============================

Some gameplay-affecting issues I haven't resolved yet:

1) Present 6 and Sunsoft 26 are both levels where the tight time limit is a crucial aspect of the level, and both have 100 lemmings.  Thus the version of the levels that have the number of lemmings reduced to 80 may be easier than the original.  To mitigate this I would need to analyze the level in greater detail, and then change the terrain to compensate for the lower number of lemmings (eg. a lengthen the path to the exit or something).

2) I have left out all 5 special graphics levels.  Despite the fact that we got screenshots of those levels from deveria.com, I later found out that the screenshots are very close, but not quite as accurate as I'd like--in some cases the dimension of the screenshot isn't even correct (things like 510x159, when the expected dimension should be 512x160)!  So for the sake of making sure I'm using 100% accurate material, I've decided to hold off on those levels until I figure out how to extract the special graphics bitmaps directly from Genesis ROM.

3) Tricky 30 is still solvable in DOS Lemmings / Lemmix, but slightly less straightforward than in Genesis Lemmings.  This is due to subtle differences in how the two games keep track of falling distance, with DOS Lemmings being less forgiving in certain cases.  In the case of Tricky 30, it's simply not possible to mitigate the difference by modifying the terrain.  The solution in DOS Lemmings will require careful adjustment of the release rate unlike Genesis Lemmings.

------------

It should also be noted that in going through the levels, I specifically only looked through the levels that have interactive objects or terrain that I had identified to differ in DOS and Genesis Lemmings, and levels that were flagged for certain specific things (eg. more than 80 lemmings).  As I alluded to above with Tricky 30, some levels which have identical objects setup and terrain in DOS Lemmings and Genesis, may nevertheless be affected by a few subtle game mechanics differences.  Since I didn't actually playtest every single level, it's possible I might miss catching these issues on a few levels.

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #42 on: June 15, 2007, 11:46:23 AM »
2) I have left out all 5 special graphics levels.  Despite the fact that we got screenshots of those levels from deveria.com, I later found out that the screenshots are very close, but not quite as accurate as I'd like--in some cases the dimension of the screenshot isn't even correct (things like 510x159, when the expected dimension should be 512x160)!  So for the sake of making sure I'm using 100% accurate material, I've decided to hold off on those levels until I figure out how to extract the special graphics bitmaps directly from Genesis ROM.

I have now extracted the special graphics bitmaps from the ROM itself.  Although it turns out I was somewhat wrong about the dimensions:  it is indeed stored in the ROM as 512x160, but it looks like the game doesn't actually let you scroll far enough right to see the 512th column of pixels, so in effect it's really only 511x160.

Download here:

http://www.geocities.com/guestlevels/lemmings/genspeclvls.zip

Again, some levels have more than 80 lemmings, so for them I also made alternate versions that have the number of lemmings reduced to 80.

Besides the LVLs, the zip file also contains the VGASPECx.DAT files that DOS-based Lemmings games (eg. DOS Lemmings, Lemmix, CustLem2) use to get the special graphics.  I have set up the LVLs such that they ask for VGASPEC 4-8, to avoid clashing with the existing VGASPEC 0-3 from DOS Lemmings.

Finally, for the other programs out there that support special graphics levels differently, I include PNG bitmaps of the special graphics as well.  They are sized 960x160 instead of 512x160, due to a side effect of my using the bitmaps as an intermediate step for creating the VGASPECx.DAT files (namely, VGASPECx.DAT files expect the bitmap size to be 960x160), so for your use, you might want to crop it back down to 511x160.  (The original 512x160 is centered horizontally in the 960x160 area, so the x range is really 224 to 735 inclusive.)

Speaking of cropping, because DOS Lemmings has a much larger playfield than Genesis Lemmings, you will notice that many of the special graphics levels will look abruptly cut off on the left/right when viewed in the DOS Lemmings playfield.  It's unfortunate but to fix it properly would take time and can get tricky (no pun intended) in some cases.

As it's clear that interest in this whole Genesis levels extraction thing has more or less waned, and I've basically completed what was asked, I'm going to stop working further on this for now until popular demands otherwise.  Enjoy!

Offline Fleech

  • Posts: 94
    • View Profile
Re: Extracting levels from console versions
« Reply #43 on: June 15, 2007, 12:23:06 PM »
Well my interest certainly hasn't waned, ccexplore. ;)

As I said before I'm happy to help out with adding the final touches to the levels (screen start, sorting out the clipping issues etc) if you want. I really appreciate the work you've put into this, so if you don't mind having other people editing the levels then I'd be glad to.

Let us know.

EDIT: I've just had an idea for when the levels are finished. EricLang created an empty game template for the Remake project. With his permission we should be able to insert these levels into it for a proper remake of the Mega Drive/Genesis version, shouldn't we? (obviously replacing the existing groundxx.dat files etc with the new ones).

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #44 on: June 15, 2007, 06:14:40 PM »
As I said before I'm happy to help out with adding the final touches to the levels (screen start, sorting out the clipping issues etc) if you want. I really appreciate the work you've put into this, so if you don't mind having other people editing the levels then I'd be glad to.

Go ahead! :thumbsup:

Quote
EDIT: I've just had an idea for when the levels are finished. EricLang created an empty game template for the Remake project. With his permission we should be able to insert these levels into it for a proper remake of the Mega Drive/Genesis version, shouldn't we? (obviously replacing the existing groundxx.dat files etc with the new ones).

I'm not entirely clear what you have in mind when you said a remake of MegaDrive/Genesis.  The Remake project that has been talked about, if I recall, has more to do with compiling a whole new set of levels from mostly the CustLemm levels people have created over the years.  Maybe I'm thinking of something else, I haven't followed that thread for quite a while. ;)

Anyway, it sounds like the template thing can be of use to recreate a version of MegaDrive/Genesis Lemmings on the PC.  However, I think to most accurately experience Genesis Lemmings, it is best if Lemmix can be extended to handle the subtle differences in game mechanics for example (and maybe even major differences like the smaller 512x160 playfield, though I'm of two minds on that).  I already talked to EricLang about the possibility for Lemmix/LemmixPlayer to support more versions (eg. Mac), and I have done most of the reverse engineering work already for Genesis Lemmings, so ultimately this will be up to him.

Offline Fleech

  • Posts: 94
    • View Profile
Re: Extracting levels from console versions
« Reply #45 on: June 16, 2007, 12:35:05 PM »
Reading my post back I didn't really word it that well. It was more of an afterthought than anything anyway. Basically Eric created an empty template that he was going to insert the created levels in to if they ever got decided on.

Just thinking the same could be done with the Mega Drive levels. It of course wouldn't be a proper remake, and I hadn't considered the gameplay differences at all. Never mind it then. Here's hoping Eric can add proper compatability for Lemmix instead. :)

I'll start cracking on with the levels anyway.

Offline Fleech

  • Posts: 94
    • View Profile
Re: Extracting levels from console versions
« Reply #46 on: June 18, 2007, 01:00:12 PM »
Okay, I've now finished going through the levels. It's the set with the max 100 lems and edited pallette that I've used.

Can you PM your email address ccexplore so I can send them? Or recommend somewhere to upload (Lems File Portal maybe?).

Cheers.

Offline Fleech

  • Posts: 94
    • View Profile
Re: Extracting levels from console versions
« Reply #47 on: June 21, 2007, 06:55:43 PM »
Can anyone (ie cc :P) tell me how to get the special graphics levels to work in Lemmix? (I'm assuming it's possible to do so...)

Keeps coming up with an error (it can't find a certain graphics set or something) and I'm out of ideas.

Is there some special place I have to put the new vgaspecx.dat files or something??

Cheers.

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #48 on: June 21, 2007, 09:04:09 PM »
Can anyone (ie cc :P) tell me how to get the special graphics levels to work in Lemmix? (I'm assuming it's possible to do so...)

Yeah, Lemmix requires you to specify essentially a new graphics style for each special graphics you want to use.  Notice for example how under the "DOS Original Lemmings" styles, in addition to the standard 5, there are 4 styles each corresponding to one of the 4 VGASPEC in DOS Lemmings.

To use the Genesis VGASPECs you'd basically need to do the same thing.  Since I'm at work right now I can't just tell you what to add to LemmixStyles.ini (since I don't have the file with me), but if you look at that file you should be able to find the relevant sections that describes DOS Lemming's VGASPECs.  Copy those sections and adapt them for Genesis, hopefully you can figure it out.

Offline Fleech

  • Posts: 94
    • View Profile
Re: Extracting levels from console versions
« Reply #49 on: June 22, 2007, 09:42:00 AM »
Okay I'll take a look, thanks.

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Extracting levels from console versions
« Reply #50 on: June 22, 2007, 10:03:36 AM »
Yeah, Lemmix requires you to specify essentially a new graphics style for each special graphics you want to use.

Here's an example of how Lemmix specifies a style for DOS Lemming's VGASPEC0 in its LemmixStyles.ini file:

[DosOrig_5]
GraphicSetClass=TBaseDosGraphicSet
BrickColor=4291854368
GraphicExtFile=VGASPEC0.DAT
GraphicFile=VGAGR0.DAT
GraphicSetArchive=
GraphicSetId=0
GraphicSetIdExt=1
GraphicSetName=Spec0
MetaInfoFile=GROUND0O.DAT

It's similar to the normal styles, the main difference for VGASPEC is the additional specification of a GraphicExtFile and a GraphicSetIdExt.  The GraphicExtFile specifies the filename of the file to use for the VGASPEC graphics.  The directory is already specified as part of the CommonPath property in the [style_N] section that describes the DosOrig style (for Lemmix's "DOS Original Lemmings" style, see section [style_0] where it specifies the CommonPath).

The GraphicSetId and GraphicSetIdExt together identifies the criteria for using this style.  In other words, when you open a level file and you select to use the DosOrig style, if the level's LVL data specifies 0 for the normal graphics set and 1 for the extended graphics set, then Lemmix will use this Spec0 style specified in this section.

=======================

I'm assuming that you've created a "Sega Genesis/Megadrive" style as I've instructed Lemmix users to do earlier in this thread.  In that case, you would want to add the following new sections:

Quote
[Genesis_5]
GraphicSetClass=TBaseDosGraphicSet
BrickColor=4291854368
GraphicExtFile=VGASPEC4.DAT
GraphicFile=VGAGR0.DAT
GraphicSetArchive=
GraphicSetId=0
GraphicSetIdExt=5
GraphicSetName=Beast
MetaInfoFile=GROUND0G.DAT

[Genesis_6]
GraphicSetClass=TBaseDosGraphicSet
BrickColor=4291854368
GraphicExtFile=VGASPEC5.DAT
GraphicFile=VGAGR0.DAT
GraphicSetArchive=
GraphicSetId=0
GraphicSetIdExt=6
GraphicSetName=Menace
MetaInfoFile=GROUND0G.DAT

[Genesis_7]
GraphicSetClass=TBaseDosGraphicSet
BrickColor=4291854368
GraphicExtFile=VGASPEC6.DAT
GraphicFile=VGAGR0.DAT
GraphicSetArchive=
GraphicSetId=0
GraphicSetIdExt=7
GraphicSetName=BeastII
MetaInfoFile=GROUND0G.DAT

[Genesis_8]
GraphicSetClass=TBaseDosGraphicSet
BrickColor=4289761296
GraphicExtFile=VGASPEC7.DAT
GraphicFile=VGAGR0.DAT
GraphicSetArchive=
GraphicSetId=0
GraphicSetIdExt=8
GraphicSetName=Awesome
MetaInfoFile=GROUND0G.DAT

[Genesis_9]
GraphicSetClass=TBaseDosGraphicSet
BrickColor=4291854368
GraphicExtFile=VGASPEC8.DAT
GraphicFile=VGAGR0.DAT
GraphicSetArchive=
GraphicSetId=0
GraphicSetIdExt=9
GraphicSetName=SunsoftSpecial
MetaInfoFile=GROUND0G.DAT

(Replace GROUND0G.DAT with GROUND0H.dat if you're using the "H" version of the ground files.)  You'll also need to place the Genesis VGASPECx files into the same CommonPath directory you set in your LemmixStyles.ini for the Genesis style.

If you want to use Lemmix's "DOS Original Lemmings" style instead for playing the Genesis levels, simply add the above sections to LemmixStyles.ini but rename the section as [DOSOrig_N], where N starts off from 1 + the last number used for the existing "DOSOrig_N" sections in the file.  And make sure to place the Genesis VGASPECx files into DOSOrig's CommonPath directory.

Offline Fleech

  • Posts: 94
    • View Profile
Re: Extracting levels from console versions
« Reply #51 on: June 22, 2007, 10:08:13 AM »
I'd just got it to work as you posted that and was about to post what I'd done myself. :winktounge:

Excellent, thank you.