Skip to content

Mint Game Settings

Zack Middleton edited this page Jun 17, 2014 · 11 revisions

mint-game.settings (formerly gameconfig.txt and PAKSUMS) is a new file loaded by Spearmint's server/client.

For full examples of mint-game.settings see spearmint-patch-data.

addGameDir

ioquake3 uses com_basegame, fs_basegame, and fs_game to add 1 to 3 game directories to the search path. Spearmint has only fs_game and loads up to 16 additional game directories from mint-game.settings in game directory set by fs_game (either in a pk3, .pk3dir, or unzipped).

addGameDir adds a game directory to the search path, in paths set by each of following console variables; fs_basepath, fs_homepath, and on Mac OSX fs_apppath.

Game directories are searched in order added. fs_game will be searched before all other game directories.

Paksums are loaded from all mint-game.settings in game directories specified by addGameDir, everything else in their mint-game.settings is ignored.

Example for mod using content from Quake III and Team Arena:

// Mod for Quake III: Team Arena
addGameDir missionpack
addGameDir baseq3

addLoadingScreen

Adds a loading screen for the client to display at startup and vid_restart. The image will always be drawn aspect correct and entirely on the screen. You set the background color that is seen when image is different aspect than window.

You can add 200 different ones. Each time loading screen is shown the next one is used. You can control the next displayed loading screen by setting the cl_loadingScreenIndex cvar (starts at 0). CGame could cause it to reset when it gets to a certain value, allowing more screen to be available over time. CGame could set it to a random value opposed to letting client loop though them in order (though you'll need to hardcode the maximum).

Usage:

addLoadingScreen <shader name> ( R G B ) <aspect>

R, G, B are in the range of 0.0 to 1.0. Aspect is width divided by height so for a 4:3 image use 1.333333.

Example:

addLoadingScreen menuback ( 0 0 0 ) 1.333333

cvarDefault

Change cvar default value.

Usage:

cvarDefault <cvar name> <value>

Example:

cvarDefault r_flares 0

paksums

Pk3 checksums are used to check for missing or modified pk3s, in which case enabling sv_pure is disabled and a warning is shown. Disabling sv_pure is mainly to prevent people from hosting servers that no one can join.

The pk3s listed are loaded in the order they're listed in and all other pk3s are loaded after them. This allows RTCW-MP to load pak0 before mp_pak#. It also causes addons to take priority over default pk3s regardless of pk3 names.

How to find checksums

To find out what a pk3 file's checksum is, add the pk3 with a checksum 0 to paksums section in mint-game.settings in its game directory and run the game. The checksum will be in the stderr.txt on Windows and shown in terminal on Linux and OS X.

Example contents for "mint-game.settings" in the game's fs_game directory.

paksums {
	pak0	0
	pak1	0
	pak2	0
	pak3	0
	pak4	0
	pak5	0
	pak6	0
	pak7	0
	pak8	0
}

Example paksums for baseq3 (Quake 3)

paksums {
	// nodownload keyword tells server not to allow pk3 to be downloaded
	pak0	4204185745	nodownload
	pak1	4193093146	nodownload
	pak2	2353701282	nodownload
	pak3	3321918099	nodownload
	pak4	2809125413	nodownload
	pak5	1185311901	nodownload
	pak6	750524939	nodownload
	pak7	2842227859	nodownload
	pak8	3662040954	nodownload
}

Note: Not downloading Quake 3 and Team Arena pk3s is hard coded in the engine, but the nodownload option allows other games to specify this behavior.

Clone this wiki locally