User Tools

Site Tools


dev:basic

Server basics

Server files are available in the data folder as set by the docker volume option when running the container, login as the shinsekai user, then go to this folder.

Configuration

  • stop the server before editing the files
  • edit server.cfg (created after a first server launch)

Some basic options are:

  • info.lua_threads (number of lua thread created, if -1, will find the number of cores available)
  • info.max_players
  • info.max_queries (maximum number of simultaneous data queries)
  • info.name (server name, 255 chars max)
  • info.port (TCP/UDP server ports to listen)
  • info.query_port (TCP query port to listen)
  • info.rate (rate of the server)
  • master.url (url of the master server to register the server, should stay http://shinsekai.archzenvald.com/master/ unless this url is down)

Repositories

Repositories are direct-link http (https isn't supported) repository used to add resources to the server and the clients. When a player join a server, he will download some of its content to work with the server.

Create the repos.list file, and add at each line a repository address (without http protocol, end with “/”) to use. Example:

repos.list
shinsekai.archzenvald.com/repos/test_room1/
#shinsekai.archzenvald.com/repos/commented_repository/
  • content will be downloaded to “repos/domain_path_to_the_repository”
  • repositories are updated at every server launch
  • if a repository hasn't been downloaded correctly for some reasons, delete the “repos/domain_path_to_the_repository/server.manifest” file to force the update

Of course, if you use a distant repository created by someone else, since it will be updated at every server launch you should trust the origin.

Entities

When the server start, it doesn't do anything until an entity script is spawned. Create the entities.list and add, per line: “<class> <persist_id>”

Example:

entities.list
MyClass my_class1
MyClass my_class2
MyOtherClass anything_without_space

If the entity script class exists, the entity will be spawned at server launch and the persist directory will be created/used as “entities/<persist_id>/“.

Troubleshooting

  • if no one can reach you server, don't forget to open the configured ports in the firewall

Continue to Scripting tutorials.

dev/basic.txt · Last modified: 2017/04/03 01:40 by archzenvald