Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 11/09/2015 in all areas

  1. bobsayshilol

    Got bored, made a thing

    Hi! Newbie here, but I got bored and made a thing: I used to love this game as a kid, and recently I found the disk buried under a pile of, well, other disks. (I used to love RR and LI1+2 too, but not as much as this - I can't even remember if RR/LI1+2 had a theme, but I can hum LR's theme and the building room song without even thinking!) So now that I have more free time the idea popped into my head to reverse-engineer the game, because why not! Currently it can read the JAM file and create the main menu (well all apart from the man in the corner: just need to look at animations then once that's done it seems like a simple 3x3 matrix maps it into screen space) with sound playing (albeit in a very quiet and crackly way because I messed up the ADPCM converter and cba to redo it yet), but nothing is interactive yet. I wish I'd seen http://www.rockraidersunited.com/topic/6624-lego-racers-in-unity/ before I'd started working on this, but ah well. Almost all of this is from reverse-engineering/guesses (no copy-pasta of libLR1 or anything else, except possibly the BMP format) and I prefer to work out and implement stuff myself rather than rely on other peoples implementations, so everything you can see I've written in C or C++ (it originally started in C as a JAM dumper but then expanded into a full C++ project with a single C file that doesn't want to change into C++ (Logging.c)). It relies on LEGO.JAM being in the same folder (although it also searches the parent folder as it makes the build folder setup easier) and the .tun files being in the same folder if you want audio. If it finds the folders "MENUDATA" and "GAMEDATA" next to it then it'll read from them and ignore the JAM file since that's what posts on here seem to suggest happens (note that I haven't been running the actual LR at all - only looking at the data and guessing what each bit does - and hence never needed to modify a file, but I guess having those folders would make that easier). Currently the only command line args from the original game it accepts are "-horzres" and "-vertres" (no support for "-fov" yet, although can't wait to add that!), and additional ones are "-runtests" that runs unit tests (currently all #if 0'd out in the code, except for the image dumping) and "-headless" which was used when I used to dev on my really really old machine (had lower specs than a raspberry pi) but should probably be removed now. It requires OpenGL 3.1 because that's the highest version my machine with an Intel GPU using the Mesa drivers can go, although it doesn't actually need that high a version and I should probably lower it, but chances are most machines nowadays can run it. Maybe if I lower it back down we can get LR running on a raspberry pi or phone... maybe one day. Binaries are attached (debug and release in both Windows and Linux formats - the Linux one was built on Ubuntu 14.04 LTS, but the code requires no dependencies other than SDL2 (I think)) so have a go at running it if you feel like it, although all it does is draw what the picture shows. I think I have the 2001 re-release of the game, and from brief looks at libLR1's code when I got stuck reverse-engineering the file structures it doesn't seem to match my data exactly (unless libLR1 has never been tested against the 2001 data?). Also note that since most of this has been developed on Linux there might be subtle bugs in the Windows version - I gave it a test run and it all seems OK, and seeing as it doesn't do anything yet I don't see how it could go wrong Anyway, thought you lot might want to know about this, and don't expect regular updates at all on this or even from me (I busy). Although if you want a statement of progression: on Friday morning it wasn't drawing anything, on Saturday morning it was drawing the images (so background and the logo in the top left), and last night I added the ability to print text on the screen, albeit in a bit of a hacky way (only 1 of the fonts works "OK" since they do something weird with glyph locations - just look at the location of the "Q" in "QUIT"). Oh and the reason the labels don't match what's in the game is I haven't found the mapping between what the internal names are (ie those shown atm) and where the translations are stored in the string files, but once I've found that out then it should be fine contents.zip
    1 point
  2. le717

    The LEGO Batman Movie

    Correction, maybe: Mariah Carey is playing the mayor. http://www.hollywoodreporter.com/heat-vision/mariah-carey-joins-lego-batman-838356
    1 point
  3. someswedish

    Return To Planet U Megathread

    This reminds me of something... Edit: for some reason i still find that joke clever despite it being awful...
    1 point
  4. dsdude123

    Microsoft Home Use Program

    Time for some random babbling about Microsoft Office and the Home Use Program. Just got Office 2016 for really cheep. Not just the basic set either, the entire thing. Well, except Project and Visio. And it was only $9.95 Project and Visio are extra $10 charges each. (so to truly have everything I would need $30) Eh, I have older versions of those so no need to upgrade yet. The entire installation was automated too, no need to enter a product key or anything else. I didn't even know that I was eligible for such an offer. What a good day it has been. Although now that I think of it, I haven't even tested it to see if it works. Back to Office 2016 I go!
    1 point
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.