Dark Messiah of Might & Magic Tweak Guide

[Page 9] Advanced Tweaking (Pt.3)

Gameplay/View Commands

cl_drawhud [0,1] - If set to 0 the Heads Up Display (HUD) - all the information elements overlaid on the main game screen - will be removed, which is useful for taking nice screenshots for example.

mm_hud_display_lifemana [0,1] - If set to 0, removes the Health and Mana bars from your HUD.

mm_hud_displaystealth [0,1] - If set to 0, removes the Stealth indicator - the white circle in the center of your screen.

mm_hud_stealth_reversed [0,1] - If set to 1, your Stealth indicator circle will be all white when visible, and will darken as you become more stealthy, which is the reverse of its normal behavior.

mm_objectives_displaytime [seconds] - The number of seconds to show updated objectives popups on the screen. The default is 8 seconds, but you can lower this if the objective popups annoy you, or increase it if you find you're missing seeing them.

thirdperson - Transfer you to third person view, showing your character in the center of the screen. Note that his head will be missing as it is not normally rendered (cheat).

firstperson - Returns you to first person view.

centerview - Centers the character's view on the middle of the screen (only when bound to a key).

default_fov [angle] - Determines the default Field of View (FOV) in the game. Default is 85 (cheat). Decreasing this creates a 'zoom' effect, increasing it creats a 'Fish Eye' effect.

Demo Commands

[Note: The demo functionality currently appears to be broken in Dark Messiah]

record [demoname] - Starts recording a demo of the current gameplay under the specified filename. The demo will be saved as demoname.dem in the \Program Files\Ubisoft\Dark Messiah of Might and Magic\mm directory along with all its associated files.

stop - Stops recording the current demo.

demoui - Opens/closes a small demo user interface which looks like a media player, but makes the opening and playing of demos much easier, including the capability to FF, REW and skip to specific points in the demo.

playdemo [demoname] - Plays back a pre-recorded demo of name demoname.dem.

stopdemo - Stops playback of the currently playing demo.

demopause - Pauses playback of the currently playing demo.

demoresume - Resumes playback of the currently paused demo.

startmovie - Starts recording movie frames, stored in the \Program Files\Ubisoft\Dark Messiah of Might and Magic\mm\SAVE directory as .tga files.

endmovie - Stops recording movie frames.

Benchmarking Commands

timedemo [demoname] - Plays the specified demo and reports performance information upon completion, including frames played, time taken, average FPS and FPS variability. Also records the information in a file called sourcebench.csv in your \Program Files\Ubisoft\Dark Messiah of Might and Magic\mm directory.

timedemoquit [demoname] - Plays the specified demo as per the timedemo command and then exits the game to desktop.

bench_start [filename] - Starts benchmarking your current gameplay and writes information to the specified file in .csv format.

bench_end - Ends any benchmarking.

bench_showstatsdialog - Shows a dialog box displaying the most recent benchmarking results.

bench_upload - Uploads the most recent benchmarking stats to the Valve servers.

benchframe [framenumber] - Takes a snapshot of the specified frame of a timedemo.

perfvisualbenchmark - Runs a series of benchmarks on the current scene. Note that after this has run, you may notice some glitches and control issues which are resolved with a restart of DMOMM.

perfvisualbenchmark_abort - Stops the benchmarking and prints the results for various aspects of the rendering system in average FPS in the console.

Information & Diagnostic Commands

mat_wireframe [0,1] - Displays materials in wireframe form (cheat).

cache_print - Shows the amount of memory currently used by various items in the game's data cache.

developer [0,1,2] - If set to 1 shows Developer messages in the top left corner, if set to 2 shows more detailed information.

mat_show_texture_memory_usage [0,1] - If set to 1 shows a small box at the top right with the current amount of texture memory used (in KB) to render the visible scene.

mat_reloadtextures - Reloads all textures in the current level which can help resolve graphical glitches, but which may take some time to do.

mat_info - Shows material system information.

mat_reloadmaterial - Reloads all materials which can take quite a while but may resolve any temporary graphical glitches.

perfui - Opens/closes a user interface which allows easy access to performance tools.

soundinfo - Shows information about the current sound output device.

soundlist - Lists all known sounds.

snd_restart - Restarts the sound system which can take a while but may clear any temporary audio glitches.

snd_profile [0,1] - If set to 1, shows dsp usage stats in the console.

stopsound - Stops all sound effects currently playing.

stopsoundscape - Stops all soundscapes currently playing.

Cheat Commands

[Note: The sv_cheats 1 command must be used for most cheat commands work]

sv_cheats [0,1] - Toggle. Enables the use of cheat commands in single player or on a multiplayer server if set to 1. Not all cheat commands seem to require this in Dark Messiah.

god - Toggle. The player becomes invulnerable.

noclip - Toggle. The player can fly and move through solid objects.

notarget - Toggle. The player becomes invisible to NPCs (Non-Player Characters).

ai_disable - Disables all Artificial Intelligence (AI) for NPCs and puts them into their idle animations. Can be used to test the performance hit of AI, or to freeze NPCs for screenshots. Use ai_disable again to re-enable ai for NPCs.

buddha - Toggle. Player can take damage but won't die.

map [mapname] - Starts playing on the specified map. Map names are usually in the form of Level number_Chapter Letter, e.g. L04_B for Chapter 4 part B.

mm_npc_create_[npctype] - Creates an NPC of the given type, for example mm_npc_create_lich will create a Lich in front of the character. Note that created NPCs which are enemies will be hostile to the character.

Multiplayer Commands

[Note: Below is an abbreviated list with mainly useful commands. For a full list, see the top of page 8 and make sure to check all the commands starting with sv_, net and

mp in particular]

addip [ipaddress] - Add an IP address to the ban list.

banid [userid] - Add a user ID to the ban list.

changelevel [mapname] - Change server to the specified map.

cl_allowdownload [0,1] - Client downloads customization files.

cl_allowupload [0,1] - Client uploads customization files.

cl_cmdrate [packets/sec] - Max number of command packets sent to server per second.

cl_lagcompensation [0,1] - Perform server side lag compensation of weapon firing events.

cl_rate [bytes/sec] - Max bytes/sec the host can send data. Default is 10,000.

cl_resend [seconds] - Delay in seconds before the client will resend the 'connect' attempt.

cl_timeout [seconds] - After this many seconds without receiving a packet from the server, the client will disconnect itself.

cl_updaterate [packets/sec] - Number of packets per second of updates requested from the server.

clientport [port] - Host game client port. Default is 27005.

connect [serverip] - Connect to specified server.

disconnect - Disconnect game from server.

hostport [serverip] - Host game server port. Default is 27015.

ip - Overrides IP for multihomed hosts.

kick [username/userid/userslot] - Kick a player by slot, userid or name.

killserver - Shutdown the server.

listid - Lists banned users.

listip - List IP addresses on the ban list.

writeid - Writes a list of permanently-banned user IDs to banned_user.cfg.

writeip - Save the ban list to banned_ip.cfg.

maxplayers [playernumber] - Change the maximum number of players allowed on this server.

mp_allowNPCs [0,1] - Allow NPCs on the server if set to 1.

mp_allowspectators [0,1] - Toggles whether the server allows spectator mode or not.

mp_chattime [seconds] - Amount of time players can chat after the game is over.

mp_disable_autokick - Prevents a userid from being auto-kicked.

mp_fraglimit [frags] - Frag limit for deathmatch games.

mp_friendlyfire [0,1] - If set to 1, friendly fire is enabled.

mp_timelimit [minutes] - Game time per map in minutes.

mp_weaponstay [0,1] - If set to 1, weaponstay is enabled.

net_fakelag [milliseconds] - Lag all incoming network data (including loopback) by this many milliseconds (cheat).

net_fakeloss [percentage] - Simulate packet loss as a percentage of total packets.

net_graph [0,1,2,3] - Draw the network usage graph if set to 1 (More details of usage here).

net_maxfragments [bytes/packet] - Max fragment bytes per packet.

net_showdrop [0,1] - Show dropped packets in console if set to 1.

net_start - Initializes multiplayer network sockets.

password [password] - Current server access password.

ping - Display ping to server.

rate [bytes/sec] - Max bytes/sec the host can receive data. Default is 20000.

rcon [command] - Issue an rcon command.

rcon_password [password] - remote console password.

removeid [userid] - Remove a user ID from the ban list.

removeip [userip] - Remove an IP address from the ban list.

retry - Retry connection to last server.

say [string] - Display player message.

say_team [string] - Display player message to team.

slist - List servers on your LAN.

spec_player [playername] - Spectate player by name.

sv_allowdownload [0,1] - Allow clients to download files if set to 1.

sv_allowupload [0,1] - Allow clients to upload customization files if set to 1.

sv_alltalk [0,1] - Players can hear all other players, no team restrictions if set to 1.

sv_filterban [0,1] - Set packet filtering by IP mode.

sv_lan [0,1] - Server is a lan server (no heartbeat, no authentication, no non-class C addresses, 9999.0 rate, etc.).

sv_maxunlag [seconds] - Maximum lag compensation in seconds.

sv_maxrate [rate] - Max bandwidth rate allowed on server, 0 = unlimited.

sv_minrate [rate] - Min bandwidth rate allowed on server, 0 = unlimited.

sv_maxupdaterate [updates/sec] - Maximum updates per second allowed.

sv_minupdaterate [updates/sec] - Minimum updates per second allowed.

sv_password [password] - Server password for entry into multiplayer games.

sv_specnoclip [0,1] - If set to 1, spectators cannot fly through objects.

sv_timeout [seconds] - Number of seconds without a message from a client before client is dropped.

sv_voiceenable [0,1] - Enable voice on the server.

users - Show user info for players on server.

The commands above are what I consider the most useful and most important for Dark Messiah of Might & Magic based on my personal testing. Once again, if you want the full list see the top of page 8 for details. Most of these commands are identical to those used in other Source engine games like Half Life 2 or CounterStrike: Source, but I've retested all of them as far as possible and the descriptions above should all be accurate for DMOMM. However I need your feedback and corrections if I am to maintain the accuracy of this list, so please Email Me if you have any corrections/additions. Please remember that commands that can be changed in-game, as well as obscure or less helpful commands are not included in the list above.

The next section of the guide covers some very handy tips and tweaks, and brings the guide to a conclusion.