Commit Graph

517 Commits

Author SHA1 Message Date
William Lemon
f62a05a0d0 Srom Fix (#8895) 2020-05-17 15:20:35 -03:00
Matt Atlas
eb73260df3 Fixes ghosts getting double visible messages (#8832) 2020-05-08 22:09:06 +03:00
Matt Atlas
4cddf3c859 Allows ghosts to see visible_messages. (#8806)
Allows ghosts to see visible_messages
2020-05-08 13:57:40 +03:00
Matt Atlas
77d8844eb2 Ghosts can now jump to emotes, better follow links, ghosts can now see where someone ghosted. (#8677) 2020-04-25 16:00:56 +02:00
Alberyk
71c639e186 Round of runtime fixes (#7724)
Cleanbot no longer runtimes when it is being pulled.

mob's grab now properly uses WEAKREF instead of hardref, fixing later runtime.

/datum/reagent/nutriment/mix_data loops have been made cleaner, and also fixes improper list access.
2019-12-30 11:53:01 -03:00
Matt Atlas
56ed56ad05 Implant removal improvements. (#7825)
Implant surgery has been improved. Knife shrapnel extraction has been improved.
2019-12-30 12:26:10 +01:00
Sindorman
3f1f05b664 Merge remote-tracking branch 'upstream/master' into Sindorman/runtimes 2019-12-29 02:20:25 -08:00
Matt Atlas
c087a0a0bf Ports a psionic system from Bay. (#7717)
* Ports a psionic system from Bay.

* Rip out this shitcode.

* shitcoden't

* fixes

* it should work fully now

* Admin fixes

* Remove todos

* remove todos part 2

* Removes psi-armour. We don't need this for now.

* Skrell are now operants. Tweaks coercion.

* Adds thralls.

* Temp removal of psiarmour. Fixes psigrabs.

* Thrall assay.

* fixes

* More fixes

* unused define cleanup

* Log and powers

* Skrell powers are done.

* Update code/modules/psionics/events/mini_spasm.dm

Co-Authored-By: Geeves <ggrobler447@gmail.com>

* Update code/modules/psionics/events/mini_spasm.dm

Co-Authored-By: Geeves <ggrobler447@gmail.com>

* Update code/modules/psionics/equipment/cerebro_enhancers.dm

* did this work???

* jargon

* arrow's fixes

Co-authored-by: Geeves <ggrobler447@gmail.com>
2019-12-24 11:32:05 +01:00
Werner
cb4a712851 Enforces Lineendings and adds Editorconfig (#7657) 2019-12-21 16:19:24 +01:00
Matt Atlas
bbecc7b461 Many vore improvements. (#7686) 2019-12-19 20:06:14 +01:00
Matt Atlas
decc0b14a7 Preparation for 513 (#7677)
* Preparation for 513

* lentext replacement
2019-12-18 08:10:16 +01:00
Sindorman
67ffbcd60e Temp save 2019-12-17 22:15:16 -08:00
Matt Atlas
df0cd6189a Brainmed Update (#7502)
gamer time.
2019-12-10 20:41:15 +02:00
SueTheCake
84794c6e65 Mechs 3: Electric Boogaloo (#7486) 2019-11-25 23:04:19 +01:00
Matt Atlas
ce6c12f8a6 Ports arterial bleeding and tendon severing (#7432) 2019-11-21 14:45:19 +01:00
Matt Atlas
5da2a9c24b Splits organs into organ/internal (#7441) 2019-11-20 23:07:10 +01:00
Werner
af16a489a6 Removes Weapons (#7415)
* Adds icon and hitsound where needed.

* Moves alt_attack to /obj/item and deletes weapons.dm

* Replaced /obj/item/weapon with /obj/item

* Fixes merge issues.

* Fix merge issues.
2019-11-16 18:36:13 +01:00
Karolis
61f6e5a6c1 Styles basic HTML UIs (#7001) 2019-09-24 00:42:15 +04:00
Erki
8905b05286 Fixes memory abuse (#6790)
What:
The mind/memory variable is a variable that is used to store IC notes. Players can add to it at will, using the Add Note verb. The problem, is that they can add to this infinitely. This can be weaponized with macros to generate an infinitely long string. Well, infinite in theory, in reality, this will cause DD to OOM and crash.

Solution:
Capped the length of mind/memory to MAX_PAPER_MESSAGE_LEN (3072) characters. This length is checked when the user attempts to input, and also when the notes are actually edited. The former produces an error for the user, the latter will simply shift the memory contents forward, potentially causing HTML break. But this limit is not likely to be reached via other means.
2019-07-28 20:38:10 +03:00
Alberyk
aa70b6cffb Changes how clumsy checks are handled (#6299)
This pr adds the is_clumsy check, that checks if the mob has the mutation or if they are drunk enough. This fixes a bug where mobs would still have the clumsy mutation due to drinking.
2019-04-14 19:45:45 +03:00
LordFowl
8d436c4a03 Converts all necessary << outputs into the to_chat() macro. (#6076)
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().
2019-03-10 23:39:03 +02:00
Mykhailo Bykhovtsev
f83895cb82 Fixing runtimes V2 (#6006) 2019-02-11 01:05:12 +02:00
BurgerLUA
72354100bd Roundtime Based on Realtime (#5500)
* added

* arrow requested changes

* actually does arrow's request
2018-11-08 23:40:43 +01:00
BurgerLUA
4319c45133 Thirst Mechanics (#5255)
Overview
Adds thirst mechanics. Thirst mechanics work exactly like hunger mechanics where if you don't drink enough liquid, you become thirsty and move slower. Several other mechanics involving drinks were also changed.

For organic races, you gain hydration by consuming beverages and water. Water is the most effective way of hydrating yourself. IPCs are not affected by hydration and do not have to worry about it. If you overeat or overdrink, your nutrition decreases faster until you are of normal hunger and thirst levels.

Penalties for not eating or drinking are now more severe. If you refuse to drink or eat all shift, you will be up to 33% slower and take twice as much pain damage. The amount scales based on your hunger or thirst levels. If you are considered hungry or thirsty, it starts scaling until you're starving or seriously dehydrated. If you overeat and overdrink as well, you get a ~5% reduced movement and pain tolerance with each mechanic.

The icons for hunger have been updated to be more specific, and they match the new thirst indicators as well. https://i.imgur.com/QQbWxYI.png

You can now also inject beverages into your blood for x4 effectiveness. Before, IV dripping yourself with vodka did nothing but give you a small amount of toxins, but now it should be a hell of a party.

Dionaea can now be affected by beverages with respect to nutrition gains and temperature changes. Dionaea cannot be affected by some effects, such as stuttering and intoxication, still.

Healing effects for certain beverages (tea, milk) were removed. This a HRP server, milk shouldn't heal you.
2018-10-07 00:14:47 +03:00
Erki
29a641c2e8 Fixes the runtime of mob/visible_message not having a range arg (#5100) 2018-08-07 09:02:08 +03:00
LordFowl
64e386785c Abling Disability (#4485)
This PR implements a system for manipulating a client's color safely and also ports a prioritization system for sorting client color from /tg/. Currently this PR also implements client coloration in the form of color blindness, namely:
Monochromacy
Deuteranopia
Tritanopia
Protanopia

DTP are mild brain traumas, whereas monocrhomacy is a severe brain trauma.
Furthermore, this PR removes the Needs Glasses prompt in character creation, and replaces it with a disability selector, allowing people to more closely refine their special little snowflakes.
Current disabilities available:
Nervousness
Nearsightedness
Deuteranopia
Tritanopia
Protanopia
Deafness
Muteness
2018-04-05 21:57:50 +03:00
LordFowl
ad00601b81 Ports /tg/ Brain Trauma (#3979) 2018-01-27 12:13:19 -06:00
Lohikar
0abc1d2a65 Repath a bunch of things to /mob/abstract childtypes (#4111)
* Repaths eyes, observers, dview, and new_players to /mob/abstract subtypes.

* Adds /mob/abstract, a base type for 'abstract' mobs that aren't meant to be directly affected by the game world.
2018-01-24 11:27:14 +01:00
Lohikar
90886a3076 Branded IPCs (#3388)
This PR adds 2 subtypes of industrial and two subtypes of baseline, one for each cybernetics manufacturer. Sprites by BRAINOS.

other changes:

IPCs can now be flashed or flashbanged.
Admin spawn paths have been added for subspecies that did not have them.
IPCs are no longer slowed by being cold.
2018-01-21 00:34:06 +02:00
Lohikar
6feaf1a218 Mob AI SS & Misc. Mob Cleanup (#3990) 2017-12-24 14:24:55 -06:00
Lohikar
5e33bd0e2c Misc tweaks (#3916)
changes:

/obj/visual_effect has been repathed to /obj/effect/visual.
Openspace movables will no longer use the space plane when on an openturf mimicing a space turf.
Lights now only update on direction change if your direction actually changed.
Fixed some bad set_dir() procs that were either pointless or that didn't return parent.
Mapped-in or maint dirtier-spawned glowing goo no longer self-deletes after 2 minutes.
Fixed an issue that may have caused some openspace movables to not properly handle direction changes.
2017-12-09 00:36:53 +02:00
skull132
7dc02be204 Merge branch 'master' into development
# Conflicts:
#	code/controllers/subsystems/initialization/misc_early.dm
#	config/example/config.txt
#	maps/aurora/aurora-1_centcomm.dmm
#	maps/aurora/aurora-4_mainlevel.dmm
2017-11-11 20:57:28 +02:00
Erki
7b1bcdc8f3 October Bugfix Bonanza (#3767)
Fixes #3742 - someone unfucked the fix again.
Resolves #3740 and resolves #3739.
Fixes #1558 - a 10 month long meme is dead.
Resolves #3720 by making robo-eyes immune only to the eye stinging effects of pepperspray. Let there be equality amongst the synths.
Fixes #3676 - tested, shouldn't break. It was double-calling set_death_timer.
Fixes #3672 and fixes #3658 - that was my bad on not noticing the diff around hologram.icon = icon vs add_overlay(icon).
Fixes #3762 - I'm surprised this didn't fuck over more.
2017-10-29 19:03:24 +02:00
Ron
e3fa277f1b Removes some variables in mob defines (#3710)
Removes some variables in mob/living/carbon/human defines that were useless .
2017-10-22 12:47:16 +02:00
Ezuo
dfa4365cec Makes the numpad a hotkey for selecting damage zones (#3641)
Ported from Bay12.
2017-10-20 17:51:16 +03:00
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
Lohikar
08dcdba926 Performance tweaks (#3359)
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.
2017-09-02 21:33:03 +03:00
Lohikar
c80d893e71 Misc Synthetic Code Cleanup & Minor Tweaks (#3307)
Mostly synthetic code cleanup, some tweaks to human examine and ID cards too.

changes:

Synthetic sprint procs have been compressed down to one proc for all machine subspecies vs. one per subspecies.
Synthetic sprint now only stuns synthetics with empty cells for 30 seconds for all types.
Refactored synthetic limb roboticization.
Changed how a lot of synthetic/industrial checks work.
ID portraits are now 128x128, and scaled without blurring.
Species can now specify an examine text color (for their species name) that differs from their flesh color.
Fixed some eye checks not respecting species.vision_organ.
Examine pulse-checking now uses do_mob & has a progress bar.
2017-08-29 23:21:29 +03:00
Lohikar
1ee2203b01 clean up some legacy code (#3211)
changes:

/obj/effect/list_container/mobl has been replaced with /datum/mobl.
/obj/effect/stop has been removed as it is unused.
/obj/effect/shut_controller has been removed as it is unused.
Uristrunes now cache in SSicon_cache.
2017-08-02 19:53:23 +03:00
Lohikar
bf43f94801 Fix instance counter (#3188) 2017-07-31 21:48:49 +03:00
Erki
07cedfb335 Some more fixes (#3130)
Fixes #2173
Fixes #1927
Fixes #3100
Fixes #3087
Fixes #3124
2017-07-23 01:03:41 +03:00
skull132
97817469d2 Fixes #2978 and #3084 (#3086)
Fixes #2978
Fixes #3084
2017-07-18 12:22:52 +03:00
Lohikar
b071bbf0d2 Parallax-related performance tweaks (#2810)
Experimental tweaks to how parallax's movement hooks work; the current ones appear to be fairly expensive for all movable movement, doing locate(/mob) in src on every forceMove(). This PR creates a new lazylist (contained_mobs) containing a list of every mob directly contained by an object. contained_mobs is updated on mob/forceMove().

Not sure how to handle mobs located deeper than directly inside an object.

Only alternative to this I see is to make SSparallax tick.
2017-06-26 12:05:17 +03:00
Lohikar
bcccd88fd4 Fastboot (#2761)
Adds a config option that disables some time consuming bootup steps that aren't generally required for debugging.
2017-06-22 13:15:20 +03:00
Lohikar
521705dc62 Soft-delete fixes & Tajara Coffee overdose tweak (#2749)
changes:

Fixed issues with parallax objects not deleting properly due to hanging refs. (this also seems to fix some mob delete failures, like BSTs)
Fixed issues with hyperzine, inaprovaline, and synaptazine not soft-deleting due to hanging modifier references.
Removed coffee overdoses poisoning Tajara at Mofo's request.
2017-06-18 13:35:24 +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
Lohikar
277790a630 (Hopefully) Fix Mind GC Issues (#2301)
Should fix weirdness with mob GC such as ghosts jumping to their deleted bodies, observers failing to GC, and mobs with minds not GCing in general.

changes:

Mob cleanup relating to the mob has been moved to the mind.
On deletion a mob will now null out the current and original fields in the mind, if they pointed to it.
2017-05-20 14:24:47 +03:00
Lohikar
6cf332bfa7 Merge voting controller into SSvote (#2183)
changes:

Merged the voting controller into the voting subsystem.
Changed the voting UI to use /datum/browser.
Converted /datum/browser to use HTML5 & attempt to use edge if available. All users of the browser datum have been confirmed functional with Edge.
Changed the ChemMaster to use SSassets for resource download.
2017-05-13 12:37:43 +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
skull132
77c7e23ebe Port initial Bay12 object listener fix (#2106)
Port of Baystation12/Baystation12#13264

Large PR to put into Master, but the bug is really annoying and since it affect a traitor item, an often used one, I'll take the risk.

Fixes #1956
Fixes explosives implants and lawgiver not working.
2017-04-19 10:15:19 +03:00