ServUO Version
Publish 57
Ultima Expansion
Endless Journey
I know about UO Architect but I've never been able to get it to work on Servuo 57.

Two questions then. Are there up to date directions on making it work? Is there another way to put custom buildings in servuo? The house building tool goes so far, but the end result is clearly not like existing buildings.
 
UOArchitect comes with a readme.txt but it doesn't cover the VS instructions to add the files as refrerences:
readme.txt said:
Installing

1. Put the OrbRemoteServer folder into your Custom Script folder.
2. Put the OrbServerSDK.dll & UOArchitectInterface.dll libraries into your core directory.
3. Put System.Runtime.Remoting.dll or your own local copy into your core directory.
4. Open Data\Assemblies.cfg and add the new dlls.
5. Configure your router to handle port forwarding for 2595 if needed.

For Visual Studio compatibility:
1. Open ServUO.sln in Visual Studio
2. In the Solution Explorer panel, right-click on the Scripts project and click Add -> Assembly Reference
3. In the dialog, click browse and find OrbServerSDK.dll, make sure it is checked in the preview list and click OK
4. Repeat the above steps for UOArchitectInterface.dll and System.Runtime.Remoting.dll

UOArchitects' live networking is non-functional in .NET Core 5 and DotNET 7 or later, for anyone attempting to install after upgrading.
 
Scripts: Compiling C# scripts...Failed with: 9 errors, 2 warnings
Warnings:
+ Custom/Admin Tools/AdminToken.cs:
CS0108: Line 200: 'AdminToken.InternalTimer.Delay' hides inherited member 'Timer.Delay'. Use the new keyword if hiding was intended.
+ Custom/Admin Tools/SOSGump.cs:
CS0108: Line 27: 'SOSGump.User' hides inherited member 'BaseGump.User'. Use the new keyword if hiding was intended.
Errors:
+ Custom/OrbRemoteServer/UOArchitect/BaseOrbToolRequest.cs:
CS0246: Line 4: The type or namespace name 'OrbServerSDK' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 9: The type or namespace name 'OrbRequest' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 31: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
+ Custom/OrbRemoteServer/UOArchitect/BuildDesignRequest.cs:
CS0246: Line 3: The type or namespace name 'OrbServerSDK' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 5: The type or namespace name 'UOArchitectInterface' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 13: The type or namespace name 'DesignItemCol' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 23: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 23: The type or namespace name 'OrbRequestArgs' could not be found (are you missing a using directive or an assembly reference?)
CS0115: Line 23: 'BuildDesignRequest.OnRequest(OrbClientInfo, OrbRequestArgs)': no suitable method found to override
CS0246: Line 11: The type or namespace name 'DesignItemCol' could not be found (are you missing a using directive or an assembly reference?)
+ Custom/OrbRemoteServer/UOArchitect/BuildDesignTarget.cs:
CS0246: Line 5: The type or namespace name 'UOArchitectInterface' could not be found (are you missing a using directive or an assembly reference?)
+ Custom/OrbRemoteServer/UOArchitect/DeleteItemsCommand.cs:
CS0246: Line 2: The type or namespace name 'OrbServerSDK' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 3: The type or namespace name 'UOArchitectInterface' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 8: The type or namespace name 'OrbCommand' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 15: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 15: The type or namespace name 'OrbCommandArgs' could not be found (are you missing a using directive or an assembly reference?)
CS0115: Line 15: 'DeleteItems.OnCommand(OrbClientInfo, OrbCommandArgs)': no suitable method found to override
+ Custom/OrbRemoteServer/UOArchitect/ExtractItemsRequest.cs:
CS0246: Line 3: The type or namespace name 'UOArchitectInterface' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 10: The type or namespace name 'OrbServerSDK' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 29: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 29: The type or namespace name 'OrbRequestArgs' could not be found (are you missing a using directive or an assembly reference?)
CS0115: Line 29: 'ExtractItemsRequest.OnRequest(OrbClientInfo, OrbRequestArgs)': no suitable method found to override
CS0246: Line 18: The type or namespace name 'Rect2DCol' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 20: The type or namespace name 'DesignItemCol' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 21: The type or namespace name 'ExtractRequestArgs' could not be found (are you missing a using directive or an assembly reference?)
+ Custom/OrbRemoteServer/UOArchitect/GetLocationRequest.cs:
CS0246: Line 2: The type or namespace name 'OrbServerSDK' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 3: The type or namespace name 'UOArchitectInterface' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 15: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 15: The type or namespace name 'OrbRequestArgs' could not be found (are you missing a using directive or an assembly reference?)
CS0115: Line 15: 'GetLocationRequest.OnRequest(OrbClientInfo, OrbRequestArgs)': no suitable method found to override
+ Custom/OrbRemoteServer/UOArchitect/MoveItemsCommand.cs:
CS0246: Line 2: The type or namespace name 'OrbServerSDK' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 3: The type or namespace name 'UOArchitectInterface' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 8: The type or namespace name 'OrbCommand' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 15: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 15: The type or namespace name 'OrbCommandArgs' could not be found (are you missing a using directive or an assembly reference?)
CS0115: Line 15: 'MoveItemsCommand.OnCommand(OrbClientInfo, OrbCommandArgs)': no suitable method found to override
+ Custom/OrbRemoteServer/UOArchitect/SelectItemsRequest.cs:
CS0246: Line 2: The type or namespace name 'OrbServerSDK' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 4: The type or namespace name 'UOArchitectInterface' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 24: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 24: The type or namespace name 'OrbRequestArgs' could not be found (are you missing a using directive or an assembly reference?)
CS0115: Line 24: 'SelectItemsRequest.OnRequest(OrbClientInfo, OrbRequestArgs)': no suitable method found to override
CS0246: Line 17: The type or namespace name 'SelectItemsRequestArgs' could not be found (are you missing a using directive or an assembly reference?)
+ Custom/OrbRemoteServer/OrbServer.cs:
CS0246: Line 3: The type or namespace name 'OrbServerSDK' could not be found (are you missing a using directive or an assembly reference?)
CS0234: Line 6: The type or namespace name 'Tcp' does not exist in the namespace 'System.Runtime.Remoting.Channels' (are you missing an assembly reference?)
CS0246: Line 44: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 44: The type or namespace name 'OrbCommandArgs' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 66: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 71: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 71: The type or namespace name 'OrbRequestArgs' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 71: The type or namespace name 'OrbResponse' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 103: The type or namespace name 'OrbRequest' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 126: The type or namespace name 'OrbCommand' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 219: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 219: The type or namespace name 'LoginCodes' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 350: The type or namespace name 'OrbRequest' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 350: The type or namespace name 'OrbRequestArgs' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 347: The type or namespace name 'OrbRequest' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 348: The type or namespace name 'OrbRequestArgs' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 372: The type or namespace name 'OrbCommand' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 372: The type or namespace name 'OrbCommandArgs' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 369: The type or namespace name 'OrbCommand' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 370: The type or namespace name 'OrbCommandArgs' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 389: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
CS0246: Line 394: The type or namespace name 'OrbClientInfo' could not be found (are you missing a using directive or an assembly reference?)
Scripts: One or more scripts failed to compile or no script files were found.
- Press return to exit, or R to try again.
 
You must have missed step 4 of the readme.txt

Data/Assemblies.cfg is essential for ScriptCompiler to know what files to reference.
 
UOArchitect comes with a readme.txt but it doesn't cover the VS instructions to add the files as refrerences:


For Visual Studio compatibility:


UOArchitects' live networking is non-functional in .NET Core 5 and DotNET 7 or later, for anyone attempting to install after upgrading.
Can you see where I made a mistake?


1719047992292.png

1719047924389.png

1719048053210.png

Scripts: Compiling C# scripts...Failed with: 1 errors, 6 warnings
Warnings:
+ Custom/Admin Tools/AdminToken.cs:
CS0108: Line 200: 'AdminToken.InternalTimer.Delay' hides inherited member 'Timer.Delay'. Use the new keyword if hiding was intended.
+ Custom/Admin Tools/SOSGump.cs:
CS0108: Line 27: 'SOSGump.User' hides inherited member 'BaseGump.User'. Use the new keyword if hiding was intended.
+ Custom/NPC Faction Groups/Orcish Fighters/OrcNpc.cs:
CS0219: Line 29: The variable 'bHue' is assigned but its value is never used
CS0219: Line 30: The variable 'wHue' is assigned but its value is never used
+ Custom/NPC Faction Groups/Orcish Fighters/OrcNpcFighters.cs:
CS0219: Line 158: The variable 'bHue' is assigned but its value is never used
CS0219: Line 159: The variable 'wHue' is assigned but its value is never used
CS0219: Line 18: The variable 'bHue' is assigned but its value is never used
CS0219: Line 19: The variable 'wHue' is assigned but its value is never used
CS0219: Line 379: The variable 'bHue' is assigned but its value is never used
CS0219: Line 266: The variable 'bHue' is assigned but its value is never used
CS0219: Line 267: The variable 'wHue' is assigned but its value is never used
CS0219: Line 380: The variable 'wHue' is assigned but its value is never used
CS0219: Line 490: The variable 'bHue' is assigned but its value is never used
CS0219: Line 491: The variable 'wHue' is assigned but its value is never used
CS0219: Line 600: The variable 'bHue' is assigned but its value is never used
CS0219: Line 601: The variable 'wHue' is assigned but its value is never used
CS0219: Line 714: The variable 'bHue' is assigned but its value is never used
CS0219: Line 715: The variable 'wHue' is assigned but its value is never used
CS0219: Line 837: The variable 'bHue' is assigned but its value is never used
CS0219: Line 838: The variable 'wHue' is assigned but its value is never used
CS0219: Line 948: The variable 'bHue' is assigned but its value is never used
CS0219: Line 949: The variable 'wHue' is assigned but its value is never used
CS0219: Line 1061: The variable 'bHue' is assigned but its value is never used
CS0219: Line 1062: The variable 'wHue' is assigned but its value is never used
+ Custom/NPC Faction Groups/Undead Fighters/DeadNpc.cs:
CS0219: Line 42: The variable 'bHue' is assigned but its value is never used
CS0219: Line 43: The variable 'wHue' is assigned but its value is never used
+ Custom/MoongateLibrary.cs:
CS0649: Line 1053: Field 'MoongateLibraryConfirmGump.m_passphrase' is never assigned to, and will always have its default value null
Errors:
+ Custom/OrbRemoteServer/UOArchitect/MobileSaver.cs:
CS0246: Line 110: The type or namespace name 'FortuneTeller' could not be found (are you missing a using directive or an assembly reference?)
CS1061: Line 345: 'Spawner' does not contain a definition for 'SpawnNames' and no accessible extension method 'SpawnNames' accepting a first argument of type 'Spawner' could be found (are you missing a using directive or an assembly reference?)
Scripts: One or more scripts failed to compile or no script files were found.
- Press return to exit, or R to try again.
 
That looks better, only one error (warnings can be ignored)...

The substitute for line 345 in MobileSaver.cs is:
Code:
spawner.SpawnObjects.Add( new SpawnObject( t.ToString( ) ) );
 
Back