Goonstation 13 - Modules - TypesVar Details - Proc Details

marionette implant

Vars

burned_outIf TRUE, this implant is burned out and permanently unusable.
emote_blacklistThis is some messy code, but emotes are like that. Anything in this list will not be triggered by the force-emote function.
heatThe implant's heat level, increased by various actions. Slowly reduces over time.
heat_danger_zoneIf heat is above this value, each activation has a chance to break the implant permanently.
heat_dissipationThe implant's heat dissipation. heat is reduced by this value every processing tick. The value slowly ramps up over time, but is reset upon being activated. This makes short-term overuse very punishing, but allows it to recover decently quickly if given time to rest.
linked_addressA network address that this implant is linked to. Can be null. Packets sent by this address skip the passkey requirement, and if the implant burns out, it will send a signal to this address to alert it.
passkeyA string that's (usually) unique to each implant. Signals must provide the correct passkey to issue commands to the implant.
prev_heatThe implant's previous heat level, set after it's adjusted. This is used so that the implant can send an alert signal when it enters the danger zone for the first time.

Procs

adjust_heatAdjusts heat by to_heat. Also handles potentially burning out when overheating, and alerting a linked address if we enter the danger zone.
burn_outBurns out the implant and makes it permanently unusable.
send_activation_replySends an activation reply to the provided address. Any activation with a non-null fail_reason is considered a fail.
send_pingSends a ping packet to the provided address, containing information about the implant's status. If special is non-null, it will be provided in the special parameter; this is currently used to indicate when an implant goes above the danger zone when it was previously safe.

Var Details

burned_out

If TRUE, this implant is burned out and permanently unusable.

emote_blacklist

This is some messy code, but emotes are like that. Anything in this list will not be triggered by the force-emote function.

heat

The implant's heat level, increased by various actions. Slowly reduces over time.

heat_danger_zone

If heat is above this value, each activation has a chance to break the implant permanently.

heat_dissipation

The implant's heat dissipation. heat is reduced by this value every processing tick. The value slowly ramps up over time, but is reset upon being activated. This makes short-term overuse very punishing, but allows it to recover decently quickly if given time to rest.

linked_address

A network address that this implant is linked to. Can be null. Packets sent by this address skip the passkey requirement, and if the implant burns out, it will send a signal to this address to alert it.

passkey

A string that's (usually) unique to each implant. Signals must provide the correct passkey to issue commands to the implant.

prev_heat

The implant's previous heat level, set after it's adjusted. This is used so that the implant can send an alert signal when it enters the danger zone for the first time.

Proc Details

adjust_heat

Adjusts heat by to_heat. Also handles potentially burning out when overheating, and alerting a linked address if we enter the danger zone.

burn_out

Burns out the implant and makes it permanently unusable.

send_activation_reply

Sends an activation reply to the provided address. Any activation with a non-null fail_reason is considered a fail.

send_ping

Sends a ping packet to the provided address, containing information about the implant's status. If special is non-null, it will be provided in the special parameter; this is currently used to indicate when an implant goes above the danger zone when it was previously safe.