Headless Client/Server

From NeosVR Wiki
Jump to navigation Jump to search
This page contains changes which are not marked for translation.
Other languages:
English • ‎日本語

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"
  • The "defaultUserRoles" defines the user and access level for the world. The format is "USERNAME": "ROLE", The roles are: "Admin", "Builder", "Moderator", "Guest", "Spectator".
  • Run the executable to start the client

Configuration for local or Cloud world save

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.
If you want the world data saved to the cloud (a valid dedicated neos account will be needed), set "saveAsOwner" : "CloudUser".
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
}