Skip to content
This repository was archived by the owner on May 22, 2025. It is now read-only.

Conversation

@Runian
Copy link
Contributor

@Runian Runian commented Jul 24, 2023

Document the changes in your pull request

Port of ParadiseSS13/Paradise/pull/18933, partial port of tgstation/tgstation/pull/76669, and a few other tweaks.

Adds "Jestographic Sequencer" (or cmag) which is a clown-exclusive traitor item. It is a limited version of the emag as it only functions on certain objects (in a funny way). To compensate, it is priced at 4 TCs (compared to the normal emag's 6 TCs). It also can used to slip people like a holobanana for 8 seconds.

The only interaction it has right now is that:
Using it on airlocks and windoors inverts access. You get laughed at if you fail to open an inverted access door.

You can use soap on these doors to return it back to normal.

Other tweaks:

  • Cyborgs get similar feedback like the AI when interacting with airlocks. Cyborgs were able to open up an airlock's UI even though they couldn't do anything with it.
  • Mechs had their access list, but only be used when there was a pilot. Now, this access list will be used if there isn't a pilot. This means that if you manage to get a pilotless mech to bump into a door, it'll open the door if it has the proper access instead of not opening it.
  • The uplink description for Explosive Airlock Charge was inaccurate. It made it sound like touching (aka using) the booty trapped airlock will trigger the explosion. It has been updated to "open" instead of "using".
  • Fixes Emmaging sec mask or SWAT mask doesnt give funny line anymore #19834.
  • emag_act now includes the emag itself as a parameter.
  • Failing to emag something now refunds the emag charge. This also means that you don't lose a charge if you misclick the floor (which can't be emagged at all).

Spriting

rainbow

Wiki Documentation

New role-restricted item for Clown. 4 TCs. Only has functionality for airlocks and windoors (for now).

Changelog

🆑
rscadd: Jestographic Sequencer, a role-restricted traitor item for the Clown, is buyable at 4 TCs.
rscadd: Jestographic Sequencer, if used on airlocks, will invert access.
tweak: Failing to emag something refunds the charge.
tweak: Cyborgs gets feedback similar to the AI when they interact with an non-functioning (e.g emagged) airlock.
tweak: Mechs no longer need a pilot to determine if they have access to a door.
tweak: Changed Explosive Airlock Charge's uplink description to be more accurate on how it is triggered.
bugfix: Emagging the sechailer works now.
/:cl:

@Runian Runian requested a review from a team as a code owner July 24, 2023 03:14
@Yogbot-13 Yogbot-13 added Feature This adds new content to the game Sprites This PR has spriting changes Tweak This PR contains changes to the game. labels Jul 24, 2023
@Zer0Tactics
Copy link

This is hilariously useless, I love it so much.

@Moltijoe Moltijoe added the Awaiting - Action - Balance Review Code Director Review label Jul 24, 2023
@Addust
Copy link
Contributor

Addust commented Jul 24, 2023

if you use it on a stunbaton the stunbaton should just fucking explode

@Runian
Copy link
Contributor Author

Runian commented Jul 24, 2023

if you use it on a stunbaton the stunbaton should just fucking explode

Different PR.

@azzzertyy
Copy link
Contributor

if you use it on a stunbaton the stunbaton should just fucking explode

no it should clearly stun the user

@Zer0Tactics
Copy link

Sitting here thinking about this item and other potential interactions:
Cleanbots: leave wet floors behind them
Honkbots: move twice as fast, leave quick drying lube behind them
Pie Cannon: Give Rapid Fire mode/cause non clown users that try to use it to hit themselves in the face instead
Clown Car: Unlocks the normal emag functions

I feel like it should have some kind of interaction with the H.O.N.K., but I can't figure out what that would be.

This item is really getting to me, it's funnier the longer I think about it.

@JohnFulpWillard
Copy link
Contributor

I don't think this should work as in-depth as Emag, it should probably be tied to the Emag signal itself and just be emagging but with some differences wherever you want it to be.

@Zer0Tactics
Copy link

I don't think this should work as in-depth as Emag, it should probably be tied to the Emag signal itself and just be emagging but with some differences wherever you want it to be.

You can't really tie it into the emag, otherwise you're giving clowns a cheaper, better emag. Keeping it separate makes it unique.

I don't think it should be as deep as the Emag, but it should reward clowns for using it with clown items or related stuff.

@azzzertyy
Copy link
Contributor

to be fair when it comes to door opening this already IS a better emag, its less visible, prevents people following you, and it can be used to easily grief en mass

@JohnFulpWillard
Copy link
Contributor

You can't really tie it into the emag, otherwise you're giving clowns a cheaper, better emag. Keeping it separate makes it unique.
I don't think it should be as deep as the Emag, but it should reward clowns for using it with clown items or related stuff.

Then I do not support making it an entire obj_act() and flag, for just 2-3 interactions. It can be in their attackby or the emag's afterattack I think, or even just a signal, stored locally on those 2-3 machines.

Copy link
Contributor

@JohnFulpWillard JohnFulpWillard left a comment

Choose a reason for hiding this comment

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

When I said to put it in the afterattack or attackby, I did not mean to put it in emag_act, I meant to put it either in in attackby(obj/item, mob/user, params) where you want to use the clown emag, in this case you just want it in 2-3 items, or in clown emag's afterattack(atom/target, mob/user, proximity) and check for the 2-3 items you want, and do the special effects there. Overwrite those 2-3 interactions, rather than check the type of every single emag act in the game just for a total of 2 items.

@Runian Runian requested a review from JohnFulpWillard August 14, 2023 03:50
Runian and others added 9 commits August 13, 2023 21:14
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
@Runian Runian requested a review from JohnFulpWillard August 14, 2023 05:12
/atom/proc/emag_act()
SEND_SIGNAL(src, COMSIG_ATOM_EMAG_ACT)
/atom/proc/emag_act(mob/user, obj/item/card/emag/emag_card)
return (SEND_SIGNAL(src, COMSIG_ATOM_EMAG_ACT, user, emag_card))
Copy link
Contributor

Choose a reason for hiding this comment

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

SHOULD_CALL_PARENT?

Copy link
Contributor Author

@Runian Runian Aug 18, 2023

Choose a reason for hiding this comment

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

Not many other acts (i.e, rad_act or rcd_act) ever use ..() whenever overridden or have any SHOULD_CALL_PARENT, so I don't see why emag_act should be different. Will set to false though.

@Runian Runian requested a review from JohnFulpWillard August 18, 2023 23:37
* TRUE if the emag had any effect, falsey otherwise.
*/
/atom/proc/emag_act(mob/user, obj/item/card/emag/emag_card)
SHOULD_CALL_PARENT(FALSE) // Emag act should either be: overridden (no signal) or default (signal).
Copy link
Contributor

@JohnFulpWillard JohnFulpWillard Aug 20, 2023

Choose a reason for hiding this comment

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

NO IT SHOULD BE TRUEE

though I guess it would require a lot more work with emags. Perhaps best to leave for a future PR, don't want to get this one more creeped than it is now

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Wouldn't it just be adding ..() to every emag_act?

@JohnFulpWillard JohnFulpWillard enabled auto-merge (squash) August 21, 2023 08:26
@JohnFulpWillard JohnFulpWillard merged commit a184c1b into yogstation13:master Aug 21, 2023
@Yogbot-13 Yogbot-13 added the Fix This fixes an issue. Please link issues in fix PRs label Aug 21, 2023
Yogbot-13 added a commit that referenced this pull request Aug 21, 2023
@Runian Runian deleted the HONK-cmeg branch August 21, 2023 17:25
@KingSuperBOB
Copy link

Considering this is practically a port of this have you thought of giving it similar effects such as turning plant data disks into fake nuke disks (not the illegal tech version) turning AI law boards into pranksimov boards, making the megaphone say set phrases, or the gravity generator making everyone slip except the clown when within range or everyone that gets cloned gets clumsy and comic sticky genes.
image

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Balance Council Approved This PR was approved by the Balance Council. Feature This adds new content to the game Fix This fixes an issue. Please link issues in fix PRs Sprites This PR has spriting changes Tweak This PR contains changes to the game.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Emmaging sec mask or SWAT mask doesnt give funny line anymore

10 participants