Unity Underground
A downloadable engine port for Windows
Unity Underground is an engine recreation of the 1992 immersive sim RPG classic. It includes the Unity-based engine and new 3d models and sounds, but requires original game data to work. When you run the game, you can point it to the installation folder for the original GoG files, or have it search for them.
- all enemies fully modelled and animated
- all inventory and environment objects fully modelled
- unique audio and particle effects
- supports mouse and keyboard, or xbox controller or equivalent
- complete
I've been working on this since 2015, and wouldn't have been possible without previous hackers' generosity in sharing their results.
Changelist:
27 March 2026: fixed the data location persisting between runs.
28 March 2026: fixed european locale. fixed projectiles stacking.
28 March 2026 (b): fixed conversation at 800 pixels height for steam deck. added autorepeat to inventory movement.
14 April 2026: fixed goblin detecting player opening treasury; fixed bullfrog puzzle controls; fixed light source duration; fixed reveal spell potential crash; fixed night vision, drunk, and trip effects around save game; fixed barter items not having names; halve Tyball health when orb destroyed.
17 April 2026: fix rune bag Y icon to show Dr Owl; added Y to plant silver seed; increased weapon hit pause and added rumble; gave victory music priority over map music; centered conversation on the screen; added blood stains when critters die; fixed missing voice line in intro; hid weapon when it is supposed to be out of view; removed bullfrog "Reset Activated" voice over; fixed A button icon remaining after looking at grave; fixed silver/gold switch puzzle.
18 April 2026: fixed invisible enemy spawning; fixed bloodstains being spawned in the air or on water or lava.
19 April 2026: summoned monsters wander until they have a target; fixed wand of Acid and wand of Electrical Bolt; reduced volume of lava and water walk footsteps; fixed map color for puddles in Dorna's room; clamped throw speed and added a charge ring on the icon; fixed position of trade items after centering conversation.
25 April 2026: fixed damage traps (eg path to Ironwit's key, Tyball's maze); fixed equipped weapon being deleted when thrown; fixed quote marks in dream subtitles; fixed graves sometimes being rotated; fixed loose tile for wine (and some other scripting); fixed duplicate silver seed; allow repairs to serviceable items; silver sapling revive removes spells; no rock fall when rescuing princess; fixed particles on Tyball's orb; fixed Tyball and gazer floating when running and dying; fixed critter respawn if dying when changing level; shrine reports bad mantra before saying you can't advance; fixed duplicate key of truth.
27 April 2026: fixed edge of lava pit not destroying talismans; cast tremor when a talisman is burned; reduced volume of the cup dream sting; prevent magic, inventory, save, sapling rebirth on level 9; made moongates a little taller; increased duration of daylight to 5 minutes; added Basara Dragon to credits; fixes for some achievements progress not saving.
2 May 2026: player projectiles can damage doors; fountain restores some mana and cures poison; player projectiles' damage is skill-based; fixed sling swoosh sound timing; fixed shak loot not having names; prevent bloodstains corrupting scripting; fix camera height when flying from swimming; fixed some writing snap to wall; fixed random goblins having cloaks; freeze time removes critter defence; curse Tyball when orb destroyed; multiskill mantras choose more intelligently when skills maxed out; allow rock hammer to break small boulders; save castSpells for achievement; give skills when reading a few books; fixed rare seed sleeping bug; don't randomly rotate runestone after load; fix too big bloodstain collision; prevent critters stepping up on arrows etc; dominus identifies items properly; improved the 't' in the font.
4 May 2026: fixed an egregious load game bug.
4 June 2026: keyboard and mouse support. also changed gamepad to have modal magic and inventory dialogs. movement with WASD; space to jump; press Q for magic panel, E for inventory panel, and R for stats panel; tab for the map; Esc for save/load/options. Left click to look. Left drag or hold to pick items up or interact with things (eg doors). Right hold to charge up a weapon strike.
7 June 2026: added mouse look multiplier; fixed effects volume multiplier; fixed auto key use and auto jump options (couldn't turn them off); added a brief controls tutorial.
| Updated | 3 days ago |
| Status | Released |
| Category | Game mod |
| Platforms | Windows |
| Rating | Rated 5.0 out of 5 stars (16 total ratings) |
| Author | Kweepa |
| Genre | Role Playing |
| Tags | Dungeon Crawler, Fangame, First-Person, Immersive, Remake, Retro, Singleplayer, underworld, Unity |
| AI Disclosure | AI Assisted, Code |
Download
Install instructions
You will need a copy of the original game, for example from GOG.
Unzip, then run the executable. It will ask you for the path to the GOG files, or find them automatically.
Development log
- Unity Underground devlog #14 - kb/mouse support added6 days ago
- Unity Underground devlog #13 - kb/m10 days ago
- Unity Underground devlog #12 - first pass kb/m done30 days ago
- Unity Underground devlog #11 - mage run fixes38 days ago
- Unity Underground devlog #10 - achievement fixes44 days ago
- Unity Underground devlog #9 - a plethora of bug fixes45 days ago
- Unity Underground devlog #8 - daily(?!) bug patch52 days ago
- Unity Underground devlog #7 - invisible critters53 days ago
Comments
Log in with itch.io to leave a comment.
i would pay money for UW2 port...20 Dollar no less.
just saying :)
As I said below: It would be possible, yes, but it's unlikely to happen, since it would need new models and animations, plus about nine months of dev work. I scratched my itch, now I'm working on something original.
Oh one thing that bothers me, as playing a mage: I do have now to click now every time on the runed spell and target the enemy again?
That worked else before, you could like spam magic missile.
Yes, that's a change between the gamepad and the mouse controls that is a little more like the original game when playing with the mouse. I don't think it's too onerous, and it puts the "randomness" on the cast click rather than on the targeting click.
Omg this keyboard/mouse control is so amazing. Does it switch to controller when one is connected or how can you use one now?
And, would it be possible to make the mouse view speed adjustable?
Yes, it switches back and forth automatically when you press gamepad buttons or click mouse buttons. I should add a mouse turn speed.
Just so I capture your case, what way do you need the mouse turn speed to go? Faster or slower? Approximately how much?
For now I added a 0.8 - 2.2 multiplier slider.
Faster. I set the slider now about half way, its much more responsive now, thanks.
Jesus, till I figured out that you must long-click on doors now :D
You can also click and drag.
Thank you for this! Amazing!
It doesn't accept any input on the title screen, I can't click introduction, new game, nothing. Music plays and cursor moves. any suggestions?
Anything unusual about your setup? What version are you running? (It’s in small print on the title screen.) Full screen or windowed?
Using K&M, how do you pick things up. There is no instructions for anything. I thought there might be in Options, but that is very small with no help for fighting, or casting. I can't even use full screen. How do I change any settings? Thanks.
Left click hold, drag to drop or drop on inventory location. Full screen use windows full screen button (top right).
Left mouse drag or just left mouse hold.
Right mouse hold charges a weapon strike.
Full screen with Alt-Enter.
Thanks for the help, it worked.
Completed the game from start to finish, no real issues or bugs to report. Nice port, gamer.
Good to hear. Thanks.
Cursory look (so excited had to download immediately and check it out). Genius work! Better than the original M&K implementation. Will start the game in earnest. Thank you.
Made an itch.io account just to say, thank you so much for making this! I've been wanting to play Ultima Underworld a long time, but found it really hard to get into the old control scheme and UI. Playing this version, however, is buttery smooth. Looking forward to kb/m support, but it works incredibly well with a controller too. Happy to finally experience this classic.
Great news, I'll await an update then in a few days time. Thanks for all your hard work and hope you're feeling much better now.
is there a options settings or a manual?
There are options if you press start. Not much though, just volume, camera invert, and a couple of tweaks.
For the manual, there should be a general gameplay manual with the original game, and the gamepad controls are on the home page here.
thanks
Thank you so much for your hard work!
My pleasure!
are you planning support to Ultima Underworld II: Labyrinth of Worlds too in near future?
game engine mostly same, but improved version.
No, I have no plans for that. It would require about nine months of work, and a lot of new models, animations, sounds, and particles.
Really impressive. I had no idea about this until today, and when I first saw it I assumed it was hankmorgan's Unity-based Underworld Explorer project that went dark a couple of years ago.
I'll wait for KBM support, but are there any plans to add the orchestral soundtrack from the Japan-only PlayStation version?
No plans at all. I don't personally like the Playstation version, and there's no legal way to extract the music from it to play it.
(I did have remastered music at one point, but stripped it out for legal reasons.)
Are you saying no legal way for you to supply it? If so I get that.
To do it where we would supply the music by ripping from the psx disc I'm thinking that sounds more complex to code than say just ripping the redbook audio from a Quake disc to use with a sourceport.
Appreciate adding mouse/keyb support seeing as you don't use it yourself. I tried playing with my xbox360 pad but couldn't get on with it.
The hankmorgan project isn't dead, it was ported to godot at one point, and there's been lots of activity lately :)
I'm not allowed to post a link, but it can by found by searching for underworldgodot.
This looks amazing, but I have to wait for K&M support. Will this have mouselook? One of my big gripes with the originals were the strange control schemes. I still miss the Ultima series and we haven't even gotten one in over a quarter of a century, longer than that for a truly great entry.
Yes, it's mouselook rather than trying to emulate the original.
After 2 weeks of silence, do you have any update on the K&M implementation? Hoping it's soon. Thanks.
I got the flu and am still recovering, but working on it. I think it's all good, but every time I play I find some corner case that needs fixing. Two weeks was the game dev joke... it'll be ready when it's ready, but soon.
Thanks, I know from experience how miserable the flu can make you feel, so here's to a speedy recovery. I'll continue my patient wait. :)
Excellent work, I have thoroughly enjoyed replaying this classic. Your attention to detail in making this engine is really something to applaud. I don't remember the first time I played this game, but I do remember how it felt, and your engine delivers exactly the same feeling if not more. I did notice a couple of issues, one in particular that made the game hard to finish. When trying to throw the sword of justice, or any other weapon, they seem to vanish into thin air. I was able to figure out that it might have something to do with not having a weapon in hand as when I swapped weapons, I could finally throw it. Also, I'm not sure if I missed it, but is there only the single swing with a weapon? The original had three, it didn't stop me from beating the game, but it seemed to have made some enemies very hard to hit, the fire elementals I was not able to hit with a sword at all. I did also notice that the maze on level 7 does not drain health or anything, I got stuck in there and walked out as if nothing ever happened making it possible to kill Tyball as soon as you get to the maze.
Once more congratulations on this great accomplishment, and from all the Ultima fans out there, a big Thank you.
It is hard to find a game like this nowadays, and keeping these classics alive is no easy task as they get swept away in waves of garbage they make now.
I hope Richard Garriot took notice of your work.
Cheers
xp
Thanks for the kind words.
Richard Garriott didn't notice, I don't think, but Warren Spector mentioned it on LinkedIn.
This is amazing. Thank you from the bottom of my heart @Kweepa for creating this wonderful piece of preserved and modernised gaming-history!
I'm currently playing it on Linux with wine and like to share the steps on how to run it for others who might be on the lookout for a guide on that:
===================================================
1. Unzip the Game
2. Create your own Wine-Prefix
3. Running the Game
4. Optional: Create Desktop Shortcut
Right click on your Desktop Shortcut -> Allow Start
Is it possible that in level 5 is missing some geometric data? For example when I go down the stairs at the bullfrog puzzle from level 4, the stairs are not on level 5 anymore and I can clip through. Also a bit further in from that stairs, there are parts without floor and I can just fall down out of the level
That is a new one. Could you send me a save game from around that area?
steve mccrea at gmail dot com
The saves are in %APPDATA%\..\LocalLow\Kweepa\UnityUnderground\Saves. I just need the header and the gz, not the png. You can identify the save by the thumbnail png, or the order in the list (starting at 0).
Also the Player.log from the save's parent folder, and where did you get the original game data files? A gog install, or an original disk install?
I have sent you the files.
I am using the gog version, but because I have tried a different Unity Underworld project, I have extracted the game.gog file. So maybe this is the cause of the issue.
Thank you for caring :)
It looks like there was an error saving or loading at one point and all the objects on level 5 are missing. Unfortunately I don't have any more info than that, and the save file is broken beyond repair.
Good to know. Time for a start over I guess :). Yes I have not journaled some conversations anyway. So I guess it is a good time for a restart anyway. I also will replace the Frankenstein Ultima Underworld Installation and put the gog installation there as intended
I love it. I wanted to play Ultima Underworld and now here it is, such a nice Remastered version of it, and it runs on SteamDeck like a breeze. So good and controller support. Easily wow. Thank you for making this gem so easily available and such a joy to play :)
Is it safe to update the game with existing savegames? Thanks for caring!
Yep, the savegames are compatible. I would actually recommend it because the newer versions will fix some bugs in the saved games.
would or not recommend it?
Yes, I would recommend updating.
thank you :)
This is an amazing recreation! Thank you for creating this!
I THANK YOU for creating this!! You are the greatest (Ultima Underworld modernizer) Especially like that i can use my Dualsense.
Now that you laid so much groundwork, do you think doing UW2 will be faster? PLEASE consider it.
See the reply to Pixellenium below.
I wasn't aware of this project at all, thank you for putting so much effort into this! Just out of curiosity as a fellow game dev; are you planning to release the Unity project (rather like Daggerfall Unity) for people to be able to mod the game?
I wasn't going to release the whole project as it includes some assets I bought from the asset store (audio and particles) that I don't have the rights to give away and some 3d assets that are unique to this project that I'd rather not give away the sources to. I'm probably going to release the source code once I finish the mouse/keyboard support and any lingering bugs.
Sorry, but I have to ask... are all 3D models AI generated? They seem weirdly out of place.
No, they are all hand-crafted, working with the sprite sheets as reference. The artists are Spherical Horse (for the items) and Lil Pupinduy (for the critters). I know they didn't use AI because there were multiple rounds of revisions and I was able to direct the art down to minute details. Plus, these models are way more clean, tidy, and efficient than anything AI can produce. I did have some AI generated UI textures and audio during development but it was all stripped out or replaced before I released the game.
Thank you for the information! Can I ask then if you plan on adding a similar amount of detail to the environment in general to make things a bit more consistent?
No plans for that. It is what it is. I'm happy with the look.
Thanks for the continued updates, love this project. Would it be possible to make a version with NPCs, that are kind of more "low res" to match the overall look better?
I'm not going to make any changes in that regard, no.
Thanks for all your efforts on fixing bugs and QOL additions
So amazing, well done! Works great in Linux so far (via Wine). My 8BitDo controller works great as well.
Wow! This is incredible! You've done a phenomenal job. Long time Ultima fan since the 80s. Will definitely wait for mouse and keyboard though. Thank you for taking your time to do this. Really looking forward to it!
Any update on when M&K will be available? I don't own, or ever use controllers and I would love to play this as I have all the Ultima games.
I'm about half way through the implementation, but going slow as I'm working on bugs and my other game at the same time, and it's triggering my RSI, so I have to take it easy.
Also noticed when Dr Owl asks for your Rune Bag to give the Flam Rune, you dont get the Trade (Y) prompt on your Rune Bag, but it does still work when you press the Y button
I missed that when testing. Will investigate. Thanks for the reports.
Ohhh, it's because it's a container and you can't normally barter containers. Easy fix.
[edit] Fixed.
If i'm wearing something with a magic effect like the helm of resist blows, i get the little brown shield icon bottom left, but if i load a game it dupicates the icon on every load, currently have 5 shields, resets on alt-f4
That's an easy one to fix :)
[edit] Fixed.
I am sometimes encountering invisible enemies, they have an name tag and register being hut/killed but have no graphic, happened with Headless and Dread Spiders (and 1 other type I cant remember) so far. Happened in March28b and 14April releases
Is this always on a specific level?
No, had it on like Level 3 and 6
Just FYI, April14th Release fixed Bullfrog buttons for me but Silver/Gold Door is still broken
Hmm, they are large but maybe you could email me a save game? steve mccrea at gmail dot com
The saves are in %APPDATA%\..\LocalLow\Kweepa\UnityUnderground\Saves. I just need the header and the gz, not the png.
Done
i was able to end the game, the only "real" bug/problem i found is the "frog puzzle" that does not work but can be avoided flying/levitating.
Awesome! What was your time? How many achievements did you get? Did you tweet @ Richard Garriott?
11 days, and i'm thinking to tweet to Richard :-)
Not all achievements but the game was super funny, a great work, maybe one day also UW2 will be upgraded, who knows?
I found a bug while bartering. Sometimes the things offered by NPCs don't actually have any kind of name associated with them, for instance worn chain boots simply appearing as "Worn" even when examined.
Also, how does Repair work? I tried using the anvil and it just says I can't pick that up. I'm dying imaging my PC just going red in the face trying to pick up the anvil while Shak just stares in disbelief.
I have a fix for the bartering bug.
For repair, you use the item on the anvil. Hold down the right shoulder and select the item in your inventory. When you look at the anvil, the X button should change to "Repair".
Hmm, I think that the download function broke somehow, as nothing happens after I press the button. All the other games on the site are loading properly
I just checked it and it downloaded a 426Mb file, so it may have been a temporary glitch.io.
Yup, just tried and it downloaded without issues. Thanks a ton for the support and, most importantly, for the game!!!!
This is amazing could you use this engine to do the same for Underground 2?
It would be possible, yes, but it's unlikely to happen, since it would need new models and animations, plus about nine months of dev work. I scratched my itch, now I'm working on something original.
I understand! This is an awesome experience. I have never played the original and I appreciate your work on making this more enjoyable in 3d! Looking forward to your original game!
Found a bug with Night Sight scroll (and possibly spell, not tried it) in March28 release - if you cast the spell, then load a game prior to the spell being used, the spell will not be active but the greyscale overlay will still be present.
I’ll get this fixed, thanks