Difference between revisions of "Headless Client/Server"

From Neos Wiki
Jump to navigation Jump to search
(amendment translation unit)
(Marked this version for translation)
Line 4: Line 4:
 
Headless Clients are versions of Neos that lack a graphical user interface, allowing them to run efficiently in scenarios where rendering is not needed (such as when used as a server). '''Neos Pro''' users and all Patrons at the level '''Gunter''' and up have access to Headless Client builds. Check the pins in the '''#headless-client''' channel in the [https://discord.com/invite/neosvr Neos Discord server], or contact a Neos administrator to get your access code.
 
Headless Clients are versions of Neos that lack a graphical user interface, allowing them to run efficiently in scenarios where rendering is not needed (such as when used as a server). '''Neos Pro''' users and all Patrons at the level '''Gunter''' and up have access to Headless Client builds. Check the pins in the '''#headless-client''' channel in the [https://discord.com/invite/neosvr Neos Discord server], or contact a Neos administrator to get your access code.
  
== Installation ==<!--T:3-->
+
== Installation == <!--T:3-->
  
=== Method 1 ===<!--T:9-->
+
=== Method 1 === <!--T:9-->
 
If using Steam:
 
If using Steam:
 
* Go to Steam, open Neos Properties, and go to the Betas tab
 
* Go to Steam, open Neos Properties, and go to the Betas tab
Line 13: Line 13:
  
  
=== Method 2 ===<!--T:2-->
+
=== Method 2 === <!--T:2-->
 
If using SteamCMD:
 
If using SteamCMD:
 
* Paste the following command into SteamCMD:
 
* Paste the following command into SteamCMD:
Line 99: Line 99:
 
  }
 
  }
  
<!--T:8-->
+
== Commands == <!--T:8-->
== Commands ==
 
 
See [[Headless Client/Commands|Headless Client Commands]] for a list of commands.
 
See [[Headless Client/Commands|Headless Client Commands]] for a list of commands.
  
 
</translate>
 
</translate>

Revision as of 11:05, 5 March 2021

Other languages:
English • ‎français • ‎čeština • ‎日本語 • ‎한국어

Headless Clients are versions of Neos that lack a graphical user interface, allowing them to run efficiently in scenarios where rendering is not needed (such as when used as a server). Neos Pro users and all Patrons at the level Gunter and up have access to Headless Client builds. Check the pins in the #headless-client channel in the Neos Discord server, or contact a Neos administrator to get your access code.

Installation

Method 1

If using Steam:

  • 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


Method 2

If using SteamCMD:

  • Paste the following command into SteamCMD:
  • app_update 740250 -beta headless-client -betapassword your_code

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 configure a startup world or to have the server login into an account (please don't use your main Neos account). Here's a sample configuration you can use and modify:

{
 "comment": "DO NOT EDIT THIS FILE! Your changes will be lost. Copy it over and create a new file called Config.json in the same directory",
 "tickRate": 60.0,
 "maxConcurrentAssetTransfers": 4,
 "usernameOverride": null,
 "loginCredential": null,
 "loginPassword": null,
 "startWorlds": [
   {
     "isEnabled": true,
     "sessionName": null,
     "customSessionId": null,
     "description": null,
     "maxUsers": 32,
     "accessLevel": "Anyone",
     "hideFromPublicListing": null,
     "tags": null,
     "mobileFriendly": false,
     "loadWorldURL": null,
     "saveAsOwner": null,
     "loadWorldPresetName": "SpaceWorld",
     "forcePort": null,
     "keepOriginalRoles": false,
     "defaultUserRoles": null,
     "autoInviteUsernames": null,
     "autoInviteMessage": null,
     "autoRecover": true,
     "idleRestartInterval": -1.0,
     "forcedRestartInterval": -1.0,
     "saveOnExit": false,
     "autosaveInterval": -1.0,
     "awayKickMinutes": -1.0,
     "autoSleep": true
   }
 ],
 "dataFolder": null,
 "cacheFolder": null,
 "allowedUrlHosts": null,
 "autoSpawnItems": null,
 "metamovieRoles": null
}
  • The loadWorldPresetName attribute loads a world based on Neos world templates. The available templates are "SpaceWorld", "Basic Empty", "GridSpace", "Microworld", "Testing Scaling", "ScratchSpace", "ScratchSpace (mobile)", "Instancing Test", "Physical Locomotion Test" and "UIX Test".
  • The "defaultUserRoles" attribute defines the user and access level for the world. The format is "USERNAME": "ROLE". The roles are "Admin", "Builder", "Moderator", "Guest", and "Spectator".
  • Run the executable to start the client.

Configuration for a Local or Cloud World Save

To configure a Headless client 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
}

Commands

See Headless Client Commands for a list of commands.