Giter Site home page Giter Site logo

legoislandrebuilder's Introduction


LEGO Island Rebuilder LEGO Island Rebuilder

A launcher and modification/patching tool for the 1997 video game LEGO Island

HomepageInfoDownloadBuildingUsageContributing

Supports Windows 95 - Windows 11 (Linux and macOS through Wine)

Info

LEGO Island Rebuilder is a launcher and modification tool for Mindscape's 1997 video game LEGO Island. It is the product of in-depth research done on the game; the bulk of which is documented on the LEGO Island Wiki.

It includes fixes to numerous bugs in the original game and multiple quality of life patches while making no permanent changes to the game installation. Additionally, Rebuilder acts as a full replacement for the original configuration tool.

Rebuilder currently supports all known versions of LEGO Island.

Download

The latest binaries are available on the releases page.

Building

LEGO Island Rebuilder specifically targets Microsoft Visual C++ 6.0 in order to retain compatibility with Windows 95. It is highly recommended to use this compiler at all times, as code written for newer compilers may not be compatible with this version.

Rebuilder can be built with the standard Visual C++ 6.0 IDE. Since the MSVC 6.0 installer is known to have issues on newer versions of Windows, a portable version of MSVC 6.0 is available here.

Since the IDE is old and somewhat archaic, you may wish to use a more modern IDE/code editor. This can be done by using the following commands as your build step in the IDE of your choice:

# Enter Visual C++ 6.0 build environment
<MSVC600 directory>/VC98/bin/VCVARS32.BAT

# Build the project
msdev Rebuilder.dsw /make

(Replace <MSVC600 directory> with the directory you installed/cloned MSVC 6.0 to)

Rebuilder can only be built in "Release" mode. This is because it utilizes DLL injection to modify LEGO Island in memory, and with MSVC, "Debug" code is incompatible with "Release" code (which is what LEGO Island was naturally compiled as).

Usage

By default, Rebuilder opens a graphical interface which can be used to set the patch configuration and to launch the game. However, command line arguments are also supported:

  • -r/--run: Runs LEGO Island with the currently saved configuration, bypassing Rebuilder's interface entirely.
  • -h/--help: Shows a help screen with usage details.

Linux and macOS

Rebuilder works on non-Windows platforms using Wine. Ensure LEGO Island is installed into the same prefix you're running Rebuilder in, and it should work identically to Windows.

Contributing

Contributions like code changes, documentation, or findings and research about the game are welcome. The best way of contributing code to Rebuilder is to open a pull request.

legoislandrebuilder's People

Contributors

itsmattkc avatar ramen2x avatar

Stargazers

KoopTheKoopa avatar Cesar Gonzalez avatar bl4ck avatar Samuel avatar Jono avatar Fuki avatar  avatar Code. avatar  avatar Nico Opheys avatar Guilherme Samuel avatar Milo Steier avatar Chris Struck avatar Jettcodey avatar  avatar redraincatching avatar Anant avatar pierogi avatar Vitor Hugo Gonçalves avatar Trevor D. Brown avatar Kenneth J Davis avatar Michael John avatar Zen avatar Zen van Riel avatar Benjamin W. avatar antihack3r avatar  avatar Kevin Fisher avatar David Landa avatar Missing Textures avatar Steven avatar Bocke avatar Lyssa avatar Moritz Kempe avatar C0mplexity avatar  avatar  avatar  avatar Ted Hahn avatar tomat avatar  avatar  avatar  avatar KingKrouch avatar chloe avatar Kryllyx avatar 結束バンドbocchi avatar Tavor avatar  avatar Zeck avatar ... avatar Malachy Moran-Tun avatar Amber Koenig avatar Reuben Turner avatar Jon Fox avatar Martin avatar  avatar  avatar AnotherPillow avatar Stefano Cianciulli avatar  avatar Stefan avatar  avatar Robert avatar Frank avatar undersquire avatar Éamonn Reilly avatar Eduardo Hinojosa (Frost) avatar  avatar Liu Wenyuan avatar Jirachi6774 avatar  avatar  avatar  avatar Victor avatar Laura Kirsch avatar Chris Ricketts avatar  avatar Dosugamea avatar Marcus avatar  avatar  avatar T Y avatar Søren Skov Eriksen avatar Alin Stefan Olaru avatar yeti avatar William Kearns avatar Zain Aamer avatar Benjamin Funke avatar orchid avatar  avatar  avatar DmitriLeon2000 avatar mcbeav avatar  avatar Cukier avatar Federico Damián Schonborn avatar  avatar codetrotter avatar Clique avatar

Watchers

James Cloos avatar Michele Venturi avatar Alexander Wilms avatar David Maher avatar  avatar  avatar  avatar Ydoc avatar RGM avatar  avatar  avatar  avatar Gavin L avatar Thomas Smith avatar  avatar  avatar

legoislandrebuilder's Issues

Unhooked turn speed too slow by default

We all know about LEGO Island's longstanding turn speed bug and how Rebuilder finally defeated it... except that unhooking the turn speed only guarantees that it will always be consistent. There's no reason to assume that doing so will set the speed to something that is "good". Sure, it's not an exact science to determine what speed the developers originally intended, but it's pretty clear that 20 unhooked quite a bit slower than 20 hooked at 15 FPS.

I found that 60 is a pretty good value for the unhooked speed. Regardless, I think there should be something that tells the user that the speed isn't necessarily "fixed" just because it's now unhooked, or maybe automatically setting the speed higher when the user turns on the unhooked speed in the Rebuilder.

Consider switching to binary signature searching

As of right now, every offset to be patched in the input file is hardcoded. Around 200 lines of code in here are just there to figure out where to write to, and which game version has been loaded. Switching to signature searching would make this unnecessary.
As Issue #18 proposes porting to C++ for better compatibility, this would also remove the dependency to SHA1 hashing, which is currently used to determine the game version.

The basic idea behind this is, you take a few bytes (enough for them to be unique) somewhere around code you want to patch, create a mask that allows for some bytes in there to change (if necessary) and search for them in the entire binary. if you're patching rdata, you just create a signature for code that references the memory you want to patch.
A naive implementation in C++ would look like this.

std::vector<uintptr_t> find_in_memory(std::vector<std::optional<uint8_t>> const &signature, uintptr_t const start, uintptr_t const end)
{
	std::vector<uintptr_t> results;

	for(uintptr_t cur = start; cur < end; cur++)
	{
		auto size = signature.size();
		for(size_t rel = 0; rel < size; ++rel)
		{
			auto &b = signature[rel];
			if(!b.has_value())
				continue;

			if(*(uint8_t*)(cur + rel) != *b)
				break;

			if(rel == (size - 1))
				results.emplace_back(cur);
		}
	}

	return results;
}

I would happily volunteer to implement this and create all the patterns necessary, is there any place i can find all the game binaries used in here?

Only opens program when started with cmd (& batch)

Windows 11 Home, 22H2 (64-Bit)
Processor: 12th Gen Intel Core i7-12700H
GPU: Nvidia GeForce RTX 3060 Laptop
On-Board Graphics: Intel Iris Xe Graphics
RAM: 16GB

On both the old .NET and the new version, I can't open the program by normal means.
I tried the command prompt to see if any errors came out, but the program worked.
I now have to use a batch file to start the program, even after a restart. (Everything else works fine)

There's no logs in event viewer, I have tried compatibility mode, and basically all compatibility options.
It doesn't even ask for admin when I select "Run as administrator", or "Run this program as an administrator"

Ordinal 6644 error when trying to start Rebuilder while it's in the LEGO Island Folder

I've been trying everything I could think of, from uninstalling and reinstalling to removing the files from the last program modifying it in dgVooDoo, and even redownloaded it, but it keeps giving this same issue where the "ordinal 6644 could not be located in the dynamic link library" of the location it's in.

Please help me figure this out!!!!!

Generate Modified Lego Island .EXE file

Would be nice to be able to take the original .EXE file, pass it through the rebuilder, and generate a modified one. This way users could run the modified version of Lego Island's exe via something like Steam. Since having to go through the rebuilder first will prevent steam's hook from coming into play.

I imagine the rebuilder is essentially already doing this without actually generating the .exe file, so this would be nice to have as a separate feature and shouldn't be all that complicated.

Issues with the german version

Trying to run the Rebuilder with the German Release justs crashes the game imediatly after clicking run. The main game Window is shortly visible, but dirtectly exits again, without any message what so ever. The game version (lego1.dll) reads 1.1.0.0 . The game is running on a windows 10 based machine, running the 2004 build of Windows 10 and the game is running in compatible mode, with the dgvoodo setup running.
I would really appricte if you could take a look into it, as this is one of my only childhood games, that I still love to play today

Music Injection Crashes with Any File

I tried all sorts of file locations, but no matter what I try, as soon as I replace any track in the music injector and try to Run, I get the below message.

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.UriFormatException: Invalid URI: The format of the URI could not be determined.
   at System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
   at Rebuilder.Rebuilder.Patch(String source_dir, String dir)
   at Rebuilder.Rebuilder.Run(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ButtonBase.WndProc(Message& m)
   at System.Windows.Forms.Button.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.9148 (WinRelRS6.050727-9100)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------
Rebuilder
    Assembly Version: 0.0.0.0
    Win32 Version: 0.0.0.0
    CodeBase: file:///D:/Program%20Files%20(x86)/LEGO%20Island/Rebuilder.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.9136 (WinRelRS6.050727-9100)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.9147 (WinRelRS6.050727-9100)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.9136 (WinRelRS6.050727-9100)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Xml
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.9136 (WinRelRS6.050727-9100)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Configuration
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.9136 (WinRelRS6.050727-9100)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
wh6z1opr
    Assembly Version: 0.0.0.0
    Win32 Version: 2.0.50727.9147 (WinRelRS6.050727-9100)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.



0xc0000135 error in Windows XP

I'm trying to get rebuilder to run in a Windows XP VM, but I am getting the error "The application has failed to initialize properly (0xc0000135)"

Lego Island opens but crashes in the information center after opening the game

Hello I am new to lego island and I have tried playing it on windows xp before and the same thing happens on windows 10 I am using my macbook pro 2019 which has enough to run a VM because I can play other old games. The error I am facing is that lego island keeps crashing at one point and this point is when I try to leave the information center I don't know why this happens but the game keeps beeping and glitching out with the green and red bricks I will link a video to show what is happening and I still can't find any fixes to this, I have tried installing windows 98 but I can't get drivers onto it and I can't get a web browser that supports HTTPS, I have tried updating the USB drivers in the 98 driver panel but nothing works so I can't get my Firefox browser on the 98 VM or the drivers, kernelex or Lego Island if anyone has a fix for these 2 problems I am facing please leave a comment

The Lego Island Error Video:
https://www.youtube.com/watch?v=_y6Llr6eF7k skip to 2:20 in the video that is where the error starts

graphical glitches when starting LEGO Island in windowed mode

hello anyone who is reading this,
when i enable windowed mode in LEGO Island rebuilder and run the game, this is what i get:
image
i have no idea why, but i do know that i am using windows 7 ultimate (x86), all the exe's except Uninst.exe in the C:\Program Files\LEGO Island directory are set to compatibility mode with windows xp service pack 3 selected, and this does not happen in fullscreen mode
edit: without the compatibility mode the game refuses to even run no matter what i select in the rebuilder
edit 2: without compatibility mode the game did not run but now it does without compatibility mode idk why

hello,

hello im from vids on yt on this and im trying to get this to work can you help me pls (im on mac runing windows 10 btw)

Pressing Escape causes animation errors and a crash

On stock LEGO Island, pressing Escape at pretty much any time will immediately teleport you back to the Information Center and cause the Infomaniac to do a brief animation where you can either click on a green brick to leave the game or a red brick to stay. When launching the game through the Rebuilder, pressing Escape causes this sequence to begin, but the Infomaniac's animation will be glitched, jumping around and flickering. After a few seconds, the game will crash. I was able to do this from different places as different characters.

Lego Island Rebuilder is not starting. Appears on Processes List for one second and disappears.

Hello.

I have a working installation of Lego Island installed on a Windows XP Service Pack 3 Virtual Machine running on VMWare Fusion on Mac OS X Catalina. My Windows XP installation currently has Microsoft .NET Framework 2.0 installed.

I have Lego Island Rebuilder saved to a folder on my Desktop. Upon trying to launch, it appears on my Processes list for about one second before disappearing. No error message or anything.

Use of Password Hash With Insufficient Computational Effort

(BETA Suggestion) The SHA1 hash (used by global::System.Security.Cryptography.SHA1Managed) is insecure. Consider changing it to a secure hash algorithm.
Rebuilder/Rebuilder.cs Line 622:
using (SHA1Managed sha1 = new SHA1Managed())
Details
Sensitive information should never be stored in plain text, since this makes it very easy for unauthorized users, whether malicious insiders or outside attackers, to access. Hashing methods are used to make stored passwords and other sensitive data unreadable to users. For example, when a password is defined for the first time, it is hashed and then stored. The next time that user attempts to log on, the password they enter is hashed following the same procedure and compared with the stored value. In this way, the original password never needs to be stored in the system.

Hashing is a one-way scheme, meaning a hashed password cannot be reverse engineered. However, if an outdated or custom programmed hashing scheme is used, it becomes simple for an attacker with powerful modern computing power to gain access to the hashes used. This opens up access to all stored password information, leading to breached security. Therefore, it is essential for developers to understand modern, secure password hashing techniques.

Erorr: "Lego Island failed to start"

Hello,

i am really glad there i someone trying to optimize this game for modern hardware.
I just tried to use the Lego Island Rebuilder after fiddling around with the german installation of the game.
While it runs with the usual issues without the Reubuilder, it gives me a black screen and the following error message when using the Rebuilder.exe:

image

(it translates to: ""Lego Island" failed to start. Please close all applications and try again.")

Here is what I did:

  • copied the files from the cd-rom to C:\Users\[username]\Downloads
  • installed game via INSTALL.exe
  • opened folder C:\Program Files (x86)\LEGO Insel
  • copied the file "d3drm.dll" from disc to installation folder
  • activated checkmarks for "Compatibility mode" and set it to "Windows XP Service Pack 3" for the following files:
    • Config.exe
    • ISLE.exe
    • LEGOIsle.exe
    • Msrun.exe
  • ran Config.exe and set following setttings:

image

  • checked that game starts via click on ISLE.exe (it did/does)
  • downloaded Rebuilder.exe and placed in C:\Program Files (x86)\LEGO Insel
  • ran Rebuilder.exe and clicked on "Run" without changing any settings

Thats when the screen goes black and the error message appears.

What I already tried:

  • i tried the alternate installer -> didn't help
  • i checked the folder paths in registry -> they are correct
  • i switched rendering modes -> didn't help

Other considerations:

  • i am only using latin characters for my windows usernames
  • i am not using dgvoodoo2

Greetings and thanks in advance!

Support DirectX device selection

This is the last bit that Rebuilder can't do that CONFIG.EXE can. Unfortunately it's a little tough since it requires interfacing with a machine language DLL through C#, but this definitely isn't impossible.

Use High Quality Models?

There is already the “ogel h” command for switching to high quality models, but having to enter it on every launch is a bit annoying. Adding it as a patch option would be a nice touch.

I considered trying to do it by sending keystrokes to the game, but I’m not sure that’s the best approach.

Background images rendered mostly white

Using:

  • latest version of rebuilder
  • lego island 1.1
  • dgVoodoo v2.79.3
  • D3DIMM.DLL from dgVoodoo

Background images are rendered, but seem to have issues where they'll only render alll white, or absolute black.
This happens on all graphics modes.

ISLE_7u82v3bqRP
ISLE_LzNmlOBowA

Linux support?

Hey so I was just wondering, does this work on Linux? I am aware that some workarounds are required for the original LEGO island exe to work on Linux, and was wondering if anyone here was trying to use this on Linux.

Failed to Create Process with Error 0x2e4

I deleted the file you said to delete originally, but I still can't get Rebuilder to start Lego Island with the fixes in question cause of the aforementioned error in the title. I tried doing the solution that involved deleting a folder in the Temp section of AppData/Local, but there wasn't any folder like that. I'm sorry to bother about this again, but I need help figuring this out, and I made sure to check the README this time.

Edit: I got it to run(compatibility mode was the issue), but the mouse is still missing. It also isn't 60FPS like before, for some reason.

LEGO Island not starting

Hi!
First of all thank you for this awesome tool.
I have a problem that I think might be related to the Alternate Installer, but the repo is read-only so I can't ask there. I'm asking you because you are the biggest experts and maybe you can help me anyway.
I installed LEGO Island fully on my hard drive, but when I try to launch it, be it via the Rebuilder or the normal EXE nothing happens. Actually, you can see the process in the Task Manager, but nothing else. I only noticed that, when I launch it, a .log file gets created named "DDrawCompat-ISLE.log". This is the content of the file

10:59:14.224 Process path: D:\Giochi\LEGO Island\ISLE.EXE
10:59:14.224 Environment variable __COMPAT_LAYER = "HighDpiAware"
10:59:14.224 Loading DDrawCompat statically from D:\Giochi\LEGO Island\DDRAW.dll

And this is the content of regedit
image

Thank you in advance!

Failed to patch files

I'm running version 1.1 of the game installed in Danish, dosen't seem to be related to this issue though.

I get an error saying "Failed to patch files" - looking into the exception it's an access denied trying to get the file "C:\Users\danat\AppData\Local\Temp\LEGOIslandRebuilder\D3DRM.DLL" however the temp path "C:\Users\danat\AppData\Local\Temp\LEGOIslandRebuilder" dosen't exist, as it can be seen from the screenshot.

let me know if you need more info regarding the issue, or know the value of variables at a given time, I haven't had the time to look more at the code and try to figure out why the folder isn't being created.

Anmærkning 2020-03-20 144717

Anmærkning 2020-03-20 145227

Anmærkning 2020-03-20 145136

Anmærkning 2020-03-20 145312

won't start

when i press the run button, nothing happens. i think it might be because i set lego island to be located in the wrong folder i can't change it, but i can't be sure.

The game doesn't start with the Rebuilder

I installed the game to the I:\ drive because the C:\ drive is almost filled up. And Rebuilder doesn't start the game from there. Maybe I can compile a version specifically for me?

Consider port to C++

Rebuilder was originally written in C# for simplicity and ease of deployment, however relying on .NET does have one major drawback: no Windows 95/NT support.

One of Rebuilder's goals is that it will work on old PCs just as well as new PCs, however that goal is somewhat crippled by relying on .NET and means Rebuilder will never run on the operating system that LEGO Island was actually intended to run on.

I am personally in favor of this in the interests of continuing to improve Rebuilder and don't even think it will take that long. I'm more comfortable with C++ anyway and using it will also help us take over more functionality from LEGO Island such as #16. I'm looking at MFC as a helper library to use instead of just the Win32 API.

Of course I'm opening to other opinions on this topic if anyone has any.

sky background

image
whenever loading the game the background goes over almost everything.

(WINE) LEGO Island Rebuilder just closes when trying to change an option

Unhandled exception: unimplemented function MFC42.DLL.6880 called in 32-bit code (0x7bc2f970).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:7bc2f970 ESP:0053f6c4 EBP:0053f728 EFLAGS:00000206( - -- I - -P- )
EAX:00001ae0 EBX:0053f6d0 ECX:0041431f EDX:00419082
ESI:007f0178 EDI:00000000
Stack dump:
0x0053f6c4: 00000000 006920dc 00000000 80000100
0x0053f6d4: 00000001 00000000 7bc2f970 00000002
0x0053f6e4: 00419082 00001ae0 6ed987ee 00010078
0x0053f6f4: 00000003 0053f760 00000000 007f0178
0x0053f704: 00410922 006921ac 007f01b8 0053f734
0x0053f714: 004107d9 00417860 007f0178 0053f734
Backtrace:
=>0 0x7bc2f970 A_SHAFinal+0xff60() in ntdll (0x0053f728)
1 0x001200c3 (0x0053f770)
2 0x5f401c4a 1109+0x3e9() in mfc42 (0x0053f7f0)
3 0x5f401959 1109+0xf8() in mfc42 (0x0053f814)
4 0x5f4018d3 1109+0x72() in mfc42 (0x0053f880)
5 0x5f40185d 1168+0x7da() in mfc42 (0x0053f89c)
6 0x5f401807 1168+0x784() in mfc42 (0x0053f8c8)
7 0x6eda008c AdjustWindowRect+0x3283c() in user32 (0x0053f8f8)
8 0x6eda0853 AdjustWindowRect+0x33003() in user32 (0x0053f958)
9 0x6eda2ed6 AdjustWindowRect+0x35686() in user32 (0x0053f9a8)
10 0x6ed5e47a AppendMenuA+0x5f5a() in user32 (0x0053fa18)
11 0x6ed63ea8 AppendMenuA+0xb988() in user32 (0x0053fa98)
12 0x6ed64159 AppendMenuA+0xbc39() in user32 (0x0053fad4)
13 0x0040a740 in rebuilder (+0xa740) (0x0053faf0)
14 0x00407962 in rebuilder (+0x7962) (0x0053fb4c)
15 0x5f41cf84 EntryPoint+0x279a() in mfc42 (0x0053fbd0)
16 0x5f401959 1109+0xf8() in mfc42 (0x0053fbf4)
17 0x5f4018d3 1109+0x72() in mfc42 (0x0053fc60)
18 0x5f40185d 1168+0x7da() in mfc42 (0x0053fc7c)
19 0x5f401807 1168+0x784() in mfc42 (0x0053fca8)
20 0x6eda008c AdjustWindowRect+0x3283c() in user32 (0x0053fcd8)
21 0x6eda0853 AdjustWindowRect+0x33003() in user32 (0x0053fd38)
22 0x6eda2ed6 AdjustWindowRect+0x35686() in user32 (0x0053fd88)
23 0x6ed67851 AppendMenuA+0xf331() in user32 (0x0053fe38)
24 0x5f401414 1168+0x391() in mfc42 (0x0041c068)
25 0x00000001 (0x004174d8)
26 0x0040e2d0 in rebuilder (+0xe2d0) (0x00415be8)
27 0x25ff0041 (0x642425ff)
0x7bc2f970 ntdll+0x2f970: subl $4,%esp
Modules:
Module Address Debug info Name (31 modules)
PE 00400000-00439000 Export rebuilder
PE 00a70000-013cf000 Deferred shell32
PE 10000000-100e2000 Deferred ddraw
PE 5f400000-5f4fd000 Export mfc42
PE 61740000-61783000 Deferred advapi32
PE 62fc0000-6304d000 Deferred rpcrt4
PE 63480000-6348c000 Deferred version
PE 63bc0000-63bda000 Deferred shcore
PE 64a40000-64a94000 Deferred shlwapi
PE 64ec0000-64fee000 Deferred oleaut32
PE 663c0000-66474000 Deferred winspool
PE 66b00000-66b3e000 Deferred win32u
PE 682c0000-682eb000 Deferred winevulkan
PE 68500000-6855b000 Deferred combase
PE 68700000-68730000 Deferred uxtheme
PE 68e00000-68e11000 Deferred aclui
PE 68fc0000-690a4000 Deferred msvcp60
PE 6a280000-6a2c6000 Deferred msvcrt
PE 6a400000-6a534000 Deferred ole32
PE 6bc00000-6bc2c000 Deferred sechost
PE 6bcc0000-6bd41000 Deferred setupapi
PE 6c9c0000-6ca46000 Deferred gdi32
PE 6cc40000-6cd9c000 Deferred comctl32
PE 6ed00000-6ef40000 Dwarf user32
PE 70b40000-70c18000 Deferred ucrtbase
PE 70d00000-70e08000 Deferred comdlg32
PE 71200000-7121c000 Deferred imm32
PE 7b000000-7b0ec000 Deferred kernelbase
PE 7b600000-7b81e000 Deferred kernel32
PE 7bc00000-7bcab000 Dwarf ntdll
PE 7e0f0000-7e0f4000 Deferred winex11
Threads:
process tid prio (all id:s are in hex)
00000020 start.exe
["C:\windows\system32\start.exe" /exec "/home/dennis/Spiele/LEGO/drive_c/Program Files/LEGO Island/Rebuilder.exe"]
00000024 0
00000038 services.exe
["C:\windows\system32\services.exe"]
0000003c 0
00000040 0
0000004c 0
00000050 0
00000064 0
00000070 0
00000084 0
00000090 0
000000a8 0
000000bc 0
000000e4 0
000000e8 0
00000044 svchost.exe
[C:\windows\system32\svchost.exe -k LocalServiceNetworkRestricted]
00000048 0
00000054 0
00000058 0
0000005c winedevice.exe
[C:\windows\system32\winedevice.exe]
00000060 0
00000068 0
0000006c 0
00000074 0
00000078 0
000000b8 0
0000007c winedevice.exe
[C:\windows\system32\winedevice.exe]
00000080 0
00000088 0
0000008c 0
00000094 0
00000098 0
0000009c 0
000000a0 plugplay.exe
[C:\windows\system32\plugplay.exe]
000000a4 0
000000ac 0
000000b0 0
000000b4 0
000000c8 explorer.exe
[C:\windows\system32\explorer.exe /desktop]
000000cc 0
000000d0 0
000000d4 0
000000dc rpcss.exe
[C:\windows\system32\rpcss.exe]
000000e0 0
000000ec 0
000000f0 0
000000f4 0
000000f8 0
000000fc 0
00000100 0
00000104 conhost.exe
["C:\windows\system32\conhost.exe" --unix --width 0 --height 0 --server 0x34]
00000108 0
0000010c (D) C:\Program Files\LEGO Island\Rebuilder.exe
["C:\Program Files\LEGO Island\Rebuilder.exe" ]
00000110 0 <==
00000118 0
0000014c 0
System information:
Wine build: wine-7.2-1-g2b48f296545 (Staging)
Platform: i386
Version: Windows Server 2003
Host system: Linux
Host version: 5.17.1-arch1-1
Monitored process exited.
Initial process has exited (return code: 256)
Exit with return code 256
2022-04-08 01:58:10,489: Game still running (state: running)
2022-04-08 01:58:10,489: Stopping LEGO Island (wine)

mfc42 is installed.

EDIT: The "Final .NET Release" version works just fine. The Lutris script propably downloaded the newest version (Continuous build) which doesn't work.

Rebuilder uses only primary video card.

Hello,
my Retro PC have 2 video cards.
A Matrox Mystique 220 and a 3Dfx Voodoo 2.
When I start Rebuilder it will detect 2 Direct3D HAL devices.
But no matter what I choose, it uses only the primary video device (Matrox Mystique 220).
Disabling Direct3D for the first one with dxdiag will occur, that D3D for booth cards is not available.
With the default configurator it's working fine.

I'm using Windows 98SE with the German 1.1.0.0 version.

Rebuilder
Konfiguration

Rebuilder not working on Hardware Mode

in hardware mode, it showed this error:
image

checking out Ramp emulation, i can conclude that "Flip Video Memory Page" made same error as above.
this is the setup that triggers it:
image
"Draw 3D to Video Memory" option or none of those 2 will run the game, albeit 3d texture glitches.
other software modes will run the game good.

also running the game without the help of voodoo2 (cause it'll be glitchy on some 3d models with it, both Hardware without the Rebuilder and Software Mode)

current configs for Rebuilder:
image

Windows 10 Version 1909
installed the game using LEGO Island Alternate Installer
not sure if it really affects anything, but i used japanese locale.

Lego island isn't booting when using rebuilder but works fine by itself

This might be a simple fix but ill explain how i have set it up
I have an iso mounted as my E drive that has all the game data on it
I have installed lego island via the installer that came on the disk
i have d3drm in my program files folder for lego island
i can boot lego island fine and even edit the config

BUT as soon as i try rebuilder i get the error
"Lego Island" failed to start please quit all other apps and try again

Fix hotspots on upscaled bitmaps

A patch has already been found for this, but it unfortunately affected the 3D too (which already scaled correctly). As soon as a path is found to separate a 3D click from a bitmap click, this patch should be ready to merge in.

Lego Island crashes in Hardware mode

Hi. So for the past 2 days i've tried getting Lego Island to work in Hardware mode. The game runs in RGB mode with and without rebuilder, but D3D Hal refuses to start with both Isle.exe and Rebuilder. I have DgVoodoo2 configured to the game, but when i try to start the game, the intro movies play like they should, but if i skip or watch the intro movies, i get a black screen, then it shows the Information Center for a split second, then it just crashes, with no error message. I don't know what is causing this, since a couple months ago, the game did work in Hardware mode with Dgvoodoo and Rebuilder. Can anyone help me? Thanks in advance.

And here are my Config.exe and Lego Island Rebuilder configurations.

Näyttökuva 2021-02-24 231009

Screenshot (14)

And BTW, i am using Dgvoodoo version 2.53, instead of 2.72 or basically the latest version, since i tried that first, and it didn't work, then i remembered that 2.53 worked, so i tried that, and it also failed.

bsod and textures bad (ik, common issue, but common solutions arent working)

Before all, this is not a Rebuilder issue, this is happening when running like normal as well, I just did not know where else to ask. So, a few months ago, I had Lego Island installed, but then I removed it recently. I reinstalled it the same way I did before with the alternitive installer, and ran it both with your Rebuilder, and normally. It shows in the task manager, but does not show on the screen. I have no way of knowing what I did wrong, and I would appreciate some help getting this to work.

Error when running using -r flag on Windows 98

When I try to use the -r flag, I get the error "Failed to launch LEGO Island: System.NullReferenceException: Object reference not set to an instance of an object at Rebuilder.Rebuilder.LaunchGame()". The game still runs and it does look like my patches are applied, but this error is annoying. Running it from the GUI instead of with the -r flag does not produce any error.

Fix DirectDraw call that sets bit depth

When running in windowed mode, LEGO Island does not set the system bit depth causing issues with displaying bitmaps. It's believed that this is a conflict between the system and the DirectDraw objects and could be fixed by bumping the DirectDraw bit depth up to the system's (this has the potential advantage of 24-bit color instead of 16-bit too).

Holding the Ctrl key speeds up the turning speed

While in-game, you can switch between fast and slow turning. Is this part of LEGOIslandRebuilder, a bug, or intended vanilla behaviour?

Also changing the turning speed with Ctrl isn't as fast as when it's unhooked.

Unable to run game under Windows 10 18362

The game seems to run fine without the Rebuilder under Windows 10 18362 and using the Windows XP D3DRM implementation, and even better if using D3D mode with dgVoodoo2, but attempting to start the game through Rebuilder with any variation of settings simply turns up this error from ISLE.EXE:

LEGO Island failed to start. Please quit all other applications and try again.

The game version is 1.1, coming from the archive.org release.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.