Runtime map now has a bunch of new areas / items with often-tested
stuffs, and some hard-to-put-at-runtime stuffs.
Runtime map jobs now are positioned to make it faster to reach the
aforementioned often-tested stuffs.
Runtime map doesn't generate an overmap anymore by default, which speeds
up the process.
Runtime map now loads in ~11 seconds instead of ~40 seconds as it was
before.
Updated the maploader to be faster in parsing maps.
Bapi is not engaged anymore if we're only measuring the map size, which
speeds up the process.
In fastboot we do not generate the codexes anymore, which speeds up the
process.
In fastboot and if exoplanets and away sites are not enabled, we do not
parse the map templates anymore, which speeds up the process.
Updated the icon smoothing to be faster.
Optimized cargo area code.
Other optimizations.
Refactored the attack proc signature.
Added signals and components for the attack proc.
Added signals and components for the attackby proc.
Adjusted some leftover attackby procs signatures.
Added grep test to ensure people don't keep adding attack/attackby procs
with the wrong signature.
This adds the Goshawk heavy autocannon to the game, intended as a
generic gun emplacement available to be mapped into any appropriate
offship.
The AP shots are intended to be the weakest, but they do a lot of damage
on the off-chance they do hit someone. AP fires twelve shots, frag fires
nine, and HE only fires six - obviously ICly every salvo is the same
size, this is just for balance. As is currently, I'd say this is a
little stronger and generally a bit more versatile than the grauwolf.
**This is up for review.**
Credit to Noble for the spriting!
Corrects the erroneous fore_dirs of a few ships and shuttles so they
function properly in ship combat. Updates a few of the visitable/ship
variables with dmdocs for clarity.
Refactored the projectile code, mostly in line with TG's now.
Refactored various procs that are used or depends on it.
Projectiles can now ricochet if enabled to.
Damage falloffs with distance.
Homing projectiles can now have accuracy falloff with distance.
Projectiles have a maximum range.
Muzzle flash is configurable per projectile.
Impact effect of the projectile is configurable per projectile.
Accuracy decreases with distance.
Projectiles work with signals and emits them, for easy hooking up from
other parts of the code.
Meatshielding is now less effective .
Impact sound is now configurable per projectile.
High risk.
Updates alignment variable for colonized lore planets such as Moghes and
Biesel
Alignment now shows for exoplanets
---------
Co-authored-by: Ben10083 <Ben10083@users.noreply.github.com>
Refactored hitby to be in line with TG's version.
Refactored item weight defines to a more clear naming scheme, also in
line with TG's version.
Refactored how the movement bumps are handled, ported signals to handle
them, in preparation for the movement update.
Fixed disposal hit bouncing the hitting atom on the wall.
Items do not push other items anymore if they are tiny.
Splits the current survey probes into two types: Atmosphere and Ground,
as well as adding a Geomagnetic variant. Replaces some of the currently
mapped in atmosphere probes with the two other types.
Made relaymoves uniform in function header and non sleepable.
Improved IPC/borg recharger, made it time constant.
Tweaked client/Move() to avoid a range(), moved a relaymove around to
fix a bug, some minor tweaks.
Fixed IPC/borg recharge station not taking the IPC/Borg in on bump.
Fixed certain bugs on the sensor relay as well as tidied up and moved a
few things around.
Also added a generic version of the sensor relay's large sensor suite,
for use by other away sites/ships. See IDB for the sprite.
CL:
- bugfix: Fixed the sensor relay away site having locked airlocks and
undeconstructable windows, alongside other misc changes.
- rscadd: Performed other various map tweaks and cleanup to the sensor
relay.
- imageadd: Added a generic variant of the sensor relay's sensor suite,
intended for other away sites. Replaced the sensor relay's Solarian
paintjob into its own variant.
Standard examination was in an examine box. This makes it so fluff
examines are also in a box.
Fixes#18438
---------
Co-authored-by: Cody Brittain <cbrittain10@live.com>
Cleaned up the examination code a bit, added signal for atom
examination, DMDoc'd, SDMM headers.
Refactored mech missing parts code to be included in the examination.
Moved atom examine code to a separate file.
Refactored the machinery operable procs into a single one, DMDoc'd, SDMM
marked, made more readable.
Fixed suspension field generator not being able to be used as it was not
checking the power cell for operability.
Fixes#19249
Very small fixes to PRA-related sites like the people's station and
headmaster, as well as code comment improvements to some files.
People's Station frankly has alot of bugs in part due to the system
being designed around ships, not stations
---------
Co-authored-by: Ben10083 <Ben10083@users.noreply.github.com>
Refactored fire_act() to be in line with TG version, removed useless
parameter, added signal, made non sleepable and forced to call parent.
Added atom_act.dm file for the various *_act procs.
A significant amount of influence was taken from
https://github.com/Baystation12/Baystation12/pull/33255, however adapted
to Aurora. Key things to note is the port of the newer alpha settings
from /tg/, among other improvements.
The ancient holographic and screen overlay code has been purged. This is
now handled with emissives, while holograms are handled with filters as
well.
---------
Co-authored-by: Cody Brittain <cbrittain10@live.com>
Flips the sensor and landing control sprites for the canary consoles so
they'd fit on the opposite sides, swaps the pipes around for the fuel to
thrusters, to accomodate moving the pump for the fuel can inside, and
shifts the sensors and engine control consoles around so the WSO has the
Sensors and gun, and the pilot has the engines, landing control, and
helm.
Requested by Firstact.
Outpost blueprints will now attempt to set z-levels when used if the
z-level list is empty. Previously, if mapped in on pretty much anything
other than an exoplanet ruin, they would initialize before the exoplanet
z-levels were created and fail to register the z-levels.
They will also only display a planet's randomly generated name rather
than the full version with the planet type - e.g "Johnson-Zeta" rather
than "Johnson-Zeta, a barren exoplanet".
Our SSOverlays system is outdated, and is likely the cause of many of
the issues seen in #18895. It has also been linked to a massive server
performance decrease.
This brings an updated system from Baystation, hopefully with speed
increases.
Should be testmerged, ideally with #18895.
---------
Co-authored-by: Cody Brittain <cbrittain10@live.com>
Sensors, IFF beacons, and thrusters can now be built with circuit
boards.
Ship sensors consoles will no longer throw an error if their sensors are
deleted or destroyed.
Thrusters and other unary atmos machines now take their initial dir from
the machine frame like other machines rather than requiring modification
of the circuit board item.
Reworks blueprints to use an eye component for area selection and
changing. Blueprints will now work on whichever overmap site they spawn
on if overmap is enabled, though currently they have only been added to
the Horizon.
Adds shuttle-modifying blueprints for altering shuttle areas and
exoplanet outpost blueprints for creating areas on exoplanets. A set of
outpost blueprints and a lockbox containing blueprints for the Horizon's
shuttles have been added to the CE's locker.
Moves eye creation to a component.
Ported from:
https://github.com/NebulaSS13/Nebula/pull/465https://github.com/NebulaSS13/Nebula/pull/564https://github.com/NebulaSS13/Nebula/pull/3046
Unified most of the procs into one definition, so there are no duplicate
around the codebase.
Marked some of the above as overridable if a good enough case can be
made for them (eg. external dependency or unlikely to be used).
Real HE Bruiser rounds now make a bigger explosion, on par with similar
high-explosive ship ammunition. The old values have been applied to the
makeshift bruiser shell.
Renames the makeshift bruiser rounds to make the differences more
apparent, and adds new descriptions to the guns and shells providing
up-to-date lore.
Adds several more exoplanet versions of normal turfs, intended for use
in future Uueoa-Esa ruins.
These include diona biomass, silver, gold, more wood types and marble.
Also adds marble walls for mapping.
Fuel ports can now be constructed out of steel and attached to walls.
This means that a shuttle losing its fuel port will no longer require
admin intervention to fix.
Fuel ports can also be now be removed from shuttles by welding and
wrenching them.
Part 2 of the PR series to bring /tg/'s and bay's plane masters to
Aurora, the lack of which is blocking several features we want.
This ports over the easier to understand Bay version of plane masters,
which is detailed in the relevant readme file in the code. Example
effect code for a warp effect is also in, which has been implemented for
gravity catapults.
Relies on #18741
---------
Signed-off-by: Matt Atlas <mattiathebest2000@hotmail.it>
Co-authored-by: Cody Brittain <cbrittain10@live.com>
Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
The exoplanet turf variants of non-exoplanet turfs (tiles, wooden
floors, etc) will no longer generate underground resource deposits. This
prevents underground resource images from showing up on these turfs,
because it generally looks weird to see a gold deposit pop up on
someone's floorboards.