Difference between revisions of "Headless Client/Server"
(Marked this version for translation) |
|||
Line 33: | Line 33: | ||
"loadWorldURL": null, | "loadWorldURL": null, | ||
"loadWorldPresetName": "SpaceWorld", | "loadWorldPresetName": "SpaceWorld", | ||
− | " | + | "defaultUserRoles": { |
− | " | + | "Gourry": "Admin" |
− | + | }, | |
− | |||
− | |||
} | } | ||
} | } | ||
+ | |||
+ | * The "loadWorldPresetName": loads a world based on neos world templates, the templates are: "SpaceWorld", "Basic Empty", "GridSpace", "Microworld", "Testing Scaling", "ScratchSpace", "ScratchSpace (mobile)", "Instancing Test", "Physical Locomotion Test" and "UIX Test" | ||
+ | |||
* Run the executable to start the client | * Run the executable to start the client | ||
+ | |||
== Configuration for local storage == | == Configuration for local storage == | ||
To configure Headless Client/Server to act as a local storage server, set your world to <code>"saveAsOwner" : "LocalMachine"</code> (will be replaced after first execution with it's unique <code>startWorldURL</code>) as well as <code>"saveOnExit" : true</code> and your desired <code>autoSaveInterval</code>.<br /> | To configure Headless Client/Server to act as a local storage server, set your world to <code>"saveAsOwner" : "LocalMachine"</code> (will be replaced after first execution with it's unique <code>startWorldURL</code>) as well as <code>"saveOnExit" : true</code> and your desired <code>autoSaveInterval</code>.<br /> |
Revision as of 02:09, 3 May 2020
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 finishes the update, 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", "defaultUserRoles": { "Gourry": "Admin" }, } }
- The "loadWorldPresetName": loads a world based on neos world templates, the templates are: "SpaceWorld", "Basic Empty", "GridSpace", "Microworld", "Testing Scaling", "ScratchSpace", "ScratchSpace (mobile)", "Instancing Test", "Physical Locomotion Test" and "UIX Test"
- 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 }