Hosting a custom Beyond All Reason match and want to ban certain units from the roster. The game includes two systems for this: tweakdefs and tweakunits. Newer players often struggle to find documentation on what exactly to enter. Here is the practical answer.
Tags: beyond all reason, tweakunits, tweakdefs, disable units, lobby config, unit ban, custom game
Both systems modify unit availability and stats. Tweakdefs work through encoded values passed via lobby chat commands like !bset. Tweakunits offers a more direct interface but lacks clear built-in documentation.
For disabling individual units, tweakdefs with the maxthisunit = 0 parameter does the job. Set it on the unit definition you want to remove. Common targets include overpowered experimental units or game-breaking builders.
Lua table merging can remove units directly:
armmerl = { maxthisunit = 0 }cortrem = { maxthisunit = 0 }corvroc = { maxthisunit = 0 }These go into the unit modification interface in the lobby. If your modification gets long enough, switching from tweakdefs to tweakunits becomes the cleaner path.
The interface does not spell out what to type. The fastest approach is to look at the engine documentation and existing unit definition files. The Spring RTS wiki at springrts.com/wiki/Gamedev:WeaponDefs covers weapon parameters including heightMod and range mechanics.
Weapon ranges in BAR use three-dimensional coordinates. The range value represents a 3D distance limit, not just flat ground distance. This matters when configuring unit capabilities.
A well-configured custom lobby creates a better experience for everyone. Removing problematic units up front saves frustration during the match. Groups like Creed of Champions understand this principle. They build structured environments where players can focus on the actual game.
[Crd] Creed of Champions is a great place to learn and play BAR in a friendly atmosphere. Training sessions, team gameplay, even some non-BAR stuff. Large cross section of abilities, time zones, and game mode interests.