Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[READY?!?!?] Fragmentation overhaul #24171

Merged
merged 11 commits into from Aug 3, 2018

Conversation

Projects
None yet
5 participants
@kevingranade
Copy link
Member

commented Jul 3, 2018

What a haul, this took many times longer than expected, but it's ready for checking out, I've exhausted the issues I know about.

Main features:

  1. Fragmentation lethality based on real-world data, centered on standard antipersonnel munitions.
    Specifically, added tests to verify that M87 is highly lethal at 5m, and drops sharply in lethality at 15m.
  2. Explosives stats and effectiveness derived from real-world data. (Casing weight and explosive charge mass)
  3. Fragment cloud algorithm based on shadowcasting, providing a fast but accurate way to model a cloud made up of huge numbers of fragments.
    Interacts with obstacles, including monsters, leading to fragmentation effectiveness scaling nicely based on openness of terrain.
  4. Goosed mininuke power and stats to resemble smallest known operational nuke.

Some discussion of the changes on the forums.

Some RDX charge tests:
https://discourse-cdn-sjc2.com/standard15/uploads/cataclysmdda/original/2X/3/381595cec2e35e0985f9204c500bad19806ea9b3.png
https://discourse-cdn-sjc2.com/standard15/uploads/cataclysmdda/original/2X/1/171351ccca9b12d8136c2dca503232a504a2a916.png

@kevingranade kevingranade force-pushed the kevingranade:fragmentation-overhaul branch Jul 3, 2018

src/map.cpp Outdated
continue;
}

if( v.v->obstacle_at_part( part ) >= 0 ) {

This comment has been minimized.

Copy link
@ZhilkinSerg

ZhilkinSerg Jul 3, 2018

Contributor

Will need changes due to #23873. Something like:

if( vpart_position( *v.v, part ).obstacle_at_part() ) {
@ZhilkinSerg

This comment has been minimized.

Copy link
Contributor

commented Jul 3, 2018

Lol, I've just blasted a prison, a hospital and a football field with a mininuke and that was something!

@kevingranade kevingranade force-pushed the kevingranade:fragmentation-overhaul branch 2 times, most recently Jul 4, 2018

@kevingranade kevingranade force-pushed the kevingranade:fragmentation-overhaul branch Jul 27, 2018

@kevingranade kevingranade changed the title Fragmentation overhaul [READY?!?!?] Fragmentation overhaul Jul 27, 2018

@nexusmrsep

This comment has been minimized.

Copy link
Contributor

commented Jul 27, 2018

That might be an incentive for a new set of home made explosive traps/mines.

@DracoGriffin DracoGriffin referenced this pull request Jul 27, 2018

Closed

Feedback / Next Steps on Lab Expansion #24508

9 of 27 tasks complete
@kevingranade

This comment has been minimized.

Copy link
Member Author

commented Jul 28, 2018

Need to consider ranges.

  1. Verify that fuses burned for long enough for the player to get safely away.
  2. Verify that an average Survivor can throw Thrown explosives far enough to exceed the minimum safe distance.
@Clyybber

This comment has been minimized.

Copy link
Contributor

commented Jul 28, 2018

Probably for a different PR, but fuses which the player is able to lay on the ground would be cool, allowing a remote detonation.

@kevingranade

This comment has been minimized.

Copy link
Member Author

commented Jul 29, 2018

fuses which the player is able to lay on the ground

That was originally a big thing I wanted to add, but this whole thing took waaaaay too long.

@tinukedaya

This comment has been minimized.

Copy link
Contributor

commented Jul 30, 2018

That was originally a big thing I wanted to add, but this whole thing took waaaaay too long.

Couldn't heavy duty cable code be used for this?

@kevingranade

This comment has been minimized.

Copy link
Member Author

commented Jul 30, 2018

Couldn't heavy duty cable code be used for this?

This is actually a lot simpler than what vehicle power cables do, so I'd prefer to not tie those two together.

Opened another issue for fuses: #24556

@kevingranade kevingranade force-pushed the kevingranade:fragmentation-overhaul branch to 2fbac5b Aug 3, 2018

@kevingranade

This comment has been minimized.

Copy link
Member Author

commented Aug 3, 2018

Tweaked throw distances (but not accuracy) to make grenades usable without killing yourself.
Still need to adjust fuze lengths.

@kevingranade

This comment has been minimized.

Copy link
Member Author

commented Aug 3, 2018

Fuse times of large charges adjusted so you have time to get clear.

Should be good to go unless something bad crops up.

@ZhilkinSerg ZhilkinSerg merged commit 3243917 into CleverRaven:master Aug 3, 2018

3 of 4 checks passed

continuous-integration/travis-ci/pr The Travis CI build failed
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
coverage/coveralls First build on fragmentation-overhaul at 24.388%
Details
gorgon-ghprb Build finished.
Details

@kevingranade kevingranade deleted the kevingranade:fragmentation-overhaul branch Aug 28, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.