-
Notifications
You must be signed in to change notification settings - Fork 66
Game Customization
PtaQQ edited this page Dec 7, 2017
·
3 revisions
Chobby can be used in two ways:
- As a generic lobby (Spring as platform) that works in a similar manner like most traditional lobbies (SpringLobby, SWL, etc.)
- As a customized lobby that can support game-specific functionalities and look&feel.
To create a customized lobby, it is necessary to do the following:
- Create a custom game config within Chobby. Currently they should be included to the main Chobby repo with a pull request.
- A configuration file which determines what game configuration and what lobby protocol to use. This file is specified in
chobby_config.json
. Note: This configuration file will be read only once, on first start of Chobby. After that whatever setting users set will be used. This means if you make any changes, for them to take effect, you should remove the DATADIR/LuaMenu folder.
Example chobby_config.json
are given below.
EvoRTS:
{
"server" : {
"address" : "springrts.com",
"port" : 8200,
"protocol" : "spring",
"serverName" : "Spring"
},
"game" : "evorts"
}
Spring as platform:
{
"server" : {
"address" : "springrts.com",
"port" : 8200,
"protocol" : "spring",
"serverName" : "Spring"
},
"game" : "generic"
}
ZK:
{
"server" : {
"address" : "zero-k.info",
"port" : 8200,
"serverName" : "Zero-K",
"protocol" : "zks"
},
"game" : "zk"
}
- The third step involves creating a wrapper application that will download and start the correct engine with required dependencies. This is WIP, expect there to be a Python wrapper released which can be customized with the same
chobby_config.json
file. A temporary setup for testing Chobby without a wrapper can be achieved as follows:
- Download an appropriate engine version and extract it to a folder.
- Enter the engine folder and create an isolated.txt file in it.
- Copy the above
chobby_config.json
in it. Make sure it is corrected for the correct game orLuaMenu
folder will need to be deleted for changes to take place. - Download your game/maps and Chobby itself. For Chobby you can use the rapid version
chobby:test
if your changes are there, or you can download it in Git to make development easier. - Open springsettings.cfg and specify Chobby as the default LuaMenu:
DefaultLuaMenu = Chobby $VERSION
for Git andDefaultLuaMenu = rapid://chobby:test
for rapid. - Run spring. This should now open Chobby customized for your game.