There are two common mistakes made by those installing/updating TShock:
- Extracting TShock into the Terraria client directory
- Extracting TShock 5 or newer into a legacy (TShock 4 or older) install
By checking for the existence of a file named `TerrariaServer.exe`, we
can potentially detect these invalid installations, and prompt the user
with a more useful diagnostic, rather than (likely) crashing moments
later.
This commit introduces an integrated package manager into TShock
for the purpose of fetching and installing plugins and their dependencies
from NuGet repositories.
This makes getting new plugins easier for users, as well as simplifiying
more advanced deployment scenarios.
This will allow dependencies to be resolved beside the assembly as intended when startup scripts are used outside the working directory.
I am not sure why or how many people would do this, as TSAPI wont load plugins (existing issue), but this is a step in the direction of opening up to allow considerations for that.