Headless Client/Server
Headless Client/Server are Neos command line builds excluding graphical user interface, allowing them to run effectively in scenarios where rendering is not needed such as on a server. Neos Pro users and all Patrons at the level Gunter and up have access to Headless Client/Server builds. See Discord channel #headless-client or contact your administrator to get your access code.
Installation
- Use the SteamCMD command
app_update 740250 -beta headless-client -betapassword your_code
Alternatively if you're using graphical interface:
- Go to Steam, open Neos Properties and go to the BETAs tab
- Use your code to activate the beta branch
- Switch to the headless-client branch
Configuration
- After Steam updates, open the installation folder. You can find the headless client in the "Headless Client" subfolder.
- You can use the Config/DefaultConfig.json file to setup startup world or have it login into an account (please don't use your main Neos Account)
{
"tickRate": 60.0,
"usernameOverride": "10 year old ThinkPad",
"loginCredential": null,
"loginPassword": null,
"startWorld": {
"sessionName": "Headless Lounge",
"description": "This one is running on my 10 year old TabletPC. Let's see how well it runs!",
"maxUsers": 16,
"accessLevel": "Anyone",
"tags": null,
"mobileFriendly": false,
"loadWorldURL": null,
"loadWorldPresetName": "SpaceWorld",
"adminUsernames": [
"Frooxius",
"Aegis_Wolf",
"Nexulan"
]
}
}
- Run the executable to start the client
Configuration for local storage
To configure Headless Client/Server to act as a local storage server, set your world to "saveAsOwner" : "LocalMachine"
(will be replaced after first execution with it's unique startWorldURL
) as well as "saveOnExit" : true
and your desired autoSaveInterval
.
Please use the "shutdown" command to allow the server to save any unsaved changes on shutdown.
Config file example:
{
"tickRate": 60.0,
"usernameOverride": null,
"loginCredential": null,
"loginPassword": null,
"startWorlds": [
{
"sessionName": "My World 1",
"description": null,
"maxUsers": 32,
"accessLevel": "LAN",
"tags": null,
"mobileFriendly": false,
"loadWorldPresetName": "BasicEmpty",
"saveAsOwner" : "LocalMachine",
"autoRecover": true,
"saveOnExit" : true,
"autoSaveInterval" : 240,
"forcedRestartInterval": -1.0
}
],
"dataFolder": null,
"cacheFolder": null
}