* Begins work on the Industrial expansion, ft hidden Lore
* Removed Painite, Quartz, and Void Opal from generation pending their eventual uses. Recipes modified to use them have been reverted of this use.
Fix Fix.
* Reset map to master.
* Add copper to Robotics, R&D, Engineering, and EVA.
* Baseline work for Department Goals. Implements round-end stats, based in 3 categories of roughly-more-interesting to less interesting.
* Active Goal Separation.
* Map.
* Actually does the second half of this in this PR instead of a different one.
Shuttle tiles, default floors are still "regular".
Lava, sand, water, grass, beach, mining turfs all have sounds playing now for each footstep. <3
A small balance note - water tiles slow you down by 4, and 8 for deep/ocean tiles. I'll remove these and put them in a separate PR if requested.
Massive credit to @Arokha for helping me figure out the floor system and sitting through getting it put together. <3 <3 <3
Fixes the bug in xenoarchaeology where there was a significant chance an artifact would break or come out as a strange rock, even when you did everything correctly. Now that only happens if you did the excavation wrong.
* Adds Imperion sprites.
* Adds more Xenoarch sprites (most from Schnayy)
* Adds Precursor tech and Anomaly tech.
* Adds Precursor and Anomaly machine components. Machines tweaked to allow usage.
* Bioprinter can print random-species organs with Precursor tech.
* Adds Verdantium, Lead, and Marble to mining.
* Marble rebalanced to compensate.
* Tweaks Xenoarch find spawning
* Xenoarch can now find Imperion circuits (useless for now).
* Xenoarch can now find boats, and sometimes an oar, of a random material.
* Particle smasher added to make Morphium, Valhollide, and Supermatter.
* Morphium and Verdantium coins added.
* RnD machines can accept more materials. No recipes tweaked.
* Untangle xenoarch from mining somewhat
* professionalism
* sonic jackhammers only for artefact-safe tunnelling
* destroy artefacts code disabled on everything
* Yes, all of them.
* Also did a few corrections to redundant New() and broken Destroy() along the way
* Renamed the turf_initializer.initialize() proc to InitializeTurf to avoid confusion.
* Subsumed /area/proc/initialize into /atom/proc/initialize() - Made /area's LateInitialize to get same behavior as before.
* The performance of the radiation controller as-is was not fast enough for inclusion in production servers, but it has some nice featuers, so rewrote it to be more performant.
* Instead of storing the radiation strength for every turf, we only store the sources of radiation, and calculate the strength only for mobs who might be in range.
* Old method was ray-tracing to every turf in range whether anything was there to be irradiated or not. Could be hundreds of turfs. New method only lazily calcualtes strength at a turf if we actually need to know it. Often times this is zero turfs if nobody is standing in engineering.
* Removed the automatic processing of objects with "rad_power" set. Objects are responsible for calling the repository to create/update their radiation sources. Saves some extra overhead that in practice was redundant with other process controllers.
* Also tweaked to be more respectful of qdel'd objects and added some comments.
* Mining turfs generated during random mapgen get their opacity changed
without a call to recalc_atom_opacity() becuase the game ticker has not
started. Make sure we call it even before that point.
Adds a new type of turf, which is a cracked asteroid floor. It is functionally a space tile, which means air can escape through the cracks and into the void. These cracks can be plugged by building a floor over them using rods and tiles. The cracks are generated randomly along with the asteroid whenever a floor is placed, with a 1 in 10 chance of it being a cracked floor.
Explosions can now expose ore from underneath asteroid turf, so now Toxins has an actual use besides griefing. The amount of ore you get depends on the same circumstances as drilling down, however explosions tend to cause some loss in minerals obtained. Hopefully the vastly faster method of exploding the asteroid instantly will prove to be viable.
Fixes auto blindness and no click on 510 servers, lessens the lag of
mesons and material scanners, and I suspect the general speed as well.
I only made it work for Polaris (and by extention, to our server, Eros),
and adapted it a bit.
Ported from:
7c2cc890ab