Commit Graph

69 Commits

Author SHA1 Message Date
Lohikar
61b5203d24 Runtime Map Loading (#3597)
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().
2017-10-18 23:07:34 +03:00
Ron
cb5e227320 Converts some istype's to use helpers (#3224)
Converts various istype's to use helpers. Mainly:
Cable
Wrench
Screwdriver
Multitool
Crowbar
Wirecutter

And makes the helpers defines.
2017-08-06 22:08:42 +03:00
Alberyk
2f949ecb45 Ports baystation armor system (#2954)
Ports Baystation12/Baystation12#12658

Changing how the calculation of armor works , instead of just being a check if it is protected fully, half or nothing. Making armor more reliable and less rng dependant.

Also, uranium meteors will irradiate nearby people when they explode.
2017-07-15 16:24:03 +03:00
Lohikar
b5472e50f4 Convert a fuck ton of machines to Initialize() (#2985)
Needs testing, but shouldn't break anything. Also adds Destroy() to the SMES base class.
2017-07-14 20:08:59 +03:00
LordFowl
077196f0d1 Removes the Chapel, Reverts God. (#2739)
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.
2017-07-01 17:54:56 +03:00
Lohikar
0db557ac29 machinery_process() & auto_use_power efficiency tweaks (#2657)
changes:

Machinery now uses machinery_process() instead of process(), allowing machines to be put into SSprocessing-style lists in addition to the machinery list.
Automatic power calculations now involve less proc-calls.
2017-06-12 19:09:36 +03:00
Lohikar
03bf22eee6 Convert most mobs to Initialize() (#2540)
I'm sure this won't break anything at all.
2017-05-31 22:58:54 +03:00
Ron
790480c8da Removes all \red and \blue's (#2309)
Removes all \red's and \blues in favor of span classes. \red things that were bold were replaced with danger because it's warning but bold.
2017-05-21 12:07:57 +03:00
skull132
a073f5c111 Merge branch 'master' into development 2017-05-16 14:46:36 +03:00
Ron
85bd1a69f6 Bug Fixes (#2282)
Fixes #2125
Fixes #2048
Fixes #1690
Fixes #1689
Fixes #1667
Fixes #1089
Fixes #1971
Fixes #1848
Fixes #1190
Fixes #2139
Fixes #2111
2017-05-16 13:57:30 +03:00
Lohikar
f6dc33a465 Newmap - SMC, Openturf, Arrivals Controller, and Mine Turf Improvements (#1958)
* Replace SSingulo with SScalamity; processing cleanup
- SScalamity now handles blobs as well as singularity-types.
- Processing subtypes have been simplified to not require a stop_processing definition.

* this is probably important

* Remove cascade disabling SSgarbage

* Fixed a bug where dust() did not qdel the target mob

* Misc fixes

* Fix decals surviving break-to-plating

* Subsystem flag tweaks

* Apparently subsystems are new'd before config is.

* Fix paper icons

* Speculative fix for insane lag

* Better machinery stat

* Make organs not use SSoverlay

* Misc bugfixes & tweaks

* Nightmode fixes

* Changelog for SMC

* Port /tg/'s improved MC crash handling

* Add some more SS Recover() procs

* supply_controller -> SScargo

* More New() -> Initialize()

* pAI and robot construction overlays

* Fix cargo unit tests

* Merge the DMM Suite's atom/New() into atoms_init

* Lighting pre-baking

* Lighting initialization logging

* Fix some bad SS init orders

* Fix SSlighting logging; rename Processes to MC

* Speculative fix for insane GC lag

* Prebaked openturf/icon_smooth & fix lighting prebake

* SS init status; SSatoms LATEQDEL

* Fix bug with MC init stat panel

* Fix parallax

* Misc

* Ignore SS_NO_DISPLAY during init

* apparently this is important

* REEEEEE

* Image GC fixes; broadcaster radio-new sanity

* RCON Cleanup

* Move pAI recruiter into subsystem

* Move global solars list into sun subsystem

* Make chickens not use a global

* Demote SSdisposals to SS_BACKGROUND; garbage-debug cleanup

* Speed up space init a little

* Fix bad timer flags on floor drying

* Subsystem panic-restart verb for mins

* Explosion speedup

* Minor subsystem & MC logging tweaks

* SSopenturf improvements

* Make pipenet actually initialize (whoops)

* Minor tweaks

* Implement lighting rounding

* comments are hard okay

* Minor lattice tweaks

* Fix some timer issues & better closet init

* Timer sanity

* Request console tweaks + Storage init sanity

* Minor SSmachiner RCON improvements

* Further reduce world-start timer count

* Standardize subsystem logging

* Garbage hard delete profiling from /tg/

* Timer hang detection & recovery

* Log machines that sleep in process() and fuck up SSmachinery

* Fix an issue with external airlocks sleeping in process()

* Failsafe logging

* Minor tweaks

* Revert "Request console tweaks + Storage init sanity"

This reverts commit 98d3579e35.

* Re-implement RC changes

* Fix SQL FT saving

* Fix SSmachinery sleep in disposals

* Minor SS tweaks

* Paper fixes

* Blood drying fixes

* Merge gameticker and SSticker

* Minor global list init cleanup

* Lagcheck biogenerator & bags

* Tweak SScargo init order; RIG Initialize()

* Caching tweaks

* Remove rogue comma

* Initialize fixes

* Lighting destroy cleanup

* Fix emagging airlocks

* Initial SSicon implementation

* Tweaks & Fixes

* Fire + Air alarm queued icon updates

* Overlays + Queued icon cleanup

* Runtime & background fixes

* Kill some meaningless set statements

* Kill some image qdels

* Bump up lighting rounding val

* Fix adv. scanner destroy runtimes

* Remove unneeded icon update limiting

* Move icon smoothing into helpers

* Show a warning if DM 510 compiles without memory leak hack enabled

* Re-organize subsystems & MC defines a little

* Airlock SFX

* Log of Changes

* Make SSicon_update disable itself when not doing anything

* Fix respawn verb runtime when used early in server-init

* Add more information to MC's stat_entry()

* Replace direct refernces to gcDestroyed with QDEL* macros

* plant_controller -> SSplants

* More plant tweaks

* Add more humor to changelog

* Move parallax globals into SSparallax

* Lighting responsiveness tweaks

* Fix parallax init order & better MC init panel stat

* Make mobs GC

* More overlays + Remove intercom spawn()

* SSfast_process; make pinpointers not use spawn-recursion to process
Also made the SM Cascade beach process with SSprocessing instead of a spawn loop.

* Update changelog

* Mob GC tweaks

* Del() cleanup

* Fix insomniac ZAS connection edges

* Minor pAI cleanup

* Convert more things to SSoverlay; fix duplicated overlay in field gens

* SM Bluespace turf tweaks

* Update SSgarbage debug globals list

* Human-type qdel tweaks

* Subsystem suspension; stat_entry improvements

* SQL Statistics cleanup

* Fix runtimes with ambrosia

* More disable() -> suspend(); fix nightmode again

* Human qdel fix; minor tweaks

* Update turbolift to work with StonedMC

* Make lifts use timers instead of a subsystem

* Make SSassets start earlier

* Convert the radio controller into a subsystem

* Fix some missing CHECK_TICKs in asteroid generation

* MC stat tweaks; make shouldnt_see a typecache

* Kill some redundant debug-controller entries

* radio_controller -> SSradio

* Better SSgarbage hard-del logging from /tg/ upstream

* Logging tweaks + GELF

* Misc client caching improvements

* Slime SSoverlay

* Oven icon fixes

* Implant fixes
- Death implants will no longer spam Common on death of user.
- Death implants should handle a deleted user better.

* Holder tweaks + Welding tool Initialize()

* Fix some bad subsystem logging

* Fix suit cooling units spawning without cells

* Starlight tweaks

* Gibber infinite gib fix

* More SSoverlay stuff

* Make crates use CUT_OVERLAY_IN

* Make SSarrivals suspend instead of disable

* Make openturf use split/phased tick checks

* Speculative fix for unwet timer runtimes

* Blood overlay tweaks/fixes

* Update crusher to play nice with SMC + SSoverlay

* Openturf improvements and fixes

* Minor turbolift tweaks

* Lighting performance improvements + ChangeTurf tweaks

* this is probably important

* Fix wall weld noises on changeturf

* More ChangeTurf tweaks

* Explosion tweaks

* Pre-game lobby tweaks

* Openturf tweaks

* Prevent admins from starting the game before init finishes

* Fix Travis

* Kill an unused var

* Fix ChangeTurf runtimes on openturfs

* Fixes

* Browser datum fixes, asset caching

* Update changelog

* Changelog

* Lobby tweaks

* Ticker tweaks; kill ticker var

* Further lobby tweaks

* Cascade tweaks

* air_master -> SSair

* Reduce overhead from radio autosay

* alarm_manager -> SSalarm

* bomb_processor -> SSexplosives

* corp_regs -> SSlaw

* ZAS overlay fixes

* Small wall icon optimization

* Fix effects master

* Assembly tweaks

* Megavend fixes

* Shuttle fixes

* Camera alert performance improvements

* Fix some world.log spam from lighting overlays

* Fix some Initialize() procs

* Openspace responsiveness tweaks

* Make HE pipes animate through openturfs

* Kill a spawn
2017-05-02 14:40:40 -04:00
Werner
59e7377798 UDP Logging (#1997)
This implements UDP Logging with GELF.
It will allow full text search over all the logs and attributes sent over GELF to the log server.
2017-04-01 23:47:00 +03:00
Lohikar
65e0f3de97 Simpler lighting process, bug fixes, & modular computer tweaks (#1809)
Fixes #1806
Fixes #1730
Fixes #1747
Partially addresses #1763
Addresses #1283
Fixes #1799
Fixes #1816
Fixes #1813
2017-02-24 20:24:31 +02:00
Lohikar
a50d0a8390 Machinery performance tweaks (#1744)
changes:

Machines' process() has been separated from auto_use_power().
Lights no longer process() and instead use auto_use_power() for power calculations.
Computers that didn't really need to process() no longer process().
Airlocks now use the scheduler to auto-close instead of process()ing.
Fixed a bug where clicking on an AI Status display to set its status did not work.
2017-02-15 22:07:47 +02:00
Lohikar
2b9aa21421 Spark Fixes (#1764)
changes:

Removed shim for old spark system.
Converted all calls to old spark system with calls to new one.
Processor-based effects are no longer pooled, as it had minimal performance impact and was breaking things.
Tweaked some visible_messages for rogue drones.
PB effects' handling of location is now done at the /datum/effect_system level.
2017-02-14 14:37:16 +02:00
Lohikar
0cba68911d Lighting Overhaul & General process improvements (#1612)
This is it. The big one.
Risk: Very large. This modifies or rewrites several important systems.
Some things still need balancing, but that's probably better done if/when this hits dev.

changes:

New smooth lighting system.
Machinery split into three processes: machinery, powernet, pipenet Removed due to breakage. Refactored into multi-step process.
Mob process rewritten.
NanoUI process rewritten.
Objects process rewritten.
Tweaked color output of station lights.
Slime core lights now emit colored light.
Fixed light update frequency issue with fire alarms, hydroponics trays, and airlocks.
Increased light emission from bolted airlocks.
Miscellaneous performance improvements.
New datum pool implementation.
New lighting usage profiler.
Lighting system now tracks UV light, which is not visible to players.
Space now has a parallax effect.
Disabled Spin View verbs due to incompatibility with the new lighting system.
Disabled hallucination view spin due to incompatibility with the new lighting system.
Lighting system now initializes in the lobby before the round starts to reduce BoR deadtime.
Added UV light tracking to lighting engine; dionae now gain energy exclusively from UV light.
Added colored lighting to a few consoles that used default (white) light.
2017-01-29 01:13:54 +02:00
NanakoAC
75b540c061 Miscellaneous bugfixes (#1385)
Fixes footstep sounds, they weren't defined. I redefined them for all floors. Also changed a few, notably carpets and bare plating have different sounds from what they used to. And all the various holodeck terrains should have correct sounds now too

Fixes bicaridine and internal bleeding interactions. It was never really working before because the internal wounds could never be removed. Slightly rebalanced some values with bicaridine and internal bleeding.

Adds short doafter and visible message to engiborg inflatable dispenser
2017-01-04 03:14:07 +02:00
LordFowl
5ccb627531 BayMerge Bugfix; Fixing guns, update computers. (#1263)
Fixes all the snowflake guns unique to our codebase with multiple firemodes so that they now actually behave correctly. Fixes a few bugs relating to computers, and updates modular_computers to use holoscreens.
2016-12-21 21:48:04 +02:00
SoundScopes
97bb1e8e38 Travis: Indentation / list fixes (#1254)
Fixes the tools/indentation.awk script to not demand a comma at the end of perfectly valid comments.
Makes it report unnecessary commas in lists.
Readds it to the Travis build list.
2016-12-19 16:40:52 +02:00
skull132
87e041aa75 Merge remote-tracking branch 'bay12-upstream/master' into development 2016-10-07 00:58:39 +03:00
Ccomp5950
bd60099a7e Removes unused pressure_resistance variable.
This is used with FEA not ZAS

Though it's kind of funny to look at what some of these values were set at.
(For reference: ONE_ATMOSPHERE = 101.325)
2016-02-03 18:17:52 -05:00
Ryan784
1072aa68d9 Footstep Sounds + ASFX Tab
Footstep sounds and the ASFX Tab is back! You can not only hear
footsteps once again, but enable/disable the voting sound.
2016-01-14 18:28:09 -05:00
mwerezak
07881e7495 Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into attack-cleanup2
Conflicts:
	code/modules/mob/living/carbon/human/species/xenomorphs/alien_facehugger.dm
2015-10-15 07:08:16 -04:00
PsiOmegaDelta
27feb09a31 Merge remote-tracking branch 'upstream/dev-freeze' into dev
Conflicts:
	code/game/machinery/computer/computer.dm
	html/changelogs/.all_changelog.yml
2015-10-11 17:37:01 +02:00
PsiOmegaDelta
38c6ba3a07 Code relocation. 2015-10-11 17:31:21 +02:00
PsiOmegaDelta
070ca0adea Merge remote-tracking branch 'upstream/master' into dev-freeze
Conflicts:
	code/game/objects/items/weapons/tanks/tanks.dm
	code/modules/holodeck/HolodeckControl.dm
	code/modules/mob/living/carbon/breathe.dm
	code/modules/mob/living/carbon/human/life.dm
	code/setup.dm
2015-10-11 17:17:41 +02:00
PsiOmegaDelta
fd3370c01f Fixes #11263.
Now possible to use items other than emags on holodeck computers
Blobs no longer make computers lose their density state.
Holodeck computers can now be repaired (and built, but since they cannot be configured they'll be useless).
Fixes #11263.
2015-10-10 10:11:48 +02:00
Kelenius
83adba88d4 Updates blob
Remains of player blob axed.
blob_act() axed. Blob now has an arbitary set of things it can attack.
It will flow over everything else. Blob has an awful tendency to destroy
non-craftables.
Will test more tomorrow.
Blob will now attack mechs.
Fixes #8106.
Fixes #10705.
2015-10-05 18:10:16 +03:00
mwerezak
068d02c28c Refactors various item attack() implementations
Replaced some attack() overrides with apply_hit_effect() or other attack
procs where appropriate.
Removed the attack() override from reagent_containers.
2015-09-08 23:39:33 -04:00
mwerezak
db8aefb121 Refactors duplicate parry code 2015-08-28 14:39:28 -04:00
HarpyEagle
df3eeb891e Fixes dead people blocking stuff with shields. 2015-08-26 11:51:04 -04:00
mwerezak
fb6b94de87 Incorporates laser reflection into the shield system 2015-08-26 10:39:54 -04:00
mwerezak
0a751322e3 Rewrites shield handling
Rewrites shield handling to be less hardcoded.
Shields now take into account the damage source and direction when blocking.
Riot shields no longer block most bullets, but are better at blocking melee and thrown items than they were previously.
Energy shields block projectiles with a similar probability as they did before, and block melee and thrown as well as riot shields do.
Shields no longer block from directly behind the player.
Weapons now only block melee attacks.
Cool effects when blocking with an energy shield or energy sword (including holoswords).
2015-08-26 10:39:31 -04:00
Zuhayr
3bfa541612 Adds variables for CentComm, NanoTrasen and the station name. 2015-08-22 02:10:11 +09:30
Chinsky
317eaf4771 Merge pull request #10101 from mwerezak/shards
Refactors obj flags and changes defined bitflag representation
2015-08-20 19:47:58 +03:00
Chinsky
b2e9a7c2a6 Merge pull request #9942 from RavingManiac/dev
Sound environment revamp
2015-08-20 19:47:09 +03:00
mwerezak
2cb46e035c Removes unused obj flags and fixes overlapping flags
Removes ONESIZEFITSALL and NOSHIELD, which were unused.
2015-08-18 17:08:41 -04:00
Zuhayr
23e9c7d4c9 Merge 2015-08-16 17:10:11 -07:00
PsiOmegaDelta
c1eba26d8a Holo-decals and fixes.
Adds more holodeck decals.
Allows overlays to be glued unto unsimulated turfs.
Ensures holo-stools use an existing icon state.
2015-08-16 06:09:15 -07:00
Zuhayr
49575a1e35 Blocked out the holodeck tiles. 2015-08-16 06:07:45 -07:00
Zuhayr
b43b396154 Updates instances/tiles for Centcomm. 2015-08-16 06:07:44 -07:00
Zuhayr
c8baafed2a Removed turf_animation for now, ported vg hasproximity optimisation. Rewrite and refactor of how turfs handle icon updates, edge smoothing and
construction/deconstruction. Major map rework/changes.
2015-08-16 06:05:21 -07:00
GinjaNinja32
7dc85cfdd4 Merge pull request #10040 from PsiOmegaDelta/150707-MoreOverlaysFewerStates
Computers are now overlay based.
2015-08-16 00:40:47 +01:00
PsiOmega
ba240cb768 Merge remote-tracking branch 'upstream/dev-freeze' into dev
Conflicts:
	code/game/antagonist/station/rogue_ai.dm
	code/game/machinery/atmoalter/portable_atmospherics.dm
	code/game/machinery/spaceheater.dm
	code/modules/clothing/head/soft_caps.dm
	maps/exodus-5.dmm
2015-08-12 21:18:18 +02:00
PsiOmegaDelta
3cb6b1ca79 Holodeck stool icon fix.
Backports the icon state change from dev. Fixes #10515.
2015-08-12 08:33:57 +02:00
PsiOmegaDelta
03578d4ea3 Merge remote-tracking branch 'upstream/dev-freeze' into dev 2015-08-06 08:12:38 +02:00
PsiOmegaDelta
cf1ffd273a Fixes holodeck runtime.
initial() doesn't work well with lists. Causes a null value.
2015-08-05 09:33:34 +02:00
PsiOmegaDelta
87d4cf4f68 Computers are now overlay based.
Computers now use an overlay based system, instead of demanding a full set of icons (on, off, broken) for every different computer.
Partially ports ParadiseSS13/Paradise#1468 which is a port of tgstation/-tg-station#9931.
2015-07-07 17:23:49 +02:00
RavingManiac
d1cc0517ce Sound environment changes. Different values for hallways, carpeted rooms, maintenance tunnels, etc. Holodeck sound environment changes with the loaded program
In low-pressure or space, sounds will be heard in sound environment 22 (underwater))
2015-06-27 03:47:37 +10:00
PsiOmegaDelta
cc7c502fb8 Updates emag attackby usages to emag_act where it's not too much of a headache. 2015-06-16 09:34:13 +02:00