To do this, you have the choice of compiling the domain-server and assignment-client or using the ones that come with the sandbox. I’d recommend using the ones from the sandbox.
On windows, assuming a default install, those are located at the following locations:
C:\Program Files\High Fidelity\domain-server.exe
C:\Program Files\High Fidelity\assignment-client.exe
You’ll need to run the domain-server separately from the Sandbox as well since there isn’t a way to tell the Sandbox not to run the assignment-client instances at the same time (and you wouldn’t be guaranteed to get the assignment via your manual assignment-client).
The domain-server you should be able to run with no parameters. It will still have a web interface accessible at http://localhost:40100 for you to change any settings.
The assignment-client will need special parameters to point at the domain-server machine. Depending on how you want to split up the assignments, you may also need a parameter to specify the assignment type. You can use
./assignment-client.exe to see an overview of the available parameters. I’ll try to cover the base of what you’d need to split assignments across machines here.
If you just want to run all of the assignments on a different machine, you can do the following, from that machine:
assignment-client.exe -n 5 -a $DOMAIN_MACHINE_IP --server-port $DOMAIN_SERVER_PORT
In that example, the domain-server port can be omitted if you are using the default (40102).
-n option tells the assignment-client to start with 5 assignments of any type. It will dynamically grow to handle more assignments if your domain-server has scripts it needs assigned.
-a option tells the assignment-client which assignment-server to use.
If you want to run specific assignments on specific machines, you’ll need to specify the assignment type when running the assignment-client.
First, let’s start with the assignment types. They are:
0 - Audio Mixer
1 - Avatar Mixer
2 - Agent (scripts)
3 - Asset Server
4 - Messages Mixer
5 - Currently Unused
6 - Entity Server
So, let’s say I wanted to run an audio-mixer for the domain-server running at 10.0.0.125. Here’s how I would do that.
assignment-client.exe -t 0 -a 10.0.0.125
I’ve omitted the server port because I know that the domain-server running at 10.0.0.125 is listening on the default port of 40102.
If you want to run some of the assignment-client instances from the same machine as the domain-server, you can specify the type as above and simply omit the
-a option. The default assignment server is
As @huffman mentioned, adding support for this type of setup in a more user friendly way is definitely on Sandbox roadmap. In the meantime, if you’re comfortable getting your hands dirty with the command prompt, this is a great option for you to have a more customized domain setup.