Skip to content

Releases: mastercomfig/mastercomfig

8.105.0

01 Sep 20:53
51eab48
Compare
Choose a tag to compare

Highlights: performance improvements, download site redesign, and bug fixes

Support me: Learn how you can support more updates to mastercomfig!

Early Access: Get early access to more frequent mastercomfig updates.

How to install: Instructions on setting up mastercomfig initially and get it working with your custom files.

How to update: Instructions on updating mastercomfig after you've already installed it.


Config

  • Slightly optimized mat_antialias block
  • Deprioritized outgoing voice traffic
    • Decreases max rate from ~0.61Mbps to ~0.38Mbps
    • Faster rates for large, split packets may cause stability issues, and also consume too much bandwidth versus game traffic.
  • Optimized occlusion system
    • Reverted back to a more traditional algorithm, and entrusted the map author with tuning occlusion settings.
  • Disabled Windows native FS
    • It was buggy, outdated and may not have worked in all scenarios, causing double cost for filesystem operations.
  • Reverted disabling of hardware sync
    • This was an experiment, and it seems like many drivers do not interact well without getting a hint from Source that it needs to complete a frame.
  • Removed snd_mix_async 1
    • _This is an XBox 360 only feature
  • Disabled legacy surround sound pathway
    • The legacy mode increased latency.
  • Added -snd_openal as an Experimental macOS Launch Option
  • Improved preset selection pre_comfig.cfg to be preset=preset-name

Presets

Medium Low

  • Now uses lighting_ex=low (disables phong)
    • Many people use Medium Low as the performance preset, since Low can have visual bugs. Disabling phong, despite causing crashes on some cutting edge maps, improves performance by quite a bit and having it on by default caused a lot of confusion for many users expecting high performance.

Very Low

  • Disables history for payload HUD position

Modules

Lighting

  • Fixed lighting visibility issues on low and medium
    • There was a very small performance increase from skipping some lighting traces at higher lighting levels, but given that most of the gains are a serious tradeoff for color visibility, this cannot be used on any preset besides Very Low.

MSAA Anti-aliasing

Decals

  • off now allows for 1 decal
    • Source requires a decal to be spawned when requested. Having 0 slots causes decal spawning to go through a slower path.

Props

  • Forced LOD4 for static props on medium
  • ultra now uses more optimized radii for props
    • Higher radii put more strain on the visleaf system, which is very costly.

Sound

  • Enabled 5.1 surround sound on high and ultra for improved spatialization with virtual surround
    • This may also reduce audio latency
  • Enabled DSP stereo enhancement on ultra
  • Removed dsp_facingaway, as it added unneeded spatial delay

Addons

Null cancelling movement

  • Added new move_bind module
    • More information in docs

Dev

  • Sped up CI builds
  • Dev scripts now exit on any failure

Docs

  • Added an explanation about the mastercomfig way
  • Added note about yttrium's viewmodels to See Also
  • Fixed a typo in Spy class config

Site

  • Redesigned download page

View the code changes

8.104.2

09 Aug 01:15
ceefcd2
Compare
Choose a tag to compare

Highlights: bug fixes

Support me: Learn how you can support more updates to mastercomfig!

Early Access: Get early access to more frequent mastercomfig updates.

How to install: Instructions on setting up mastercomfig initially and get it working with your custom files.

How to update: Instructions on updating mastercomfig after you've already installed it.


Comfig

  • Removed -disallowhwmorph from all launch options places
  • Fixed audio crackling on low framerates/fluctuations

Dev

  • Added LICENSE to mastercomfig CI artifact
  • Added support for out of band minor releases

View the code changes

8.104.1

02 Aug 15:17
b928504
Compare
Choose a tag to compare

Highlights: bug fixes

Support me: Learn how you can support more updates to mastercomfig!

Early Access: Get early access to more frequent mastercomfig updates.

How to install: Instructions on setting up mastercomfig initially and get it working with your custom files.

How to update: Instructions on updating mastercomfig after you've already installed it.


Comfig

  • Reverted back to using overlapped IO
    • The non-overlapped path causes failed reads due lack of proper testing.
    • Fixes an issue with demos failing to play
  • Updated recommended launch options to -novid -nojoy -nosteamcontroller -nohltv -particles 1
    • -disallowhwmorph was recommended in error

Modules

Outlines

  • Added missing outlines=medium to modules template

FPS Cap

  • Added warning in docs, to recommend Rivatuner instead

Docs

  • Fixed recommended launch options not updated in some places
  • Fixed download link on docs homepage

Dev

  • Added auto-merge from release -> develop

View the code changes

8.104.0

01 Aug 18:21
f58c021
Compare
Choose a tag to compare

Highlights: performance optimizations and bug fixes

Support me: Learn how you can support more updates to mastercomfig!

Early Access: Get early access to more frequent mastercomfig updates.

How to install: Instructions on setting up mastercomfig initially and get it working with your custom files.

How to update: Instructions on updating mastercomfig after you've already installed it.


comfig

  • Updated recommended launch options to -novid -nojoy -nosteamcontroller -nohltv -particles 1 -disallowhwmorph
    • -disallowhwmorph optimizes a check for something that is always disabled
  • Fixed a possible case of class selection menu or team select not appearing on join
  • Cleaned up mat_antialias block to get rid of extra exec
    • This should slightly improve start up time.
  • Disabled download list logging
    • This makes TF2 skip creating an unused downloadlists folder and associated map files when loading into a local server.
  • Enabled keeping the vote UI active after voting to see the vote progress
  • Fixed mastercomfig saving to config.cfg
    • This was not needed and made preset switches and uninstalls harder.
  • Fixed silly gibs being enabled in Competitive Matchmaking
  • Removed pyroland from cp_mountainlab and pl_upward based on feedback that it didn't match very well
  • Reduced max heapsize from 560MB to 512MB
    • It's ok if the data cache and hunk allocate over the heap size, as it is only used to determine allocation size rather than acting as a limit.

Occlusion optimizations

These changes should improve rendering performance in situations with many players, buildings and props.

  • Reworked occlusion settings with a new fixed count strategy
    • Since only occluders within the PVS are used, we can already only consider occluders which are already possibly relevant to occluding dynamic objects (players, buildings, etc) and props. Given the overhead to the occlusion system and empirically determined cost of occluder count, all occluders are excluded at first and only the first 6 largest ones are used for occlusion.
  • Increased max occludee size from 1% to 40%
    • Occludee tests did not seem very expensive from empirical testing, but 40% is used as a limit for potentially occluded objects. Anything larger is very likely not able to be occluded by an occluder given the required separation distance between the view and occludee by an occluding surface.

Rendering optimizations

These changes should improve rendering performance in all situations.

  • Disabled forced hardware sync
    • Given that it may affect concurrency on multi-threaded queued modes which eventually skip it anyway, and that modern drivers should be smart enough to manage submitted frames intelligently.
  • Force disabled fast Z reject
    • It is an outdated rendering optimization technique which does not seem to work properly.
    • This should not be a change for most users, as it is only enabled on very old graphics cards.

File system optimizations

These changes should improve load times, responsiveness when selecting different load outs, and reduce stuttering related to loading new items on players.

  • Disabled overlapped (asynchronous) I/O for Windows
    • Overlapped I/O is a flag which allows Windows to service many I/O requests at once. TF2 does not do enough much reading or writing from different requests to make the overhead (~50%) worth the increased distributed responsiveness of servicing requests. And asynchronous I/O sometimes behaves like synchronous I/O, losing the theoretical benefits of async. Given that the filesystem uses async worker threads already, blocking I/O calls are not a concern, Windows synchronous I/O is a better fit for TF2.
    • Learn more in the Microsoft Docs.

Sound system optimizations

  • Reduced sound delay
    • We can get away with mixing a single clock + the last game frame and relying on the frame time for sound playback.
    • This may cause sound crackling during a hitch/stutter, but those situations usually have a sound hitch anyways, so largely should not affect normal play.
  • Make use of sound cache for playback
    • This reduces the amount of async loading we need for sound playback, and slightly reduces the delay for playing a sound when there is cached data available.

Modules

Downloads

  • Removed default mapsonly level
    • Many servers rely on custom content and mastercomfig constantly overriding this setting may be confusing to many users who are not aware of this.

Lighting

  • Enabled pixel visibility system by default for all levels
    • very_low, low, medium make the game think it is building cubemaps, which shortcuts within the pixel visibility system. By keeping pixel visibility available to the game, other systems can skip line traces for visibility checks and use the shortcut path within pixel visibility.

Very Low

  • Disabled lighting influence from normal lights on dynamic objects (players, buildings, etc) and props
  • Disabled z buffer light cache
    • Given that all normal lights do not cast upon dynamic objects and props, there is no use to the cache.

Low

  • Skips lighting from lesser half of normal lights
    • This should be a good tradeoff between performance and visibility, so that the most intense brightness still lights up objects while skipping levels of brightness which do not substantially improve visibility.

Medium

  • Skips lighting from dim portion of lights
    • This should always light objects when intended for visibility within indoor areas (e.g. BLU 1st spawn stairs on Upward), while clipping off the brightness levels that are there for realistic presence of lighting.

Ultra

  • Skips lighting at a brightness value the engine considers to be practically 0 instead of literally 0
    • Because lighting intensity follows a falloff equation, usually it takes a very long time for it to reach 0, which increases lighting calculations and decreases cache quality for an accuracy benefit too small to ever be considered noticeable by any monitor or human eye.

Shadows

Off

  • Enforce simple shadow type for NextBots
    • Possibly skips some shadow allocation code.

Water

Low

  • Increased the distance that water turns black from 142 to 284 units
    • This works more practically in all maps for in-water combat.

Particles

  • Enforced particle retirement for low, medium
    • The way the algorithm works is based on fill cost. Meaning, particles which take up less screen space are allowed to more expensive. However, this does not make sense in a traditional LOD sense, where objects less noticeable (further away/small) can cost less. Thus, given the compute time needed for testing particles for their render cost, it makes sense to always retire particles regardless, since increasing the threshold only makes particles further away not retire, which has very little benefit.
  • Disabled particle retirement for high
    • See above explanation. It does not make sense to enforce particle retirement for high, nor is it worth the cost to only have further away particles not be retired.

Post Processing

  • Removed ultra level
    • Although slightly more accurate, HDR float mode (3) was incomplete and did not have as many features as integer mode (2) as used in high.
  • Fixed conflict with lighting module

Ropes

  • Ropes now skip an unnecessary operation which sets max lighting intensity for ropes rather than averaged cubemap lighting

FPS Cap

  • Added a new FPS Cap module
  • Defaults to fpscap=1000 for safety, but you can set fpscap=unlimited if you have no chance of getting over 1000 FPS in cases where hit registration for shots matter

Messages

  • Renamed enable to on
  • Renamed disable to off
  • Added hide, which does the old behavior of off before TF2 added a disable text chat feature

Outlines

  • Added medium, which disables player outlines and nametags but enables objective outlines

Sound

  • very_high now immediately traces sound
    • So that it can act as a high accuracy alternative to ultra, which enables higher "quality" effects which may negatively affect competitive use of sound for positional effects.

Addons

Bad GPU

  • Removed
    • The settings which Bad GPU set are now redundant or unnecessary with the mastercomfig base config.

Launch options

  • Added -gl_enablesamplerobjects as an experimental launch option for Linux
  • Added -glmenableclipplanes as an experimental launch option for macOS

Website

  • Improved sticky header on smaller width displays (especially mobile)

Documentation

  • Added descriptions to modules which did not have them
  • Fixed link to template to use new user zip template
  • Improved description for enable hardware-accelerated GPU scheduling
  • Removed VAC warning for native libraries
  • Added security page to docs as well
  • Improved organization of generating TF2 data page
  • Updated page description for hidden console variables
  • Updated style for launch option descriptions
  • Fixed style on misconceptions and silly launch options pages for launch options
  • Updated names in credits
  • Updated addons documentation
  • Fixed capitalization on badges
  • Fixed various old mentions of the wiki instead of docs
  • Fixed some broken documentation links on the contributing page
  • Improved packaging prerequisites documentation
  • Fixed typos
  • Updated the loc...
Read more

8.103.0

01 Jul 05:42
002eedd
Compare
Choose a tag to compare

Highlights: performance optimizations and bug fixes

Support me: Learn how you can support more updates to mastercomfig!

Early Access: Get early access to more frequent mastercomfig updates.

How to install: Instructions on setting up mastercomfig initially and get it working with your custom files.

How to update: Instructions on updating mastercomfig after you've already installed it.


Thanks to the following contributor(s) for this release: micwoj92, m00n

Comfig

  • Added a user template, which contains all mastercomfig user files and explains how to use them
    • This can solve issues where people did not know where or how to create an autoexec, class configs, or a modules file
  • Reduced the latency of the following actions: MOTD show, server join UI show, opening class selection menu, closing class selection menu, stopping taunts, MvM buyback, MvM loot view finish, changing class in arena when class is forced, booing as ghost, starting a demo
  • Reduced the latency of the following commands: status, ping, pause, unpause, extendfreeze, spectate, nextmap, timeleft, ignoremsg, kill, explode
  • Added async partial loads being set on after first load, which improves subsequent server join times and prevents issues with animation and model mods losing their effect over time
  • Re-enabled out of focus sleeping to improve alt-tab performance (both during an alt-tab and improving the responsiveness of other windows)
  • Added periodically forcing re-sync with the server (like the record d;stop fix, but doesn't interfere with any demos!)
  • Removed redundant settings from dxsupport that are set in the config, significantly reducing config size
  • Increased heap memory cap (560MB, from 256MB) in dxsupport to allow for maximum data cache size (512MB, from 208MB) on supported systems
  • Enabled texture streaming for large and nearly always loaded textures to save memory (and removed 1 unused texture)
  • Enabled better sound concurrency heuristic for gun shots, for better performance and quality
  • Disabled additional sound precaching due to internal game precache and async sound streaming
  • Added a mastercomfig logo on start up
  • Renamed modules.cfg download to modules_template.cfg
  • Renamed template.cfg download to autoexec_template.cfg
  • Fixed modules_template.cfg having LF line endings, which do not work on older versions of Notepad
  • Fixed defaults within modules_template.cfg
  • Updated version output format to proper date format
  • Improved speed and safety of dev scripts
  • Moved mat_antialias block to an alias: block_antialias, which can be re-aliased by HUD authors to regain access to the command for testing

Presets

  • Removed sheens_speed=off, which turned off specialized killstreak weapon sheens, for Low, Medium Low, and Medium
    • Many users were asking how to turn this back on, so it is best if on stays as the default.

Modules

SourceTV Compatability

  • Added the sourcetv module, which allows the user to choose between faster spectating target changes or compatibility with SourceTV
  • Defaults to sourcetv=on, for out of the box stability.

Water

  • water=ultra now enforces full quality water even at long distances

Map Decals

  • Added periodic full decal clearing, which clears permanent decals (non Low Priority decals) when decals_art=off

Sprays

  • Made sprays=on only last 1 round instead of 2
  • sprays=on disables periodic full decal clearing

Messages

  • Added support for latest TF2 update which disables text chat to messages=disable
  • Removed messages=userchat as it was not working

Voice Chat

  • Forced client voice state update when changing voice_chat module

Mod Support

  • Made mod_support=on default to prefer out of the box stability over performance

Docs

  • Added widescreen support to some TF2 documentation pages
  • Added instructions for Hardware-accelerated GPU scheduling on Windows
  • Switched to native dark theme
  • Updated launch options script for Linux to be safer
  • Updated cvarlist and launch options for latest TF2 update on Linux
  • Fixed native library information for Linux
  • Removed "disabling shader compilation on start" for Linux, as mastercomfig has now made this obsolete
  • Improved modules instructions
  • Added changelog mention to update instructions
  • Added FAQ entry for mastercomfig app
  • Improved syntax highlighting in many places
  • Switched to SVG logo from PNG to save some bytes
  • Added some new mods/scripts to See Also
  • Removed the Windows low violence mode guide, as it was removed in a recent TF2 update
  • Removed Felik's config from credits as it was deleted
  • Fixed possible formatting errors
  • Updated the localization files

View the code changes

8.102.3

08 Jun 21:08
41fc81c
Compare
Choose a tag to compare

Highlights: bug fixes

Support me

How to install

How to update

Documentation


Comfig

  • Removed many options which were just set to their default value
    • This saves a bit of space as well some execution time
  • Removed a setting change which had no effect on runtime performance, despite its intentions
  • Removed Mannpower map scripts, as they had no effect on clients (map scripts only run on servers)
    • These scripts were intended to enable rope on Mannpower servers, which use grappling hooks
  • Updated the localization files

Documentation

  • Updated status badges to be the same style
  • Fixed dead build status badge link
  • Updated features documentation with latest information
  • Added a link to Steam Chat

Presets

Medium High

  • Changed outlines=high to outlines=low

Modules

Packet Size

  • Re-enabled packet compression for all existing levels
    • Packet compression is used for sent voice data
  • Removed packet_size=balanced, as it did not have a legitimate use case

Saver

  • Renamed packet_size=minimal to packet_size=saver
  • Updated settings to be even more aggressive with compression

Speed

  • Added packet_size=speed which disables compression, for very fast (gigabit) networks where you want to save a bit on CPU usage
    • Please note that even in these cases, compression time is very small and should not be an issue on most CPUs, with network time savings being greater even on fast networks

Small

  • Added packet_size=small, which uses the minimum packet size, for extremely bad routers

Bandwidth

  • Added bandwidth=128Kbps

Debug

  • Fixed a potential exploit with debug=off

Mod Support

  • Fixed a possible case of a crash during game on some servers with with custom models/animations when using mod_support=off

View the code changes

8.102.2

02 Jun 21:51
7a794fa
Compare
Choose a tag to compare

Highlights: bug fixes and performance improvements

Support me

How to install

How to update

Documentation


Comfig

  • Re-enabled glFlush for macOS/Linux (experimentally disabled last release)
    • Should fix some slight input lag.
  • Re-enabled filesystem buffer (experimentally disabled last release)
    • Should fix stutters people were having.
  • Disabled shorter voice fade out time, as it was causing user experience issues
  • Updated modules template with latest module changes
  • Removed space in module template to allow for easier uncommenting

Docs

  • Added mention of NVCleanstall in Windows optimization
  • Fixed facial animations tip for characters module
  • Updated images to be served from mastercomfig.com (accelerated CloudFlare CDN)
  • Fixed alt-text on screenshots

Website

  • Images are now served by CloudFlare CDN instead of the docs site. Should speed up image loading on screenshot previews and for logos
  • Compressed homepage images for faster loading
  • HTML is now served and cached by CloudFlare CDN
  • Removed mastercomfig 7 page (redirects to homepage)
  • Optimized how version is retrieved by using a CloudFlare worker, which filters and caches from the GitHub API
  • Optimized dependencies of version retrieval to just visuals, instead of blocking VPK downloads until version is retrieved

Modules

Mod Support

  • Experimentally disabled submodel loading after first server load for mod_support=off

View the code changes

8.102.1

01 Jun 21:02
98eb3e8
Compare
Choose a tag to compare

Highlights: bug fixes

Support me

How to install

How to update

Documentation


Thanks to the following contributor(s) for this release: Perkzitos, micwoj92, Wiethoofd

Comfig

  • Updated main execution path to be single-line
  • Fixed replays causing crashes
  • Added NVCleanstall mention to Windows optimizations page
  • Updated the localization files

Modules

Bandwidth

  • Fixed a typo on the docs
  • Made all levels named after their rate, for clarity and consistency:
    • Renamed bandwidth=restricted to bandwidth=192Kbps
    • Renamed bandwidth=unrestricted to bandwidth=6.0Mbps
    • Renamed bandwidth=max to bandwidth=8.0Mbps

Level of Detail

  • Fixed documentation from 8.102.0 changes
  • Changed lod=medium_high to lod=medium
    • The previous lod=medium was the same as lod=low due to the 8.102.0 changes

Addons

  • Fixed new addons structure introduced in 8.102.0 not executing properly

View the code changes

8.102.0

01 Jun 09:44
b62a4bb
Compare
Choose a tag to compare

Highlights: bug fixes and performance optimizations

Support me

How to install

How to update

Documentation


Comfig

  • Fully switched to new release scheme for documentation to allow for documentation to be patched in between releases
  • Removed various forms of bloat in mastercomfig, which were causing weird issues with command executions and modules not being run for some PCs
  • Used LF and removed spaces between quoted tokens to save space and improve parsing performance
  • Experimentally skip glFlush for macOS/Linux
  • Fixed a potential issue with sound mixer getting stuck in freezeframe state
  • Forced set voice_steal 2 in game overrides as TF2 sets to 1 on game start
  • Experimentally disable filesystem buffer
  • Removed force setting dsp_enhance_stereo 0, as 1 is set for headphones when high sound quality is selected in game
  • Skipped force setting backpack rarity setting
  • Improved formatting in driver latency optimization section of Windows OS optimization docs
  • Updated misconceptions page with new information and clarification of resolution/window launch options
  • Re-enabled source auto-builds and checks for GitHub
  • Updated the localization files

Presets

Very Low

  • Removed crosshair alpha setting
  • Made sound culling more aggressive (only allow 1 sound of the same kind)

Low

  • Removed crosshair alpha setting

Medium Low

  • Force disabled MvM Rome Vision

Medium

  • Force disabled MvM Rome Vision

Modules

  • Removed in-game module selection, as it was bloating the config and caused many other user experience issues
  • Removed custom module support, as it was causing bloat/execution issues for the config in certain cases
    • This is not selecting module user overrides as in user/modules.cfg. Instead, this is a feature that allowed users to create their own extensions to mastercomfig and make their own, completely new modules.

Level of Detail

  • Removed prop fade distance from lod module (moved to props)

Shadows

  • Clarified that the shadows module affects Halloween boss shadow distance in addition to the already mentioned robots

Post Processing

  • Fixed unnecessary auto exposure settings when HDR is disabled

Props

  • Added prop fade distance to props from lod

Ragdoll

  • Fixed a potential issue where ragdolls sometimes did not disappear instantly on ragdolls=off
  • Added ragdolls=low to have ragdolls fade out as they fall down

Addons

  • Updated how addons are executed to allow for modules to be set
  • Removed custom addon support, as it was causing bloat/execution issues for the config in certain cases

Bad GPU

  • Updated the description to be more clear about old GPUs

No Extra Models

  • Removed No Extra Models, as it is no longer used at the moment

Transparent Viewmodels

  • Fixed how post processing and anti-aliasing modules are set to avoid some bugs

View the code changes

8.101.2

25 May 16:47
108b102
Compare
Choose a tag to compare

Highlights: bug fixes

Support me

How to install

How to update

Documentation


Thanks to the following contributor(s) for this release: Perkzitos, ghost-420, micwoj92, Leo40

Comfig

  • Fixed voice cutting out when talking for a long time
  • Fixed many typos, formatting issues, and value errors in the documentation
  • Fixed hard to read text colors in the documentation
  • Fixed a possible issue with voice transmissions
  • Reworked the troubleshooting section to be more streamlined
  • Updated the Windows optimizations to be more up to date
  • Updated the localization files
  • Changed preset screenshot preview UI
  • Changed multi-download logic to be more reliable/faster

Presets

Very Low

  • Fixed party chat staying on screen

Addons

  • Removed module setting ability for addons

Bad GPU

  • Removed lighting_ex=low

View the code changes