<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Beyond all Reason developer blog</title>
    <link>/microblog</link>
    <atom:link href="/microblog" rel="self" type="application/rss+xml" />
    <description>Beyond all Reason developer blog </description>
    <language>en</language>
    <copyright>Copyright 2026 Beyond all Reason</copyright>
    <lastBuildDate>2026-04-04 09:21:34</lastBuildDate>
    <category>Computer gaming</category>
    <ttl>60</ttl>

    
      
      <item>
        <title>Keybinds update: Damaged units selection and PiP</title>
        <author>Chronographer</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/181</link>
        <id>181</id>
        <guid>181/20260404212134</guid>
        <last_updated>2026-04-04 09:21:34</last_updated>
        <description><![CDATA[Easier micro! New keybind for the default layout gridkeys alt+Q will select damaged units. Also new keybinds for the picture in picture feature.]]></description>
        <contents><![CDATA[Easier frontline micro! New keybind introduced for the default grid keybind preset: **Alt+Q** will select those units with less than _60% HP_ from your current selection. This was chosen by popular vote on the BAR official discord. Use this selection to pull back units for repair. 

Additionally new keybinds for the picture in picture (PiP) feature for both grid and legacy keybind presets: 

- **Alt+T** will track the selected units in the PiP. 
- **Spacebar + Tab** will switch the current camera and the PiP camera position
- **Ctrl+ Space + Tab** will copy the current camera position to the PiP

Custom keybind users may want to update their bindings or check for conflicts if they import the current defaults. The new defaults contain the bindable actions for those and more if using the advanced PiP minimap.]]></contents>
        <tags>Gameplay</tags>
        <pubDate>2026-04-04 09:21:34</pubDate>
      </item>
    
      
      <item>
        <title>Now Available: Improved Map Browser</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/180</link>
        <id>180</id>
        <guid>180/20260331183634</guid>
        <last_updated>2026-03-31 06:36:34</last_updated>
        <description><![CDATA[The map browsing panel in the lobby has received a rework. It now has a better layout, improved previewing, and more searchable metadata including planets and terrain types. Thanks to PtaQ for the contribution.]]></description>
        <contents><![CDATA[https://github.com/beyond-all-reason/BYAR-Chobby/pull/1164]]></contents>
        <tags>Interface, Maps, Client</tags>
        <pubDate>2026-03-31 06:36:33</pubDate>
      </item>
    
      
      <item>
        <title>This Month in BAR: March 2026</title>
        <author>PtaQ</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/179</link>
        <id>179</id>
        <guid>179/20260324185602</guid>
        <last_updated>2026-03-24 06:56:02</last_updated>
        <description><![CDATA[March focused on making BAR feel better: smarter unit control, major PIP rollout, and big performance gains.
Alongside that came UI polish, balance updates, and many QoL fixes.]]></description>
        <contents><![CDATA[March was a packed month! We've got a major new unit control feature, the Picture-in-Picture minimap graduating to a default-on experience, significant performance improvements, a Carrier rework, several balance patches, and a lot of polish. Let's dig in!
#### (Releases 2026.02.18-1 – 2026.03.20-2) <@&729715212747276400>

## New Guard Movement
Units with a Guard order now move in formation alongside the unit they are guarding, rather than trailing behind in a line. They match speed relative to their guardee, spread out around them, and maintain sensible positions while moving - combat units actively flank and protect, support units stay at a safe distance.

To get full use of the new behavior, use **Space + Right-click drag** to reposition guarded units around their guardee before moving out. Note that construction units are not affected by this change, since it is more convenient for them to tail the guarded con so they don't bodyblock constructions.

## Picture-in-Picture: Fully Rolled Out
PIP is now live for all players. It comes in two forms that work together.

**As your minimap**, PIP replaces the old static overview with what is likely **the most fully-featured minimap widget in all RTS**. Where the old minimap gave you a fixed bird's-eye view with basic click-to-command support, the PIP minimap is fully zoomable and pannable, operates independently of your main camera, and renders the world with real fidelity — projectiles, explosions, plasma trails, decals, unit health bars, commander nametags, lava and water shaders, and building placement previews are all visible inside it. A **TV mode** automatically pans to areas of activity, and an **Activity button** snaps it to recently placed map markers so you can react to a ping or a nuke warning without losing your current view. Portrait maps auto-rotate to landscape. Minimizing it restores the old minimap behavior if you prefer.

**As a free floating viewport**, PIP can be placed anywhere on your screen as a fully interactive second window into the game world — separate from your minimap entirely. This is where it gets truly unique: Alt+click any player's name in the player list to lock the viewport to their camera. Since PIP is fully interactive, you can issue orders directly into that view. Yes, you can now micro your teammates. For spectators and casters, multiple PIP viewports can cover different parts of the map simultaneously — a genuine broadcast tool built into the game.

## Performance Pass
30+ widgets and gadgets received performance improvements this month. The biggest wins come in large late-game matches - the anti-nuke overlay, shield hit processing, bomber targeting, and transport guard all run significantly cheaper. Frame drops during heavy combat should be noticeably reduced.

## UI and Notifications
- **Big Notifications Update** - improved timing, relevance, and usefulness of in-game messages, with new and reworked notification types throughout
- Added `/dance` emote command for Commanders, removed dances when idling
- Chat rendering fixes and font improvements
- Settings search is now more optimised and with improved readability
- Reclaim info and order menu fixes
- New Wintergaming announcer voicelines added
- Improved potato GPU detection and graphics preset restrictions for low-end hardware

## Unit Control and QoL Fixes
- **Transport factory guard** now supports queueing, and has an option to ignore user-issued commands while guarding - making automated ferry lines more reliable ([#6984](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/6984))
- Fixed units losing their build queue when a multi-selection including a transport received a load or unload command
- Fixed Area Unload dropping units in wrong positions. Units now spread out in the intended evenly-spaced pattern.
- Fixed construction turrets going idle when mixed with constructors in one selection and inserting a build at the front of the queue (space). Turrets now ignore unsupported build commands instead of getting stuck.
- Fixed units continuing to fire when Holdfire or Cloak was issued mid-engagement. Units now stop and cancel their target immediately. Manual attack orders you gave yourself are not affected.
- Fixed DGun losing roughly 30 range against shields due to a timing issue with projectile lifetime. Also fixed DGun shots near the ground or water surface sometimes detonating twice.
- Fixed Area Capture with Ctrl accidentally capturing allied units. Area commands now correctly skip allies.
- Fixed (potentially) Alt+Set Target increasingly snapping to the wrong unit in multiplayer games with many units on the map, even when the cursor was on the intended target.
- Fixed Shurikens and other EMP units being unable to manually target Brimstone. The ship's slightly negative float height on water maps was incorrectly flagged as underwater.

### Balance: Legion, Carriers, Community Patch

- Legion balance changes and bugfixes ([#7003](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/7003))
- **Updated February 2026 Community Balance Patch** - [see full changelog](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/7074)
- Scav balance patch - [see full changelog](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/7075)

**Carrier rework:**
Carrier behaviour received a significant overhaul. Drones no longer gain health as the carrier earns veterancy XP. They no longer decay and die while airborne as long as the carrier is alive. The Set Target command now works correctly on ground positions, letting you direct drones to a specific area. Carriers built from a factory now start with an initial complement of drones rather than launching empty. Drone range has been tightened to their actual stated ranges, closing a range extension exploit.

## For Contributors and Developers
- **CONTRIBUTING.md added** - a formal code contribution guide is now in the repository, covering how to contribute, and including an AI/LLM disclosure section in PR templates ([#5994](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/5994))
- **Lux Package Manager** introduced ([#6005](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/6005))
- Unit test bootstrapping work ([#5902](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/5902))
- Removed the now-superseded "Disable custom widgets" modoption, fully replaced by the Unit Control widget modoption from last month
- `g:UnitAutoTargetRange` artificial callin added
- Helper utilities `table.keys` and `table.ensureTable` added to the Lua library
- Translations updated via Transifex]]></contents>
        <tags>Gameplay, Bugs, Sounds, Balance, Interface, Graphics</tags>
        <pubDate>2026-03-24 06:56:02</pubDate>
      </item>
    
      
      <item>
        <title>New Map: Argent Strata</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/178</link>
        <id>178</id>
        <guid>178/20260310030315</guid>
        <last_updated>2026-03-10 03:03:15</last_updated>
        <description><![CDATA[A frozen island with icey plateaus and multiple pathways to the center. 1v1 SW vs NE. Made by Moose and Beherith.]]></description>
        <contents><![CDATA[A frozen island with icey plateaus and multiple pathways to the center. 1v1 SW vs NE. Made by Moose and Beherith.

https://www.beyondallreason.info/map/argent-strata]]></contents>
        <tags>Maps</tags>
        <pubDate>2026-03-10 03:03:14</pubDate>
      </item>
    
      
      <item>
        <title>Now Available: Random Match Generator</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/177</link>
        <id>177</id>
        <guid>177/20260302021141</guid>
        <last_updated>2026-03-02 02:11:41</last_updated>
        <description><![CDATA[A new button has been added to the singleplayer panel that generates a skirmish on a random map with a sensible amount of AIs. Select AI difficulty for this feature in lobby settings. Also adds AI difficulty level to tooltip when hovering. Thanks to ZainMGit/G_GJeff for the contribution.]]></description>
        <contents><![CDATA[A new button has been added to the singleplayer panel that generates a skirmish on a random map with a sensible amount of AIs. Select AI difficulty for this feature in lobby settings. Also adds AI difficulty level to tooltip when hovering. Thanks to ZainMGit/G_GJeff for the contribution.

https://github.com/beyond-all-reason/BYAR-Chobby/pull/1140]]></contents>
        <tags>Interface, Client</tags>
        <pubDate>2026-03-02 02:11:41</pubDate>
      </item>
    
      
      <item>
        <title>Legion development survey results</title>
        <author>[Z]ecrus</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/176</link>
        <id>176</id>
        <guid>176/20260220004513</guid>
        <last_updated>2026-02-20 12:45:13</last_updated>
        <description><![CDATA[The results for the legion development survey are now available: https://docs.google.com/forms/d/e/1FAIpQLSeNvI79XKw49xQwQOVOEjF8cXnKhwYBwwRkvwUpLvp8Wzrldw/viewanalytics]]></description>
        <contents><![CDATA[Thank you to everyone who participated in the survey, it is now closed and the results are available (https://docs.google.com/forms/d/e/1FAIpQLSeNvI79XKw49xQwQOVOEjF8cXnKhwYBwwRkvwUpLvp8Wzrldw/viewanalytics). 
 There was a mix of expected and unexpected results, and here are some of the highlights:

The majority (71.5%) of respondants prefer to play with legion, and the majority of players who do not play with legion cite a few mechanics (56.6%) or units (73%) as the reason why.

Drones and napalm are the most contentious mechanics, followed by T1.5 mexes, split flagships, and the specialized T2 fighters.  Drones had the highest difference in opinion between the legion and non-legion player groups, with 7.3% of legion players wanting drones reworked/removed compared to 45% of non-legion players.  Napalm had a lower difference, with 16.8% of legion players wanting it reworked/removed compared to 37.8% of non-legion players.  

The most requested mechanic to be added to the factions was specialized T2 fighters, followed by T1.5 mexes and drones.  

Decurion and Medusa are seen as the most overpowered units, with 38.1% and 30% voting too strong compared to 8.2% and 8.7% voting them as too weak.  All of the legion "T0.5" units (Goblin, Alaris, Noctua, Martyr) were voted as too weak.  Respondants voted the Amputator as the weakest unit, with 31.1% voting it as too weak and 4.2% as too strong.  Martyr was the most disliked unit (17.8% voted rework), followed by Phoenix (13.2%).  

These survey results will help to guide future legion development, and there are plans to have a legion balance patch 2 weeks before the upcoming faction wars tournament that should address some of the concerns while giving participants time to prepare.]]></contents>
        <tags>Community, Legion, Balance</tags>
        <pubDate>2026-02-20 12:43:22</pubDate>
      </item>
    
      
      <item>
        <title>New Map: Boreal Falls</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/175</link>
        <id>175</id>
        <guid>175/20260217193226</guid>
        <last_updated>2026-02-17 07:32:26</last_updated>
        <description><![CDATA[1v1, 2v2 or 3v3 battle on ice and snow. NE vs SW. Made by pk76 and Anka.]]></description>
        <contents><![CDATA[1v1, 2v2 or 3v3 battle on ice and snow. NE vs SW. Made by pk76 and Anka.

https://www.beyondallreason.info/map/boreal-falls]]></contents>
        <tags>Maps</tags>
        <pubDate>2026-02-17 07:32:26</pubDate>
      </item>
    
      
      <item>
        <title>February Balance Patch + Fixes (Release 2026.02.14-1) + Legion Survey!</title>
        <author>PtaQ</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/174</link>
        <id>174</id>
        <guid>174/20260216173011</guid>
        <last_updated>2026-02-16 05:30:11</last_updated>
        <description><![CDATA[February Balance Patch (2026.02.14-1) brings targeted unit tweaks, idle auto-heal standardization, QoL improvements to Area Mex queuing. Bonus Legion Balance Survey inside!]]></description>
        <contents><![CDATA[Commanders, we are happy to announce the first post-Season3 balance update that mainly focuses on tweaking some over-tuned and under-tuned values from the seasonal update. Additionally it brings in a standardisation of the idle autoheal/regeneration mechanic. We are holding up with more significant changes until BAR Pro League concludes in March. Read below for full details of what it pertains to.
## Balance adjustments: 
* **Centurion**: Range 330 → 325
* **Hound**: Build time 6230 → 6500
* **Fatboy**: Energy cost 15000 → 20000; build time 28000 → 32000
* **Sprinter**: Range 220 → 230
* **Abductor**: Sight distance 430 → 520
* **Minelayers**: Now transportable by basic transport
* **Mines**: Minimum cloak distance 8 → 30
* **T2 Radars**: Line of sight 820 → 1000; health 355 → 500
* **T1 Radars**: Health 90 → 180
* **Castro**: Metal, energy, and build time cost −13%
* **Lightning weapons (except Thor)**: Firing energy cost unified to −10 (previously −5 to −35)
* **Resurrection Submarines**:
  * Reclaim speed reduction removed → +20% reclaim speed (now matches build power)
  * Energy and metal cost +16%
## Idle-Autoheal Standardisation
This is one of those mechanics that many players may not even be aware of so let us break it down a bit for you: 

Units that have not taken damage for a certain period automatically begin regenerating health. The regeneration rate is high enough that a unit can eventually fully repair itself over the course of a match, but low enough that it is not tactically significant in most scenarios. The purpose of this system is largely aesthetic and quality-of-life driven. For example, after a failed bombing run, you do not need to manually repair a block of slightly damaged Solar Collectors. Given enough time, they will slowly heal on their own.

Previously, however, the stats controlling this behavior were inconsistent and varied between units without a clear reason. In some cases, this idle auto-heal also overlapped with a unit’s standard regeneration ability, which is a separate mechanic. Where appropriate, standard regeneration values have now been adjusted to account for these changes and to ensure consistency.

* **All units**: Idle auto-heal standardised → 5 HP/s after 60 seconds without taking damage
* **T1 AA ships and frigates**: Regeneration removed
* **Rezbots**: Near-instant 5 HP/s idle auto-heal removed → added 5 HP/s regeneration
* **Resurrection Submarines**:  Regeneration 2 HP/s → 5 HP/s (idle auto-heal of 3 HP/s after 10s removed)

[See Github for full details. ](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/6893/changes/9569b066a60606bab2065f2c313a1351e8cc94af)

**Misc. QoL fix**:
Area Mex queued after other build orders will now start with the metal spot closest to the last structure in the queue, then chain subsequent extractors from that point. Previously, it ignored the existing queue and often resulted in inefficient paths.

## Legion Balance Survey
With Legion’s 3D models now complete, we are shifting focus to balance and design to ensure the faction integrates cleanly into vanilla before becoming a default option. There is still significant work ahead, and we will share progress as it continues.

To support this process, we’ve prepared a survey to gather broader feedback on Legion and its unique mechanics. If you’re familiar enough with the faction to provide informed input, please help by filling out this [survey](https://docs.google.com/forms/d/e/1FAIpQLSeNvI79XKw49xQwQOVOEjF8cXnKhwYBwwRkvwUpLvp8Wzrldw/viewform?usp=header) (~10 minutes). Thank you for your attention!]]></contents>
        <tags>Gameplay, Interface, Balance</tags>
        <pubDate>2026-02-16 05:30:11</pubDate>
      </item>
    
      
      <item>
        <title>New Map: Digsite</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/173</link>
        <id>173</id>
        <guid>173/20260212013804</guid>
        <last_updated>2026-02-12 01:38:04</last_updated>
        <description><![CDATA[Fields of flowers and purple forests surround an abandoned excavation site. 5v5 NE vs SW. Made by Moose and IceXuick.]]></description>
        <contents><![CDATA[Fields of flowers and purple forests surround an abandoned excavation site. 5v5 NE vs SW. Made by Moose and IceXuick.]]></contents>
        <tags>Maps</tags>
        <pubDate>2026-02-12 01:38:04</pubDate>
      </item>
    
      
      <item>
        <title>This Month in BAR</title>
        <author>PtaQ</author>
        <posted_to>none</posted_to>
        <link>/microblog/show/172</link>
        <id>172</id>
        <guid>172/20260207143427</guid>
        <last_updated>2026-02-07 02:34:27</last_updated>
        <description><![CDATA[This Month in BAR brings bundled updates from 2026.12.10-1 to 2026.02.07-1, including major UI and mini-map upgrades, new QoL features, Easy-Tax experimental mode, a soft profanity filter, Legion balance changes, and more.]]></description>
        <contents><![CDATA[We’ve had a handful of smaller updates this month that didn’t quite justify their own posts, so we decided to bundle everything together into one bigger update for you! Introducing… This Month in BAR! 
(Releases 2026.12.10-1 – 2026.02.07-1) <@&729715212747276400> 

### UI / UX Improvements and Fixes

- Added team-wide animated indicators for ICBM, Tactical Nuke, and other vertical liftoff missile targets. This informs the entire team where you are aiming, so if they walk their units there, it’s on them! 😄 Indicators also show on the minimap.
- New, improved stealth-countermeasure seismic detector indicators.
- Chat input now supports text selection (with keys) and word jumping when holding CTRL.
- Various notification adjustments and fixes, including improved timing and usefulness of messages, plus a new welcome message from Cephis.
- Added a new color scheme option that paints units according to faction-accurate colors (Armada blue, Cortex red, Legion green). Useful for content creation!
- Requesting resources now plays a sound for the team.
### Unit Control and QoL Features

- Guarding factories with transport units will now automatically pick up newly built units and ferry them to the rally point - [see video](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/4897)
- Added snapping to **Alt + Set Target** commands for enemy units close to the cursor. Displays an indicator line when snapping activates, pointing from the cursor to the unit that will be targeted.
- Factory queue preset management actions are now bindable.
### “Soft” In-Game Chat Profanity Filter Added
- Applied user-side blocking of the most common slurs and harmful terms.
- The filter blocks sending a message that contains problematic language and prints a warning asking you to change or rethink the message.
- To dismiss the warning, you can re-send the same message again.
- The list of words is intentionally small and is not meant to be a definitive standard of what language is acceptable. The moderation team reserves the right to take action against other language used for harassment at their discretion.

### Added New Modoption to Disallow “Unit Control” User Widgets
- This [modoption](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/5430) is intended to replace the currently used **“Disable custom widgets”** modoption in the near future.
- Our original intention was to provide competitive lobbies with a way to ensure that no potentially “cheaty” user-made widgets are used. However, the option has seen very widespread adoption, which has partly reduced both the incentive and the testability of community-created widgets. These widgets are an important entry point for new contributors who want to try their hand at game code.
- To better support community widget development, this replacement modoption will, as a short-term solution, only disable widgets that issue orders to units. These are considered the most obvious source of unfair advantage, for example via automated skirmish scripts. At the same time, it will allow UI and quality-of-life widgets to remain enabled.
### Easy-Tax Game Mode Added

We’ve introduced **“Easy-Tax”**, an experimental standalone modoption aimed at testing simpler rules to address gameplay issues around shareable economy and units highlighted by the community in [this discussion](https://discord.com/channels/549281623154229250/1337861239526785064).
- You can review the up-to-date ruleset [here](https://gist.github.com/RebelNode/43b986f29b9cfacbe95cf634cac25c49).
- Please leave your feedback in [this thread](https://discord.com/channels/549281623154229250/1460179448967073916).
Consider this a quick, testable experiment that may help us shape an official mode or even a future default ruleset.
### New Mini-Map Widget Under Construction
(Experimental: to enable in multiplayer, use the “Picture-in-Picture” modoption)
This one is huge! We’ve added a ton of new functionality to the mini-map widget using the new Picture-in-Picture (PIP) feature.
- The mini-map is now its own fully interactive viewport that supports zooming, panning, following unit movement, and issuing commands, including queuing construction.
- Shows unit build icons in close-up view.
- Weapons and projectiles are now drawn with more detail and clarity.
- Nuke target indicators are drawn on the mini-map as well.

We know BAR players have different gameplay styles regarding mini-map usage. With these changes, its functionality expands significantly. You can now, for example, make it track your Commander or provide a quick, always-available view of your base at a glance.

Picture-in-Picture is a new experimental widget that lets you place additional viewports on the screen with the above (and more) features. Great for casting and tournaments to provide additional views to the audience!
### Miscellaneous
- Important for contributors: created an [AI Usage Policy in the BAR repository](https://github.com/beyond-all-reason/Beyond-All-Reason/blob/master/AI_POLICY.md).
- Legion balance patch – [see changelog](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/6712/changes/943d3d4b16c73d4f5b8dabb86426dc6aa128f1ac).
- Corrected Thermite build time and Gunslinger range indicator.
- New improved running animation for Sprinters.]]></contents>
        <tags>Moderation, Widgets, Graphics, Gameplay, Bugs, Balance, Legion, Interface</tags>
        <pubDate>2026-02-07 02:34:27</pubDate>
      </item>
    
      
      <item>
        <title>BARbarianAI difficulty profile now visible in display name</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/171</link>
        <id>171</id>
        <guid>171/20260129222011</guid>
        <last_updated>2026-01-29 10:20:11</last_updated>
        <description><![CDATA[A new feature has been added that displays the difficulty profile of the BARb AIs next to their name in the lobby. Thanks to Arcadiyyyyyyyy for the contribution.]]></description>
        <contents><![CDATA[A new feature has been added that displays the difficulty profile of the BARb AIs next to their name in the lobby. Thanks to Arcadiyyyyyyyy for the contribution.

https://github.com/beyond-all-reason/BYAR-Chobby/pull/1118]]></contents>
        <tags>Interface, Client, AI</tags>
        <pubDate>2026-01-29 10:20:10</pubDate>
      </item>
    
      
      <item>
        <title>Now Available: Individual and Average OS display in lobby tooltip</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/170</link>
        <id>170</id>
        <guid>170/20260129182836</guid>
        <last_updated>2026-01-29 06:28:36</last_updated>
        <description><![CDATA[A new feature has been added that displays individual OS values, and the room average, in the tooltip when hovering over a lobby in the battle list. This feature only works when &quot;Show OS&quot; is enabled in lobby settings. Thanks to G_GJeff for the contribution.]]></description>
        <contents><![CDATA[A new feature has been added that displays individual OS values, and the room average, in the tooltip when hovering over a lobby in the battle list. This feature only works when "Show OS" is enabled in lobby settings. Thanks to G_GJeff for the contribution.

https://github.com/beyond-all-reason/BYAR-Chobby/pull/1113]]></contents>
        <tags>Client, Interface</tags>
        <pubDate>2026-01-29 06:28:36</pubDate>
      </item>
    
      
      <item>
        <title>Update on the recent servers instability</title>
        <author>PtaQ</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/169</link>
        <id>169</id>
        <guid>169/20260105153319</guid>
        <last_updated>2026-01-05 03:33:19</last_updated>
        <description><![CDATA[Recent server outages are caused by several software issues, not a single failure, and are currently under investigation. We are improving diagnostics and fixing issues as they are identified, but cannot yet guarantee full stability. Read more for details.]]></description>
        <contents><![CDATA[We would like to discuss the recent increase in server outages.  We would like to clarify what we know so far.

First of all, there is not a single definitive root cause and we unfortunately can’t give you guarantees about the stability of the system. We know it’s a software issue.

Over the past one to two months we have identified two, possibly three, distinct issues that are currently being investigated. One of them involves the server CPU reaching its limits at seemingly random times, though it happens more often during peak activity. More recently, we have also observed a new type of issue with a different technical signature.

We are investigating all of these. So far, much of the work has focused on adding proper telemetry and diagnostic tooling to our infrastructure. Until recently, the server's stability was satisfactory, which meant we had little immediate need for deep diagnostics and therefore limited visibility when these problems began to appear.

At this point we have not yet identified a single root cause responsible for the crashes. It seems to get triggered by high player counts which causes a series of different failures to spread across the system without a single root cause standing out. With better observability we are identifying new bugs and resolving them one by one. 

Fingers crossed, and thank you for your patience. :fingers_crossed: 
### Some Frequently Asked Questions: 
#### 1) If I get into a game and the server crashes, will my game be interrupted?
No. Game servers and lobby servers are separate. Once a game has started, it will not be interrupted by a lobby server outage.
#### 2) Is Beyond All Reason being DDoS’d?
Based on our analysis so far, this seems unlikely. That said, we cannot fully rule it out yet.
#### 3) Are the servers running in PtaQ’s bedroom?
No. In fact, they are not. We use standard, professional hosting services.
#### 4) How can I help?
We could directly benefit from day-one experience with running Erlang/Elixir applications in production, debugging them, and knowing what to integrate for better visibility.
If you have other related skills, head to https://beyond-all-reason.github.io/infrastructure/contributing/.
#### 5) Does that mean BAR can’t grow anymore?
No. It is worth noting that all of the above refers to our currently used, legacy infrastructure. In the longer term, the biggest improvement will come from shipping the new client together with Tachyon, which simplifies the overall system architecture. This is not a short-term fix, but it represents the largest long-term payoff in terms of stability and maintainability. Balancing how much effort we want to spend on the parts of the code base we want to deprecate versus investing into the new architecture is challenging.
#### 6) You didn’t actually tell what the fixed issues were!
Okay, okay, you want some technical details of what we fixed so far I guess:
- High lock contention in metrics library we integrated causing many operations to time out and system fail over at high load
- We allowed a few too many commands for not logged in users which triggered unexpected code paths, including unnecessarily fetching and parsing of hundreds of MiBs of JSON from database]]></contents>
        <tags>Infrastructure, Lobby servers</tags>
        <pubDate>2026-01-05 03:32:49</pubDate>
      </item>
    
      
      <item>
        <title>New Starfall Model</title>
        <author>ZephyrSkies</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/168</link>
        <id>168</id>
        <guid>168/20251228042529</guid>
        <last_updated>2025-12-28 04:25:29</last_updated>
        <description><![CDATA[Hello all &lt;@&amp;1251086136521130016&gt;s! The Starfall has received a new model to replace its Cortex-textured placeholder.]]></description>
        <contents><![CDATA[Hello all <@&1251086136521130016>s! The Starfall has received a new model to replace its Cortex-textured placeholder. It has many new bells and whistles, a new windup mechanic, a new chargeup sound effect, and many new lights and effects, such as ejecting artillery shells from the turret chamber. The mobile anti-nuke is the last unit that needs a bespoke Legion model for faction completion, and is being actively worked on right now by a volunteer artists.]]></contents>
        <tags>Legion, Models</tags>
        <pubDate>2025-12-28 04:23:39</pubDate>
      </item>
    
      
      <item>
        <title>Gridmenu hotkey modifiers are now configurable</title>
        <author>RebelNode</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/167</link>
        <id>167</id>
        <guid>167/20251027155303</guid>
        <last_updated>2025-10-27 03:53:03</last_updated>
        <description><![CDATA[Gridmenu hotkey modifiers are now configurable]]></description>
        <contents><![CDATA[I wanted to start using grid hotkeys more, but I had this issue that my build order is usually something like 2 cons -> 5 grunts -> 2 cons -> 100 thugs. With gridkeys you could only queue 5 units at once by holding shift. By clicking it's easy to queue 100 units with ctrl-shift-click.

Ctrl-modifier for hotkeys is -1 so that you can remove certain units from queue, but I never use that since it's easier to just drop the whole queue with G hotkey. So I did some work to make the modifier keys configurable and now you can queue 100 units with a single hotkey press if you want. You can find the setting under Control -> Hotkeys ingame.]]></contents>
        <tags>Gameplay</tags>
        <pubDate>2025-10-27 03:53:02</pubDate>
      </item>
    
      
      <item>
        <title>New Player OpenSkill Ratings Are Now Being Hidden</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/166</link>
        <id>166</id>
        <guid>166/20251015165933</guid>
        <last_updated>2025-10-15 04:59:33</last_updated>
        <description><![CDATA[To reduce confusion with how the balancing system works, new player OpenSkill Ratings are now hidden.]]></description>
        <contents><![CDATA[To reduce confusion with how the balancing system works, new player OpenSkill Ratings are now hidden. For quite some time now, balancer was treating all new players as if they had 0 OS, but you had no visual feedback on that fact. Well, now you do!

This change should also reduce frustration of new players seeing their rating fluctuate a lot up or down, which is what happens when the system has very little data. We will monitor how this change affects the community, and react accordingly if necessary.]]></contents>
        <tags>Community, Balance, Client, Interface</tags>
        <pubDate>2025-10-15 04:59:33</pubDate>
      </item>
    
      
      <item>
        <title>Two Factor Authentication</title>
        <author>AuroraTheChocobo</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/165</link>
        <id>165</id>
        <guid>165/20251013130420</guid>
        <last_updated>2025-10-13 01:04:20</last_updated>
        <description><![CDATA[You can now enable and manage 2FA at  Account -&gt; Security -&gt; 2FA settings.
You need to scan the QR code with your authenticator app, and enter the 6 digit code to confirm.]]></description>
        <contents><![CDATA[You can now enable 2FA for your account. The option is located under Account -> Security -> 2FA settings. 
To enable it, you need to scan the QR code with an authenticator application, and enter the 6 digit code to confirm it.
It can be disabled from the same page.
In case you lose access to your authenticator application, you can either remove it yourself with a password reset, or request a removal by opening a ticket on our discord. 
Please report issues with the new feature]]></contents>
        <tags>Website</tags>
        <pubDate>2025-10-13 11:41:42</pubDate>
      </item>
    
      
      <item>
        <title>Victory and Defeat game end music is now possible</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/164</link>
        <id>164</id>
        <guid>164/20251130164320</guid>
        <last_updated>2025-11-30 04:43:20</last_updated>
        <description><![CDATA[You can now add Victory and Defeat custom music to your game! Two new folders will be created in your Custom music directory for this purpose, conveniently called &#39;victory&#39; and &#39;defeat&#39;

Official Soundtrack for this new feature will come in the future. Please report any issues regarding this, if you find them.]]></description>
        <contents><![CDATA[You can now add Victory and Defeat custom music to your game! Two new folders will be created in your Custom music directory for this purpose, conveniently called 'victory' and 'defeat'

Official Soundtrack for this new feature will come in the future. Please report any issues regarding this, if you find them.

Fun Poll: Do you use custom music in BAR?]]></contents>
        <tags>Music, Sounds, Modding</tags>
        <pubDate>2025-10-12 01:15:18</pubDate>
      </item>
    
      
      <item>
        <title>Battle Intro Camera Retired, for now.</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/163</link>
        <id>163</id>
        <guid>163/20250819213346</guid>
        <last_updated>2025-08-19 09:33:46</last_updated>
        <description><![CDATA[The idea was cool, but the implementation left quite a bit to be desired. So for now, it&#39;s gone.]]></description>
        <contents><![CDATA[The idea was cool, but the implementation left quite a bit to be desired. So for now, the battle intro camera widget is gone.
We will try to reimplement it in less janky and less user-intrusive way.
We still want the camera to start as showing your startbox, but without the animation that takes control over your view for many seconds.

The whole thing needs more thoughtful implementation. 
Stay tuned, and for now, we're back to what it was before.]]></contents>
        <tags>Interface, Widgets, Bugs, Gameplay</tags>
        <pubDate>2025-08-19 09:31:32</pubDate>
      </item>
    
      
      <item>
        <title>New Battle Intro Camera</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/162</link>
        <id>162</id>
        <guid>162/20251028233540</guid>
        <last_updated>2025-10-28 11:35:40</last_updated>
        <description><![CDATA[New battle intro camera has been added a couple days ago, and your feedback on that has been heard!]]></description>
        <contents><![CDATA[New battle intro camera has been added a couple days ago, and your feedback on that has been heard.

The intention behind adding this camera animation is to help people with finding their starting position, as well as fix their camera after they've been messing with it too much in previous matches.

However, we've heard from multiple people that this is "breaking their prefered camera position" and "they don't like camera control being taken away at the start", so within the next update, in the Controls settings, you will be able to find 2 toggles. One for resetting the camera every match, and another for the animation. That was you can preserve your desired camera angles and remove the animation at the start, without sacrificing the bugfixes that the new widget brings to the table!

If you cannot see the option (After the new update gets released), make sure your options menu is switched to show Advanced settings (Top Right of the options menu).

(And now i'm gonna try to use the Poll feature of the microblog and probably fail miserably)

What do you think about this new animation?]]></contents>
        <tags>Gameplay, Interface, Bugs, Widgets</tags>
        <pubDate>2025-08-15 06:26:47</pubDate>
      </item>
    
      
      <item>
        <title>New QoL Feature Arrives + Spotlight on a Few Older Widgets</title>
        <author>SuperKitowiec</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/161</link>
        <id>161</id>
        <guid>161/20250813175556</guid>
        <last_updated>2025-08-13 05:55:56</last_updated>
        <description><![CDATA[Flameink added a new action that lets you set a persistently targeted unit type - read on for a link to the video presentation. Also, a reminder that Factory Quotas and Quick Share Unit exist.]]></description>
        <contents><![CDATA[### Set persistently targeted unit type by Flameink

All units of the same type (i.e. all Starlights if you click on Starlight) will be automatically set-targeted when they come into range of the ordered units. Clear target/other set target commands will cancel this behavior.

Usage: **_Alt + set target + click on a unit_**

[Video showcase here](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/5619)

### Older widgets spotlight
_These are around for some time but I don't think they were ever announced in any way_

#### Factory Quotas by hihoman23
This widget lets you set certain quotas for each unit type in the factory build menu, which are unit minimums. This means that the factory will queue new units of this type until the quota is fulfilled. These quotas are per-factory. The way you can set the quotas is by toggling a toggle, that tells the build menu to set quotas instead of setting the queue. The toggle will reset to setting the queue every time the selection is changed.

Priority is handled like this, from the highest to the lowest priority:

- Alt-queued units
- Units from factory quotas  
  - Quotas that have the most units missing from the quota (in percentage)
  - Quotas that have the least units missing from the quota
- Normally queued units (including repeating queue)

The toggle is bound to _**Alt+G**_

Stop production will also cancel quotas.

#### Quick Share Unit by SuperKitowiec
Adds Share Unit command to all units which shares selected units to target player. You can find this action on unit's action bar on the bottom of the screen.

You can bind it to the key (it's not bound by default) in your uikeys.txt. Action is called _**quicksharetotarget**_

[Video showcase here](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/3927)]]></contents>
        <tags>Widgets</tags>
        <pubDate>2025-08-13 05:55:30</pubDate>
      </item>
    
      
      <item>
        <title>Legion T3 &amp; T2 Bots, Vehicles and Air Complete! Naval development begins...</title>
        <author>ZephyrSkies</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/160</link>
        <id>160</id>
        <guid>160/20250624235041</guid>
        <last_updated>2025-06-24 11:50:41</last_updated>
        <description><![CDATA[Attention all &lt;@&amp;1251086136521130016&gt;s, Legion&#39;s entire Tier 3 gantry, as well as tier 2 bots, vehicles, and air is now feature complete, and naval development can officially begin full-force! Read on for more details!]]></description>
        <contents><![CDATA[Hello! As you may have read in the title of this post, Legion's entire T3, T2, and T1 roster for bots, vehicles, hovercrafts, and air, is now complete! There is still room for certain additions and changes to these labs in the future, such as an anti-nuke T2 bot rather than anti-nuke T2 vehicle as an example, but at the very least the core aspects of these labs are feature complete and in day-to-day usage you should no longer see any Cortex placeholders on land-only maps anymore!

To round off this huge effort we had a few units created to get us over this milestone:
- The Myrmidon, a T3 all-terrain armed drone carrier mech (modelled by ZephyrSkies, with concept art done by Johnathan Crimson, Darth Mikey, and Protar)
- The Charybdis, a T3 heatray/salvo rocket hovertank (modelled by Gabs, with assistance from ZephyrSkies and concept art done by Johnathan Crimson and Protar)
- The Eidolon, a T2 spybot (modelled by ZephyrSkies, with concept art done by Phill-Art)
- The Tiresias and Euclid, the T2 mobile jammer and radar bots (modelled by Tharsis and ZephyrSkies)
- The Infestor, the T2 armed self-replicating bot (remodelled and animated by Zath, implementation by Tuerk, with assistance from Tharsis and Protar)

Other changes have been made and/or planned to go in quite soon as well to help flesh Legion out a bit more, such as:
- Converting all drone carriers to a stockpile system (developed by Xehrath)
- Larger balance changes soon to go live in wake of data and insight collected from Nation Wars (curated by Zecrus, Balance Team Lead)
- New and remastered icons for some of Legion's units with even more coming soon (created by ZephyrSkies and IceXuick)
- New voice lines from Allison, Razkharn, and Wintergaming for special Legion units have been recorded and coming very soon!

Now that all land and air-based units are complete, there is only one direction to go: 

# Navy!

Naval development will be much more focused in its scope with core Legion modellers leading the charge alongside a few talented contributors and volunteers. It will be released in larger batches rather than in a piecemeal format as has been the case for Legion for much of its development. Seaplanes are also included in this naval development phase. 

We have some exciting stuff to show you in the near future, but ask for time and patience; people have been waiting for Legion's naval division to get underway for a **long** time, and we want to make sure we deliver it at the highest quality possible to you. Stay tuned!]]></contents>
        <tags>Interface, Sounds, Models, Legion, Graphics, Gameplay, Balance</tags>
        <pubDate>2025-06-24 11:47:04</pubDate>
      </item>
    
      
      <item>
        <title>Legion June Update Megamix!</title>
        <author>ZephyrSkies</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/159</link>
        <id>159</id>
        <guid>159/20250614231842</guid>
        <last_updated>2025-06-14 11:18:42</last_updated>
        <description><![CDATA[Attention all &lt;@&amp;1251086136521130016&gt;s, there have been numerous additions made to Legion so far during the month of June. Read on for more details!]]></description>
        <contents><![CDATA[Hello! There have been numerous changes made to Legion over the month of June, and more to come as the month will close out, so here is a quick update to ensure you're all caught up with what we've worked on for the faction.

# Recent Additions
- T3 Experimental Gantry Remodel (by Protar)
- T2 Advanced Construction Aircraft Model (by ZephyrSkies)
- T2 Whisper Radar/Sonar Aircraft Remodel (by ZephyrSkies)
- T2 Ajax Defensive Fighter Remodel (by ZephyrSkies) [__Was previously referred to as the Legionnaire__]
- T2 Aquilon, an Advanced Anti-Air Bot (by Johnathan Crimson)
- T2 Chimera, a twin-gatling gun + riot cannon T2 pop-up defence turret (by ZephyrSkies) [__Replaces the old Bombardier__]
- T2 Pluto Anti-Air Gatling Turret Remaster (by Tharsis)
- Various Balance Changes added after Faction Wars 3v3 Tournament in preparation for Nation Wars 4v4 Tournament (by Zecrus)
- Legion Cluster rework to standardise damage, spread, and scaling between tiers, can be considered a general buff (by ZephyrSkies and Zecrus)
- Standardised GFX for all ballistic type weapons (shotguns, machine guns, etc) across Legion (by Tharsis)
- New SFX for all ballistic type weapons across Legion (by Tharsis)
- Most of Legion's AO Plates were created or remade (by Beherith)
- Legion's Range Rings were fixed and added to the revamped range indicator visuals (by IceXuick)
- Future Legion Drone Carrier units can utilise stockpiling behaviours (by Xehrath and Zecrus)

# Looking Forward

As Nation Wars closes out, there will be even more changes (some really big!), as well as a Legion T1 Air Units questionnaire for you all next time. Stay tuned!

Thanks for reading, Commanders, and I hope to see you all soon!

– ZS]]></contents>
        <tags>Graphics, Balance, Legion, Gameplay</tags>
        <pubDate>2025-06-14 11:16:00</pubDate>
      </item>
    
      
      <item>
        <title>!bSet in Singleplayer!</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/158</link>
        <id>158</id>
        <guid>158/20250605211658</guid>
        <last_updated>2025-06-05 09:16:58</last_updated>
        <description><![CDATA[The `!bset` command now works in Singleplayer!
Now the shared sets of !bset commands can be pasted into the formerly useless Singleplayer Chat, and be set in your Advanced Options!]]></description>
        <contents><![CDATA[The `!bset` command, called whenever you change an advanced option in a multiplayer lobby, now works in Singleplayer!


# What does this mean for you?
Previously when you wanted to share a set of options with another user, they would either have to use a Multiplayer Lobby, be guided through adding your options pre-set to their ones, or enter them one at a time.

Now the shared sets of !bset commands can be pasted into the formerly useless Singleplayer Chat, and be set in your Advanced Options!


This also means that some hidden options, such as the extra tweakdefs1..9 and tweakunits1..9 are more accessible, albeit still hidden from the advanced options panel.

Just like in multiplayer, pasting in new line separated `!bset` commands should set multiple options.]]></contents>
        <tags>Client, Interface, Modding</tags>
        <pubDate>2025-06-05 09:16:58</pubDate>
      </item>
    
      
      <item>
        <title>Legion T1 is now complete!</title>
        <author>ZephyrSkies</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/157</link>
        <id>157</id>
        <guid>157/20250518024351</guid>
        <last_updated>2025-05-18 02:43:51</last_updated>
        <description><![CDATA[Attention all &lt;@&amp;1251086136521130016&gt;s, Legion T1 is now (practically) complete + a feedback form for T1 Vehicles!]]></description>
        <contents><![CDATA[Hello! I am extremely pleased to announce that (with some key exceptions) nearly all tier 1 units, ranging from units to structures, have been fully modelled and merged into the game! You might have seen a lot of these in play in today's Faction Wars Qualifiers!

# Recent Additions
There have been a few models added to the roster recently since the last microblog update, let's list them out quickly:
- T1 Juno Launcher
- T1 Floating Energy Converter
- T1 Underwater Metal Storage
- T1 Tidal Generator (By EnderRobo and based on concept art by Protar)
- T1 Underwater Geothermal Powerplant (heavily based on the land geothermal plan by Tharsis)
- T1 Underwater Energy Storage
- T1 Offshore Hovercraft Platform
- T1.5 Amphibious Complex (partially worked on by Tharsis)
- T1 Shark's Teeth Wall (by Tharsis)
- T1 Phobos Close-quarters Raider Bot (renamed from Centaur, by Tharsis and based on concept art by Phill-Art)
- T1 Zagreus Resurrection Bot
- T1 Toxotai Light Anti-Air Bot
- T2 Hoplite Fast Assault Raider Bot (renamed from Strider, by Tharsis)
- T2 Thanatos Long-Range Salvo Missile Launcher Bot (by Tharsis)

Whew, that was a lot, and there will be more to come for sure! T2 bots is very close to being finished, T2 air even more so, and there's only a handful of T2 structures and T3 units left. We're getting close! However, you might be asking, why is it **almost** complete but not fully? The reason is navy and seaplanes are going to need to be tackled together as one whole project within Legion, and thusly they cannot be handled yet until the rest of air and land units are completed in all 3 tiers. We hope you understand and are patient as we inch ever closer to this faction's completion!

# Legion T1 Vehicle Feedback Form
There is a new feedback form as a followup for the T1 Bot feedback form that was briefly posted on the discord last month. This one is a little deeper and offers more degrees of choice to rate the Legion T1 vehicles in terms of effectiveness and ease of use. Your feedback is vital for helping us understand how Legion units are being received by the community from a mechanical standpoint!
Results for these forms are often posted in the #legion-faction chat inside the Discord, but a full one for all of T1 will be presented later when all T1 labs are accounted for.
You can find the link to the form here: https://forms.gle/kDuaFeZ4XxHxw3Hw8

Thanks again for reading, Commanders, and I hope to see you all soon!]]></contents>
        <tags>Gameplay, Legion, Balance, Graphics</tags>
        <pubDate>2025-05-18 02:26:06</pubDate>
      </item>
    
      
      <item>
        <title>Regular release cycle</title>
        <author>Sprung</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/156</link>
        <id>156</id>
        <guid>156/20250513184007</guid>
        <last_updated>2025-05-13 06:40:07</last_updated>
        <description><![CDATA[We&#39;re switching development cycle away from &quot;every change is immediately pushed to everybody, yolo&quot; to a more regular cycle of (reviewed and well-tested) stable release patches]]></description>
        <contents><![CDATA[We're switching development cycle away from "every change is immediately pushed to everybody, yolo" to a more regular cycle of (reviewed and well-tested) stable release patches. Note that contributions are still accepted anytime, they just won't get immediately sent out to the world. We're still ironing out the details, both technical and organisational (release cycle length, how bad of a bug does it take to warrant a hotfix release, etc) but this change in our process should make it easier to make sure that everything that goes into player hands meets a high quality BAR.]]></contents>
        <tags>Infrastructure, Testing</tags>
        <pubDate>2025-05-13 06:40:07</pubDate>
      </item>
    
      
      <item>
        <title>GUI is now at least twice as performant + unit icons are shown with more detail</title>
        <author>[teh]Flow</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/155</link>
        <id>155</id>
        <guid>155/20250510170532</guid>
        <last_updated>2025-05-10 05:05:32</last_updated>
        <description><![CDATA[]]></description>
        <contents><![CDATA[I changed the rendering method for the main persistant GUI elements like buildmenu, order menu, info, playerlist widgets, top bar, ecostats, idle buiders, unit groups and chat. The render their changes to texture instead of GL display lists. Performance increase is for both the cpu + gpu!
Bonus: Uniit icon textures now are more detailed! We can simply make the texturesize for those widgets twice as big, so mipmaps are always good!
(this has been live since 3 weeks ago)]]></contents>
        <tags>Widgets, Interface, Graphics</tags>
        <pubDate>2025-05-10 05:04:00</pubDate>
      </item>
    
      
      <item>
        <title>Updated Visuals for Scavengers</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/154</link>
        <id>154</id>
        <guid>154/20250509103249</guid>
        <last_updated>2025-05-09 10:32:49</last_updated>
        <description><![CDATA[New Scav Clouds, Lights Update adapted for Scavenger units and more!]]></description>
        <contents><![CDATA[New Scav Clouds, Lights Update adapted for Scavenger units and more! 

The Cloud got much higher resolution particles. Scav corruption effect (when your units are getting captured/resurrected by the cloud) got an update and is now scaling to the unit sizes. Lights and Distortions added in the recent graphic update are not also working properly on Scav units, and lots of them have been turned purple to match the aesthetic of the faction!

Huge thanks to IceXuick for all the beautiful hard work he's putting into these details <3]]></contents>
        <tags>Scavengers, Graphics, PvE</tags>
        <pubDate>2025-05-09 10:32:49</pubDate>
      </item>
    
      
      <item>
        <title>AI Namer Update</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/153</link>
        <id>153</id>
        <guid>153/20250429161738</guid>
        <last_updated>2025-04-29 04:17:38</last_updated>
        <description><![CDATA[AI Namer has been updated, fixing the names RNG, and making donators and contributors names appear more often]]></description>
        <contents><![CDATA[AI Namer has been updated, fixing the names RNG, and making donators and contributors names appear more often! You will be able to see way more "humanlike" names in the AI pool now!

Want to see your nickname added to AI Namer pool? Donate at least $40 and include your nickname in the donation message!

Alternatively, you can send a message in #donations development channel, or DM IceXuick or Damgam on Discord with a proof of payment. We will add your nickname as soon as we can after the request has been made.

The process is NOT automated (for now), and we consider it to be your responsibility to request the name addition. 

You can donate to BAR here! https://www.beyondallreason.info/donate-to-bar

The current list of AI names can be found here, so you can track if your nickname was added yet: https://github.com/beyond-all-reason/Beyond-All-Reason/tree/master/luarules/configs/ai_namer]]></contents>
        <tags>AI, Bugs, PvE</tags>
        <pubDate>2025-04-29 04:17:37</pubDate>
      </item>
    
      
      <item>
        <title>New Legion Floating Towers</title>
        <author>ZephyrSkies</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/152</link>
        <id>152</id>
        <guid>152/20250426211553</guid>
        <last_updated>2025-04-26 09:15:53</last_updated>
        <description><![CDATA[Hello again to all &lt;@&amp;1251086136521130016&gt;s, Legion just received a new set of floating turret models. This has no impact on balance or general gameplay for now.]]></description>
        <contents><![CDATA[# New Models
Legion has received 4 new floating turrets/towers to replace Cortex placeholders. These are the Coastal Torpedo Launcher, the Offshore Torpedo Launcher, the Floating Radar Tower, and the Floating Anti-Air Turret.

# No Balance Changes
These new models functionally behave the same way as their counterparts in the other two factions, so gameplay remains the same.

Once again thanks to Protar for the buoy design concept.]]></contents>
        <tags>Graphics, Models, Legion</tags>
        <pubDate>2025-04-26 09:15:53</pubDate>
      </item>
    
      
      <item>
        <title>Legion Cacophony Remaster + Gelasma</title>
        <author>ZephyrSkies</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/151</link>
        <id>151</id>
        <guid>151/20250426033437</guid>
        <last_updated>2025-04-26 03:34:37</last_updated>
        <description><![CDATA[To all &lt;@&amp;1251086136521130016&gt; out there, the Cacophony has been remastered and it has a floating version now.]]></description>
        <contents><![CDATA[The Cacophony has been remastered and remodeled to better fit the overall design aesthetic of Legion (also because it was one of the first models I ever made and I did much better this time around with it). The Cacophony now also has a floating version, dubbed the Gelasma. This is the 2nd floating defence turret for Legion, since the floating Hive was added by Hornet last year. The buoys were based on a concept by Protar.]]></contents>
        <tags>Legion, Models, Graphics</tags>
        <pubDate>2025-04-26 01:44:54</pubDate>
      </item>
    
      
      <item>
        <title>Extra Units Split</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/150</link>
        <id>150</id>
        <guid>150/20250421131249</guid>
        <last_updated>2025-04-21 01:12:49</last_updated>
        <description><![CDATA[Extra Units have been split into Extra Units Pack and Scavengers Units Pack!]]></description>
        <contents><![CDATA[Extra Units have been split into Extra Units Pack and Scavengers Units Pack! From now on, you have a choice of two unit packs.

Extra Units Pack will now contain units that are PvP viable but rejected for various reasons.
Scavengers Units Pack will now contain all the Epic/Mini/Silly units from now on.

This opens up for additional possibilities in terms of adding more silly units to scavs, or more serious units to extra pack!

If you want to get the full, "classic" Extra Units experience, just enable both packs!

As a bonus, Epic Fusion Reactors and Epic Energy Converters, that were previously unavailable in Extra Units, have been added to the Scavengers Pack!

If you think one or the other of the units has been put in the wrong pack, Feel free to drop a suggestion on Discord!]]></contents>
        <tags>Gameplay, Balance, Scavengers</tags>
        <pubDate>2025-04-21 01:12:49</pubDate>
      </item>
    
      
      <item>
        <title>BAR Engine Update!</title>
        <author>PtaQ</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/149</link>
        <id>149</id>
        <guid>149/20250416090616</guid>
        <last_updated>2025-04-16 09:06:16</last_updated>
        <description><![CDATA[New BAR Recoil Engine update brings visual upgrades, gameplay tweaks, and bugfixes. Includes minimap improvements, better pathfinding, and more!]]></description>
        <contents><![CDATA[We are happy to announce BAR's Recoil Engine just received a hot update. This release brings in a ton of improvements and bugfixes as well as some exciting possibilities for BAR developers to utilise. We extracted the player-facing group of changes, read below: 
## Visual and UI Improvements
- New water normal map (waterbump_4tiles.dds) - default water looks better and more dynamic
- Crisper minimap rendering under SSAA (anti-aliasing) - improves UI clarity for players using enhanced graphics
- Minimap rotation in 90° increments - players can rotate the minimap to match map orientation
- Crisper minimap in case of SSAA
- Praise the sun! The shading texture (used by minimap, water, and grass) now tracks sun position changes immediately
- Skybox rotation support - mappers/modders (and possibly settings) can now rotate the skybox
- Terrain normals and shading updates now GPU-side - boosted performance and visual fidelity of terrain lighting
- Font rendering performance improved 
- The new UI framework just got an svg (vector graphics format) support opening up awesome posibilities for future UI rework  
## Gameplay & Mechanics
- Better unit heading on steep slopes - Improves unit orientation when moving on slopes. Most visible with all-terrain units which will no longer "wobble" on bumpy cliffs. 
- Missiles now respect myGravity from weaponDef - fine-tuned missile behavior, can change how they arc or fall. Might be used for more optimal nuke trajectories and such, 
- Switch push-resistant units to trap check system - more robust collision avoidance and pathing for certain units
- Improve handling of HAPFS (Hybrid A Pathfinding)* - units navigate  better around complex terrain/obstacles
- Reduce memory usage of QTPFS Pathfinding system 
- Units being built update their height in real time - visibly smoother construction animations
## Bugfixes 
- Fixed minimap icons revealing whether a building ghost was dead or not.
- Landed aircraft no longer take off when EMP’d
- Waypoint update issues - addressed bugs in unit pathing or waypoint assignments
- Unintended unit group removal during ForcedKillUnit - prevents surprise loss of unit control groups
- improved archives checksumming performance 
- Fixed affinity for HyperThreading cpus
- Server no longer automatically forcestarts the game if there is nobody connected after 30s
- Units no longer removed from groups at the start of their death animation
- Fixed (or at least mostly reduced) a freeze when you remove multiple thousands of units from a factory queue

We are also delighted to welcome new contributors to the wngine team. With this release several new contributors have made their first commits to the engine code: 
@ Moose, @ tizbac., @ ElMorrison, sirkcion.
Thank you guys! 

Let us know if you notice any issues after this update [here](https://discord.com/channels/549281623154229250/1359140466062393515). Pick up "Development" role from "channels and roles UI on Discord. 

For full changelog see: https://beyond-all-reason.github.io/spring/changelogs/changelog-2025-03]]></contents>
        <tags>Engine</tags>
        <pubDate>2025-04-16 09:06:16</pubDate>
      </item>
    
      
      <item>
        <title>Now Available: Parties!</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/148</link>
        <id>148</id>
        <guid>148/20250407235939</guid>
        <last_updated>2025-04-07 11:59:39</last_updated>
        <description><![CDATA[A new tab has been added to the lobby interface for creating/managing parties and accepting/declining invites. This means making parties through the website interface is no longer required. Thanks to MasterBel2 for the contribution.]]></description>
        <contents><![CDATA[A new tab has been added to the lobby interface for creating/managing parties and accepting/declining invites. This means making parties through the website interface is no longer required. Thanks to MasterBel2 for the contribution.]]></contents>
        <tags>Client, Interface</tags>
        <pubDate>2025-04-07 11:59:38</pubDate>
      </item>
    
      
      <item>
        <title>Legion and Random are once again available in the lobby faction selector in multiplayer</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/147</link>
        <id>147</id>
        <guid>147/20250323225319</guid>
        <last_updated>2025-03-23 10:53:19</last_updated>
        <description><![CDATA[You can now assign a Random faction selection while in the battle room to either a human or AI player, or Legion if the `experimentallegionfaction` modoption is enabled. Currently SimpleAI is the most functional when assigned to Legion but there is work being done for Barb AIs to make better use of Legion. Read more:]]></description>
        <contents><![CDATA[You can now assign a Random faction selection while in the battle room to either a human or AI player, or Legion if the `experimentallegionfaction` modoption is enabled. Currently SimpleAI is the most functional when assigned to Legion but there is work being done for Barb AIs to make better use of Legion.

Interested in trying the experimental Barbarian AI improvements including Legion support? Check out the #AI development channel in the official BAR discord.]]></contents>
        <tags>Interface, Legion, Client</tags>
        <pubDate>2025-03-23 10:51:45</pubDate>
      </item>
    
      
      <item>
        <title>Feedback Needed! Faster Map Downloads?</title>
        <author>[T0]Marek</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/146</link>
        <id>146</id>
        <guid>146/20250225152930</guid>
        <last_updated>2025-02-25 03:29:30</last_updated>
        <description><![CDATA[We’re testing Cloudflare Pro to speed up map downloads—fill out this form: https://forms.gle/J2Ah8Uecfh2Zgb6y7 to let us know if it helped; otherwise, we’ll assume it’s not worth keeping.]]></description>
        <contents><![CDATA[On February 16th, we enabled the [Cloudflare Pro plan](https://www.cloudflare.com/plans/pro/) to improve map download speeds for players. Now, we need your feedback—did it make a difference?

Please fill out this form: https://forms.gle/J2Ah8Uecfh2Zgb6y7 to help us decide whether to keep paying for it.

This experiment will run until early April. If we don’t receive enough feedback, we’ll assume it didn’t help and won’t continue spending donation money on it.

Thanks for your support!]]></contents>
        <tags>Maps, Infrastructure</tags>
        <pubDate>2025-02-25 03:29:30</pubDate>
      </item>
    
      
      <item>
        <title>Lobby balance algorithm should now try harder to respect parties</title>
        <author>relaxbro</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/145</link>
        <id>145</id>
        <guid>145/20250218225012</guid>
        <last_updated>2025-02-18 10:50:12</last_updated>
        <description><![CDATA[The default balance algorithm will now pick `split_noobs` as the balance algorithm when there is either at least one party, or at least one new player. This will have the effect that parties are now more likely to be respected. 

`split_noobs` will keep parties together if it can find a combination where team ratings are roughly equal and team standard deviations are roughly equal.

The prior algorithm, `loser_picks` , would only keep parties if it could create a counter party of equal size and roughly equal skill and standard deviation. Often it couldn&#39;t create a counter party which meant disbanding the original party.

If you are still experiencing your party getting disbanded, you can also try the command: `!balancealgorithm respect_avoids`
This algorithm keeps parties together if it can find a combination where team ratings are roughly equal. It doesn&#39;t check for standard deviation so is even more likely to keep parties than `split_noobs`. It also tries to keep players you are avoiding seperate from you - but avoiding takes lower priority than parties.

You can use `$explain` to see what algorithm is being used.]]></description>
        <contents><![CDATA[The default balance algorithm will now pick `split_noobs` as the balance algorithm when there are two teams and either at least one party or at least one new player. This will have the effect that parties are now more likely to be respected.

`split_noobs` will keep parties together if it can find a combination where team ratings are roughly equal and team standard deviations are roughly equal.

The prior algorithm, `loser_picks` , would only keep parties if it could create a counter party of equal size and roughly equal skill and standard deviation. Often it couldn't create a counter party which meant disbanding the original party.

If you are still experiencing your party getting disbanded, you can also try the command: `!balancealgorithm respect_avoids`
This algorithm keeps parties together if it can find a combination where team ratings are roughly equal. It doesn't check for standard deviation so is even more likely to keep parties than `split_noobs`. It also tries to keep players you are avoiding seperate from you - but avoiding takes lower priority than parties.

You can use `$explain` to see what algorithm is being used.]]></contents>
        <tags>Balance, Lobby servers</tags>
        <pubDate>2025-02-18 10:47:18</pubDate>
      </item>
    
      
      <item>
        <title>Legion and Random in the Choose Faction dialog have been temporarily gated to Singleplayer only</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/144</link>
        <id>144</id>
        <guid>144/20250218203453</guid>
        <last_updated>2025-02-18 08:34:53</last_updated>
        <description><![CDATA[An issue was discovered with multiplayer games that had a player or AI with the above chosen as faction swapped to another after pregame placement, and queued buildings removed.]]></description>
        <contents><![CDATA[An issue was discovered with multiplayer games that had a player or AI with the above chosen as faction swapped to another after pregame placement, and queued buildings removed.]]></contents>
        <tags>Legion, Client, Interface</tags>
        <pubDate>2025-02-18 02:43:18</pubDate>
      </item>
    
      
      <item>
        <title>Breaking Change: Widgets folder restructuring</title>
        <author>WatchTheFort</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/143</link>
        <id>143</id>
        <guid>143/20250217183848</guid>
        <last_updated>2025-02-17 06:38:48</last_updated>
        <description><![CDATA[luaui\Widgets folder has had all non-widget Lua files moved out of it]]></description>
        <contents><![CDATA[In order to support rmlui development, the __luaui\Widgets__ folder has been restructured to move any non-widget files out of it.

The following folders have been moved, and any hardcoded paths to them need to be updated in custom widgets:

__luaui\Widgets\Include__ → __luaui\Include__  
__luaui\Widgets\Shaders__ → __luaui\Shaders__  
__luaui\Widgets\Tests__ → __luaui\Tests__  
__luaui\Widgets\TestsExamples__ → __luaui\TestsExamples__

https://github.com/beyond-all-reason/Beyond-All-Reason/pull/4335]]></contents>
        <tags>Widgets, Modding</tags>
        <pubDate>2025-02-17 03:10:41</pubDate>
      </item>
    
      
      <item>
        <title>Legion and Random now available in the Choose Faction dialog</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/142</link>
        <id>142</id>
        <guid>142/20250217025335</guid>
        <last_updated>2025-02-17 02:53:35</last_updated>
        <description><![CDATA[If you enable `experimentallegionfaction` in modoptions, Legion will be added to the menu that appears when you right click a user or AI and Change Faction. This means AIs can now have Legion assigned as their faction, however AI performance when assigned to Legion is still a work in progress, as this faction is still in development.]]></description>
        <contents><![CDATA[If you enable `experimentallegionfaction` in modoptions, Legion will be added to the menu that appears when you right click a user or AI and Change Faction. This means AIs can now have Legion assigned as their faction, however AI performance when assigned to Legion is still a work in progress, as this faction is still in development.]]></contents>
        <tags>Interface, Client</tags>
        <pubDate>2025-02-17 02:53:35</pubDate>
      </item>
    
      
      <item>
        <title>Simple Skirmish interface is now available in the lobby</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/141</link>
        <id>141</id>
        <guid>141/20250207041636</guid>
        <last_updated>2025-02-07 04:16:36</last_updated>
        <description><![CDATA[Simple Skirmish is an interface that offers step-by-step guidance to setting up a Singleplayer game. New installs will get the new simplified mode when the Skirmish button is clicked, existing installs can opt-in via the &quot;Simplified Skirmish&quot; lobby setting. Read more:]]></description>
        <contents><![CDATA[Simple Skirmish is an interface that offers step-by-step guidance to setting up a Singleplayer game. New installs will get the new simplified mode when the Skirmish button is clicked, existing installs can opt-in via the "Simplified Skirmish" lobby setting. It was originally developed for Zero-K and has now been adapted for BAR with the addition of different maplists for each game mode.

The objective is to make setting up a game with good configurations easier to those new to the game who could be overwhelmed by the many choices of the standard battle panel. The interface currently offers 5 game modes, 3 difficulty settings, and 16 maps as potential choices:

["1v1"] = {
		"Onyx Cauldron 2.2.2",
		"Avalanche 3.4",
		"Ravaged Remake v1.2",
		"Shallow Straits v1.0.1",
	},
	["2v2"] = {
		"Fallendell_V4",
		"Isidis crack 1.1",
		"Seths Ravine Remake 1.3.1",
		"Red Comet Remake 1.8",
	},
	["3v3"] = {
		"Eye Of Horus 1.7.1",
		"Charlie In The Hills Remake v1.1",
		"Altair_Crossing_V4.1",
		"Archsimkats_Valley_V1",
	},
	["Scavengers"] = {
		"Ancient Bastion Remake 0.5",
		"Ancient Vault v1.4",
		"All That Glitters v2.2",
		"Requiem Outpost 1.0.1",
	},
	["Raptors"] = {
		"Ancient Bastion Remake 0.5",
		"Ancient Vault v1.4",
		"All That Glitters v2.2",
		"Requiem Outpost 1.0.1",
	},]]></contents>
        <tags>Interface, Client</tags>
        <pubDate>2025-02-06 07:23:04</pubDate>
      </item>
    
      
      <item>
        <title>New Recoil Engine release is LIVE!</title>
        <author>PtaQ</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/140</link>
        <id>140</id>
        <guid>140/20250113155539</guid>
        <last_updated>2025-01-13 03:55:39</last_updated>
        <description><![CDATA[Discover the latest Recoil Engine release featuring the new RmlUI framework, enhancing UI design with web technologies. Explore major graphical upgrades, improved gameplay mechanics, and key bug fixes. Special thanks to the dedicated contributors! Check out the full patch notes for detailed insights.]]></description>
        <contents><![CDATA[## RmlUI framework is here!  
RmlUI has arrived! This powerful GUI framework allows for the creation of widgets using familiar web technologies like HTML and CSS, making it easier for contributors to design and enhance the UI. With RmlUI, we can look forward to more integrated, responsive, and efficient HUD elements. This marks a significant step forward, laying the groundwork for the highly anticipated BAR UI transformation!

## Graphical Improvements
### Improved Terrain and Unit Visuals 
- Enhanced handling of units on steep slope changes for better alignment with terrain. Units will now adjust their position against the terrain in a smoother fashion for a nicer feeling of inertia. 
- Animated flipbook-style textures for weapon projectiles, enabling development of much better visual effects.  
- Added SuperSampling (SSAA).
- Improved mipmap usage for particle effects, reducing graininess at a distance.
- Added a new water texture for improved water visuals.
### User Interface and Debugging 
- Added new debug tools for the game developers to use. 
- Enhanced font fallback mechanisms to ensure consistent text rendering across devices.
- Added a splash screen for archive scanning and checksum calculation.
### Bug Fixes and Stability 
- Fixed crashes related to missing fonts and improper font handling potentially experienced by many Linux users. 
- Addressed graphical issues with decal rendering and sky drawing order.

## Gameplay Improvements
### Unit Mechanics 
- Enhanced radar and targeting mechanics.
- Improved handling of radar drift in unit tracing.
- Enhanced unit icon visibility and customisation.
### Weapon and Projectile Mechanics 
- Introduced `windup` delay for weapons, allowing more customization of firing delays.
- Enabled projectile lifespan manipulation.
### Quality of Life Improvements 
- Removed unnecessary restrictions on out-of-map commands (e.g., attacking or guarding out-of-map aircrafts).
- Improved camera systems, including DollyCam and smooth transitions between camera modes.
### Customization and Modding
- Added Lua call-ins for specific events like unit construction decay.
### Performance and Compatibility
- Optimized pathfinding stability and resource usage.
- Improved clarity and handling of engine version compatibility.
- Modernized backend systems, including better handling of OpenGL and removal of outdated code.

Check the full patchnotes [here](https://discord.com/channels/549281623154229250/724924957074915358/1328296732571734056) for the geek version.]]></contents>
        <tags>Interface, Gameplay, Engine, Modding, Graphics</tags>
        <pubDate>2025-01-13 03:55:39</pubDate>
      </item>
    
      
      <item>
        <title>December Lobby Changes Roundup</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/139</link>
        <id>139</id>
        <guid>139/20241229230656</guid>
        <last_updated>2024-12-29 11:06:56</last_updated>
        <description><![CDATA[This is a summary of significant changes to the lobby made this month. Read the full post for details. Thanks to kroIya, Damgam, FIr3baL, and robertthepie for the contributions.]]></description>
        <contents><![CDATA[**User Interface Improvements:**
- Added the ability to clone AI bots from the right click menu, allowing players to duplicate an AI up to 16 times while preserving all its settings (type, profile, faction, handicap bonus). In Multiplayer, this is limited to 1 clone per click in order to avoid triggering flood protection.
- FIr3baL improved the Replays system to now download any content required to launch, eliminating the need to manually acquire the correct engine version if not available.
- The startbox setting buttons have been replaced with the Startbox Combobox, which contains all previous configurations and a new entry to reset boxes to default settings.
- Add support for small icons in the dropdown menu of comboboxes, you can see this used in the new Startbox ComboBox.
- A "Make Party" button has been added to the Friends page that opens a link in the browser to the server party manager
- Clicking external links in the chat now pulls up a confirmation dialog with the link displayed before opening
- Added a visual separator between player and spectator counts
- Improved map name display with more accurate truncation

**Technical Fixes:**
- Handicap settings will now be remembered and applied by saved Option Presets
- Fix Handicap setting being forgotten if an AI has it's team changed from the right click menu
- Fixed the display of negative handicap values (fixed ingame too!)
- kroIya fixed an issue with incorrect boxes being loaded from the default boxes button in coop mode when playing with one team.
- FIr3baL fixed parsing of avoids
- Fixed !aiprofile being called in Singleplayer mode
- Fixed the skirmish start button to prevent it from launching a game multiple times when spam clicked
- The Login and Host Game buttons now have a short timer before they can be clicked again, in an effort to prevent flood protection from being triggered
- The "Online Only" toggle on the Friends page no longer hides incoming friend requests
- robertthepie fixed the Modoptions Reset Button not working in Multiplayer

**Misc:**
- Damgam added a Christmas version of the track Waystation Theta
- The Modoptions and Handicap Bonuses saved in Options Presets will now not be applied in multiplayer if the player is not Boss, in an effort to prevent the player from being kicked when applying presets.]]></contents>
        <tags>Client, Interface</tags>
        <pubDate>2024-12-29 11:00:51</pubDate>
      </item>
    
      
      <item>
        <title>Links clicked in the lobby chat will now ask for a confirmation before opening the URL</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/138</link>
        <id>138</id>
        <guid>138/20241215011717</guid>
        <last_updated>2024-12-15 01:17:17</last_updated>
        <description><![CDATA[The lobby has received an update that makes it so raw links clicked in the lobby chat will now ask for a confirmation before opening the URL.]]></description>
        <contents><![CDATA[The lobby has received an update that makes it so raw links clicked in the lobby chat will now ask for a confirmation before opening the URL.]]></contents>
        <tags>Client, Interface</tags>
        <pubDate>2024-12-15 01:17:17</pubDate>
      </item>
    
      
      <item>
        <title>Replays will now download any content needed to launch</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/137</link>
        <id>137</id>
        <guid>137/20241207191146</guid>
        <last_updated>2024-12-07 07:11:46</last_updated>
        <description><![CDATA[The lobby has received an update enabling the download of any required content to launch Replays, including correct versions of Game, Engine, and Map. Previously the correct version of engine would have to be manually obtained if not already installed, now this is no longer needed. Thanks to Fireball for the contribution.]]></description>
        <contents><![CDATA[The lobby has received an update enabling the download of any required content to launch Replays, including correct versions of Game, Engine, and Map. Previously the correct version of engine would have to be manually obtained if not already installed, now this is no longer needed. Thanks to Fireball for the contribution.]]></contents>
        <tags>Client, Interface</tags>
        <pubDate>2024-12-07 07:08:58</pubDate>
      </item>
    
      
      <item>
        <title>Openskill win prediction added to player tab in teiserver matches</title>
        <author>relaxbro</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/136</link>
        <id>136</id>
        <guid>136/20241206192126</guid>
        <last_updated>2024-12-06 07:21:26</last_updated>
        <description><![CDATA[Openskill library win prediction added to player tab in teiserver matches. See full post for details.]]></description>
        <contents><![CDATA[Hi all,

We often get questions like “why does my rating change vary from match to match?”. 

Your rating will move more if you have high uncertainty, play smaller team size games, or have results that are unexpected from the Openskill library win prediction.

I’ve added Openskill library win prediction in the match > players tab on teiserver. Login to the website and view a past match at https://server4.beyondallreason.info/battle/ratings. Then click the players tab. You will see win prediction at the bottom.

The team with the higher skill is expected to win. Note that skill is different from match rating. Match rating = max(0, skill - uncertainty)

Higher uncertainty values on either team will cause the prediction to move towards 50%.

The balancer treats new players as being the worst in the lobby. However, the Openskill library rating function considers new players to be average (starting skill of 25). This has the benefit of handling smurfs correctly. But you will also notice some lop-sided win predictions when new players are involved. 

If you have any questions about a past match balance, feel free to ask me as we do have the logs]]></contents>
        <tags>Website</tags>
        <pubDate>2024-12-06 07:21:26</pubDate>
      </item>
    
      
      <item>
        <title>New Map: Claymore</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/135</link>
        <id>135</id>
        <guid>135/20241108215314</guid>
        <last_updated>2024-11-08 09:53:14</last_updated>
        <description><![CDATA[A volcanic island of black sand and sparse vegetation. 5-10-15 player FFA. Made by Moose and Beherith.]]></description>
        <contents><![CDATA[If there's any issues or feedback for the map feel free to make a thread in suggestions.]]></contents>
        <tags>Maps</tags>
        <pubDate>2024-11-08 09:53:14</pubDate>
      </item>
    
      
      <item>
        <title>New features and bugfixes for lobby</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/134</link>
        <id>134</id>
        <guid>134/20241108215710</guid>
        <last_updated>2024-11-08 09:57:10</last_updated>
        <description><![CDATA[The currently used legacy lobby has received several new features and fixes. Thanks to jere500, rlcevg, ryanbennitt, robertthepie, and ZackLK for contributions. See full post for a summary.]]></description>
        <contents><![CDATA[The currently used legacy lobby has received several updates and changes. Thanks to jere500, rlcevg, ryanbennitt, robertthepie, and ZackLK for contributions. This is a summary of recent improvements to Chobby:

 -  jere500 has added an option in the Host Game dialog to create a room that only friends can join, but they can do so without needing to input a password.
 -  jere500 has also created an comprehensive new system for Saving and Loading game configurations and modoptions. It supports current map, startboxes, modoptions, and AI team placement and configurations. You can access this dialog by clicking on the Option Presets button in the battle room.
 -  rlcevg has added Custom AI profiles for the BARbarian AI. There is an included profile called hard_aggressive that is an example of how to create and add custom profiles for BARb without editing engine.
 - ZackLK has fixed the personal records in the Scenario window to show correct best time / resources on all difficulties rather than just normal.
 - robertthepie has improved the modoptions panel with clearer indication showing what options have been changed from default values.
 - ryanbennitt has added the ability to choose whether your password for the game is remembered by the local system or not. The remember password checkbox is located in the Login menu.
 - I (Moose) changed the battle title label in multiplayer lobbies into a clickable button that opens a dialog where you can rename the current battle, or call a vote for your name of choice if not boss. I also centred the label of the current map name, and made some minor changes to the info text on the bottom of the screen to improve clarity and make alignment look better.]]></contents>
        <tags>Bugs, Interface, Client</tags>
        <pubDate>2024-11-08 09:46:07</pubDate>
      </item>
    
      
      <item>
        <title>Desyncs have been reduced, but still there - Working on it</title>
        <author>IceXuick</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/133</link>
        <id>133</id>
        <guid>133/20241016192734</guid>
        <last_updated>2024-10-16 07:27:34</last_updated>
        <description><![CDATA[The last 4-5 days have been giving us a lot more desyncs, which we are trying to identify and fix.]]></description>
        <contents><![CDATA[Just a short heads-up: We are working on the desyncs. We have reverted some of the latest updates to get back to very few desyncs, though this revert has not yet solved all desyncs. We are working on it, so please bear with us.]]></contents>
        <tags>Bugs</tags>
        <pubDate>2024-10-16 07:27:34</pubDate>
      </item>
    
      
      <item>
        <title>New Map: Eclipsed</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/132</link>
        <id>132</id>
        <guid>132/20241001172519</guid>
        <last_updated>2024-10-01 05:25:19</last_updated>
        <description><![CDATA[A macro style map. 1v1 recommended. 2v2s to 5v5s are playable. By AidanNaut.]]></description>
        <contents><![CDATA[See the thread in #suggestions for feedback.]]></contents>
        <tags>Maps</tags>
        <pubDate>2024-10-01 05:25:19</pubDate>
      </item>
    
      
      <item>
        <title>Advanced Options Panel Update Released</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/131</link>
        <id>131</id>
        <guid>131/20240916122523</guid>
        <last_updated>2024-09-16 12:25:23</last_updated>
        <description><![CDATA[A few QoL focused changes have been made to Adv. Options panel.]]></description>
        <contents><![CDATA[A few QoL focused changes have been made to Adv. Options panel. Thanks @robert the pie
- Options that are set to non-default are now marked with red color
- Added and made use of new ability to hide options based on state of other options - Currently only used in the Extra tab where sub-options are hidden if the main one is disabled.
- Toggles are now positioned on the right of the label instead of left
- Shortened/Renamed some options to make them fit the new layout
- Added and made use of new ability to put options in multiple columns - Currently used for Restriction options.
- Added new separator.]]></contents>
        <tags>Client, Interface</tags>
        <pubDate>2024-09-16 12:25:23</pubDate>
      </item>
    
      
      <item>
        <title>Scavengers Update Released</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/130</link>
        <id>130</id>
        <guid>130/20240915121030</guid>
        <last_updated>2024-09-15 12:10:30</last_updated>
        <description><![CDATA[Scavenger Cloud can now resurrect wrecks (lore accurate!), also some fixes to Scav Decoy Commanders]]></description>
        <contents><![CDATA[- Scavenger Cloud can now resurrect (or destroy) features. Any resurrect-able wreck will be resurrected, and any non-resurrect-able feature (like tree, or unit debris) will be slowly damaged and destroyed.

The intention of this change is primarly to clean up the area of wrecks in scav controlled area, but also to make it more consistent with what the cloud is intended to be lore-wise. It's supposed to infect and revive wrecks as well as take over alive units that stay in the cloud for long enough, so now it does both of these things

- Added stockpile limits to Scavenger Decoy Commanders, lower than regular commanders.
- Scav Legion Commander Unit Cannon units now expire after 60 seconds when controlled by the player
- Unit Cannon units with expiration date no longer leave wrecks when killed normally
- Scav Legion Kamikaze Plane now drops a small mine instead of a camera.

Now this is mostly fixes. The most notable change is that when you resurrect a Legion Scav commander, it will no longer work as free'ish unit factory. These units will now expire, just like ones from regular Legion EvoCommanders.

Why wasn't it done this way? Well, one reason. Wrecks. Unit Cannon units self-destruct when expiring, leaving no wrecks, but if they were killed by an enemy, they were leaving a wreck, which could then be resurrected into fully functional unit. That's bad!

The workaround for regular Legion EvoCom is custom clones of a few units which have wrecks removed from them. That worked just fine for them, but Scav version of this commander is making far more types of units, and making clones for all of them wasn't really an option. Well, from now on, all units that were created by unit cannons and have expiration date, will self-d when hit by a shot that would kill them, making them leave no wrecks!

As always, leave feedback on the update on Discord!]]></contents>
        <tags>AI, PvE, Scavengers, Gameplay</tags>
        <pubDate>2024-09-15 12:10:30</pubDate>
      </item>
    
      
      <item>
        <title>Publishing matches datasets</title>
        <author>[T0]Marek</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/129</link>
        <id>129</id>
        <guid>129/20240914165352</guid>
        <last_updated>2024-09-14 04:53:52</last_updated>
        <description><![CDATA[Check out https://github.com/beyond-all-reason/data-processing for how to access the official matches datasets.]]></description>
        <contents><![CDATA[Up until now, anybody that wanted to perform some analytics on BAR matches had to scrape data from the Replays website and clean it up themselves. Now, we start to publish documented, public datasets in easy to consume formats with information about public matches.

Check out [github.com/beyond-all-reason/data-processing](https://github.com/beyond-all-reason/data-processing) to see how to access the data.

The datasets are build twice a week from Teiserver and Replay databases. The processing pipeline is fully open source so if you would like to help extract more fields (currently it's only very basic ones), have any bugs to report, or share more examples on how you use the data, your contributions are very welcome.

We hope this will help with development of improvements to the ranking and balancing but also help quickly answer questions like [How often players pick Armada vs Cortex?](https://www.reddit.com/r/beyondallreason/comments/1ffpmca/comment/lmwe7q4/)]]></contents>
        <tags>Infrastructure</tags>
        <pubDate>2024-09-14 04:53:52</pubDate>
      </item>
    
      
      <item>
        <title>Scavengers Update Released</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/128</link>
        <id>128</id>
        <guid>128/20240909214025</guid>
        <last_updated>2024-09-09 09:40:25</last_updated>
        <description><![CDATA[We have changed a few things about how scavs are handling being overwhelmed by the players.]]></description>
        <contents><![CDATA[With this update we're attempting to address issue that plagues PvE games of both Scavengers and Raptors. We're trying this out in Scavengers first, and if it turns out successful, it will also be implemented to Raptors.

All of you probably know how Scavengers are trying REALLY hard not to let you completely wipe them out of the map. Not anymore. Now they will instead just let you do that, but spawn unprepared boss early if they're down to one spawner. And this solves 2 problems:
- It's very unintuitive that when you push into Scav territory, they just respawn somewhere else like nothing has happened.
- It's very boring for players to just "Spawn Camp" the Scavenger area for, sometimes, a very long time.

Forcing the boss to spawn early will spawn him with less health, while also spawning lower tech "minions", making the whole boss fight easier.
This opens up the door for speedrunning the gamemode!

We will monitor the state of balance after these changes and apply fixes and updates to address any issues that come up. As always, if you encounter any problem, or have a suggestion regarding Scavengers, leave them on our Discord!

Changelog:

Gameplay:
- Beacons no longer try really hard to spawn when scavs are getting overwhelmed
- The amount of beacons spawned during grace period now scales to number of players - 2 of them per player, but with a minimum of 4
- Tier 1 spawn beacons are phased out earlier.
- High tier spawn beacons appear earlier.
- When Scavs are down to one alive beacon, boss is spawned early, with less health, matching the Boss Anger at the time of spawn (If you make him spawn at 76% Boss Anger, he will spawn with 76% health.)

Balance:
- Scav Resurrection units got x4 buildpower buff to make them stand out from other construction units, since all of them can resurrect in their _scav variants.
- Reduced amount of Legion heavy tanks in one of the special squads.]]></contents>
        <tags>PvE, Gameplay, Scavengers</tags>
        <pubDate>2024-09-09 09:38:50</pubDate>
      </item>
    
      
      <item>
        <title>Moose Map Updates</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/127</link>
        <id>127</id>
        <guid>127/20240903223915</guid>
        <last_updated>2024-09-03 10:39:15</last_updated>
        <description><![CDATA[I have released updated versions of Rustcrown Canyon, The Rock Jungle, Crystallized Plains, and Wanderlust focusing on improving pathing clarity and the aesthetics of features. Changelog below.]]></description>
        <contents><![CDATA[# Rustcrown Canyon:
- Improved texture of the Banyan Trees
- Added Kapoks
- Improved texture of the Ferns
- Added descriptions to the Cedar Trees
- Added geovent decals
- All features have had the largest of their type replaced with smaller varieties
- Minor pathing fixes for vehicles on some ramps
- Fixed fog color to blend seamlessly with the sky

# The Rock Jungle:
- Improved texture of the Banyan Trees
- Added Kapoks
- Improved texture of the Ferns

# Crystallized Plains:
- Added crystals
- Maximum height has been increased by 40 elmos
- Heightmap has been edited for consistent pathing along the steep slopes for bots. There are no longer invisible areas where bots can cross the cliffs.
- Fixed fog color to blend seamlessly with the sky

# Wanderlust:
- Improved texture of the Ferns
- Major rework of the north and south hills to remove the hard-to-see bot only ramps, now vehicles can cross from side to side along the north and south edges of the map. The rear hills are now vehicle pathable. 
- Minor edits to the grass map]]></contents>
        <tags>Maps</tags>
        <pubDate>2024-09-03 10:39:15</pubDate>
      </item>
    
      
      <item>
        <title>Scavengers Update Released</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/126</link>
        <id>126</id>
        <guid>126/20240902210650</guid>
        <last_updated>2024-09-02 09:06:50</last_updated>
        <description><![CDATA[We have changed a few things about how scavengers are defending themselves and how they&#39;re spawning in.]]></description>
        <contents><![CDATA[- Cloud Spawner got a bunch of fixes which drastically improved it's consistency. (Big thanks to SethDGamre)
- Spawn Beacons no longer spawn freely at the start of the game. Instead they have big spawn box that is extension of the startbox, and it grows to be the whole map later in the game.
- Defensive Mists are no longer in use.
- Backup squads are now spawned by Spawn Beacons
- Backup squad spawn can be triggered by standing in the cloud, or by damaging unit close enough to a beacon

All these changes are intended to make the scav games a bit more predictable. You're no longer getting scav units spawned out of thin air while roaming around the cloud, and instead you're gonna see the Spawn Beacons spawn units to defend themselves. Besides, you will no longer see Spawn Beacons popping up right at your door or even behind you at the start of the game. The initial spawning will happen on the Scav side of the map, though still quite close to you, so you still have to fight for the land. This change should make it less frustrating to deal with the early scout raids, giving you more time to properly prepare and cover your back.

As always, leave your feedback in the suggestions channel, or the scavengers development channel. I'm expecting some of these changes to have balancing issues, which i'm more than ready to deal with as soon as i'm aware of them.

I'm very much aware of the "Please give us long grace period back" requests, but i'm considering that to be the last resort. I'm gonna do my best to make it more fair and less frustrating to play without adding the grace period, while still accomplishing my goal of scavs requiring you to be more active in the early stages.

But that's it for now, expect more smaller or bigger improvements coming soon. We have something big cooking up for the gamemode, but I will not talk about it until it's certain that it's gonna happen.]]></contents>
        <tags>Gameplay, PvE, Scavengers</tags>
        <pubDate>2024-09-02 09:06:50</pubDate>
      </item>
    
      
      <item>
        <title>Bugfix Engine Release 2577</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/125</link>
        <id>125</id>
        <guid>125/20240813114021</guid>
        <last_updated>2024-08-13 11:40:21</last_updated>
        <description><![CDATA[Just bug fixes for the recent 2572 engine release. Click through the get the details.]]></description>
        <contents><![CDATA[Just bug fixes for the recent 2572 engine release.

- Fixed: units could start walking in circles close to a move order target.
- Fixed: clumps of units getting stuck, forming a circle instead of heading to their intended move command goals.
- Fixed: D-gun and Flaming weapons projectiles bounced off terrain going in unintended directions.
- Fixed: Full-screen setting issue in Ubuntu.]]></contents>
        <tags>Bugs, Engine</tags>
        <pubDate>2024-08-13 08:24:59</pubDate>
      </item>
    
      
      <item>
        <title>Engine Release 2572</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/124</link>
        <id>124</id>
        <guid>124/20240812200635</guid>
        <last_updated>2024-08-12 08:06:35</last_updated>
        <description><![CDATA[The engine was updated recently. Click through to see the details. There are known issues which are also covered.]]></description>
        <contents><![CDATA[**Updates since 2555** 

  

For Players 

- Fixed: crashes introduced in previous release due to out-of-bounds move requests. 

- Fixed: improvement in behaviour around windowed/borderless/full-screen switching. https://github.com/beyond-all-reason/spring/issues/1500 

- Other: Particle performance improvements due to avoiding overdraw around water. https://github.com/beyond-all-reason/spring/issues/1572 

  

  

For Game Devs 

- Added: Warning when trying to view the smooth air-mesh when cheats have not been enabled. https://github.com/beyond-all-reason/spring/issues/1599 

- Added: `{number buildTime, number metalCost, number energyCost} Spring.GetUnitCosts(number unitId)` to get a unit's build details. https://github.com/beyond-all-reason/spring/pull/1586 

- Added: `{number metal, number energy} Spring.GetUnitCostTable(number unitId)` to get a unit's build details. https://github.com/beyond-all-reason/spring/pull/1590 

- Added: `{number damageDealt, number damageReceived} Spring.GetTeamDamageStats(teamId)` to get a team's damage stats. Note that all damage is counted, including self-inflicted and unconfirmed out-of-sight. https://github.com/beyond-all-reason/spring/pull/1596 

  

  

Known Issues 

  

These issues have been resolved and will feature in the next engine patch release:

  

- Fixed to be released: units could start walking in circles close to a move order target. 

- Fixed to be released: clumps of units getting stuck, forming a circle instead of heading to their intended move command goals. 

- Fixed to be released: D-gun and Flaming weapons projectiles bounced off terrain going in unintended directions. 

- Fixed to be released: Full-screen setting issue in Ubuntu.]]></contents>
        <tags>Engine, Bugs</tags>
        <pubDate>2024-08-12 08:04:47</pubDate>
      </item>
    
      
      <item>
        <title>No Rush is back after a short absence.</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/123</link>
        <id>123</id>
        <guid>123/20240812163711</guid>
        <last_updated>2024-08-12 04:37:11</last_updated>
        <description><![CDATA[We&#39;ve heard you, and we&#39;ve delivered. No Rush mode, that used to be an experimental option, has been brought back to life, with new visual indicators!]]></description>
        <contents><![CDATA[We have heard you, and we have delivered. No Rush mode, that used to be an experimental option, has been brought back to life, with new visual indicators, and it's no longer experimental! You can find it under Main options tab now. 

Note: No Rush requires startboxes to function. It will not work in startbox-less FFA games. 
Additionally, Raptors and Scavengers are not affected by this option. They will still be able to attack you, and the new visual indicator will reflect that by not highlighting their startboxes.]]></contents>
        <tags>Gameplay, Graphics</tags>
        <pubDate>2024-08-12 04:37:11</pubDate>
      </item>
    
      
      <item>
        <title>SSAO  and Bloom rewrites</title>
        <author>[teh]Beherith</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/122</link>
        <id>122</id>
        <guid>122/20240809113443</guid>
        <last_updated>2024-08-09 11:34:43</last_updated>
        <description><![CDATA[Better looks, less performance hits!]]></description>
        <contents><![CDATA[## SSAO

Greatly reduced the VRAM usage
Architectural changes:

### Unit stencil texture
- All features and units model bounding boxes are rendered onto a downsized texture, that may be requested and reused by any subsequent pass.

### Gbuffer Fusion pass
- Removed merging of misc tex buffers, saving a fullscreen buffers worth of vram and some gpu load
- Removed merging of map and model normals, saving another fullscreen buffer, since these were also queried only once per fragment in ssao shader
- In the gbuffer fusion shader, map model occlusion is indicated by a positive z in viewpos tex
- The entire gbuffer fusion shader can be turned off, directly sampling the map and model depth buffers, this is most useful when rendering ssao to a downsampled target
### SSAO
The ssao shader samples multiple neighbouring texels when downsampling, to reduce shimmer in the downsampled target.
Random hemispherical samples are now generated across a fibonacci sphere for even surface distribution
Outputs are now:
- RG channel is viewpos xy normals, which is output as zero vector for ground fragments
- B channel is relative depth of fragment
- A is occlusion
### Blur
- Blur shader is now designed to work in a single pair of horizontal and vertical passes, and the dir uniform controls wether it - - should perform its final mixdown
- Blur shader has correct offsets and weights
- Compares the neighbouring normals and depths when blurring
- Identifies samples that are outliers with no similar neighbours 
- Blur shader reuses the SSAO texture in its second pass, saving more vram
- During final mixdown, occlusion is packed into alpha, and brightening (inverse occlusion) is passed into rgb

### Compositing
- A different gl blending operation is used, where the ssao alpha darkens the original image, and the ssao color brightens the original.

## Bloom
- Less VRAM usage
- Fixed shimmering on low qualities
- Uses Pixel Quad Message passing to massively reduce the number of passes and texture samples required
- Wider kernels, smoother looks
- Better performance

## CAS
- Uses Pixel Quad Message passing to massively reduce the number of texture samples

## Unit Stencil API
- For early bailing a lot of near-unit shading stuff. Useable on demand. 

Thaks to @rlcevg for every bit of help. Thanks to @icexuick for tuning SSAO.]]></contents>
        <tags>Graphics</tags>
        <pubDate>2024-08-09 11:34:43</pubDate>
      </item>
    
      
      <item>
        <title>New Construction and Cloak Effects</title>
        <author>[teh]Beherith</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/121</link>
        <id>121</id>
        <guid>121/20240809113258</guid>
        <last_updated>2024-08-09 11:32:58</last_updated>
        <description><![CDATA[We have unified our shader pipelines to use the same rendering path for units under construction and cloaked units as well. This significantly cuts down on the performance overhead of cloaked units, as well as allows for a nicer animation for units under construction.]]></description>
        <contents><![CDATA[We have unified our shader pipelines to use the same rendering path for units under construction and cloaked units as well. This significantly cuts down on the performance overhead of cloaked units, as well as allows for a nicer animation for units under construction.
 
#### Construction Effect
- The construction effect used to use the old engine rendering pipeline meaning that it did not use the custom unit shaders extras like normal mapping.
 
- While this did allow the construction effect to display a wire frame and to use transparency these are no longer usable. This does not look too nice with triangles either, and quads are infeasible. 
 
- Transparency is a no-go, as these are drawn in the opaque pass. 

- The main architectural shift is that instead of an entire separate pipeline and the management of those, we communicate to CUS via unit buffer uniforms.
  - Buildprogress was already present on userDefined[0].x, but is now managed via CUS gadget instead of Healthbars widget.
  - userDefined[1].w contains the 'height' of each unit 

- Construction effect + damage can be applied at the same time

- Deferred buffered contain the expected data for post-effects

#### Selection Effect
Two main selection effects, highlight under cursor and highlight selected have been folded into userDefined[2].z
Effect is controlled via the Selected Units GL4 widget, which draws the selection platters

- Features can now be mouseovered
- Selection highlight obeys damage based shading displacement

#### Cloak effect
The cloak effect has been moved to a cloakTime userDefined[3].x unitbufferuniform. Contains the game frame cloak started/ended. 

- Disabled LUPS cloak
- Looks decent-ish 



### Misc
- CUS GL4's autoReload.enabled allows automatically reloading and recompiling shaders from disk when changed via external editor
- CUS shaders split out into vert.glsl and frag.glsl files
- HighlightUnit API can be considered deprecated, as no more official consumers exist within game
- CUS GL4 now handles alpha blending (but beware of draw order issues!)]]></contents>
        <tags>Graphics</tags>
        <pubDate>2024-08-09 11:32:58</pubDate>
      </item>
    
      
      <item>
        <title>Experimental Modoptions phase-out</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/120</link>
        <id>120</id>
        <guid>120/20240809111856</guid>
        <last_updated>2024-08-09 11:18:56</last_updated>
        <description><![CDATA[We have cleaned up Experimental Options tab from old tests.]]></description>
        <contents><![CDATA[We have cleaned up Experimental Options tab of old test options that are awaiting further development or decisions. From now on, this is how experiments will be playtested out. Whenever there is something new being tested, we will put it up there, test it out, collect feedback, and hide it again. This is how it should've been done from the start, and we're fixing that mistake now. Sorry for any inconvience if you were regular user of any of these experiments.]]></contents>
        <tags>BAR Organisation, Testing</tags>
        <pubDate>2024-08-09 11:18:56</pubDate>
      </item>
    
      
      <item>
        <title>Changes to Voting and Boss Mode</title>
        <author>DeviousNull</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/119</link>
        <id>119</id>
        <guid>119/20240808192638</guid>
        <last_updated>2024-08-08 07:26:38</last_updated>
        <description><![CDATA[We have some pretty significant changes to how lobbies are managed in the pipeline: more settings can now be voted on, and there are changes to how boss-mode is enabled. Here&#39;s what you need to know...]]></description>
        <contents><![CDATA[# New commands to change settings via vote
Previously, a lobby's boss was the only one who could change the lobby's name, skill-rating/rank restrictions, and a few other settings.

New commands have been added to allow non-boss players to vote on all of those settings (check `!help` for more info):
- !rename <name>
- !welcome-message <message>
- !minratinglevel [rating]
- !maxratinglevel [rating]
- !setratinglevels [min] [max]
- !resetratinglevels
- !minchevlevel [rank]
- !maxchevlevel [rank]
- !resetchevlevels
- !gatekeeper <restriction>
- !meme <meme>
- !balancealgorithm <algorithm>

Please note that all of the above commands begin with an "!", while the old boss-only commands began with a "$". If a boss uses any of these commands, then no vote is required.

# Boss mode changes
Now that there are no settings that require a boss to apply, boss mode isn't required for day-to-day management of ongoing lobbies.

And, since boss mode is no longer de-facto-mandatory, we've added a requirement for when it can be enabled: players can now only enable boss mode **when they are the only player in that lobby**.

With this change, boss mode can still be used to conveniently set up a new lobby or to manage an organized lobby (such as for tournaments or pre-made groups), but the more open/public lobbies will remain open.

# When will this happen?
The new commands are already available for most lobbies, and any lobbies which do not recognize them yet should update themselves whenever they are completely empty.

The boss changes have just started to go out. These changes will come into effect whenever a lobby becomes completely empty, so it may take a few days for all lobbies to start using the new boss requirements.]]></contents>
        <tags>Lobby servers</tags>
        <pubDate>2024-08-08 07:26:37</pubDate>
      </item>
    
      
      <item>
        <title>Lobby ring sound replaced.</title>
        <author>Fireball</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/118</link>
        <id>118</id>
        <guid>118/20240722215249</guid>
        <last_updated>2024-07-22 09:52:49</last_updated>
        <description><![CDATA[As long as the in-game ring sound was the same as inside lobby, you couldn&#39;t determine if the ring was from the demo, that you watch, or from people in lobby, that are waiting for your readiness.]]></description>
        <contents><![CDATA[As long as the in-game ring sound was the same as inside lobby, you couldn't determine if the ring was from the demo, that you watch, or from people in lobby, that are waiting for your readiness.]]></contents>
        <tags>Client</tags>
        <pubDate>2024-07-22 09:52:49</pubDate>
      </item>
    
      
      <item>
        <title>[Chobby] Replays show more info when hovering</title>
        <author>Fireball</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/117</link>
        <id>117</id>
        <guid>117/20240720192705</guid>
        <last_updated>2024-07-20 07:27:05</last_updated>
        <description><![CDATA[We extended the replay page to show all players of a demo when hovering. (Initial PR by robert the pie)]]></description>
        <contents><![CDATA[When hovering a replay it will show more details now:
- all players of the demo
- grouped by team
- sorted by skill
- shows rank, skill and country of players (uses existing settings "show rank"  etc.)
Thanks to robert the pie for initial PR!]]></contents>
        <tags>Client</tags>
        <pubDate>2024-07-20 07:27:05</pubDate>
      </item>
    
      
      <item>
        <title>**Engine 2555 Ready for Testing**</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/116</link>
        <id>116</id>
        <guid>116/20240712084949</guid>
        <last_updated>2024-07-12 08:49:49</last_updated>
        <description><![CDATA[A new engine version is available on the test servers, please give it a try and let us know if it is okay. Please read through the list of changes below and test as many of these changes]]></description>
        <contents><![CDATA[**Engine 2555 Ready for Testing**

A new engine version is available on the test servers, please give it a try and let us know if it is okay.

Please read through the list of changes below and test as many of these changes 

_You can test the latest release candidate by selecting “Engine Test”, under Config, on the Launcher, click Update, then click Start._

Note: please do remember to !stop the server once you are done testing on it, as it sometimes doesnt exit headless.

**Updates since 2511**

For Players

- Fixed: larger units sometimes didn't push smaller units are much as they should. (as part of https://github.com/beyond-all-reason/spring/pull/1358)
- Fixed: HAPFS paths could lead water-surface travelling units to get stuck on underwater structures when in shallow water. https://github.com/beyond-all-reason/spring/pull/1402/
- Fixed: Units that can move directly to a building (to repair/reclaim etc) will move straight there. https://github.com/beyond-all-reason/spring/issues/1470
- Fixed: Mouse warping issue in Wayland on Linux. https://github.com/beyond-all-reason/spring/pull/1509

- Other: Improved CPU performance of terraforming activities.https://github.com/beyond-all-reason/spring/pull/1360/
- Other: Improved CPU performance of unit movement. https://github.com/beyond-all-reason/spring/pull/1382 and https://github.com/beyond-all-reason/spring/pull/1370
- Other: Improved CPU performance of QTPFS by rebuilding only damaged parts of paths. https://github.com/beyond-all-reason/spring/pull/1550


For Game Devs

- Added: `Spring.GetUnitPhysicalState(number unitID)` to get the unit's PhysicalState bitmask. https://github.com/beyond-all-reason/spring/pull/1528
- Added: `system.smoothMeshResDivider` and `system.smoothMeshSmoothRadius` to control the behaviour of the Air Smooth Mesh. https://github.com/beyond-all-reason/spring/pull/1341
- Added: `Spring.RebuildSmoothMesh()` to force an immediate build of the complete Air Smooth Mesh. https://github.com/beyond-all-reason/spring/pull/1342
- Added: exit-only and no-build yardmap square types. https://github.com/beyond-all-reason/spring/issues/453

- Added: `float separationDistance` to unitDef, so that units try to keep separationDistance elmos away from each other. This avoids having to increase the unit's movedef size, which has other additional consequences. https://github.com/beyond-all-reason/spring/pull/1358
- Added: `bool overrideUnitWaterline` to move defs. When set to false, the waterline of unitDefs will be used instead of the move defs' version. This should allow units such as raptor models to float at the the intended height in the water; however, having `overrideUnitWaterline` set to false forces the unit to use a simplier and less accurate form of collision in the water. https://github.com/beyond-all-reason/spring/pull/1414
- Added: New Lua functions `GetUnitArrayCentroid` and `GetUnitMapCentroid`. https://github.com/beyond-all-reason/spring/pull/1507

- Added: Support for directional pathing in HAPFS. https://github.com/beyond-all-reason/spring/pull/1402/
- Added: Support for shortest route pathing in QTPFS. https://github.com/beyond-all-reason/spring/pull/1402/

- Fixed: `Spring.UnitArrivedAtGoal` stack issue with warning spam. https://github.com/beyond-all-reason/spring/pull/1546
- Fixed: Prevent factories having canAssist set. https://github.com/beyond-all-reason/spring/issues/1065]]></contents>
        <tags>Engine, Testing</tags>
        <pubDate>2024-07-12 08:49:15</pubDate>
      </item>
    
      
      <item>
        <title>Game Design Team Update</title>
        <author>PtaQ</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/115</link>
        <id>115</id>
        <guid>115/20240703142256</guid>
        <last_updated>2024-07-03 02:22:56</last_updated>
        <description><![CDATA[Update on replacing one of the members.]]></description>
        <contents><![CDATA[We regret to announce that Jazcash  has stepped down from his role in the Game Design Team to concentrate on the new lobby development. Working with Jazcash has been an incredible experience, and he brought so much heart and insight to the team. ❤️

But we also have some exciting news! We have already found and, together with the admin team, elected his replacement - @RebelNode. We are thrilled to welcome Rebel to our ranks. As a renowned pro player and the creator of numerous beloved competitive maps, we are confident that his expertise will greatly enrich our discussions. Welcome aboard, Rebel!]]></contents>
        <tags>BAR Team members</tags>
        <pubDate>2024-07-03 02:22:17</pubDate>
      </item>
    
      
      <item>
        <title>Now lobby can show multiple boss-crowns.</title>
        <author>Fireball</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/114</link>
        <id>114</id>
        <guid>114/20240630073043</guid>
        <last_updated>2024-06-30 07:30:43</last_updated>
        <description><![CDATA[Now lobby stores the boss-tag per player not per battle.]]></description>
        <contents><![CDATA[Lobby is now capable of showing multiple bosses (crowns).
The initial implementation assumed that there could only be 1 boss per battle.
Lobby now stores the boss-tag per player not per battle.

The user dropdown menu was adjusted to show options dependent on current user's boss status, bossed lobby and if the selected user is bossed.]]></contents>
        <tags>Client</tags>
        <pubDate>2024-06-30 07:30:43</pubDate>
      </item>
    
      
      <item>
        <title>Website: Map sorting &amp; CoC index</title>
        <author>IceXuick</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/113</link>
        <id>113</id>
        <guid>113/20240627143304</guid>
        <last_updated>2024-06-27 02:33:04</last_updated>
        <description><![CDATA[The website just got some small QoL improvements. You can now sort maps based on their (first) publications date. And the CoC is a bit better structured and has an index now.]]></description>
        <contents><![CDATA[## Map sorting
You can now sort maps based on their publication-date. This gives you an easy option to check the latest/newest maps + optionally use other filters that suit your favorite play-style. You can also reverse it, and change it back to alphabetical.

## Code of Conduct Index
We've also added an index for the code of conduct (CoC).
Makes it a bit easier to link/find specific items.

Check the [maps page](https://www.beyondallreason.info/maps)
Check the [updated CoC](https://www.beyondallreason.info/code-of-conduct)]]></contents>
        <tags>Website</tags>
        <pubDate>2024-06-27 02:33:04</pubDate>
      </item>
    
      
      <item>
        <title>Cortex Dgun Fixed</title>
        <author>Hornet</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/112</link>
        <id>112</id>
        <guid>112/20240617200749</guid>
        <last_updated>2024-06-17 08:07:49</last_updated>
        <description><![CDATA[In a slightly belated update, Cortex players will likely have sometimes noticed that their Dgun appeared to simply ... not happen. This has now been fixed.]]></description>
        <contents><![CDATA[In a slightly belated update, Cortex players will likely have sometimes noticed that their Dgun appeared to simply ... not happen.  The exact pattern of occurence was slightly erratic, but in short, there was a reasonably high chance that a dgun fired just outside of the commander's range would simply stall out, infinitely waiting for the command to occur, due to an erratic aiming script.  The result was a highly frustrating bug that could easily lose games when it occurred.

After KroIya discovered the pattern to reliably reproduce the bug, I was finally able to fix it, and along with an older update of mine that gave the Cortex Dgun 12 more range (to account for the range lost by the Cortex commander model having his arm closer to the body), this should put the Dgun back on equal footing with the Arm edition.

In other Dgun news, I've also restored the Legion commander back to a more normal state, swapping the napalm back to a conventional Dgun, as it was too problematic for testing and balance to have the commander acting so differently.

The levelling up mechanic is also gone, but cloaking has returned.  As interesting as the gameplay changes from the alternative mechanics were, it made 1v1s too fragile to endgame comsniping, and the lack of crowd/T3 control from the Dgun threat was a significant problem for Legion. The torpedo and antiair missile remain for now though, pending the full Commander remodel we will be undertaking soon.]]></contents>
        <tags>Cortex, Bugs, Gameplay</tags>
        <pubDate>2024-06-17 08:04:59</pubDate>
      </item>
    
      
      <item>
        <title>Update on PvE Modoptions Situation</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/111</link>
        <id>111</id>
        <guid>111/20240617084513</guid>
        <last_updated>2024-06-17 08:45:13</last_updated>
        <description><![CDATA[After seeing many suggestions from people unhappy about the previous changes (Removal of grace period modoptions), I have decided to take a bit different approach.]]></description>
        <contents><![CDATA[Update to this: https://server4.beyondallreason.info/microblog/show/106

After seeing many suggestions from people unhappy about the previous changes (Removal of grace period modoptions), I have decided to take a bit different approach. Instead of removing the options, which actually did not effect in improvement in games quality due to other options still affecting it, I have instead decided to make these gamemodes adapt to the settings better. So now, when you give yourself extra resources, or more time, Scavengers and Raptors will adjust the balance accordingly. If you increase the income multipliers or grace period, more enemies will be sent your way, and the Boss Fight will require more unit variety from you due to buffed resistance gain.]]></contents>
        <tags>PvE, Raptors, Scavengers, Gameplay, AI</tags>
        <pubDate>2024-06-17 08:45:12</pubDate>
      </item>
    
      
      <item>
        <title>Legion Vehicles Update 2, now live (and has been for a little bit!)</title>
        <author>ZephyrSkies</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/110</link>
        <id>110</id>
        <guid>110/20240617050043</guid>
        <last_updated>2024-06-17 05:00:43</last_updated>
        <description><![CDATA[Thanks to the effort of Tharsis, Protar, Flaka, and myself, Legion&#39;s Tier 1 vehicle lab has been completely remodeled and made anew. Check &#39;em out!]]></description>
        <contents><![CDATA[# Legion Tier 1 Vehicle Lab is now complete!

Whilst the ball is rolling, Tharsis, Protar, Flaka, and I (Zephyr), remodeled Legion's tier 1 vehicle lab from top to bottom, and this specific lab can now be considered complete! 
Let's take a closer look at the vehicles:

- The __Construction Vehicle__, does what it says on the tin, it's a tier 1 vehicle constructor making 10 energy/second, same as other vehicle cons. Modelled by Tharsis.
- The __Otter__, an amphibious tier 1 constructor analogous to the Muskrat and Beaver, modelled by Zephyr.
- The __Cetus__, a light amphibious tier 1 tank analogous to the Pincer and Garpike, modelled by Zephyr.
- The __Lance__, a long-range railgun truck designed to shoot down enemy defences and incoming bombers alike, modelled by Tharsis.
- The __Helios__, a mid-range heatray skirmisher tank with low health but high DPS, modelled by Zephyr.
- The __Decurion__, a heavy, lumbering wall of a T1.5 tank equipped with a gatling gun, modelled by Protar.
- The __Sapper__, a minelayer / minesweeper vehicle, modelled by Tharsis.
- The __Alaris__, a fast, burst-fire light vehicle that packs a surprising punch, modelled by Tharsis.
- The __Hermes__ (pending a name change to the __Wheelie__), a light scout vehicle consisting of nothing more than two wheels with a gun strapped on top, this menace fires a burst of 5 bullets each round. Modelled by Flaka.

Quick pics of the above can be seen by checking out [Tharsis' GitHub PR for this update!](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/3144)

It should also be noted, since I missed it during the last Legion microblog, that the Legion Tier 1 Air Lab is also complete. It has been functionally complete for a while now thanks to the efforts of TheSilverHornet, but it was remodelled by Tharsis, Protar, and I, whose pictures you can check out at [this GitHub PR link.](https://github.com/beyond-all-reason/Beyond-All-Reason/pull/3046)

That's all for now, stay tuned for even more exciting developments!

-- Your pal, Zephyr]]></contents>
        <tags>Legion, Balance, Models, Gameplay</tags>
        <pubDate>2024-06-17 04:42:29</pubDate>
      </item>
    
      
      <item>
        <title>Code of Conduct Updated</title>
        <author>DeviousNull</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/109</link>
        <id>109</id>
        <guid>109/20240615181517</guid>
        <last_updated>2024-06-15 06:15:17</last_updated>
        <description><![CDATA[Attention, Commanders! Several notable changes have been made to our Code of Conduct; read on for a list of the changes.]]></description>
        <contents><![CDATA[As many of you are undoubtedly aware, the BAR community has a Code of Conduct which documents how we would like players to treat each other. This has served us well, but it has been some time since it was last updated, and we've noticed a few areas which could be improved. So, we improved them!

If you're just now learning about the [Code of Conduct](https://www.beyondallreason.info/code-of-conduct), you can use that link to read through it. However, if you're already an expert, then you may only be interested in what has changed; read on for a summary of what's new.

# Additions

**(A5) A new "Boss Abuse" section has been added:**
1. Boss mode is a tool to facilitate a good experience for everyone. Using boss mode to abuse other players is not acceptable, and may result in removal of boss privileges.
2. Examples of boss abuse include: kickbanning rule-abiding players after a match has begun, stopping matches because a player claimed a particular start position, and stopping matches to manipulate the skill rating system.
   - if you are the boss of a lobby, you can still start a kickban *vote* on a player using `!cv kickban <playername>` ("coordinator vote") instead of `!kickban <playername>`.
3. It is not boss abuse to remove a spectator from an ongoing match, or to remove a player from the pre-game lobby.

**(A1) A new rule has been added to address malicious accusations:**
3. Intentionally making false accusations, with the intent to have a player removed from the game/lobby, is abusive. We understand that mistakes happen, and no one knows everything that goes on in each match they play.

**(B5) Similar to the existing "no alt-accounts" policy, sharing accounts is now explicitly against the Code of Conduct:**
6. Account sharing is not permitted. This includes both using an account registered by someone else, and providing someone else with access to your account.

# Updates 

**(A4) The existing rules around leaving games have been rewritten. With this change, leaving _individual_ matches for any reason (and at any time) is acceptable; however, leaving a significant portion of matches is still a violation of the Code of Conduct.**
2. Players may leave games for a variety of valid reasons. Players who make a habit of leaving ongoing matches long before they end risk being met with moderation action. Matches thought to suffer from issues (balance, bugs etc.) require a restart and can be stopped by calling a stop vote with `!cv stop` in chat.

**(A4) The rules related to pausing/unpausing a game have been expanded to cover additional ways that the feature may be abused:**
4. Pausing when not needed, with the intent to disrupt the game, is not acceptable
5. Purposefully unpausing to disrupt a player reconnecting or to disrupt a discussion/vote to kickban a misbehaving player, unless a reasonable amount of time has passed, is unsportsmanlike and to be avoided

# Clarifications

**(B4) We see a large number of reports about a particular kind of behavior which is actually not against the Code of Conduct. So, we added a line to clarify the existing griefing rule:**
3. Griefing does not include reclaiming or reviving wreckage/debris on the map, regardless of where it is located or which player owned the original unit/structure.
  - You should, however, avoid reclaiming wrecks of allied commanders self-destructed to boost a tech rush. *If on a map with plentiful energy reclaim trees, start your reclaim circle on a tree to only reclaim energy and avoid unfortunate accidents.*]]></contents>
        <tags>Community</tags>
        <pubDate>2024-06-15 04:23:05</pubDate>
      </item>
    
      
      <item>
        <title>Season 0 Leaderboards - Hall of Lobsters!</title>
        <author>Perfi</author>
        <posted_to>Announcements</posted_to>
        <link>/microblog/show/108</link>
        <id>108</id>
        <guid>108/20240610142720</guid>
        <last_updated>2024-06-10 02:27:20</last_updated>
        <description><![CDATA[As promised before, here&#39;s the final leaderboard for Ladder Season 0, the long awaited Hall of Lobsters! We&#39;ll be sure to put that on the website sometime in the future, but for now, here you go. We&#39;d have posted this earlier, but we were scrambling to finish some other improvements for this season. Now that they&#39;re mostly out of the way (announcement coming soon!)... enjoy!]]></description>
        <contents><![CDATA[As promised before, here's the final leaderboard for Ladder Season 0, the long awaited Hall of Lobsters! We'll be sure to put that on the website sometime in the future, but for now, here you go. We'd have posted this earlier, but we were scrambling to finish some other improvements for this season. Now that they're mostly out of the way (announcement coming soon!)...

# Duel

With special mention to the Top 10:

1. Chisato
2. PRO_rANDY
3. PRO_DayWalker
4. Raghna
5. [teh]Teddy
6. PRO_XFactorLive
7. [ZFC]Contra
8. goopy
9. Altf4_ubivator
10. PtaQ

![1v1 leaderboard](https://i.imgur.com/vd7ie2e.png)

# Team

1. [AFF]InDaCluB
2. [teh]Teddy
3. Emre of the broken nickname
4. DarkSpiryt, the undisputed King in the Isthmus
5. [TZN]Sabutai
6. PRO_rAndy
7. [HELO]nItsuA
8. goopy
9. SeasonOfFlagships
10. MightySheep

![](https://i.imgur.com/jvouv91.png)

# FFA

1. Chisato
2. StarDom
3. Flash
4. Pro_XFactorLive
5. TotallyNotSquid_UwU
6. [waa]Delfea
7. Skymirrh[BAB]Lob
8. [BAB]LordVedor
9. Zerpiederp
10. SnidelyWhiplash

![](https://i.imgur.com/lupYbnC.png)]]></contents>
        <tags>Community</tags>
        <pubDate>2024-06-10 02:25:09</pubDate>
      </item>
    
      
      <item>
        <title>Engine 2511 Released</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/107</link>
        <id>107</id>
        <guid>107/20240607162717</guid>
        <last_updated>2024-06-07 04:27:17</last_updated>
        <description><![CDATA[This release is mostly focused on bug fixes and improve the stability of games. Click through to see the details.]]></description>
        <contents><![CDATA[This release is mostly focused on bug fixes and improve the stability of games.

For Players
- Fixed: When mutltiple builders are tasked with building something floating on the surface of the water and build multiple versions of the intended unit.
- Fixed: issue where units may not get out of the way when trying to build long buildings.
- Fixed: issue where units can get stuck walking into each other.
- Fixed: slow aiming units could keep switching between targets and not firing as a result.
- Fixed: rotating the camera with the middle mouse stopped unit tracking.
- Fixed: units can sometimes get left behind at a "gather and wait" point.
- Fixed: issue with game save/load.
- Fixed: some graphical issues with structure decals.
- Fixed: collision momentum was being maintained on a unit when it gets turned back into a nanoframe. Causing the nanoframe to move when it should remain still.
- Fixed: a client that takes too long to connect can potentially trigger a desync.
- Fixed: units pathing using HAPFS (like ZeroK, not BAR) could can caught in an infinite looping cycle, never reaching their move goal.

For Developers
- Burst-fire weapons can now be configured with alterntive behaviour if their target is outside the weapon's permitted aiming arc during a burst fire. By default the unit fires at those targets, which isn't always appropriate. Now, weapons can be additionally configured to either not fire shots outside the arc, or fire in the direction the weapon is facing (note that means the weapon has to correct set weaponDir in the aim scripts.)
- Fixed: Spring.GetGroupUnitsCount could crash if given an invalid group.
- Fixed: Prevent logging general log information before the game engine has started.
- Fixed: provide a UnitArrivedAtGoal event so that the game can tell that the engine believes the move is complete to help avoid custom move code breakage.]]></contents>
        <tags>Engine</tags>
        <pubDate>2024-06-07 04:27:17</pubDate>
      </item>
    
      
      <item>
        <title>Important changes regarding PvE gamemodes modoptions</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/106</link>
        <id>106</id>
        <guid>106/20240605160434</guid>
        <last_updated>2024-06-05 04:04:34</last_updated>
        <description><![CDATA[PvE just got some of the modoptions removed or limited. You can no longer make these modes easier with the provided options, only harder.]]></description>
        <contents><![CDATA[PvE just got some of the modoptions removed or limited. You can no longer make these modes easier with the provided options, only harder. A bunch of options got removed completely, like grace period time, while others got limited, like wave time or wave size multipliers.

Something that should've been done long time ago. People often crank the numbers up without understanding the consequences, often ending up with broken game that leaves everyone involved with bad experience, putting a lot of people away from the modes which are supposed to be challenging. So you cannot do that to PvE gamemodes anymore. If you find the game too hard, lower the Base Difficulty instead, as intended.

More modoption limit tweaks might come in the future.]]></contents>
        <tags>Balance, Raptors, PvE, Modding, Gameplay, Scavengers, AI</tags>
        <pubDate>2024-06-05 04:04:33</pubDate>
      </item>
    
      
      <item>
        <title>Legion Static Defense Update 3, now live!</title>
        <author>ZephyrSkies</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/105</link>
        <id>105</id>
        <guid>105/20240701070113</guid>
        <last_updated>2024-07-01 07:01:13</last_updated>
        <description><![CDATA[There&#39;s been quite a few defence turrets in Legion&#39;s lineup that&#39;s either been remodeled or made anew entirely, mainly focused in T2! Check &#39;em out!]]></description>
        <contents><![CDATA[# There are new Legion static defenses to look out for!

Striking the iron whilst it's hot, Tharsy _(aka Tharsis/Tremor Enjoyer)_ and I have cooked up a sizable amount of Legion static defenses! These include:

- The **Supernova**, Legion's own nuclear missile silo, designed and modelled by Tharsy. Currently it behaves the same way as the Cortex one does for balance reasons, but its behaviour and function is subject to change in the near future.

- The **Olympus**, Legion's own long-range plasma cannon (LRPC). It fires a 3-round burst of Starfire cluster plasma shells that each split into 4 projectiles. DPS remains largely the same as the Basilisk and Basilica.

- The **Xyston**, Legion's own long-range Anti-Air turret. It is a long-range rail accelerator that, unlike it's contemporaries the Mercury and Screamer, does not stockpile at all, and instead fires a 2-round rail burst every 5 seconds. Each volley requires 1800 energy to fire, but rewards you with better and more consistent DPS!

- The **Eviscerator**, Legion's own tier 2 Pop-Up Cluster plasma artillery. It is a direct upgrade to the Amputator sporting better stats across the board, with each shot bursting into 5 smaller plasma shells on impact.

In addition to this, a two static defenses were remodeled to better fit Legion's current aesthetic.

- The **Perdition**, the long-range tactical napalm launcher, has been fully remodeled by Tharsy.

- The **Hive**, the tier 1 static drone defense pad, has been fully remodeled by me. It now sports 6 drones as opposed to the previous 4.

On top of this, we also have the **Proteus**, a tier 2 combat engineer bot. It is only a placeholder that substitutes in place of the Twitcher, so its role and buildlist are subject to change in the future, and will receive a full remodel at around the same time.

Thanks for tuning in! I wish we could show you pictures of the new stuff directly here but for now the next best thing is to check out the sneak peeks on the official GitHub pull request here: https://github.com/beyond-all-reason/Beyond-All-Reason/pull/3056

The Legion train is nowhere near done, tune in next time to see what we have in store for you!]]></contents>
        <tags>Balance, Gameplay, Graphics, Models</tags>
        <pubDate>2024-06-03 06:16:01</pubDate>
      </item>
    
      
      <item>
        <title>First wave of Legion Models!</title>
        <author>Gulphagor</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/103</link>
        <id>103</id>
        <guid>103/20240525113139</guid>
        <last_updated>2024-05-25 11:31:39</last_updated>
        <description><![CDATA[Thanks to the efforts of Protar, ZephyrSkies, EnderRobo and Myself(Tharsy), the first wave of legion unit models are complete for your viewing pleasure! 
- We highly encourage players to use Legion in PVP matches, as unbalanced as they are this is the best way to gather combat data and make the units fun to fight with and against! If in doubt set the match to unranked!]]></description>
        <contents><![CDATA[# Below is a list of Units Completed

#### Vehicles:
- Otter (t1 amphib constructor)
- Tier 1 constructor
- Lance (railgun tank)
- Barrage (Napalm artillery)

#### Air: (Completed by ZephyrSkies and Tharsy)
- Tier 1 Air constructor
- Noctua (Fighter/scout)
- Aeolus (Transport)
- Mosquito (Gunship)
- Martyr (Flying bomb)
- Blindfold (Juno bomber)

#### Hover: (Created by EnderRobo)
- Glaucus (Hover Scout)
- Nereus (Hovertank)
- Salacia (Rocket Launcher)
- Alpheus (Anti Air)

#### Bots: (Created by Tharsy)
- Legion t2 Constructor

#### Buildings: (Created by ZephyrSkies)
- Radar
- Nyx (Jammer)
- Dragons Teeth / Jaw (Wall + Pop-Up Cannon)
- Pharos (LLT)
- Amputator (artillery)
- Cacophony (Minigun turret)
- Bramble (Light AA)
- Rhapsis (Salvo AA battery)
- Lupara (T1 flak battery)

#### Misc: (Created by Tharsy)
- Missles, rockets and bombs
- Legion Drone]]></contents>
        <tags>Models, Graphics</tags>
        <pubDate>2024-05-25 11:30:41</pubDate>
      </item>
    
      
      <item>
        <title>Player APM added to the playerlist ping/cpu tooltip</title>
        <author>[teh]Flow</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/102</link>
        <id>102</id>
        <guid>102/20240520134809</guid>
        <last_updated>2024-05-20 01:48:09</last_updated>
        <description><![CDATA[You can now view the APM (actions per minute) of a player when you hover over the ping/cpu number in the playerlist.]]></description>
        <contents><![CDATA[You can now view the APM (actions per minute) of a player when you hover over the ping/cpu number in the playerlist.]]></contents>
        <tags>Interface</tags>
        <pubDate>2024-05-20 01:47:52</pubDate>
      </item>
    
      
      <item>
        <title>Engine 2503 Ready for Testing</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/101</link>
        <id>101</id>
        <guid>101/20240515140733</guid>
        <last_updated>2024-05-15 02:07:33</last_updated>
        <description><![CDATA[A new engine version is available on the test servers, please give it a try and let us know if it is okay. Please read through the list of changes below and test as many of these changes]]></description>
        <contents><![CDATA[**Engine 2503 Ready for Testing**

A new engine version is available on the test servers, please give it a try and let us know if it is okay.

Please read through the list of changes below and test as many of these changes 

_You can test the latest release candidate by selecting “Engine Test”, under Config, on the Launcher, click Update, then click Start._

_Note: please do remember to !stop the server once you are done testing on it, as it sometimes doesn't exit headless._


**Updates since 2472**

- Fixed: When multiple builders are tasked with building something floating on the surface of the water and get there at different frames, it can trigger multiple versions of the same unit are started on the same location. [PR](https://github.com/beyond-all-reason/spring/pull/1441)
- Fixed: a the bugger-off checks may fail to get rid of units if they stand on the edge of an area of a new long building. [ticket](https://github.com/beyond-all-reason/spring/issues/1428)
- Fixed: issue where units can get stuck walking into each other if one of their paths is changed as they reached their current move goal. [ticket](https://github.com/beyond-all-reason/spring/issues/1469)
- Fixed: slow aiming units could keep switching between targets and not firing as a result. [PR](https://github.com/beyond-all-reason/spring/pull/1453)
- Fixed: burst-fire weapons could hit new targets outside their intended aim angles mid-burst. [ticket](https://github.com/beyond-all-reason/spring/issues/1470)
- Fixed: rotating the camera with the middle mouse stopped unit tracking. [ticket](https://github.com/beyond-all-reason/spring/issues/626)
- Fixed: units can sometimes get left behind at a "gather and wait" point. [ticket](https://github.com/beyond-all-reason/Beyond-All-Reason/issues/2799)
- Fixed: issue with game save/load. [ticket](https://github.com/beyond-all-reason/spring/issues/1425)
- Fixed: some graphical issues with structure decals. [ticket](https://github.com/beyond-all-reason/spring/issues/1490)
- Fixed: Spring.GetGroupUnitsCount could crash if given an invalid group. [PR](https://github.com/beyond-all-reason/spring/pull/1339)
- Fixed: collision momentum was being maintained on a unit when it gets turned back into a nanoframe. [ticket](https://github.com/beyond-all-reason/spring/issues/1413)
- Fixed: a client that takes too long to connect can potentially trigger a desync. [ticket](https://github.com/beyond-all-reason/spring/issues/1406)
- Fixed: Prevent logging general log information before the game engine has started. [ticket](https://github.com/beyond-all-reason/spring/issues/683)
- Fixed: provide a UnitArrivedAtGoal event so that the game can tell that the engine believes the move is complete to help avoid custom move code breakage. [ticket](https://github.com/beyond-all-reason/spring/issues/1459)
- Fixed: units pathing using HAPFS could can caught in an infinite looping cycle, never reaching their move goal. [PR](https://github.com/beyond-all-reason/spring/pull/1444)]]></contents>
        <tags>Engine, Testing</tags>
        <pubDate>2024-05-15 02:03:49</pubDate>
      </item>
    
      
      <item>
        <title>Engine 2472 Released</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/100</link>
        <id>100</id>
        <guid>100/20240513164201</guid>
        <last_updated>2024-05-13 04:42:01</last_updated>
        <description><![CDATA[New engine update has been released. Bug fixes and AI update.

Click through to get the details of what has changed.]]></description>
        <contents><![CDATA[New engine update has been released. Bug fixes and AI update.

**Updates since 2449**

- Fixed: issue where builders blocking their own building space don't move out of the way [ticket](https://github.com/beyond-all-reason/spring/issues/1407)
- Fixed: a number issues related to rendering ground decals [ticket](https://github.com/beyond-all-reason/spring/issues/1421)
- Fixed: a rendering issue related to ground scars
- Fixed: use libsquish to compress DXT1 block for map generator to work around limitation of AMD GPUs
- Fixed: VBO handling to prevent a crash related to Geo Vents [ticket](https://github.com/beyond-all-reason/spring/issues/1437)

- Update: BARbarian AI updates]]></contents>
        <tags>Engine</tags>
        <pubDate>2024-05-13 04:42:01</pubDate>
      </item>
    
      
      <item>
        <title>Now available: Search for any game lobby, map, or player</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/99</link>
        <id>99</id>
        <guid>99/20240510201849</guid>
        <last_updated>2024-05-10 08:18:49</last_updated>
        <description><![CDATA[The battle list in lobby now features a search bar at the top to filter by any lobby, player, or map name. Thanks to jere0500 for the PR!]]></description>
        <contents><![CDATA[The battle list in lobby now features a search bar at the top to filter by any lobby, player, or map name. Thanks to jere0500 for the PR!]]></contents>
        <tags>Interface, Client</tags>
        <pubDate>2024-05-10 05:59:06</pubDate>
      </item>
    
      
      <item>
        <title>Engine 2472 Ready for Testing</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/98</link>
        <id>98</id>
        <guid>98/20240506200939</guid>
        <last_updated>2024-05-06 08:09:39</last_updated>
        <description><![CDATA[A new engine version is available on the test servers, please give it a try and let us know if it is okay. You can test the latest release candidate by selecting “Engine Test”, under Config, on the Launcher, click Update, then click Start.]]></description>
        <contents><![CDATA[A new engine version is available on the test servers, please give it a try and let us know if it is okay.

Testing is mostly checking for any unusual behaviour or graphical glitches in-game.

_You can test the latest release candidate by selecting “Engine Test”, under Config, on the Launcher, click Update, then click Start._

**Updates since 2449**

- Fixed: issue where builders blocking their own building space don't move out of the way [ticket](https://github.com/beyond-all-reason/spring/issues/1407)
- Fixed: a number issues related to rendering ground decals [ticket](https://github.com/beyond-all-reason/spring/issues/1421)
- Fixed: a rendering issue related to ground scars
- Fixed: use libsquish to compress DXT1 block for map generator to work around limitation of AMD GPUs
- Fixed: VBO handling to prevent a crash related to Geo Vents [ticket](https://github.com/beyond-all-reason/spring/issues/1437)

- Update: BARbarian AI updates]]></contents>
        <tags>Testing, Engine</tags>
        <pubDate>2024-05-06 08:06:46</pubDate>
      </item>
    
      
      <item>
        <title>Now available: Detect and repair corruption in game data</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/97</link>
        <id>97</id>
        <guid>97/20240506014514</guid>
        <last_updated>2024-05-06 01:45:14</last_updated>
        <description><![CDATA[Chobby&#39;s newest feature is something that you hopefully will never have to see; an extension of existing analytics that detects corrupt files and pushes a prompt to repair them after they appear.]]></description>
        <contents><![CDATA[Chobby's newest feature is something that you hopefully will never have to see; an extension of existing analytics that detects corrupt files and pushes a prompt to repair them after they appear.

The last 1-2 infologs are scanned on start. If scans reveal one of the types of errors that appear when corrupt files are found a prompt appears in lobby explaining the corruption and offering repair. Upon repair success one will be prompted to restart the game and run the launcher with updates checked, or if anything fails a prompt providing a link to game data and instructions to delete pool and packages by hand will appear.

Most games expect one to manually verify integrity of games files if problems are encountered, this is yet another feature that puts BAR ahead of the competition and keeps your game stable.]]></contents>
        <tags>Client</tags>
        <pubDate>2024-05-06 12:32:47</pubDate>
      </item>
    
      
      <item>
        <title>Now available: Multi-line input support for commands in custom battles</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/96</link>
        <id>96</id>
        <guid>96/20240423203417</guid>
        <last_updated>2024-04-23 08:34:17</last_updated>
        <description><![CDATA[Thanks to tetrisface for the PR! See contents for more info.]]></description>
        <contents><![CDATA[### Chaining lobby commands:
Non-standard lobbies often require changing the Lobby name, Welcome message, and a multitude of modoptions, often requiring the Host to copy many lines in one by one. This is, or was, a tedious process.
The lobby now supports multi-line input commands, allowing for the chaining of multiple commands in the same text message. (Depending on the size of the message this may be very slow and laggy process)

### How do I use it?
Separate your commands with a new line in a text editor of your choice before pasting them into the chobby chat.
This supports both ! and $ commands, 
Here is a simple example:

`$rename Experimental lobby`

`!bSet experimentallegionfaction 1`

`!bSet releasecandidates 1`]]></contents>
        <tags>Interface</tags>
        <pubDate>2024-04-23 07:29:53</pubDate>
      </item>
    
      
      <item>
        <title>Huge Redesign for Legion, Now In-Progress!</title>
        <author>ZephyrSkies</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/95</link>
        <id>95</id>
        <guid>95/20240417161324</guid>
        <last_updated>2024-04-17 04:13:24</last_updated>
        <description><![CDATA[Textures for the Legion faction have been finalised, look out for new models and units in the coming months!]]></description>
        <contents><![CDATA[# Yes, it's true! The new, high-quality texture atlas for Legion has been completed and shipped by the ever-wonderful Flaka! 
This means that Legion units will slowly start to incorporate a brand new look and feel to better flesh them out as a separate faction against Armada and Cortex. These changes will go out in parts and pieces as our modellers and designers keep working hard to give Legion the big makeover they've deserved for a while.  If you'd like to keep up with the latest changes as they happen, feel free to head over to the official Beyond All Reason Discord server (if you're not there already) to pick up the **Development** tag, then head on over to the #🔋legion-faction and inside there check out the **Legion's Big Makeover Update** thread to see a rough timeline of where are, and what's currently being cooked in the kitchen. 

As always, if you'd like to contribute to the modelling legwork to get Legion into tip-top shape, don't hesitate to come and discuss with us! In particular, the fantastic Protar has been creating truly wonderful concept art and the ever-diligent Tharsis has created a slew of new models with the new textures *already*, touching base with their work and contributions to get an idea of the sort of design direction we are aiming for is highly recommended!

In the spirit of this momentous step forward for everyone's favourite green faction, there have recently been some noteworthy additions even without the texture atlas in mind:

- The Bombardier (Tier 2 pop-up grenade launcher turret) and Perdition (Tier 2 tactical napalm barrage turret) made by the one-and-only TheSilverHornet. 
- A new Tier 2 advanced construction bot made by Tharsis.
- A new Advanced Solar Collector, distinct from the other two factions, designed by the incredible EnderRobo and scripted by TheSilverHornet.
- A new Solar Collector made by TheSilverHornet
- A new wind turbine made by the awesome Yzch.
- A new Helios model by yours truly, ZephyrSkies.

And we're still not done! All Legion units that previously had work-in-progress names have been given much more befitting ones! Those will not be listed here, but feel free to give Legion a try, if you haven't already, to see everything talked about in this post in action.

Happy hunting, Commanders!]]></contents>
        <tags>Models</tags>
        <pubDate>2024-04-17 04:00:57</pubDate>
      </item>
    
      
      <item>
        <title>New UI framework, looking for frontend wizards to help out!</title>
        <author>Hobo_Joe</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/94</link>
        <id>94</id>
        <guid>94/20240413221950</guid>
        <last_updated>2024-04-13 10:19:50</last_updated>
        <description><![CDATA[Have you heard the rumors about a new UI? Those rumors are getting close to reality now, we&#39;re wrapping up integration of a new UI framework that will enable us to do an rewrite of the *entire* ingame UI. And good news to all you web devs out there, the new UI framework is HTML/CSS based, so you can use your existing skills to help out with BAR - we&#39;re looking for new recruits, so read on for more details!]]></description>
        <contents><![CDATA[As you can imagine, a whole UI rewrite is a big project.  The first step for us was finding a new UI framework to build it in, because our existing UI tools are a very simplistic by modern standards, and everything is very close to the metal and there's no layout engine, etc. Eventually we settled on a library called [RMLUI](https://github.com/mikke89/RmlUi). It's a high-performance UI engine written in C++, but whose API is based on HTML and CSS to make it much more approachable. With this, we'll be able to have a much more beautiful, much more stable, and much more *moddable* UI.

So we decided on that library, and with the dedicated work of a bunch of contributors (notably - lov, ChrisFloofyKitsune, Marek), it's nearly integrated but it needs to go through some usage tests before it can be merged into the main engine release. Anyone who has experience with HTML and CSS and isn't afraid of a little lua (or if you don't know any of those things and feel like learning), please join us in testing things out! This can be entirely new widgets, or rewrites and updates to existing UI widgets, anything you feel like building.

Design of course is no small task, but some very talented designers have been cooking up some major improvements. Not everything is finalized, but it's definitely far enough along to start building out the fundamentals in code. You can see some of those designs [in Figma](https://www.figma.com/file/8w9G5E5AbeuldYNAjaaslh/BAR-UI-%7C-Scopa?type=design&node-id=118-6788&mode=design).

For specifics on getting set up, head to this discord thread https://discord.com/channels/549281623154229250/1228831114143993896]]></contents>
        <tags>Interface, Engine, Launcher, Modding</tags>
        <pubDate>2024-04-13 10:19:50</pubDate>
      </item>
    
      
      <item>
        <title>Forgotten announcement - Liche dive removed!</title>
        <author>Perfi</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/93</link>
        <id>93</id>
        <guid>93/20240409050329</guid>
        <last_updated>2024-04-09 05:03:29</last_updated>
        <description><![CDATA[We forgot to announce this, but thanks to Hornet&#39;s deep dive into the mechanics of it, the Liche no longer dives its target if you use the attack command with it, instead of set-target. This removes a &quot;trivia check&quot; for successfully using the unit, while still keeping the set-target functionality as it was before.]]></description>
        <contents><![CDATA[We forgot to announce this, but thanks to Hornet's deep dive into the mechanics of it, the Liche no longer dives its target if you use the attack command with it, instead of set-target. This removes a "trivia check" for successfully using the unit, while still keeping the set-target functionality as it was before.

Historically, as I understand how we got here...
1. The Liche weapon was originally coded as a missile, not a bomb, to allow for this set-target functionality. This necessitated the weird dive attack. Or maybe the dive was just something cool someone wanted to do, and admittedly it did look pretty cool. 
2. *Okay, but now my Liches dive the enemy, and they don't just expose themselves to enemy fire - if you have two or more diving the same target, they'll damage each other and even happily blow each other up* (at 6+, if I remember correctly)!
3. *That's okay, we'll just slap a 10%-to-VTOL (also known as air units) damage modifier as a bandaid. What could go wrong?*
4. Well, a lot can go wrong in a game with as many mechanics as ours! In this case, impulse (also known as knockback) is calculated based on the base damage, not the modified damage. This means that if you can find something that survives the nuclear bomb's damage - say, an air scout, bomber - you can give them a rather large boost. [Here's an example of the "Liche unit cannon" exploit we started seeing in moderation reports this year.](https://streamable.com/5dec63)
5. On the mod team, we decided that this is indeed pretty funny, but it does look like cheating, we don't want to waste time looking through these reports, and we can kill two birds (the annoying "you need to know about set-target or the Liche is awful" check and this unit cannon) with one change.
6. We floated the idea to the Game Design Team as this started spreading. It was agreed that the dive attack doesn't make sense as for this huge AoE unit, Hornet came up with an implementation, and here we are! It's been gone for a good few weeks now, but we forgot to say anything. ^^'

And here we are today! If you don't have the APM to micro the Liche with set-target, try it with just the normal attack command! If something is amiss with how you use the Liche, please report that in the #support-bugs channel on Discord.]]></contents>
        <tags>Gameplay</tags>
        <pubDate>2024-04-09 05:03:01</pubDate>
      </item>
    
      
      <item>
        <title>Engine Sync Testing</title>
        <author>[teh]Beherith</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/92</link>
        <id>92</id>
        <guid>92/20240408143202</guid>
        <last_updated>2024-04-08 02:32:02</last_updated>
        <description><![CDATA[We will be running a short trial of falling back to a two month old engine release (2314), to help track down the source of an uptick in desync reports.]]></description>
        <contents><![CDATA[Engine version 2358 introduced 3 large multithreading additions, which in testing werent found to cause sync issues, but your generous submissions of desync reports show a marked, ~5x increase in desync reports per day since the release of engine version 2358. We have, in the past week disabled the above multithreading additions, to gauge how much desync reports drop. Conclusion is that the desync rate did not drop significantly from turning these additions off. 
Thus we will be conducting a week-long rollback to engine version 2314, the previous very stable engine release to help the dev team pinpoint the source of desyncs.]]></contents>
        <tags>Testing, Engine, Bugs</tags>
        <pubDate>2024-04-08 02:32:02</pubDate>
      </item>
    
      
      <item>
        <title>Now Available: Favourite maps</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/91</link>
        <id>91</id>
        <guid>91/20240403221007</guid>
        <last_updated>2024-04-03 10:10:07</last_updated>
        <description><![CDATA[The map list in lobby now has the ability to mark your favourite maps with a star. These maps will appear on top.Thanks to yzch for the PR!]]></description>
        <contents><![CDATA[The map list in lobby now has the ability to mark your favourite maps with a star. These maps will appear on top.Thanks to yzch for the PR!]]></contents>
        <tags>Interface</tags>
        <pubDate>2024-04-03 10:09:26</pubDate>
      </item>
    
      
      <item>
        <title>Hound weapon toggle no longer uses on/off</title>
        <author>Hobo_Joe</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/90</link>
        <id>90</id>
        <guid>90/20240326024012</guid>
        <last_updated>2024-03-26 02:40:12</last_updated>
        <description><![CDATA[This means you can toggle hounds weapons while having jammers selected, and it won&#39;t turn off the jammers anymore :)]]></description>
        <contents><![CDATA[This means you can toggle hounds weapons while having jammers selected, and it won't turn off the jammers anymore :)]]></contents>
        <tags>Interface, Gameplay</tags>
        <pubDate>2024-03-26 02:39:51</pubDate>
      </item>
    
      
      <item>
        <title>Quicker game and chobby changes propagation</title>
        <author>[T0]Marek</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/89</link>
        <id>89</id>
        <guid>89/20240317181811</guid>
        <last_updated>2024-03-17 06:18:11</last_updated>
        <description><![CDATA[I&#39;ve added an improvement to the game and Chobby repositories that reduces the time from commit to update being available for players from average time of 12min (up to ~23min) to ~10s.]]></description>
        <contents><![CDATA[The current way how game and Chobby changes are distributed from repository to players involves 3 synchronization steps that are triggered independently at the intervals of 5, 7 and 10 minutes. If we are unlucky, that can mean up to ~23 minutes between the change submit time and the time change is available for players.

I've added a small GitHub actions workflow to game and Chobby repositories that will directly trigger all 3 steps one after the other on every new commit. This reduces the average time of propagation to ~10 seconds.

This change will allow developers to quicker see impact of their changes. For players it means that any fix or revert will reach them sooner, without "We submitted the fix, keep updating, it will be live in the next 20 minutes".]]></contents>
        <tags>Infrastructure</tags>
        <pubDate>2024-03-17 06:18:11</pubDate>
      </item>
    
      
      <item>
        <title>New Map: Wanderlust</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/88</link>
        <id>88</id>
        <guid>88/20240314030942</guid>
        <last_updated>2024-03-14 03:09:42</last_updated>
        <description><![CDATA[I have released a remade version of Wanderlust by FlorisXIV. It is a a small 1v1 to 3v3 map with grassy lowlands and dry central upper plateaus. It has a couple of bot only ramps on the northeast and southwest sides.]]></description>
        <contents><![CDATA[https://www.beyondallreason.info/map/wanderlust]]></contents>
        <tags>Maps</tags>
        <pubDate>2024-03-14 03:09:42</pubDate>
      </item>
    
      
      <item>
        <title>Minor lobby interface update</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/87</link>
        <id>87</id>
        <guid>87/20240314013716</guid>
        <last_updated>2024-03-14 01:37:16</last_updated>
        <description><![CDATA[Choosing to spectate while in an active position in queue or game will now require a confirmation via popup.]]></description>
        <contents><![CDATA[I have added a confirmation popup if the spectate button is pressed while in queue or on a team. It does not appear in singleplayer.]]></contents>
        <tags>Interface</tags>
        <pubDate>2024-03-14 01:37:16</pubDate>
      </item>
    
      
      <item>
        <title>New Map: The Rock Jungle</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/86</link>
        <id>86</id>
        <guid>86/20240302171026</guid>
        <last_updated>2024-03-02 05:10:26</last_updated>
        <description><![CDATA[I have just released a new map, a remake of the classic TheRockJungle by SirArtturi. It is an east vs west teams map with spawns up to 8vs8 in mind. Lots of vegetation and shallow water.]]></description>
        <contents><![CDATA[https://www.beyondallreason.info/map/the-rock-jungle]]></contents>
        <tags>Maps</tags>
        <pubDate>2024-03-02 05:10:26</pubDate>
      </item>
    
      
      <item>
        <title>Smart area reclaim limited</title>
        <author>Hobo_Joe</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/85</link>
        <id>85</id>
        <guid>85/20240302080701</guid>
        <last_updated>2024-03-02 08:07:01</last_updated>
        <description><![CDATA[Smart area reclaim has been the source of a lot of crashes and lag spikes of late, thanks to people accidentally (or not so accidentally) using it to queue up map-wide reclaim commands. It now has limits to the total area and number of commands it can issue to alleviate this problem. Read on for more details!]]></description>
        <contents><![CDATA[Lots of small optimizations were made to help speed up this widget, but the major change is limits. Specifically:

- The diameter of the command has been limited to 1/4th of the maps largest dimension
- The number of commands issued per smart area reclaim is 1000. This means 1000 commands *total*, each unit given the command gets unique orders to minimize walk distance. What this means in practice is that the number of features smart area reclaim will issue commands for can be divided by the number of selected reclaimers. So if you use 1 rezbot, you can issue orders for 1000 wrecks or features. If you have 5 rezbots, that number will be 200, with 20 rezbots it will be 50, and so on.

These limits may cause some frustration at times where it seems like the orders issues do not match the area drawn, but it's a necessary limit to stop lagspikes and hard crashes.]]></contents>
        <tags>Widgets, Gameplay, Interface</tags>
        <pubDate>2024-03-02 08:07:00</pubDate>
      </item>
    
      
      <item>
        <title>Stateful factory guard</title>
        <author>Hobo_Joe</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/84</link>
        <id>84</id>
        <guid>84/20240302075937</guid>
        <last_updated>2024-03-02 07:59:37</last_updated>
        <description><![CDATA[Factory guard has been changed from a global toggle in the settings to a toggleable setting per-factory, next to other factory settings such as move state and fire state. It defaults to off, so make sure to check each game if you&#39;re used to this feature!]]></description>
        <contents><![CDATA[Factory guard has been changed from a global toggle in the settings to a toggleable setting per-factory, next to other factory settings such as move state and fire state. It defaults to off, so make sure to check each game if you're used to this feature!]]></contents>
        <tags>Widgets, Interface</tags>
        <pubDate>2024-03-02 07:59:17</pubDate>
      </item>
    
      
      <item>
        <title>New Engine version 2358</title>
        <author>[teh]Beherith</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/83</link>
        <id>83</id>
        <guid>83/20240229124425</guid>
        <last_updated>2024-02-29 12:44:25</last_updated>
        <description><![CDATA[This engine release is a set items piled up during the feature freeze, a large set of wonderful updates by ivand, Sprung, A-Lias, Loveridge, Lamer, Beherith and more.]]></description>
        <contents><![CDATA[This engine release is a set items piled up during the feature freeze, a large set of wonderful updates by ivand, Sprung, A-Lias, Loveridge, Lamer, Tarnished Knight, Beherith and others.

Key Improvements include:
- Multithreaded projectile visibility checks
- Multithreaded unit animation execution
- Multithreaded weapon vector updates and bounding volume calculations 
- More profiler tooling
- New GameFramePost callin
- Pathing optimizations]]></contents>
        <tags>Engine</tags>
        <pubDate>2024-02-29 12:44:25</pubDate>
      </item>
    
      
      <item>
        <title>Adjustments to Pawns, Grunts, Maces, Thugs and Demons!</title>
        <author>Perfi</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/82</link>
        <id>82</id>
        <guid>82/20240226161557</guid>
        <last_updated>2024-02-26 04:15:57</last_updated>
        <description><![CDATA[- Pawns faster
- Grunts slower
- Demon builds slower
- Maces and Thugs learn to respect and enforce their personal space]]></description>
        <contents><![CDATA[We're past our next tournament, so the GDT and Balance team have chosen to touch up the game in a few aspects, primarily concerning T1 bots.
# Faster pawns, slower grunts
The [Grunt](https://www.beyondallreason.info/unit/corak)'s speed was reduced by 3, and the [Pawn](https://www.beyondallreason.info/unit/armpw)'s speed was increased by 3 as well. They wre previously equal at 84 speed.

*Note - I don't know the full reasoning behind this change. What follows is my opinion and attempt to understand it.*

The Grunt has 230 range, compared to 180 for the Pawn. This means that, as long as the Cortex player reacted within the 0.6 seconds necessary for the Pawn to close the distance into firing range (assuming a stationary Grunt and neglecting acceleration), the Grunt could infinitely kite its more expensive counterpart and thus hard-counter it.

If we now assume the Grunt kiting backwards right from the get go, the Pawn will cross the 50 units of distance using its 6 speed advantage within 8.3 seconds, and it will then take take down the 270 HP grunt via its 90 DPS in over 3 seconds (due to imperfect accuracy, kiting advantage, etc).

Overall, this should not diametrically change this particular interaction. It will definitely give more of a reason to actually make Pawns from time to time, and the Grunt should still remain a strong option. I get some of the panic in `#main` chat, but I think it's good to try it out first and then give feedback.
# Demon build cost (time to build) adjustment

Asked about the Demon's cheap build cost of 90 000 (time to build = build cost / applied build power, assuming sufficient resources), prolific developer Hornet replied "*unsure, it was 150 000 at one point*". One of the many wondrous accidents that inevitably happen during development, [it was changed and forgotten about](https://github.com/beyond-all-reason/Beyond-All-Reason/commit/f6254539a4ee31937c998181146f520397c72a25).

The build cost was thus increased to the midway point of 120 000, a 33% slowdown to Demon summoning efficiency. You will need more ~~grimoires~~ construction turrets to spam them out now.
# Plasma bot social distancing
You'll find that your Maces and Thugs don't clump up as much, and this may make them actually a fair bit better.

Everyone knows that ~~[Thugs](https://www.beyondallreason.info/unit/corthud) are very strong and~~ [Maces](https://www.beyondallreason.info/unit/armham) are pretty bad, right? They should be the "same" unit, but the former just *feels* much better to play with, even if neither is very strong in the current Rocket bot dominated meta.

The common folk knowledge answer on the cause of that difference is their build cost and HP. Maces have 900 HP for a build cost of 2200, which comes to 0.45 health repaired per second per unit of build power. Thugs, on the other hand, have 1000 HP for a build cost of 1970, giving us 0.508 for that same quantity - a 12% increase. Not massive, but decently larger.

But there's a larger difference that takes a lot of deep digging to uncover, and while figuring it out, investigative reporter Hornet noticed something interesting about the situation. Consider this:

![Maces not firing](https://media.discordapp.net/attachments/1209156299787472916/1209156605330063370/image.png?ex=65e5e5d7&is=65d370d7&hm=2810d25ecfaf9e8c35ea6d3f2af27e0eb837bb9bf8d47f3106c00f0243355a18&=&format=webp&quality=lossless&width=700&height=643)

If you have a very tight ball of either Plasma Bot, because of how their models work, many of the actual cannons-as-dictated-by-model will up end *inside* the collision volumes (purple) of another bot. And there they hit an engine bug that prematurely ends the search for viable targets, because they do not attempt to rotate towards viable targets (either by shifting their turrets around, or by arcing the cannons upward).

Zecrus noticed that this is further exacerbated by this difference between the two models, so the Mace is hit harder by this:

![Cannon width difference between Thugs and Maces](https://media.discordapp.net/attachments/1209156299787472916/1209224783661637672/image.png?ex=65e62556&is=65d3b056&hm=b63c0ade6db44503e2f55e3a6e6f09ab5f1b0c2f36c18ea5d9602492170f7b48&=&format=webp&quality=lossless&width=482&height=224)

Here's an example of the change, with changed Thugs at the top and unchanged Maces at the bottom, in equal numbers.
![Example](https://media.discordapp.net/attachments/1209156299787472916/1209169836937183323/image.png?ex=65e5f22a&is=65d37d2a&hm=a9612ee55a8d8442a215a742216dd9a7062e1832a23e02c208c237574cdc2226&=&format=webp&quality=lossless&width=1115&height=627)

There is an [engine pull request](https://github.com/beyond-all-reason/spring/pull/977) that would improve this situation, but for now, both Thugs and Maces were tentatively shifted to a larger movedef to prevent this.

In summary: your Plasma bot per ~~meter~~ ~~elmo~~ unit area count will decrease, but the DPS might actually increase. This may actually make plasma bots more viable. Try it out!]]></contents>
        <tags>Gameplay, Balance</tags>
        <pubDate>2024-02-26 10:51:23</pubDate>
      </item>
    
      
      <item>
        <title>Replay site now applies AND, not OR, to player list, thanks Jauggy &amp; Jazcash!</title>
        <author>Perfi</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/81</link>
        <id>81</id>
        <guid>81/20240217054048</guid>
        <last_updated>2024-02-17 05:40:48</last_updated>
        <description><![CDATA[Go to the [replay site](https://bar-rts.com/replays/?page=1&amp;limit=24&amp;hasBots=false&amp;endedNormally=true) and try it out!]]></description>
        <contents><![CDATA[Previously if you went to [the replay site](https://bar-rts.com/replays/?page=1&limit=24&hasBots=false&endedNormally=false) and added two queries, say, for [Teddy's](https://bar-rts.com/replays/?page=1&limit=24&hasBots=false&endedNormally=true&players=%5Bteh%5DTeddy) and [Raghna's](https://bar-rts.com/replays/?page=1&limit=24&hasBots=false&endedNormally=true&players=Raghna) games, you'd get a list of games where either of them was a player. Well, no longer! Thanks to some awesome work by Jauggy (and to Jazcash for [responsible deployment decisions](https://tenor.com/view/bill-o-reilly-fuck-it-live-do-it-live-gif-4280622)), putting in [both of them](https://bar-rts.com/replays/?page=1&limit=24&hasBots=false&endedNormally=true&players=Raghna&players=%5Bteh%5DTeddy) gets you a list of games where they were both players!]]></contents>
        <tags>Website</tags>
        <pubDate>2024-02-17 05:40:48</pubDate>
      </item>
    
      
      <item>
        <title>Bugfixes and tiny features</title>
        <author>Hobo_Joe</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/80</link>
        <id>80</id>
        <guid>80/20240212084825</guid>
        <last_updated>2024-02-12 08:48:25</last_updated>
        <description><![CDATA[A bunch of small items were just merged, nothing groundbreaking but maybe these will give you some relief if you&#39;ve run into them. Fixed mex handling on several metal maps (note, this won&#39;t affect AI), fixed some line drag behavior and added an option related to it, fixed not being able to place buildings on top of other commands (e.g. move), fixed pregame building placement not indicating when a spot is blocked. More details below!]]></description>
        <contents><![CDATA[## Features:
- Line drag can now be disabled when only a single unit is selected and shift is held. This is to avoid accidently placing a bunch of unwanted move orders when quickly microing a single unit. The option is in controls->commands
- Gridmenu no longer blocks keybinds that use `meta` as a modifier. (ctrl, alt, and shift are still blocked due to bad interactions)

## Fixes
- Fixed being unable to place blueprints on top of existing commands (primarily move commands)
- Fight commands no longer break when dragging with a single unit
- When hovering a building over invalid terrain during pregame, it will now correctly display that to the player
- Fixed mex placement during pregame on a select number of metal maps, such as oort cloud
- No longer display erroneous metal "spots" on full metal maps (again, such as oort cloud)
- Deleted an old useless widget. I love deleting code :]]]></contents>
        <tags>PvE, Bugs, Interface</tags>
        <pubDate>2024-02-12 08:47:10</pubDate>
      </item>
    
      
      <item>
        <title>New Dragons, Demons, and Salamanders migrated to base game, along with Fire and Lightning boats.</title>
        <author>Hornet</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/79</link>
        <id>79</id>
        <guid>79/20240216201354</guid>
        <last_updated>2024-02-16 08:13:54</last_updated>
        <description><![CDATA[After an extended testing period, Fire and Lightning boats from the T2 sea mod option have migrated into base game along with the updated &#39;carrier&#39;/anti ship.  My updated Dragons, Demons, and Salamanders from Release Candidates are now in base game, and Drone Carriers have now moved to Release Candidate Units.]]></description>
        <contents><![CDATA[After an extended testing period, the GDT have voted, and Fire and Lightning boats from the T2 sea mod option have migrated into base game along with the updated 'carrier'/anti ship.  My updated Dragons, Demons, and Salamanders from Release Candidates are now in base game.  Drone Carriers are now under Release Candidate Units, as the T2 sea option has been removed. Printer (Cortex T2 vehicle field engineer) and Shockwave (the Armada T2 stealth/ambush mex) remain in the RC pack.

These options have been present for some time, so I assume most people reading this will need no introduction to the units in question.  For those newer to the game, this change gives Cortex an amphibious raider tank, which is fairly effective anti spam, and the Demon, a T3 raider/assault mech, which will help redress the lopsided T3 balance.  The demon ground DPS has been somewhat reduced, by 20%, and is no longer amphibious. This is pending live game evaluation on gameplay effects, and is not a concrete change yet.

Compared to the original, the improved Dragon has a flamethrower, better laser weaponry in terms of both DPS and firing arcs, and a light anti air turret.  The currently merged dragon has half the AA dps of the prior RC, so please bear this in mind when raiding (this may also be reevaluated later).

The sea changes remove the aircraft carrier, and replace it with an antinuke & generator ship that fills a similar supporting role.  For naval air repairs, don't forget that floating air repair pads have been in the main game for some time now, as built by aircons

Both factions have a 'crowd control' boat, which for Armada is a lightning vessel, and Cortex, a flamethrower ship. They can be very effective, so don't forget they exist, especially if you use grid layout, as you may find they're hiding on the second page of the T2 shipyard build options.  The Drone Carrier is an effective long ranged support ship, and will now appear when Release Candidates are enabled.

As ever, RC unit discussion and feedback is still very welcome in the [usual discord thread](https://discord.com/channels/549281623154229250/1165607954611961938)]]></contents>
        <tags>Balance, Gameplay</tags>
        <pubDate>2024-02-09 10:52:55</pubDate>
      </item>
    
      
      <item>
        <title>Unbacom removed from BAR</title>
        <author>Hobo_Joe</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/78</link>
        <id>78</id>
        <guid>78/20240209023807</guid>
        <last_updated>2024-02-09 02:38:07</last_updated>
        <description><![CDATA[Unfortunately camels back has been broken by one last straw, and unbacom has been removed from BAR, and will remain removed indefinitely. In short, it is too unstable and causes too many bugs to remain in its current state. Read on for more details!]]></description>
        <contents><![CDATA[### Why did this happen?

Unbacom has a history of breaking things. In the past year or so it has regularly caused bugs with gridmenu, buildmenu, and pregame building. This alone was quite bad, but in the past couple of days unbacom completely broke Barb AI, causing a ton of confusion and a flood of bug reports.

### Technical explanation
Unbacom basically works by having a super unit from the start, it has all the weapons, damage, and buildoptions. Then, as milestones are reached it levels up, and it does so by going through and unlocking some of these buildoptions and weapons. So what's wrong with that? Well, this is the *only* unit in BAR that works this way, and none of the systems of the game are made to work with it. So instead of it just being a unit that got enabled when this option was turned on, it had code spread far and wide throughout the game to give custom handling for this specific unit.

This was mostly located in gridmenu, buildmenu, pregame, and unit stats display. Over the last year or so, myself and others have tracked down and fixed a lot of these bugs, but this kind of maintenance overhead for what should be a simple unit was becoming more and more laborious. And then recently, Barb AI broke because of it - for the similar reasons as the other cases, Barb saw this nice huge buildlist that unbacom had, and would try to make some of those things, but because of the custom handling spread throughout the codebase, it got denied, and would basically get stuck in a loop trying to build something that other parts of the code wouldn't let it.

Now, this bug could be fixed. And indeed, many bugs like this have been fixed in the past. But it was decided that the maintenance cost, as well as the regular regressions and bug reports caused by it was too high to allow it to remain.

### What now?
Unbacom isn't being barred (heh) from the game, if the technical issues described above can be addressed by a willing and capable volunteer, there is a good chance it will get added back. Since the creation of unbacom, there's been a new evolving unit on the field: legion com. Instead of doing what unbacom did and having a bunch of custom code spread around for the different levels, legion com is literally just a bunch of different units, each with their own buildlists and weapons. So now, instead of having custom handling in tons of different core parts of the codebase, it can just swap the unit out for a different one, and all these systems will treat it exactly the same as they treat any other unit.

This won't be a simple task however, it will amount to being a complete rewrite of unbacom from the ground up. But if you think you can do this, don't hesitate to volunteer!]]></contents>
        <tags>Raptors, PvE, Scavengers, Modding, Gameplay, AI</tags>
        <pubDate>2024-02-09 02:34:16</pubDate>
      </item>
    
      
      <item>
        <title>Moderation policy change - stricter actions for in-game actions in modded Raptors games</title>
        <author>Perfi</author>
        <posted_to>Public moderation log</posted_to>
        <link>/microblog/show/77</link>
        <id>77</id>
        <guid>77/20240207190438</guid>
        <last_updated>2024-02-07 07:04:38</last_updated>
        <description><![CDATA[Here&#39;s a slightly delayed update on a moderation policy change. Because we&#39;re volunteers with limited time on our hands, we&#39;re going to be skipping steps on the escalation ladder for in-game actions, such as griefing, in modded Raptors games, which take a very long time to watch and process. We thus want to dissuade people from doing so in the first place, and hope the modded Raptors community passes this along by word of mouth.]]></description>
        <contents><![CDATA[Here's a slightly delayed update on a moderation policy change. Because we're volunteers with limited time on our hands, we're going to be skipping steps on the escalation ladder for in-game actions, such as griefing, in modded Raptors games, which take a very long time to watch and process. We thus want to dissuade people from doing so in the first place, and hope the modded Raptors community passes this along by word of mouth.

![Raptor game](https://i.imgur.com/22aho9O.png)

*A typical modded Raptors game. Pretty? Now imagine watching that for an hour or so at 0.89x simulation speed.*

I know what you're thinking - "it's just people chilling in PvE, what's the harm?". Sure, that's one way of looking at it. But there are two possible ways this can go:

- we leave PvE to become a lawless Wild West - this would not be enjoyable for anyone
- we continue handling griefing in PvE, but take measures to protect the time of our volunteers in the Overwatch team

We're choosing the latter. We're thus going to be skipping a step or two on [the escalation ladder, previously defined in the Moderation guide on the website](https://www.beyondallreason.info/guide/what-is-moderation-how-does-it-work#why-do-punishments-vary-for-the-same-offence), on a case-by-case basis, for offenders in heavily modded Raptors games. We'll thus skip warnings and go with 3-5 day suspensions from the get go.

As a side note - do try vanilla Raptors instead :)]]></contents>
        <tags>PvE, Moderation</tags>
        <pubDate>2024-02-07 06:49:27</pubDate>
      </item>
    
      
      <item>
        <title>More epic tunes added to BAR soundtrack by our new authors!</title>
        <author>PtaQ</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/76</link>
        <id>76</id>
        <guid>76/20240207191635</guid>
        <last_updated>2024-02-07 07:16:35</last_updated>
        <description><![CDATA[Exciting news! The BAR soundtrack is leveling up with the addition of talented composers like Leon Devereux, Nathan Sharples, Matteo Dell’Acqua, and Russell Lucas-Nutt. We&#39;ve been steadily enhancing both the menu and in-game track selections, so be sure to check out the latest tunes!]]></description>
        <contents><![CDATA[We're excited to share that the BAR soundtrack is becoming even more fantastic with the arrival of new composers! Over time, we've introduced fresh additions to both the menu and in-game track lists. Join us in welcoming our talented new creators aboard:

- [Leon Devereux](https://soundcloud.com/leon-d-3) 
- [Nathan Sharples](https://open.spotify.com/track/0m52MCTVz9xggIAi0KL5Rt?si=dtF_ccjITLKvdVioZDBPCQ&nd=1&dlsi=c0fade25e85943a1)
- [Matteo Dell'Acqua](https://matteoh2o1999.github.io/en-us/music)
- [Russell Lucas-Nutt](https://soundcloud.com/rsslcs)

Explore the latest tracks below:

### New PEACE tracks
- [**Lost Directive**](https://www.youtube.com/watch?v=-dOZmwHrZ_c) by Leon Devereux
- [**Game of Chicken**](https://www.youtube.com/watch?v=oXP4Hw1hqQM) by Matteo Dell'Acqua

### New WAR tracks
- [**Crashing Down**](https://www.youtube.com/watch?v=glXgXN0onNA) by Nathan Sharples
- [**fooBAR (Battle Version)**](https://www.youtube.com/watch?v=H8voeIn9fcU) by Matteo Dell'Acqua
- [**All Hands on Deck**](https://www.youtube.com/watch?v=u37CCKzBjTA) by Matteo Dell'Acqua
- [**Fading Hope of Victory**](https://www.youtube.com/watch?v=58joSfXxkG4) by Russell Lucas-Nutt (low conflict level)

### New MENU tracks
- [**fooBAR (Menu Version)**](https://www.youtube.com/watch?v=O6fbJAo3TvI) by Matteo Dell'Acqua
- [**Waystation Theta**](https://www.youtube.com/watch?v=TDskpWUk2ow) by Leon Devereux

### New BOSSFIGHT track

- [**Mother Of All Raptors**](https://www.youtube.com/watch?v=Bc8L8HxHEyc) by Matteo Dell'Acqua]]></contents>
        <tags>Music</tags>
        <pubDate>2024-02-07 04:40:30</pubDate>
      </item>
    
      
      <item>
        <title>Mex and geo building completely rewritten!</title>
        <author>Hobo_Joe</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/75</link>
        <id>75</id>
        <guid>75/20240207081444</guid>
        <last_updated>2024-02-07 08:14:44</last_updated>
        <description><![CDATA[Much of this work was just under-the-hood work to improve some code, but players should also see a pretty substantial improvement to several mex and geo systems, like mex/geo snap, right-click build/updgrade for mexes, and of course area mex! Hopefully it should improve the behavior of Barb AI on some maps as well. Read on for more details!]]></description>
        <contents><![CDATA[In a recent release, all the code for handling how mexes and geos get built, upgraded, and shared has been completely redone - the bulk of this is under-the-hood changes to just improve the code for readability and maintainability, but there are 3 main things that you should see improvements to as a player:
- Mex/geo snap (automatic placement on the nearest available spot)
- Mex/geo right-click build/upgrade
- Area mex

So what do these improvements give you?
- All of these features should be more reliable overall and have fewer failure cases
- All of these features now intelligently handle building obstructions, e.g. if the spot is partially blocked, it will search for any valid position on the spot that's unobstructed
- All of these features now handle mex upgrades AND sidegrades (e.g. t1 mex to exploiter, or exploiter to t2 mex)
- All of these features now work on allied structures, and will share when upgrading any allied mex/geo
- Areamex has received improved pathing to reduce walk time and will take mex value into account (watch this space for bigger improvements in the future)
- Mex snap is now much more intelligent about snapping to upgradeable mexes, and can properly interact with the build queue
- All of these features will handle builders intelligently, giving build orders to all the selected cons that can make the chosen structure, and make all other cons guard the "main" cons (I hope to make this a universal feature in the future)
- Lots of other bugfixes to improve reliability and fix things like stuck building ghosts

But of course, big overhauls like this can easily introduce bugs, so please if you have any issues at all with these features bring a bug report to discord (and you can ping me, @Hobo Joe about them) so that we can fix them and ensure it's stable in a short time frame. Enjoy!]]></contents>
        <tags>AI, Bugs, Gameplay, Widgets, Interface</tags>
        <pubDate>2024-02-07 08:13:59</pubDate>
      </item>
    
      
      <item>
        <title>New Map: Hide and Seek</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/74</link>
        <id>74</id>
        <guid>74/20240207010113</guid>
        <last_updated>2024-02-07 01:01:13</last_updated>
        <description><![CDATA[A remake of the classic Zero-K map Hide and Seek is now available. It is a 1vs1 map that has the start areas closer to middle than the average map and demands players to expand on all sides to survive. Thanks to FlorisXIV for the original!]]></description>
        <contents><![CDATA[https://www.beyondallreason.info/map/hide-and-seek]]></contents>
        <tags>Maps</tags>
        <pubDate>2024-02-07 01:01:12</pubDate>
      </item>
    
      
      <item>
        <title>January&#39;s various changes summarized!</title>
        <author>Perfi</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/73</link>
        <id>73</id>
        <guid>73/20240201102636</guid>
        <last_updated>2024-02-01 10:26:36</last_updated>
        <description><![CDATA[There&#39;s been a fair bunch of recent changes that I thought could use summarizing in here :) Order mostly reverse-chronological, just looking at [the recent commits on the master branch of the main repo](https://github.com/beyond-all-reason/Beyond-All-Reason/commits/master/). This, thus, excludes work happening elsewhere.]]></description>
        <contents><![CDATA[There's been a fair bunch of recent changes that I thought could use summarizing in here :)

Order mostly reverse-chronological, just looking at [the recent commits on the master branch of the main repo](https://github.com/beyond-all-reason/Beyond-All-Reason/commits/master/). This, thus, excludes work happening elsewhere.

- Beherith is hard at work optimizing widgets, so that they take less memory, waste less CPU time, and are snappier in general! This is heavily supported by the Tracy profiling framework.
- Swordelf2 fixed Attack Range GL4 for hounds and other state-toggling units, it won't break on gauss cannon mode anymore
- rlcevg fixed BARbAI for the new engine, and it should no longer explode.
- Beherith improved sensor rings - they'll be more visible on water and won't appear through terrain anymore. Radar preview accuracy also got a bump.
- Drivver prevented Pincers and Beavers from getting stuck in vehicle labs!
- Floris [took away hats from some people](https://www.beyondallreason.info/news/pro-2v2-tournament-3-january-27th).
- **Balance**: Zecrus & Hornet (I didn't ask who did which part)...
  - gave the Turtle a small AA gun
  - sped up Armada and Cortex T1 submarines 
  - reduced the Armada frigate's cost and increased it for the Cortex one
- Snoop improved the bottom left DPS display - it now accounts for the 50% damage reduction for lasers, and displays EMP damage separately. Hobo Joe then applied some refactoring that's been overdue for a while for that widget.
- Fireball changed how uncertainty is displayed - it's not weirdly scaled anymore, directly corresponding to [what you can see on the server website](https://server4.beyondallreason.info/battle/ratings). Ratings in the player list are also colored according to uncertainty. Neat!
- Jazcash is vastly improving how issues and PRs are made and labeled on GitHub.
- The widget handler will no longer explode past 1.2 GB memory usage.
- Citrine did a bunch of work for systems not supporting GL4. This also helps headless mode a lot.
- EnderRobo and Zecrus gave Legion, wait, a NEW T3 TANK?! I missed that myself! Try the Keres today!
- Psyborg8 is in a tight race with Beherith on who can shave off more loading time. In this kind of race, there are only winners. 
- Marek went through every single line ending in the repository and made them Unix style. Now that's attention to detail! ;)
- AmbulatoryCortex made Pit of Azar.
- AmbulatoryCortex removed Pit of Azar, pending some further changes.
- We have a bunch of new music from Nathan Sharples ([Crashing Down](https://www.youtube.com/watch?v=glXgXN0onNA))
- Beherith is refactoring build priority, so it, IIRC, takes less resources.
- Floris made a few optimizations via conditional caching! Turns out Legion factions unit icons aren't necessary in every game... yet :)
- Wait, there's ANOTHER NEW T2 LEGION TANK BY EnderRobo?! And it can *turn into a boat*?! Try the Triton today in your local Legion match!
- **Balance**, this was a while ago but went unmentioned:
    - T2 vehicle artillery now more expensive.
    - Supporter can now see further.
    - Skater and Herring both have a 1000-range radar now, to help players make better decisions on naval engagements.
- Hornet fixed Demon meditation. [That's it, that's the commit.](https://github.com/beyond-all-reason/Beyond-All-Reason/commit/54d939fc43405f07d0328df292578dade452e7a6) The Demon is, of course, available in the Release Candidates unit pack and will not be reaching enlightenment any time soon.
- Hihoman23 discovered that the naval T1 torpedo launchers come in a pop-up variant that can pretty much only be made by the T1 amphibious vehicle cons. They're pop-up in the sense that they start submerged and float up to the sea surface on being finished. And, if I remember the resolution of that correctly, they work again!
- Fr4nsson improved checks for options such as "no air" or "no water". Turns it if there's no air units, there's also little reason to make anti-air turrets.
- Zecrus added a lategame rebalance test modoption. To quote: *The modoption is designed to increase the amount of time that late T2 strategies remain viable by reducing the strength of T2 defences and increasing the cost of early T3 units.  The cost of Calamity and Ragnarok is increased to give the T3 stage more time.*
- Hornet gave Termites ~~scoliosis~~ a slanted hitbox, allowing them to fire over each other. Other release candidate units and Legion were also adjusted.
- ScottMcNaught improved pathing and prioritizing for Raptors wanting to eat all your economy. As usual, decoy fusion reactors were forgotten and fixed in a later PR.

And that's it, that's January in BAR! Please give all the developers your love and appreciation :)]]></contents>
        <tags>Bugs, Maps, Interface, Graphics, Widgets, Music, Balance, AI</tags>
        <pubDate>2024-02-01 09:51:14</pubDate>
      </item>
    
      
      <item>
        <title>Engine Hotfix Released (2300)</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/72</link>
        <id>72</id>
        <guid>72/20240131123945</guid>
        <last_updated>2024-01-31 12:39:45</last_updated>
        <description><![CDATA[New engine update has been released. This focuses on addressing the issues identified with the last release. Many thanks for your reports.

Click through to get the details of what has changed.]]></description>
        <contents><![CDATA[New engine update has been released. This focuses on addressing the issues identified with the last release. Many thanks for your reports.

Changes since 2293
* Barbarian AI updated.
* Fixed: Factory yardmaps (which handles blocked and open areas) are not always applied correctly to the ground collision map.
* Fixed: Some units could slide onto terrain that was too steep for them and get stuck there.
* Fixed: Certain types of path queries where the goal was just out of reach could result in units trying too hard to reach the goal.]]></contents>
        <tags>Engine</tags>
        <pubDate>2024-01-31 12:35:09</pubDate>
      </item>
    
      
      <item>
        <title>Engine Hotfix Released (2293)</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/71</link>
        <id>71</id>
        <guid>71/20240131124116</guid>
        <last_updated>2024-01-31 12:41:16</last_updated>
        <description><![CDATA[New update has been released. The key aspect of this update is fixes for unit movement, so units (especially submarines) shouldn&#39;t get trapped and movement should be a little smoother.

Click for more information.]]></description>
        <contents><![CDATA[We've had a few more hot fixes in the background, sorry for not creating a blog entry for those! But with this release, I have prepared one this time.

Changes since 2240
* Barbarian AI updated.
* Fixed: underwater units could get trapped underneath floating buildings.
* Fixed: straight line move commands could sometimes cancel themselves immediately.
* Fixed: underwater units had to path around buildings above and below, regardless of whether it could block them.
* Fixed: units could slide themselves around terrain in such a way that they could trap themselves in a isolated pocket.
* Fixed: units sliding was still too fast. Units now travel along edges of buildings and terrain at their intended speed.
* Fixed: units could do an instant jump around corners of buildings. This was to avoid units gets stuck on them, but the effect was too noticeable - especially for slower units. So now extra logic has been added to make units travel around the corner in a fashion that looks more acceptable than a hop.
* Fixed: minor issues found in the COB scripting engine.
* Fixed: case where textures didn't load in on a luarules reload command. 
* Performance improvements for the new pathing system.

Notes:
* We are investigating some rare crashes. It order to do so, we've put some debugging in the suspected areas. Unfortunately, this has a slight performance impact. They will be removed once we have the information we need from the crash reports.]]></contents>
        <tags>Engine</tags>
        <pubDate>2024-01-30 10:11:54</pubDate>
      </item>
    
      
      <item>
        <title>Engine Hotfix Release for Testing (2287)</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/70</link>
        <id>70</id>
        <guid>70/20240126131914</guid>
        <last_updated>2024-01-26 01:19:14</last_updated>
        <description><![CDATA[Resolved a desync issue with the last hotfix for testing. This has been uploaded onto the test server. If no other major issues arise over the weekend then we plan to release this early next week.]]></description>
        <contents><![CDATA[Resolved a desync issue with the last hotfix for testing. This has been uploaded onto the test server. If no other major issues arise over the weekend then we plan to release this early next week.]]></contents>
        <tags>Testing, Engine</tags>
        <pubDate>2024-01-26 01:19:14</pubDate>
      </item>
    
      
      <item>
        <title>Engine Hotfix Release for Testing (2281)</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/69</link>
        <id>69</id>
        <guid>69/20240126131727</guid>
        <last_updated>2024-01-26 01:17:27</last_updated>
        <description><![CDATA[We&#39;ve had a few more hot fixes in the background, sorry for not creating a blog entry for those! But with this release, I have prepared one this time. This hotfix engine is loaded onto the test server. We plan to release this after this weekend&#39;s tournament. So we would be grateful if volunteers would give this engine hotfix and try and report back any issues or whether every is fine.

You can test the latest release candidate by selecting “Engine Test”, under Config, on the Launcher, click Update, then click Start.

Click through to get the details of what has changed.]]></description>
        <contents><![CDATA[We've had a few more hot fixes in the background, sorry for not creating a blog entry for those! But with this release, I have prepared one this time. This hotfix engine is loaded onto the test server. We plan to release this after this weekend's tournament. So we would be grateful if volunteers would give this engine hotfix and try and report back any issues or whether every is fine.

You can test the latest release candidate by selecting “Engine Test”, under Config, on the Launcher, click Update, then click Start.

Changes since 2240
	* Barbarian AI updated.
	* Fixed: underwater units could get trapped underneath floating buildings.
	* Fixed: straight line move commands could sometimes cancel themselves immediately.
	* Fixed: underwater units had to path around buildings above and below, regardless of whether it could block them.
	* Fixed: units could slide themselves around terrain in such a way that they could trap themselves in a isolated pocket.
	* Fixed: units sliding was still too fast. Units now travel along edges of buildings and terrain at their intended speed.
	* Fixed: units could do an instant jump around corners of buildings. This was to avoid units gets stuck on them, but the effect was too noticeable - especially for slower units. So now extra logic has been added to make units travel around the corner in a fashion that looks more acceptable than a hop.
	* Fixed: minor issues found in the COB scripting engine.
	* Fixed: case where textures didn't load in on a luarules reload command. 
	* Performance improvements for the new pathing system.

Notes:
	* We are investigating some rare crashes. It order to do so, we've put some debugging in the suspected areas. Unfortunately, this has a slight performance impact. They will be removed once we have the information we need from the crash reports.]]></contents>
        <tags>Engine, Testing</tags>
        <pubDate>2024-01-24 10:12:19</pubDate>
      </item>
    
      
      <item>
        <title>Quicker maps downloads from Asia, Australia and the Americas</title>
        <author>[T0]Marek</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/68</link>
        <id>68</id>
        <guid>68/20240117225114</guid>
        <last_updated>2024-01-17 10:51:14</last_updated>
        <description><![CDATA[I&#39;ve deployed a change that replicates maps to two additional data centers: one in Western North America and one in Japan. If a map file is not cached in the CDN edge server near the player, it will be fetched from the nearest data center instead of always relying on the data center in Europe.]]></description>
        <contents><![CDATA[We're utilizing [Cloudflare](https://www.cloudflare.com/) as our CDN provider for maps data. Map files are stored in a [R2](https://www.cloudflare.com/developer-platform/r2/) bucket, and served via a [Worker](https://workers.cloudflare.com/) script that caches them on edge servers.

With the current size of the player base, and the size of map files, caching in the Cloudflare edge servers is not very effective and we don't achieve high cache hit ratios. This often results in players having to download map files from the origin R2 bucket in Europe, leading to slower download speeds, especially for players outside Europe.

In a [change deployed today](https://github.com/p2004a/springfiles-mirror/pull/1) I've added two additional R2 buckets, one located somewhere in Western North America and one in, I believe, Japan (Cloudflare doesn't [fully disclose](https://developers.cloudflare.com/r2/reference/data-location/) the location of their buckets). The program that adds maps, will always upload them to all three buckets, and the Worker script running on edge servers will fetch the map files from the geographically nearest of the three buckets if map if not present in the local cache.

I hope that this change will improve the experience for players outside of Europe.]]></contents>
        <tags>Infrastructure</tags>
        <pubDate>2024-01-17 10:48:17</pubDate>
      </item>
    
      
      <item>
        <title>New Map: Hyperion Shale</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/67</link>
        <id>67</id>
        <guid>67/20240111173345</guid>
        <last_updated>2024-01-11 05:33:45</last_updated>
        <description><![CDATA[I have released a new map called Hyperion Shale. It is a 5-way FFA map for 5 or 10 people or North vs South for up to 12 people. Feedback welcome in #mapping.]]></description>
        <contents><![CDATA[https://www.beyondallreason.info/map/hyperion-shale]]></contents>
        <tags>Maps</tags>
        <pubDate>2024-01-11 05:33:45</pubDate>
      </item>
    
      
      <item>
        <title>New Launcher Release</title>
        <author>[T0]Marek</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/66</link>
        <id>66</id>
        <guid>66/20240104164529</guid>
        <last_updated>2024-01-04 04:45:29</last_updated>
        <description><![CDATA[Today, we will start the release process of a new launcher version. Your launchers will start the update process within the next few days.]]></description>
        <contents><![CDATA[We start the release of [launcher version 1.2838.0](https://github.com/beyond-all-reason/BYAR-Chobby/releases/tag/v1.2838.0)!

The launcher update process will use a staged rollout. We will first push the update to a small subset of users, wait a bit, then push it to an even larger group. Eventually, we will expand the update to everyone and mark it as the default version on the website's download page.

Currently planned schedule, assuming the process goes smoothly, is:
- Jan 4, Europe afternoon: 1%
- Jan 5, Europe morning: 5% and push to [Flathub](https://flathub.org/apps/info.beyondallreason.bar).
- Jan 5, Europe afternoon: 20%
- Jan 6, Europe morning: 100% and mark as default on website.

You can manually install the new version and read the release notes on [this GitHub releases page](https://github.com/beyond-all-reason/BYAR-Chobby/releases/tag/v1.2838.0).

If you encounter any issues with the update, please open a new thread in the [#support-bugs](https://discord.com/channels/549281623154229250/1047080297042280518) channel on Discord.]]></contents>
        <tags>Launcher</tags>
        <pubDate>2024-01-04 02:16:35</pubDate>
      </item>
    
      
      <item>
        <title>Engine Hotfix Release (2193)</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/65</link>
        <id>65</id>
        <guid>65/20231231121436</guid>
        <last_updated>2023-12-31 12:14:36</last_updated>
        <description><![CDATA[Thank you to our community for reporting back issues with the current engine release. A hotfix release that addresses some of these issues is now live. Further work and investigations are still underway. Please report any issues you encounter with the game. Click through for more information about the issues addressed in this patch release.]]></description>
        <contents><![CDATA[Thank you to our community for reporting back issues with the current engine release. A hotfix release that addresses some of these issues is now live. Further work and investigations are still underway. Please report any issues you encounter with the game.

Changes since 2152
    * Fixed: Crash that could happen if a unit fell to their destruction.
    * Fixed: Clicking mouse on the loading screen could cause a crash.
	* Fixed: Terrain could appear flat on low graphics setting
	* Fixed: Units get stuck in wrecks and can't move.
	* Fixed: Units moving in a straight path could get caught up for awhile if an obstacle, like a wreck, appeared on their line of travel.
	* Fixed: Pathing system could crash if the unit's start/end positions were outside of the map.
	* Fixed: Rare case where hover units could cause a crash.
	* Fixed: Huge units could cause the pathing system to crash.
	* Fixed: Units frames could appear incorrectly rotated as they are being built.
	* Fixed: Having exactly the engine's limit of units could cause a crash.
	* Fixed: Matrix compares with -+0 values were technically incorrect.
	* Fixed: Sim speed adjustment could go below minimum value permitted.
	* Fixed: Bitmap loading.
	* Fixed: LuaSyncedMoveCtrl::SetMoveDef parsed arguments incorrectly.
	* Changes around unit build radius updated to be more consistent and modifiable by the game.
	* HAPFS checksum version incremented
	* Checksum of each archive now reported in logs.
	* Dump function for 3do-format models.

Under Investigation
	* Units can still find themselves stuck in terrain in rare cases
	* Performance issues, particularly in Raptor games
	* Units maybe should be more keen to stop at dead ends if their goal is not accessible]]></contents>
        <tags>Engine</tags>
        <pubDate>2023-12-31 12:09:31</pubDate>
      </item>
    
      
      <item>
        <title>Chobby theme update</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/64</link>
        <id>64</id>
        <guid>64/20231223052659</guid>
        <last_updated>2023-12-23 05:26:59</last_updated>
        <description><![CDATA[I just released an update to the lobby client that optimises image preloading of the theme and other areas. The load saved game menu has been cleaned up and rearranged with a minimap for each save now. Confirmation dialogs for deletion and interrupt loading of saved games have been fixed. Scrollbars are now a bit more vivid when selected.]]></description>
        <contents><![CDATA[Feedback can be given in the #chobby discord channel.]]></contents>
        <tags>Client</tags>
        <pubDate>2023-12-23 05:18:26</pubDate>
      </item>
    
      
      <item>
        <title>Large new Heat &amp; Burn Update</title>
        <author>IceXuick</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/63</link>
        <id>63</id>
        <guid>63/20231221230050</guid>
        <last_updated>2023-12-21 11:00:50</last_updated>
        <description><![CDATA[Legion Heat and Napalm stuff got a long-awaited update. More burn, better heat, and less performance cost.]]></description>
        <contents><![CDATA[# New effects
You can check out the latest videos on [Discord here](https://discord.com/channels/549281623154229250/1063217502898884701/1187511414701686904)

## Heatrays
Heatrays are cool, but they were a bit overbright and heavy on performance. While not being low of performance-cost, I've reduced the cost significantly. Going from multiple 100s of light-sources used in the custom-sweeping-fire-effects, it's now down to 4-9 lights per weapon/unit. 

## Napalm
Also we finally have a nice splash-explosion for napalm. This was never there and the initial impact on Napalm was very "meh". Now it has a proper fire-blast effect. Also the projectiles of the napalm launchers have been upgraded. So you should now have more heartwarming fires.

## Sounds
I also made new sounds for all Heatrays, and improved some unit-event sounds to be more present (Juggernaut). Found a bug, and worked around it, which now makes it possible to set custom volumes for custom effects. This also was needed to fix sounds for Heatrays, where they are played many/multiple times. The Legion Incinerator still needs a fix for this, but the latest Legion Phoenix Heavy Laser 'Bomber' is fixed and sounds pretty neat now. 

## Lights
During this update I learned some new tricks to improve lighting quality (and control over it) - and at the same time reduce performance cost a lot. So another win-win today!]]></contents>
        <tags>Graphics, Sounds</tags>
        <pubDate>2023-12-21 11:00:23</pubDate>
      </item>
    
      
      <item>
        <title>Legion Air Updates</title>
        <author>Hornet</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/62</link>
        <id>62</id>
        <guid>62/20231219132412</guid>
        <last_updated>2023-12-19 01:24:12</last_updated>
        <description><![CDATA[Legion Air is now almost complete, along with a shiny new tower. Read on for details!]]></description>
        <contents><![CDATA[The first of two major batches I've been working on, this update makes Legion air almost entirely unique units, with the sole remainder of the torpedo bomber, and the T1 transport.

A brief summary of the new units:


Legionnaire, a slow but strong defensive fighter.

![img](https://i.imgur.com/um2Ff8C.png)


Venator, a speedy interceptor with high initial damage, but poor handling & dogfighting ability.

![img](https://i.imgur.com/viRdr7u.png)


Phoenix, a 'bomber'/ground assault aircraft that attacks in a straight line

![img](https://i.imgur.com/0qPgR3S.png)


Stronghold, an armed transport & gunship

![img](https://i.imgur.com/wdymdgj.png)

Whisper, the T2 scout

![img](https://i.imgur.com/emmm5E2.png)


And lastly, Bastion, a heavy defensive tower.

![img](https://i.imgur.com/ILpYCV0.png)


Head to [the Discord thread](https://discord.com/channels/549281623154229250/1186659952723497050) for a video and discussion!]]></contents>
        <tags>Models, Balance</tags>
        <pubDate>2023-12-19 01:24:12</pubDate>
      </item>
    
      
      <item>
        <title>Benchmark scenarios updates</title>
        <author>AKU</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/61</link>
        <id>61</id>
        <guid>61/20231218234418</guid>
        <last_updated>2023-12-18 11:44:18</last_updated>
        <description><![CDATA[Reworked collision, pathfinding test.]]></description>
        <contents><![CDATA[Changes for benchmark scenarios:
1. Reworked collision test to have high multithread loading again.
2. Removed pathfinding test from "Benchmark BAR".
3. Added dedicated "Benchmark pathfinding" scenario test on large Jade Empress map.

Collision and pathfinding tests will give different results in this update in compare with previous benchmarks versions.

I recommend to use "Benchmark BAR" as a default test.]]></contents>
        <tags>Testing</tags>
        <pubDate>2023-12-18 11:40:49</pubDate>
      </item>
    
      
      <item>
        <title>Engine Hotfix Release (2152)</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/60</link>
        <id>60</id>
        <guid>60/20231215121225</guid>
        <last_updated>2023-12-15 12:12:25</last_updated>
        <description><![CDATA[Thank you to our community for reporting back issues with the current engine release. A hotfix release that addresses some of these issues is now live. Please report any issues you encounter with the game. Click through for more information about the issues addressed in this patch release.]]></description>
        <contents><![CDATA[Thank you to our community for reporting back issues with the current engine release. A hotfix release that addresses some of these issues is now live. Please report any issues you encounter with the game.

Changes since 2142
	* Fixed: Ships and hovercraft could partially climb slopes on steep cliffs.
	* Fixed: Some performance issues related to path searches.
	* Fixed: Memory leak caused by paths not being released on occassion when a unit was destroyed.
	* Fixed: A few cases a unit wouldn't stop when it reached it's goal if in a large group heading for the same goal.
	* Fixed: Underwater amphibious unit could get stuck if it started a move command under a floating structure and the straight path went through a large underwater structure.]]></contents>
        <tags>Engine</tags>
        <pubDate>2023-12-15 12:12:25</pubDate>
      </item>
    
      
      <item>
        <title>Maps metadata organization project finished!</title>
        <author>[T0]Marek</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/59</link>
        <id>59</id>
        <guid>59/20231213233255</guid>
        <last_updated>2023-12-13 11:32:55</last_updated>
        <description><![CDATA[I can finally declare that the maps metadata project has reached 1.0! Now, when a new map is created, it takes only minutes and a single approval to push a new map to all players instead of days or weeks of the previous error-prone process.]]></description>
        <contents><![CDATA[At the beginning of the year, the process of adding a new map to the game was very error-prone and undocumented. Once the map was created and file uploaded, the process involved:

- Add it to some Google Sheet
- Create a PR to the Chobby repository with
   - a line from that above sheet
   - manually type out startboxes coordinates
   - properly resize map thumbnail in two different formats, with correctly named files.
- Create a PR to the SPADs configuration repository (which often took weeks to merge) with
   - startboxes like in Chobby
   - additions to `!nextmap` configuration (nobody did it)
- Ask somebody with permission to upload map to Google Drive folder
- Wait multiple hours for the map file to distribute to servers
- Ask somebody to manually copy the map file via FTP to the replays server
- Maybe fill in some form to add map to the website (almost nobody did it)

Now [the process](https://github.com/beyond-all-reason/maps-metadata/wiki/Adding-a-created-map-to-the-game) is:

- Add map details to our [Rowy](https://www.rowy.io/) instance (spreadsheet/Airtable like thingy): https://rowy.beyondallreason.dev
- Once someone reviews and approves the change, it gets automatically distributed everywhere within minutes

But that's not all: I've also implemented automatic testing of different map properties, and the steps along the way are monitored. If something goes wrong, I'm automatically notified.

All the metadata about the maps is now available in a single, machine-readable place. This is a **very** important point as in the past it was spread across many places in custom data formats. Having a single machine-readable source of truth and automation around it allowed us recently to launch https://www.beyondallreason.info/maps. This will also enable us to easily add information about maps to the new lobby.

I hope this streamlined process will allow mappers to focus on what they love: creating maps. For players, this means fewer issues caused by errors in map distribution.]]></contents>
        <tags>Maps, Infrastructure</tags>
        <pubDate>2023-12-13 11:31:35</pubDate>
      </item>
    
      
      <item>
        <title>New Map: Azurite Shores</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/58</link>
        <id>58</id>
        <guid>58/20231220014850</guid>
        <last_updated>2023-12-20 01:48:50</last_updated>
        <description><![CDATA[I just released a new map called Azurite Shores. It should support team games 2vs2 to 8vs8. Give it a try and let me know what your think in #mapping.]]></description>
        <contents><![CDATA[https://www.beyondallreason.info/map/azurite-shores]]></contents>
        <tags>Maps</tags>
        <pubDate>2023-12-12 05:33:37</pubDate>
      </item>
    
      
      <item>
        <title>The Overwatch team needs your help!</title>
        <author>Perfi</author>
        <posted_to>Public moderation log</posted_to>
        <link>/microblog/show/57</link>
        <id>57</id>
        <guid>57/20231211050734</guid>
        <last_updated>2023-12-11 05:07:34</last_updated>
        <description><![CDATA[If you’d like to help us keep BAR a sane place and you’d be up for watching a few replays in a usual week, we’d like you to sign up for the Overwatch team. :) Head to https://discord.com/channels/549281623154229250/1097438343861649458, or read more below.]]></description>
        <contents><![CDATA[BAR is growing nicely, but with that growth come challenges such as an increasing volume of moderation reports, especially ones about in-game actions - you know, of the "someone d-gunning an ally" variety. If you've been playing a lot, you've probably experienced something like that... although I'd like to think that if we're doing our job right, those run-ins have been a lot less frequent than they would otherwise have been!

For every such report, we usually need someone to:
1. find and watch the replay
2. take a few screenshots of critical moments
3. provide a quick summary of what happened
4. answer any follow-up questions moderators may have before swinging the hammer

That's where you come in! If you'd like to help us keep BAR a sane place and you'd be up for watching a few replays in a usual week, we'd like you to join the Overwatch team.

Remember that it's a marathon, not a sprint! We explicitly want to prevent having one person carrying the team on their gigachad shoulders for a week, then burning out! Thus, we're hoping to add about six to ten people in this round of recruitment, the largest to date. At the same time if for any period of time you get too busy to contribute, that's perfectly fine, real life always takes priority over volunteering. That's why we're planning to spread out the workload a bit more.

Sign up [on the official Discord, `#looking-for-volunteers` -> Overwatch team](https://discord.com/channels/549281623154229250/1097438343861649458). Remember to leave your in-game nickname!

*Disclaimer: we reserve the right to pick and choose who we work with. People who usually give us more work on the team will have a lower priority. ;)*]]></contents>
        <tags>Community, Moderation</tags>
        <pubDate>2023-12-11 05:06:36</pubDate>
      </item>
    
      
      <item>
        <title>Looking for testers for gridmenu!</title>
        <author>Hobo_Joe</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/56</link>
        <id>56</id>
        <guid>56/20231210232015</guid>
        <last_updated>2023-12-10 11:20:15</last_updated>
        <description><![CDATA[I&#39;m looking for people who use gridmenu, and are interested in helping design and playtest changes to it, being a developer is not required!]]></description>
        <contents><![CDATA[The original designer of gridmenu has very sadly gone on indefinite hiatus from BAR, so we're really lacking in people with good understanding of the design of gridmenu who can help continue its design and development. There are still a couple developers who work on it (myself and badosu), but we could really use people who see things from another perspective and are able to propose design changes and test out any potential updates.

So what would that entail? For now, mostly just testing out some design changes and bugfixes that have been languishing without proper testers, but I'd like to continue with more design changes and improvements, possibly including grid keybinds as well, so having an eye for consistency and ergonomics would be wonderful. As for the technical aspects, simply understanding how to download widgets is all that's strictly necessary, though understanding git and being able to set up a dev environment for BAR would be a big bonus :)

If you're interested please just @Hobo Joe on discord or visit the #grid-menu channel.]]></contents>
        <tags>Gameplay, Interface, Testing</tags>
        <pubDate>2023-12-10 11:19:47</pubDate>
      </item>
    
      
      <item>
        <title>Areamex improvements</title>
        <author>Hobo_Joe</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/55</link>
        <id>55</id>
        <guid>55/20231209011211</guid>
        <last_updated>2023-12-09 01:12:11</last_updated>
        <description><![CDATA[Better controls, better flexibility, new features! Now works with any type of mex, supports upgrades and sidegrades and allied mexes, and can be activated by double-selecting any mex type in your buildmenu.]]></description>
        <contents><![CDATA[Better controls, better flexibility, new features! Now works with any type of mex, supports upgrades and sidegrades and allied mexes, and can be activated by double-selecting any mex type in your buildmenu.

Did you know areamex was a thing? Did you try to use it a couple times then stop trying because it was clunky and limited? No more!

Areamex no longer requires a dedicated hotkey, instead selecting any mex twice will activate it.
Areamex now works with _any type of mex_, so now you can spam exploiters on CCR with one click.
Areamex is now much more intelligent about upgrading existing mexes, and will allow any upgrade or sidegrade.  What does that mean?
- Exploiters/twilights will upgrade basic mexes
- T2 exploiters/twilights will upgrade any basic mexes, exploiters or twilights, or t2 mexes

Plus a few small tiny tweaks to make it work more nicely with shift-queue and grid menu. Hopefully this makes areamex a much more useful and powerful tool for everyone.]]></contents>
        <tags>Gameplay, Interface</tags>
        <pubDate>2023-12-09 01:12:11</pubDate>
      </item>
    
      
      <item>
        <title>Naval Quality of Life Improvements</title>
        <author>Hornet</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/54</link>
        <id>54</id>
        <guid>54/20231207141952</guid>
        <last_updated>2023-12-07 02:19:52</last_updated>
        <description><![CDATA[In which Geos Exist, missile ships learn to drive, and air units can be repaired at sea. Read on for details!]]></description>
        <contents><![CDATA[As the regulars in my naval & flooded map lobbies are painfully aware, there have been a few notable omissions in the land/sea options, which I have now been able to partially address.

Firstly and most notably, sea now has proper geo powerplants. Some cons could build T1 geos before, but it was the exact same model - just underwater. T2 was not a thing at all.  Now there are proper models & effects, and a T2 upgrade option, which will hopefully also mean mapmakers start to feature them in water more often.

![Seos](https://i.imgur.com/2XMGDrH.png)![Seos](https://i.imgur.com/0TYPy4c.png)![Seos](https://i.imgur.com/59sKjr0.png)![Seos](https://i.imgur.com/fxdnivh.png)
![Seos](https://i.imgur.com/Is9QfMK.png)

Secondly, the air repair pad now has a water analogue, this is especially notable now that my reworked dragon is in the Release Candidate pack.  With the T2 expanded sea enabled, sea loses any repair options via aircraft carriers; this provides that facility again, allowing better force projection from a controlled sea.

![Armada](https://i.imgur.com/qn3ycb4.png)![Cortex](https://i.imgur.com/Q5DjmJk.png)

And on that note, missile ships have finally passed their driving test, and while they still won't stop instantly, they will at least not yeet themselves ~100 more units into range than was actually needed to reach a specifed target - which was always profoundly frustrating when they seemed hellbent on getting themselves scrapped by pulsars, even with constant active micro.

If any bugs are encountered, please let me know in [the Discord thread](https://discord.com/channels/549281623154229250/1182325402237149244)

Lastly, people keep asking about sea plasma shields - remember that they exist in the 'extra unit' pack!]]></contents>
        <tags>Models, Gameplay</tags>
        <pubDate>2023-12-07 02:19:52</pubDate>
      </item>
    
      
      <item>
        <title>Engine Hotfix Release (2142)</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/53</link>
        <id>53</id>
        <guid>53/20231205131031</guid>
        <last_updated>2023-12-05 01:10:31</last_updated>
        <description><![CDATA[Thank you to our community for reporting back issues with the current engine release. A hotfix release that addresses some of these issues is now live. Please report any issues you encounter with the game. Click through to see further information.]]></description>
        <contents><![CDATA[Thank you to our community for reporting back issues with the current engine release. A hotfix release that addresses some of these issues is now live. Please report any issues you encounter with the game.

Changes since 2131
	* Fixed: Builders may choose to travel around a cliff rather than build something they could reach while on the top of the cliff.
	* Fixed: Units can get stuck in wrecks when they intersect a the unit as it gets destroyed.
	* Fixed: Units are able to push each other in such a way that they can push through structures.
	* Fixed: HAPFS (previous pathign system) crash.
	* Fixed: Some maps can crash with Barbarian AI during loading.
	* Fixed: Units may not be able to get in range of building something that cannot be pathed to.
	* Fixed: A performance issue in QTPFS pathing.
	* Fixed: Issue with checksum generation when reading map files.]]></contents>
        <tags>Engine</tags>
        <pubDate>2023-12-05 01:10:18</pubDate>
      </item>
    
      
      <item>
        <title>Engine Hotfix Release (2131)</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/52</link>
        <id>52</id>
        <guid>52/20231201141814</guid>
        <last_updated>2023-12-01 02:18:14</last_updated>
        <description><![CDATA[Thank you to our community for reporting back issues with the current engine release. A hotfix release that addresses some of these issues is now live. Further work and investigations are still underway. Please report any issues you encounter with the game. Click through to see further information.]]></description>
        <contents><![CDATA[Thank you to our community for reporting back issues with the current engine release. A hotfix release that addresses some of these issues is now live. Further work and investigations are still underway. Please report any issues you encounter with the game.

Changes since 2127

    * Changed format of debug symbols so that we can continue to process player-reported crashes
	* Fixed units forcing their way into inaccessible terrain and structures and then getting stuck
	* Fixed texture formatting bug (only an issue for game devs)

Known Issues
	* Builders may choose to travel around a cliff rather than build something they could reach while on the top of the cliff.
	* Units can get stuck in wrecks when they intersect a the unit as it gets destroyed.
	* Some cases of pontential instability are also being investigated]]></contents>
        <tags>Engine</tags>
        <pubDate>2023-12-01 02:18:14</pubDate>
      </item>
    
      
      <item>
        <title>Engine Hotfix Release (2127)</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/51</link>
        <id>51</id>
        <guid>51/20231128103615</guid>
        <last_updated>2023-11-28 10:36:15</last_updated>
        <description><![CDATA[Thank you to our community for reporting back issues with the current engine release. A hotfix release that addresses some of these issues is now live. Further work and investigations are still underway. Please report any issues you encounter with the game. Click through to see further information.]]></description>
        <contents><![CDATA[Thank you to our community for reporting back issues with the current engine release. A hotfix release that addresses some of these issues is now live. Further work and investigations are still underway. Please report any issues you encounter with the game.

Changes since 2113

    * Fixed issue with units occasionally getting caught on edges of buildings
    * Fixed a crash related to pathing
    * Fixed edge case issues that could impact the quality and correctness of paths
    * Improved units ability to navigate underwater structures while walking underwater
    * Fixed graphical issues affecting map making

Known Issues
    * Units can still find ways to get stuck (they are creative little buggers!)
    * Some cases of potential instability are also being investigated]]></contents>
        <tags>Engine</tags>
        <pubDate>2023-11-28 10:34:33</pubDate>
      </item>
    
      
      <item>
        <title>Find Every Map!</title>
        <author>IceXuick</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/50</link>
        <id>50</id>
        <guid>50/20231123222054</guid>
        <last_updated>2023-11-23 10:20:54</last_updated>
        <description><![CDATA[Finally we can visually see the fruits of the long hard work from Marek in centralizing all map data into one location. It&#39;s already used to populate the maps in the Lobby, but now it also syncs with the main website.]]></description>
        <contents><![CDATA[# Find every map
I've build the new pages for the maps and integrated live search and filtering.
Check out [the new mapping page here](https://www.beyondallreason.info/maps)

> You'll have a plethora of options to find your map

<img width="100%" src="https://media.discordapp.net/attachments/1177371280442413066/1177372034255290471/image.png?ex=65724427&is=655fcf27&hm=9d9ada339d753032dc7a7da80cc614a001b9a8d4641a7a79981fead1d936063c&=&format=webp&width=1290&height=579">

 
## Optimized for speed
The new system has a sequential loading system, which will take a little time on your first visit. It's does however **cache the results** and your next visit will be almost instant. Only when we deploy/publish new maps on the website, this will be reset.

Also the map images are now compressed with webp and have proper smaller thumbnails, which have **reduced filesize (and loadtime) with 50-75%(!)**

<img width="100%" src="https://cdn.discordapp.com/attachments/1177371280442413066/1177372596770193409/image.png?ex=657244ad&is=655fcfad&hm=4403e872803e569c5b330704266272160713f0e2301fa300c7261fbe038d4105&">

## Filter everything
So you can now filter on words, players, teams, gametypes (1v1, 3v3v3, FFA, etc.), and on terrains like biomes, features, water and map layout/elevation. You want a "FFA map for max. 4-5 players with islands" - you will instantly get Pentos.

<img width="100%" src="https://cdn.discordapp.com/attachments/1177371280442413066/1177371717417566209/image.png?ex=657243db&is=655fcedb&hm=0c0005ae320079adc6b68a86dfeb42a19343696e4adb5cca1d4c554b0ddf7f60&">

## Check & Feedback
Please head out and try to use it - All feedback, ideas, suggestions are welcome.
There is [a feedback-thread in the #website-updates](https://discord.com/channels/549281623154229250/1177371280442413066) forum]]></contents>
        <tags>Website</tags>
        <pubDate>2023-11-23 10:19:45</pubDate>
      </item>
    
      
      <item>
        <title>Engine Hotfix 2118 Ready for Testing</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/49</link>
        <id>49</id>
        <guid>49/20231123195315</guid>
        <last_updated>2023-11-23 07:53:15</last_updated>
        <description><![CDATA[A smaller engine test release to address important issues found in the currently released version of the engine (2113.) Please help us verify the engine version before we push it out as a formal hotfix release.]]></description>
        <contents><![CDATA[The big thing to test is hovercraft, amphibious units, and sea units with how they travel around structures on top and below the surface of the water.

Also worth checking placing structures and pathing around the edges of the map.

Updates since 2113:
    Fixed: Units found a way to get stuck on the corner of buildings if the buildings were placed in specific spots and the unit approached from a specific angle and the path ran along the building's edge.
    Fixed: Amphibious units had trouble navigating around underwater buildings.


You can test the latest release candidate by selecting “Engine Test”, under Config, on the Launcher, click Update, then click Start.]]></contents>
        <tags>Testing, Engine</tags>
        <pubDate>2023-11-23 07:53:15</pubDate>
      </item>
    
      
      <item>
        <title>New engine released with better pathfinding, QoL features and unit behavior improvemets!</title>
        <author>PtaQ</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/48</link>
        <id>48</id>
        <guid>48/20231123214558</guid>
        <last_updated>2023-11-23 09:45:58</last_updated>
        <description><![CDATA[New game engine update live with QTPFS pathing for improved performance. Highlights include dynamic pathfinding resolution, better unit movement, and enhanced unit behavior. Graphics and quality of life updates, along with various fixes and stability improvements, are also included.]]></description>
        <contents><![CDATA[Commanders! We are delighted to announce the long-awaited new engine update is live! This one is absolutely massive so be sure to grab some snacks! The big highlights of the update are improved pathing (both in terms of performance and quality) and various improvements to unit behaviour. See the breakdown of player facing changes below:

### New pathing algorithm - introducing QTPFS!

The QTPFS (which stands for Quad-Tree Pathfinding System) has received a large overhaul and becomes the default with this engine. There are major improvements in both quality and performance (processing speed, memory use, even disk usage). Every facet of QTPFS should generally work better than legacy pathfinder. Try it out!

- The new system dynamically decrease/increase pathfinding resolution on demand, which makes pathfinding more accurate!
- Factories should no longer trap units.
- Improves unit movement for direct orders along non-straight paths, reducing the tendency of fast vehicles to zigzag.
- Enhances unit pathfinding in intricate terrains, preventing them from unnecessarily taking longer routes.
- Units following complex paths will exhibit more natural movement, avoiding obvious 8-way patterns.
- The `/debugpath` command now provides clearer visibility into unit pathing restrictions.
- Units are expected to experience fewer instances of getting stuck.
- Units will no longer force their way into or through buildings.
- Grouped units should exhibit slightly improved travel coordination.

### Unit behaviour improvements 

- Sharing units with allies no longer results in the engine issuing a stop command to those units.
- Enhanced projectile aiming for units, increasing accuracy and reducing instances of friendly fire.
- Units will now maintain a safer distance from buildings they are attempting to construct. The build range test now factors in the building's collision radius. Subsequent balance adjustments will be made to account for the extended build range.
- Fast-moving units are no longer at risk of getting trapped when entering an area where a new building is about to be constructed.

### Graphics & Quality of Life Features

- Improved Ambient Occlusion rendering system for better performance and higher quality visuals.
- Unit selection is now more reliable.
- Builders and Factories now employ a more reliable method to clear units from their designated build areas, avoiding random directions.
- Screenshots now feature a UTC timestamp instead of a numerical identifier (Press F12 to capture a screenshot).
- The engine now supports playing with fixed and random start positions, accommodating more teams than specified by the map. This enables new setups previously impossible, such as a 12-way FFA on Gehenna Rising.

### Other fixes

- Resolved a bug that allowed the construction of structures in prohibited locations.
- Failure to load a model now results in a crash instead of a potential desync in game.
- Improved stability when using AMD GPUs.
- Improved stability of sound/music.
- Fixed sun shadows.

Big kudos to all te testers that participated in making this release waterproof! Good job everyone <3 

For a complete list of changes including non-player-facing ones see the [Running Changelog](https://beyond-all-reason.github.io/spring/changelogs/running-changelog)]]></contents>
        <tags>Engine, Bugs, Gameplay, Graphics</tags>
        <pubDate>2023-11-23 02:43:01</pubDate>
      </item>
    
      
      <item>
        <title>Shiny New Units</title>
        <author>Hornet</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/47</link>
        <id>47</id>
        <guid>47/20231122202253</guid>
        <last_updated>2023-11-22 08:22:53</last_updated>
        <description><![CDATA[I present some recent productions from the Hornet Halfbakery, for Extra Unit Pack and Legion, already all live and in game.]]></description>
        <contents><![CDATA[I present some recent productions from the Hornet Halfbakery, this time for Extra Unit Pack and Legion, already all live and in game.

Scag, you're going to want to sit down for this one.



![Image](https://i.imgur.com/XWZUoFo.png)
# Epic Tzar
(extra units pack)

Retuned and bugfixed, and now with laser sponsons


![Image](https://i.imgur.com/zR8Q0s5.png)
# Thermite
(extra units pack)

The granddaddy of the termites, equipped with beefier heatrays and a shorter ranged flamethrower


Fun fact: both of those units have easter eggs that you can discover in game.



![Image](https://i.imgur.com/ThuQFAM.png)
# Infestors
(Legion)

T2 spiderbots that can steadily replicate themselves.  Very hard to be completely rid of.


![Image](https://i.imgur.com/qjROSTj.png)
# Starfall
(Legion)

Legion's superweapon.  A picture cannot do it justice so head to [the Legion thread](https://discord.com/channels/549281623154229250/1063217502898884701/1176378672610017311) for a video.

Despite the different mechanics and handling, note that it's still a lolcannon in role and as such, enough shields will block it.]]></contents>
        <tags>Gameplay, Models</tags>
        <pubDate>2023-11-22 08:22:53</pubDate>
      </item>
    
      
      <item>
        <title>Improved Unit Compare on website</title>
        <author>IceXuick</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/46</link>
        <id>46</id>
        <guid>46/20231129224525</guid>
        <last_updated>2023-11-29 10:45:25</last_updated>
        <description><![CDATA[More features, more speed, less bandwidth - overall big improvements.]]></description>
        <contents><![CDATA[# New Unit Compare
So I have been working a lot on the website in the last weeks. Most work was done on the upcoming new Maps 2.0, together with Marek we've been building a new/better and fully automatic system to push (all) maps to the main website. I won't give a sneak-preview, though you can find links on the website-dev channels in Discord...

But the newly added tech allowed for more performance & more features.

And with that, the **Unit compare** pages were really heavy and slow, and had no filters or search. So that is exactly what the new (now live) Unit Compare pages have. Check out the improved pages, search for any name, filter live, or share filters with others.

- [Armada Vs. Cortex](https://www.beyondallreason.info/compare/armada-vs-cortex)
- [Armada Vs. Armada](https://www.beyondallreason.info/compare/armada-vs-armada)
- [Cortex Vs. Cortex](https://www.beyondallreason.info/compare/cortex-vs-cortex)

It's all new tech and I've tried to make everything work responsive + on all major browsers. I haven't found big problems and all seems to work, but if you spot any problem, please post them on our Discord, preferably in a #Website channel.

_PS. Besides the above, we've also done more/better compression on a lot of images. Mainly all 512 unit images, which have been halved in size and reduced size of over 30MB of images. And some partly finished work on improving unit-pages load-times, but that will be finished later_.

Hobo Joe wanted to work on 3D maps - see how far that goes - maybe we can use this for Units as well...

## UPDATE 29-11-2023
I've added a couple of extra's in data and visuals.

- In the search-field you can now also search in the unit tooltip + unit specials + unit weapons. This will make it easier to find all missile-units or cloak, or jammers.
- Added `specials` and `weapons` in the drop-down view
- Added `Build Time` in mm:ss for 100 buildpower - this is a nice addition to see some important differences between units, and that build-time is not directly related to build-cost. _Also added to the unit-detail pages_]]></contents>
        <tags>Website</tags>
        <pubDate>2023-11-21 10:42:37</pubDate>
      </item>
    
      
      <item>
        <title>Incorrect aimpositions of naval units have been fixed</title>
        <author>peopleofwalmart</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/45</link>
        <id>45</id>
        <guid>45/20231116201503</guid>
        <last_updated>2023-11-16 08:15:03</last_updated>
        <description><![CDATA[A number of naval units had broken assumptions about their aimpositions.]]></description>
        <contents><![CDATA[# What are **Aimpositions** and why do they matter
Simply put aimpositions are the point that units aim to fire their weapon at to hit a target. `Aimpositions` are required to be surrounded by the units collision box for projectile collision checks to occur normally. If the collision box and `aimposition` are not following that assumption, it can lead to units aiming at areas that lead to direct misses each time the weapon is fired.

Incidentally there is also issues with the `aimpositions` being placed at the edges of collision boxes. edge placed `aimpositions` lead to significant amounts of missed shots that they player should not have to worry about. `Aimpositions` are not a defined value in unitdeffs, they are defined in the .s3o of each units model.

# When was this discovered
About 2 hours before [pr2243](https://github.com/beyond-all-reason/Beyond-All-Reason/commit/c445220df4283f81332c62068118dbf73a43994e) was first pushed.

# Balance Implications
It is impossible to not have balance implications occur with this type of change.
There are bound to be edge cases that were not factored as the issue itself is a much worse problem to maintain.
The balance implications of units should generally not be significantly different to what is expected.
I will note that the dolphin is now able to use its full dps against the buccaneer (cortex T2 cruiser) now instead of an estimated 50% of effective dps. Yes the dolphin was missing about 50% of its shots against the buccaneer (cortex T2 cruiser) because of the badly placed `aimposition`. 

> tldr
expect these ships to be hit more often.

# Units affected
T1 armada
- constrcution ship
- dolphin
- skater

T1 cortex 
- supporter 
- riptide
- death cavalry
- herring 

T2 armada
- haven
- dragonslayer
- voyager
- longbow
- bermuda

T2 cortex navy
- buccaneer
- phantasm]]></contents>
        <tags>Bugs, Balance, Models, Gameplay</tags>
        <pubDate>2023-11-16 08:08:29</pubDate>
      </item>
    
      
      <item>
        <title>Developers (Micro) Blog now also live on main website</title>
        <author>IceXuick</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/44</link>
        <id>44</id>
        <guid>44/20231115125111</guid>
        <last_updated>2023-11-15 12:51:11</last_updated>
        <description><![CDATA[As this new blog gained quite a lot of traction among our developers, we decided to also make these awesome blogposts available on the website.]]></description>
        <contents><![CDATA[# More insight
For some time we have been looking to further knit the developers and players together. We're already doing fairly well there, but always room for improvement. More insight into what is going on can be really interesting and also motivating - so no time to waste...

Before we had a simpler "engine changelog", but that had very little in-between updates, and only received new posts on full new engine releases.

# More than engine updates only
But there is obviously a lot more going on that just engine upgrades. The new Developer Blog - is now properly connected to our main website. This allows everyone (without a game-, discord- or GitHub-account) to follow development on BAR in a lot more detail - with input coming from all of our developers and contributors.

[Check out our new Dev Blog here](https://www.beyondallreason.info/development/microblog) !

If you have any feedback, please let us know on [`#discord`](https://discord.gg/beyond-all-reason)

_PS. Blogposts will sync twice a day_]]></contents>
        <tags>Community, Website</tags>
        <pubDate>2023-11-15 12:43:30</pubDate>
      </item>
    
      
      <item>
        <title>Otago 1.4</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/43</link>
        <id>43</id>
        <guid>43/20231115062308</guid>
        <last_updated>2023-11-15 06:23:08</last_updated>
        <description><![CDATA[Otago Redux has received an update and a name change.]]></description>
        <contents><![CDATA[- Name changed to Otago 1.4, this is a part of a larger ongoing effort to simplify map names.
- Corrected fixed spawnpoint locations up to 3vs3
- 21mb smaller filesize
- Minimap no longer shows incorrect metal layout
- Map extension visually improved
- All tree features have been knocked down a size. So XL sized trees are now L, L now size M, etc
- Grass is a little shorter
- Features and their collisions got a pass over, Aleppos now have crushresistance = 30, and CylY shaped volumes. One of the rocks had a particularly bad colvol and has been replaced.]]></contents>
        <tags>Maps</tags>
        <pubDate>2023-11-15 01:04:07</pubDate>
      </item>
    
      
      <item>
        <title>Unfair advantages - How we moderate spectator and stream cheating</title>
        <author>Perfi</author>
        <posted_to>Public moderation log</posted_to>
        <link>/microblog/show/42</link>
        <id>42</id>
        <guid>42/20231115125350</guid>
        <last_updated>2023-11-15 12:53:50</last_updated>
        <description><![CDATA[Let&#39;s talk about the spectator cheating point of the code of conduct. As a tl;dr, here&#39;s the policy update:
In cases of spectator cheating, we skip the standard escalation ladder and go straight to a three weeks suspend. A second strike or any attempt at moderation evasion results in a permanent ban.

But read the whole thing or at least skim to the end, and you&#39;ll be rewarded with the silliest spec cheating case I&#39;ve seen to date :)]]></description>
        <contents><![CDATA[Let's talk about point B5 of the [Code of Conduct](https://www.beyondallreason.info/code-of-conduct) - the one on spectator cheating.

# B5. Unfair Advantages

1. Custom widgets used on public servers must be made publicly available, we have a section on the discord specifically for it - `widget-downloads`
2. Purposefully passing on consequential information to a game in progress via things like spectator mode (we understand mistakes happen occasionally) is obviously a form of cheating
3. Exploiting bugs, hacking or **spec cheating (second account to view the game as a spectator)** can result in swifter and more stringent responses than the above items

Recently, with the rise in popularity of BAR, we've been seeing more cases of this, and it forced a change in moderation policy:

**In cases of spectator cheating**, we skip the standard escalation ladder and **go straight to a three weeks suspend**. A second strike or any attempt at moderation evasion results in a permanent ban.

If we're able to uniquely tie the provider of unfairly obtained information to the consumer of information, we suspend both. If not, we just suspend the person acting on unfairly obtained information.

Let's dive into why that is.
# Why be more strict on cheaters than on literal racists?

In a word, pragmatism.

While we don't think cheating is more morally wrong than racism, it's pretty fast to verify a report for racist chat. Very much not so for spectator cheating - usually, it takes a *lot* of volunteer work from the Overwatch team to verify a single report, with multiple passes over each, often very long, replay (because let's face it, most of the reports we get are from ~~Strait~~ Isthmus and could you all *please* try map rotation lobbies because watching these replays gets boring, send help and Tau12 games).

And even with all that work, we still get a bunch wrong! Thankfully, we have a very well functioning [appeals system, about which you can read in the previous moderation guide](https://www.beyondallreason.info/guide/what-is-moderation-how-does-it-work), so those get cleared up pretty nicely. We're also taking notes on each such case, improving the process and I'd like to think we're getting better at it.

Still, because it takes so much work, we want to deter people from trying as much as we can because we're volunteers with limited time, and this affects our ability to do work for the good of the BAR community. Thus, strict deterrence is the way we're going with it.
# What about stream cheating?
While you could victim-blame and argue streamers "are asking for it", the Code of Conduct is vague there for a reason - unfair advantages are not okay, no matter their source. Most games in BAR are games with multiple players, and none of the non-streaming players asked to play a game where someone gets unfair advantages.

Thus, while it may be difficult to prove, we'll make every effort to do so, and we'll action confirmed stream cheaters just as harshly as regular spec cheaters.

# How can you help?
If you see spectator or stream cheating, please report it [on the server website if possible](https://server4.beyondallreason.info/battle). To go with it, head to [open-ticket](https://discord.com/channels/549281623154229250/1005537149564755989) on the BAR discord and provide as much information as you can:
- timestamps
- screenshots
- possible spectator nicknames
- links to streams, with timestamps
- any suspicious behavior
- anything that you think might be helpful as proof

Before reporting, an initial watch of the replay to confirm e.g. the player didn't in fact scout the anti-nuke is always appreciated. These reports happen more often than you think, and while they're easy to dismiss, it still takes the time of at least one Overwatcher. Help us help you!

# Epilogue - the funniest case ever

![Spectator cheating](https://i.imgur.com/mnQzgIt.png)

This one player, here in light blue, got notified by a spectator friend about red's spy bot getting close to blue's antinuke after yellow pinged it. LightBlue then made several gunships to kill the spybot before it could EMP the anti nuke. Red never E-stalled throughout and was pretty careful to not touch anything, managing to never decloak. Because of gunships' wonky set-target behavior, this gunship targeting ploy didn't work. The player then moved their commander to the spybot and d-gunned it before red team's nuke came online.

Asked about "hey, but why did you move the gunships and the commander to that particular spot?", they replied,

*Why not?*

The appeal was denied. ^^']]></contents>
        <tags>Moderation</tags>
        <pubDate>2023-11-13 03:37:09</pubDate>
      </item>
    
      
      <item>
        <title>Engine Update 2097 Ready for Testing</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/41</link>
        <id>41</id>
        <guid>41/20231111091453</guid>
        <last_updated>2023-11-11 09:14:53</last_updated>
        <description><![CDATA[Thank you everyone who took part in PtaQ&#39;s test event. Your participation and feedback was a huge help to us in ironing out issues before we launch the new engine. New engine release candidate (rc6) is ready for testing. Please feel free to give it a try and let us know how it goes, good or bad. This is your chance to check the game will run well for you before this gets released.]]></description>
        <contents><![CDATA[Thank you everyone who took part in PtaQ's test event. Your participation and feedback was a huge help to us in ironing out issues before we launch the new engine. New engine release candidate (rc6) is ready for testing. Please feel free to give it a try and let us know how it goes, good or bad. This is your chance to check the game will run well for you before this gets released.

Updates since 2072:

    Fixed: Units sometimes had a brief pause when they were given a new move command.
    Fixed: Units would stutter regularly when following other units, i.e. with the guard command.
    Fixed: Units would on occasion appear to perform a loop or veer off course for a moment before continuing their path when given a new move order or when following another unit.
    Fixed: Units could get stuck on terrain while skidding on slopes.
    Fixed: Ships could get stuck on shores.
    Fixed: Units could give up and stop moving too early if they were given a move target that wasn't reachable.

You can test the latest release candidate by selecting “Engine Test”, under Config, on the Launcher, click Update, then click Start.]]></contents>
        <tags>Testing, Engine</tags>
        <pubDate>2023-11-11 09:08:27</pubDate>
      </item>
    
      
      <item>
        <title>Raptors and Scavengers gamemodes getting a few significant changes</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/40</link>
        <id>40</id>
        <guid>40/20231110014428</guid>
        <last_updated>2023-11-10 01:44:28</last_updated>
        <description><![CDATA[Assist Drones and the Base Builder turret has been disabled by default to bring the default PvE experience to be more in-line with the rest of the game.]]></description>
        <contents><![CDATA[Assist Drones and the Base Builder turret has been disabled by default to bring the default PvE experience to be more in-line with the rest of the game.

To compensate that, Each difficulty level got an extra 1 minute of grace period time, while Normal and below difficulties also got 5 extra minutes of time until bossfight. 

All the above changes apply to both Raptors and Scavengers. Both the Assist Drones and Base Builder can still be enabled in the Extras settings.

Besides that, due to a request from players of a popular Raptors "mod", there's a new option that allows you to make first few waves spawn way more units, to test out your early defences against swarm of weaklings.]]></contents>
        <tags>Raptors, Scavengers, PvE</tags>
        <pubDate>2023-11-10 01:38:29</pubDate>
      </item>
    
      
      <item>
        <title>Discord bot got an upgrade</title>
        <author>Teifion</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/39</link>
        <id>39</id>
        <guid>39/20231109152838</guid>
        <last_updated>2023-11-09 03:28:38</last_updated>
        <description><![CDATA[Good morning beautiful people. I&#39;ve spent a bit of time looking at the discord docs and the bot can now do slash commands. Given it is tied directly into the server and very soon will be easily tied to your user account there&#39;s a whole bunch of stuff that could be done. If you have any ideas please do post them in #suggestions.]]></description>
        <contents><![CDATA[Good morning beautiful people. I've spent a bit of time looking at the discord docs and the bot can now do slash commands. Given it is tied directly into the server and very soon will be easily tied to your user account there's a whole bunch of stuff that could be done. If you have any ideas please do post them in [#suggestions](https://discord.com/channels/549281623154229250/1047081727291559986) and feel free to ping me into them.

Of course, there's more to it than just that. It's possible for other discords to add this bot to their server to provide useful services if they wanted it to. If you're running a discord server related to BAR and want a bot that does BAR-specific things then please do speak up!

Some examples of things it _could_ do:
- Give updates from ongoing tournaments
- Unit or Stat lookups
- Player match history
- Anything to do with the current state of the server]]></contents>
        <tags>Server, Community</tags>
        <pubDate>2023-11-09 03:20:56</pubDate>
      </item>
    
      
      <item>
        <title>Bosses avoiding players prevents them joining lobbies</title>
        <author>Teifion</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/38</link>
        <id>38</id>
        <guid>38/20231105111843</guid>
        <last_updated>2023-11-05 11:18:43</last_updated>
        <description><![CDATA[If someone you&#39;re avoiding tries to join a lobby you are boss of they are prevented from joining. Becoming boss will not trigger any auto-kick mechanism or similar; this will only affect players trying to join. You can avoid and block players both from the game client and the server website.]]></description>
        <contents><![CDATA[If someone you're avoiding tries to join a lobby you are boss of they are prevented from joining. Becoming boss will not trigger any auto-kick mechanism or similar; this will only affect players trying to join. You can avoid and block players both from the game client and the [server website](https://server4.beyondallreason.info/accountrelationship/search).]]></contents>
        <tags>Server, Moderation</tags>
        <pubDate>2023-11-05 11:18:43</pubDate>
      </item>
    
      
      <item>
        <title>Player and Boss Permissions Update</title>
        <author>[teh]Beherith</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/37</link>
        <id>37</id>
        <guid>37/20231101143249</guid>
        <last_updated>2023-11-01 02:32:49</last_updated>
        <description><![CDATA[Many players have expressed a desire to have a boss in the battle room as a spectator, so that the boss can focus solely on managing it. Also, players still want to be able to vote for some things when a boss is present, and we want to enable that.]]></description>
        <contents><![CDATA[Many players have expressed a desire to have a boss in the battle room as a spectator, so that the boss can focus solely on managing it. Also, players still want to be able to vote for some things when a boss is present, and we want to enable that.

## Background
The way permissions work in BAR battle rooms:
- Without a boss everyone has an access level of 10.
- With a boss present, everyone else’s access level is reduced to 0. 

There are multiple access levels per command, one for being allowed to call a vote (or participate in a vote) for a command, usually set to 0 or 10, and one elevated level (usually 100), that allows bypassing a vote and directly executing it. 

Whenever a vote is called for a command, where only the caller would be able to vote, it automatically passes. For example, with a boss present, everyone except the boss has access level 0, meaning they are not even eligible to vote, so the commands usually automatically pass.  
## Core change
Having a boss present elevates the bosses permissions to access level 100, meaning they can directly execute any command. Concurrently, those players who now have their access level reduced to 0 due to the boss being present, are now allowed to vote for more commands. 
### What this means for Bosses
Bosses may manage all aspects of a battle directly without voting as they wish, even when they are spectators.
### What this means for Players
Players may call votes for multiple things like maps, advanced game options, force starting the game, and stopping the game. 
### What is the Custom preset?
When you host a new custom battle via the Host Battle button, the battle room is automatically set to the custom preset and you are bossed. 

This custom preset differs from the other regular Team, CoOp, FFA presets significantly in that bosses cannot be voted out of a lobby with a custom preset, and players cannot call votes to change things such as maps or advanced battle options. 

In the regular Team, CoOp, FFA presets, bosses can be voted out, and players may call votes to change maps or advanced battle options. 
## How can I check access levels?
The !status command now shows access levels and bosses. Access levels in parentheses are what the access level would be if there were no boss present. Access levels 10-80 are not differentiated in any way regarding permissions to vote, and are considered equivalent. 
## Notes:
This change will go live after further testing in the engine testing battle room around Nov. 3
The permissions of the original !start command were set to 10 for direct execution, this has been raised to 100.]]></contents>
        <tags>Lobby servers</tags>
        <pubDate>2023-11-01 02:32:49</pubDate>
      </item>
    
      
      <item>
        <title>Relationship system</title>
        <author>Teifion</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/36</link>
        <id>36</id>
        <guid>36/20231031113701</guid>
        <last_updated>2023-10-31 11:37:01</last_updated>
        <description><![CDATA[Good morning beautiful people. Inline with the earlier post about server managed lobbies. I&#39;m today posting about something we&#39;ve had for a little while but wasn&#39;t so well known. Relationships! In addition to the obvious ignore you can also avoid and block people.]]></description>
        <contents><![CDATA[Good morning beautiful people. Inline with the earlier post about [server managed lobbies](https://server4.beyondallreason.info/microblog/show/31) I'm today posting about something we've had for a little while but wasn't so well known. Relationships! In addition to the obvious **ignore** you can also **avoid** and **block** people.

**Ignoring** means you won't see chat messages from them and they cannot direct message you. The plan is to make it so commands from them still appear but it's on "the todo list". Note that ignoring on the server is separate from ignoring in-game.

**Avoiding** means you don't want to play alongside them. Currently the only effect is if someone is avoided by enough people they can't be a player in the lobby; longer term I hope to make it so the balancer takes into account avoiding people. You can avoid someone without ignoring them.

**Blocking** means you don't want to interact with them at all, it has the same effect as avoiding but additionally if enough people block someone they can't even join the same lobby. As with avoiding; if you block someone you don't ignore messages from them.

As with everything in BAR this is an ongoing and growing system so suggestions and requests are always welcome.]]></contents>
        <tags>Server</tags>
        <pubDate>2023-10-30 10:53:10</pubDate>
      </item>
    
      
      <item>
        <title>Dynamic Music of BAR - How does it work and why.</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/35</link>
        <id>35</id>
        <guid>35/20231031142842</guid>
        <last_updated>2023-10-31 02:28:42</last_updated>
        <description><![CDATA[Dynamic music in games, that is adapting to what&#39;s happening on the screen, is something I&#39;m very passionate about. Today I&#39;m gonna explain to you how it works, what kind of challenges have I encountered while writing our music player, and what is currently impossible to do.]]></description>
        <contents><![CDATA[Dynamic music in games, that is adapting to what's happening on the screen, is something I'm very passionate about. Today I'm gonna explain to you how it works, what kind of challenges have I encountered while writing our music player, and what is currently impossible to do.

Before we start, I have to mention, the entire soundtrack of BAR has been uploaded to our official YouTube channel and collected in this playlist. https://www.youtube.com/playlist?list=PLuMFASJQTPeIvvNJyHcuSp_b_-j0a0pLQ

Allright so let's start with what is currently NOT possible to do.

# Layered music and Crossfades limitations
Sound engine of Recoil has very limited controls over sound streams. It's impossible to control volume of 2 sound tracks independently, and it's also impossible to start 2 sound streams exactly at the same time, so any kind of layering gets desynchronized. Besides that, the engine becomes quite unstable with 3 and more streams last time I've tried it.

# So what CAN I do?
Well. There really are only 3 callouts I can give to the engine:
- Play track
- Stop all tracks
- Change Volume

I can also receive information of the currently played track - how much time has passed and how long the track is. So what have I decided to do with this limited toolset?

**First of all I've divided our music into multiple playlists.**
Each playlist corresponds to different state of the game. Menu, Loading, Peace, WarLow, WarHigh, BossFight and GameOver. Each playlist is created, shuffled and saved when you start up the game. Yes, that's right. We're not playing tracks from the playlist at random, but instead it's set up as shuffled sequential looped playlist. Benefit of this solution is that we're maximizing the track variety within the match, only replaying tracks when it's necessary, and since it's shuffled, every match plays tracks in different order! Every playlist also remembers which track from it was played last, which is important, because they're switching between each other depending on the situation.

**Second, since i can manipulate volume of currently played tracks, we can use fade-ins and fade-outs!**
These are used when track is starting, ending or when we need to cut mid-way through it. The transitions and track starts never feel sharp which helps a lot with making the music flow nicely in the background and not be distracting.

**Third, I've mentioned "cutting mid-way through".**
Yes, when intensity of the battle changes quickly, we want the music to reflect that, so it does, at specific thresholds.

**And lastly, there are "Silence Periods".**
After each track that ended without interruption, which is a random amount of seconds between 30 and 120 - This gives some extra time that reduce repetition of music even further by playing less of it.

# Now let's talk about the way playlist is picked

**Menu music** is the one i'm gonna talk about first. Menu music is split into 2 categories:
- Intro themes
- Fillers

**Intro themes** are menu specific tracks that you cannot hear anywhere else in the game. Music player is set up to always play one of those when you start the game. Then you have **fillers**, which currently is music from Peace state. I've decided to include those to reduce repetition in menu. As it is now, the music player is switching between Intro and Filler playlists back and forth with every track play, so every 2nd track is an Intro track, and every 2nd track is a Filler track. Simple, right? There's nothing complicated here.

When you press Start, it then plays one of the **Loading tracks** (of which there's only one right now). There's nothing special about this one, except the fact that if it doesn't end before the match starts, it fades out. This also shows the first limitation I encountered. Menu music cannot be faded out into loading nicely. The moment you press start, the engine calls for a reset, which kills the music player and so, the music stops.

# And now, the fun part.

Peace, WarLow and WarHigh, but before we move on I should explain the term that i'm gonna be using quite a lot here.

> WarMeter - A dynamic value determining how intense the battle on the field is. It's calculated based on damage your and ally units recieve.

If your unit recieved 100 damage, WarMeter raises by a 100. Additionally, it's cutting itself by 4% every second, so when there's no combat, the value slowly cools down. ADDITIONALLY, if there's no combat for 30 seconds, it resets itself and goes all the way to 0.

When music player has to pick playlist to play the next track from, it's comparing current WarMeter value with two thresholds. For WarLow it's a 1000, and for WarHigh it's 40000.
So if we need to play new track, and WarMeter is at 27824, it's above WarLow threshold, but below WarHigh threshold, so it will play next track from WarLow playlist.

Additionally, there are interruption thresholds for turning Peace into WarLow (Half of WarHigh Threshold), WarLow into WarHigh (Double the WarHigh threshold), and both WarLow and WarHigh into Peace (Half of WarLow threshold), which are used to determine when mid-track interruptions should happen.

Then there are two more playlists, BossFight and GameOver, both of which are interrupting currently played track straight away. Boss fight music plays during... well... obviously, boss fight in RaptorDefense and ScavengerDefense gamemodes. And GameOver music plays when game over screen pops up.


# And that's pretty much it... Except it's not!

All this good stuff can be expanded by you with your own music! The engine supports MP3 and OGG Vorbis files, and the game is setting up the entire folder structure for you on first run. Just open the launcher, click Open Install Directory, then go to Music/Custom, and feel free to fill all the category folders you see with your own music!

We also have place for music mods on our Discord, however we have strict policy to not upload copyrighted music without permissions there. https://discord.com/channels/549281623154229250/1129127537763692654

Audio settings in-game also give you a few options that allow you to turn off some features of the music player. You don't like interruptions? You can turn them off! You don't like that there's silence time between tracks? You can turn that off as well! You can also toggle custom and original soundtracks separately so if you like to have your music installed but want to turn if off, for example, while livestreaming, or you want to turn off original soundtrack and play your own music only, you can do that with one toggle! By default it's mixing original soundtrack and your custom music together.

> Now that's really it.
> Good luck and have fun on the battlefield, Damgam out!]]></contents>
        <tags>Music</tags>
        <pubDate>2023-10-28 08:48:36</pubDate>
      </item>
    
      
      <item>
        <title>Engine Update 2070 Ready for Testing</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/34</link>
        <id>34</id>
        <guid>34/20231031114509</guid>
        <last_updated>2023-10-31 11:45:09</last_updated>
        <description><![CDATA[New engine release candidate (rc5) is ready for testing. Please feel free to give it a try and let us know how it goes, good or bad. This is your chance to check the game will run well for you before this gets released.]]></description>
        <contents><![CDATA[New engine release candidate (rc5) is ready for testing. Please feel free to give it a try and let us know how it goes, good or bad. This is your chance to check the game will run well for you before this gets released.

Updates since 2062:
```
Fixed: Push resistant units didn't update the path finder.
Fixed: Units could get stuck if they tried to push past a unit, but pushed it into a structure in the process.
Fixed: Units found a way to intersect structures.
Fixed: Units can get out of being trapped inside push resistant units.
```
You can test the latest release candidate by selecting “Engine Test”, under Config, on the Launcher, click Update, then click Start.]]></contents>
        <tags>Testing, Engine</tags>
        <pubDate>2023-10-28 05:07:42</pubDate>
      </item>
    
      
      <item>
        <title>Help wanted - updating unit descriptions</title>
        <author>Perfi</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/33</link>
        <id>33</id>
        <guid>33/20231031114518</guid>
        <last_updated>2023-10-31 11:45:18</last_updated>
        <description><![CDATA[I&#39;m finally picking up on a project I&#39;ve started a while ago - updates for unit and building descriptions. This initially started because I kept being annoyed with newbies spamming Centurions. And you couldn&#39;t blame them - they were described as the &quot;Medium Infantry Bot&quot;, sounds like a fine default choice! Back in June I added a PR that changed that to the &quot;Anti-Swarm Bot&quot;, and this is now in the game. I don&#39;t have stats, but purely anecdotal evidence suggests it&#39;s a bit better now. This is a continuation of that - I&#39;d like to ask for your help with it!]]></description>
        <contents><![CDATA[I'm finally picking up on a project I've started a while ago - updates for unit and building descriptions. This initially started because I kept being annoyed with newbies spamming Centurions. And you couldn't blame them - they were described as the "Medium Infantry Bot", sounds like a fine default choice! Back in June I added a PR that changed that to the "Anti-Swarm Bot", and this is now in the game. I don't have stats, but purely anecdotal evidence suggests it's a bit better now. This is a continuation of that - I'd like to ask for your help with it!

Come help with the Discord thread [here](https://discord.com/channels/549281623154229250/1167711023411769464) or see the [spreadsheet here](https://docs.google.com/spreadsheets/d/1HEi4HxVW4Cl8_QN4cAiWa903rnok2Mh4yGPzwRoPpAc/edit#gid=430375318). If I did it right, everyone should have rights to comment on it, and I'll apply your suggestions (if I agree with them) as time allows. You can also just post things in the Discord thread, and I'll adjust the sheet.

Those of you who have seen me play know I still have a lot to learn - most of my claims to fame include forgetting things like back mexes and and that my commander is low HP at the frontline :D a lot of you grind a lot more or have literal decades of experience. If you'd like to propose - or disagree with - a change, your feedback would be most welcome.

I would primarily like to make sure that **a description gives a completely new player a decent image of what the unit is for**, while not being an essay. This means that if you're a new player, your perspective is also quite helpful here - help us make sure we understand the difficulties of new players well!

I initally had an idea of doing this in a much "grander" way, with tags, graphs, etc, but it became too large of a project for me to feasibly pull through with - so for now let's just do an "incremental improvements" pass over those. If you see something that's not clear, could be made more useful, just say so. 🙂]]></contents>
        <tags>Interface</tags>
        <pubDate>2023-10-28 06:52:25</pubDate>
      </item>
    
      
      <item>
        <title>RSS Feed!</title>
        <author>Perfi</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/32</link>
        <id>32</id>
        <guid>32/20231031114531</guid>
        <last_updated>2023-10-31 11:45:31</last_updated>
        <description><![CDATA[Teifion has just added a RSS feed to this microblog! This allows you to subscribe to the blog and get updates whenever, even if you don&#39;t want to follow the Discord channel for these updates.]]></description>
        <contents><![CDATA[Teifion has just added a [RSS feed](https://server4.beyondallreason.info/microblog/rss) to this microblog! This allows you to subscribe to the blog and get updates whenever, even if you don't want to follow the Discord channel for these updates.

Hard to ensure it's working without testing it with a new article, so consider this such a test :)]]></contents>
        <tags>Website</tags>
        <pubDate>2023-10-27 05:35:44</pubDate>
      </item>
    
      
      <item>
        <title>Server Managed Lobbies</title>
        <author>Teifion</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/31</link>
        <id>31</id>
        <guid>31/20231031114719</guid>
        <last_updated>2023-10-31 11:47:19</last_updated>
        <description><![CDATA[Good news everyone, I&#39;ve invented a new type of lobby designed to bridge the gap between purely custom lobbies and matchmaking. Server Managed Lobbies have a [tei] bot in them and a lobby name starting with Preset. We even have an experts-only lobby designed for those wanting a more competitive experience. They&#39;ve actually been here a while but it turns out most people didn&#39;t know about them!]]></description>
        <contents><![CDATA[Good news everyone, I've invented a new type of lobby designed to bridge the gap between purely custom lobbies and matchmaking. Server Managed Lobbies have a `[tei]` bot in them and a lobby name starting with `Preset`. We even have an experts-only lobby designed for those wanting a more competitive experience. They've actually been here a while but it turns out most people didn't know about them!

Right now we're only using rating and uncertainty things but there are a number of options open to us if these work out. They provide a consistent and fair experience, nobody can be bossed so this limits certain changes (e.g. no tweakdefs). On the other hand, joining an SML means you know what you're dealing with.

Our current list looks something like this...
![SML List](https://i.imgur.com/qJQHFWt.png)

As always, constructive feedback and suggestions are [very welcome on the discord](https://discord.com/channels/549281623154229250/1085711899817152603).]]></contents>
        <tags>Lobby servers, Server</tags>
        <pubDate>2023-10-27 08:38:41</pubDate>
      </item>
    
      
      <item>
        <title>Game Design Team update</title>
        <author>PtaQ</author>
        <posted_to>Dev organisation</posted_to>
        <link>/microblog/show/30</link>
        <id>30</id>
        <guid>30/20231031114727</guid>
        <last_updated>2023-10-31 11:47:27</last_updated>
        <description><![CDATA[There have been some recent changes within the BAR game design team. It is with a heavy heart that we must inform you of Teddy&#39;s departure from the team due to personal reasons, leaving a vacancy in our ranks. After conducting an election, we are delighted to announce the addition of a new member, the esteemed Zecrus! This development is particularly significant as Zecrus, who currently oversees the game&#39;s balance, will enhance our coordination efforts. This will help ensure that our gameplay aligns with the philosophy we&#39;ve set, bridging the gap between daily balance adjustments and the overarching game design. We are confident that this will have a positive impact on the entire development process moving forward.]]></description>
        <contents><![CDATA[There have been some recent changes within the BAR game design team. It is with a heavy heart that we must inform you of Teddy's departure from the team due to personal reasons, leaving a vacancy in our ranks. After conducting an election, we are delighted to announce the addition of a new member, the esteemed Zecrus! This development is particularly significant as Zecrus, who currently oversees the game's balance, will enhance our coordination efforts. This will help ensure that our gameplay aligns with the philosophy we've set, bridging the gap between daily balance adjustments and the overarching game design. We are confident that this will have a positive impact on the entire development process moving forward.

For those who don't know, the other members of the GDT are: PtaQ, Jazcash, Raghna, Watch the Fort, and Hobo Joe as the secretary.

Teddy will be sorely missed, and we extend our heartfelt gratitude for his invaluable contributions. It has been an absolute pleasure to have him on board. We are steadily progressing towards the completion of the Game Design Document, which will serve as a comprehensive reference for the entire BAR development team, ensuring a unified vision. Teddy's contributions to this document have been immeasurable.

In other news, Hobo Joe will be stepping down from his role as the GDT secretary. We will soon initiate a recruitment drive to find a suitable replacement for this position. Stay tuned for further updates on this front!]]></contents>
        <tags>BAR Organisation, BAR Team members, Gameplay</tags>
        <pubDate>2023-10-25 03:56:20</pubDate>
      </item>
    
      
      <item>
        <title>Engine Update 2060 Ready for Testing</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/29</link>
        <id>29</id>
        <guid>29/20231031114734</guid>
        <last_updated>2023-10-31 11:47:34</last_updated>
        <description><![CDATA[New engine release candidate (rc4) is ready for testing. Please feel free to give it a try and let us know how it goes, good or bad. This is your chance to check the game will run well for you before this gets released. I&#39;m hoping this will be the last test release candidate prior to release.]]></description>
        <contents><![CDATA[New engine release candidate (rc4) is ready for testing. Please feel free to give it a try and let us know how it goes, good or bad. This is your chance to check the game will run well for you before this gets released. I'm hoping this will be the last test release candidate prior to release.

Updates since 2048:
```
Fixed: Units can get trapped in spaces between buildings.
Fixed: Giving move commands on non-pathable map regions could cause some of the resultant path to be missing.
Fixed: Save/load crashes
```
You can test the latest release candidate by selecting “Engine Test”, under Config, on the Launcher, click Update, then click Start.]]></contents>
        <tags>Testing, Engine</tags>
        <pubDate>2023-10-24 03:26:20</pubDate>
      </item>
    
      
      <item>
        <title>Moderation policy change - mutes replaced with suspensions</title>
        <author>Perfi</author>
        <posted_to>Public moderation log</posted_to>
        <link>/microblog/show/28</link>
        <id>28</id>
        <guid>28/20240403065405</guid>
        <last_updated>2024-04-03 06:54:05</last_updated>
        <description><![CDATA[Here&#39;s a slight change to moderation policy: we&#39;re completely moving away from applying mutes for now and we&#39;re replacing them with suspensions. This is due to technical limitations of the Spring protocol - hopefully in the future the Tachyon protocol will allow us to go back to them. Read more if you&#39;re curious about it!]]></description>
        <contents><![CDATA[Here's a slight change to moderation policy: we're completely moving away from applying mutes for now and we're replacing them with suspensions. This is due to technical limitations of the Spring protocol - hopefully in the future the Tachyon protocol will allow us to go back to them. Read more if you're curious about it!

# Why mutes are bad

In the recently posted [moderation guide](https://www.beyondallreason.info/guide/what-is-moderation-how-does-it-work), we said this:

> Moderation is usually based on a “correspondence” principle - if someone chooses to abuse other players via in-game chat, their ability to chat can be removed. If they abuse boss mode, or make spurious reports, their corresponding permissions can be taken away. Finally, login suspensions are used in cases where people abuse others via their in-game actions, such as griefing - and in place of longer mutes, **for technical reasons**.

Let's dig into those technical reasons for a bit. Note that this is all "to my current understanding" and may change in the future as more knowledgeable people point things out to me. After all, [there is no faster way to learn things on the internet than to post a technically incorrect explanation.](https://xkcd.com/386/)
 
# Pings, shares, and votes

BAR runs on the Recoil engine, which is a fork of the Spring engine - and also uses the legacy Spring networking protocol. In practice, this means that a lot of information is passed over chat messages. This is seen both in the lobby - with commands such as `!map Supreme` or `!balance` - and in the actual game. Whenever you ping, the "Look here!" message is pretty much a chat message with coordinates. Whenever you share a unit or resources, along with the share, a message along the lines of "Perfi has sent you 1 unit" appears. I don't quite know how, but apparently drawing is also implemented by a variant of a ping with coordinates.


Now, suppose something interfered with your ability to send those messages?

- you would still be able to send units, but nobody would realize you're doing that.
- you would not be able to ask someone to send you a T2 constructor unless you did some crazy stuff that's often worse than not asking.
- you would be able to pay for a T2 con, but the person receiving the metal would not immediately know who sent it unless they know how mutes work.

All of these are pretty crippling from a cooperation perspective. What's worse, having a muted player on your team is a punishment even if you yourself haven't broken the code of conduct. Thus, for a while now we've had a rule that long mutes are to be avoided, and I don't recall the last time we gave someone one longer than 3 days - that's still not great for other players, but we thought the benefits - letting muted people play a bit, at least, outweighed the costs. I personally liked the "correspondence" of mutes as a response to chat infractions and swept the rest under the rug.
# ... what about those votes, though?

However, like I said, a mute also applies to the lobby. This means a player cannot, for example, vote "yes" on a map vote. We thought that was an acceptable compromise - you can't expect a perfectly fine experience when you're muted.

This also means a player cannot vote "yes" on a start vote. That's... kinda sorta fine, not great, but there's usually a lot of other players who can vote "yes" and get the game started.

Until you consider what happens in a 1v1 setting.
```
!cv start
* 2 users allowed to vote.
!vote y
!vote y    <--- with a mute, this won't happen!
```
Unless there's a boss in place, you need two votes to agree on starting a 1v1 game. If one of those players is muted, they're effectively soft-locked out of 1v1.

And that's just the final straw, and this made us finally give up on mutes as they are.

# Policy change

Thus, given that the current implementation of mutes doesn't really work from the "correspondence principle" standpoint, leaking into multiple other areas of the game than just chat, let's just get rid of them. **Effective immediately we're replacing future mutes with** *(possibly shorter, though that's TBD)* **suspensions**.
# Towards a better mute
In the future, what I'd like to see is a mute that:
- blocks chat and chat only
- allows pings, possibly with a rate limit
- allows a selection of pre-approved messages via Errrrrrr's wonderful [Ping Wheel](https://discord.com/channels/549281623154229250/1121129869565239306) widget. Beherith's already said it'll be making its way to the base game, but we need to figure out a good way of making it internationalization-friendly first.
- allows sharing resources and units, with the messages about it still in place
- allows votes
- allows drawing - if someone draws hate symbols as per [CoC B6](https://www.beyondallreason.info/code-of-conduct), we'll just suspend them.

~~Hopefully the Tachyon protocol we're hoping to replace the legacy Spring protocol with, and some other improvements to the overall infrastructure of BAR, will allow it in the future!~~ I have since been corrected by Marek that this would take ~~engine~~ ELSEWHERE XD work, not Tachyon work. My bad!]]></contents>
        <tags>Moderation</tags>
        <pubDate>2023-10-24 01:10:45</pubDate>
      </item>
    
      
      <item>
        <title>Server update (v1.1.1)</title>
        <author>Teifion</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/27</link>
        <id>27</id>
        <guid>27/20231031114819</guid>
        <last_updated>2023-10-31 11:48:19</last_updated>
        <description><![CDATA[I&#39;m going to start versioning Teiserver and trying to provide updates where possible, v1.1.1 adds...]]></description>
        <contents><![CDATA[I'm going to start versioning Teiserver and trying to provide updates where possible, v1.1.1 adds:

#### Features
- Report forms now include the option to ignore players along with buttons to avoid or block them
- Ignoring is now separate from avoiding or blocking
- The `$meme` commands have been expanded significantly (credit: robertthepie)
- Contributors can set their own flag
- Moderation action updates/deletions now propagate to the discord]]></contents>
        <tags>Server</tags>
        <pubDate>2023-10-24 07:54:57</pubDate>
      </item>
    
      
      <item>
        <title>Release Candidate Units Modoption now available!</title>
        <author>Hornet</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/26</link>
        <id>26</id>
        <guid>26/20231031114828</guid>
        <last_updated>2023-10-31 11:48:28</last_updated>
        <description><![CDATA[The &#39;Expanded T2 vehicles&#39; option has been updated and expanded, into &#39;Release Candidate Units&#39;, which lives under the &#39;Experimental&#39; tab. This will be a melting pot &amp; balance testbed for units being considered for main game integration. There are two additional units, one of which is brand new to the game.]]></description>
        <contents><![CDATA[The 'Expanded T2 vehicles' option has been updated and expanded, into 'Release Candidate Units', which lives under the 'Experimental' tab. This will be a melting pot & balance testbed for units being considered for main game integration. There are two additional units, one of which is brand new to the game.


Demon is a T3 Cortex mech with dual flamethrowers, and a pair of light antiair shoulder turrets

![Demon](https://i.imgur.com/DBNi4hm.png)


The Shockwave is a versatile T2 Armada mex, which wears a lot of hats. It has a medium range EMP turret with some AoE, or can go into stealth mode, cloak, and act like a T2 Twilight.  Note that it has much less stopping power than an Advanced Exploiter.

![Shockwave](https://i.imgur.com/oU9KVKz.png)



The existing T2 Cortex vehicles remain in the pack, namely:


The Printer, which acts as a hardy field engineer, and can repair and reclaim while on the move.

![Printer](https://i.imgur.com/6a1Rtsv.png)

Salamander is an amphibious tank, which fires dual heatrays.

![Salamander](https://i.imgur.com/LgpUnYn.png)


Please post feedback and any notable replays on the [Discord Thread](https://discord.com/channels/549281623154229250/1165607954611961938), everything helps.]]></contents>
        <tags>Gameplay, Testing</tags>
        <pubDate>2023-10-22 11:18:03</pubDate>
      </item>
    
      
      <item>
        <title>October 17th game updates outage postmortem</title>
        <author>[T0]Marek</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/25</link>
        <id>25</id>
        <guid>25/20231031114845</guid>
        <last_updated>2023-10-31 11:48:45</last_updated>
        <description><![CDATA[Last Wednesday we had an outage with downloading game updates. This post is a postmortem about what happened and also provides background on how game distribution works currently in BAR.]]></description>
        <contents><![CDATA[Last Wednesday we had an outage with downloading game updates. This post is a [postmortem](https://en.wikipedia.org/wiki/Postmortem_documentation) about what happened and also provides background on how game distribution works currently in BAR.

## Summary

On Wednesday 17th October, for a total duration of ~2h, we had an outage of game updates serving infrastructure which prevented players from downloading versions of the game needed to play in multiplayer matches. For additional 3 days, changes from the source code repository were not being propagated to players.

The root cause of the issue was a bug introduced by our [content delivery network](https://en.wikipedia.org/wiki/Content_delivery_network) (CDN) provider [BunnyCDN](https://bunny.net/) in the evaluation of the [Edge Rules](https://bunny.net/blog/introducing-edge-rules-v2/) that we use for redirecting traffic between URLs. The broken URL redirect caused serving of a stale version of game versions index file, old as far as April 2023, which caused lobby to be unable to find and download newer versions of the game requested by the game servers.

## Detailed explanation

### Background

#### Rapid

Each player in a match must have *exactly* the same version of the game. Developers submit changes multiple times a day, and they are automatically pushed to all players. It would be very inefficient if after every single change, the whole game would have to be redownloaded. In addition, different lobbies might be using different versions of the game, so multiple versions of the game need to be installed at the same time.

This problem is solved by using [content-addressed storage](https://en.wikipedia.org/wiki/Content-addressable_storage) format. Each file in the game repository is hashed and stored compressed in the `pool/` directory by its hash. Then a list of all the files with their hashes in a given game version is put into a file, hashed, and written compressed into `packages/{hash}.sdp`. To figure out which `sdp` file corresponds to which game version an versions index file `versions.gz` is created that maps from game version to the `sdp` hash. It's the freshness of this versions index file that caused the issue during this outage.

#### CDN

Propagating a new version of the game from the source repository is a multi step process:

1. The build server pulls code from the [main game repo](https://github.com/beyond-all-reason/Beyond-All-Reason) periodically. It uses [RapidTools](https://github.com/beyond-all-reason/RapidTools) to generate new pool files for change files, a new `sdp` file for the game version, and updates the versions index file.
   
   It is directly from this server that players are fetching updates when selecting the "no-CDN" option in the launcher.

2. Periodically we synchronize the versions from the build server to the [BunnyCDN SSD Edge Storage](https://bunny.net/storage/ssd/) main region in Germany using a [bespoke syncer](https://github.com/p2004a/spring-rapid-syncer).

3. BunnyCDN in the background asynchronously replicates the data to other edge storage regions in New York, Los Angeles and Singapore.

4. Periodically we use [a script](https://github.com/p2004a/bar-repos-bunny-replication-lag-mitigation/blob/main/update-edge-rule.sh) to copy the `versions.gz` to `fresh/versions_YYYYMMDDTHHMMSS.gz` in the main edge storage region and update Edge Rule to redirect from `https://repos-cdn.beyondallreason.dev/byar/versions.gz` to the newly created `https://repos-cdn.beyondallreason.dev/byar/fresh/versions_YYYYMMDDTHHMMSS.gz`.

   The edge rule forwards the traffic to the fresh file only when the [`User-Agent`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent) header doesn't contain `latestreplicated` substring in it. Script uses that for fetching the *real* `versions.gz` and it runs in Germany to make sure it's contacting the main storage region.

5. BunnyCDN quickly ([within seconds](https://bunny.net/blog/pushing-user-experience-forward-with-realtime-config-propagation/)) propagates the Edge Rule update to all the CDN edge servers.

6. Users and BAR game servers contact the network of tens of CDN edge servers to fetch files. Edge servers apply edge rules and fetch files from cache or the closest edge storage region. If the file is not present in the closest edge storage region, they do a second lookup in the main storage region.

   Cache in the edge servers is configured to expire only after 1 year because almost all the files are immutable. There is an additional edge rule configured that overrides the cache expiration for `versions.gz` and a few other files to 0.

#### Why Edge Rule at all?

The issue is that replication of data in step 3 is asynchronous and can lag for an unknown duration of time. Since a few months I have a [dedicated prober](https://github.com/p2004a/spring-rapid-syncer/tree/main/cmd/replicationprober) that measures the replication lag, and [within just last 14d](https://snapshots.raintank.io/dashboard/snapshot/FKd0kkL6JSdk4IXKZCowOGCTVfmz2ukK), Singapore region lag once got up to 39h and just today Los Angeles lagged for 1h. That's bad enough that we can't ignore it for our needs.

The mitigation is to use the edge rule, whose replication is very quick, and depend on the behavior that CDN edge servers do a fallback to the main storage region when file is not found in the closest one.

### Timeline

Oct 17th (times in UTC)
- 18:50 - Outage begins with edge rules redirect stops working
- 18:57 - [First report](https://discord.com/channels/549281623154229250/549281623577722899/1163913661782425610) in #main about issue
- 19:02 - I confirm [looking at prober](https://discord.com/channels/549281623154229250/549281623577722899/1163915034624270418) that there is some issue with the CDN
- 19:14 - Workaround published in #main that temporarily players can use no-CDN launcher option to mitigate
- 19:40 - I finish investigating the root cause of the issue
- 19:48 - Opened support ticket with CDN support documenting my findings
- 19:51 - Reply from CDN that I can try purging the affected file patch from CDN edge cache
- 19:54 - I purge the file cache and CDN starts serving a fresher file version even without a redirect present. That mitigates the issue.
- A bunch of commits land in git repository and are propagated to CDN
- 21:18 - Edge rule stops working in the opposite direction, outage begins again. 100% of traffic is redirected, but because it's 100%, automation that updates the redirect doesn't work correctly and users are pointed at the ~1h old version of the index file.
- 21:27 - First mention of issue again in #main (I'm under the shower ¯\\\_(ツ)\_/¯)
- 21:54 - I start working on the issue again
- 22:09 - I inform support that now it's broken in the opposite direction
- 22:13 - I manually update the edge rule to newer version which mitigates the issue
- 22:55 - Support team passes the issue to the development team

Oct 20
- The permanent fix on the CDN side rolls out and I'm able to restart propagation of updates from game repo to CDN.

### Root cause

With all that background, we can summarize the root cause of the incident.

For the first portion of the incident the redirect edge rule from step 4 just completely stopped working and users were downloading the original `versions.gz` file. For some reason also the edge rule described in step 6 that overrides the cache expiration to 0 didn't work and users were getting a version that is multiple months old. This was mitigated manually, via the BunnyCDN control panel, pruning the `versions.gz` from cache.

After some configuration change by support, the second portion of the incident started where the redirect started working for 100% of the traffic, ignoring the `User-Agent` header used by the script from step 4, and breaking its functionality as it was not able to determine that something needs to be copied. This caused the redirect to point at a few commits older `versions.gz` file, causing the issue on some game servers.

### Resolution

The final manual mitigation was to:
- Purge cache once more
- Manually specify the version of file to point at in the edge rule
- Disable the CDN replication automation

Then we waited 3 days for BunnyCDN to release a software update that fixed that bug and re-enabled automated pushes after that.

### Lessons learned

#### Things that went well

- BunnyCDN support proves yet again to be dependable with a very short response time.
- I finished and deployed the prober and monitoring in the beginning of September and it was very useful for quickly estimating impact and helping investigation.

#### Things that went badly

- Detection of the outage was by players, we don't have any automated alerting at the moment.
- BunnyCDN rolled out a change that completely broke the edge rule used by us, and the change was applied globally instantly.

#### Where we got lucky

- I was around and able to investigate and work on the incident almost immediately.
- Some players on their own quickly came up with the workaround to use "no-CDN" option in the launcher which reduced the impact. I will make sure that they are not on that option permanently, because it has negative consequences for our infrastructure, but it was a good workaround.

### What's next?

It would be great to have more contributors interested in this area so that when things go wrong we have better coverage timezone wise and don't need to depend on luck. Having a better monitoring and alerting setup for things in BAR infra would also allow us to make the players experience better.

We currently don't plan to stop using BunnyCDN as it still fits the best for what we need. Outages happen, and overall they are dependable. We might in the future want to replace the current redirect edge rule with a more advanced solution based e.g. on CloudFlare Workers that will offer more flexibility and control over the freshness guarantees, and allow us to implement more exotic features.

It's not exactly related to this issue, but the overall CDN propagation can be streamlined especially from the latency perspective. It's currently a set of crons that can add up to 40m and a more event driven solution would allow us to propagate updates from game repo <1m, making any hotfixes land much quicker.]]></contents>
        <tags>Infrastructure</tags>
        <pubDate>2023-10-21 09:43:34</pubDate>
      </item>
    
      
      <item>
        <title>Engine Update 2048 Ready for Testing</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/24</link>
        <id>24</id>
        <guid>24/20231031114859</guid>
        <last_updated>2023-10-31 11:48:59</last_updated>
        <description><![CDATA[New engine release candidate (rc3) is ready for testing. Please feel free to give it a try and let us know how it goes, good or bad. This is your chance to check the game will run well for you before this gets released.]]></description>
        <contents><![CDATA[New engine release candidate (rc3) is ready for testing. Please feel free to give it a try and let us know how it goes, good or bad. This is your chance to check the game will run well for you before this gets released.

Updates since 2031:

    Fixed: Sharing units with allies was not working.
    Fixed: Units could be stuck when pushed deep enough into buildings by other units.
    Fixed: Units could occassionaly get stuck running in a circle, until given a new order.
    Fixed: Fast moving units could get stuck when they run into an area a building was about to be placed and then get trapped.

    Improvement: Units will give up on unreachable move goals more reliably.
    Improvement: Units are less likely to get stuck in terrain and buildings.
    This can still happen, but the solution to that is going to be a lot more work.

Note: we've had recent reports that some players have lost in-game sound on the current live engine 1821. If you have this problem then please give this test engine release a try and report back whether the situation is any better for you.

You can test the latest release candidate by selecting “Engine Test”, under Config, on the Launcher, click Update, then click Start.]]></contents>
        <tags>Testing, Engine</tags>
        <pubDate>2023-10-20 04:43:10</pubDate>
      </item>
    
      
      <item>
        <title>Overwatch server improvements</title>
        <author>Teifion</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/22</link>
        <id>22</id>
        <guid>22/20231031114916</guid>
        <last_updated>2023-10-31 11:49:16</last_updated>
        <description><![CDATA[The Overwatch team are a group of volunteers reviewing player reports and working to enable moderation to work well within BAR. The release earlier this week (the one that went really badly) brought with it some big and some small improvements.]]></description>
        <contents><![CDATA[The Overwatch team are a group of volunteers reviewing player reports and working to [enable moderation](https://www.beyondallreason.info/guide/what-is-moderation-how-does-it-work) to work well within BAR. The release earlier this week (the one that went really badly) brought with it some big and some small improvements.

- Reports are now grouped together and can be better collated and reviewed as a combination
- No functionality in place yet but the storage for votes has been put in place on report groups
- The overwatch list page now lists report groups instead of reports
- Database functionality in preparation for Appeals has been added
- Direct messages now contain a "delivered" flag allowing for us to bring in pending DMs, aside from async player communication this can also be useful for a one-time warning rather than the current reminder system
- When actions are updated the corresponding Discord post can be updated
- Addition of an "Internal notes" section for the moderation team to note something even if no action has been taken]]></contents>
        <tags>Moderation, Server</tags>
        <pubDate>2023-10-19 06:23:33</pubDate>
      </item>
    
      
      <item>
        <title>Raptors, Scavengers, and what the heck is going on with PvE development?</title>
        <author>Damgam</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/21</link>
        <id>21</id>
        <guid>21/20231031114923</guid>
        <last_updated>2023-10-31 11:49:23</last_updated>
        <description><![CDATA[I was taking a break from BAR development due to mild burnout and Autumn season kicking in with grayscale environment outside. But i&#39;m back, and there are quite a few exciting things coming for our PvE crowd!]]></description>
        <contents><![CDATA[I was taking a break from BAR development due to mild burnout and Autumn season kicking in with grayscale environment outside. But i'm back, and there are quite a few exciting things coming for our PvE crowd!

While i'm warming up I'm gonna focus on balance of Raptors and Scavengers, though primarly Raptors, more on that later.
I've already made a few changes:
- Reduced maximum ratio of Special squads from 50% to 25%, and turned 100% Special squad wave into 50% Special squad wave
- Reduced maximum ratio of Air squads from 50% to 25%, and turned 100% Air squad wave into 50% Air squad wave
- Split Air squads into Basic and Special, just like land, and apply the same ratio as with land units. You're gonna see significantly less Elemental bombers!
- Applied slight RNG to wave timers and wave sizes, currently set to being between half and double, indepedently. So you can get double wave that takes half the time to spawn another one, and vice versa!
- Removed ability of Matriarchs to spawn in pairs, which alongside reduction of special squad spawns overall should make it less of a difficulty spike.

Now, what's to come?

Raptors are about to get a bunch of their models updated. We've got a few modelers interested in the project and they're working *hard* on giving elemental Raptors a bit of extra detail. But that's not all! There might be completely new Raptor units coming as well!

And then there's Scavengers gamemode which currently is in a bit of "work in progress" state with Raptor mechanics working as placeholder... Notably, the base building.
That part of the gamemode is about to be completely reworked, alongside new way of winning the game! No longer will their turrets pop up out of thin air! I'll give you more details on that once i've got anything working, just to not build up inflated expectations that I might not be able to fulfill! :D

It feels good to be back.]]></contents>
        <tags>PvE, Gameplay, AI, Models, Scavengers, Raptors, Balance</tags>
        <pubDate>2023-10-18 09:05:16</pubDate>
      </item>
    
      
      <item>
        <title>Server stability issues on 2023-10-18</title>
        <author>Teifion</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/20</link>
        <id>20</id>
        <guid>20/20231031114931</guid>
        <last_updated>2023-10-31 11:49:31</last_updated>
        <description><![CDATA[As you may have noticed there was a period of approximately an hour when the server went down.]]></description>
        <contents><![CDATA[As you may have noticed there was a period of approximately an hour when the server went down.

There was a moderately large update for the moderation system (more on that in a later post) which I of course assumed was the cause. I learned very quickly it was not, instead discord have changed something on their backend regarding how connecting works and as a result the server would try to connect and instantly fail.

In the end the actual fix was easy, it was finding what to fix. I have submitted an issue to the discord library informing them of the problem and my (hacky) fix.]]></contents>
        <tags>Infrastructure, Server</tags>
        <pubDate>2023-10-18 08:09:57</pubDate>
      </item>
    
      
      <item>
        <title>Test Engine Progress</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/19</link>
        <id>19</id>
        <guid>19/20231031114939</guid>
        <last_updated>2023-10-31 11:49:39</last_updated>
        <description><![CDATA[Still working through the test feedback from the 2020 and 2031 engine testing so far. It is funny how a seemly simple issue can lead to uncovering a series of related issues. A new engine release candidate (RC) will be coming soon. I&#39;d like to thank everyone who has helped with the testing thus far: you all have been a huge help! More testing and more reports (both good and bad) are welcome!]]></description>
        <contents><![CDATA[Still working through the test feedback from the 2020 and 2031 engine testing so far. It is funny how a seemly simple issue can lead to uncovering a series of related issues. A new engine release candidate (RC) will be coming soon. I'd like to thank everyone who has helped with the testing thus far: you all have been a huge help! More testing and more reports (both good and bad) are welcome!]]></contents>
        <tags>Testing, Engine</tags>
        <pubDate>2023-10-17 08:58:41</pubDate>
      </item>
    
      
      <item>
        <title>Playerlist resource sliders</title>
        <author>[teh]Flow</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/18</link>
        <id>18</id>
        <guid>18/20231031114946</guid>
        <last_updated>2023-10-31 11:49:46</last_updated>
        <description><![CDATA[The playerlist resource bars will now show the non-default position of the yellow energy conversion slider and the red metal/energy overflow slider. The idea came to me while playing in the 8v8 tournament where overflow slider sharing tactics see use.]]></description>
        <contents><![CDATA[The playerlist resource bars will now show the non-default position of the yellow energy conversion slider and the red metal/energy overflow slider. The idea came to me while playing in the 8v8 tournament where overflow slider sharing tactics see use.]]></contents>
        <tags>Interface</tags>
        <pubDate>2023-10-15 10:10:01</pubDate>
      </item>
    
      
      <item>
        <title>Engine Update 2031 Ready for Testing</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/17</link>
        <id>17</id>
        <guid>17/20231031114953</guid>
        <last_updated>2023-10-31 11:49:53</last_updated>
        <description><![CDATA[New engine release candidate ready for testing. Please feel free to give it a try and let us know how it goes, good or bad. This is your chance to check the game will run well for you before this gets released.]]></description>
        <contents><![CDATA[New engine release candidate ready for testing. Please feel free to give it a try and let us know how it goes, good or bad. This is your chance to check the game will run well for you before this gets released.

Updates since 2021:

    Fixed: Placing geos dropped FPS to 1fps
    Fixed: F2 traversibility view could cause the game to crash
    Fixed: Units forced themselves into buildings and then got stuck.
    Fixed: Aircraft stopped moving after landing on Air Repair Pads.

You can test the latest release candidate by selecting “Engine Test”, under Config, on the Launcher, click Update, then click Start.]]></contents>
        <tags>Testing, Engine</tags>
        <pubDate>2023-10-15 07:38:57</pubDate>
      </item>
    
      
      <item>
        <title>Onyx Cauldron 2.2</title>
        <author>TheMooseIsLoose</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/16</link>
        <id>16</id>
        <guid>16/20231031114959</guid>
        <last_updated>2023-10-31 11:49:59</last_updated>
        <description><![CDATA[Onyx Cauldron 2.2 is now available. This update addresses the pathing of the shallows being imbalanced between sides for some units, mainly noticeable with subs. These can now cross all shallows, and all water units can now cross the entire river and both loops.]]></description>
        <contents><![CDATA[Onyx Cauldron 2.2 is now available. This update addresses the pathing of the shallows being imbalanced between sides for some units, mainly noticeable with subs. These can now cross all shallows, and all water units can now cross the entire river and both loops.

Cedar trees and ferns now have `crushresistance = 30`, giving them the same resistance to being run over as other foliage. Ferns now have     `blocking = true`, to allow being crushed by larger units.

I had some trouble getting some shallows to exactly -16 , causing me to end up on a lower height value of `minheight = -99.5`, demonstrating that non-whole numbers can be used for the height range on maps.]]></contents>
        <tags>Maps</tags>
        <pubDate>2023-10-14 07:06:01</pubDate>
      </item>
    
      
      <item>
        <title>EMP Rework, the Universe, and Everything</title>
        <author>Hornet</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/14</link>
        <id>14</id>
        <guid>14/20231031115007</guid>
        <last_updated>2023-10-31 11:50:07</last_updated>
        <description><![CDATA[I&#39;m continuing to hack at an improbable number of things, including proper support for unrated games, creating new models and looks for the various Raptor strains, and also working on a motley array of serious and nonserious units, when time allows.  My major focus is currently on testing and tuning the EMP Rework, based on feedback, replays and playtesting. Read on to learn more about that!]]></description>
        <contents><![CDATA[I'm continuing to hack at an improbable number of things, including proper support for unrated games, creating new models and looks for the various Raptor strains, and also working on a motley array of serious and nonserious units, when time allows.  My major focus is currently on testing and tuning the EMP Rework, based on feedback, replays and playtesting. Read on to learn more about that!

The EMP Rework is an effort to make EMP much more interactive and less binary for all concerned.  Instead of EMP either stunning for up to half a minute, or nothing at all, units affected by EMP slowly lose their movement and firing speed, until an eventual stun, which doesn't last long.  Firing speed decays linearly up until 50% EMP charge, where weapons are disabled entirely, but the unit can still move at half speed. Move speed continues to drop until 100% EMP charge, when the unit is stunned for a short time. This sounds complex but becomes intuitive rapidly, and effectively just results in EMP feeling much better to play with.

I'm intentionally trying not to alter balance, other than the idea of 'how it would have been if EMP had always been like this'.  Currently that means not altering anything that isn't either EMP damage, or resistance, and as little as possible in either case.  Notably though, Stilettos are no longer completely oppressive of everything, and Webbers are competent again, actually feeling like they're entrapping their prey - which as apparently the sole user of Webbers, I'm sure Scag really appreciates.


Please remember it is still experimental and under development, and post your experiences and any notable replays in [the EMP thread](https://discord.com/channels/549281623154229250/1130124530740908222), it all helps.


If you're interested in the technical side, it's particularly tricky to handle burst sources of damage, eg spybots, compared to sustained eg stilettos, as EMP charge drains away relatively quickly and full stuns are fleeting.

This is mostly a problem on the high HP units, due to how drain time works; charge is added as a literal damage number, but removed from all units at a fixed percentage of health per second.  While this is useful in some ways, as say shuriken are inherantly less effective against T2 than T1, it also means the reward from a successful spybot is OP versus T2 armies, but lackluster versus T3, where it is usually most needed, as some T3 is relatively fast moving.  This also means that removing the insane overkill damage that used to occur from stilettos etc, which made them oppressive against T2, meant they are less useful even in bulk against T3, since the charge drains away too rapidly, and that was causing several different gameplay issues.

The next rework release addresses this. Given the depth of interactions in BAR, it's highly unlikely that this iteration will fully solve it, but that is of course exactly why it's being playtested. Stay tuned and follow [the EMP thread](https://discord.com/channels/549281623154229250/1130124530740908222) if you'd like to help out with that!]]></contents>
        <tags>Gameplay, Balance, Testing</tags>
        <pubDate>2023-10-14 05:54:02</pubDate>
      </item>
    
      
      <item>
        <title>Engine 2020+ is ready for Testing</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/12</link>
        <id>12</id>
        <guid>12/20231031115014</guid>
        <last_updated>2023-10-31 11:50:14</last_updated>
        <description><![CDATA[New engine release candidate ready for testing. Please feel free to give it a try and let us know how it goes, good or bad. This is your chance to check the game will run well for you before this gets released.]]></description>
        <contents><![CDATA[New engine release candidate ready for testing. Please feel free to give it a try and let us know how it goes, good or bad. This is your chance to check the game will run well for you before this gets released.

Things to check for:
* GPU/rendering issues either in game or in the menus.
* General Rendering/Sim performance.
* Unit movement - this has had significant updates and bug fixes.
* General gameplay. Try a few matches and keep an eye for anything wrong.

You can test the latest release candidate by selecting "Engine Test", under Config, on the Launcher, click Update, then click Start.]]></contents>
        <tags>Testing, Engine</tags>
        <pubDate>2023-10-13 10:59:11</pubDate>
      </item>
    
      
      <item>
        <title>Faction Design Sheet</title>
        <author>IceXuick</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/5</link>
        <id>5</id>
        <guid>5/20231031115021</guid>
        <last_updated>2023-10-31 11:50:21</last_updated>
        <description><![CDATA[First concepts done for Armada, Cortex and Legion Faction Design Sheet are done.]]></description>
        <contents><![CDATA[First concepts done for Armada, Cortex and Legion Faction Design Sheet are done.

[Check the latest views here](https://discord.com/channels/549281623154229250/549282804412710925/1162132068659109918)

Also made a handful of new concept designs for Cortex, one for Armada and two (Fighter + Bot) for Legion. [Check the thread on Discord here](https://discord.com/channels/549281623154229250/1063217502898884701/1162332245135200357) (based on one of rachaelneco's concept art). Beautiful!

Working towards a full set - including weapon design.

Also planned is a design-sheet for Alien Raptors and a Civilian/Neutral 'faction' - used for random ruins / scattered features/buildings.]]></contents>
        <tags>Graphics, Models</tags>
        <pubDate>2023-10-12 08:04:10</pubDate>
      </item>
    
      
      <item>
        <title>QTPFS - a new pathing system</title>
        <author>TarnishedKnight</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/4</link>
        <id>4</id>
        <guid>4/20231031115029</guid>
        <last_updated>2023-10-31 11:50:29</last_updated>
        <description><![CDATA[Currently in dev-testing, or more precisely I&#39;m dev testing the engine that QTPFS will be merged into: a desync bug has crept up into the mainline engine somewhere, which is being investigated. Once addressed, I think we will be ready to look to deploying to the test server to start the next release cycle testing process (finally!)]]></description>
        <contents><![CDATA[Currently in dev-testing, or more precisely I'm dev testing the engine that QTPFS will be merged into: a desync bug has crept up into the mainline engine somewhere, which is being investigated. Once addressed, I think we will be ready to look to deploying to the test server to start the next release cycle testing process (finally!)]]></contents>
        <tags>Engine</tags>
        <pubDate>2023-10-10 02:06:26</pubDate>
      </item>
    
      
      <item>
        <title>Game servers managed with Ansible</title>
        <author>[T0]Marek</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/3</link>
        <id>3</id>
        <guid>3/20231031115047</guid>
        <last_updated>2023-10-31 11:50:47</last_updated>
        <description><![CDATA[Starting today, all game servers are maintained by the configuration management software, Ansible. This allows us to maintain the game servers more easily through automation, rather than manually handling each server, while minimizing the pesky configuration drift that leads to issues.]]></description>
        <contents><![CDATA[Starting today, all game servers are maintained by the configuration management software, [Ansible](https://en.wikipedia.org/wiki/Ansible_(software)) 🥳. This allows us to maintain the game servers more easily through automation, rather than manually handling each server, while minimizing the pesky configuration drift that leads to issues.

It's been over four months since Okema created the initial version of the playbook. During this time, it has been tested, enhanced with missing features, and finally used to rebuild all servers. The playbook is located in the [ansible-spads-setup](https://github.com/beyond-all-reason/ansible-spads-setup) repo. As always, there is still plenty of work to do to improve it further 😉.

As a cherry on top, we've converted all servers to use Debian 12 during the deployment, saying goodbye to a mix of different distributions at various versions.]]></contents>
        <tags>Infrastructure, Lobby servers</tags>
        <pubDate>2023-10-07 07:28:57</pubDate>
      </item>
    
      
      <item>
        <title>Volumetric Effects</title>
        <author>[teh]Beherith</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/2</link>
        <id>2</id>
        <guid>2/20231031115055</guid>
        <last_updated>2023-10-31 11:50:55</last_updated>
        <description><![CDATA[Ive been working hard on volumetrics, and after a weekend of screwing up color blending in raymarching, I finally got it right! Stay tuned for more :)]]></description>
        <contents><![CDATA[Ive been working hard on volumetrics, and after a weekend of screwing up color blending in raymarching, I finally got it right! Stay tuned for more :)]]></contents>
        <tags>Graphics</tags>
        <pubDate>2023-10-02 04:14:32</pubDate>
      </item>
    
      
      <item>
        <title>Microblog system added</title>
        <author>Teifion</author>
        <posted_to>Dev updates</posted_to>
        <link>/microblog/show/1</link>
        <id>1</id>
        <guid>1/20231031115102</guid>
        <last_updated>2023-10-31 11:51:02</last_updated>
        <description><![CDATA[We&#39;ve now got a microblogging platform. Players and non-players alike can use the server4 site to see updates from any member of the contributor team.]]></description>
        <contents><![CDATA[We've now got a microblogging platform. Players and non-players alike can use the server4 site to see updates from any member of the contributor team.

The entire team of contributors are now able to post to the microblog and anybody can read them. Filtering is currently not working but that will be improved shortly. The Microblog is a relatively small part of the server and pull requests to it are very welcome. Please feel free to leave feedback in the [Suggestions thread](https://discord.com/channels/549281623154229250/1158097903114530956) on the discord.

Additionally there is a [live coding YouTube video](https://www.youtube.com/watch?v=IU0vSo36PHg) of me starting working on the live blog.]]></contents>
        <tags>Server</tags>
        <pubDate>2023-09-30 08:01:43</pubDate>
      </item>
    
  </channel>
</rss>
