[GH-ISSUE #1577] Random default map from cycle file #1233

Closed
opened 2026-02-27 02:56:00 +03:00 by kerem · 8 comments
Owner

Originally created by @popey456963 on GitHub (Aug 15, 2017).
Original GitHub issue: https://github.com/GameServerManagers/LinuxGSM/issues/1577

Would be great to have it so that LGSM can pick a random map to start with from the map cycle of a gamemode, instead of starting on one map all the time.

Originally created by @popey456963 on GitHub (Aug 15, 2017). Original GitHub issue: https://github.com/GameServerManagers/LinuxGSM/issues/1577 Would be great to have it so that LGSM can pick a random map to start with from the map cycle of a gamemode, instead of starting on one map all the time.
kerem closed this issue 2026-02-27 02:56:00 +03:00
Author
Owner

@MarkTwoFive commented on GitHub (Aug 15, 2017):

LGSM is not responsible for game features. If you don't even provide the game name you won't get a solid answer...

<!-- gh-comment-id:322604283 --> @MarkTwoFive commented on GitHub (Aug 15, 2017): LGSM is not responsible for game features. If you don't even provide the game name you won't get a solid answer...
Author
Owner

@popey456963 commented on GitHub (Aug 16, 2017):

@MarkL4YG Apologies, this is for CS:GO. The map is stored in the configuration file already (defaultmap="de_mirage") and is sent to the server via a flag.

By virtue of Valve's Developer Network, it appears that the majority of Source games store their map list in mapcycle.txt, so a suggested feature addition would be something along the lines of:

  • An extra configuration value, map_cycle_file, which contains where this mapcycle.txt is.
  • On server start, if map_cycle_file is defined (or some other option enabled), run map_choice='sort -R ${map_cycle_file} | head -n '.
  • Use the newly declared variable as the map start parameter.
<!-- gh-comment-id:322625670 --> @popey456963 commented on GitHub (Aug 16, 2017): @MarkL4YG Apologies, this is for CS:GO. The map is stored in the configuration file already (`defaultmap="de_mirage"`) and is sent to the server via a flag. By virtue of Valve's Developer Network, it appears that the majority of Source games store their map list in `mapcycle.txt`, so a suggested feature addition would be something along the lines of: - An extra configuration value, `map_cycle_file`, which contains where this `mapcycle.txt` is. - On server start, if `map_cycle_file` is defined (or some other option enabled), run `map_choice='sort -R ${map_cycle_file} | head -n '`. - Use the newly declared variable as the map start parameter.
Author
Owner

@MarkTwoFive commented on GitHub (Aug 16, 2017):

Have you tried normal solutions to enable map rotation like this ?

<!-- gh-comment-id:322689248 --> @MarkTwoFive commented on GitHub (Aug 16, 2017): Have you tried normal solutions to enable map rotation [like this](https://forums.alliedmods.net/showthread.php?t=254758) ?
Author
Owner

@popey456963 commented on GitHub (Aug 16, 2017):

Aye, I use mapchooser-extended, which gives me random maps during the game. However it does not alter the first map choosen.

Since I run a crappy server that crashes every few hours, it means that we play our default map significantly more than expected :).

At the moment I feel I'm just butchering LGSM with my implementation, but I've already got this system working locally.

<!-- gh-comment-id:322754000 --> @popey456963 commented on GitHub (Aug 16, 2017): Aye, I use `mapchooser-extended`, which gives me random maps during the game. However it does not alter the first map choosen. Since I run a crappy server that crashes every few hours, it means that we play our default map significantly more than expected :). At the moment I feel I'm just butchering LGSM with my implementation, but I've already got this system working locally.
Author
Owner

@MarkTwoFive commented on GitHub (Aug 16, 2017):

If you've got a generalized working solution feel free to suggest it using PRs

<!-- gh-comment-id:322771213 --> @MarkTwoFive commented on GitHub (Aug 16, 2017): If you've got a generalized working solution feel free to suggest it using PRs
Author
Owner

@popey456963 commented on GitHub (Aug 16, 2017):

@MarkL4YG Completely butchered, I literally just replace the defaultmap value with the cycle list command above.

If I was to do it properly and add an option to enable/disable it, would it have a chance at being accepted?

<!-- gh-comment-id:322776080 --> @popey456963 commented on GitHub (Aug 16, 2017): @MarkL4YG Completely butchered, I literally just replace the `defaultmap` value with the cycle list command above. If I was to do it properly and add an option to enable/disable it, would it have a chance at being accepted?
Author
Owner

@MarkTwoFive commented on GitHub (Aug 16, 2017):

I do think so

<!-- gh-comment-id:322793325 --> @MarkTwoFive commented on GitHub (Aug 16, 2017): I do think so
Author
Owner

@lock[bot] commented on GitHub (Aug 16, 2018):

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

<!-- gh-comment-id:413569731 --> @lock[bot] commented on GitHub (Aug 16, 2018): This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
Sign in to join this conversation.
No labels
Atomic
Epic
cannot reproduce
command: backup
command: console
command: debug
command: details
command: fast-dl
command: install
command: mods
command: monitor
command: post-details
command: restart
command: send
command: start
command: stop
command: update
command: update-lgsm
command: validate
command: wipe
distro: AlmaLinux
distro: Arch Linux
distro: CentOS
distro: Debian
distro: Fedora
distro: RedHat
distro: Rocky Linux
distro: Ubuntu
distro: openSUSE
engine: goldsrc
engine: source
game: 7 Days to Die
game: ARMA 3
game: Ark: Survival Evolved
game: Assetto Corsa
game: Avorion
game: BATTALION: Legacy
game: Barotrauma
game: Battalion 1944
game: Battlefield 1942
game: Black Mesa: Deathmatch
game: Blade Symphony
game: Call of Duty 2
game: Call of Duty 4
game: Call of Duty: United Offensive
game: Counter-Strike 1.6
game: Counter-Strike 2
game: Counter-Strike: Global Offensive
game: Counter-Strike: Source
game: Day of Infamy
game: Dayz
game: Death Match Classic
game: Don't Starve Together
game: ET: Legacy
game: Eco
game: Factorio
game: Factorio
game: Garry's Mod
game: Half-Life
game: Hurtword
game: Insurgecy
game: Insurgecy
game: Insurgency: Sandstorm
game: Just Cause 3
game: Killing Floor
game: Killing Floor 2
game: Left 4 Dead 2
game: Minecraft
game: Minecraft Bedrock
game: Mordhau
game: Multi Theft Auto
game: Mumble
game: Natural Selection 2
game: No More Room in Hell
game: Pavlov VR
game: Post Scriptum
game: Project Zomboid
game: Quake 3
game: QuakeWorld
game: Red Orchestra: Ostfront 41-45
game: Return to Castle Wolfenstein
game: Rising World
game: Rust
game: San Andreas Multiplayer
game: Satisfactory
game: Soldat
game: Soldier of Fortune 2
game: Squad
game: Squad 44
game: Starbound
game: Stationeers
game: Sven Co-op
game: Team Fortress 2
game: Teamspeak 3
game: Teeworlds
game: Terraria
game: The Front
game: Unreal Tournament 2004
game: Unreal Tournament 3
game: Unreal Tournament 99
game: Unturned
game: Valheim
game: Wurm Unlimited
game: Zombie Master Reborn
game: label missing
good first issue
help wanted
info: alerts
info: dependency
info: docker
info: docs
info: email
info: query
info: steamcmd
info: systemd
info: tmux
info: website
info: website
needs more info
outcome: duplicate
outcome: issue resolved
outcome: issue resolved
outcome: issue unresolved
outcome: pr accepted
outcome: pr rejected
outcome: unconfirmed
outcome: wontfix
outcome: wrong forum
potential-duplicate
priority
pull-request
type: bug
type: feature
type: feature
type: feature request
type: game server request
type: refactor
waiting response
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/LinuxGSM#1233
No description provided.