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

Mapping hazards and types #3233

Merged
merged 21 commits into from
Jan 6, 2025

Conversation

Thera-Pissed
Copy link
Contributor

@Thera-Pissed Thera-Pissed commented Jul 21, 2024

About The Pull Request

Baseline functionality finished! yay

(still plenty of room for actual hazards, mostly need sprites & ideas)

Pitch

This PR implements a base obj/structure/hazard, with the goal of making subtypes of this base hazard easily customizable using variables. The goal is to make it as easy as possible for mappers to make and customize hazards based on the subtypes listed below.

Hazard Basics

Most hazards are activated randomly or on contact. Random hazard effects will constantly repeat with a delay set between random_min and random_max. Contact hazard effects either happen when walked over (not dense) or bumped (dense), with a short cooldown. As of now, only radiation barrels use the attacked hazard trigger, which happens when the hazard is, of course, attacked.

Hazard Subtypes

base hazard
all hazards can choose to add slowdown
hazard/atmospheric
a simple hazard that emits a chosen gas, with set mols and temp
hazard/electrical
hazards that emit sparks, stuns, or tesla arcs. The bread and butter of this system
hazard/floor
floor hazards, such as spikes, slips, and launchers
hazard/radioactive
the old radioactive barrels, with their activation procs moved to the base hazard. otherwise nearly the same!
hazard/slowdown
require climbing over, under, or have a stick chance
hazard/spray
sprays foam, smoke, or water.

implemented electrical hazard example:
https://youtu.be/4P-67V_US6Q

hazard example suite as of july 22. more are likely to come as I get more recommendations.
https://youtu.be/gLLdpiM-Ofg

Why It's Good For The Game

Makes it (hopefully) easy for mappers to customize simple hazards to their needs, and adds new kinds of hazards that don't rely on sim mechanics nearly as heavily. This allows for hazards to be easily used in ruins without much consideration, compared to something like emitters.

Changelog

🆑
add: adds ruin hazards
/:cl:

@github-actions github-actions bot added Map Change Tile placing is hard. Thank you for your service. DME Edit Sprites A bikeshed full of soulless bikes. Code change Watch something violently break. labels Jul 21, 2024
Copy link
Member

@thgvr thgvr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this helps clean up making radioactive a hazard subtype, though it could be cleaner. Should tweak barrels to not be the base hazard, and add the radiation triggers to other hazards.
hey wait a second, doing something once every cooldown? I already do that with random_effect. why also need this thing to process when I could just use the existing setup! yeah
Powered shutoff based on the medipen vault console, which requires a cable connection to charge, and at max allows the shutoff to be used. Could be more tactile but this works for now.
@thgvr
Copy link
Member

thgvr commented Aug 11, 2024

Still being worked on? Let me know when you want a review

@Thera-Pissed
Copy link
Contributor Author

still being worked on, been busy this week, mostly drafted because I want more implemented hazards before its sent

Copy link
Contributor

github-actions bot commented Oct 8, 2024

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions github-actions bot added the Merge Conflict Use Git Hooks, you're welcome. label Oct 8, 2024
@Thera-Pissed
Copy link
Contributor Author

if the electric hazards are wanted let me know, I'm not finishing the rest of this however.

Looking at the code again, hopefully these comments are more clear.
@Thera-Pissed Thera-Pissed reopened this Oct 30, 2024
@github-actions github-actions bot added the Ruin Ruin successfully tested. label Oct 30, 2024
@github-actions github-actions bot removed the Merge Conflict Use Git Hooks, you're welcome. label Oct 30, 2024
@thgvr
Copy link
Member

thgvr commented Nov 3, 2024

Let us know when you want a review on this

Copy link
Contributor

github-actions bot commented Dec 7, 2024

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions github-actions bot added the Merge Conflict Use Git Hooks, you're welcome. label Dec 7, 2024
@github-actions github-actions bot removed the Merge Conflict Use Git Hooks, you're welcome. label Dec 10, 2024
@Thera-Pissed Thera-Pissed marked this pull request as ready for review December 10, 2024 04:06
@Thera-Pissed Thera-Pissed requested review from a team as code owners December 10, 2024 04:06
@Thera-Pissed
Copy link
Contributor Author

My goal of having several hazards finished for this before review has made me stall on it for a while, if I could get a review now that'd be great. If anything seems wonky I'll cut it for a future PR.

@FalloutFalcon
Copy link
Member

ehh this has been open for 2 long.. just remeber in future that sleeps are evil..

@FalloutFalcon FalloutFalcon added this pull request to the merge queue Jan 6, 2025
Merged via the queue into shiptest-ss13:master with commit cfcb7dc Jan 6, 2025
16 checks passed
MrCat15352 pushed a commit to MrCat15352/MrCat that referenced this pull request Jan 8, 2025
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->
(still plenty of room for actual hazards, mostly need sprites & ideas)
This PR implements a base obj/structure/hazard, with the goal of making
subtypes of this base hazard easily customizable using variables. The
goal is to make it as easy as possible for mappers to make and customize
hazards based on the subtypes listed below.
Most hazards are activated randomly or on contact. Random hazard effects
will constantly repeat with a delay set between random_min and
random_max. Contact hazard effects either happen when walked over (not
dense) or bumped (dense), with a short cooldown. As of now, only
radiation barrels use the attacked hazard trigger, which happens when
the hazard is, of course, attacked.
base hazard
all hazards can choose to add slowdown
hazard/atmospheric
a simple hazard that emits a chosen gas, with set mols and temp
hazard/electrical
hazards that emit sparks, stuns, or tesla arcs. The bread and butter of
this system
hazard/floor
floor hazards, such as spikes, slips, and launchers
hazard/radioactive
the old radioactive barrels, with their activation procs moved to the
base hazard. otherwise nearly the same!
hazard/slowdown
require climbing over, under, or have a stick chance
hazard/spray
sprays foam, smoke, or water.

implemented electrical hazard example:
https://youtu.be/4P-67V_US6Q

hazard example suite as of july 22. more are likely to come as I get
more recommendations.
https://youtu.be/gLLdpiM-Ofg

<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->
Makes it (hopefully) easy for mappers to customize simple hazards to
their needs, and adds new kinds of hazards that don't rely on sim
mechanics nearly as heavily. This allows for hazards to be easily used
in ruins without much consideration, compared to something like
emitters.
<!-- Please add a short description of why you think these changes would
benefit the game. If you can't justify it in words, it might not be
worth adding. -->

:cl:
add: adds ruin hazards
/:cl:

<!-- Both :cl:'s are required for the changelog to work! You can put
your name to the right of the first :cl: if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Code change Watch something violently break. DME Edit Map Change Tile placing is hard. Thank you for your service. Ruin Ruin successfully tested. Sprites A bikeshed full of soulless bikes.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants