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

Replaces the poster and graffiti objectives with assault and early steal & destroy ones. #77029

Merged
merged 18 commits into from Aug 21, 2023

Conversation

Timberpoes
Copy link
Member

@Timberpoes Timberpoes commented Jul 22, 2023

About The Pull Request

With the blessings of @Watermelon914 I am removing the two objectives for placing posters and spraying graffiti.

These old objectives are not dead. Their items have moved to the Badassery section of the uplink.

A box of 3 demotivational posters can be bought for 1TC with 0 rep.
The spraycan can be bought for 1TC with 0 rep.

In their place comes one new objective and one extended objective.

The new objective is Assault a Crewmember. This objective requires you to attack the specified target 2-5 times (random on objective generation). It tallies from any attack that filters through the /datum/element/relay_attackers element and has an "attacker" associated with it.

Although it asks you not to kill the other player, it doesn't fail if you kill them.

I have expanded the low-risk theft objectives with items like a mime mask, lawyer badge and a fake moustache (commonly on cooks).

Finally, I've added a very low level set of steal-and-destroy objectives aimed at some items that will require a bit of basic breaking and entering, and the destruction of which may hurt crew morale.

/datum/objective_item/steal/traitor/donut_box
/datum/objective_item/steal/traitor/rpd
/datum/objective_item/steal/traitor/space_law
/datum/objective_item/steal/traitor/granted_stamp
/datum/objective_item/steal/traitor/denied_stamp
/datum/objective_item/steal/traitor/lizard_plush
/datum/objective_item/steal/traitor/moth_plush
/datum/objective_item/steal/traitor/insuls

This PR also fixes clown shoes missing a proc override to allow them to actually register as a theft objective.

image
image
image

Why It's Good For The Game

Basically my discussion with Watermelon focused on the idea that the graffiti and poster objectives weren't really crimes. They baited antagonists into very passive play early-game.

These new replacements encourage a more antagonistic playstyle. Starting fights plus B&E are two bread-and-butter play paradigms for antaggery.

Giving a few early game theft + destroy options with a mix of impactful items (like insuls and RPDs) versus more symbolic or emotive items (plushies, donut boxes, Cargonia stamps) gets antagonists out and about in the station, warming themselves up.

And having an objective to assault players (even if you don't kill them) allows cheeky antags with a penchant for shittery to start fights with players and start genuinely impacting the shift, involving sec and drawing players into their antaggery.

Both of these natually ease players into the more substantive theft and murder objectives.

The existing spray and posters are actually thematically super cool. Traitors now have even more access to them since they can be bought for 1TC per spraycan/3-pack of posters. This lets antags with TC to spare run gimmicks around them and adds extra fun to the Badassery section.

Changelog

🆑
del: Traitor objectives to place posters and graffiti the station have been removed.
add: The items associated with the poster and graffiti objectives can now be purchased from the Badassery section of the uplink. The posters come in a box of 3 for 1TC, and the spraycans are 1TC each.
add: Adds a new Assault traitor objective, requiring you to the attack the target a few times without needing to kill them. Earn TC and reputation by starting barroom fights and bait players into escalation battles for fun and profit.
add: Expands low-risk steal objectives to include the Chef's fake moustache, Lawyer's badge, and Mime's mask.
add: Adds brand new shift start Steal & Destroy objectives for early breaking and entering. Smash your way into a sec checkpoint to grab a Space Law book, engineering to grab some insulated gloves or the psych office to kidnap their moth plush.
fix: Fixes an issue where the steal clown shoes objective would never be valid.
/:cl:

@tgstation-server tgstation-server added Feature Exposes new bugs in interesting ways Fix Rewrites a bug so it appears in different circumstances Removal This was too fun, too fun! I'm turning this feature around labels Jul 22, 2023
@Timberpoes Timberpoes requested a review from Fikou as a code owner July 23, 2023 00:06
@Jacquerel
Copy link
Contributor

Jacquerel commented Jul 23, 2023

I was going to do this myself a few months ago but then someone (I think also Watermelon?) convinced me not to lol 👍
Deniably beating someone up feels like a much better idea.

/datum/traitor_objective/target_player/assault/on_objective_taken(mob/user)
. = ..()

target.AddElement(/datum/element/relay_attackers)
Copy link
Contributor

Choose a reason for hiding this comment

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

I have recently learned to my surprise that adding the same element to something twice isn't a valid operation and in fact starts throwing some error logs because you're overriding the signals (to point at... the same proc they're already on).

You also can't detect if something is already attached to an element because elements don't really track that (they're just a collection of signals) so I am not sure what you do with this information, but it might come up here if multiple people get the objective for the same person over the course of a round.

Copy link
Member Author

Choose a reason for hiding this comment

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

That would be a fix for another PR, since it seems sensible that multiple things in the future may want to be listening for attacks on the same atom. Possibly overriding, or refactoring it into something that keeps its own state so it knows what things it's already hooked into.

Copy link
Member

@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.

I think it's a shame to see these objectives go, to be honest. One of the largest problems with progtot is the lack of objective variety, and these two were very unique and still annoying to the crew while being a good early-game option.

code/game/gamemodes/objective_items.dm Show resolved Hide resolved
@Timberpoes
Copy link
Member Author

While the objectives are gone, the items remain and are highly affordable at 1TC per 3 posters/1TC per spraycan.

If they're not worth antags spending 1TC on them for their effects, I think it may suggest they weren't objectives worth a dedicated slot with TC and rep rewards in the first place.

@carlarctg
Copy link
Contributor

I think it's a shame to see these objectives go, to be honest. One of the largest problems with progtot is the lack of objective variety, and these two were very unique and still annoying to the crew while being a good early-game option.

They can be, uh.... tertiary objectives? 0 TC cost items that give you 1 TC if you do their mini-objective? Or better yet, make them into actual primary objectives.

I like the items, but I play the game, and I'd rather beat someone up and torch emotionally impactful items than blare out HEY EVERYONE I AM A TRAITOR because my objectives were 1. expose myself with a huge slow 3x3 graffiti, 2. place incredibly obvious posters that will get me killed if a security officer stumbles upon me in the hallways and 3. secure the captain and deliver them to the armory (+2 tc +30 rep)

@Pinkufeck
Copy link
Contributor

I don't see what's the point of removing graffitis and poster when the replacement you added is destroy plush and donut box.
you're just reducing the likelyhood of an objective being a good one (one that'll be ignored if done)

@Timberpoes
Copy link
Member Author

I don't see what's the point of removing graffitis and poster when the replacement you added is destroy plush and donut box. you're just reducing the likelyhood of an objective being a good one (one that'll be ignored if done)

They're more likely to get players out and about doing antaggy stuff.

The items aren't set in stone, but I wanted simple objectives to start the player off that would qualify as 0TC or 1TC low rep stuff.

The spread has options like breaking into Cargo, breaking into Sec checkpoints, breaking into the psych office to steal their plushie, breaking into engineering and destroying insuls or breaking into Toxins/engi and destroying RPDs.

Antags don't have to take these objectives of course, but they're not the more passive variety that posters and graffiti are.

@Jezzared
Copy link

I was iffy on removing content, but putting these items into the badassery section makes a TON of sense and i enjoy it a lot more than having them as bait objectives that get traitors killed/found out before they do anything meaningful.

Plus the replacements are ideal for enabling the shitters to be that much more inscrutable (did they punch me for a good reason, or are they doing an objective?), and i honestly think that is for the best.

@Fritzlschnitzel
Copy link

"low-risk theft objectives" fake moustache. yeah I will never pick that objective there is no low risk around cooks.

@DaydreamIQ
Copy link
Contributor

DaydreamIQ commented Jul 23, 2023

I'm confused on how these minor item destruction ones are supposed to affect the crew / pose any real challenge considering you can make a donut box with some cardboard or print rpds.

Also do attacks that do zero damage like boxing gloves or the slapper count as an 'attack'?

@Timberpoes
Copy link
Member Author

I'm confused on how these minor item destruction ones are supposed to affect the crew / pose any real challenge considering you can make a donut box with some cardboard or print rpds.

Also do attacks that do zero damage like boxing gloves or the slapper count as an 'attack'?

On the topic of printing RPDs, chances are by the time you can print them these objectives are no longer eligible.

From the documentation on the progression vars:

	/// The minimum required progression points for this objective
	var/progression_minimum = null
	/// The maximum progression before this objective cannot appear anymore
	var/progression_maximum = INFINITY
	/// The progression that is rewarded from completing this traitor objective. Can either be a list of list(min, max) or a direct value
	var/progression_reward = 0 MINUTES

For the new low-level demoralise objectives:

/datum/traitor_objective/destroy_item/demoralise
	description = "Find %ITEM% and destroy it using any means necessary. \
		We believe this luxury item is important for crew morale. \
		Destruction of this item will help our recruitment efforts."

	progression_minimum = 0 MINUTES
	progression_maximum = 10 MINUTES
	progression_reward = list(4 MINUTES, 8 MINUTES)
	telecrystal_reward = list(0, 1)

They're objectives that roll between 0 and 10 minutes of progression, and give between 4 and 8 minutes of progression on success. They're low-impact, relatively straightforward objectives that go for some items commonly found across the station and can basically kickstart and antag's progress early on.

They can have people breaking into medbay, the bridge, cargo, sci, engineering, sec outposts.

Being able to craft fancy donut boxes is something I forgot about, and if it's a sticking point in the PR I can look to swap it out for other items.

@EuclidianGeometer
Copy link

"low-risk theft objectives" fake moustache. yeah I will never pick that objective there is no low risk around cooks.

You can get it from the vending machine in the theatre, too.

@Watermelon914
Copy link
Member

Watermelon914 commented Jul 24, 2023

I'm fine with this since although I really like this objective, I think progtot needs to be more focused on impactful objectives rather than having filler objectives that provide a way to speed up progression.

Due to the very nature of how progtot works, filler objectives are actually a mistake in hindsight because the secondary objective system is not mandatory anyways for a traitor to access their gear anyways and filler objectives don't provide anything interesting to do.

@RedBaronFlyer
Copy link
Contributor

RedBaronFlyer commented Jul 24, 2023

I don’t really get the point of removing those two objectives. I thought the point of them was to be easy rep that won’t get you into too much trouble. A easy way to start off with low risk in exchange for low reward. Progtot already has a problem with a limited pool of objectives and an even narrower pool of actually viable objectives (kidnap ‘x’ and bring them to ‘y’ is almost always a no go from what I’ve heard).

Is there a limit on randomly generated objectives or something? It seems unneeded to flat out purge the two objectives. I like the idea of the graffiti and
posters also being a separate purchasable thing for traitors.

/datum/objective_item/steal/traitor/granted_stamp
/datum/objective_item/steal/traitor/denied_stamp

Oh, yay. More cargo tiding. I yearn for the day that the ORM to be welded to the floor instead of just instantly unwreching it.

@Watermelon914
Copy link
Member

Watermelon914 commented Jul 24, 2023

See above comment as to why the two objectives being removed are badly designed for the progtot system.

Objectives should ideally be geared towards being interesting rather than filler, which these objectives were.

@Timberpoes
Copy link
Member Author

I'll rock reviews for this at the weekend probably, when I got some time to spare.

@TheVekter
Copy link
Contributor

TheVekter commented Jul 26, 2023

I don’t really get the point of removing those two objectives.

To add onto what Watermelon said, the poster and graffiti objectives don't feel impactful for how dangerous they are. If you're seen spraying the Syndicate symbol or putting those posters up, you're fucked. The new objectives do two things better:

  1. They generate interactions between players. Spraypainting something on the floor doesn't constitute actually doing antagonistic things to other people. Stealing basic things does.
  2. They introduce plausible deniability. Attacking the clown for their mask is likely to get you a short brig sentence. Getting caught putting up a poster gets you killed.

They're moderately interesting, easy, and result in Things Happening to people instead of around them.

E: I have some concerns about Sec possibly using some of these smaller objectives as an excuse to execute someone on sight for doing something like stealing a rubber fucking stamp, but that's more an administration issue than anything.

@MaineTheMan
Copy link

how to get antags round removed roundstart because people know what the objective items are

@Jezzared
Copy link

how to get antags round removed roundstart because people know what the objective items are

as though this wasnt already happening with posters?

@Exester509

This comment was marked as off-topic.

@Watermelon914 Watermelon914 marked this pull request as draft August 9, 2023 00:40
@Timberpoes Timberpoes marked this pull request as ready for review August 15, 2023 18:14
@Jacquerel Jacquerel merged commit 2d4d23d into tgstation:master Aug 21, 2023
20 checks passed
@Jacquerel
Copy link
Contributor

the age of posters is over now what new totem will people point to when they want to complain about objectives?

github-actions bot added a commit that referenced this pull request Aug 21, 2023
comfyorange added a commit that referenced this pull request Aug 21, 2023
Jolly-66 pushed a commit to TaleStation/TaleStation that referenced this pull request Aug 27, 2023
…h assault and early steal & destroy ones. (#7429)

Original PR: tgstation/tgstation#77029
-----

## About The Pull Request

With the blessings of Watermelon914 I am removing the two objectives for
placing posters and spraying graffiti.

These old objectives are not dead. Their items have moved to the
Badassery section of the uplink.

A box of 3 demotivational posters can be bought for 1TC with 0 rep.
The spraycan can be bought for 1TC with 0 rep.

In their place comes one new objective and one extended objective.

The new objective is Assault a Crewmember. This objective requires you
to attack the specified target 2-5 times (random on objective
generation). It tallies from any attack that filters through the
`/datum/element/relay_attackers` element and has an "attacker"
associated with it.

Although it asks you not to kill the other player, it doesn't fail if
you kill them.

I have expanded the low-risk theft objectives with items like a mime
mask, lawyer badge and a fake moustache (commonly on cooks).

Finally, I've added a very low level set of steal-and-destroy objectives
aimed at some items that will require a bit of basic breaking and
entering, and the destruction of which may hurt crew morale.

```
/datum/objective_item/steal/traitor/donut_box
/datum/objective_item/steal/traitor/rpd
/datum/objective_item/steal/traitor/space_law
/datum/objective_item/steal/traitor/granted_stamp
/datum/objective_item/steal/traitor/denied_stamp
/datum/objective_item/steal/traitor/lizard_plush
/datum/objective_item/steal/traitor/moth_plush
/datum/objective_item/steal/traitor/insuls
```

This PR also fixes clown shoes missing a proc override to allow them to
actually register as a theft objective.


![image](https://github.com/tgstation/tgstation/assets/24975989/775d46cf-f40a-43e5-9bf1-3aa4a31d436e)

![image](https://github.com/tgstation/tgstation/assets/24975989/66c77815-1f2b-4dfb-99c6-b8f2e0061654)

![image](https://github.com/tgstation/tgstation/assets/24975989/85d3878a-c598-4ec0-9bb1-920380a004c6)
## Why It's Good For The Game

Basically my discussion with Watermelon focused on the idea that the
graffiti and poster objectives weren't really crimes. They baited
antagonists into very passive play early-game.

These new replacements encourage a more antagonistic playstyle. Starting
fights plus B&E are two bread-and-butter play paradigms for antaggery.

Giving a few early game theft + destroy options with a mix of impactful
items (like insuls and RPDs) versus more symbolic or emotive items
(plushies, donut boxes, Cargonia stamps) gets antagonists out and about
in the station, warming themselves up.

And having an objective to assault players (even if you don't kill them)
allows cheeky antags with a penchant for shittery to start fights with
players and start genuinely impacting the shift, involving sec and
drawing players into their antaggery.

Both of these natually ease players into the more substantive theft and
murder objectives.

The existing spray and posters are actually thematically super cool.
Traitors now have even more access to them since they can be bought for
1TC per spraycan/3-pack of posters. This lets antags with TC to spare
run gimmicks around them and adds extra fun to the Badassery section.
## Changelog
:cl:
del: Traitor objectives to place posters and graffiti the station have
been removed.
add: The items associated with the poster and graffiti objectives can
now be purchased from the Badassery section of the uplink. The posters
come in a box of 3 for 1TC, and the spraycans are 1TC each.
add: Adds a new Assault traitor objective, requiring you to the attack
the target a few times without needing to kill them. Earn TC and
reputation by starting barroom fights and bait players into escalation
battles for fun and profit.
add: Expands low-risk steal objectives to include the Chef's fake
moustache, Lawyer's badge, and Mime's mask.
add: Adds brand new shift start Steal & Destroy objectives for early
breaking and entering. Smash your way into a sec checkpoint to grab a
Space Law book, engineering to grab some insulated gloves or the psych
office to kidnap their moth plush.
fix: Fixes an issue where the steal clown shoes objective would never be
valid.
/:cl:

---------

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
dwasint pushed a commit to dwasint/Monkestation2.0 that referenced this pull request Nov 19, 2023
…eal & destroy ones. (tgstation#77029)

With the blessings of @Watermelon914 I am removing the two objectives
for placing posters and spraying graffiti.

These old objectives are not dead. Their items have moved to the
Badassery section of the uplink.

A box of 3 demotivational posters can be bought for 1TC with 0 rep.
The spraycan can be bought for 1TC with 0 rep.

In their place comes one new objective and one extended objective.

The new objective is Assault a Crewmember. This objective requires you
to attack the specified target 2-5 times (random on objective
generation). It tallies from any attack that filters through the
`/datum/element/relay_attackers` element and has an "attacker"
associated with it.

Although it asks you not to kill the other player, it doesn't fail if
you kill them.

I have expanded the low-risk theft objectives with items like a mime
mask, lawyer badge and a fake moustache (commonly on cooks).

Finally, I've added a very low level set of steal-and-destroy objectives
aimed at some items that will require a bit of basic breaking and
entering, and the destruction of which may hurt crew morale.

```
/datum/objective_item/steal/traitor/donut_box
/datum/objective_item/steal/traitor/rpd
/datum/objective_item/steal/traitor/space_law
/datum/objective_item/steal/traitor/granted_stamp
/datum/objective_item/steal/traitor/denied_stamp
/datum/objective_item/steal/traitor/lizard_plush
/datum/objective_item/steal/traitor/moth_plush
/datum/objective_item/steal/traitor/insuls
```

This PR also fixes clown shoes missing a proc override to allow them to
actually register as a theft objective.

![image](https://github.com/tgstation/tgstation/assets/24975989/775d46cf-f40a-43e5-9bf1-3aa4a31d436e)

![image](https://github.com/tgstation/tgstation/assets/24975989/66c77815-1f2b-4dfb-99c6-b8f2e0061654)

![image](https://github.com/tgstation/tgstation/assets/24975989/85d3878a-c598-4ec0-9bb1-920380a004c6)

Basically my discussion with Watermelon focused on the idea that the
graffiti and poster objectives weren't really crimes. They baited
antagonists into very passive play early-game.

These new replacements encourage a more antagonistic playstyle. Starting
fights plus B&E are two bread-and-butter play paradigms for antaggery.

Giving a few early game theft + destroy options with a mix of impactful
items (like insuls and RPDs) versus more symbolic or emotive items
(plushies, donut boxes, Cargonia stamps) gets antagonists out and about
in the station, warming themselves up.

And having an objective to assault players (even if you don't kill them)
allows cheeky antags with a penchant for shittery to start fights with
players and start genuinely impacting the shift, involving sec and
drawing players into their antaggery.

Both of these natually ease players into the more substantive theft and
murder objectives.

The existing spray and posters are actually thematically super cool.
Traitors now have even more access to them since they can be bought for
1TC per spraycan/3-pack of posters. This lets antags with TC to spare
run gimmicks around them and adds extra fun to the Badassery section.
:cl:
del: Traitor objectives to place posters and graffiti the station have
been removed.
add: The items associated with the poster and graffiti objectives can
now be purchased from the Badassery section of the uplink. The posters
come in a box of 3 for 1TC, and the spraycans are 1TC each.
add: Adds a new Assault traitor objective, requiring you to the attack
the target a few times without needing to kill them. Earn TC and
reputation by starting barroom fights and bait players into escalation
battles for fun and profit.
add: Expands low-risk steal objectives to include the Chef's fake
moustache, Lawyer's badge, and Mime's mask.
add: Adds brand new shift start Steal & Destroy objectives for early
breaking and entering. Smash your way into a sec checkpoint to grab a
Space Law book, engineering to grab some insulated gloves or the psych
office to kidnap their moth plush.
fix: Fixes an issue where the steal clown shoes objective would never be
valid.
/:cl:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature Exposes new bugs in interesting ways Fix Rewrites a bug so it appears in different circumstances Removal This was too fun, too fun! I'm turning this feature around
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet