This shit is just full of issues that keep popping up and frankly I can't be fucked to deal with them.
Note: I'll probably do the same thing again but very simplified later on. This iteration is a mistake in how much of a mess it is, unfortunately.
Now this might actually be the last of the ports before I actually code things I swear.
Ports Baystation12/Baystation12#25773 and adds sprinting by holding the shift key, also adding the option to add more movement intents for species with their own slowdown etc etc.
The lifeless live again. Or in this case, what never actually lived here.
Ports Baystation12/Baystation12#17460 probably for real this time. What this allows us to do is create shuttles on runtime and make shuttles easier by just making landmarks and a shuttle instead of areas and shuttles. Also allows runtime landmark creation via flares or whatever AND allows shuttles to use different landmarks at will.
I removed most of the overmap stuff, I think. It shouldn't be hard to slam it in whenever we need to.
Changes:
"Shuttle code has been completely reworked."
"Shuttles can now be modified to have more than one destination."
"Shuttles now have a takeoff sound."
"You can now throw mobs against walls to damage them. A lot."
"You now need a neckgrab to throw mobs."
"BEING UNBUCKLED DURING SHUTTLE LAUNCH IS DANGEROUS! Don't do it."
"Adminghosts can now interact with all shuttles."
Turns the z-level restriction procs into macros
Changes z-level restrictions to use the macros
Use contact_levels for announcements (instead of player_levels)
Restricts the teleporter to station_levels instead of player_levels
Restricts AI tracking to station_levels instead of player_levels
Mechs only get tracking beacons if they are on station_levels (instead of player_levels)
Construction Drones gib if they enter a station level
Mining Drones gib if they leave the station levels
Removes the mining equipment vendor from the scrapheap
Changed the spawning mechanics of hivebots and expanded their roster with three new types, Bomber, Guardian and Harvester.
Tweaked the slime infestation event to be a bit more colorful and spawn a couple more slimes than currently.
Made it so infestation events no longer trigger outside the station at shuttle docks,, inside xenobiology cells, substations, at centcomm or outside etc.
Fixed the prison break event from not working correctly with virology, added a chance for it to happen at the bridge.
Fixed some announcements missing their custom titles. Particularly those used by random events. Tweaked their font and size.
This PR will lead us towards the Promised Day, for in its wake there shall be much celebration and ecstasy as this world becomes a world suitable for developer hegemony. The first strike is thusly;
All << is converted into to_chat().
Adds telescience inhibitors to the station. These are fragile, powered machines that inhibit where bluespace activity can occur. The way it works is that it creates an 8 radius (16 tile wide) circular field that displaces any incoming or outgoing bluespace signal to an unintended destination just outside the area of effect.
Basically, incoming teleport signals are redirected to around a random location around the circle, and outgoing teleport signals are redirected to around a random location around the circle. For example, if a ninja was inside the area of effect and tried to teleport outside of it, it wouldn't work but instead teleport something else around me just outside the circle. This will very rarely occur, so most that will happen is that the ninja won't be able to teleport while inside the area of effect. If a ninja was outside the area of effect and tried teleporting inside the circle, they would instead teleport to a random location outside the circle.
A semi-intended side effect is that it would be harder for ninjas/wizards to break into the armory/vault/ai core. Of course, they could use other tools and walk inside the vault. This does not stop them from ever entering it, but makes it unsafe to teleport out.
EMPing a bluespace inhibitor teleports everything in a 20 tile radius to a random location on the station. This teleportation is "safe" and will only teleport the objects in a random station area in unoccupied space.
Overview
Makes it so that the infestation overhaul is better coded and works better with any station. Instead of picking from a set of 8 areas (2 which don't exist) it picks from any of the station areas without players currently in them.
It also removes some of the more dumber spawns (yithians who exist in the sea, and diyaabs which I don't fucking know.), and replaces them with even dumber spawns such as BLUESPACE BEARS and HIVEBOTS.
Details
Spawns are based on event severity. A minor severity spawns mice and lizards. A moderate one spawns space bats and baby slimes. A major one spawns bluespace bears and hivebots. The chosen spawns can be any area on the station, however some places are limited. The limitation is based on area as well as if there are any players currently present in the area. Don't want bluespace bears to teleport on people.
Overview
Adds Battle Monster cards. Battle Monsters is a collectable card game clone like Yugioh or magic the gathering. Players can purchase card packs and use them in games with actual rules to them.
Checklist
Card Generation Framework: 100%
Sprites: 80%
Game Rules: 90%
Deck Framework: 5%
Monster Cards: 20%
Spell/Trap Cards: 5%
Obtainable Status: 0%
changes:
Fixed an issue where the incorrect title screen would be loaded.
Renamed the titlescreen states for organization's sake.
Split up Space Station 13 areas.dm into multiple categorized files in maps/_common/areas.
Deleted a few unused areas.
Fixes#3690
Changed blast door orientation on many blast doors across the station, and one few in CC as well, provided picture is only example. Changed blast doors are in areas: Bridge, Cap office, Research, Security, Engine, CC departures. That should be it, I think.
Fixes#3716Fixes#3708Fixes#3706Fixes#3704Fixes#2937
Also reversed APC sprites on sideways directions.
Fixes#3725Fixes#3723Fixes#3457Fixes#3159Fixes#3140
changes:
Maps are no longer compiled in, instead loaded directly from the DMMs at runtime.
Z level defines have been moved from the config to map datums.
Unit tests now use typecaches.
DMMS now actually works.
DMMS has been updated slightly.
DMMS is now capable of loading simple lists of non-text types.
DMMS is now faster when loading many types without mapped in attributes and when loading area instances.
Asteroid generation is now defined on the map datum instead of being hard-coded in SSasteroid.
Holodeck presets are now defined on the map datum.
Atmos machinery now uses Initialize().
- Remap: Atmopsherics.
- Remap: Captain's Office.
- Remap: Head of Staff Conference Room.
- Remap: Chief Medical Officer's Office.
- Remap: Medical Briefing Room.
- Remap: Security Processing and Holding Cell.
- Modification: Robotics Laboratory.
- Addition: Desk Ringers in several locations.
- Fix: #3391, #3374, #3345, #3341, #3308, #3306, #3277, #3244, #3173,
#3094.
- Several other minor changes.
- A new subtype of folder has been sprited for the Security folders.
- More colours of flooring decals were added.
- New colours for pipes were added (Lohikar).
Mostly aims to reduce meaningless proc-calls in Move() and forceMove(), also inlines the rest of the power calculations in SSmachinery to remove a lot of proc-calls.
changes:
SSlighting is now FIFO - lights are processed in the order they are received instead of by whatever one was queued most recently.
Instant lighting updates now check CURRENT_TICKLIMIT instead of ITL. ITL has been removed due to it no longer being used.
SSlighting will no longer double-process lighting datums that have already been processed by instant lighting.
Instant/Intelligent lighting updates can now be disabled via. compile-time define.
Sunlight should no longer shine indoors.
Directional lighting now properly updates on direction changes again.
/datum/light_source/novis has been renamed to /datum/light_source/sunlight.
More lighting microoptimizations.
Converted two storage lists to be lazy.
This pr adds the second essential part of the merchant's implementation, mapping the merchant's shuttle, base and the dock. And more merchant related fixes and tweaks.
changes:
Ported some timer fixes from /tg/ (timerid overflow fix, invalid deltimer logging)
Removed pointless air alarm elections.
Cleaned up some area code and moved area var definitions into areas.dm.
The nuke now only destroys Zs connected to the Z it detonates on. (Fixes#2552)
The nuke no longer destroys CC.
Nukes now dust mobs.
Cascades now dust all mobs on all non-admin levels.
Fixed a bug where SSexplosives would not honor the is_rec var.
Improved the efficiency of /proc/random_station_area().
Bluespace Bugs can now teleport out again.
Bluespace Technicians can now turn off their x-ray vision without needing to remove their glasses.
Human-types no longer make footstep sounds when lying down, unconscious, or dead.
changes:
Holomaps now use an area flag instead of a proc to determine which areas do not draw on the holomap.
The supply shuttle once more has a roof.
The supply shuttle's landing zone is now dynamically lit.
Turfs only generate visibility updates on Initialize() after mapload - visualnet is not initialized by then anyways.
Merged /datum/gas_mixture/(init) into /datum/gas_mixture/New().
Converted a ZAS proc into a macro.
Made ZAS attempt to remove a turf from a zone instead of always rebuilding it in a certain case.
Macroized two misc procs.
Fixes#2947.
changes:
The station's holodeck is now dynamically lit.
Improved quick-pickup's tick checking & converted to assoc lists instead of if (thing in list).
Fixed an edge case where openspace overlays would not properly cleanup on forceMove to a non-turf.
Fixes#2941.
changes:
Roof auto-gen is now off by default and must be turned on at the area level.
Fixed#2921.
Added a unit test to check if all station areas have a roof.
Slightly tweaked how baseturf is populated; should be functionally the same.
Adds a second OR.
Moves the engine radiator to the lower side of the asteroid.
Revises the quantity of newscasters and emergency lockers around the
station.
Fixes the missing tile in the Pool.
Removes the chapel and replaces it with a holodeck.
Replaces the old holodeck with a pool/gymnasium.
Properly sets up the holodeck, mapwise. All holorooms have been adjusted to be the appropriate size for the now slightly smaller holodeck (7x10).
The Chaplain now has an office above hydroponics, which has all of his necessary things - crematorium, morgue tray, tools of office, and even a slight semi-confessional for private council.
Adds a chapel to the holodeck, for when the chaplain wishes to conduct a service. Additional holodecks for specific lore-religions are pending.
Adds a gymnasium holoroom.
changes:
Fixes copy_contents_to not working.
Fixes elevators attempting to spawn roofs when it didn't really make sense.
Minor efficiency tweaks in move_contents_to and elevators.