mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-18 21:53:22 +00:00
99ca6be8919668db901b18bf1799a87f33c09701
375 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
03489c2773 | I'm legit happy we have a lint for var/static now | ||
|
|
6d24e69dac |
Adds 3 'Comms Buoy' Space Ruins (#86872)
## About The Pull Request https://github.com/tgstation/common_core/blob/master/Technology%20and%20Science/Communications.md I was playing Starsector shortly before I read through this lore blurb and realized that simple Comms Buoys would be easy little ruins to make. Then I decided to make NT's extra-special because NT is always leading in tech innovation. Adds 2 "low-tech" Comms Buoy ruins (**no local comms**, these are just little fluff things): <details><summary>Kosmokomm Communications Buoy</summary> </details> <details><summary>Pirated Communications Buoy</summary> </details> The majority of the PR is the "high-tech" Nanotrasen Extraorbital Bluespace Communications Buoy <details><summary>The NT-EBCB Model 7 (ignore the parallax i couldnt get it all in one screenshot)</summary>  </details> This is a medium ruin that's more lore heavy than loot heavy - though that doesn't mean there's no danger. NT wouldn't want you walking in and reading all their communication logs after all. <details><summary>SPOILERS INSIDE</summary> **Hazards:** 2 Laser Turrets (in a titanium room, so they reflect off walls) **Loot:** 2 Experimental Tool spawners, 2 NT Private Security bodies, 3 space suits, 1 of each tcomm component, 2 RTGs (can these even be taken) The majority of the sat is for lore. It has 3 paper notes and 5 consoles (1 broken, 1 dupe, so 3 unique consoles) All lore will be here to show how formatting appears in-game. <details><summary>Airlock Note: "Page 33: NT-EBCB Model 7"</summary> This one gives a quick summary of what to expect inside - consoles and defense turrets. Of course, players won't have the special ID (and couldn't use it anyways, the guys inside covered it in blood)  </details> <details><summary>Pinned Note: "Table of Contents: NT-EBCB Model 7"</summary> A page out of the manual. Rest of manual not included. (Names the different parts of the buoy)  </details> <details><summary>Main-Dish Note: "Spinward-NT-EBCB Inspection Report"</summary> An inspector left behind a few notes during pre-deployment. Sure hope no important security risks were missed!  </details> <details><summary>Console 1: "Satellite Dish Operations Terminal"</summary> This one's mostly just a tie-in with the "story", don't know how necessary it is but it filled the empty spaces. This console has a spare in the Main Dish (as its prone to breaking from the turrets)  </details> <details><summary>Console 2: "Blackbox Transcription Terminal"</summary> The "local" side of the story. This console monitors the Local-Space Comms, and managed to log the repair team's activity.  </details> <details><summary>Console 3: "Long-Range Interstellar Relay Operations Terminal"</summary> Here's the big lore thing for freaks like me who love lore being shown in-game. It's got a lot of random-made-up-science-bullwhizz relating to the ongoing NT research mentioned in the plasma_exposure lore blurb. Granted, the guy's a bit biased in his ex-partner's work.   </details> </details> ## Why It's Good For The Game A) Everybody loves new space ruins, even small fluff ones. I hope. B) Lore integration is cool. Aside from the obvious 'Comms Buoys being a thing you can find', it also makes mention of the Gateway system/Port Ellis and a certain lore blurb involving plasma (albeit under more severe, and biased, testing) ## Changelog 🆑 add: 3 new Space Ruins: two small Comms Buoys (fluff) and an NT Bluespace Comms Buoy. Employees are asked not to touch vital components when nearby this critical infrastructure. /🆑 |
||
|
|
e59d8ba64b | Merge commit '179a607a90ad7ec62bdaff4e6fe72af60ee56442' of https://github.com/tgstation/tgstation into upstream-24-10b | ||
|
|
bb70889f6e |
TG Upstream Part 1
3591 individual conflicts Update build.js Update install_node.sh Update byond.js oh my fucking god hat slow huh holy shit we all fall down 2 more I missed 2900 individual conflicts 2700 Individual conflicts replaces yarn file with tg version, bumping us down to 2200-ish Down to 2000 individual conflicts 140 down mmm aaaaaaaaaaaaaaaaaaa not yt 575 soon 900 individual conflicts 600 individual conflicts, 121 file conflicts im not okay 160 across 19 files 29 in 4 files 0 conflicts, compiletime fix time some minor incap stuff missed ticks weird dupe definition stuff missed ticks 2 incap fixes undefs and pie fix Radio update and some extra minor stuff returns a single override no more dupe definitions, 175 compiletime errors Unticked file fix sound and emote stuff honk and more radio stuff |
||
|
|
3f0b4abb8d |
Replaces world.icon_size (and some magic numbers) with defines (#86819)
## About The Pull Request All usages of world.icon_size in code have been replaced with new `ICONSIZE_X`, `ICONSIZE_Y` and `ICONSIZE_ALL` defines depending on context Replaces some "32" magic numbers with the defines A few bits of code have been modified to split up x/y math as well ## Why It's Good For The Game Magic number bad, code more readable, code more flexible and I'm told there's an access cost to doing world.icon_size so minor performance gains ## Changelog 🆑 tonty code: made some code relating to the world's icon size more readable /🆑 --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> |
||
|
|
58501dce77 |
Reorganizes the sound folder (#86726)
## About The Pull Request <details> - renamed ai folder to announcer -- announcer -- - moved vox_fem to announcer - moved approachingTG to announcer - separated the ambience folder into ambience and instrumental -- ambience -- - created holy folder moved all related sounds there - created engineering folder and moved all related sounds there - created security folder and moved ambidet there - created general folder and moved ambigen there - created icemoon folder and moved all icebox-related ambience there - created medical folder and moved all medbay-related ambi there - created ruin folder and moves all ruins ambi there - created beach folder and moved seag and shore there - created lavaland folder and moved related ambi there - created aurora_caelus folder and placed its ambi there - created misc folder and moved the rest of the files that don't have a specific category into it -- instrumental -- - moved traitor folder here - created lobby_music folder and placed our songs there (title0 not used anywhere? - server-side modification?) -- items -- - moved secdeath to hailer - moved surgery to handling -- effects -- - moved chemistry into effects - moved hallucinations into effects - moved health into effects - moved magic into effects -- vehicles -- - moved mecha into vehicles created mobs folder -- mobs -- - moved creatures folder into mobs - moved voice into mobs renamed creatures to non-humanoids renamed voice to humanoids -- non-humanoids-- created cyborg folder created hiss folder moved harmalarm.ogg to cyborg -- humanoids -- -- misc -- moved ghostwhisper to misc moved insane_low_laugh to misc I give up trying to document this. </details> - [X] ambience - [x] announcer - [x] effects - [X] instrumental - [x] items - [x] machines - [x] misc - [X] mobs - [X] runtime - [X] vehicles - [ ] attributions ## Why It's Good For The Game This folder is so disorganized that it's vomit inducing, will make it easier to find and add new sounds, providng a minor structure to the sound folder. ## Changelog 🆑 grungussuss refactor: the sound folder in the source code has been reorganized, please report any oddities with sounds playing or not playing server: lobby music has been repathed to sound/music/lobby_music /🆑 |
||
|
|
29b423483e |
Fix: museum keycard spawns in toilet but you can't pick it from cistern. (#86770)
## About The Pull Request Keycard is spawning in one of gateway museum toilets contents but you can't get it. Destroying the toilet also does not give the keycard. ## Changelog 🆑 fix: Gateway museum keycard now spawns in toilet properly. /🆑 |
||
|
|
c9a220d4c4 |
Water turfs are now properly named (#86641)
## About The Pull Request Because water turfs were unnamed on compile-time, they defaulted to the last section of their path. ## Why It's Good For The Game This will fix #86638 ## Changelog 🆑 fix: Water turfs from the crashed site ruin on lavaland are no longer named "lavaland atmos". /🆑 |
||
|
|
ef14af1ff6 |
converts certain donk outpost objects to use SSqueuelinks instead of globals (#85637)
## About The Pull Request converts certain donk outpost objects to use SSqueuelinks instead of globals ## Why It's Good For The Game i dont think every cool ruin should have its own global vars + this allows multiple of the ruin to be spawned without breaking if someone wants to do that for some reason its better to just do it like this ## Changelog 🆑 code: that one cool haunted donk outpost ruins tripwires and such use a subsystem instead of globals. no real gameplay effect /🆑 --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> |
||
|
|
8d9f1689ba |
Decouples free vending machine behavior from the 'onstation' var (#86548)
## About The Pull Request The `onstation` var was being used for too many things (AI brand intelligence + whether the products are free or not), and was overcomplicating the logic. On top of that it makes things like trying to make a vending machine that is considered offstation for purposes of the brand intelligence event but that still dispenses free goods needlessly difficult. This PR just decouples the two behaviors and gives the 'free' behavior its own var. As a result, the majority of the of `onstation` map varedits are no longer necessary Tested with various edge cases, all seem working as intended: <details><summary>arrivals (onstation, all_free_products = null / FALSE)</summary>  </details> <details><summary>arrivals (onstation, all_free_products = TRUE)</summary>  </details> <details><summary>spacehotel (not onstation, all_free_products = null)</summary>  </details> <details><summary>hauntedruins (not onstation, all_free_products = FALSE)</summary>  </details> <details><summary>silverscale shuttle (not onstation, all_free_products = TRUE)</summary>  </details> <details><summary>labor camp (not onstation, all_free_products = FALSE)</summary>  </details> ## Why It's Good For The Game Less complicated vending machines, less varedits in our maps. Less confusing code. Ability to spawn a vending machine and varedit it to be free without affecting any other systems. ## Changelog N/A |
||
|
|
feb474550f |
Removes vestigial req_access from vending machines + some cleanup (#86550)
## About The Pull Request Once upon a time, vending machines were access locked I guess? It's been so many years since that has been the case that most people don't remember (including myself). This just removes all the old unused req_access lists that reside on the various vending machines. ## Why It's Good For The Game Less chance of cargo culting something that serves no purpose anymore. ## Changelog Nothing player facing I should hope --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> |
||
|
|
4c4930c71d | Merge branch 'master' of https://github.com/tgstation/tgstation into pulls-tg-to-fix-shit | ||
|
|
91baa94ac5 |
event based incapicated and able_to_run (#86031)
## About The Pull Request this is a revival of #82635 . i got permission from potato to reopen this, he did almost all the work. i only just solved the conflicts and fixed all the bugs that were preventing the original from being merged (but it should be TMed first) ## Why It's Good For The Game slightly improves the performance of basic mob AI ## Changelog 🆑 LemonInTheDark refactor: able_to_run and incapacitated have been refactored to be event based /🆑 --------- Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> Co-authored-by: ZephyrTFA <matthew@tfaluc.com> |
||
|
|
9a9b428b61 |
Wallening Revert [MDB Ignore][IDB Ignore] (#86161)
This PR is reverting the wallening by reverting everything up to
|
||
|
|
100e59272f |
[MIRROR] Fix grammar error on Hilbert (#29549)
* Fix grammar error on Hilbert (#86015) ## About The Pull Request Hilbert's Hotel is a mountain free zone. ## Changelog 🆑 LT3 spellcheck: Sneak a peek of Hilbert's Hotel, not a sneak peak /🆑 * Fix grammar error on Hilbert --------- Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com> |
||
|
|
31b13846bb |
Ports Beach Condo infinidorm from Nova, adds two new ones (#29552)
* infinidorms * others |
||
|
|
5e6a4f1527 |
Fix grammar error on Hilbert (#86015)
## About The Pull Request Hilbert's Hotel is a mountain free zone. ## Changelog 🆑 LT3 spellcheck: Sneak a peek of Hilbert's Hotel, not a sneak peak /🆑 |
||
|
|
659e6f0ca2 |
Fishing expansion 2: one-year later boogaloo (#85252)
## About The Pull Request This PR mainly adds more fish and more fishing spots to the game, while refactoring a few aspects of the fishing minigame. Listing out with the new fish: - Arctic char: mainly filler content for the ice hole fishing spot - Sockeye Salmon: ditto but also provides better fillets that boost the quality of resulting food items when cooked or used in recipes - Soulfish: joke content, found by the cursed spring ruin - Skin Crab: also a joke found by the cursed spring - Bump-Fish: filler for the sand fishing spot - Burrower Crab: ditto, reusing a fish sprite I made last year - Sand Surfer: ditto - Three-Eyed Goldfish: It's a reference, doh - Stingray: A modestly weaponizable fish (whoops I've forgot to set the hit sounds), it possess a few traits that make it deliver bits of venom each time you hit someone with it - Swordfish: Huge-ass fish that may require two hands to wield (or not, if the RNG wants to make it smaller). Stats-wise, it's more or less the equivalent of the captain sabre, if not stronger (and more unwieldy due to size and weight). Becomes weaker when dead. Also gives better quality fillets. - Chainsawfish: A mutation of the goldfish with some size, weight and traits requirements, but can also be found on emagged fishing portals. Stronger than the swordfish, it behaves sort of like a chainsaw, with the similar tool behaviour and var values. Also becomes weaker when dead. As for the fishing spots, you can now fish on sand turfs, at the cursed springs or on ice. Rivers/jungle water now has its own fishing spot datum, and no longer uses the generic fishing portal one. To fish on ice, you first have to carve a hole with a pick or a shovel. I've also refactored the fish "AI" hardcoded stuff used in the fishing minigame into their own datums, which let me add a few fancier ways to how the fish moves during the minigame (i.e. the soulfish moving at 1 FPS or the chainsawfish getting faster and faster). As for the sword and chainsaw fish, their potential strength is balanced out by the need of keeping them alive, as well as the potential cumbersomeness, two-handed wielding and potential slowdown from the excessive weight of the fish (Thank you Big Slappy for the inspiration). Other minor changes include: Pufferfish giving better quality fillets (too bad they're poisonous, I'll go and make a skillchip to let cooks safely separate the poisonous liver from the fillets); McGill The lawyer's goldfish) having a 15% of being three-eyed; the aforementioned slowdown from fish weight and two-handed carry from fish size; a couple new fish icons (the ones that hint you on what you're trying to catch) for the fishing minigame; a few adjustments to prevent self-reproducing fish from ignoring the population cap and let fish with a stable population of 1 to crossbreed (also gotta make a different PR to let it happen rarely without the crossbreeding trait). This PR is still a WIP, gotta test it several times. ## Why It's Good For The Game Fishing is something I've been working on for about a year now, but there are still a few places where it's kinda lackluster, like there's not enough diverse fishing spots or useful fish (I'll be working on a separate PR to make the logistic of a carrying a fish around without letting it die a tad easier). Also, look at these sprites:  Can you guess which is which? ## Changelog For the sake of not dumping players with niche information 90% of the players won't understand, I'll keep the CL pretty generic 🆑 add: Added twelve new fish types to the game. Some are cool, other are not, some come with their own special traits and some are straight-up weapons. add: Added more fishing spots to the game. Sand, ice, rivers, the cursed spring... balance: A few fish like salmon, swordfish and pufferfish (poisonous btw) now give better quality fillets when butchered, which can improve the quality of food that uses them even further. balance: Excessive fish weight will make the fish slowier to carry, while excessive size may make it require two hands. balance: Adjusted size, weight and cooldowns of several fish, for the better. /🆑 |
||
|
|
1880003270 |
Reworks silicon/ai access checking & fixes some ui_act's (#84964)
## About The Pull Request Currently to check for Silicon access, we do: ``if is silicon or is admin ghost or has unlimited silicon privileges or has machine remote in hand`` What has unlimited silicon privileges? Bots, Drones, and admin ghosts. To check for AI access, it just checks for AI instead of silicon, and doesnt check for unlimited silicon privileges. This was kinda silly, so I thought I should make this a little easier to understand. Now all silicon/ai traits come from ``AI_ACCESS_TRAIT`` or ``SILICON_ACCESS_TRAIT``. I made a single exception to keep Admin ghost, since now instead of being a var on the client, we moved it to using the same trait but giving it to the client instead, but since we have to keep parity with previous functionality (admins can spawn in and not have this on, it only works while as a ghost), I kept previous checks as well. No more type checks, removes a silly var on the mob level and another on the client. Now while I was doing this, I found a lot of tgui's ``ui_act`` still uses ``usr`` and the wrong args, so I fixed those wherever I saw them, and used a mass replace for the args. Other changes: - machinery's ``ui_act`` from https://github.com/tgstation/tgstation/pull/81250 had ``isAI`` replaced with ``HAS_AI_ACCESS``, this has been reverted. Machine wands and admin ghosts no longer get kicked off things not on cameras. This was my fault, I overlooked this when adding Human AI. - Human AI's wand gives AI control as long as it's in your hand, you can swap to your offhand. I hope this doesn't end up going horribly, otherwise I'll revert this part. It should let human AIs not have their UI closed on them when swapping to eat food or use their door wand or whatnot. - Bots previously had special checks to scan reagents and be unobservant, I replaced this with giving them the trait. I also fixed an instance of unobservant not being used, so now statues don't affect the basic creature, whatever that is. ## Why It's Good For The Game This is an easier to understand way of handling silicon access and makes these mobs more consistent between eachother. Other than what I've mentioned above, this should have no impact on gameplay itself. ## Changelog 🆑 fix: Statues don't count as eyes to creatures. fix: Human AIs and Admin ghosts no longer get kicked off of machines that aren't on cameranets. /🆑 |
||
|
|
6f0dd84a3d |
Splits wall layer into three (#85901)
## About The Pull Request Turns `ON_WALL_LAYER` into `FLAT_ON_WALL_LAYER` `ON_WALL_LAYER` `HIGH_ON_WALL_LAYER` Where `FLAT_ON_WALL_LAYER` is meant for lower-priority wall mounts like signs and posters `ON_WALL_LAYER` is default and `HIGH_ON_WALL_LAYER` is for stuff that "hang over" the wall Also makes the incident display actually wall mounted ## Why It's Good For The Game I noticed this while doing mapping and I thought it was a really cool effect  Unfortunately this effect was a coinflip because all wall mounts were on the same layer. Sometimes it'd look like this  So this allows us to do this kinda stuff consistently. Also has the added effect of letting us "de-prioritize" stuff like posters, so we can hang stuff *over* posters and signs, which could be useful. ## Changelog 🆑 Melbert qol: Some wall mounts will now consistently layer over others (light switches and cameras, notably, should always layer above other mounts like signs and status displays) /🆑 |
||
|
|
fec946e9c0 |
/Icon/ Folder cleansing crusade part, I think 4; post-wallening clean-up. (#85823)
Hello everybuddy, your number three rated coder-failure here to clean up some mess. This PR accomplishes some of the more major structural clean up changes I wanted to do with /obj/ folder, but decided to wait on until wallening gets merged, and so, time has come. Several things to still be done, although I know these cleaning PR's are quite a load, so will wait for this one to get done with first. ## Why It's Good For The Game Saner spriters, better sprites, less annoyance. Also deleted a whole load of redundancy this time around, a lot of sprites which existed simultaniously in two places now got exit their quantum superposition. |
||
|
|
4b4e9dff1d |
Wallening [IDB IGNORE] [MDB IGNORE] (#85491)
## What's going on here Kept you waitin huh! This pr resprites most all walls, windows and other "wall adjacent" things to a 3/4th perspective, technical term is "tall" walls (we are very smart). If you're trying to understand the technical details here, much of the "rendering tech" is built off the idea of split-vis. Basically, split a sprite up and render it on adjacent turfs, to prevent seeing "through" walls/doors, and to support seeing "edges" without actually seeing the atom itself. Most of the rest of it is pipelining done to accommodate how icons are cut. ## Path To Merge Almost* all sprites and code is done at this point. There are some things missing both on and off the bounty list, but that will be the case forever unless we force upstream (you guys) to stop adding new shit that doesn't fit the style. I plan on accepting and integrating prs to the current working repo <https://github.com/wall-nerds/wallening> up until a merge, to make contribution simpler and allow things like bounties to close out more easily This pr is quite bulky, even stripping away map changes it's maybe 7000 LOC (We have a few maps that were modified with UpdatePaths, I am also tentatively pring our test map, for future use.) This may inhibit proper review, although that is part of why I am willing to make it despite my perfectionism. Apologies in advance. Due to the perspective shift, a lot of mapping work is going to need to be done at some point. This comes in varying levels of priority. Many wallmounts are offset by hand, some are stuck in the wall/basically cannot be placed on the east/west/north edges of walls (posters), some just don't look great good in their current position. Tests are currently a minor bit yorked, I thought it was more important to get this up then to clean them fully. ## What does it look like?       ## Credits <details> <summary>Historical Mumbojumbo</summary> I am gonna do my best to document how this project came to be. I am operating off third party info and half remembered details, so if I'm wrong please yell at me. This project started sometime in late 2020, as a product of Rohesie trying to integrate and make easier work from Mojave Sun (A recently defunct fallout server) with /tg/. Mojave Sun (Apparently this was LITERALLY JUST infrared baron, that man is insane) was working with tall walls, IE walls that are 48px tall instead of the normal 32. This was I THINK done based off a technical prototype from aao7 proving A it was possible and B it didn't look like dogwater. This alongside oranges begging the art team for 3/4th walls (he meant TGMC style) lead to Rohesie bringing on contributors from general /tg/, including actionninja who would eventually take over as technical lead and Kryson, who would define /tg/'s version of the artstyle. Much of the formative aspects of this project are their work. The project was coming along pretty well for a few months, but ran into serious technical issues with `SIDE_MAP`, a byond map_format that allows for simpler 3/4th rendering. Due to BULLSHIT I will not detail here, the map format caused issues both at random with flickering and heavily with multiz. Concurrent with this, action stepped down after hacking out the rendering tech and starting work on an icon cutter that would allow for simpler icon generation, leaving ninjanomnom to manage the project. Some time passed, and the project stalled out due to the technical issues. Eventually I built a test case for the issues we had with `SIDE_MAP` and convinced lummox jr (byond's developer) to explain how the fuckin thing actually worked. This understanding made the project theoretically possible, but did not resolve the problems with multi-z. Resolving those required a full rework of how rendering like, worked. I (alongside tattle) took over project development from ninjanomnom at this time, and started work on Plane Cube (#69115), which when finished would finally make the project technically feasible. The time between then and now has been slow, progressive work. Many many artists and technical folks have dumped their time into this (as you can see from the credits). I will get into this more below but I would like to explicitly thank (in no particular order) tattle, draco, arcanemusic, actionninja, imaginos, viro and kylerace for keeping the project alive in this time period. I would have curled up into a ball and died if I had to do this all myself, your help has been indispensable. </details> <details> <summary>Detailed Credits</summary> Deep apologies if I have forgotten someone (I am sure I have, if someone is you please contact me). I've done my best to collate from the git log/my memory. Thanks to (In no particular order): Raccoff: Being funny to bully, creating threshold decals for airlocks aa07: (I think) inspiring the project ActionNinja: Laying the technical rock we build off, supporting me despite byond trying to kill him, building the icon cutter that makes this possible ArcaneMusic: Artistic and technical work spanning from the project's start to literally today, being a constant of motivation and positivity. I can't list all the stuff he's done Armhulen: Key rendering work (he's the reason thindows render right), an upbeat personality and a kick in the ass. Love you arm Azlan: Damn cool sprites, consistently Ben10Omintrix: You know ben showed up just to make basic mobs work, he's just fuckin like that man BigBimmer: A large amount of bounty work, alongside just like, throwing shit around. An absolute joy to work with Capsandi: Plaques, blastdoors, artistic work early on CapybaraExtravagante: Rendering work on wall frames Draco: SO MUCH STUFF. Much of the spritework done over the past two years is his, constantly engaged and will take on anything. I would have given up if not for you Floyd: Early rendering work, so early I don't even know the details. Enjoy freedom brother Imaginos16: A guiding hand through the middle years, handled much of the sprite review and contribution for a good bit there Iamgoofball: A dedication to detail and aesthetic goals, spends a lot of effort dissecting feedback with a focus on making things as good as they can be at the jump Infrared: Part of the impetus for the project, made all the xenomorph stuff in the MS style Jacquerel: A bunch of little upkeep/technical things, has done so much sprite gruntwork (WHY ARE THERE SO MANY PAINTING TYPES) Justice12354: Solved a bunch of error sprites (and worked out how to actually make prs to the project) Thanks bro! Kryson: Built the artstyle of the project, carrying on for years even when it was technically dying, only stopping to casually beat cancer. So much of our style and art is Kryson KylerAce: Handled annoying technical stuff for me, built window frame logic and fully got rid of grilles. LemonInTheDark: Rendering dirtywork, project management and just so much fucking time in dreammaker editing sprites Meyhazah: Table buttons, brass windows and alll the old style doors Mothblocks: Has provided constant support, gave me a deadline and motivation, erased worries about "it not being done", gave just SO much money to fill in the critical holes in sprites. Thanks moth MTandi: Contributed art despite his own blackjack and hookers club opening right down the road, I'm sorry I rolled over some of your sprites man I wish we had finished earlier Ninjanomnomnom: Consulted on gags issues, kept things alive through some truly shit times oranges: This is his fault Rohesie: Organized the effort, did much of the initial like, proof of concept stuff. I hope you're doin well whatever you're up to. san7890: Consulting on mapper UX/design problems, being my pet mapper Senefi: Offsetting items with a focus on detail/the more unused canidates SimplyLogan: Detailed map work and mapper feedback, personally very kind even if we end up talking past each other sometimes. Thank you! SpaceSmithers: Just like, random mapping support out of nowhere, and bein a straight up cool dude Tattle: A bunch of misc project management stuff, organizing the discord, managing the test server, dealing with all the mapping bullshit for me, being my backup in case of bus. I know you think you didn't do much but your presence and work have been a great help Thunder12345: Came out of nowhere and just so much of the random bounties, I'm kind of upset about how much we paid him Time-Green: I hooked him in by fucking with stuff he made and now he's just doin shit, thanks for helping out man! Twaticus: Provided artistic feedback and authority for my poor feeble coder brain, believed in the project for YEARS, was a constant source of ❤️ and affirmation unit0016: I have no god damn idea who she is, popped out of nowhere on the github one day and dealt with a bunch of annoying rendering/refactoring. Godspeed random furry thank you for all your effort and issue reports Viro: A bunch of detailed spriting moving towards 3/4ths, both on and off the wallening fork. If anyone believed this project would be done, it was viro Wallem: Artistic review and consultation, was my go-to guy for a long time when the other two spritetainers were inactive Waltermeldon: Cracked out a bunch of rendering work, he's the reason windows look like not dogwater. Alongside floyd and action spent a TON of time speaking to lummox/unearthing how byond rendering worked trying to make this thing happen ZephyrTFA: Added directional airlock helpers, dealt with a big fuckin bugaboo that was living in my brain like it was nothing. Love you brother And finally: The Mojave Sun development team. They provided a testbed for the idea, committed hundreds and hundreds of hours to the artstyle, and were a large reason we caught issues early enough to meaningfully deal with them. Your work is a testament to what longterm effort and deep detailed care produce. I hope you're doing well whatever you're up to. Go out with a bang! </details> ## Changelog 🆑 Raccoff, aa07, ActionNinja, ArcaneMusic, Armhulen, Azlan, Ben10Omintrix, BigBimmer, Capsandi, CapybaraExtravagante, Draco, Floyd, Iamgoofball, Imaginos16, Infrared, Jacquerel, Justice12354, Kryson, KylerAce, LemonInTheDark, Meyhazah, Mothblocks, MTandi, Ninjanomnom, oranges, Rohesie, Runi-c, san7890, Senefi, SimplyLogan, SomeAngryMiner, SpaceSmithers, Tattle, Thunder12345, Time-Green, Twaticus, unit0016, Viro, Waltermeldon, ZephyrTFA with thanks to the Mojave Sun team! add: Resprites or offsets almost all "tall" objects in the game to match a 3/4ths perspective add: Bunch of rendering mumbo jumbo to make said 3/4ths perspective work /🆑 --------- Co-authored-by: Jacquerel <hnevard@gmail.com> Co-authored-by: san7890 <the@san7890.com> Co-authored-by: = <stewartareid@outlook.com> Co-authored-by: Capsandi <dansullycc@gmail.com> Co-authored-by: ArcaneMusic <hero12290@aol.com> Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com> Co-authored-by: SomeAngryMiner <53237389+SomeAngryMiner@users.noreply.github.com> Co-authored-by: KylerAce <kylerlumpkin1@gmail.com> Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com> Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com> Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com> Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com> Co-authored-by: Runi-c <5150427+Runi-c@users.noreply.github.com> Co-authored-by: Roryl-c <5150427+Roryl-c@users.noreply.github.com> Co-authored-by: tattle <article.disaster@gmail.com> Co-authored-by: Senefi <20830349+Peliex@users.noreply.github.com> Co-authored-by: Justice <42555530+Justice12354@users.noreply.github.com> Co-authored-by: BluBerry016 <50649185+unit0016@users.noreply.github.com> Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: SimplyLogan <47579821+loganuk@users.noreply.github.com> Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com> Co-authored-by: Rob Bailey <github@criticalaction.net> Co-authored-by: MMMiracles <lolaccount1@hotmail.com> |
||
|
|
3918dde05e |
Fixed Charlie MOD installer not installing MODsuits unless you have a backpack to drop (#85671)
## About The Pull Request Closes #85669 ## Changelog 🆑 fix: Fixed Charlie MOD installer not installing MODsuit unless you have a backpack to drop /🆑 |
||
|
|
2913b95b70 |
Fixed Charlie MOD installer not installing MODsuits unless you have a backpack to drop (#85671)
## About The Pull Request Closes #85669 ## Changelog 🆑 fix: Fixed Charlie MOD installer not installing MODsuit unless you have a backpack to drop /🆑 |
||
|
|
1fdf3d739a |
[MIRROR] Donk Co Interstellar Trading Post 6016 (#29007)
* Donk Co Interstellar Trading Post 6016 (#83075) ## About The Pull Request Adds a new space ruin to the pool. It's the haunted trading post. It is a whiteship dock with a large (safe) common area. The back rooms contain loot and danger. Here are a few 'teaser' images. https://i.imgur.com/M1te9Ha.png https://i.imgur.com/SF3bJ62.png https://i.imgur.com/i9xeUFP.png https://i.imgur.com/UBwpJAM.png Notable treasures: Cash, Donk Co merch, Donk Co guns, Donk Co Donk Pockets, Donk Co vendors, Donk Co ID Cards, and the Donk Co Secret Recipe. Oh yeah the secret documents teach you how to make three prototype variants of Donk Pockets. There is no limit to the amount of times it can be read, so if you want to corner the market remember to lock up the documents. Or you can share them with your friends. **Now COMPLETE!**  ## Why It's Good For The Game This ruin is a multi-room dungeon with multiple solutions to each room. It has plenty of action from mobs, traps and hazards. Each room has some form of treasure or unique item in it. There's a boss at the end with great rewards for fighting it, including a cool gun (slightly worse variant of laser carbine). This ruin is also a whiteship dock and space base. The public area is entirely safe: stick to the well lit sector and don't trespass in the employees only areas and you won't be harmed. There is a variety of vendors to resupply at (including a brand new Donk Co snack vendor) but unlike most other space ruins you do have to pay. A whiteship can dock at this ruin if you have one, so you can bring groups of people to party or attack the dungeon together. ## Changelog 🆑 add: Adds the Haunted Trading Post space ruin. add: Adds 10+ unique items for the Haunted Trading Post add: Adds 5 dangerous mobs for the Haunted Trading Post add: Adds 4 new types of hazardous traps for the Haunted Trading Post. /🆑 --------- Co-authored-by: Afevis <ShizCalev@ users.noreply.github.com> Co-authored-by: Ghom <42542238+Ghommie@ users.noreply.github.com> * Donk Co Interstellar Trading Post 6016 * [MIRROR] Donk Co Interstellar Trading Post 6016 [MDB IGNORE] (#3943) * Donk Co Interstellar Trading Post 6016 * i'd rather a pepsi --------- Co-authored-by: Da Cool Boss <142358580+DaCoolBoss@users.noreply.github.com> Co-authored-by: Fluffles <piecopresident@gmail.com> --------- Co-authored-by: Da Cool Boss <142358580+DaCoolBoss@users.noreply.github.com> Co-authored-by: Afevis <ShizCalev@ users.noreply.github.com> Co-authored-by: Ghom <42542238+Ghommie@ users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com> Co-authored-by: NovaBot <154629622+NovaBot13@users.noreply.github.com> Co-authored-by: Fluffles <piecopresident@gmail.com> |
||
|
|
b748c455df |
Donk Co Interstellar Trading Post 6016 (#83075)
## About The Pull Request Adds a new space ruin to the pool. It's the haunted trading post. It is a whiteship dock with a large (safe) common area. The back rooms contain loot and danger. Here are a few 'teaser' images. https://i.imgur.com/M1te9Ha.png https://i.imgur.com/SF3bJ62.png https://i.imgur.com/i9xeUFP.png https://i.imgur.com/UBwpJAM.png Notable treasures: Cash, Donk Co merch, Donk Co guns, Donk Co Donk Pockets, Donk Co vendors, Donk Co ID Cards, and the Donk Co Secret Recipe. Oh yeah the secret documents teach you how to make three prototype variants of Donk Pockets. There is no limit to the amount of times it can be read, so if you want to corner the market remember to lock up the documents. Or you can share them with your friends. **Now COMPLETE!**  ## Why It's Good For The Game This ruin is a multi-room dungeon with multiple solutions to each room. It has plenty of action from mobs, traps and hazards. Each room has some form of treasure or unique item in it. There's a boss at the end with great rewards for fighting it, including a cool gun (slightly worse variant of laser carbine). This ruin is also a whiteship dock and space base. The public area is entirely safe: stick to the well lit sector and don't trespass in the employees only areas and you won't be harmed. There is a variety of vendors to resupply at (including a brand new Donk Co snack vendor) but unlike most other space ruins you do have to pay. A whiteship can dock at this ruin if you have one, so you can bring groups of people to party or attack the dungeon together. ## Changelog 🆑 add: Adds the Haunted Trading Post space ruin. add: Adds 10+ unique items for the Haunted Trading Post add: Adds 5 dangerous mobs for the Haunted Trading Post add: Adds 4 new types of hazardous traps for the Haunted Trading Post. /🆑 --------- Co-authored-by: Afevis <ShizCalev@users.noreply.github.com> Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> |
||
|
|
aefec7cb2b |
Corrects 200+ instances of "it's" where it should've been "its" instead (#85169)
## About The Pull Request it's - conjunction of "it" and "is" its - possessive form of "it" grammar is hard, and there were a lot of places where "it's" was used where it shouldn't have been. i went and painstakingly searched the entire repository for these instances, spending a few hours on it. i completely ignored the changelog archive, and i may have missed some outliers. most player-facing ones should be corrected, though ## Why It's Good For The Game proper grammar is good ## Changelog 🆑 spellcheck: Numerous instances of "it's" have been properly replaced with "its" /🆑 |
||
|
|
5f80128fa9 |
Corrects 200+ instances of "it's" where it should've been "its" instead (#85169)
## About The Pull Request it's - conjunction of "it" and "is" its - possessive form of "it" grammar is hard, and there were a lot of places where "it's" was used where it shouldn't have been. i went and painstakingly searched the entire repository for these instances, spending a few hours on it. i completely ignored the changelog archive, and i may have missed some outliers. most player-facing ones should be corrected, though ## Why It's Good For The Game proper grammar is good ## Changelog 🆑 spellcheck: Numerous instances of "it's" have been properly replaced with "its" /🆑 |
||
|
|
09323ae772 |
[MIRROR] Necropolis gates block atmos when closed. (#28871)
* Necropolis gates block atmos when closed. (#84958) ## About The Pull Request Per the title, necropolis gates are now solid to atmos as long as they're closed - the same as actual doors. ## Why It's Good For The Game Fixes a couple of active turfs on the Icebox Lavaland ruin, mostly - it had two different types of atmosphere on either side of a necropolis gate, probably because the mapper thought it would work like an airlock. It also just makes sense that the heavy stone door would block atmos, if even flimsy wooden ones can. ## Changelog 🆑 fix: Atmosphere can no longer flow through closed necropolis gates. /🆑 * Necropolis gates block atmos when closed. --------- Co-authored-by: lizardqueenlexi <105025397+lizardqueenlexi@users.noreply.github.com> |
||
|
|
e6f3ac3f23 |
Necropolis gates block atmos when closed. (#84958)
## About The Pull Request Per the title, necropolis gates are now solid to atmos as long as they're closed - the same as actual doors. ## Why It's Good For The Game Fixes a couple of active turfs on the Icebox Lavaland ruin, mostly - it had two different types of atmosphere on either side of a necropolis gate, probably because the mapper thought it would work like an airlock. It also just makes sense that the heavy stone door would block atmos, if even flimsy wooden ones can. ## Changelog 🆑 fix: Atmosphere can no longer flow through closed necropolis gates. /🆑 |
||
|
|
474ffe50ef |
[MIRROR] Flattens The Floor Plane (Camera Update Too) (#28632)
* Flattens The Floor Plane (Camera Update Too) (#84350) ## About The Pull Request Ok so like, side map right? It makes things higher up in the world render above things lower down in the world. Most of the time this is what we want, but it is NOT what we want for floors. Floors are allowed to be larger then 32x32, and if they are we want them to render based off JUST their layer. If we don't allow this grass turfs and others get cut off on their bottom edge, which looks WEIRD. In order to make this happen, we can add TOPDOWN_LAYER to every layer on the floor plane and disable sidemap. I've added documentation for this to VISUALS.md, and have also implemented unit test errors to prevent mixing TOPDOWN layers with non topdown planes (or vis versa). This new test adds ~1 second to tests, which is I think a perfectly scrumpulent number. EDIT: I nerd sniped myself and implemented sidemap layering and lighting for cameras (also larger then 32x32 icon support for getflat) The lighting isn't perfect, we don't handle things displaying in the void all that well (I am convinced getflat blending is broken but I have no debugger so I can't fix it properly), but it'll do. This came up cause I had to fix another layering issue in cameras and thought I might as well go all in.  ## Why It's Good For The Game Old:  New:  ## Changelog 🆑 fix: Grass turfs will render properly now. Reworked how floors render, please report any bugs! fix: Cameras now properly capture lighting fix: The layering seen in photos should better match the actual game /🆑 * Flattens The Floor Plane (Camera Update Too) * modular things * Update fluff.dm --------- Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com> |
||
|
|
1c342cb317 |
[MIRROR] Variable Door Delay + Timer Based Animations (#28740)
* Variable Door Delay + Timer Based Animations (#84631) ## About The Pull Request ### Variable Door Delay Door opening/closing delay times are currently static, but many doors do not have animations that FIT the actual timings. It would be better if subtypes cound declare how long each animation takes, and how long it takes for opening to say, become passable and such. Let's do that. ### Timer Based Animations Currently all doors use flick() to do their animations. This is fine right NOW, but fucks with walleniong because we have to split most things into segments to make layering work. So rather then flick let's use client timers and update_icon_state to achive our effects, alongside a proc that lets us do other effects (like sound) on playing an animation ## Why It's Good For The Game Door behavior and visuals better match up, wallening compatability upstreaming. ## Changelog 🆑 add: Most door animations now better line up with when they are/are not passable. /🆑 --------- Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com> * Variable Door Delay + Timer Based Animations * Update airlock_override.dm * modular fix --------- Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com> |
||
|
|
9bc534f3d6 |
Variable Door Delay + Timer Based Animations (#84631)
## About The Pull Request ### Variable Door Delay Door opening/closing delay times are currently static, but many doors do not have animations that FIT the actual timings. It would be better if subtypes cound declare how long each animation takes, and how long it takes for opening to say, become passable and such. Let's do that. ### Timer Based Animations Currently all doors use flick() to do their animations. This is fine right NOW, but fucks with walleniong because we have to split most things into segments to make layering work. So rather then flick let's use client timers and update_icon_state to achive our effects, alongside a proc that lets us do other effects (like sound) on playing an animation ## Why It's Good For The Game Door behavior and visuals better match up, wallening compatability upstreaming. ## Changelog 🆑 add: Most door animations now better line up with when they are/are not passable. /🆑 --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> |
||
|
|
e90a9b4b68 |
Flattens The Floor Plane (Camera Update Too) (#84350)
## About The Pull Request Ok so like, side map right? It makes things higher up in the world render above things lower down in the world. Most of the time this is what we want, but it is NOT what we want for floors. Floors are allowed to be larger then 32x32, and if they are we want them to render based off JUST their layer. If we don't allow this grass turfs and others get cut off on their bottom edge, which looks WEIRD. In order to make this happen, we can add TOPDOWN_LAYER to every layer on the floor plane and disable sidemap. I've added documentation for this to VISUALS.md, and have also implemented unit test errors to prevent mixing TOPDOWN layers with non topdown planes (or vis versa). This new test adds ~1 second to tests, which is I think a perfectly scrumpulent number. EDIT: I nerd sniped myself and implemented sidemap layering and lighting for cameras (also larger then 32x32 icon support for getflat) The lighting isn't perfect, we don't handle things displaying in the void all that well (I am convinced getflat blending is broken but I have no debugger so I can't fix it properly), but it'll do. This came up cause I had to fix another layering issue in cameras and thought I might as well go all in.  ## Why It's Good For The Game Old:  New:  ## Changelog 🆑 fix: Grass turfs will render properly now. Reworked how floors render, please report any bugs! fix: Cameras now properly capture lighting fix: The layering seen in photos should better match the actual game /🆑 |
||
|
|
2bac385d4a |
[MIRROR] Updates icemoon_underground_lavaland.dmm (#28623)
* Updates icemoon_underground_lavaland.dmm (#84576) ## About The Pull Request Somebody pointed out that the Lavaland-on-Icebox ruin is basically a big square with a smaller square in the middle. I poked at it and found inspiration. I opted to lean more into an idea hinted at in a lore-note of the original ruin: the cult imprisoning The Last Drake brought about more creatures which they couldn't contain. Instead of just creatures though, I imagined the whole lavaland area as consequence of the occult. Their cult walls are broken by the rift from lavaland, the Necropolis' power corrupting and claiming it. The interior is mostly unchanged - just lavaland random gen, and the Prison in the middle. Breaking into it will release The Last Ash Drake. The entrances have more variety now, with one being controlled by legion and another entirely claimed by The Necropolis. Additionally, miners can simply dig through the ashen spikes that broke through during the ritual. - **Atmos interaction was tested as thoroughly as I could. Nothing occurs until a player causes it by breaking a wall/opening a door, the same as the current ruin** - Additionally created a mapfluff file for the ruin, with a cult outfit/corpse, legion that drops said corpse (because the cult got infected by them!), the lore notes, ~~and codeifies The Last Ash Drake rather than it being a mapedit~~ (NVM no more simplemobs can be coded). - Also renamed the map to Lavaland Incursion because that's so much cooler than Site  ## Why It's Good For The Game Ruins deserve love and care, including our big boxes. ## Changelog 🆑 add: updated Icebox's lavaland ruin. The incursion grows... /🆑 * Updates icemoon_underground_lavaland.dmm --------- Co-authored-by: OrionTheFox <76465278+OrionTheFox@users.noreply.github.com> |
||
|
|
4a60f108ab |
[MIRROR] Cult Vs. Heretic: 7 Months Later Edition (#28477)
* Cult Vs. Heretic: 7 Months Later Edition * conflict fix --------- Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com> |
||
|
|
e56136a0ec |
Updates icemoon_underground_lavaland.dmm (#84576)
## About The Pull Request Somebody pointed out that the Lavaland-on-Icebox ruin is basically a big square with a smaller square in the middle. I poked at it and found inspiration. I opted to lean more into an idea hinted at in a lore-note of the original ruin: the cult imprisoning The Last Drake brought about more creatures which they couldn't contain. Instead of just creatures though, I imagined the whole lavaland area as consequence of the occult. Their cult walls are broken by the rift from lavaland, the Necropolis' power corrupting and claiming it. The interior is mostly unchanged - just lavaland random gen, and the Prison in the middle. Breaking into it will release The Last Ash Drake. The entrances have more variety now, with one being controlled by legion and another entirely claimed by The Necropolis. Additionally, miners can simply dig through the ashen spikes that broke through during the ritual. - **Atmos interaction was tested as thoroughly as I could. Nothing occurs until a player causes it by breaking a wall/opening a door, the same as the current ruin** - Additionally created a mapfluff file for the ruin, with a cult outfit/corpse, legion that drops said corpse (because the cult got infected by them!), the lore notes, ~~and codeifies The Last Ash Drake rather than it being a mapedit~~ (NVM no more simplemobs can be coded). - Also renamed the map to Lavaland Incursion because that's so much cooler than Site  ## Why It's Good For The Game Ruins deserve love and care, including our big boxes. ## Changelog 🆑 add: updated Icebox's lavaland ruin. The incursion grows... /🆑 |
||
|
|
1df0e42efb |
[MIRROR] Cigarettes and vapes are no longer subtypes of masks. (#28479)
* Cigarettes and vapes are no longer subtypes of masks. * clothing path * clothing misses * more * fix donator * more2 * more3 * Update prop_summoner.dm * Update prop_summoner.dm * fix --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com> |
||
|
|
35484728f1 |
Cigarettes and vapes are no longer subtypes of masks. (#82942)
## About The Pull Request Since non-clothing items can also be worn on several slots, there's no need for cigarettes/vapes to be subtypes of masks anymore, since that comes with a few oddities like #82870. ## Why It's Good For The Game This should fix #82870, with about no side-effect aside them no longer being edible by moths 🤢. |
||
|
|
4eaa299c0b |
Cult Vs. Heretic: 7 Months Later Edition (#82877)
## About The Pull Request This PR was originally meant as a replacement for the Bloody Bastard blade, but then I stopped existing for 7 months. Now that I'm here again, I'm finishing the job once and for all. ### **HERETICS VERSUS CULTISTS** ### Heretics Heretics can now sacrifice cultists, which will give them one of three gifts: The Cursed Blade, the Crimson Focus, and the Rusted Harvester. The gifts given are weighted to be spread out equally with each type. They will also gain one knowledge point. - The Cursed Blade is a free heretic blade that is more powerful than the normal heretic blade, including a small block chance. It can also be used to draw heretic runes off combat mode. - The Crimson Focus is a necklace that grants focusing and a minor regeneration effect which also affects nearby heretics, at the cost of gaining the BLOODY_MESS trait while wearing it. Additionally, it can be squeezed to heal 50 points of brute/burn damage, injecting yourself with three to six (separately) units of Eldritch ~~Water~~ Essence and Unholy Water. Yes, this isn't good. - The Rusted Harvester is a heretic 'monster' summon. It's a normal Harvester, but instead of Area Conversion and Forcewall, it has Aggressive Spread and Rust Construction (Raise Wall). It can delimb, but only cultists, with a delay. It has an aura of decay, corroding the environment and withering enemies near it, but it's VERY fragile. Rusting cultist item dispensers will now cause them to turn into a Heretic object. Altars turn into small heretic runes, Archives turn into Codex Cicatrixi, Forges turn into Mawed Crucibles. Ideally, Heretics would be able to gain an amount of these new powers and use them to turn the tide against the cultists, amassing their power and almost forming a sect of their own in turn which sweeps over and converts the cult. ### Cultists When a Cultist sacrifices a heretic, two things will happen: - A new item will be available for creation at one of the dispensers. - The Heretic will be trapped inside a powerful Haunted Blade. `/obj/item/melee/cultblade/haunted` ` name = "haunted longsword"` ` desc = "An eerie sword with a blade that is less 'black' than it is 'absolute nothingness'. It glows with furious, restrained green energy."` This blade will be stronger across-the-board than a normal cult sword, and will even allow those who wield it to cast one heretic spell from their previous path. The only downside? The heretic can also cast one spell. It's up to the trapped spirit if it wants to help you, or be a nuisance. The unlocked items are: - The Cursed Blade, again. For cultists, it can be used to draw runes twice as fast as usual, and they can even right-click it to teleport to safety, just like a heretic! - The Crimson Focus, again. Cultists are twice as fast at carving spells into their body, and they gain a 5th spellslot as long as they wear the amulet. It still causes hemophilia and grants weak regeneration. - The Proteon Orb. This orb will create a gateway to Nar'sie's own realm, spawning one Proteon every 15 seconds, which ghosts can possess. The gateways cannot be placed close to one another. Originally, they were going to be able to create a Harvester Shell, but there were some concerns of it being too OP. The true Bastard sword has been fully deleted. The null rod conversion has been changed to a Bloody Halberd instead. I'm considering re-enabling Stun Hand on Heretics, with Mansus Grasp stats. ### Other All the items above can be used by both Heretics and Cultists, no matter how they were first created. Hell, even normal crew can use them! This is probably not the best idea a lot of the time, though. There are a lot of other changes in this PR. A loooooot. I will likely miss some in the changelog, but I'll try to be as thorough as possible. There's probably also some leftover garbo that I didn't find and clear out yet. ## Why It's Good For The Game Cult and Heretics, despite being mortally opposed, have very few interactions with eachother, especially now that the Blade's gone. The only thing of note is just the Heretic's unfair complete resistance to stun hand, which is only marginally better than the alternative. This PR will reintroduce their animosity, and give both sides a very, very good reason to fight eachother. The Cult will gain a sick sword that keeps the heretic in the game, and unlike with the original implementation, will recieve a cult-wide bonus in the form of a powerful, well deserved, and fun new item to summon. The Heretic will gain powerful trinkets and knowledge from the sacrifices, incentivizing them to become a terrifying cult-hunter. And if they do succeed in wiping out the cult, they will have quite the rewards to help with their ascension. The crew, while mostly unaffected, will have a damn good reason to not just Side with the heretic, out of fear of what they may become after the cult is stomped down. They can also use a few of the items here in an attempt to get one up on either side, as long as they manage to stay clear of the side-effects. Let the heretics eradicate the apostates. Let the cultists root out the heathens.  The haunted longsword creates an aura of darkness (disabled for the cultist for the image) Sprites... are not great. Hopefully someone comes by and improves them. code: Added get_inactive_hand() as an easy shortcut for carbons code: Wall walker element can now accept a trait for wall-checking fix: Fixed soulsword component being unable to invoke the post summon callback refactor: Turned Heretic rust turf healing into an element, given to Rust Walkers and Rusted Harvesters refactor: Converted Limb Amputation from an element to a component Blade and Sword sprites by meyhaza!!! I did the inhands though. Cuz im cool |
||
|
|
b540aaf8ab |
[MIRROR] Afterattack is dead, long live Afterattack (#28128)
* Afterattack is dead, long live Afterattack * wew * fixes --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com> |
||
|
|
ff6b41aa07 |
Afterattack is dead, long live Afterattack (#83818)
## About The Pull Request - Afterattack is a very simple proc now: All it does is this, and all it's used for is for having a convenient place to put effects an item does after a successful attack (IE, the attack was not blocked)  - An overwhelming majority of afterattack implementations have been moved to `interact_with_atom` or the new `ranged_interact_with_atom` I have manually tested many of the refactored procs but there was 200+ so it's kinda hard ## Why It's Good For The Game Afterattack is one of the worst parts of the attack chain, as it simultaneously serves as a way of doing random interactions NOT AT ALL related to attacks (despite the name) while ALSO serving as the defacto way to do a ranged interaction with an item This means careless coders (most of them) may throw stuff in afterattack without realizing how wide reaching it is, which causes bugs. By making two well defined, separate procs for handing adjacent vs ranged interactions, it becomes WAY WAY WAY more easy to develop for. If you want to do something when you click on something else and you're adjacent, use `interact_with_atom` If you want to do something when you click on something else and you're not adjacent, use 'ranged_interact_with_atom` This does result in some instances of boilerplate as shown here:  But I think it's acceptable, feel free to oppose if you don't I'm sure we can think of another solution ~~Additionally it makes it easier to implement swing combat. That's a bonus I guess~~ ## Changelog 🆑 Melbert refactor: Over 200 item interactions have been refactored to use a newer, easier-to-use system. Report any oddities with using items on other objects you may see (such as surgery, reagent containers like cups and spray bottles, or construction devices), especially using something at range (such as guns or chisels) refactor: Item-On-Modsuit interactions have changed slightly. While on combat mode, you will attempt to "use" the item on the suit instead of inserting it into the suit's storage. This means being on combat mode while the suit's panel is open will block you from inserting items entirely via click (but other methods such as hotkey, clicking on the storage boxes, and mousedrop will still work). refactor: The detective's scanner will now be inserted into storage items if clicked normally, and will scan the storage item if on combat mode /🆑 |
||
|
|
e5ff63b468 |
[MIRROR] Gives a unique sprite to envyknife (#28121)
* Gives a unique sprite to envyknife (#83837) ## About The Pull Request This pr gives a unique sprite to envyknife which is made by sylvia-from-fulp-station which looks like  and how it looks bloodied(i personally i think the overlays look pretty cool this way)  ## Why It's Good For The Game Currently envyknife looks like a cult dagger which can be mistaken from an auctall antag this gives the envy knife a little more personality as a lavaland ruin item ## Changelog 🆑 sylvia-from-fulp-station image: Adds a unique sprite for envyknife /🆑 * Gives a unique sprite to envyknife --------- Co-authored-by: Nick <jughu1@hotmail.com> |
||
|
|
bb0fdb57c3 |
Gives a unique sprite to envyknife (#83837)
## About The Pull Request This pr gives a unique sprite to envyknife which is made by sylvia-from-fulp-station which looks like  and how it looks bloodied(i personally i think the overlays look pretty cool this way)  ## Why It's Good For The Game Currently envyknife looks like a cult dagger which can be mistaken from an auctall antag this gives the envy knife a little more personality as a lavaland ruin item ## Changelog 🆑 sylvia-from-fulp-station image: Adds a unique sprite for envyknife /🆑 |
||
|
|
b18fa6dbcc |
[MIRROR] Icemoon Comms agent (#28053)
* Icemoon Comms agent * Update mining_roles.dm --------- Co-authored-by: DATAxPUNGED <44149906+DATA-xPUNGED@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com> |
||
|
|
f7d75ea3b8 |
[MIRROR] Graveyard update take two (#27970)
* Graveyard update take two (#83567) ## About The Pull Request **PR body copied from last PR (#83149). I fucked something up (I think by leaving dream maker open while trying to fix the merge conflicts?) and rather than try and walk backwards I'm just making a new branch.** This implements the digging of graves on most soil/dirt/planetary type turfs, and gives the coroner their own private burial ground. **Change 1 - Gravedigging:** You can right-click planetary/dirt/grass tiles using a shovel or shovel subtype (or entrenching tool). Speed varies on the type of shovel you are using. This creates a Makeshift Grave, an unmarked burial mound (different from the ones at the elephant graveyard). This is handled through the new gravedigger component, which is mostly unremarkable but worth mentioning in case anyone wants to add this behavior elsewhere. **Change 2 - Icebox Morgue Graveyard:**  The icebox morgue now has private burial ground, sealed off by a fence. Mourners are expected to keep out and perform their grieving at the appropriate distance. This does not affect the chaplain's burial ground, which is publicly accessible from the outside. This gives a more secure place to bury bodies (I'm sure someone will have a reason for this some day) and may lead to fighting over corpses, which I think is funny. Also, there might be some goodies left in those graves, but you wouldn't go graverobbing just for some useless loot, would you?? This also adds a new area type, graveyard, which is mostly just the icemoon outdoors with the spooky ambiance of the morgue.  ## Why It's Good For The Game Now you can bury your friends in an unmarked grave! Bury people alive! Bury your treasure, or reminders of the sins you've committed! Bury anything, anywhere you want! The morgue graveyard is a nice bit of flavor. I know the Chaplain already gets one (I forgot this when I started this PR though) but the Coroner is an equal-if-not-more-important corpsekeeper than them. ## Changelog 🆑 Rhials add: Shovels and entrenching tools can be used to dig graves on asteroid/dirt/etc. surfaces. Neat! add: The Icebox Morgue has been given a fenced-off graveyard in the back. code: burn_tile() is no longer double-defined on asteroid turfs. /🆑 * Graveyard update take two --------- Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com> |
||
|
|
52a7844909 |
[MIRROR] [NO GBP] Only filled graves will provide a mood modifier (#28045)
* [NO GBP] Only filled graves will provide a mood modifier (#83752) ## About The Pull Request Only the "filled" subtype of graves will provide a mood debuff (buff if you're a coroner). This means that graves that spawn with loot/remains, such as the two featured on the icebox coroner graveyard or the ones in the Elephant Graveyard Lavaland ruin, will impact your mood. The unfilled graves at the icebox chapel/morgue will not affect mood, nor will recently created ones.  ## Why It's Good For The Game It makes a bit more sense. You shouldn't be beating yourself up over graverobbing when you aren't actually disturbing anyone's grave, especially when it lines up with what the actual mood event text says. Closes #83704. ## Changelog 🆑 Rhials fix: Only filled graves will impact your mood. /🆑 * [NO GBP] Only filled graves will provide a mood modifier --------- Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com> |
||
|
|
57744f6622 |
Icemoon Comms agent (#83404)
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may not be viewable. --> <!-- You can view Contributing.MD for a detailed description of the pull request process. --> ## About The Pull Request Adds a comms agent to icemoon, similar to the one that can spawn in space <details> <summary>Image (spoilers, kind of)</summary>  </details> <!-- Describe The Pull Request. Please be sure every change is documented or this can delay review and even discourage maintainers from merging your PR! --> ## Why It's Good For The Game Icemoon is sorely lacking on ghost roles, this should help with that somewhat. <!-- Argue for the merits of your changes and how they benefit the game, especially if they are controversial and/or far reaching. If you can't actually explain WHY what you are doing will improve the game, then it probably isn't good for the game in the first place. --> ## Changelog <!-- If your PR modifies aspects of the game that can be concretely observed by players or admins you should add a changelog. If your change does NOT meet this description, remove this section. Be sure to properly mark your PRs to prevent unnecessary GBP loss. You can read up on GBP and it's effects on PRs in the tgstation guides for contributors. Please note that maintainers freely reserve the right to remove and add tags should they deem it appropriate. You can attempt to finagle the system all you want, but it's best to shoot for clear communication right off the bat. --> 🆑 add: NT reports indicate that the Syndicate have increased listening activities on Icemoon, crew is advised to watch out for possible communication interference. /🆑 <!-- Both 🆑's are required for the changelog to work! You can put your name to the right of the first 🆑 if you want to overwrite your GitHub username as author ingame. --> <!-- You can use multiple of the same prefix (they're only used for the icon ingame) and delete the unneeded ones. Despite some of the tags, changelogs should generally represent how a player might be affected by the changes rather than a summary of the PR's contents. --> |
||
|
|
6187b64ef9 |
[NO GBP] Only filled graves will provide a mood modifier (#83752)
## About The Pull Request Only the "filled" subtype of graves will provide a mood debuff (buff if you're a coroner). This means that graves that spawn with loot/remains, such as the two featured on the icebox coroner graveyard or the ones in the Elephant Graveyard Lavaland ruin, will impact your mood. The unfilled graves at the icebox chapel/morgue will not affect mood, nor will recently created ones.  ## Why It's Good For The Game It makes a bit more sense. You shouldn't be beating yourself up over graverobbing when you aren't actually disturbing anyone's grave, especially when it lines up with what the actual mood event text says. Closes #83704. ## Changelog 🆑 Rhials fix: Only filled graves will impact your mood. /🆑 |
||
|
|
ab9cc35c48 |
Graveyard update take two (#83567)
## About The Pull Request **PR body copied from last PR (#83149). I fucked something up (I think by leaving dream maker open while trying to fix the merge conflicts?) and rather than try and walk backwards I'm just making a new branch.** This implements the digging of graves on most soil/dirt/planetary type turfs, and gives the coroner their own private burial ground. **Change 1 - Gravedigging:** You can right-click planetary/dirt/grass tiles using a shovel or shovel subtype (or entrenching tool). Speed varies on the type of shovel you are using. This creates a Makeshift Grave, an unmarked burial mound (different from the ones at the elephant graveyard). This is handled through the new gravedigger component, which is mostly unremarkable but worth mentioning in case anyone wants to add this behavior elsewhere. **Change 2 - Icebox Morgue Graveyard:**  The icebox morgue now has private burial ground, sealed off by a fence. Mourners are expected to keep out and perform their grieving at the appropriate distance. This does not affect the chaplain's burial ground, which is publicly accessible from the outside. This gives a more secure place to bury bodies (I'm sure someone will have a reason for this some day) and may lead to fighting over corpses, which I think is funny. Also, there might be some goodies left in those graves, but you wouldn't go graverobbing just for some useless loot, would you?? This also adds a new area type, graveyard, which is mostly just the icemoon outdoors with the spooky ambiance of the morgue.  ## Why It's Good For The Game Now you can bury your friends in an unmarked grave! Bury people alive! Bury your treasure, or reminders of the sins you've committed! Bury anything, anywhere you want! The morgue graveyard is a nice bit of flavor. I know the Chaplain already gets one (I forgot this when I started this PR though) but the Coroner is an equal-if-not-more-important corpsekeeper than them. ## Changelog 🆑 Rhials add: Shovels and entrenching tools can be used to dig graves on asteroid/dirt/etc. surfaces. Neat! add: The Icebox Morgue has been given a fenced-off graveyard in the back. code: burn_tile() is no longer double-defined on asteroid turfs. /🆑 |