beyond-all-reason / beyond-all-reason/RecoilEngine
Some weapon types misuse `size` vs `collisionSize`
- Dominant language
- C++
- Stars
- 679
- Forks
- 290
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 40
Description
`size` is for visuals and `collisionSize` is for setting the physical radius.
----
This one should use `drawRadius` (i.e. `size`) and not `radius` (i.e. `collisionSize`). There shouldn't be an arbitrary x1.3 multiplier either.
https://github.com/beyond-all-reason/spring/blob/ab88be7e235eba1417dbfa07e95277b480283c0b/rts/Sim/Projectiles/WeaponProjectiles/FireBallProjectile.cpp#L60
This one should not multiply by `size`, keep it to `collisionSize`.
https://github.com/beyond-all-reason/spring/blob/ab88be7e235eba1417dbfa07e95277b480283c0b/rts/Sim/Projectiles/WeaponProjectiles/FlameProjectile.cpp#L36
This one should not increase the physical radius, just the drawRadius, and not multiply by collisionSize again.
https://github.com/beyond-all-reason/spring/blob/ab88be7e235eba1417dbfa07e95277b480283c0b/rts/Sim/Projectiles/WeaponProjectiles/FlameProjectile.cpp#L66-L68
Contributor guide
Research direction
Read the referenced lines in rts/Sim/Projectiles/WeaponProjectiles/FireBallProjectile.cpp and FlameProjectile.cpp, then inspect the surrounding projectile definitions to distinguish drawRadius from collisionSize. Done means the three identified weapon types use the appropriate radius field without the reported multipliers, with visual and physical behavior preserved.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- game-dev
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 58/100