From b77eb3f4d1486c8c12081237b8f2e8980410af66 Mon Sep 17 00:00:00 2001 From: MelokGleb <99420088+MelokGleb@users.noreply.github.com> Date: Sat, 22 Jun 2024 00:28:01 +0300 Subject: [PATCH 1/8] Adds sprite for debug eldritch paintings (#84179) --- .../heretic/items/eldritch_painting.dm | 4 ++-- icons/obj/signs.dmi | Bin 48515 -> 63818 bytes 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/antagonists/heretic/items/eldritch_painting.dm b/code/modules/antagonists/heretic/items/eldritch_painting.dm index 5302fc1c9c148..3332c4e31ba63 100644 --- a/code/modules/antagonists/heretic/items/eldritch_painting.dm +++ b/code/modules/antagonists/heretic/items/eldritch_painting.dm @@ -4,14 +4,14 @@ icon = 'icons/obj/signs.dmi' resistance_flags = FLAMMABLE flags_1 = NONE - icon_state = "frame-empty" + icon_state = "eldritch_painting_debug" result_path = /obj/structure/sign/painting/eldritch pixel_shift = 30 /obj/structure/sign/painting/eldritch name = "The debug and a coder who slept" icon = 'icons/obj/signs.dmi' - icon_state = "frame-empty" + icon_state = "eldritch_painting_debug" custom_materials = list(/datum/material/wood =SHEET_MATERIAL_AMOUNT) resistance_flags = FLAMMABLE buildable_sign = FALSE diff --git a/icons/obj/signs.dmi b/icons/obj/signs.dmi index 78cc96fabbc138d92ed14efe84d0fe3724855966..a2069ba5d9d3b71133a843bb58e38785028f9945 100644 GIT binary patch literal 63818 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⁡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

8M_q2UbjW0`llFVP9 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 Date: Sat, 22 Jun 2024 09:28:21 +1200 Subject: [PATCH 2/8] Automatic changelog for PR #84179 [ci skip] --- html/changelogs/AutoChangeLog-pr-84179.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-84179.yml diff --git a/html/changelogs/AutoChangeLog-pr-84179.yml b/html/changelogs/AutoChangeLog-pr-84179.yml new file mode 100644 index 0000000000000..398e41712c894 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-84179.yml @@ -0,0 +1,4 @@ +author: "MelokGleb" +delete-after: True +changes: + - image: "added sprite for debug heretic painting" \ No newline at end of file From 2f2b74338cb7397e4128ccdef00bbc4d6c67a0a5 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Sat, 22 Jun 2024 00:37:45 +0000 Subject: [PATCH 3/8] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-84060.yml | 4 ---- html/changelogs/AutoChangeLog-pr-84066.yml | 4 ---- html/changelogs/AutoChangeLog-pr-84091.yml | 4 ---- html/changelogs/AutoChangeLog-pr-84147.yml | 4 ---- html/changelogs/AutoChangeLog-pr-84156.yml | 4 ---- html/changelogs/AutoChangeLog-pr-84158.yml | 4 ---- html/changelogs/AutoChangeLog-pr-84163.yml | 4 ---- html/changelogs/AutoChangeLog-pr-84179.yml | 4 ---- html/changelogs/archive/2024-06.yml | 20 ++++++++++++++++++++ 9 files changed, 20 insertions(+), 32 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-84060.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-84066.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-84091.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-84147.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-84156.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-84158.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-84163.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-84179.yml diff --git a/html/changelogs/AutoChangeLog-pr-84060.yml b/html/changelogs/AutoChangeLog-pr-84060.yml deleted file mode 100644 index 1b2f4ac222b39..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-84060.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Thunder12345" -delete-after: True -changes: - - rscdel: "Locker staffs have been removed from the Ragin' Mages deathmatch lootcrate pool." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-84066.yml b/html/changelogs/AutoChangeLog-pr-84066.yml deleted file mode 100644 index 0ea603f5e6b4a..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-84066.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "AyIong" -delete-after: True -changes: - - qol: "Fullscreen mode can now be toggled by pressing F11 or the button at the top right" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-84091.yml b/html/changelogs/AutoChangeLog-pr-84091.yml deleted file mode 100644 index 58059ae4af9d8..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-84091.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "FlufflesTheDog" -delete-after: True -changes: - - bugfix: "sanitization on citation pda alerts" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-84147.yml b/html/changelogs/AutoChangeLog-pr-84147.yml deleted file mode 100644 index d8500ff079b4d..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-84147.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "mc-oofert" -delete-after: True -changes: - - bugfix: "borg factory gives you your preference borg name" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-84156.yml b/html/changelogs/AutoChangeLog-pr-84156.yml deleted file mode 100644 index 95d9e31986fb6..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-84156.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "JupiterJaeden" -delete-after: True -changes: - - bugfix: "Conga lines of more than 2 no longer break when going up and down stairs." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-84158.yml b/html/changelogs/AutoChangeLog-pr-84158.yml deleted file mode 100644 index 90e914ceb5428..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-84158.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Mothblocks" -delete-after: True -changes: - - qol: "Dramatically improves delete character UI and UX." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-84163.yml b/html/changelogs/AutoChangeLog-pr-84163.yml deleted file mode 100644 index 6dbfc565dcbd0..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-84163.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Bisar" -delete-after: True -changes: - - bugfix: "Felinids no longer remember losing their tail and regaining it roundstart; you need to do it during the round to get that mood event." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-84179.yml b/html/changelogs/AutoChangeLog-pr-84179.yml deleted file mode 100644 index 398e41712c894..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-84179.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "MelokGleb" -delete-after: True -changes: - - image: "added sprite for debug heretic painting" \ No newline at end of file diff --git a/html/changelogs/archive/2024-06.yml b/html/changelogs/archive/2024-06.yml index b77aab2bd31f1..2b62716374ae9 100644 --- a/html/changelogs/archive/2024-06.yml +++ b/html/changelogs/archive/2024-06.yml @@ -974,3 +974,23 @@ r3dj4ck0424: - bugfix: puts tiles under the wawa tool storage doors - bugfix: allows you to access a door and a fire alarm on wawa's prison second floor +2024-06-22: + AyIong: + - qol: Fullscreen mode can now be toggled by pressing F11 or the button at the top + right + Bisar: + - bugfix: Felinids no longer remember losing their tail and regaining it roundstart; + you need to do it during the round to get that mood event. + FlufflesTheDog: + - bugfix: sanitization on citation pda alerts + JupiterJaeden: + - bugfix: Conga lines of more than 2 no longer break when going up and down stairs. + MelokGleb: + - image: added sprite for debug heretic painting + Mothblocks: + - qol: Dramatically improves delete character UI and UX. + Thunder12345: + - rscdel: Locker staffs have been removed from the Ragin' Mages deathmatch lootcrate + pool. + mc-oofert: + - bugfix: borg factory gives you your preference borg name From 1116f150eba7e250c26aa6816ea69852896fd724 Mon Sep 17 00:00:00 2001 From: Jeremiah <42397676+jlsnow301@users.noreply.github.com> Date: Fri, 21 Jun 2024 19:39:44 -0700 Subject: [PATCH 4/8] Bitrunning: Tweaks, QoL and removals (#84125) ## About The Pull Request See changelog for shortlist 1. **Threat changes.** I was a bit unsatisfied with the rate of antag spawns. These have been increased considerably. The clamped probability has been increased from 1-10 to 5-15. The probability increases from 5 to 15 as domains are completed. Generally, in a standard round, the chance of spawning at least one antag should be around ~50% at 7 domains completed. Emagging a server doubles this rate. 2. **Map changes.** Starfront saloon was a cool idea on paper: A totally modular map. However, it looked very uninspired and was so much of a chore on the map loading system that it prompted players to admin help how long it took, thinking it was broken. I've removed the map. I have others I want to implement that don't look so bad. 3. **QoL changes**. Ghost observer experience is improved. Previously, you could click netpods to view their avatar, and now you can click the hololadder to return. I've included examine text to show this. The server's examine text will now also give you clues that it's emagged (ghost only). The examine text on hololadders has also been improved. 4. **Bitrunning antags.** These were designed as temporary, but they were everything but. Spawning as one would prevent your revival, which just isn't a good tradeoff for something that's going to get deleted in a minute. Now, this system uses temp bodies just like CTF, so you can return once you're dead. (exception: coming station side) 5. **Maps**: Syndicate assault is still one of my favorites, but there's cheesy exploits like instantly breaking the display case to lock down the ship, turning on turrets which are EXTRA lethal, etc. I've added some pistols to the closets and removed some of these exploits. 6. **Cooldown**: Yes, no one seems to upgrade these ever, and it proved a poor technique to encourage bitrunners to leave their rooms. I had other plans to encourage this, not included here, so I think lowering the cooldown time is beneficial. 3min -> 2min > [!NOTE] > File diff: removed a map ## Why It's Good For The Game Closes #83787 General updates and QoL for bitrunning to keep it fresh. I was quite disappointed with the scaling of threat, and most players haven't even seen bitrunning antags except when I admin spawn them. These numbers aren't hard set in my mind, and could be adjusted. I generally want bitrunning easier to access and more "temporary" which is in keeping with its design doc. ## Changelog :cl: fix: Bitrunning made more illegal: Increased the rate at which antags spawn. fix: "Temporary" bitrunning antagonists and spawners are made actually temporary. You will return to your original body after death, just like CTF. add: Added more examine text for ghosts to bitrunning equipment. balance: Server cooldown reduced by 1 minute at base level. add: As an observer, you can now switch views between station and virtual domain by clicking the hololadder and netpod respectively. del: Removed the starfront saloon BR map. fix: Syndicate assault map: Added pistols, reduced exploits. /:cl: --- _maps/virtual_domains/starfront_saloon.dmm | 1834 ----------------- _maps/virtual_domains/syndicate_assault.dmm | 32 +- code/datums/components/temporary_body.dm | 8 +- .../bitrunning/components/virtual_entity.dm | 6 +- code/modules/bitrunning/event.dm | 6 +- code/modules/bitrunning/objects/hololadder.dm | 40 +- code/modules/bitrunning/objects/netpod.dm | 19 +- code/modules/bitrunning/server/_parent.dm | 31 +- .../modules/bitrunning/server/map_handling.dm | 3 +- .../bitrunning/server/obj_generation.dm | 2 +- code/modules/bitrunning/server/threats.dm | 36 +- code/modules/bitrunning/spawners.dm | 8 +- .../domains/starfront_saloon.dm | 14 - code/modules/mob_spawn/mob_spawn.dm | 9 +- strings/tips.txt | 3 + tgstation.dme | 1 - 16 files changed, 156 insertions(+), 1896 deletions(-) delete mode 100644 _maps/virtual_domains/starfront_saloon.dmm delete mode 100644 code/modules/bitrunning/virtual_domain/domains/starfront_saloon.dm diff --git a/_maps/virtual_domains/starfront_saloon.dmm b/_maps/virtual_domains/starfront_saloon.dmm deleted file mode 100644 index 277382b6dbbf2..0000000000000 --- a/_maps/virtual_domains/starfront_saloon.dmm +++ /dev/null @@ -1,1834 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"ae" = ( -/obj/item/kirbyplants/random, -/obj/effect/turf_decal/tile/dark_red/half, -/turf/open/floor/sepia, -/area/virtual_domain) -"cK" = ( -/obj/effect/landmark/bitrunning/mob_segment, -/turf/template_noop, -/area/virtual_domain) -"cU" = ( -/turf/template_noop, -/area/virtual_domain/safehouse) -"df" = ( -/obj/effect/spawner/random/vending/snackvend, -/turf/open/floor/sepia, -/area/virtual_domain) -"do" = ( -/obj/effect/spawner/random/trash/garbage, -/turf/open/floor/sepia, -/area/virtual_domain) -"eU" = ( -/obj/effect/spawner/random/structure/crate, -/obj/machinery/light/small/directional/north, -/turf/open/floor/catwalk_floor, -/area/virtual_domain) -"gh" = ( -/obj/effect/spawner/random/vending/colavend, -/turf/open/floor/sepia, -/area/virtual_domain) -"hz" = ( -/obj/item/clothing/head/cowboy, -/obj/item/clothing/head/cowboy, -/obj/item/clothing/head/cowboy, -/obj/structure/closet, -/turf/template_noop, -/area/virtual_domain/safehouse) -"il" = ( -/turf/open/floor/sepia, -/area/virtual_domain) -"it" = ( -/obj/modular_map_root/generic{ - key = "station_medium" - }, -/turf/open/floor/sepia, -/area/virtual_domain) -"iJ" = ( -/obj/machinery/light/directional/south, -/obj/effect/spawner/random/structure/table, -/obj/effect/spawner/random/entertainment/plushie, -/obj/effect/turf_decal/tile/dark_red/half, -/turf/open/floor/sepia, -/area/virtual_domain) -"iO" = ( -/obj/effect/spawner/random/structure/crate, -/obj/effect/turf_decal/tile/dark_red/half, -/turf/open/floor/sepia, -/area/virtual_domain) -"jt" = ( -/obj/item/gun/energy/marksman_revolver{ - pixel_x = 8; - pixel_y = 4 - }, -/obj/item/gun/energy/marksman_revolver{ - pixel_x = 4 - }, -/obj/item/gun/energy/marksman_revolver{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/structure/table, -/turf/template_noop, -/area/virtual_domain/safehouse) -"ma" = ( -/obj/machinery/light/directional/south, -/obj/effect/spawner/random/structure/table, -/obj/effect/spawner/random/decoration/generic, -/obj/effect/turf_decal/tile/dark_red/half, -/turf/open/floor/sepia, -/area/virtual_domain) -"mq" = ( -/obj/effect/baseturf_helper/virtual_domain, -/turf/closed/indestructible/binary, -/area/virtual_domain) -"mu" = ( -/turf/closed/wall, -/area/virtual_domain) -"on" = ( -/obj/structure/table/greyscale, -/obj/machinery/recharger{ - pixel_x = 8; - pixel_y = 4 - }, -/obj/machinery/recharger{ - pixel_x = -8; - pixel_y = 4 - }, -/turf/template_noop, -/area/virtual_domain/safehouse) -"oR" = ( -/obj/effect/spawner/random/structure/chair_maintenance{ - dir = 8 - }, -/turf/open/floor/sepia, -/area/virtual_domain) -"po" = ( -/obj/effect/baseturf_helper/virtual_domain, -/obj/modular_map_root/safehouse{ - key = "den" - }, -/turf/template_noop, -/area/virtual_domain/safehouse) -"sX" = ( -/obj/effect/spawner/random/decoration/statue, -/turf/open/floor/sepia, -/area/virtual_domain) -"uW" = ( -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/sepia, -/area/virtual_domain) -"ve" = ( -/obj/effect/spawner/random/trash/graffiti, -/turf/open/floor/catwalk_floor, -/area/virtual_domain) -"wB" = ( -/obj/effect/spawner/random/engineering/tank, -/obj/machinery/light/small/directional/north, -/turf/open/floor/catwalk_floor, -/area/virtual_domain) -"wK" = ( -/obj/machinery/light/small/directional/north, -/turf/open/floor/catwalk_floor, -/area/virtual_domain) -"yF" = ( -/obj/machinery/light/directional/south, -/obj/effect/spawner/random/structure/table, -/obj/effect/spawner/random/food_or_drink/snack, -/obj/effect/turf_decal/tile/dark_red/half, -/turf/open/floor/sepia, -/area/virtual_domain) -"zU" = ( -/obj/machinery/light/directional/south, -/obj/effect/spawner/random/structure/table, -/obj/effect/turf_decal/tile/dark_red/half, -/obj/machinery/recharger{ - pixel_x = 8; - pixel_y = 4 - }, -/turf/open/floor/sepia, -/area/virtual_domain) -"Au" = ( -/obj/effect/spawner/random/trash/garbage, -/obj/machinery/light/small/directional/north, -/turf/open/floor/catwalk_floor, -/area/virtual_domain) -"AF" = ( -/obj/effect/turf_decal/tile/dark_red/half, -/obj/effect/turf_decal/tile/dark_red/half, -/turf/open/floor/sepia, -/area/virtual_domain) -"Bi" = ( -/obj/effect/spawner/random/structure/chair_maintenance{ - dir = 4 - }, -/turf/open/floor/sepia, -/area/virtual_domain) -"BX" = ( -/obj/effect/spawner/random/trash/graffiti, -/obj/effect/turf_decal/tile/dark_red/half, -/turf/open/floor/sepia, -/area/virtual_domain) -"Ey" = ( -/obj/machinery/light/directional/south, -/obj/effect/spawner/random/structure/table, -/obj/effect/spawner/random/decoration/ornament, -/obj/effect/turf_decal/tile/dark_red/half, -/turf/open/floor/sepia, -/area/virtual_domain) -"EK" = ( -/obj/effect/spawner/random/structure/chair_maintenance{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/sepia, -/area/virtual_domain) -"Gz" = ( -/obj/effect/spawner/random/structure/crate, -/obj/effect/turf_decal/tile/dark_red/half, -/obj/effect/spawner/random/armory/shotgun, -/turf/open/floor/sepia, -/area/virtual_domain) -"GY" = ( -/obj/effect/spawner/random/entertainment/arcade, -/turf/open/floor/sepia, -/area/virtual_domain) -"Ib" = ( -/obj/effect/spawner/random/trash/bin, -/turf/open/floor/sepia, -/area/virtual_domain) -"Il" = ( -/obj/effect/turf_decal/tile/dark_red/half, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/sepia, -/area/virtual_domain) -"Ix" = ( -/obj/structure/closet, -/obj/effect/spawner/random/maintenance/three, -/obj/effect/spawner/random/exotic/antag_gear, -/obj/machinery/light/small/directional/north, -/turf/open/floor/catwalk_floor, -/area/virtual_domain) -"Ja" = ( -/turf/closed/indestructible/binary, -/area/virtual_domain) -"JA" = ( -/obj/effect/spawner/random/structure/crate, -/turf/open/floor/catwalk_floor, -/area/virtual_domain) -"KD" = ( -/obj/effect/landmark/bitrunning/cache_spawn, -/turf/template_noop, -/area/virtual_domain) -"KN" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/virtual_domain) -"Lu" = ( -/obj/structure/table/greyscale, -/obj/machinery/recharger{ - pixel_x = 8; - pixel_y = 4 - }, -/obj/machinery/recharger{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/effect/turf_decal/tile/dark_red/half, -/obj/machinery/light/directional/south, -/turf/open/floor/sepia, -/area/virtual_domain) -"MG" = ( -/obj/effect/spawner/random/trash/graffiti, -/obj/machinery/light/small/directional/north, -/turf/open/floor/catwalk_floor, -/area/virtual_domain) -"Oq" = ( -/obj/machinery/light/small/directional/south, -/turf/open/floor/sepia, -/area/virtual_domain) -"Ox" = ( -/obj/structure/closet, -/obj/effect/spawner/random/maintenance/five, -/obj/effect/spawner/random/armory/laser_gun, -/obj/machinery/light/small/directional/north, -/turf/open/floor/catwalk_floor, -/area/virtual_domain) -"OX" = ( -/turf/open/floor/catwalk_floor, -/area/virtual_domain) -"OZ" = ( -/obj/effect/spawner/random/structure/billboard, -/turf/open/floor/sepia, -/area/virtual_domain) -"PE" = ( -/turf/template_noop, -/area/virtual_domain) -"Qi" = ( -/obj/modular_map_root/generic{ - key = "station_small" - }, -/turf/open/floor/sepia, -/area/virtual_domain) -"QM" = ( -/obj/modular_map_root/generic{ - key = "station_large" - }, -/turf/open/floor/sepia, -/area/virtual_domain) -"QO" = ( -/obj/machinery/light/directional/east, -/turf/open/floor/sepia, -/area/virtual_domain) -"Rk" = ( -/obj/effect/spawner/random/trash/graffiti, -/turf/open/floor/sepia, -/area/virtual_domain) -"Te" = ( -/obj/machinery/light/directional/south, -/obj/effect/spawner/random/structure/table, -/obj/effect/spawner/random/engineering/toolbox, -/obj/effect/turf_decal/tile/dark_red/half, -/turf/open/floor/sepia, -/area/virtual_domain) -"Tn" = ( -/turf/open/space/basic, -/area/virtual_domain) -"TM" = ( -/obj/machinery/light/directional/south, -/obj/effect/turf_decal/tile/dark_red/half, -/turf/open/floor/sepia, -/area/virtual_domain) -"VX" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/sepia, -/area/virtual_domain) -"Wd" = ( -/obj/effect/turf_decal/tile/dark_red/half, -/turf/open/floor/sepia, -/area/virtual_domain) -"Wp" = ( -/obj/effect/landmark/bitrunning/mob_segment, -/turf/open/floor/sepia, -/area/virtual_domain) - -(1,1,1) = {" -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -mq -"} -(2,1,1) = {" -Ja -il -il -il -il -mu -df -il -cU -cU -cU -cU -cU -po -il -OX -Ja -"} -(3,1,1) = {" -Ja -mu -mu -mu -mu -mu -il -il -cU -jt -on -hz -cU -cU -il -OX -Ja -"} -(4,1,1) = {" -Ja -OX -OX -OX -OX -OX -Qi -il -cU -cU -cU -cU -cU -cU -il -OX -Ja -"} -(5,1,1) = {" -Ja -PE -PE -PE -PE -PE -gh -il -cU -cU -cU -cU -cU -cU -il -OX -Ja -"} -(6,1,1) = {" -Ja -PE -PE -PE -PE -PE -il -il -cU -cU -cU -cU -cU -cU -il -OX -Ja -"} -(7,1,1) = {" -Ja -PE -PE -PE -PE -PE -il -il -cU -cU -cU -cU -cU -cU -il -OX -Ja -"} -(8,1,1) = {" -Ja -PE -PE -PE -PE -PE -il -il -cU -cU -cU -cU -cU -cU -il -il -Ja -"} -(9,1,1) = {" -Ja -PE -PE -PE -PE -PE -il -il -il -il -il -il -il -il -il -il -Ja -"} -(10,1,1) = {" -Ja -Ix -OX -OX -OX -OX -il -il -it -il -il -il -TM -mu -KN -KN -Ja -"} -(11,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -Ib -il -il -il -ae -KN -Tn -Tn -Ja -"} -(12,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(13,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Il -KN -Tn -Tn -Ja -"} -(14,1,1) = {" -Ja -PE -PE -PE -cK -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(15,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(16,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -VX -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(17,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(18,1,1) = {" -Ja -Au -OX -OX -OX -OX -il -il -it -il -sX -il -iO -KN -Tn -Tn -Ja -"} -(19,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Te -mu -Tn -Tn -Ja -"} -(20,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(21,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -AF -KN -Tn -Tn -Ja -"} -(22,1,1) = {" -Ja -PE -PE -PE -cK -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(23,1,1) = {" -Ja -PE -KD -PE -PE -PE -PE -PE -il -il -il -Wp -Wd -KN -Tn -Tn -Ja -"} -(24,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(25,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -VX -il -Wd -KN -Tn -Tn -Ja -"} -(26,1,1) = {" -Ja -wB -OX -OX -OX -OX -il -il -it -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(27,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -Ib -il -il -il -iJ -mu -Tn -Tn -Ja -"} -(28,1,1) = {" -Ja -PE -KD -PE -PE -PE -PE -PE -il -uW -il -il -ae -KN -Tn -Tn -Ja -"} -(29,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -oR -oR -il -Wd -KN -Tn -Tn -Ja -"} -(30,1,1) = {" -Ja -PE -PE -PE -cK -PE -PE -PE -Oq -mu -mu -il -Wd -KN -Tn -Tn -Ja -"} -(31,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -Bi -EK -il -Wd -KN -Tn -Tn -Ja -"} -(32,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(33,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(34,1,1) = {" -Ja -wK -ve -OX -OX -OX -VX -il -it -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(35,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -OZ -il -zU -mu -Tn -Tn -Ja -"} -(36,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(37,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -VX -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(38,1,1) = {" -Ja -PE -PE -PE -cK -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(39,1,1) = {" -Ja -PE -KD -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(40,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(41,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -uW -il -il -Wd -KN -Tn -Tn -Ja -"} -(42,1,1) = {" -Ja -Ox -OX -OX -OX -OX -il -il -it -uW -il -Wp -Gz -KN -Tn -Tn -Ja -"} -(43,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -uW -il -il -Lu -mu -Tn -Tn -Ja -"} -(44,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -do -il -il -il -ae -KN -Tn -Tn -Ja -"} -(45,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(46,1,1) = {" -Ja -PE -KD -PE -cK -PE -PE -PE -il -il -il -VX -Wd -KN -Tn -Tn -Ja -"} -(47,1,1) = {" -Ja -PE -PE -PE -PE -KD -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(48,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(49,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -Ib -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(50,1,1) = {" -Ja -MG -OX -OX -OX -OX -VX -il -il -il -QM -il -Wd -KN -Tn -Tn -Ja -"} -(51,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -PE -PE -il -il -yF -mu -Tn -Tn -Ja -"} -(52,1,1) = {" -Ja -PE -KD -PE -PE -PE -PE -PE -PE -PE -il -il -Wd -KN -Tn -Tn -Ja -"} -(53,1,1) = {" -Ja -PE -PE -cK -PE -PE -KD -PE -PE -PE -uW -il -Wd -KN -Tn -Tn -Ja -"} -(54,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -PE -PE -uW -il -Wd -KN -Tn -Tn -Ja -"} -(55,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -PE -PE -il -il -Wd -KN -Tn -Tn -Ja -"} -(56,1,1) = {" -Ja -PE -PE -PE -PE -PE -cK -PE -PE -PE -il -il -Wd -KN -Tn -Tn -Ja -"} -(57,1,1) = {" -Ja -PE -KD -PE -PE -PE -KD -PE -PE -PE -il -il -Wd -KN -Tn -Tn -Ja -"} -(58,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -PE -PE -GY -il -Wd -KN -Tn -Tn -Ja -"} -(59,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -PE -PE -il -il -Wd -KN -Tn -Tn -Ja -"} -(60,1,1) = {" -Ja -eU -OX -OX -OX -OX -il -il -it -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(61,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -Ib -il -il -il -Ey -mu -Tn -Tn -Ja -"} -(62,1,1) = {" -Ja -PE -PE -KD -PE -PE -PE -PE -do -il -il -VX -ae -KN -Tn -Tn -Ja -"} -(63,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(64,1,1) = {" -Ja -PE -PE -PE -cK -PE -PE -PE -il -il -Wp -il -Wd -KN -Tn -Tn -Ja -"} -(65,1,1) = {" -Ja -PE -KD -PE -PE -KD -PE -PE -il -il -sX -il -Wd -KN -Tn -Tn -Ja -"} -(66,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -il -il -il -il -Wd -KN -Tn -Tn -Ja -"} -(67,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -Rk -il -il -uW -Wd -KN -Tn -Tn -Ja -"} -(68,1,1) = {" -Ja -wB -OX -OX -OX -OX -VX -il -il -il -QM -uW -Wd -KN -Tn -Tn -Ja -"} -(69,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -PE -PE -il -il -ma -mu -Tn -Tn -Ja -"} -(70,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -PE -PE -il -il -Wd -KN -Tn -Tn -Ja -"} -(71,1,1) = {" -Ja -PE -PE -KD -PE -PE -PE -KD -PE -PE -il -uW -Wd -KN -Tn -Tn -Ja -"} -(72,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -PE -PE -il -il -Wd -KN -Tn -Tn -Ja -"} -(73,1,1) = {" -Ja -PE -PE -cK -PE -PE -PE -PE -PE -PE -il -il -Wd -KN -Tn -Tn -Ja -"} -(74,1,1) = {" -Ja -PE -PE -PE -PE -PE -cK -PE -PE -PE -il -il -Wd -KN -Tn -Tn -Ja -"} -(75,1,1) = {" -Ja -PE -KD -PE -PE -PE -KD -PE -PE -PE -il -il -Wd -KN -Tn -Tn -Ja -"} -(76,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -PE -PE -il -il -Wd -KN -Tn -Tn -Ja -"} -(77,1,1) = {" -Ja -PE -PE -PE -PE -PE -PE -PE -PE -PE -il -VX -BX -KN -Tn -Tn -Ja -"} -(78,1,1) = {" -Ja -eU -JA -OX -OX -OX -OX -OX -OX -il -QO -il -Wd -KN -Tn -Tn -Ja -"} -(79,1,1) = {" -Ja -mu -mu -mu -mu -mu -mu -mu -mu -mu -mu -mu -mu -mu -Tn -Tn -Ja -"} -(80,1,1) = {" -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -Ja -"} diff --git a/_maps/virtual_domains/syndicate_assault.dmm b/_maps/virtual_domains/syndicate_assault.dmm index 81bb35a257a75..3822d2cc1e076 100644 --- a/_maps/virtual_domains/syndicate_assault.dmm +++ b/_maps/virtual_domains/syndicate_assault.dmm @@ -65,6 +65,7 @@ req_access = list("syndicate"); secure = 1 }, +/obj/item/gun/ballistic/automatic/pistol, /turf/open/floor/mineral/plastitanium/red, /area/ruin/space/has_grav/powered/virtual_domain) "cw" = ( @@ -388,6 +389,11 @@ /obj/structure/sign/poster/contraband/syndicate_pistol, /turf/closed/wall/r_wall/syndicate, /area/ruin/space/has_grav/powered/virtual_domain) +"og" = ( +/obj/structure/table/reinforced, +/obj/item/reagent_containers/cup/glass/trophy/silver_cup, +/turf/open/floor/mineral/plastitanium/red, +/area/ruin/space/has_grav/powered/virtual_domain) "oM" = ( /obj/structure/cable, /turf/open/floor/mineral/plastitanium, @@ -498,10 +504,16 @@ /turf/open/floor/mineral/plastitanium/red, /area/ruin/space/has_grav/powered/virtual_domain) "sH" = ( -/obj/structure/displaycase{ +/obj/structure/closet/syndicate{ + anchored = 1; + desc = "A basic closet for all your villainous needs."; + locked = 1; + name = "Closet"; req_access = list("syndicate"); - start_showpiece_type = /obj/item/gun/ballistic/automatic/pistol/deagle/camo + secure = 1 }, +/obj/item/ammo_box/c9mm, +/obj/item/gun/ballistic/automatic/pistol, /turf/open/floor/mineral/plastitanium/red, /area/ruin/space/has_grav/powered/virtual_domain) "sK" = ( @@ -600,6 +612,9 @@ /obj/item/ammo_box/c9mm, /turf/open/floor/mineral/plastitanium/red, /area/ruin/space/has_grav/powered/virtual_domain) +"xS" = ( +/turf/closed/wall/r_wall/syndicate/nodiagonal, +/area/ruin/space/has_grav/powered/virtual_domain) "yl" = ( /obj/machinery/door/airlock/grunge{ name = "Captain's Room" @@ -688,6 +703,7 @@ /obj/item/crowbar/red, /obj/item/ammo_box/magazine/m9mm_aps, /obj/item/ammo_box/magazine/m9mm_aps, +/obj/item/gun/ballistic/automatic/pistol, /turf/open/floor/carpet/royalblack, /area/ruin/space/has_grav/powered/virtual_domain) "Cn" = ( @@ -927,6 +943,7 @@ /obj/item/crowbar/red, /obj/item/ammo_box/magazine/m9mm, /obj/item/ammo_box/magazine/m9mm, +/obj/item/gun/ballistic/automatic/pistol, /turf/open/floor/mineral/plastitanium, /area/ruin/space/has_grav/powered/virtual_domain) "Mm" = ( @@ -1076,6 +1093,7 @@ /obj/item/ammo_box/magazine/m9mm, /obj/item/ammo_box/magazine/m9mm, /obj/machinery/light/small/directional/north, +/obj/item/gun/ballistic/automatic/pistol, /turf/open/floor/mineral/plastitanium, /area/ruin/space/has_grav/powered/virtual_domain) "Sq" = ( @@ -2206,7 +2224,7 @@ qx qx qx ru -vp +og Jg ru bh @@ -2264,7 +2282,7 @@ qx qx qx ru -sH +Kz Kz yl bh @@ -2743,7 +2761,7 @@ ru ru ru ru -Vk +ru qx qx qx @@ -3091,7 +3109,7 @@ uP ru hD ru -Ig +xS qx qx qx @@ -3203,7 +3221,7 @@ tI Kz Kz ct -xJ +sH ru qx qx diff --git a/code/datums/components/temporary_body.dm b/code/datums/components/temporary_body.dm index 3da289a6d3462..28a7000a4951d 100644 --- a/code/datums/components/temporary_body.dm +++ b/code/datums/components/temporary_body.dm @@ -10,17 +10,23 @@ var/datum/weakref/old_mind_ref ///The old body we will be put back into when parent is being deleted. var/datum/weakref/old_body_ref + /// Returns the mind if the parent dies by any means + var/delete_on_death = FALSE -/datum/component/temporary_body/Initialize(datum/mind/old_mind, mob/living/old_body) +/datum/component/temporary_body/Initialize(datum/mind/old_mind, mob/living/old_body, delete_on_death = FALSE) if(!isliving(parent) || !isliving(old_body)) return COMPONENT_INCOMPATIBLE ADD_TRAIT(old_body, TRAIT_MIND_TEMPORARILY_GONE, REF(src)) src.old_mind_ref = WEAKREF(old_mind) src.old_body_ref = WEAKREF(old_body) + src.delete_on_death = delete_on_death /datum/component/temporary_body/RegisterWithParent() RegisterSignal(parent, COMSIG_QDELETING, PROC_REF(on_parent_destroy)) + if(delete_on_death) + RegisterSignal(parent, COMSIG_LIVING_DEATH, PROC_REF(on_parent_destroy)) + /datum/component/temporary_body/UnregisterFromParent() UnregisterSignal(parent, COMSIG_QDELETING) diff --git a/code/modules/bitrunning/components/virtual_entity.dm b/code/modules/bitrunning/components/virtual_entity.dm index 12e5305ba9adc..db81f376a8094 100644 --- a/code/modules/bitrunning/components/virtual_entity.dm +++ b/code/modules/bitrunning/components/virtual_entity.dm @@ -31,6 +31,8 @@ /datum/component/virtual_entity/proc/jailbreak_mobs() SIGNAL_HANDLER - to_chat(parent, span_big("You shiver for a moment, then suddenly feel a sense of clarity you haven't felt before. \ - You can go anywhere, do anything! You could leave this simulation right now if you wanted!")) + to_chat(parent, span_boldannounce("You shiver for a moment with a sense of clarity you haven't felt before.")) + to_chat(parent, span_notice("You could go anywhere, do anything! You could leave this simulation right now if you wanted!")) + to_chat(parent, span_danger("But be warned, quantum entanglement will interfere with any previous lives.")) + to_chat(parent, span_notice("You'll have just one chance to go nova, and there's no turning back.")) qdel(src) diff --git a/code/modules/bitrunning/event.dm b/code/modules/bitrunning/event.dm index 4cc95f4f0578a..16190851f3720 100644 --- a/code/modules/bitrunning/event.dm +++ b/code/modules/bitrunning/event.dm @@ -89,6 +89,10 @@ if(!unlucky_server.validate_mutation_candidates()) return WAITING_FOR_SOMETHING - spawned_mobs = unlucky_server.setup_glitch(forced_role) + var/mob/spawned = unlucky_server.setup_glitch(forced_role) + if(isnull(spawned)) + return WAITING_FOR_SOMETHING + + spawned_mobs += spawned return SUCCESSFUL_SPAWN diff --git a/code/modules/bitrunning/objects/hololadder.dm b/code/modules/bitrunning/objects/hololadder.dm index e592f31382de9..3df41a403e735 100644 --- a/code/modules/bitrunning/objects/hololadder.dm +++ b/code/modules/bitrunning/objects/hololadder.dm @@ -8,11 +8,37 @@ obj_flags = BLOCK_Z_OUT_DOWN /// Time req to disconnect properly var/travel_time = 3 SECONDS + /// Uses this to teleport observers back to the origin server + var/datum/weakref/server_ref -/obj/structure/hololadder/Initialize(mapload) + +/obj/structure/hololadder/Initialize(mapload, obj/machinery/quantum_server/origin) . = ..() RegisterSignal(loc, COMSIG_ATOM_ENTERED, PROC_REF(on_enter)) + server_ref = WEAKREF(origin) + register_context() + + +/obj/structure/hololadder/add_context(atom/source, list/context, obj/item/held_item, mob/user) + . = ..() + + context[SCREENTIP_CONTEXT_LMB] = "Disconnect" + + +/obj/structure/hololadder/examine(mob/user) + . = ..() + + if(isnull(server_ref.resolve())) + . += span_infoplain("It's not connected to anything.") + return + + if(isobserver(user)) + . += span_notice("Left click to view the server that this ladder is connected to.") + return + + . += span_infoplain("This ladder is connected to a server. You can click on it or walk over it to disconnect.") + /obj/structure/hololadder/attack_hand(mob/user, list/modifiers) . = ..() @@ -24,19 +50,29 @@ disconnect(user) + +/obj/structure/hololadder/attack_ghost(mob/dead/observer/ghostie) + var/our_server = server_ref?.resolve() + if(isnull(our_server)) + return ..() + + ghostie.abstract_move(get_turf(our_server)) + + /// If there's a pilot ref- send the disconnect signal /obj/structure/hololadder/proc/disconnect(mob/user) if(isnull(user.mind)) return if(!HAS_TRAIT(user, TRAIT_TEMPORARY_BODY)) - balloon_alert(user, "no connection detected.") + balloon_alert(user, "no connection detected") return balloon_alert(user, "disconnecting...") if(do_after(user, travel_time, src)) SEND_SIGNAL(user, COMSIG_BITRUNNER_LADDER_SEVER) + /// Helper for times when you dont have hands (gondola??) /obj/structure/hololadder/proc/on_enter(datum/source, atom/movable/arrived, turf/old_loc) SIGNAL_HANDLER diff --git a/code/modules/bitrunning/objects/netpod.dm b/code/modules/bitrunning/objects/netpod.dm index 98bc96231b30e..1d4e905d6e184 100644 --- a/code/modules/bitrunning/objects/netpod.dm +++ b/code/modules/bitrunning/objects/netpod.dm @@ -52,17 +52,25 @@ . += span_infoplain("Netpods must be built within 4 tiles of a server.") return - . += span_infoplain("Drag yourself into the pod to engage the link.") - . += span_infoplain("It has limited resuscitation capabilities. Remaining in the pod can heal some injuries.") - . += span_infoplain("It has a security system that will alert the occupant if it is tampered with.") + if(!isobserver(user)) + . += span_infoplain("Drag yourself into the pod to engage the link.") + . += span_infoplain("It has limited resuscitation capabilities. Remaining in the pod can heal some injuries.") + . += span_infoplain("It has a security system that will alert the occupant if it is tampered with.") if(isnull(occupant)) - . += span_notice("It is currently unoccupied.") + . += span_infoplain("It's currently unoccupied.") + return + + . += span_infoplain("It's currently occupied by [occupant].") + + if(isobserver(user)) + . += span_notice("As an observer, you can click this netpod to jump to its avatar.") return - . += span_notice("It is currently occupied by [occupant].") . += span_notice("It can be pried open with a crowbar, but its safety mechanisms will alert the occupant.") + + /obj/machinery/netpod/add_context(atom/source, list/context, obj/item/held_item, mob/user) . = ..() @@ -74,7 +82,6 @@ context[SCREENTIP_CONTEXT_LMB] = "Pry Open" return CONTEXTUAL_SCREENTIP_SET - return CONTEXTUAL_SCREENTIP_SET /obj/machinery/netpod/update_icon_state() if(!is_operational) diff --git a/code/modules/bitrunning/server/_parent.dm b/code/modules/bitrunning/server/_parent.dm index 113ed6b212625..8a8d2eed913de 100644 --- a/code/modules/bitrunning/server/_parent.dm +++ b/code/modules/bitrunning/server/_parent.dm @@ -19,7 +19,7 @@ /// Prevents multiple user actions. Handled by loading domains and cooldowns var/is_ready = TRUE /// Chance multipled by threat to spawn a glitch - var/glitch_chance = 0.05 + var/glitch_chance = 0.2 /// Current plugged in users var/list/datum/weakref/avatar_connection_refs = list() /// Cached list of mutable mobs in zone for cybercops @@ -37,11 +37,13 @@ /// Changes how much info is available on the domain var/scanner_tier = 1 /// Length of time it takes for the server to cool down after resetting. Here to give runners downtime so their faces don't get stuck like that - var/server_cooldown_time = 3 MINUTES + var/server_cooldown_time = 2 MINUTES /// Applies bonuses to rewards etc var/servo_bonus = 0 /// Determines the glitches available to spawn, builds with completion var/threat = 0 + /// Maximum rate at which a glitch can spawn + var/threat_prob_max = 15 /// The turfs we can place a hololadder on. var/turf/exit_turfs = list() /// Determines if we broadcast to entertainment monitors or not @@ -76,15 +78,18 @@ . += span_infoplain("Can be resource intensive to run. Ensure adequate power supply.") if(capacitor_coefficient < 1) - . += span_infoplain("Its coolant capacity reduces cooldown time by [(1 - capacitor_coefficient) * 100]%.") + . += span_infoplain("- Its coolant capacity reduces cooldown time by [(1 - capacitor_coefficient) * 100]%.") if(servo_bonus > 0.2) - . += span_infoplain("Its manipulation potential is increasing rewards by [servo_bonus]x.") - . += span_infoplain("Injury from unsafe ejection reduced [servo_bonus * 100]%.") + . += span_infoplain("- Its manipulation potential is increasing rewards by [servo_bonus]x.") + . += span_infoplain("- Injury from unsafe ejection reduced [servo_bonus * 100]%.") if(!is_ready) . += span_notice("It is currently cooling down. Give it a few moments.") + if(isobserver(user) && (obj_flags & EMAGGED)) + . += span_notice("Ominous warning lights are blinking red. This server has been tampered with.") + /obj/machinery/quantum_server/emag_act(mob/user, obj/item/card/emag/emag_card) . = ..() @@ -92,7 +97,8 @@ return obj_flags |= EMAGGED - glitch_chance = 0.09 + glitch_chance *= 2 + threat_prob_max *= 2 add_overlay(mutable_appearance('icons/obj/machines/bitrunning.dmi', "emag_overlay")) balloon_alert(user, "system jailbroken...") @@ -116,11 +122,14 @@ /obj/machinery/quantum_server/attackby(obj/item/weapon, mob/user, params) . = ..() - if(istype(weapon, /obj/item/bitrunning_debug)) - obj_flags |= EMAGGED - glitch_chance = 0.5 - capacitor_coefficient = 0.01 - points = 100 + + if(!istype(weapon, /obj/item/bitrunning_debug)) + return + + obj_flags |= EMAGGED + glitch_chance = 0.5 + capacitor_coefficient = 0.1 + points = 100 /obj/machinery/quantum_server/crowbar_act(mob/living/user, obj/item/crowbar) . = ..() diff --git a/code/modules/bitrunning/server/map_handling.dm b/code/modules/bitrunning/server/map_handling.dm index a55de5dbf9ded..5bfa7813910b6 100644 --- a/code/modules/bitrunning/server/map_handling.dm +++ b/code/modules/bitrunning/server/map_handling.dm @@ -55,7 +55,8 @@ is_ready = TRUE - if(prob(clamp((threat * glitch_chance), 1, 10))) + var/spawn_chance = clamp((threat * glitch_chance), 5, threat_prob_max) + if(prob(spawn_chance)) setup_glitch() playsound(src, 'sound/machines/terminal_insert_disc.ogg', 30, vary = TRUE) diff --git a/code/modules/bitrunning/server/obj_generation.dm b/code/modules/bitrunning/server/obj_generation.dm index 641d906cc5989..e8dbd72228c1d 100644 --- a/code/modules/bitrunning/server/obj_generation.dm +++ b/code/modules/bitrunning/server/obj_generation.dm @@ -110,7 +110,7 @@ if(isnull(destination)) return - var/obj/structure/hololadder/wayout = new(destination) + var/obj/structure/hololadder/wayout = new(destination, src) if(isnull(wayout)) return diff --git a/code/modules/bitrunning/server/threats.dm b/code/modules/bitrunning/server/threats.dm index 66a96d9971fe4..25a891c03b24b 100644 --- a/code/modules/bitrunning/server/threats.dm +++ b/code/modules/bitrunning/server/threats.dm @@ -71,6 +71,8 @@ var/datum/antagonist/bitrunning_glitch/chosen_role = forced_role || get_antagonist_role() var/role_name = initial(chosen_role.name) var/mob/chosen_one = SSpolling.poll_ghosts_for_target( + question = "A temporary antagonist role is spawning in the virtual domain.\ + \nYou will return to your previous body on conclusion.", check_jobban = ROLE_GLITCH, poll_time = 20 SECONDS, checked_target = mutation_target, @@ -92,26 +94,32 @@ return var/role_name = initial(chosen_role.name) - var/mob/living/antag_mob + + var/mob/living/new_mob switch(role_name) if(ROLE_NETGUARDIAN) - antag_mob = new /mob/living/basic/netguardian(mutation_target.loc) + new_mob = new /mob/living/basic/netguardian(mutation_target.loc) else // any other humanoid mob - antag_mob = new /mob/living/carbon/human(mutation_target.loc) + new_mob = new /mob/living/carbon/human(mutation_target.loc) mutation_target.gib(DROP_ALL_REMAINS) - antag_mob.key = ghost.key - var/datum/mind/ghost_mind = antag_mob.mind - ghost_mind.add_antag_datum(chosen_role) - ghost_mind.special_role = ROLE_GLITCH - ghost_mind.set_assigned_role(SSjob.GetJobType(/datum/job/bitrunning_glitch)) + var/datum/mind/ghost_mind = ghost.mind + new_mob.key = ghost.key + + if(ghost_mind?.current) + new_mob.AddComponent(/datum/component/temporary_body, ghost_mind, ghost_mind.current, TRUE) - playsound(antag_mob, 'sound/magic/ethereal_exit.ogg', 50, vary = TRUE) - message_admins("[ADMIN_LOOKUPFLW(antag_mob)] has been made into virtual antagonist by an event.") - antag_mob.log_message("was spawned as a virtual antagonist by an event.", LOG_GAME) + var/datum/mind/antag_mind = new_mob.mind + antag_mind.add_antag_datum(chosen_role) + antag_mind.special_role = ROLE_GLITCH + antag_mind.set_assigned_role(SSjob.GetJobType(/datum/job/bitrunning_glitch)) - add_threats(antag_mob) + playsound(new_mob, 'sound/magic/ethereal_exit.ogg', 50, vary = TRUE) + message_admins("[ADMIN_LOOKUPFLW(new_mob)] has been made into virtual antagonist by an event.") + new_mob.log_message("was spawned as a virtual antagonist by an event.", LOG_GAME) + + add_threats(new_mob) /// Oh boy - transports the antag station side /obj/machinery/quantum_server/proc/station_spawn(mob/living/antag, obj/machinery/byteforge/chosen_forge) @@ -151,6 +159,10 @@ if(istype(antag_datum)) antag_datum.show_in_roundend = TRUE + var/datum/component/temp_body = antag.GetComponent(/datum/component/temporary_body) + if(temp_body) + qdel(temp_body) + do_teleport(antag, get_turf(chosen_forge), forced = TRUE, asoundin = 'sound/magic/ethereal_enter.ogg', asoundout = 'sound/magic/ethereal_exit.ogg', channel = TELEPORT_CHANNEL_QUANTUM) /// Removes any invalid candidates from the list diff --git a/code/modules/bitrunning/spawners.dm b/code/modules/bitrunning/spawners.dm index 4f8aab322ffac..5fa889ac655fd 100644 --- a/code/modules/bitrunning/spawners.dm +++ b/code/modules/bitrunning/spawners.dm @@ -3,13 +3,19 @@ prompt_name = "a virtual domain debug entity" flavour_text = "You probably shouldn't be seeing this, contact a coder!" you_are_text = "You are NOT supposed to be here. How did you let this happen?" + important_text = "You must eliminate any bitrunners from the domain." + temp_body = TRUE /obj/effect/mob_spawn/ghost_role/human/virtual_domain/Initialize(mapload) . = ..() notify_ghosts("The [name] has been created. The virtual world calls for aid!", src, "Virtual Insanity!") /obj/effect/mob_spawn/ghost_role/human/virtual_domain/special(mob/living/spawned_mob, mob/mob_possessor) - . = ..() + var/datum/mind/ghost_mind = mob_possessor.mind + if(ghost_mind?.current) // Preserves any previous bodies before making the switch + spawned_mob.AddComponent(/datum/component/temporary_body, ghost_mind, ghost_mind.current, TRUE) + + ..() spawned_mob.mind.add_antag_datum(/datum/antagonist/domain_ghost_actor) diff --git a/code/modules/bitrunning/virtual_domain/domains/starfront_saloon.dm b/code/modules/bitrunning/virtual_domain/domains/starfront_saloon.dm deleted file mode 100644 index eae9dabc49e4d..0000000000000 --- a/code/modules/bitrunning/virtual_domain/domains/starfront_saloon.dm +++ /dev/null @@ -1,14 +0,0 @@ -/datum/lazy_template/virtual_domain/starfront_saloon - name = "Starfront Saloon" - cost = BITRUNNER_COST_MEDIUM - desc = "Looks like you stepped onto the wrong street, partner. Hope you brought your gunslinging skills." - difficulty = BITRUNNER_DIFFICULTY_HIGH - help_text = "One of these rooms has the cache we're looking for. Find it and get out." - is_modular = TRUE - key = "starfront_saloon" - map_name = "starfront_saloon" - mob_modules = list( - /datum/modular_mob_segment/syndicate_team, - /datum/modular_mob_segment/syndicate_elite, - ) - reward_points = BITRUNNER_REWARD_HIGH diff --git a/code/modules/mob_spawn/mob_spawn.dm b/code/modules/mob_spawn/mob_spawn.dm index ad8c7e6a03ef0..c9130fb706e1b 100644 --- a/code/modules/mob_spawn/mob_spawn.dm +++ b/code/modules/mob_spawn/mob_spawn.dm @@ -139,6 +139,10 @@ /// Typepath indicating the kind of job datum this ghost role will have. PLEASE inherit this with a new job datum, it's not hard. jobs come with policy configs. var/spawner_job_path = /datum/job/ghost_role + /// Whether this offers a temporary body or not. Essentially, you'll be able to reenter your body after using this spawner. + var/temp_body = FALSE + + /obj/effect/mob_spawn/ghost_role/Initialize(mapload) . = ..() SSpoints_of_interest.make_point_of_interest(src) @@ -165,7 +169,7 @@ if(prompt_ghost) var/prompt = "Become [prompt_name]?" - if(user.can_reenter_corpse && user.mind) + if(!temp_body && user.can_reenter_corpse && user.mind) prompt += " (Warning, You can no longer be revived!)" var/ghost_role = tgui_alert(usr, prompt, buttons = list("Yes", "No"), timeout = 10 SECONDS) if(ghost_role != "Yes" || !loc || QDELETED(user)) @@ -213,7 +217,8 @@ user.log_message("became a [prompt_name].", LOG_GAME) uses -= 1 // Remove a use before trying to spawn to prevent strangeness like the spawner trying to spawn more mobs than it should be able to - user.mind = null // dissassociate mind, don't let it follow us to the next life + if(!temp_body) + user.mind = null // dissassociate mind, don't let it follow us to the next life var/created = create(user) LAZYREMOVE(ckeys_trying_to_spawn, user_ckey) // We do this AFTER the create() so that we're basically sure that the user won't be in their ghost body anymore, so they can't click on the spawner again. diff --git a/strings/tips.txt b/strings/tips.txt index 8cccfe6953bb0..7d5f9f82ccc2e 100644 --- a/strings/tips.txt +++ b/strings/tips.txt @@ -286,3 +286,6 @@ You'll quickly lose your interest in the game if you play to win and kill. If yo Some areas of the station use simple nautical directions to indicate their respective locations, like Fore (Front of the ship), Aft (Back), Port (Left side), Starboard (Right), Quarter and Bow (Either sides of Aft and Fore, respectively). You can review these terms on the Notepad App of your PDA. Modular computers are compatible with integrated circuits, but most of the program-dependent circuits require them to be open/backgrounded to work. To install circuits on stationary consoles, you need to toggle interaction with the frame with right-click first. You don't need to destroy a Spacecoin machine to make your funds stop draining. Swiping your ID on it will stop the withdrawal. +As a Bitrunner, upgrading your quantum server will increase rewards and reduce downtime. +As a Bitrunner, your avatar has a domain info ability which will give you clues to help complete virtual domains. +Bitrunning is a crime. diff --git a/tgstation.dme b/tgstation.dme index 94efbba308232..ce40a5948a3a4 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -3535,7 +3535,6 @@ #include "code\modules\bitrunning\virtual_domain\domains\psyker_shuffle.dm" #include "code\modules\bitrunning\virtual_domain\domains\psyker_zombies.dm" #include "code\modules\bitrunning\virtual_domain\domains\stairs_and_cliffs.dm" -#include "code\modules\bitrunning\virtual_domain\domains\starfront_saloon.dm" #include "code\modules\bitrunning\virtual_domain\domains\syndicate_assault.dm" #include "code\modules\bitrunning\virtual_domain\domains\test_only.dm" #include "code\modules\bitrunning\virtual_domain\domains\vaporwave.dm" From 24a23009e8ee4d056b6671c70c41feab1a18590b Mon Sep 17 00:00:00 2001 From: orange man <61334995+comfyorange@users.noreply.github.com> Date: Sat, 22 Jun 2024 14:42:36 +1200 Subject: [PATCH 5/8] Automatic changelog for PR #84125 [ci skip] --- html/changelogs/AutoChangeLog-pr-84125.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-84125.yml diff --git a/html/changelogs/AutoChangeLog-pr-84125.yml b/html/changelogs/AutoChangeLog-pr-84125.yml new file mode 100644 index 0000000000000..2109a86d39ef0 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-84125.yml @@ -0,0 +1,10 @@ +author: "jlsnow301" +delete-after: True +changes: + - bugfix: "Bitrunning made more illegal: Increased the rate at which antags spawn." + - bugfix: "\"Temporary\" bitrunning antagonists and spawners are made actually temporary. You will return to your original body after death, just like CTF." + - rscadd: "Added more examine text for ghosts to bitrunning equipment." + - balance: "Server cooldown reduced by 1 minute at base level." + - rscadd: "As an observer, you can now switch views between station and virtual domain by clicking the hololadder and netpod respectively." + - rscdel: "Removed the starfront saloon BR map." + - bugfix: "Syndicate assault map: Added pistols, reduced exploits." \ No newline at end of file From d12576371ccd86c0d8bf91c47922874ff13a9bac Mon Sep 17 00:00:00 2001 From: Afevis Date: Sat, 22 Jun 2024 12:24:44 -0400 Subject: [PATCH 6/8] Fixes ambient sound preferences runtiming every time a client connects (#84202) fixes #84200 forgot to pass the value that's sent while preferences are still initializing. --- code/modules/client/client_procs.dm | 6 +++--- code/modules/client/preferences/sounds.dm | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm index 37766aea223eb..66fde8c2f1a72 100644 --- a/code/modules/client/client_procs.dm +++ b/code/modules/client/client_procs.dm @@ -536,7 +536,7 @@ GLOBAL_LIST_INIT(blacklisted_builds, list( if(!winexists(src, "asset_cache_browser")) // The client is using a custom skin, tell them. to_chat(src, span_warning("Unable to access asset cache browser, if you are using a custom skin file, please allow DS to download the updated version, if you are not, then make a bug report. This is not a critical issue but can cause issues with resource downloading, as it is impossible to know when extra resources arrived to you.")) - update_ambience_pref() + update_ambience_pref(prefs.read_preference(/datum/preference/toggle/sound_ambience)) check_ip_intel() //This is down here because of the browse() calls in tooltip/New() @@ -1128,8 +1128,8 @@ GLOBAL_LIST_INIT(blacklisted_builds, list( winset(src, "default.Shift", "is-disabled=true") winset(src, "default.ShiftUp", "is-disabled=true") -/client/proc/update_ambience_pref() - if(prefs.read_preference(/datum/preference/toggle/sound_ambience)) +/client/proc/update_ambience_pref(value) + if(value) if(SSambience.ambience_listening_clients[src] > world.time) return // If already properly set we don't want to reset the timer. SSambience.ambience_listening_clients[src] = world.time + 10 SECONDS //Just wait 10 seconds before the next one aight mate? cheers. diff --git a/code/modules/client/preferences/sounds.dm b/code/modules/client/preferences/sounds.dm index 3ace1b64326cc..ae3a700ec3996 100644 --- a/code/modules/client/preferences/sounds.dm +++ b/code/modules/client/preferences/sounds.dm @@ -5,7 +5,7 @@ savefile_identifier = PREFERENCE_PLAYER /datum/preference/toggle/sound_ambience/apply_to_client(client/client, value) - client.update_ambience_pref() + client.update_ambience_pref(value) /// Controls hearing announcement sounds /datum/preference/toggle/sound_announcements From 6ed64b7c1dd3aee4a3ecced87830138182490f8b Mon Sep 17 00:00:00 2001 From: Donglesplonge <120208006+Donglesplonge@users.noreply.github.com> Date: Sat, 22 Jun 2024 12:16:56 -0500 Subject: [PATCH 7/8] reduces the price for most livestock crates (#84132) ## About The Pull Request this ones always been itching at the back of my head, mainly because i'm greedy, and you should be too, animals in cargo are hardcore expensive, 2000 credits for a cat? 800 credits per single chicken? 1200 per pig? obscene! this PR lowers the costs across the board with some exceptions, which i'll note here: crab rockets remain the same price as they were, you get 50 crabs PER rocket, thats ALOT of crabs per cubic inch, what would you do with so many? i don't know, but its why they're remaining expensive, at 1600 per rocket. butterfly crates also retain their original price, as you also get 50 butterflies per crate purchased, at a cost of 1000 credits for a crate of 50, i think this is fair. monkey cubes, truth be told this one i'm kinda scratching my head on, they're remaining the same price right now due to how accessible they are from other avenues (xenobiology, botany both public and private), but i'm willing to change their price to accommodate if they seem to be needing a price reduction, but overall i think that theres alot of ways to accrue them so them remaining particularly expensive isn't necessarily a bad thing. one part of this PR that bothered me was that i couldn't figure out how to display gnomes on either the cargo console or the express console, but they also have been price slashed, down from 4000 credits per 3 gnomes to 3000 credits per 3 gnomes, overall a 25% decrease in cost, think of all the mystical forest friends you can have for that price! EDIT: i forgot about duct spiders, whoopsy me, they aren't in the livestock crates tab and are considered imports instead, so it slipped my mind completely, they are down from 1200 credits to 800, still moderately expensive, but still a discount nonetheless. heres two pictures displaying the before-the-price decrease values, and the after-the-price- decrease values: BEFORE ![Screenshot 2024-06-19 002027](https://github.com/tgstation/tgstation/assets/120208006/d0d5925d-d489-41e0-8345-e22fbd5cdd09) AFTER ![Screenshot 2024-06-19 005017](https://github.com/tgstation/tgstation/assets/120208006/824c28e1-2103-4cf1-ab77-077a845318e1) i'll gladly edit or change any prices that seem way too low, and provide what i believe are reasonable answers for all of them, and i'd gladly love feedback from anyone on whether or not they think somethings too low, or still too high. ## Why It's Good For The Game buying animals from cargo is generally a very difficult think to pull off for mass gimmicks due to the difficulty of accruing wealth crew-side in the jobs that would more than likely attempt to participate in such gimmicks (assistants, for one) so i think cutting their prices will not only help people actually be able to realize their gimmicks in round, but also drum up more cash for cargo, as you can now reasonably buy multiple animals without immediately going bankrupt and having to farm exorbitant amounts of money that you probably won't be able to make within the scope of an average round without some truly exotic methods, i think this will improve the cashflow for the livestocks tab, while also healthily promoting peoples funny little critter gimmicks. ## Changelog :cl: balance: most livestock crates, with some exception, have been made cheaper to facilitate healthier mental states in the crew, go build a farm! /:cl: --- code/modules/cargo/packs/imports.dm | 4 +-- code/modules/cargo/packs/livestock.dm | 38 +++++++++++++-------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/code/modules/cargo/packs/imports.dm b/code/modules/cargo/packs/imports.dm index 94849d61ef527..3f7645559ff7f 100644 --- a/code/modules/cargo/packs/imports.dm +++ b/code/modules/cargo/packs/imports.dm @@ -43,7 +43,7 @@ /datum/supply_pack/imports/duct_spider name = "Duct Spider Crate" desc = "Awww! Straight from the Australicus sector to your station's ventilation system!" - cost = CARGO_CRATE_VALUE * 6 + cost = CARGO_CRATE_VALUE * 4 contains = list(/mob/living/basic/spider/maintenance) crate_name = "duct spider crate" crate_type = /obj/structure/closet/crate/critter @@ -52,7 +52,7 @@ /datum/supply_pack/imports/duct_spider/dangerous name = "Duct Spider Crate?" desc = "Wait, is this the right crate? It has a frowny face, what does that mean?" - cost = CARGO_CRATE_VALUE * 6 + cost = CARGO_CRATE_VALUE * 4 contains = list(/mob/living/basic/spider/giant/hunter) contraband = TRUE diff --git a/code/modules/cargo/packs/livestock.dm b/code/modules/cargo/packs/livestock.dm index 899216ffb5bef..62008d8be48e0 100644 --- a/code/modules/cargo/packs/livestock.dm +++ b/code/modules/cargo/packs/livestock.dm @@ -5,7 +5,7 @@ /datum/supply_pack/critter/parrot name = "Bird Crate" desc = "Contains five expert telecommunication birds." - cost = CARGO_CRATE_VALUE * 8 + cost = CARGO_CRATE_VALUE * 4 contains = list(/mob/living/basic/parrot) crate_name = "parrot crate" @@ -30,7 +30,7 @@ /datum/supply_pack/critter/cat name = "Cat Crate" desc = "The cat goes meow! Comes with a collar and a nice cat toy! Cheeseburger not included."//i can't believe im making this reference - cost = CARGO_CRATE_VALUE * 10 //Cats are worth as much as corgis. + cost = CARGO_CRATE_VALUE * 4 //Cats are worth as much as corgis. contains = list( /mob/living/basic/pet/cat, /obj/item/clothing/neck/petcollar, @@ -51,7 +51,7 @@ /datum/supply_pack/critter/chick name = "Chicken Crate" desc = "The chicken goes bwaak!" - cost = CARGO_CRATE_VALUE * 4 + cost = CARGO_CRATE_VALUE * 2 contains = list(/mob/living/basic/chick) crate_name = "chicken crate" @@ -59,7 +59,7 @@ name = "Corgi Crate" desc = "Considered the optimal dog breed by thousands of research scientists, this Corgi is but \ one dog from the millions of Ian's noble bloodline. Comes with a cute collar!" - cost = CARGO_CRATE_VALUE * 10 + cost = CARGO_CRATE_VALUE * 4 contains = list(/mob/living/basic/pet/dog/corgi, /obj/item/clothing/neck/petcollar, ) @@ -76,28 +76,28 @@ /datum/supply_pack/critter/cow name = "Cow Crate" desc = "The cow goes moo! Contains one cow." - cost = CARGO_CRATE_VALUE * 6 + cost = CARGO_CRATE_VALUE * 3 contains = list(/mob/living/basic/cow) crate_name = "cow crate" /datum/supply_pack/critter/sheep name = "Sheep Crate" desc = "The sheep goes BAAAA! Contains one sheep." - cost = CARGO_CRATE_VALUE * 6 + cost = CARGO_CRATE_VALUE * 3 contains = list(/mob/living/basic/sheep) crate_name = "sheep crate" /datum/supply_pack/critter/pig name = "Pig Crate" desc = "The pig goes oink! Contains one pig." - cost = CARGO_CRATE_VALUE * 6 + cost = CARGO_CRATE_VALUE * 3 contains = list(/mob/living/basic/pig) crate_name = "pig crate" /datum/supply_pack/critter/pony name = "Pony Crate" desc = "Ponies, yay! (Just the one.)" - cost = CARGO_CRATE_VALUE * 6 + cost = CARGO_CRATE_VALUE * 5 contains = list(/mob/living/basic/pony) crate_name = "pony crate" @@ -124,7 +124,7 @@ name = "Exotic Corgi Crate" desc = "Corgi fit for a king, this corgi comes in a unique color to signify their superiority. \ Comes with a cute collar!" - cost = CARGO_CRATE_VALUE * 11 + cost = CARGO_CRATE_VALUE * 7 contains = list(/mob/living/basic/pet/dog/corgi/exoticcorgi, /obj/item/clothing/neck/petcollar, ) @@ -133,7 +133,7 @@ /datum/supply_pack/critter/fox name = "Fox Crate" desc = "The fox goes...? Contains one fox. Comes with a collar!"//what does the fox say - cost = CARGO_CRATE_VALUE * 10 + cost = CARGO_CRATE_VALUE * 4 contains = list( /mob/living/basic/pet/fox, /obj/item/clothing/neck/petcollar, @@ -143,14 +143,14 @@ /datum/supply_pack/critter/goat name = "Goat Crate" desc = "The goat goes baa! Contains one goat. Warranty void if used as a replacement for Pete." - cost = CARGO_CRATE_VALUE * 5 + cost = CARGO_CRATE_VALUE * 3 contains = list(/mob/living/basic/goat) crate_name = "goat crate" /datum/supply_pack/critter/rabbit name = "Rabbit Crate" desc = "What noise do rabbits even make? Contains one rabbit." - cost = CARGO_CRATE_VALUE * 4 + cost = CARGO_CRATE_VALUE * 2 contains = list(/mob/living/basic/rabbit) crate_name = "rabbit crate" @@ -158,7 +158,7 @@ name = "Mothroach Crate" desc = "Put the mothroach on your head and find out what true cuteness looks like. \ Contains one mothroach." - cost = CARGO_CRATE_VALUE * 4 + cost = CARGO_CRATE_VALUE * 2 contains = list(/mob/living/basic/mothroach) crate_name = "mothroach crate" @@ -173,7 +173,7 @@ /datum/supply_pack/critter/pug name = "Pug Crate" desc = "Like a normal dog, but... squished. Contains one pug. Comes with a nice collar!" - cost = CARGO_CRATE_VALUE * 10 + cost = CARGO_CRATE_VALUE * 4 contains = list(/mob/living/basic/pet/dog/pug, /obj/item/clothing/neck/petcollar, ) @@ -183,7 +183,7 @@ name = "Bull Terrier Crate" desc = "Like a normal dog, but with a head the shape of an egg. Contains one bull terrier. \ Comes with a nice collar!" - cost = CARGO_CRATE_VALUE * 10 + cost = CARGO_CRATE_VALUE * 4 contains = list(/mob/living/basic/pet/dog/bullterrier, /obj/item/clothing/neck/petcollar, ) @@ -193,7 +193,7 @@ name = "Snake Crate" desc = "Tired of these MOTHER FUCKING snakes on this MOTHER FUCKING space station? \ Then this isn't the crate for you. Contains three venomous snakes." - cost = CARGO_CRATE_VALUE * 6 + cost = CARGO_CRATE_VALUE * 3 contains = list(/mob/living/basic/snake = 3) crate_name = "snake crate" @@ -201,7 +201,7 @@ name = "Amphibian Friends Crate" desc = "Two disgustingly cute slimey friends. Cytologists love them! \ Contains one frog and one axolotl. Warning: Frog may have hallucinogenic properties." - cost = CARGO_CRATE_VALUE * 4 + cost = CARGO_CRATE_VALUE * 2 contains = list( /mob/living/basic/axolotl, /mob/living/basic/frog, @@ -211,7 +211,7 @@ /datum/supply_pack/critter/lizard name = "Lizard Crate" desc = "Hisss! Containssss a friendly lizard. Not to be confusssed with a lizardperssson." - cost = CARGO_CRATE_VALUE * 4 + cost = CARGO_CRATE_VALUE * 2 contains = list(/mob/living/basic/lizard) crate_name = "lizard crate" @@ -219,7 +219,7 @@ name = "Garden Gnome Crate" desc = "Collect them all for your garden. Comes with three!" hidden = TRUE - cost = CARGO_CRATE_VALUE * 20 + cost = CARGO_CRATE_VALUE * 15 contains = list(/mob/living/basic/garden_gnome) crate_name = "garden gnome crate" discountable = SUPPLY_PACK_RARE_DISCOUNTABLE From 7a8c25ee93348492b27e57735b95730c906614b7 Mon Sep 17 00:00:00 2001 From: orange man <61334995+comfyorange@users.noreply.github.com> Date: Sun, 23 Jun 2024 05:17:14 +1200 Subject: [PATCH 8/8] Automatic changelog for PR #84132 [ci skip] --- html/changelogs/AutoChangeLog-pr-84132.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-84132.yml diff --git a/html/changelogs/AutoChangeLog-pr-84132.yml b/html/changelogs/AutoChangeLog-pr-84132.yml new file mode 100644 index 0000000000000..5f7a33c4c3210 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-84132.yml @@ -0,0 +1,4 @@ +author: "Donglesplonge" +delete-after: True +changes: + - balance: "most livestock crates, with some exception, have been made cheaper to facilitate healthier mental states in the crew, go build a farm!" \ No newline at end of file