feat(balance): ranged bash info for solid walls #4222
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Purpose of change
This is in parallel with #4219, while that finishes up adding ranged bash info to doors and other stuff that had ranged bash info partially implemented, this sets aside the addition of ranged data to solid walls.
Describe the solution
str_max
of finished columns to match that of half-built ones, so the destroy thresh of its ranged info won't be higher than its max bash resist.str_max
of concrete supports to match that of simple concrete walls, in between little and large concrete columns, for the same reason.Describe alternatives you've considered
screm
Testing
t_wall
with full strength prior to implementing these changes. A few arrows later and it destroyed the wall.Additional context
Side note, we could in the future give mundane walls a damaged state that allows knocking holes in the drywall while making the underlying support stay as hard to destroy as they are now. :3
An additional thought I had: it might be better for the code that checks
destroy_threshold
to check the projectile damage before applying damage reduction. This would allow for things like the previously-mentioned ability to knock down steel targets that bounce off the plate, and in general support terrain being wrecked by a shot it otherwise fully absorbs. Current behavior by contrast makes any terrain that fully absorbs the damage of a shot entirely impossible to destroy.Only problem there is we'd have to either hardcode some randomness in the
destroy_threshold
check, or convert it to an array likereduction
already is. The former would be hacky, but the latter would require I go back over every terrain and furniture in the repo and pick new minimum vulnerability values which is just auuugh. Not adding any randomness to it would mean that a given ammo will only ever always destroy the terrain it hits or never do so.Checklist