-
Notifications
You must be signed in to change notification settings - Fork 316
Testing New Engine Releases in BAR
Check https://github.com/beyond-all-reason/bar_debug_launcher
The debug launcher is great for picking whatever engine version you have available to launch.
Use this is you just want to run with precompiled versions provided by the developers.
In case you compiled your own version, you can use this procedure to run dev bar+chobby+engine directly without a launcher (can be used with downloaded versions as well, but for that probably better to use the launchers).
You can run using <enginebinary> -isolation -write-dir <yourdatadir> -fullscreen -menu 'BYAR Chobby $VERSION'
providing you have both BAR.sdd and BYAR-Chobby.sdd inside your <datadir>/games/
folder.
You will need BAR and BYAR-Chobby enabled for devmode, check their github pages for more info if you have any doubts. It's very well explained there.
You can roughly follow the following procedure, assuming you use ~./spring
as datadir (that's optional, you can use the dir you prefer):
-
git clone https://github.com/beyond-all-reason/Beyond-All-Reason
and rename as ~/.spring/games/BAR.sdd -
git clone https://github.com/beyond-all-reason/BYAR-Chobby
and rename as ~/.spring/games/BYAR-Chobby.sdd - Then
touch ~/.spring/devmode.txt
- If you never run it like this you will need to get some maps as well and put them inside
~/.spring/maps/
. You can take them from your launcher datafolder. - Now make sure you can run the engine using
./spring -isolation -write-dir ~/.spring -fullscreen
directly, select a game, a map, and an AI and run skirmish.
Now you are ready to launch with the lobby as well:
- Run the engine as
./spring -isolation -write-dir ~/.spring -fullscreen -menu 'BYAR Chobby $VERSION'
, that should open the lobby. - Go to
Settings > Developer > Singleplayer
and selectBeyond All Reason Dev
.
untested!
For windows it should work similarly:
- Find the datadir spring uses when run directly, likely not the same as the launcher.
- Place BAR.sdd inside the
games
folder. - Place BYAR-Chobby.sdd inside the
games
folder as well. - Edit devmode.txt inside your data dir, save it.
- Make sure the game runs as
spring.exe -isolation -write-dir <yourdatadir> -fullscreen
- Run the game as
spring.exe -isolation -write-dir <yourdatadir> -fullscreen -menu 'BYAR Chobby $VERSION'
- Open the
Settings/Developer
tab and in theSingleplayer
option chooseBeyond All Reason Dev
This method is clunky and deprecated compared using the https://github.com/beyond-all-reason/bar_debug_launcher instead.
Its only left here for documenting on how to edit the launcher's config.json.
Locate your BAR install folder from the launcher by clicking Open install Directory:
Download the latest testing engine release from: https://github.com/beyond-all-reason/spring/releases
Unzip this engine to BAR/data/engine/[engineversion]/ folder, so it looks like this:
Then, make a config-dev.json file in BAR/data/config-dev.json, and replace the "engines" with the value of the engine field with [engineversion]
{
"title" : "Beyond All Reason",
"setups" : [
{
"package": {
"id": "dev-lobby",
"display": "Dev Lobby"
},
"downloads": {
"engines" : [ "spring_bar_.BAR105.105.1.1-931-g91ee57e_windows-64-minimal-portable" ]
},
"no_start_script" : true,
"no_downloads" : true,
"auto_start": true,
"launch": {
"start_args" : ["--menu", "rapid://byar-chobby:test"]
}
}
]
}
Also, create and empty devmode.txt file in BAR/data/
Then, make a shortcut to Beyond-all-reason.exe:
Then, change where the shortcut points to to:
C:\Users*\AppData\Local\Programs\Beyond-All-Reason\Beyond-All-Reason.exe -c C:/Users/*/AppData/Local/Programs/Beyond-All-Reason/data/config-dev.json
You can then launch the shortcut, which should open up the lobby. Test the features of the new engine by going through the engine testing checklist:
- Test starting skirmish
- Test saving skirmish
- Test loading skirmish
- Sync test online in engine testing autohost (usually engine testing 14)
- Test that barbarians actually do things
- Look for any visual bugs or artefacts
- Scour infolog for unusual warnings
Also, you can only play online on the ENGINE TESTING autohost. If you do not see it, its probably because you need to enable "show wrong engines" in the Developer tab of the Lobby settings (should now be visible with devmode.txt in place)
-
Download newest engine release from https://github.com/beyond-all-reason/spring/releases -- you want the linux64-minimal-portable one.
-
Make a new directory under the engine/ subdirectory within your BAR install and unzip. The directory name can be arbitrary but must be replicated in a couple spots. I use the engine version as the directory name.
Beyond All Reason/engine/ENGINE_DIRECTORY_NAME
- Create a custom JSON configuration file to point to the new engine version. This can be named anything.json and live anywhere, I put it in the main BAR directory for sanity. The content should be as follows:
{
"title" : "Beyond All Reason",
"setups" : [
{
"package": {
"id": "dev-lobby",
"display": "Dev Lobby"
},
"downloads": {
"engines" : [ "ENGINE_DIRECTORY_NAME" ]
},
"no_start_script" : true,
"no_downloads" : true,
"auto_start": true,
"launch": {
"start_args" : ["--menu", "rapid://byar-chobby:test"]
}
}
]
}
replacing ENGINE_DIRECTORY_NAME with the directory you created in step 2. Not the full path, just the final directory name.
-
Create the empty file "devmode.txt" in your BAR's root folder.
-
You're all done, now just launch BAR with the launch option -c to specify a config file, and then provide the full path to your custom .json config file. For me this is:
beyondallreason -c /home/user/Documents/Beyond\ All\ Reason/config-dev.json
You should of course alter this to fit your configuration, and you may want to put this in a script if you don't want to type it out every time you want to run your dev build.
- Same as above -- Test the features of the new engine by going through the engine testing checklist:
- Test starting skirmish
- Test saving skirmish
- Test loading skirmish
- Sync test online in engine testing autohost (usually engine testing 14)
- Test that barbarians actually do things
- Look for any visual bugs or artifacts
- Scour infolog for unusual warnings
Also, you can only play online on the ENGINE TESTING autohost. If you do not see it, its probably because you need to enable "show wrong engines" in the Developer tab of the Lobby settings (should now be visible with devmode.txt in place)
These instructions are for flatpaks. Instructions for appimages will come later, they should more or less be the same though.
Note:- ** You can't use 2 engines at the same time **
Instructions:
Download the latest testing engine release from: https://github.com/beyond-all-reason/spring/releases
Run this command in the terminal:-
nano ~/.var/app/info.beyondallreason.bar/data/config-dev.json
Then paste the following codeblock
"title" : "Beyond All Reason",
"setups" : [
{
"package": {
"id": "dev-lobby",
"display": "Dev Lobby"
},
"downloads": {
"engines" : [ "spring_bar_.BAR105.105.1.1-931-g91ee57e_linux-64-minimal-portable" ]
},
"no_start_script" : true,
"no_downloads" : true,
"auto_start": true,
"launch": {
"start_args" : ["--menu", "rapid://byar-chobby:test"]
}
}
]
}
Make sure to replace the engine version number with what you downloaded!
Press Ctrl+o, Hit enter Then hit Ctrl+x
Then run,
nano devmode.txt
Press Ctrl+o, Hit enter Then hit Ctrl+x
(You can use any text editor that you want to use. I'm just using nano for demonstration purposes)
Next,
Locate your BAR install folder from the launcher by clicking the "Open install Directory" button.
Alternatively, you could execute this command in the terminal
cd ~/.var/app/info.beyondallreason.bar
then, go to the data directory and then the engine directory from there.
This is where you need to extract the original 7z file from earlier.
After extraction, delete or move the contents of the current engine folder and replace it with the contents of the folder from the extracted 7z file.
Test the features of the new engine by going through the engine testing checklist:
- Test starting skirmish
- Test saving skirmish
- Test loading skirmish
- Sync test online in engine testing autohost (usually engine testing 14)
- Test that barbarians actually do things
- Look for any visual bugs or artifacts
- Scour infolog for unusual warnings
That's all :D