Hey!
Since no one else took a shot, I tried to finish the years-ago abandoned MP project by Tanguy/Y07A. Keep in mind I can't code, so all the new code was written by ChatGPT. It still took me 1.5 years.
Unlike Tanguy's original version, in this version I actually modified the DFU base code pretty heavily. I tried to keep the SP part separate, working the same way as the default DFU as much as possible. I also heavily edited Tanguy's original files and added a few new ones.
- Migrated from DFU 0.14.5 to the May 2024 DFU 1.1.1 version (built with Unity 2019.4.41f2)
- Completely re-made, fully networked enemies (attacks, spells, health, animations, sound, targeting, enemy loot sync)
- Quest sync system automatically syncing quest progress for quests taken during MP. Quests taken in SP can be shared with "Share Quest" button in the journal, from that moment they will be synced too.
- Basic party system with optional fast travel to the other players (showing location, HP/MP/fatigue of other players)
- Players can use healing and other similar "friendly" spells on each other
- Revive/respawn system
- Random wandering NPC sync (optional if someone thinks it's too heavy on bandwidth)
- Added Mirror's basic direct connection alongside the Steam one as an option, could be handy for LAN
- Dungeon levers and switches should be in sync too
The way enemies are spawned and cleaned up is completely different from SP. Dungeons are also networked, and both dungeons and interiors are moved "underground", so I can't guarantee mod compatibility.
Save compatibility-wise, normal regular DFU saves should work in this co-op fork. Going backwards might be a bit trickier. Since interiors and dungeons are moved underground, the non-co-op version will have no idea what to do with those positions and will load you into the void. Exterior co-op saves should work fine with the non-co-op version.
You can save in MP dungeons, but if the dungeon no longer exists or never existed in the MP game, it will basically re-spawn the whole dungeon with enemies (but the player position will be correct).
I went through over 170 DF quests (including the main quests) over the past 3 months. Since the quest system grew alongside the tests, I had to go back to a few quests multiple times to "un-break" them.
I finally got to the point where I'm satisfied with both the enemy and quest systems. I fixed some bugs even in the past few days, and I'm sure there will be more, so it is not perfect. In case anyone finds a bug with anything related to quests, or enemy sync please report it with as much detail as possible.
I went into a lot more detail on the GitHub page in case anyone is interested.
You can download it from GitHub.
Connecting is pretty much the same as it was in Tanguy's, but I added an option for direct IP connection too in case someone wants to play it on LAN without steam.