Streaming and casting MFArena

Documentation in MFArena is indeed something that is needed. One thing that really needs to be documented is commands that can be utilized for streamers and casters.

First thing to note is that MFArena is optimized for (GNU)Linux, where MFArena on Windows just has a binary release that’s behind the current (GUN)Linux release.

If a Windows user were to stream MFArena, they will see the output of the video being very dim. This was always an issue with the SDL1 renderer. However this is fixed with the SDL2 renderer, but the current Windows binary file does not default to the SDL2 renderer unlike the (GNU)Linux binary file.

To fix this, there are three CVars that need to be changed.

cl_renderer → “opengl2” – This is what switched the renderer to use SDL2. You’ll have to restart MFArena for the change to take effect.
r_autoExposure → “0” – By default, this CVar is set to “1”, which causes the screen to darken when the camera is viewing a bright part of the light map. However, this does not take textures into consideration, thus making this a wonky function. It’s best to just disable this.
r_cameraExposure → “1” – By default, this CVar os set to “0”, and this simply what causes the game to be dark when changing to the SDL2 renderer. Setting this to “1” will make the game close to the normal brightness of the SDL1 renderer. Note that this CVar is normally cheat protected in IOQuake3.

Now MFArena will show the normal brightness of the game, and not be dim in the stream. This is actually an issue with OpenArena, which sadly continues to use outdated binaries of IOQuake3.

As for in-game commands, there are quite a few:

follow [n] Follow a player by client number
follownext / followprev Switch to the next or previous player
follownextpowerup / followprevpowerup Switch to the next or previous player that currently has a power up (Quad/Pent.)
follownextleader / followprevleader Switch to the next or previous player that has the lead (if there is a tie, it will switch between only those players)
follownextobj / followprevobj Switch to the next or previous player that currently has the game type’s objective (flag/bomb)
specMode [off/lastFrag] An incomplete spectator’s mode that currently only works well in duels (use with care)
players Shows the list of currently connect clients, with their respected client numbers
ruleSet Displays the rule set in the console

Hopefully, this will be quite helpful for those who are looking to stream MFArena.