Add source module to mumo
The source module is inspired by the bf2 module and is supposed to allow on-the-fly context/identity based player management for source engine based games. Currently supported games are TF2, DOD:S, CStrike:Source and HL2DM. This commit adds the basic structure with unit tests for many of the components. For now only dynamic channel creation and player movement is implemented. Left todo are dynamic ACL/Group management, unused channel deletion, server channel re-use and, most importantly, actual testing beyond the small unit test coverage.
This commit is contained in:
77
modules-available/source.ini
Normal file
77
modules-available/source.ini
Normal file
@@ -0,0 +1,77 @@
|
||||
;
|
||||
; This is a sample configuration file for the mumo source module.
|
||||
; The source module manages ACL/channel movements based on source
|
||||
; gamestate reported by Mumble positional audio plugins
|
||||
;
|
||||
|
||||
; The plugin creates needed channels on demand and re-uses
|
||||
; existing ones if available. After creation the channel
|
||||
; is identified by ID and can be renamed without breaking
|
||||
; the mapping.
|
||||
|
||||
[source]
|
||||
; Database file to hold channel mappings
|
||||
database = source.sqlite
|
||||
; Channel ID of root channel to create channels in
|
||||
basechannelid = 0
|
||||
; Comma seperated list of mumble servers to operate on, leave empty for all
|
||||
mumbleservers =
|
||||
; Regular expression for game name restriction
|
||||
; Restrict to sane game names to prevent injection of malicious game
|
||||
; names into the plugin. Can also be used to restrict game types.
|
||||
gameregex = ^(tf|dod|cstrike|hl2mp)$
|
||||
|
||||
; Prefix to use for groups used in this plugin
|
||||
; Be aware that this combined with gameregex prevents spoofing
|
||||
; of existing groups
|
||||
groupprefix = source_
|
||||
|
||||
; Configuration section valid for all games for which no
|
||||
; specfic game rule is given.
|
||||
|
||||
[generic]
|
||||
; name and server channelname support the following variables:
|
||||
; %(game)s - Shortname of the game
|
||||
; %(server)s - Unique id of the server
|
||||
|
||||
; Game name to use for game channel
|
||||
name = %(game)s
|
||||
|
||||
; Channel to create for server below gamechannel
|
||||
servername = %(server)s
|
||||
|
||||
; Comma seperated list of default team channel names
|
||||
teams = Lobby, Spectator, Team one, Team two, Team three, Team four
|
||||
|
||||
; When creating a channel setup ACLs to restrict it to players
|
||||
restrict = true
|
||||
|
||||
; Create base/server-channels on-demand
|
||||
createifmissing = true
|
||||
; Delete channels as soon as the last player is gone
|
||||
deleteifunused = false
|
||||
|
||||
; Regular expression for server restriction.
|
||||
; Will be checked against steam server id.
|
||||
; Use this to restrict to private servers.
|
||||
serverregex = ^\[[\w\d\-\(\):]{1,20}\]$
|
||||
|
||||
; Game specific sections overriding settings of the
|
||||
; [generic] section.
|
||||
[game:tf]
|
||||
name = Team Fortress 2
|
||||
teams = Lobby, Spectator, Blue, Red
|
||||
|
||||
[game:dod]
|
||||
name = Day of Defeat : Source
|
||||
teams = Lobby, Spectator, U.S. Army, Wehrmacht
|
||||
|
||||
[game:cstrike]
|
||||
name = Counterstrike Source
|
||||
teams = Lobby, Spectator, Terrorist, CT Forces
|
||||
|
||||
[game:hl2mp]
|
||||
name = HL2: Death Match
|
||||
teams = Lobby, Spectator, Combine, Rebels
|
||||
|
||||
|
Reference in New Issue
Block a user