1.17.0
What's Changed
- Tell agents to build both sidecars before running clippy locally by @tomjn in #3019
- Offer an edit-in-place delivery route for loose .sdd games by @tomjn in #3020
- Patch one field in a unit's Lua file without rewriting the file by @tomjn in #3022
- Write field changes into a loose game with a backup, undo and accept by @tomjn in #3024
- Bump a written game's mtime so unitsync notices an in-place write (#2637) by @tomjn in #3026
- Settle the project after an in-place write so it stops counting the written fields (#3023) by @tomjn in #3029
- Bump the game folder's mtime after a .3do install or undo by @tomjn in #3030
- Keep the in-place write message on screen through the routes re-read by @tomjn in #3031
- Give an in-place undo or accept back to every project holding that game's backup (#3027) by @tomjn in #3032
- Say which fields edit in place cannot write before the user edits them, and route those through the mutator (#2633) by @tomjn in #3033
- Show the disk diff before accepting or undoing an in-place write by @tomjn in #3034
- Write a project's copied units into the game's units folder when editing in place (#2634) by @tomjn in #3036
- Say which of a copy's changes edit in place cannot write, and route it through the mutator (#3035) by @tomjn in #3037
- Edit a unit in place when its table is in a file its unit file includes (#3021) by @tomjn in #3039
- Edit .fbi units in place, and strip .3do from their Objectname on install (#2638) by @tomjn in #3042
- Stand in Spring.GetModOptions() so SplinterFaction's chicken queens can be edited in place by @tomjn in #3044
- Edit the weapon the unit page showed when a unit's weapon list has a gap (#3041) by @tomjn in #3046
- Add a copy to an fbi builder's build menu via sidedata.tdf (#3040) by @tomjn in #3047
- Add a new sidedata.tdf subsection when a builder has no build list yet (#3048) by @tomjn in #3049
- Give every weapon field a label a person can read (#2681) by @tomjn in #3051
- Edit a unit's weapons one slot at a time, mount and definition apart (#2639) by @tomjn in #3053
- Give a project its own weapons, and equip them into any unit's slot (#2640, #3052) by @tomjn in #3056
- Stop a copied unit or weapon going through the game's post-processing twice (#3054) by @tomjn in #3058
- Say beside a field when the game's post files will change a typed value (#3057) by @tomjn in #3060
- Show and edit the weapon definitions a unit carries for other weapons to name (#2641) by @tomjn in #3061
- Show a unit's armour class, and check a weapon's damage table against real classes by @tomjn in #3063
- Show DPS, alpha damage and the rest of the numbers players argue about by @tomjn in #3064
- Edit a unit's death explosion as an effect, not a name (#2642) by @tomjn in #3065
- Give a weapon's impact and trail effects a form instead of hand-written Lua (#2643) by @tomjn in #3067
- Write library weapons and death explosions equipped on a unit in place (#3055) by @tomjn in #3070
- Refresh the armour-class snapshot against the live game by @tomjn in #3072
- Add collections: named, nestable sets of units (#2654) by @tomjn in #3073
- Mods: a unit search that understands stats (#2656) by @tomjn in #3075
- Make an equipped library weapon load in SpringMCLegacy and THIS (#3068) by @tomjn in #3076
- Add a batch edit drawer: one arithmetic change across a collection (#2655) by @tomjn in #3077
- Add checkpoints: a named state you can go back to (#2657) by @tomjn in #3078
- Write a library weapon into a SplinterFaction unit's slot in place (#3069) by @tomjn in #3080
- Add a unit reference table and comparison view (#1316) by @tomjn in #3082
- Group Unit tweaks projects by game, with search and sort (#3071) by @tomjn in #3083
- Follow a bare global through a SplinterFaction basedef to equip a death explosion in place (#3079) by @tomjn in #3084
- Resolve a project's equipped library weapon in the reference table and search by @tomjn in #3086
- Let batch edit, the collections drawer and package export read derived stats in rule collections by @tomjn in #3087
- Let an explosion generator hold several spawns plus a ground flash (#3066) by @tomjn in #3088
- Add a randomised mod generator to Unit tweaks (#1318) by @tomjn in #3089
- Give a randomised mod project a stored recipe and a Regenerate action by @tomjn in #3091
- Make a typed value load as typed on the mutator route (#3059) by @tomjn in #3094
- Settle typed values before an edit-in-place write (#3093) by @tomjn in #3096
- Settle typed values on the tweak slot route (#3092) by @tomjn in #3123
- Settle typed values on the presets-panel tweak apply routes (#3122) by @tomjn in #3124
- Settle a copy's own typed numbers on edit in place by @tomjn in #3125
- Mods: rename the tweak slot route so it stops reading as BAR-only by @tomjn in #3127
- Mods: pack tweak slots so Zero-K and every BAR build read them (#3126) by @tomjn in #3130
- Run carried Lua before typed field changes on all three tweak routes by @tomjn in #3131
- Cap the shared tooltip's width so long help text wraps by @tomjn in #3132
- Fix the Fields tab doing nothing while a death explosion is open by @tomjn in #3133
- Group unknown armour class warnings into one line per weapon by @tomjn in #3134
- Shorten the unit tweaks header to the game name and version by @tomjn in #3135
- Give death explosions their own tab in the unit tweaks editor by @tomjn in #3136
- Add unit pictures, a faction filter and column tooltips to the reference page by @tomjn in #3137
- Bring the game's own unit reference table to parity: picture, faction, filter by @tomjn in #3139
- Give a tweak project its own pages for weapons, collections, checks and packaging by @tomjn in #3140
- Open the Checks page on blockers, collapse what already passed by @tomjn in #3148
- Add a cost against effectiveness scatter plot to the Reference page by @tomjn in #3149
- Workshop: move the field filter and count inside each unit editor tab by @tomjn in #3150
- Workshop: add a Changes section listing every edit with game and project values by @tomjn in #3151
- Workshop: show checkpoints as an icon beside undo and redo by @tomjn in #3152
- Workshop: let the field list scroll away the stat tiles by @tomjn in #3153
- Workshop: filter the unit list by faction and by changed units by @tomjn in #3154
- Workshop: filter the Reference table by collection, and select every unit shown by @tomjn in #3156
- Workshop: edit many units from the Reference table and retire the Batch edit drawer by @tomjn in #3158
- Workshop: mark units, fields, weapons and death explosions a check flags by @tomjn in #3159
- Workshop: let a collection be added from another project by @tomjn in #3166
- Workshop: cut off long unit names with an ellipsis in the Reference table by @tomjn in #3165
- Workshop: give project section bodies matching left and right padding by @tomjn in #3167
- Workshop: replace the rounded accent bar for an overridden field with an edited pill by @tomjn in #3168
- Workshop: use the standard map picker in the Test drawer by @tomjn in #3169
- Workshop: offer an unpacked .sdd alongside the .sdz export by @tomjn in #3170
- Workshop: show the game's value beside the project's for derived stats by @tomjn in #3171
- Workshop: let the Reference table edit Range, a weapon field by @tomjn in #3172
- Workshop: give preflight blockers a unit reference for the marker by @tomjn in #3173
- Workshop: let a change follow the game's value when the game changes by @tomjn in #3179
- Workshop: focus a field's input, not its help button, on a palette jump by @tomjn in #3182
- Workshop: let bulk edit and the field row make a change follow the game by @tomjn in #3185
- Workshop: build the command palette on the shared CommandDialog by @tomjn in #3183
- Updater: make the update card the primary call to action by @tomjn in #3186
- Fix NSIS installer header: white background instead of black block by @tomjn in #3187
Full Changelog: 1.16.0...1.17.0