inexorgame-obsolete / deprecated-cube-engine-inexor

UNMAINTAINED: Please have a look at the vulkan-renderer
https://inexor.org
zlib License
11 stars 1 forks source link

Inexor Flex Profiles #397

Closed aschaeffer closed 7 years ago

aschaeffer commented 7 years ago

Profiles greatly improves the startup procedure of Inexor Flex, makes the Inexor Shell able to control other instances of Inexor Flex and makes the development process more effective.

Goals

User Stories

Inexor Tree

Profiles we deliver by default

Logging

Profile Log level Log to console Log to file
client warn false false
server warn false true
devenv debug true false

Instances

Profile Server Client
client yes, no autostart yes, autostart
server yes, autostart no
devenv yes, no autostart yes, no autostart

Config files

Inexor Shell

Inexor Flex

Notice(s)

  1. Security measures and cheating protection are not focus of this issue
Croydon commented 7 years ago

Just to clearify my confusion: A single Flex instance can run several Core instances. But without implementing all the stuff from this issues, all of the Core instances from a single Flex instance would be feed with the exact same configuration?

I was under the impression that a single Flex instance can already manage several Core instances with different configs.

aschaeffer commented 7 years ago

It's about the configuration of Flex in the first place. You can have a completely other configuration for Flex in another profile, including another configuration of the instances. There is a config folder for each profile: {configFolder}/inexor/{profilename} where to put the configuration files. The combination of core instances and profiles makes it very powerful.

For example:

$ ls /home/user/.config/inexor/default
profile.toml
instances.toml

$ cat /home/user/.config/inexor/default/profile.toml
port = 31416
hostname = localhost
loglevel = warning
logtoconsole = false
logtofile = true

$ cat /home/user/.config/inexor/default/instances.toml
[instances]
[instances.31414]
type = "server"
name = "Default Inexor Server"
description = "Badly Configurated Server Inc. proudly presents your first Inexor Server"
autostart = false
[instances.31417]
type = "client"
name = "Default Inexor Client"
description = "The default Inexor Client"
autostart = false

$ ls /home/user/.config/inexor/devenv
profile.toml
instances.toml

$ cat /home/user/.config/inexor/devenv/profile.toml
port = 31416
hostname = localhost
loglevel = debug
logtoconsole = true
logtofile = false

$ cat /home/user/.config/inexor/devenv/instances.toml
[instances]
[instances.31414]
type = "server"
name = "Dev Server"
autostart = true
[instances.31417]
type = "client"
name = "Dev Client"
description = "The Dev Client"
autostart = true
a-teammate commented 7 years ago

Just as a little note: the game client will also want to create a new local game server if it wants to play offline (the listenserver will be removed in one of the next PRs)

aschaeffer commented 7 years ago

Done.

If something is not working => reopen.