-
Notifications
You must be signed in to change notification settings - Fork 154
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
Configurable radiation #275
Conversation
Now it is applied to mobs too. Moreover, it should now respect "radiation" armor group, or fall back to "fleshy" group to detect vulnerable things
return 0 | ||
end | ||
if ag.radiation then | ||
return 0.01 * ag.radiation |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please explain this multiplier, it looks arbitrary.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
calculate_damage_multiplier
does the following:
- It checks is the object damageable at all.
- If the object has the
radiation
armor group, it uses its value. As with default damage with thefleshy
AG, its value is not protection but percent of damage actually done. - If the object have no
radiation
AG but havefleshy
one, it is still considered to be damageable by radiation; that’s necessary to support existing mods. But as its value varies a lot, I take a square root to reduce variance.
Actually that function is mostly a workaround for current mods that don’t support radiation yet. It seems reasonable that entities that are “fleshy
” are vulnerable to radiation too, but the level may only be guessed.
I made shielding more effective on purpose. Before it was so weak that most of the protection you got from adding more protective layers was just from the increased distance that that forced. A dirt node still shouldn't offer full protection from a corium source though. The rest looks good. |
Shielding actually needs careful tweaking as it is a bit too weak by default, although in realty meters (of concrete) are required to protect from radiation. It’s a bit difficult to make reasonable coefficients in simplified game mechanics as radiation resistance against different types of radiation differs a lot; moreover, some materials that protect well e.g. from gamma-rays (like lead) offer little protection from neutrons, and vice versa (for example, concrete protects well from neutrons but not from X-rays) |
So may it be merged? Also it may make sense to make overall multipliers configurable (both for damage and shielding). |
I'll merge this -- once I get to it... |
Bump |
This pull request contains several modifications: