Commit Graph

4331 Commits

Author SHA1 Message Date
iero-srv
a994ec21f2 Status Indicators
A Port from Polaris/Virgo
2023-04-17 17:22:35 -04:00
projectkepler-RU
3451328d7d Update gun.dm 2023-04-11 13:52:40 +07:00
NullFag
9e5f3628c9 h 2023-03-30 14:58:02 +02:00
Cyprex
c1322a15d3 Merge pull request #102 from Bubberstation/revert-96-upstream_merge3
Revert "Merge upstream"
2023-03-12 09:41:05 +01:00
Cyprex
8edb95d68a Merge pull request #62 from Bubberstation/ID-Fix-Branches
Changes IDs
2023-03-12 09:39:50 +01:00
Cyprex
d014771a37 Merge pull request #80 from NullDagaf/RAPE_EVERYONE_AND_MONEY
Makes snake taurs have snake footsteps
2023-03-12 09:08:29 +01:00
Cyprex
5b19f27261 Merge pull request #82 from mcmeiler/quirk_stuff
Hydrophilic quirk, Species whitelists for quirks!
2023-03-11 21:49:10 +01:00
Cyprex
e6bb4098c4 Revert "Merge upstream" 2023-03-11 18:51:44 +01:00
ReturnToZender
60febf5409 Merge https://github.com/Bubberstation/Bubberstation into ID-fix-part-2 2023-03-10 16:51:04 -06:00
ReturnToZender
9fe42dec80 Works on fixing IDs more
Lots of edits, fixes most old problems
2023-03-10 16:42:39 -06:00
Cyprex
c5573eb59f Merge remote-tracking branch 'skyrat/master' into upstream_merge3 2023-03-08 18:51:21 +01:00
Zergspower
e239585f13 [MOSTLY Modular] Roles and tracking for ghost roles (#19672)
Roles and tracking
2023-03-06 08:29:11 -08:00
SkyratBot
0918989e56 [MIRROR] Updates Coderbus and Adminbus Ruin [MDB IGNORE] (#19680)
* Updates Coderbus and Adminbus Ruin (#73675)

## About The Pull Request

Updates the people inside the coderbus and adminbus. Removes the
meatballs, because... well, they used to be called something that
actually accurately describes the admin team but now they're just
meatballs. The banhammer now takes the driver seat of adminbus, with a
sacrificial altar in the back. RIP to all the good players lost when
they became admin

## Why It's Good For The Game

It was really out of date lol

## Changelog
🆑
add: Updated the bus ruin
/🆑

* Updates Coderbus and Adminbus Ruin

---------

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2023-03-05 20:29:31 -08:00
Meiler
986e948bd4 fuck 2023-03-06 03:15:24 +01:00
Meiler
d25898713c re-adds define, code checks just in case 2023-03-05 20:59:54 +01:00
Cyprex
7c08482174 Merge pull request #24 from 567Turtle/hunger-change
Slower hunger loss
2023-03-05 20:43:21 +01:00
Meiler
b6fe7d83c1 Delete unnecessary define, functional whitelists 2023-03-05 14:14:53 +01:00
ReturnToZender
fd4587e26c Making ACCESS_NTREP A thing pt. 1 2023-03-04 22:18:16 -06:00
SkyratBot
0df0569321 [MIRROR] Sourced Component Backend [MDB IGNORE] (#19665)
* Sourced Component Backend (#73571)

## About The Pull Request
Adds a backend for sourced components. which was requested by @ Fikou
Also cleans up a little bit of the AddComponent logic

## Why It's Good For The Game

Backend for fancy stuff and having a component from multiple sources

---------

Signed-off-by: GitHub <noreply@ github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* Sourced Component Backend

---------

Signed-off-by: GitHub <noreply@ github.com>
Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2023-03-04 19:55:32 -08:00
SkyratBot
c41ff0aaa6 [MIRROR] Optimizes INVOKE_ASYNC by making it a macro and avoiding a proc call [MDB IGNORE] (#19668)
* Optimizes INVOKE_ASYNC by making it a macro and avoiding a proc call (#73264)

## About The Pull Request
This is quite literally the same behavior but faster, and also catches
improper arguments better than the old macro/proc approach.

Credit to Lohikar for writing the macro.
Port of https://github.com/DaedalusDock/daedalusdock/pull/196

Also, `world.ImmediateInvokeAsync()` never set a return value, so
expecting one was never valid behavior.

At MSO's request, the documentation of `spawn(-1)`:

As per the reference, calling `spawn()` with a negative value will
execute the spawned code until a blocking action (such as `sleep()`) is
encountered. Then, it will step outside of the spawned code, and
continue the proc. This is the same behavior as calling a `waitfor =
FALSE` proc. Specifically, under the hood, `spawn(-1)` creates a copy of
the callstack like `sleep()`, incase the spawned code is blocked and
needs to be rescheduled.

As an added bonus, `spawn(-1)` silences SHOULD_NOT_SLEEP errors, whereas
`waitfor = FALSE` does not.

## Why It's Good For The Game

ITS FREE FUCKING CPU TIME

---------

Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: Kyle Spier-Swenson <kyleshome@ gmail.com>

* Optimizes INVOKE_ASYNC by making it a macro and avoiding a proc call

---------

Co-authored-by: Kapu1178 <75460809+Kapu1178@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: Kyle Spier-Swenson <kyleshome@ gmail.com>
2023-03-04 19:55:24 -08:00
SkyratBot
03854f9abe [MIRROR] Vote System: Approval Voting [MDB IGNORE] (#19666)
* Vote System: Approval Voting (#73749)

## About The Pull Request

Approval Voting is a system in which voters can select as many maps as
they want, instead of selecting only one. Final tallies show how many
votes each map received, and the winner is the map with the most
support.

## Changes since https://github.com/tgstation/tgstation/pull/73413
- Custom votes can now be started using either system
- Icon during AV votes indicating your selections
- Map population filter counts active players and participating ghosts

https://user-images.githubusercontent.com/83487515/222580901-61506cc3-dc42-4435-9775-1e6291a3f734.mp4

## Why It's Good For The Game

First-past-the-post (our current voting system) has flaws such as
creating a bunch of wasted votes, in that a large number of selections
ultimately have no impact and for example, a map can win a 3 way race
11/10/10, even though 2/3 of the votes were not for that map. This leads
to people having to vote strategically, and perhaps not what their true
choice is.

Approval Voting solves this by instead allowing the player to select all
the maps they would like to play, so they can vote for their true
preferred choice, as well as alternates.

For example, a player that wants Metastation, is okay with Icebox, and
doesn't want Delta may feel pressured to vote Icebox if it's in a 2 way
race with Delta.

AV lets them vote for Meta, and Icebox or as many others as they want as
their alternates and creates a more fair outcome of a map vote.

Map population filter removing AFK/lobby screen dwellers gives a better
number of active players so as to not trip the map filter's population
cap earlier than it should.

tl;dr: Less of this

![image](https://user-images.githubusercontent.com/83487515/222860681-210f2d7e-2368-4d42-84d5-6de838995e50.png)

## Changelog

🆑 LT3
rscadd: Added new multi-vote system
balance: Map votes are now calculated using multi-vote instead of the
old single-vote system
admin: Admins can now use either multi-vote or single-vote for custom
votes
code: Map choice filtering uses active player count, not all connected
clients
/🆑

* Vote System: Approval Voting

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-03-04 17:49:21 -08:00
Meiler
52bd80b998 initial 2023-03-05 01:59:24 +01:00
NullFag
19d45706ea ballin' 2023-03-04 23:45:02 +01:00
ReturnToZender
323c5477d0 Updates access.dm
Add: NTRep Access
2023-03-04 14:17:05 -06:00
Paxilmaniac
3fb3c7add2 Gun code override unshittening part like, two by this point (#18957)
* this code is so fucking funny it makes me want to merge w/o looking

* safety component stuff

* safeties should be finished

* I loooove safety component

* I swear that's all for gun safety

* manufacturer component

* cant forget this

* this is so awful

* 1100 line long gun file

* ok it actually compiles now

* that should not be an addition of any sort

* these defines should not be used anymore

* why?? the fuck??? are there var edited fire modes on black mesa?????

* how did that even happen

* maybe ci will shut up now

* oh man so many guns are lacking autofire now

* probably fixes safety toggling

* that should reference the gun not the component

* that should probably return

* makes it replicate current behavior, defaults safeties to being ON

* and that is all i have to say about that

* its automagically
2023-03-04 19:53:15 +00:00
SkyratBot
9a0e94aaa2 [MIRROR] Fixes hijacked shuttles not counting as escaped, cleans up associated code [MDB IGNORE] (#19652)
* Fixes hijacked shuttles not counting as escaped, cleans up associated code (#73623)

## About The Pull Request

Fixes #72240

So, in the past, `onCentCom` ran a check at the end that said "if we're
on centcom z, in centcom area, or in shuttle that is endgame launched:
return TRUE"

Meanwhile its brother `onSyndieBase` did not need to run the same
checks, because it was also on the centcom z-level.

This meant that for the purposes of `considered_escaped`, `onCentCom`
pretty much entirely eclipsed `onSyndieBase`, only mattering for, well,
Nuke Ops

So the fix was simple - add the check for "in shuttle that is engame
launched" to `onSyndieBase`.

I took this opportunity to do a quick audit of associated "escaped" and
"alive" code. Did you know that hardcore random only checked that you
were on centcom to award survival points? Instead of any other checks
for escaped like stat?

Also the ancient "romerol zombies can't be used as an easy way to
greentext escape" was broken, because it checked the wrong species ID?

Bonus performance optimization: `in area` -> `in
area.get_contained_turfs()`

## Why It's Good For The Game

Hijack does not turn around to become an L

## Changelog

🆑 Melbert
fix: Hijacked shuttles now count as "escaping alive" once agian
fix: Hardcore random survival now actually checks that you've escaped
alive, and not just made it to centcom
fix: Intelligent zombies can now escape.
fix: Infectious zombies now don't count as escaped as intended.
/🆑

* Fixes hijacked shuttles not counting as escaped, cleans up associated code

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-03-04 13:00:17 +00:00
SkyratBot
0f35cff251 [MIRROR] Lawyer PDAs can't be painted by the HoS [MDB IGNORE] (#19653)
* Lawyer PDAs can't be painted by the HoS (#70697)

## About The Pull Request

Removes the Lawyer's PDA from the head of security's PDA painter, as
they're a Service job.

## Why It's Good For The Game

They're a Service job, there's no reason for the Head of Security to be
able to have any authority over them or their equipment.

## Changelog

🆑
fix: The HoS' PDA painter can no longer paint PDAs into Lawyer ones.
/🆑

* Lawyer PDAs can't be painted by the HoS

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2023-03-04 12:59:13 +00:00
Cyprex
59b587131a Merge from upstream 2023-03-03 19:22:13 +01:00
SkyratBot
9af8ffe4f8 [MIRROR] Fully removes departmentType var from Requests Consoles [MDB IGNORE] (#19122)
* Fully removes departmentType var from Requests Consoles (#72916)

I was thinking about updating the requests console's UI, when I noticed
that #67219 started the process of moving away from the ancient
departmentType field. I have decided to put off the UI update until
later, and finished the necessary map updates using the power of
UpdatePaths.

Also autodocced the requests console vars and procs.

Finishes the removal of a deprecated (and may I say, badly named)
variable. Mappers will not accidentally try to set the outdated bitflag
fields, instead they will the more descriptive fields.

* Fully removes departmentType var from Requests Consoles

* Update CentCom.dmm

* update paths

* fix var edits

* fix

* a

---------

Co-authored-by: Profakos <profakos@gmail.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: John Doe <gamingskeleton3@gmail.com>
2023-03-03 17:15:35 +00:00
SkyratBot
3d629de231 [MIRROR] It Came From Outer Spess: Adds midround changelings, delivered by an absolutely disgusting changeling meteor [MDB IGNORE] (#19154)
* It Came From Outer Spess: Adds midround changelings, delivered by an absolutely disgusting changeling meteor

* Update dynamic_rulesets_midround.dm

---------

Co-authored-by: Rhials <Datguy33456@gmail.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-03-02 21:03:08 -08:00
lessthanthree
382d78a0db [SEMI-MODULAR] Engineering Override Update (#19414)
engi split from 18807
2023-03-02 20:23:50 -08:00
Gr33d-y
a7d1f1ab34 Blacksmithing! (#13)
* Blacksmithing!

THIS SHOULD, SHOULD BEING THE KEY WORD, add blacksmithing as a job along with their workstations on our 4 maps. Their workstations are in beta and currently they share access with curators.

* wood added

forgot to add wood

* Working Blacksmith

Blacksmith.Dm moved to modular_zubber/jobs/job_types/
landmarks.dm for blacksmith moved to modular/zubber/game/object/landmarks

temporary ID_Trim added to /modular_zubber/datum/id_trim/jobs.dm

Blacksmith now spawns in the correct location. But is lacking relvant apperal. Also didn't touch plasmamen.

* Move Blacksmith to Cargo instead of Service and Give plasmamen the right suit

Blacksmith should now be considered Cargo. Starting with pants and boots instead of shorts and shoes.

* undoes map changes

* Update VoidRaptor.dmm

* Update VoidRaptor.dmm

* Update IceBoxStation.dmm

* Update IceBoxStation.dmm

* Update IceBoxStation.dmm

* fuck this shit so fucking hard holy shit who MADE AUTO MAPPING I WANT THEM DEAD

* all but tram trimmed up and smithed

* should be final mapping changes, hopefully, also fully removes automapping and adds skyrats auto mapped stuff to the default maps, besides barbers, for now.

* its back,,,,

* automap test yay

* fixes what i assume is a typo

* automapper gone?>!!?!?!?!

* ITS BACK

* *sobbing and crying sounds*

* is the nightmare over?

* test

* test over

* NO MORE HAIRCUTS!!!! for now

* gdsfYEASLGHJKF FUCK EAH

* CATPAWAS

* KILL

* heg,,h,,m

* kills my hopes and dreams

* Update _basemap.dm

* typofix

* it donut exist

* Give the blacksmith a more appropriate Mail list.

* fixes a small mapping error with the zlevels

* fixes another weird mapping error.

* Adds blacksmith area, new blacksmith heirlooms

Adds the new area to be placed on maps.
Adds appropriate heirlooms.

* Adds the new areas to the DME.

* Update IceBoxStation_bubber.dmm

* Update IceBoxStation_bubber.dmm

* Update IceBoxStation_bubber.dmm

* Repaths modular stuff into the right folders, let's bite the bullet now.

Also adds access for barbers.

* Blacksmith access mapping helper

* Update tgstation.dme

* New blacksmith shop for Deltastation!

* NT Consultant returned to Delta

* Delta Update (bones & sinew)

* Unit test fixes

* Tramstation Blacksmith

* Tramstation Barber

* Update tramstation_bubber.dmm

* super crazy icebox changes

* icebox fixes

* fixes

* Final blacksmith area change

* icebox pipenet fix

* .dme out of order fix

---------

Co-authored-by: JimmyDrop <85446983+ShamanSliph@users.noreply.github.com>
Co-authored-by: KathrinBailey <kat892@outlook.com>
Co-authored-by: KathrinBailey <53862927+KathrinBailey@users.noreply.github.com>
2023-03-02 02:23:28 +00:00
SkyratBot
34ad67a4fc [MIRROR] Updates policy to better warn players for any existing antagonist policy [MDB IGNORE] (#19341)
* Updates policy to better warn players for any existing antagonist policy

* Update job.dm

* Update job.dm

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-03-01 17:10:54 -08:00
Bloop
4119b0fbf8 [NO GBP] Hotfix for the glasses drawing over hats on all snouted mobs (#19573)
* Fix for the glasses drawing over hats, & limits this fix to only the snouts that it is needed for

* Small adjustment

* Typo in doc

* This was probably only going to cause problems + some final cleanup

* thank you linters

* Small fix + doc

* Some trimming of unneeded code

* unending pain
2023-03-01 21:39:15 +00:00
SkyratBot
f194b57feb [MIRROR] Basic Mob Spiders II: Elements [MDB IGNORE] (#19268)
* Basic Mob Spiders II: Elements

* Update giant_spider.dm

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-03-01 11:57:49 -08:00
SkyratBot
fce25b931a [MIRROR] Fixes an issue with nightmare revival, Unit tests some fully heal stuff [MDB IGNORE] (#19599)
* Fixes an issue with nightmare revival, Unit tests some fully heal stuff (#73612)

## About The Pull Request

- Same issue as Ethereals. Owner was `null`ed because the heart was
recreated. I opted for a more permanent solution, that being introducing
a new flag to avoid recreating organs.

- Adds some unit tests for fully heal stuff to make sure it works.

## Why It's Good For The Game

More cases of revival working as expected

## Changelog

🆑 Melbert
fix: Nightmare revival acts less funky - stops it from re-creating the
Light Eater.
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* Fixes an issue with nightmare revival, Unit tests some fully heal stuff

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-03-01 01:15:12 -08:00
Tom
f6edbf0b86 [MANUAL MIRROR] Return to Tiny: Reworks heights to use filters, allows spacemen to have varying heights (#72344) (#19451)
* Return to Tiny: Reworks heights to use filters, allows spacemen to have varying heights (#72344)

Re-pr of #66644 with some changes to get it working

![image](https://user-images.githubusercontent.com/51863163/209893337-6a35207b-f097-4fd8-bc51-e66b3273919c.png)

- [x] ~~Huds get cut off~~ Resolved
- [x] ~~Very tall helmets get cut off~~ Resolved
- [x] Hair gets cut off
- [x] ~~Needs optimization before releasing to the world as a pref~~ jk
lol

Look at that fella so cute

🆑 Melbert, That REALLY Good Soda Flavor, FatFat, AndreyGusev
add: Spacemen can now have varying height. (Admin only for now)
add: Dwarfs are now slightly shorter, but look way better.
/🆑

Co-authored-by: Jack LeCroy <3073035+jacklecroy@users.noreply.github.com>

* fix conflict

* clarity

* update rouny

* update screenshots

* Revert "update screenshots"

This reverts commit a5427a5238e574869fe364568b7f043bbd287c79.

* Fixes the dwarf screenshot.

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Jack LeCroy <3073035+jacklecroy@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-02-28 16:27:27 -05:00
SkyratBot
db33d75a5e [MIRROR] Space/Changeturf fixes and optimizations [MDB IGNORE] (#19201)
Space/Changeturf fixes and optimizations

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2023-02-28 15:23:35 -05:00
SkyratBot
1f753d5d4c [MIRROR] Refactors crew records (#72725) + Medical/Security records now use the max/min age. [MDB IGNORE] (#19078)
* Medical/Security records now use the max/min age.

* merge conflict

* Refactors crew records (#72725)

I have attempted or otherwise started this project at least 4 times. I
am sick of it being on my calendar. The code needs it. I need it.

- This makes crew records a proper datum rather than assigning
properties record.fields.
- General, medical, and security records are merged.
- Did some slight refactoring here and there for things that looked
obvious.
- Wanted states are now defined (and you can suspect someone through
sechud)
- pAI (unrelated but annoying) had some poorly named exported types that
i made more specific
- Job icons are moved back to the JS side (I wanted to get icons for
initial rank without passing trim)

<details>
<summary>previews</summary>

Editable fields & security console

![CM6d74brnC](https://user-images.githubusercontent.com/42397676/213950290-af6cfd76-eb8b-48e9-b792-925949311d9a.gif)

Medical records

![bFJErsvOaN](https://user-images.githubusercontent.com/42397676/214132534-59af1f8c-9920-4b51-8b27-297103649962.gif)

Look and feel of the more current version

![cxGruQsJpP](https://user-images.githubusercontent.com/42397676/214132611-0134eef0-e74c-4fad-9cde-328ff7c06165.gif)

</details>

TGUI'd some of the worst UIs in the game.
Creating new records is made much simpler.
Manifest_inject is made readable.
Probably bug fixes

🆑
refactor: Crew records have been refactored.
refactor: Medical records -> TGUI
refactor: Security records -> TGUI
refactor: Warrants console -> TGUI
qol: Players are now alerted when their fines are paid off.
qol: Cleaned up sec hud examination text.
qol: Adding and deleting crimes is easier.
qol: Writing crimes in the console sets players to arrest.
qol: You can now mark someone as a suspect through sec hud.
/🆑

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>

* I've got something that now actually works

Just got to incorporate the records into what players can actually see.

* Turns out that client has already been transferred after all

* Adds the past records in the TGUI records (they're kinda ugly but it works, so y'know)

* Whoops

* Hate you too sometimes Prettier

* Fixes ghost roles using LITERAL records, which caused problems

* Fixes the leaks caused by ghost roles not getting their name right because of the stupid freaking special() proc

* I hate list operations man they're so stupid

* Fixes the stars on the crew manifest!

---------

Co-authored-by: NamelessFairy <40036527+NamelessFairy@users.noreply.github.com>
Co-authored-by: KathrinBailey <53862927+KathrinBailey@users.noreply.github.com>
Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-02-28 14:14:24 -05:00
SkyratBot
6d9e38775d [MIRROR] Write roundstart logout report to admin log [MDB IGNORE] (#19576)
* Write roundstart logout report to admin log (#73672)

## About The Pull Request
- Writes the roundstart logout report to the admin log
- Increases the threshold for the report, clients > 10 minutes are
deemed AFK

## Why It's Good For The Game

While the report is broadcasted in chat, it's not actually saved in the
log. Sometimes we want to go back and read this later.

## Changelog

🆑 LT3
admin: Roundstart logout report is written to the admin log
admin: Roundstart report threshold is now 10 minutes
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* Write roundstart logout report to admin log

* timer

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-02-27 14:34:33 -08:00
SkyratBot
bb9b68a88d [MIRROR] Basic Mob Spiders I: Ability refactor [MDB IGNORE] (#19200)
* Basic Mob Spiders I: Ability refactor

* Update tgstation.dme

* Update tgstation.dme

* Update tgstation.dme

* Update tgstation.dme

* Update tgstation.dme

* Update tgstation.dme

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: KathrinBailey <53862927+KathrinBailey@users.noreply.github.com>
Co-authored-by: KathrinBailey <kat892@outlook.com>
2023-02-22 18:49:39 +00:00
Shroopy
e26ef72625 [MANUAL MIRROR] [NEW GHOST ANTAG] The Paradox Clone (#71141) (#19481)
[NEW GHOST ANTAG] The Paradox Clone (#71141)

![image](https://user-images.githubusercontent.com/114319683/200192566-e596ab83-8180-4f4c-a799-6e68e435fd43.png)

[DESIGN DOC]
https://hackmd.io/@tGKknGe5Q7qtddEspif79g/BJ3w9QLri/edit

Bluespace technology has destabilized the very fabric of reality, even
time itself!

Sometimes during a shift, it's possible for a PARADOX CLONE to spawn
somewhere on the station (usually maintenance). This paradox clone has
the exact appearance and DNA as a random crew member on the station,
wearing the same clothes they were at the start of the shift, including
their ID.

To maintain timeline coherency, the paradox clone must now hunt down and
kill the original and take their place or die trying, if the original
survives they have failed.

The only thing the paradox clone spawns with is a mechanical toolbox
that helps them from being stuck in maints if their ID doesn't have
maints access.

The inclusion of this antag encourages good crew coordination and adds a
less destructive, more personalized antag to the roster.

This antag rewards good detective work, as both the clone and the
original are identical in every way, and will therefore require a
detective to break out their detective skills to figure out who the
clone is.

Also a possible tie-in with the Chrono Legionnaires in the future.

🆑
add: Time and space has destabilized even further due to Nanotrasen
bluespace research, now, on occasion, clones from different timelines
can appear on the station and hunt you down to maintain timeline
stability! Beware the Paradox Clone!
/🆑

---------

Co-authored-by: 1bw0kopy <xz2rbf23@protonmail.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
(cherry picked from commit 214174874c)

Co-authored-by: Shadyyy66 <114319683+Shadyyy66@users.noreply.github.com>
2023-02-21 16:04:35 -08:00
SkyratBot
ed09da54b9 [MIRROR] Fixes being able to breathe in space, fixes any lingering biotype related damage issues [MDB IGNORE] (#19206)
* Fixes being able to breathe in space, fixes any lingering biotype related damage issues

* Update damage_procs.dm

* Update damage_procs.dm

---------

Co-authored-by: Bloop <vinylspiders@gmail.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-02-21 00:42:28 -08:00
lessthanthree
6854a4b606 [MANUAL MIRROR] fix error in neighbor define [no gbp] (#73069) (#19070)
fix error in neighbor define [no gbp] (#73069)

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
2023-02-20 00:52:02 +00:00
SkyratBot
db625af910 [MIRROR] Optimize cardboard cutouts saving 1.5s+ on init times [MDB IGNORE] (#19435)
* Optimize cardboard cutouts saving 1.5s+ on init times (#73404)

New regression in init times. Closes
https://github.com/tgstation/dev-cycles-initiative/issues/32. CC @ Fikou

- Instead of creating a human and icon for *every* cardboard cutout when
initialized, only creates the one we're actually using. When you're
about to use a crayon, creates all of them.
- Instead of using getFlatIcon, uses appearances directly.

* Optimize cardboard cutouts saving 1.5s+ on init times

---------

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2023-02-19 22:52:00 +00:00
SkyratBot
9435aeb31d [MIRROR] Purchasing weapon goodie packs require weapon permits, rather than actually being a head of security (includes other small changes) [MDB IGNORE] (#19133)
* Purchasing weapon goodie packs require weapon permits, rather than actually being a head of security (includes other small changes)

* Update inventory.dm

* Update goodies.dm

* Update inventory.dm

* update modular

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-02-19 19:19:59 +00:00
SkyratBot
a2cb8c5c0c [MIRROR] Completely removes do_mob and do_after_mob [MDB IGNORE] (#19126)
* Completely removes do_mob and do_after_mob

* update modular

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-02-19 19:19:50 +00:00
SkyratBot
47839a787e [MIRROR] Meteor events won't try and run on icebox [MDB IGNORE] (#19185)
* Meteor events won't try and run on icebox

* Update mapping.dm

* Update _event.dm

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-02-17 01:28:04 -08:00
SkyratBot
9e981753ca [MIRROR] Reworked PDA menu & NtOS themes [MDB IGNORE] (#19390)
* Reworked PDA menu & NtOS themes (#73070)

## About The Pull Request

This is a port/rework of
https://github.com/yogstation13/Yogstation/pull/15735 - I changed a lot
of how it acted (some themes are locked behind maintenance apps).

The original author allowed this port to happen, and I really liked how
it looked there so I'd like to add it here.

### Applications

Removes the hardware configurator application, as all it did was show
you your space and battery now that all hardware was removed. These are
things your PC does by default, so it was just a waste of space.
Adds a Theme manager application instead, which allows you to change
your PDA's theme at will.
Adds a new Maintenance application that will give a new theme, however
it will also increase the size of the theme manager app itself as it's
bloatware.

### Menu

There's now a bar at the top of the menu showing 'special' tablet apps
which, for one reason or another, should stand out from the rest of the
apps. Currently this is PDA messenger and the Theme manager

Flashlight and Flashlight color is now only an icon, and is shown on the
same line as Updating you ID

https://cdn.discordapp.com/attachments/961874788706574386/1069621173693972551/2023-01-30_09-10-52.mov

![image](https://user-images.githubusercontent.com/53777086/215501361-5ea3086e-2ff5-4ab1-bde4-8a3d14014fce.png)

### Themes

Adds a lot of themes to choose from, although SOME are hidden behind
Maintenance applications, which will give you a random theme. These are
bloatware however, so they come with some extra cost to the app's
required space storage.

Themes are now supported on ALL APPLICATIONS! If you have a computer
theme, you will have that theme in EVERY app you enter, rather than just
a select few.
ALSO also, emagging the tablet will automatically set & unlock the
Syndicate theme, which makes your PDA obvious but you can disguise it if
you wish through just re-painting it to something else.

https://cdn.discordapp.com/attachments/828923843829432340/1069565383155122266/2023-01-30_05-29-53.mov

### Preferences

This also adds a pref for theme, reworking the ringtone code to work
with it as well. I also removed 2 entirely unused PDA prefs just 'cause.

Screenshot not up-to-date, they now have proper names.

![image](https://user-images.githubusercontent.com/53777086/215463669-0fe9951a-71f8-4b71-a97d-b79b5a2f945a.png)

### Other stuff

Made defines for device_themes
Added support for special app-side checks to download files
Fixed programs downloading themselves TWICE because defines all had the
same definition
Removes the Chemistry computer disk as it was empty due to chemistry
app's removal
Removes the 'run_emag' proc, since apps can directly refer to the
computer to check for emag status instead.
Moved over and added better documentation on data computer files, and
moved the ordnance ones to the same file as the others.

## Why It's Good For The Game

It makes PDAs a lot more customizable while adding more features to
maintenance applications. I think the themes look cool and it fits with
PDAs being "personal" anyways.

I also explained most of my other arguments in the about section, such
as the hardware configuration application.

## Changelog

🆑 Chubbygummibear & JohnFulpWillard
add: A ton of new NtOS themes, which are accessible by the new Themify
application that comes with all PCs.
add: Emagging a PC now defaults it to the Syndicate option (and adds it
to go back to it if you wish)
add: There's a new maintenance app that gives you rarer themes
qol: The NtOS Main menu was moved around, added "header" applications
that are shown where the Flashlight is, such as your Theme manager and
PDA messenger.
code: Made defines for device_themes
code: Added support for special app-side checks to download files
code: Removes the 'run_emag' proc, since apps can directly refer to the
computer to check for emag status instead.
fix: Programs no longer download twice.
del: Removes the Chemistry computer disk as it was empty due to
chemistry app's removal
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* Reworked PDA menu & NtOS themes

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-02-17 00:35:34 -08:00
SkyratBot
e895d0f98c [MIRROR] Tram signal defines, subtypes, documentation, compound damage calc [NO GBP] [MDB IGNORE] (#19313)
Tram signal defines, subtypes, documentation, compound damage calc [NO GBP]

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
2023-02-14 11:12:27 -05:00