opensoldat
opensoldat copied to clipboard
Soldat only has one map and no main menu
So, I finally managed to build Soldat on GNU/Linux. Hooray!
But now I have the next problem: There is only one map (ctf_Ash) when I try to select a different map and when I click “Exit to menu”, the game quits (no main menu).
System information:
- OS: Linux 5.7.8 (Arch Linux)
- Pascal: FPC 3.0.4
- libGameNetworkingSockets: built myself, commit 8f60b0e (as recommended here: Soldat/prebuilt-libs#1 (comment))
- libstb: built myself in Soldat repository
- libphysfs: 3.0.2
- make: GNU Make 4.3
- Soldat: commit 078795a
Also, I hear no music.
And yes, I have put soldat.smod in both client/build and server/build but this did not help. :(
The game has no main menu for now. It needs to be implemented (see #10). No music is normal I think, but you should at least hear some sound effects, when flying around, firing weapons. Is this the case?
Oh, could it be that the old main menu (pre-1.8) was Windows-only?
Sound effects do work, but music does not. Soldat very certainly has music files: https://github.com/Soldat/base/tree/master/shared/sfx/modules
Anyway, none of this explains why I can only select a single map. I know that Soldat has many maps. Any idea about what could cause this?
I think you are correct. I have downloaded this mac version and it has a menu:
- https://wiki.soldat.pl/index.php/Soldat_on_macOS_and_Linux
- https://update.soldat.pl/updates/soldatlauncher-0.1.0.dmg
You can change map with these commands:
- https://wiki.soldat.pl/index.php/In-game_Commands
Anyway, none of this explains why I can only select a single map. I know that Soldat has many maps. Any idea about what could cause this?
This is because server can't find mapslist.txt file in configs folder. When mapslist.txt is missing, server sets only one map: ctf_Ash or Arena, depending on game mode. If you try changing map with ESC menu in client, it shows only this one map. You can still change map with /map command, but it's not intuitive.
Extracting all config files as explained in #83 should fix this.