Read Me
Welcome to the LEGO Island web port project! This is a recreation of the classic 1997 PC game, rebuilt to run in modern web browsers using Emscripten and WebAssembly.
This incredible project stands on the shoulders of giants. It was made possible by the original decompilation project, which achieved 100% decompilation of the original game. This was then adapted into a portable version that eliminated all Windows dependencies and replaced them with modern, cross-platform alternatives.
The technical work involved replacing Windows-specific systems with SDL for window management and input, migrating audio from DirectSound to the miniaudio library, converting Windows Registry configuration to INI files, and creating a modular graphics layer supporting multiple rendering backends including WebGL. This represents years of effort from many awesome contributors dedicated to preserving this piece of gaming history.
Thanks to this work, LEGO Island now runs on over 10 platforms including Windows, Linux, macOS, iOS, Android, Nintendo Switch, PlayStation Vita, and of course, web browsers. The web version uses the original, unmodified Interleaf streaming code, enabling progressive content loading just like the original CD-ROM.
Our goal is to make this classic accessible to everyone. The project is still in development, so you may encounter bugs. Your patience and feedback are greatly appreciated!
Is this the full, original game?
This is a complete port of the original 1997 PC game. You can select from multiple languages, including both the 1.0 and 1.1 versions of English, from the "Configure" menu before starting.
How does this differ from the original 1997 CD-ROM game?
The core gameplay is identical, but this version has some great advantages! It runs in your browser with no installation needed and works on modern devices. It also includes enhancements like widescreen support, improved controls, many bug fixes from the decompilation project, and the ability to run at your display's maximum resolution (even 4K!).
Check out the "Configure" page to see what's possible.
Can I save my progress?
Yes! The game automatically saves your progress. To ensure your game is saved, return to the Infocenter and use the exit door. This will bring you back to the main menu and lock in your save state. A "best effort" save is also attempted if you close the tab directly, but this method isn't always guaranteed.
Does this run on mobile?
Yes! The game is designed to work on a wide range of devices, including desktops, laptops, tablets, and phones. It has even been seen running on Tesla in-car browsers! 🚗
Which browsers are supported?
This port runs best on recent versions of modern browsers, including Chrome, Firefox, and Safari. For an optimal experience on iOS devices, please ensure you are running iOS 18 or newer.
What are the controls?
You can play using a keyboard and mouse, a gamepad, or a touch screen. Gamepad support can vary depending on your browser. On mobile, you can select your preferred touch control scheme in the "Configure" menu.
Can I play offline?
You bet! In the "Configure" menu, scroll to the "Offline Play" section. You'll find an option there to install all necessary game files (about 550MB) for offline access.
I don't hear any sound or music. How do I fix it?
Most modern browsers block audio until you interact with the page. Click the mute icon (🔇) on the animated intro to enable sound.
I think I found a bug! Where do I report it?
As an active development project, some bugs are expected. If you find one, we'd be grateful if you'd report it on the isle-portable GitHub Issues page. Please include details about your browser, device, and what you were doing when the bug occurred.
Is this project open-source?
Yes, absolutely! This web port is built upon the incredible open-source LEGO Island (portable) project, and the code for this website is also available here.
January 2026
- New: Debug menu for developers and power users. Tap the LEGO Island logo 5 times to unlock OGEL mode and access debug features like teleporting to locations, switching acts, and playing animations
December 2025
- New: "Active in Background" option keeps the game running when the tab loses focus
- New: WASD navigation controls as an alternative to arrow keys
- Fixed: Act 3 helicopter ammo now correctly sticks to targets and finishes animations
- Fixed: Pick/click distance calculation for more accurate object selection
- Fixed: Maximum deltaTime capping prevents physics glitches in races
- Fixed: Touch controls now properly support widescreen aspect ratios
- Improved: Default anisotropic filtering increased to 16x for sharper textures
November 2025
- Fixed: Dictionary loading failure no longer causes crashes
- Fixed: INI configuration now properly applies defaults when values are missing
September 2025
- New: Additional widescreen background images
- Fixed: Jukebox state now correctly restored when using HD Music extension
- Fixed: Background audio no longer gets stuck when starting audio fails
- Improved: SI Loader actions now start at the correct time during world loading
August 2025
- New: Extended Bad Ending FMV extension shows the uncut beta animation
- New: HD Music extension with high-quality audio
- New: Widescreen backgrounds extension eliminates 3D edges on wide displays
- New: SI Loader extension system for community content and modifications
- New: OpenGL ES 2.0/3.0 renderer for broader device compatibility
- Fixed: Purple edges no longer appear on scaled transparent 2D elements
- Fixed: Transparent pixels now render correctly with alpha channel support
July 2025
- New: HD Textures extension with enhanced visuals
- New: MSAA anti-aliasing support for smoother edges
- New: Anisotropic filtering for sharper textures at angles
- New: Haptic feedback (vibration) support for gamepads and mobile devices
- New: Virtual Gamepad touch control scheme with sliding controls
- New: Gamepad/controller support with analog sticks and D-pad
- New: Full screen mode with in-game toggle
- New: Maximum LOD and Maximum Actors configuration options
- New: Configurable transition animations (Mosaic, Dissolve, Wipe, etc.)
- New: Extensions system allowing community-created content
- Fixed: WebGL driver compatibility issues resolved
- Fixed: Firefox Private browsing mode now works correctly
- Fixed: Virtual cursor transparency and positioning
- Fixed: Touch coordinate translation for proper viewport mapping
- Fixed: Memory leaks in ViewLODList
- Fixed: Screen transitions on software renderer and 32-bit displays
- Fixed: Tabbing in and out of fullscreen
- Fixed: Click spam prevention on touch screens
- Improved: Mosaic transition animation is faster and cleaner
- Improved: Loading UX for HD Textures with progress indicators
June 2025 — Initial Release
- New: Emscripten web port — play LEGO Island directly in your browser!
- New: WebGL rendering for hardware-accelerated 3D graphics
- New: Software renderer fallback for devices without WebGL
- New: 32-bit color support for improved visual quality
- New: Full screen support
- New: Joystick/gamepad enabled by default
- New: Option to skip the startup delay
- New: Support for LEGO Island 1.0 version
- New: FPS display option
- New: Game runs without requiring an audio device
- Fixed: Infocenter to Act 2/Act 3 transition issues
- Fixed: Race initialization errors
- Fixed: Jetski race startup issues
- Fixed: Plant creation bug in LegoPlantManager
- Fixed: Late-game "sawtooth" audio glitches
- Fixed: Building variant switching (Pepper's buildings)
- Fixed: OpenGL rendering issues
- Fixed: Image serialization bugs
- Improved: Transparent objects now render correctly (sorted last)
- Improved: GPU mesh uploading via VBOs for better performance
- Improved: Backface culling enabled for faster rendering
- Improved: SIMD-optimized z-buffer clearing
- Improved: Edge-walking triangle rasterization