Standalone Terraria Unified (.NET 8+, 64-bit, cross-platform server-client distribution)

steviegt6

Official Terrarian
Hi hi hi, I'm back.

Terraria Unified
This is a simple project that ports the game to .NET 8 and merges the Windows, macOS, and Linux client and server codebases into one.
This modification maintains compatibility with vanilla servers, and tries its best to automatically detect existing Terraria installs in order to use the content folders of a preexisting installation.


Why?
Both for fun and as a stepping stone project for something else I'm cooking up later. Stay tuned...
Having a single, unified codebase is great for modding. This is pretty usable for anyone looking to create a standalone mod, and will be used in the future for my own experimental mod loader. Additionally, there comes with it some inherent performance improvements and lessened memory restrictions, but I won't get into that.


Installation & Usage
  • Install .NET 8.
  • Download the latest Terraria Unified binary.
  • Extract to a directory of your choosing and run the executable.
    • If the game fails to start due to a missing Content folder, leave a reply here; the game tries to automatically detect existing, official installations so it can use their assets, but it may fail.

No, I won't help you crack. Yes, you need a legitimate installation of the game to use this.

Check it out and star it on GitHub.

1698124670092.png
 
Last edited:
If we get problems on that version, will we get support here, e. g. if posting a bug report? That version is not pirated version since it requires that you have bought Terraria on Steam.
 
Nice work, as someone who's done a few standalone client/server mods in the past, this is pretty interesting. Will have to have a dig through the source code at some point. I assume to build this from source you use some sort of patching system like tML?

If we get problems on that version, will we get support here, e. g. if posting a bug report? That version is not pirated version since it requires that you have bought Terraria on Steam.
Modded clients/servers like these automatically invalidate bug reports.
 
If we get problems on that version, will we get support here, e. g. if posting a bug report? That version is not pirated version since it requires that you have bought Terraria on Steam.
I'll more likely than not help you with any issues you have running this. Like darthmorf said, however, using this invalidates any bug reports for the base game.

Nice work, as someone who's done a few standalone client/server mods in the past, this is pretty interesting. Will have to have a dig through the source code at some point. I assume to build this from source you use some sort of patching system like tML?


Modded clients/servers like these automatically invalidate bug reports.
Yes, I use a patching system quite similar to tML for simplicity's sake. I tried doing some weird stuff with Mono.Cecil and MonoMod, along with evil relinking, but that didn't work out.
 
I've updated links to reflect changes in repository structure and release locations. An update will come (most likely tomorrow) with some additional patches as well.
 
Just released 0.1.1 with a couple of bug fixes and a lot of changes to the tooling around the project. I've further split up patches into terraprisma/vanilla and terraprisma/unified, so it's easy to create standalone mods based on the patches to these versions. Happy modding! :)

I specifically fixed a crash that happened if only a GOG version is installed (it would check WeGame after Steam, causing a crash due to missing natives). I also made it so you can use renderers other than OpenGL (anything FNA supports), along with updating FNA.
 
Back
Top Bottom