Commit Graph

51 Commits

Author SHA1 Message Date
Karolis
8b785b3815 New record consoles and removal of old datacore, adds SSrecords (#4878)
This PR is depending on #4868 for it's ui framework. This PR mostly makes new SSrecords subsystem responsible for storing records. This should replace old datacore.

Make new SSrecords.
Make things use SSrecords and whole code compile
Made VueUi button <vui-button> to push parameters as JSON, preserving client side data stricture.

    Add new records console and admin record management.

I am mostly looking for feedback regarding SSrecords and it's data storage mechanism criticism (It's using lists for storage)
2019-07-27 12:24:16 +03:00
MarinaGryphon
68dd51121c Makeshift Chemistry and Medical (#6618)
Skull is fucking CRYING right now.
2019-07-26 11:57:05 +03:00
Lohikar
2c1229a9b2 list2text() -> jointext() (#4342)
The DM jointext() function is more or less equivalent to list2text(), but is faster. Might as well.

Seems to make VV faster.
2018-03-03 00:36:44 +02:00
Lohikar
982bf9b1a1 Fix species radiation multipliers (#1325)
Fixes radiation so species' radiation_mod values are actually applied.
Refactored radiation application to use proc apply_radiation() instead of directly modifying the variable.
2016-12-28 01:15:20 +02:00
GinjaNinja32
a2817d9b8c fix #10692 2015-08-17 10:54:51 +01:00
PsiOmegaDelta
3a55b130a0 Merge remote-tracking branch 'upstream/master' into dev-freeze
Conflicts:
	.travis.yml
	code/modules/virus2/disease2.dm
	maps/exodus-5.dmm
2015-08-14 08:34:42 +02:00
Chinsky
38adf2c5b4 Fixes #10294
Now if virus can infect lesser/greater form of specie, it can infect its counterpart.
Also made viruses affect only joinable species to lessen a chance of spawning a virus that they can't work on (e.g. slime-affecting viruses that can't be injected into monkeys). As a side-effect viro reports are a little less inane listing all the species crewmembers aren't supposed to know about like xenomorphs and Shadows.
2015-08-14 04:20:44 +03:00
PsiOmegaDelta
9b4d09c974 Merge remote-tracking branch 'upstream/dev-freeze' into dev
Conflicts:
	code/_helpers/unsorted.dm
	code/game/objects/items/weapons/RCD.dm
	code/game/objects/items/weapons/grenades/emgrenade.dm
	code/modules/clothing/spacesuits/rig/rig_attackby.dm
2015-07-11 10:58:49 +02:00
HarpyEagle
5011f9b806 Fixes virus infectionchance oversight
Fixes oversight in minormutate() that would cause viruses to become
extremely infectious after spreading to another person.
2015-07-09 17:26:15 -04:00
Zuhayr
d6e3df5fba Attempting to guarantee immunity to viruses for virus_immune var. 2015-05-25 15:52:51 +09:30
Zuhayr
958494ae75 Removed IS_SYNTHETIC and REGENERATES_LIMBS flags.
Moved some organ code around, added icons and limbs for IPC, added IPC limb manufacturer.
Reimplementing checks in place of IS_SYNTHETIC.
Rebalancing EMP a bit for IPC.
2015-05-25 14:49:07 +09:30
Chinsky
3384f13a31 Merge pull request #8029 from GinjaNinja32/viro
Virology rework
2015-02-06 00:18:13 +03:00
Zulker Nayeen Nahiyan
0a3f523066 Merge remote-tracking branch 'refs/remotes/origin/dev' into dev
Conflicts:
	code/__HELPERS/maths.dm
	code/__HELPERS/type2type.dm
	code/modules/clothing/head/hardhat.dm
	code/modules/clothing/spacesuits/captain.dm
	code/modules/clothing/spacesuits/miscellaneous.dm
	code/modules/clothing/spacesuits/rig/rig_pieces.dm
	code/modules/clothing/spacesuits/rig/suits/light.dm
	code/modules/clothing/spacesuits/spacesuits.dm
	code/modules/clothing/suits/armor.dm
	code/modules/clothing/suits/utility.dm
	code/modules/events/event_manager.dm
	code/modules/mob/living/living.dm
	code/setup.dm
2015-02-04 04:44:09 +06:00
GinjaNinja32
95ec6a4dfe Changes cure mechanism 2015-02-03 16:41:08 +00:00
GinjaNinja32
c4788ad6f5 Merge remote-tracking branch 'upstream/dev' into viro
Conflicts:
	code/modules/virus2/disease2.dm
2015-02-03 15:33:37 +00:00
GinjaNinja32
1b08463b7e Antibodies rework. 2015-01-26 05:32:00 +00:00
GinjaNinja32
7e43812408 Virology fixes; nerfs viruses significantly (~33% power), but reactivates broken effects that were multiplying their effects by null 2015-01-25 09:34:53 +00:00
GinjaNinja32
e49c6de525 One symptom of each type per virus 2015-01-25 04:26:34 +00:00
GinjaNinja32
a1e5194c34 Virology rebalance
- Effects can now appear and be spliced in at higher stages than their set stages (e.g. Waiting Syndrome can now occur in any block)
- Gibbingtons changed to not instantly gib infected on activation, instead either dealing massive brute damage or making humanoids' limbs fall off; this avoids three copies of Waiting Syndrome then Gibbingtons going undetected until it instagibs the entire station one after the other.
- New effect: chemical synthesis. Picks one reagent from its list, and keeps infected at 5-7u of that reagent. Infecting others, splicing the gene, etc does not change the reagent, only generating an entirely new chemical synthesis effect does that.
- Admin panel for spawning viruses
- Virus dish examine() now doesn't print 15+ lines to output, instead printing one line and a link to open a window with the rest (and it calls ..() now)
- Lowercased most virology machinery's names
- Renamed/reordered antigens, there are now 16 antigens rather than 11, and they don't use the blood markers' names despite not being affected by blood type at all
- Generating random effects does not rely so much on the GC
2015-01-20 09:57:47 +00:00
Zulker Nayeen Nahiyan
490027405a Merge remote-tracking branch 'origin/dev' into dev
Conflicts:
	code/modules/virus2/helpers.dm
2015-01-19 02:15:38 +06:00
mwerezak
b069bfb658 Adjusts infection chances
After some discussion on IRC this seems like a better starting value.
2015-01-12 00:05:47 -05:00
mwerezak
8ac0450c01 Sets chance_maxm for several disease effects
Also lengthens the time to get from stage 1 to stage 2
2015-01-10 12:26:12 -05:00
mwerezak
1c5ca01dae Restricts Gibbingtons, Suicide, and Monkism syndromes
Restricts Gibbingtons, Suicide, and Monkism syndromes from even greater
diseases. Admins can still generate diseases with these syndromes
through secrets.

Fixes virus events potentially having people share the same virus datum.
2015-01-10 03:08:42 -05:00
mwerezak
9b5eded546 Fixes major virus event generating lesser viruses, makes lesser viruses actually less severe
Makes more of a distinction between lesser and greater viruses by
restricting lesser viruses to only have the "Nil" syndrome for stage 4.
2015-01-10 01:25:19 -05:00
Zulker Nayeen Nahiyan
6e550d7308 Cleanup helper files maths.dm, time.dm, type2type.dm, add macros for bit-manipulation
`maths.dm`:
	Rewrite `Gcd(x)` to remove recursive behaviour.
	Remove `RaiseToPower(x)` and its usage from `event_manager.dm`.
	Rename `Lerp()` to `Interpolate()`.
	Add `Square(x)`, which squares a number.
	Rearrange most of the functions in the file. (trigonometric functions together, etc.)

`type2type.dm`:
	Rewrite `num2hex()` and optimise `hex2num()` for superior clarity and a 100% speed improvement.
	Correct indenting, spaces, make switches more concise.

`time.dm`:
	Remove old, slanderous commented-out function `/proc/time_stamp()`

`lists.dm`:
	Add the macros, `BITTEST(bitfield,index)`, `BITSET(...)`, `BITRESET(...)`
	  and `BITFLIP(...)` for bit-manipulation and use them where 20+ files
	  do it manually, for arguments of reader clarity and standardness.
2015-01-09 21:55:11 +06:00
Zuhayr
37cb78eefa Fixes #6613 and #6492 2014-10-08 23:10:12 +10:30
Mike
4ceada67fd Fixes #4965 2014-05-14 01:15:01 -04:00
Jeremy Liberman
16f787a1da Virology - NanoUI, gameplay tweaks, bugfixes 2014-03-24 23:55:41 -05:00
Chinsky
16dd8bfcd2 Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into virus-racism
Conflicts:
	code/modules/virus2/helpers.dm
2014-03-10 18:43:34 +04:00
Chinsky
3bd98fec1b Made it possible for virus to mutate and affect different species. 2014-03-10 00:26:37 +04:00
Chinsky
12a97e01eb Fixed some runtimes with specieism, and blood transfer ignoring viruses' racial preferences. 2014-03-10 00:06:22 +04:00
Chinsky
4177323dca Spaceacilline stronk.
Now it prevents new infections completely, and has a chance to cure virus on early stages (without giving antibodies though.)
2014-03-09 22:43:42 +04:00
Ccomp5950
084c0754ad Code effeciency project: HUD items rewrite
Before: Every tick each HUD item would recalculate and redo images for every mob in view. For items like the secHUD where we're transversing implants and the various records this gets very expensive.

After: Mobs use their hud_list variable to store varius huditem images, when conditions change for those specific huditem images it updates the specific ones on demand. As a backup every 30 ticks or so the mob will update all of their hud_list.

Also: moved proc/RoundHealth() from 2 seperate locations into __HELPERS/mobs.dm
2014-03-09 10:25:36 -05:00
Chinsky
c906fbf7dd Added system for viruses to affect only certain species.
Currently it ignores synthetic species competely.
2014-03-08 03:32:10 +04:00
Chinsky
f53fa1dee2 Merge branch 'viro' of https://github.com/Mloc/Baystation12 into viro
Conflicts:
	code/modules/virus2/disease2.dm
	code/modules/virus2/effect.dm
2013-10-06 13:34:50 +04:00
Chinsky
e76721b6e8 Lowered immunity chance, it fires way too often with multiple viruses and such. 2013-10-06 13:25:23 +04:00
Chinsky
f42631bdbe Adds contact-spread viruses.
Infection chance now calculated differently for airborne and contact ones.

Contact viruses spread on: infected people touching others, people touching naked infected people (clothed parts do not spread it).
Airborne viruses spread on: breathing (20% chance, then chance depending on worn clothing), coughing (now 2 tiles instead of 1)

Both types spread from mucous and blood puddles because lazy.

Fixes:
Blood and mucus now spread viruses correctly.
Lowered output of hyperzine generation syndrome, since it caused dedly ODs.
2013-10-06 08:49:51 +04:00
Chinsky
0cd28f9ca5 Bumped infection chance so viruses infect. 2013-10-06 04:23:24 +04:00
Mloc-Argent
9ab11c0aeb virus fixes. WIP will update commit message later
Signed-off-by: Mloc-Argent <colmohici@gmail.com>
2013-10-05 18:52:08 +01:00
Erthilo
070cb50f8d PDAs can be used when buckled (and not in any other way restrained or stunned). Rejuvenate now completely heals a target or broken organs and viruses too. 2013-08-11 17:13:58 +01:00
comma
1b9d6f67e2 Made mutation change virus ID. 2013-07-01 17:22:20 +04:00
Chinsky
8bd7d77916 Medical record viral DB now should list scanned virus2 stamms.
Fixed runtime in analyzer DB uploading.
Fixed derp in get_info() proc for viri
2013-06-28 23:57:16 +04:00
Chinsky
051edc2227 Started implementing of ViroDB.
-Analyzers now add info about viruses they scan to global list.
-Health analyzers will only find known viruses.
2013-06-28 15:43:58 +04:00
Chinsky
a4325d69eb Fixes for runtimes and viruses staying in blood after curing. 2013-06-21 21:37:20 +04:00
Chinsky
960a22ee43 Changes way viruses are stored in mobs.
Now it's an associative list:
uniqueID - virus datum

Updated most instances to match it.
2013-06-19 02:28:53 +04:00
Chinsky
934a25a172 Added antigen check to viri comparing proc. 2013-06-16 11:27:00 +04:00
Chinsky
5d7b62f32d gave virus slight chance to change antibodies they could be cured with. 2013-06-09 18:31:11 +04:00
Chinsky
5056e3a4fa Added fever to the virus progress. 2013-06-09 17:06:37 +04:00
Chinsky
be8ca60280 Changed how 'greater' effects are picked, now it's var-based, not type-based.
That'll let 'greater' and 'lesser' viruses pick low-stage symptoms from same pool without duplicating them.
Also sorted effect datums by stage in effect.dm.
2013-06-09 14:27:41 +04:00
Chinsky
7a8a822a92 Made it possible for mob to be infected with several viruses at once. 2013-06-09 13:31:16 +04:00