Commit Graph

18 Commits

Author SHA1 Message Date
Winkarst
dda491ece4 Remove calls to FormattedMessage obsolete methods (#31706)
* Remove FormattedMessage obsolete methods

* Oops
2025-07-19 15:20:15 +10:00
Timfa
4618b94807 CharacterRequirements on ExtendDescriptions (#1862)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

This PR does not have any effects on the game from a player-perspective.
It does, however, allow us to add CharacterRequirements to
ExtendDescriptions, which allows us to add contextual information to
items that only show up if characters know about them, for example. It
has an optional field that can also show text if your character does
_not_ meet requirements.

---

# TODO

<!--
A list of everything you have to do before this PR is "complete"
You probably won't have to complete everything before merging but it's
good to leave future references
-->

- [x] Add a bunch of CharacterRequirements to new and existing
ExtendDescriptions for contraband or other neat info

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>
Example of how to add a requirement:

![image](https://github.com/user-attachments/assets/18c105f0-550b-410a-b0be-15e5c8f8a73f)

https://github.com/user-attachments/assets/67ad6ecd-1886-4f71-85c0-fdd035a9f5c9

![image](https://github.com/user-attachments/assets/8195b744-ec6b-4b69-bc9e-a86443847239)

</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- tweak: Tweaked Extended Descriptions to be able to require
CharacterRequirements before being shown to the player. Currently not
actually implemented anywhere except for the emag and some posters.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

## Summary by CodeRabbit

- **New Features**
- Enhanced character creation and role-validation systems now
incorporate playtime tracking and additional criteria, providing a more
tailored experience.
- In-game items—such as hacking devices, weapons, and posters—feature
extended, lore-rich descriptions that adjust based on character
attributes.
- New localized texts enrich the narrative by offering clear feedback
when character requirements are or aren’t met.
- New character requirements related to antagonists and mindshields have
been introduced, enhancing gameplay dynamics.
- A new method for validating character requirements has been added,
improving the accuracy of checks during character creation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
(cherry picked from commit 0640f1f54619a95a4360a79b870654b2c4a1e433)
2025-03-08 14:43:38 +03:00
sleepyyapril
885ee5a831 Wizmerge for Station AI (#1351)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

the adding AI is now up to y'all because i'm not touching loadout code
for name datasets, but it shouldn't be too bad from here

---------

Signed-off-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
Signed-off-by: SolStar <44028047+ewokswagger@users.noreply.github.com>
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: themias <89101928+themias@users.noreply.github.com>
Co-authored-by: Verm <32827189+Vermidia@users.noreply.github.com>
Co-authored-by: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com>
Co-authored-by: Sphiral <145869023+SphiraI@users.noreply.github.com>
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com>
Co-authored-by: ravage <142820619+ravage123321@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: Intoxicating-Innocence <188202277+Intoxicating-Innocence@users.noreply.github.com>
Co-authored-by: Saphire <lattice@saphi.re>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com>
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
Co-authored-by: CaasGit <87243814+CaasGit@users.noreply.github.com>
Co-authored-by: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com>
Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com>
Co-authored-by: NakataRin <45946146+NakataRin@users.noreply.github.com>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
Co-authored-by: SlamBamActionman <slambamactionman@gmail.com>
Co-authored-by: Doomsdrayk <robotdoughnut@comcast.net>
Co-authored-by: Brandon Hu <103440971+Brandon-Huu@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: Julian Giebel <juliangiebel@live.de>
Co-authored-by: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com>
Co-authored-by: Repo <47093363+Titian3@users.noreply.github.com>
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
Co-authored-by: icekot8 <93311212+icekot8@users.noreply.github.com>
Co-authored-by: AJCM-git <60196617+AJCM-git@users.noreply.github.com>
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
Co-authored-by: no <165581243+pissdemon@users.noreply.github.com>
Co-authored-by: Tornado Tech <54727692+Tornado-Technology@users.noreply.github.com>
Co-authored-by: osjarw <62134478+osjarw@users.noreply.github.com>
Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com>
Co-authored-by: TGRCDev <tgrc@tgrc.dev>
Co-authored-by: Milon <milonpl.git@proton.me>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: Fildrance <fildrance@gmail.com>
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: chavonadelal <156101927+chavonadelal@users.noreply.github.com>
Co-authored-by: SolStar <44028047+ewokswagger@users.noreply.github.com>
Co-authored-by: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com>
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: ArchRBX <5040911+ArchRBX@users.noreply.github.com>
Co-authored-by: archrbx <punk.gear5260@fastmail.com>
Co-authored-by: Radezolid <snappednexus@gmail.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
Co-authored-by: MilenVolf <63782763+MilenVolf@users.noreply.github.com>
Co-authored-by: Velcroboy <107660393+IamVelcroboy@users.noreply.github.com>
Co-authored-by: Velcroboy <velcroboy333@hotmail.com>
Co-authored-by: neuPanda <chriseparton@gmail.com>
Co-authored-by: neuPanda <spainman0@yahoo.com>
Co-authored-by: Dvir <39403717+dvir001@users.noreply.github.com>
Co-authored-by: Whatstone <whatston3@gmail.com>
Co-authored-by: VideoKompany <135313844+VlaDOS1408@users.noreply.github.com>

(cherry picked from commit 93ed70acfeda357133a701f637d3faeec02749bb)
2025-01-14 00:13:42 +03:00
Spatison
a2557f75a6 Upstream (#129) 2024-11-21 17:49:04 +07:00
Mnemotechnican
d38c7d4b28 Hotfix Playtime Requirements (#621)
Shitcode
2024-07-31 15:07:07 -04:00
DEATHB4DEFEAT
54c119ecfd Make Jobs & Antags Use CharacterRequirements (#596)
# Description

- Makes jobs use CharacterRequirements
- Makes antags use CharReqs
- Splits CharReqs into multiple files
- Adds a Whitelist CharReq
- Prays the tests pass

---

---------

Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
2024-07-29 18:17:34 -04:00
DEATHB4DEFEAT
72b0fd25b5 Fix Loadout and Trait Job Playtime Requirements (#584)
# Changelog

🆑
- fix: Job playtime requirements for loadouts and traits show correctly
2024-07-23 10:18:46 -04:00
metalgearsloth
13e5c560f6 Loadouts redux (#25715)
* Loadouts redux

* Loadout window mockup

* More workout

* rent

* validation

* Developments

* bcs

* More cleanup

* Rebuild working

* Fix model and loading

* obsession

* efcore

* We got a stew goin

* Cleanup

* Optional + SeniorEngineering fix

* Fixes

* Update science.yml

* add

add

* Automatic naming

* Update nukeops

* Coming together

* Right now

* stargate

* rejig the UI

* weh

* Loadouts tweaks

* Merge conflicts + ordering fix

* yerba mate

* chocolat

* More updates

* Add multi-selection support

* test

h

* fikss

* a

* add tech assistant and hazard suit

* huh

* Latest changes

* add medical loadouts

* and science

* finish security loadouts

* cargo

* service done

* added wildcards

* add command

* Move restrictions

* Finalising

* Fix existing work

* Localise next batch

* clothing fix

* Fix storage names

* review

* the scooping room

* Test fixes

* Xamlify

* Xamlify this too

* Update Resources/Prototypes/Loadouts/Jobs/Medical/paramedic.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* Update Resources/Prototypes/Loadouts/loadout_groups.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* Update Resources/Prototypes/Loadouts/Jobs/Civilian/clown.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* Update Resources/Prototypes/Loadouts/Jobs/Civilian/clown.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* Update Resources/Prototypes/Loadouts/loadout_groups.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* Update Resources/Prototypes/Loadouts/Jobs/Security/detective.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* Update Resources/Prototypes/Loadouts/loadout_groups.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* ben

* Margins

---------
2024-07-12 02:28:31 -07:00
Mnemotechnican
d5f73ad370 Fix Them Pesky Job Requirements (#511)
# Description
Fixes job requirements using wrong locales

Happened because one function had role-timer- as its default locale
prefix and the other that called the first had null as the default.

---

<details><summary><h1>Media</h1></summary><p>


![image](https://github.com/Simple-Station/Einstein-Engines/assets/69920617/0d02c40a-a58f-4b48-89f5-e0a6b4ff75b9)


![image](https://github.com/Simple-Station/Einstein-Engines/assets/69920617/f3b651dd-492e-47c0-aa9f-74998c78f792)

</p></details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- fix: Job requirements are now displayed correctly.
2024-07-05 20:10:24 +01:00
DEATHB4DEFEAT
528557383a Loadouts (#45)
Description copied from my Wizard's Den PR
Resolves https://github.com/Simple-Station/Einstein-Engines/issues/32

# TODO

- [x] CVars
- [x] Server side loadout point validation
- Make tabContainer less bad
- [x] Move head clothes to loadouts from lockers
- [x] Move job starting equipment to loadouts
- [x] Loadout item preview
- [x] Fix loadouts duplicating on server restart
- [x] Make sure everything is localized -- Components and Tags are an
odd thing to display to the player in the whitelist and are very
unrealistic to make localizations for, so.. not doing that, what do I
do?
- [x] Fix all items going into the bag no matter their size
- [x] Add min/cur/max points to the bar
- [x] Use buttons instead of checkboxes
- [x] "Show Unusable" button to hide things your character currently
doesn't match the whitelists for
- [x] Time whitelist option
- [x] Species whitelist option
- [x] Trait whitelist option instead of EntityWhitelist for the sake of
localization
- [ ] More loadouts (filler things while waiting for review)
- [ ] - Golden or themed items for Command roles with an undecided
amount of playtime on their respective jobs
- [x] - Goliath cloak for playing a lot of Salvage
- [x] - Senior items for playing a lot of its respective role
- [ ] - Varying materials of pocket watches for people with varying
overall playtime
- [x] Fix loadout selectors not updating to match current preferences

<details><summary><h1>Media (Click Me!)</h1></summary>
<p>

I need to rerecord these


https://github.com/space-wizards/space-station-14/assets/77995199/59713874-b043-4813-848e-56b2951b6935


https://github.com/space-wizards/space-station-14/assets/77995199/40180aee-bfe3-4f30-9df8-0f628e7e4514

</p>
</details> 

# Changelog

🆑
- add: Added a new character customization tab for selecting items to
start your shift with, loadouts!
- remove: Removed some default job equipment in favor of loadouts
- remove: Removed several clothing items from Command lockers in favor
of loadouts

---------

Co-authored-by: VMSolidus <evilexecutive@gmail.com>
2024-05-13 00:46:57 -04:00
SimpleStation14
417277385e Mirror: Fix game.role_timers not effecting the antag menu (#135)
## Mirror of PR #25964: [Fix game.role_timers not effecting the antag
menu](https://github.com/space-wizards/space-station-14/pull/25964) from
<img src="https://avatars.githubusercontent.com/u/10567778?v=4"
alt="space-wizards" width="22"/>
[space-wizards](https://github.com/space-wizards)/[space-station-14](https://github.com/space-wizards/space-station-14)

###### `1eb2bcf45532c4200c1f2606d1759fe335a636f7`

PR opened by <img
src="https://avatars.githubusercontent.com/u/34938708?v=4"
width="16"/><a href="https://github.com/VasilisThePikachu">
VasilisThePikachu</a> at 2024-03-10 14:11:20 UTC
PR merged by <img
src="https://avatars.githubusercontent.com/u/19864447?v=4"
width="16"/><a href="https://github.com/web-flow"> web-flow</a> at
2024-03-10 16:30:16 UTC

---

PR changed 1 files with 1 additions and 7 deletions.

The PR had the following labels:


---

<details open="true"><summary><h1>Original Body</h1></summary>

> <!-- Please read these guidelines before opening your PR:
https://docs.spacestation14.io/en/getting-started/pr-guideline -->
> <!-- The text between the arrows are comments - they will not be
visible on your PR. -->
> 
> ## About the PR
> <!-- What did you change in this PR? -->
> Closes #21404
> 
> The server checked this fine and would let you join correctly as the
antag. Just the client prevented you.
> 
> ## Media
> <!-- 
> PRs which make ingame changes (adding clothing, items, new features,
etc) are required to have media attached that showcase the changes.
> Small fixes/refactors are exempt.
> Any media may be used in SS14 progress reports, with clear credit
given.
> 
> If you're unsure whether your PR will require media, ask a maintainer.
> 
> Check the box below to confirm that you have in fact seen this (put an
X in the brackets, like [X]):
> -->
> 
> - [x] I have added screenshots/videos to this PR showcasing its
changes ingame, **or** this PR does not require an ingame showcase


</details>

Co-authored-by: Vasilis <vasilis@pikachu.systems>
2024-05-04 20:41:05 -04:00
Pieter-Jan Briers
ccea85136b Random spontaneous cleanup PR (#25131)
* Use new Subs.CVar helper

Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.

This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.

* Fix a bunch of warnings

* More warning fixes

* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.

* Get rid of some more ISerializationHooks for enums

* And a little more

* Apply suggestions from code review

Co-authored-by: 0x6273 <0x40@keemail.me>

---------

Co-authored-by: 0x6273 <0x40@keemail.me>
(cherry picked from commit 68ce53ae17985876d6d112b764b2144964a9f42e)
2024-02-18 23:02:29 +01:00
Repo
ffecbe00c1 User accessible playtime (#21242)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2023-10-31 19:12:43 +01:00
Debug
c37a4d53c8 Role whitelists (#191)
* Add job whitelists

* Redo whitelist system with jobrequirements

* Remove unused function

* Fix linter errors

* Remove unused dependency and whitespace
2023-10-19 00:23:17 +02:00
deltanedas
8fd5bc3724 Roundstart antag role restrictions revival (#20108)
Co-authored-by: Ray <vigersray@gmail.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-09-27 21:59:12 +02:00
metalgearsloth
6b942c4d45 Make role timer tooltips pretty (#19605)
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2023-09-27 21:59:12 +02:00
metalgearsloth
be14380520 Role ban UI updates (#16736) 2023-05-27 14:22:22 +10:00
Pieter-Jan Briers
e852ada6c8 Play time tracking: Job timers 3: more titles: when the (#9978)
Co-authored-by: Veritius <veritiusgaming@gmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-08-07 16:00:42 +10:00