Skip to content

Factions, squads & sanctions

Two resources: bs_factions (factions, squads, treasury, progression) and bs_faction_bases (flags, bases, sanctions, jail).

The faction list and the reputation rewards are in bs_factions/config/config_factions.lua (Factions.List). Players earn reputation by doing their faction’s kind of work (Factions.ActionRewards): Militia kill zombies, Medics revive and treat, Mechanics repair and craft, Farmers gather. Reputation only buys cosmetics, five tiers per faction (title, clothing, title, emote, title), capped at Factions.Settings.maxReputation.

A different ladder, belongs to the faction. Config is bs_factions/config/config_progression.lua. Faction XP comes from two places only:

  1. Faction missions - 3 daily and 2 weekly, random from Factions.Progression.Missions. Daily reset 00:00 UTC, weekly Monday 00:00 UTC. Kinds: action (zombie kills, revives, crafting…), extract (successful extractions) and deliver (hand items in at your flag).
  2. Treasury donations - 1 XP per $25 (donation.dollarsPerXp), max 400 XP per member per day (donation.dailyXpCap).

XP for level n to n+1 is floor(400 * n^1.55) (curve.base, curve.exponent). One skill point per level. The skill tree (stash slots, build speed, trader discount, booster cooldown, donation rate, mission pay, quartermaster) is in Factions.Progression.Skills.

Levels also unlock base stuff (flag_outpost at 3, an extra flag slot at 10, 20 and 30) and name tag colours/styles.

A squad is 2 to Factions.Squad.maxSize players of the same faction. One squad per player.

Factions.Squad = {
maxSize = 5,
maxRanks = 6,
nameMax = 24,
inviteSeconds = 60,
inviteDistance = 25.0,
...
}
  • /squad or F2 (Factions.Squad.uiKey) opens the squad console. /squadaccept, /squaddecline work too.
  • Invite by holding ALT and aiming at a player, or from the roster.
  • Squads are saved (bs_squads, bs_squad_members) and survive restarts. Offline members keep their seat, a leader stays leader while offline.
  • Squad members get map blips and a party HUD. Faction-only mates don’t get blips.

Factions.Squad.maxSize and the name tag range can be changed live in F1.

Leaders set per rank permissions: deposit, withdraw, invite, kick, promote, sanction, build, jail, squad_manage, skills. By default only the Leader withdraws. A per rank daily withdraw cap can be set too (0 = unlimited). All of it is in the faction menu, Treasury and Ranks tabs.

Who can sanction: admins (bs.admin), the faction Leader, and any rank with the sanction permission. Templates are in bs_faction_bases/config/config.lua:

{ id='mod_jail', tier='moderate', label='Detention', effects={ jail=true, fine=250 }, min=5, max=30, default=10 },

min/max/default are minutes, the issuer picks within the range. Tiers are minor, moderate, severe, critical.

Effects you can use in a template: xp_penalty, drop_penalty, build_lock, bank_lock, leave_lock, mute_faction_chat, no_squad, rep_freeze, rep_penalty (instant), fine (instant, goes to the treasury), jail.

Jail (FactionBases.Jail): Leader, Vice or admin sets the jail origin and numbered cells from the Jail tab. Inmates can’t leave defaultRadius (25 m), a timer shows, and it survives relog. Admins have a global jail too.