Commit Graph

119 Commits

Author SHA1 Message Date
Kashargul 547e887c31 Cleanup (#19283)
* some code cleanup

* .

* .

* .

* change that

* .

* .
2026-03-13 23:10:39 +01:00
Kashargul 4f7446055b Fix some more issues (#19086)
* no longer exists

* fuck off with that

* .

* .
2026-01-24 23:04:02 +01:00
Cameron Lennox 656597529b Fixes some places that paralyze should KO as well (#18973)
* Fixes some places that paralyze should KO as well

* this too
2026-01-04 15:46:03 +01:00
Cameron Lennox d5849910e5 Begin clickcode attack_self fix (#18797)
* Begin clickcode attack_self fix

Begins the work to make everything call back to parent for attack_self so that signals are sacred.

* Makes MORE things call the attack_self() parent

Yes, I could make special_handling a var on obj/item HOWEVER i want it to be specific so it can be tracked down later and ONLY the objects that use it can be refactored instead of sitting there literally forever and it just becoming 'a thing'.

* Finishes making the rest of attack_self call parent.

As mentioned, things such as 'specialty_goggles' 'special_handling' and the such are only there to help with attack_self until the attack_self is recoded for those items.

* begone foul demon

* some more cleanup

* These

* GOD this was annoying

* yeh

* Fix this

* fLARES

* Thesee too

* toys!

* Even more!

* More fixes

* Even more

* rest of em

* these too

* Update syndie.dm

* hardref clear

* Update code/game/gamemodes/nuclear/pinpointer.dm

* Update code/game/objects/effects/mines.dm

* Update code/game/objects/items/blueprints_vr.dm

* Update code/game/objects/items/blueprints_vr.dm

* Update code/game/objects/items/contraband_vr.dm

* Update code/game/objects/items/crayons.dm

* Update code/game/objects/items/crayons.dm

* Update code/game/objects/items/gunbox.dm

* Update code/game/objects/items/gunbox.dm

* Update code/game/objects/items/gunbox_vr.dm

* Update code/game/objects/items/gunbox_vr.dm

* Update code/game/objects/items/weapons/gift_wrappaper.dm

* Update code/game/objects/items/crayons.dm

* Update code/game/objects/items/crayons.dm

* Update code/game/objects/items/gunbox.dm

* these too

* Update maintpanel_stack.dm

* angry warning

* Fixes packaged snacks.

Fixes improper var default.

* Special handling for these

* proper poly types

* Fixes magclaws

Makes the 'features' it had just part  of base magboots that can be adjusted via varswap.

* Fixes jackets

Fixes https://github.com/VOREStation/VOREStation/issues/18941

* Small bugfix

Makes p_Theyre properly capitialize
Makes examine show proper wording

* Update gift_wrappaper.dm
2025-12-29 13:21:10 -05:00
Kashargul cb746ae066 xenoarch for real (#18951) 2025-12-28 06:52:59 -08:00
Cameron Lennox 6e1551bcb6 Makes DNA locking chips not work if you have no DNA (#18905)
* Makes DNA locking chips not work if you have no DNA

* Makes artifact gun casings delete on use
2025-12-28 14:22:07 +01:00
Cameron Lennox 6035abb83d Some xenoarch fixes (#18949) 2025-12-28 05:43:28 -05:00
Cameron Lennox 63d1254825 Makes R&D artifacts not just 'destroy them for the rocks' (#18928)
* Makes R&D artifacts not just 'destroy them for the rocks'

* elemental

* oh lol

* signals

* Update deconstructable_research.dm

* Update deconstructable_research.dm

* Update __techweb_helpers.dm
2025-12-25 09:28:06 -08:00
Kashargul eb24b5d503 fix bad ssprocesing (#18487) 2025-09-14 23:07:27 +02:00
Cameron Lennox 0e24446f12 Icon Fixup [IDB IGNORE] (#18284)
* Begin the sprite consolidation

* med stand

* Library

* kitchen cart

* hydroponics

* Delete hydroponics_machines_vr.dmi

* furniture

* unused computer

* food

* fitness

* fixes the eggs

* Decals

* Drinks, Devices, and Drakie

* Cryogenic2

* combines

* chemical

* card new

* cards

* bereaucracy

* Xenoarch

* compile

* virology

* vehicles

* toys

* Surgery

* stationobjs

* clean these up

* gets rid of some dupes

* bye

* how did that get there

* Unused

* Gets rid of unused ninja dupe file

* Move all these old doors

* this too

* get rid of dupes

* Update airlock_angled_bay.dm

* fixes the map with a prop

* map fixes
2025-08-17 19:09:57 -04:00
Kashargul 39a0bcd60e Encode changes (#18052)
* change encode

* guhh

* .

* .

* .

* Update code/game/antagonist/antagonist_objectives.dm

Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com>

* Update code/modules/clothing/spacesuits/rig/modules/specific/voice.dm

Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com>

* Update code/modules/news/new_newspaper.dm

Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com>

* Update code/modules/admin/DB ban/functions.dm

Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com>

* Update code/modules/tgui/modules/communications.dm

Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com>

* Update code/modules/mob/living/carbon/human/human.dm

Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com>

* Update code/modules/mob/living/carbon/human/human.dm

Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com>

---------

Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com>
2025-08-05 00:19:22 +02:00
Cameron Lennox 84dc5535dc var/global/list -> GLOB. conversion (#17928)
* These two are easy

* !!!runlevel_flags

the fact it was global.runlevel_flags.len has me a bit...iffy on this.

* !!!json_cache

Same as above. used global.

* player_list & observer_mob_list

* mechas_list

* this wasn't even used

* surgery_steps

* event_triggers

* landmarks_list

* dead_mob_list

* living_mob_list

* ai_list

* cable_list

* cleanbot_reserved_turfs

* listening_objects

* silicon_mob_list

* human_mob_list

* Update global_lists.dm

* joblist

* mob_list

* Update global_lists.dm

* holomap_markers

* mapping_units

* mapping_beacons

* hair_styles_list

* facial_hair_styles_list

* Update global_lists.dm

* facial_hair_styles_male_list

* facial_hair_styles_female_list

* body_marking_styles_list

* body_marking_nopersist_list

* ear_styles_list

* hair_styles_male_list

* tail_styles_list

* wing_styles_list

* escape_list & rune_list & endgame_exits

these were all really small

* endgame_safespawns

* stool_cache

* emotes_by_key

* random_maps & map_count

* item_tf_spawnpoints

* narsie_list

* active_radio_jammers

* unused

* paikeys

* pai_software_by_key & default_pai_software

* plant_seed_sprites

* magazine_icondata_keys  & magazine_icondata_states

* unused

* ashtray_cache

* light_type_cache

* HOLIDAY!!!

this one was annoying

* faction stuff (red?!)

* Update preferences_factions.dm

* vs edit removal

* backbaglist, pdachoicelist, exclude_jobs

* item_digestion_blacklist, edible_tech, blacklisted_artifact_effect, selectable_footstep, hexNums, syndicate_access

* string_slot_flags and hexdigits->hexNums

* possible_changeling_IDs

* vr_mob_tf_options

* vr_mob_spawner_options

* pipe_colors

* vr_mob_spawner_options

* common_tools

* newscaster_standard_feeds

* Update periodic_news.dm

* changeling_fabricated_clothing

* semirandom_mob_spawner_decisions

* id_card_states

* Update syndicate_ids.dm

* overlay_cache & gear_distributed_to

* more

* radio_channels_by_freq

* Update global_lists.dm

* proper

* default_medbay_channels & default_internal_channels

default_internal_channels is weird as it has a mapbased proc() but that proc is never called...

* valid_ringtones

* move this

* possible_plants

* more

* separate these

moves xeno2chemlist from a hook to a new global list.

* tube_dir_list

* valid_bloodreagents & monitor_states

* Junk

* valid_bloodtypes

* breach_burn_descriptors & burn

* more!!

appliance_available_recipes seems uber cursed, re-look at later

* Appliance code is cursed

* wide_chassis & flying_chassis

* allows_eye_color

* all_tooltip_styles

* direction_table

* gun_choices

* severity_to_string

* old event_viruses

* description_icons

* MOVE_KEY_MAPPINGS

* more more

* pai & robot modules

* Update global_lists.dm

* GEOSAMPLES

Also swaps a .len to LAZYLEN()

* shieldgens

* reagent recipies

* global ammo types

* rad collector

* old file and unused global

* nif_look_messages

* FESH

* nifsoft

* chamelion

* the death of sortAtom

* globulins

* lazylen that

* Update global_lists.dm

* LAZY

* Theese too

* quick fix

---------

Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
2025-07-14 20:14:31 +02:00
Kashargul 5a5d8117ae no infinite materials (#17814)
* no infinite materials

* cleanup

* RMS and some other stuff

* fix name

* shock fix

* .

* .name

* Update RMS.dm

* names

---------

Co-authored-by: C.L. <killer65311@gmail.com>
2025-06-07 10:08:18 -04:00
Will 9aee635261 fixes vampire artifact forensics (#17812) 2025-06-06 23:36:20 -07:00
Will ae718f07e3 Forensics Datum (#17796)
* forensics datum initial work

* typo fix

* glove recursion fix

* missing bloodtype on organ data

* removed frustrating and unneeded b_type var from humans

* no leaky

* listcheck

* documenting

* documentation
2025-06-05 23:30:11 -07:00
Cameron Lennox 00c53c10f7 Global chem blacklist + SM addition to blacklist (#17724)
* Chem blacklist

* immunoGLOBulins
2025-05-19 13:53:34 -07:00
Cameron Lennox bf52fdd23d RMS Adjustments (#17490)
* RMS Adjustments

Makes the RMS more useful

Including MATH this time!

* Update RMS.dm
2025-04-21 17:20:31 -04:00
Selis 28e969778c code/global.dm => code/_global_vars/ (#17244)
* 1

* Full conversion

* .

* .

---------

Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
2025-04-21 05:55:25 -04:00
SatinIsle 94e61bdfc0 Fixes some bad Destroy()s (#17511)
* Fixes some bad Destroy()s

Fixes some bad destroys on request of Kash, will need checking over that I've not misunderstood the instructions! This is all I had time to look through for now. Checked around 200-ish files.

* The rest of them

Found a quick way to look through them all

* Update chicken.dm

* fix that

* don't abuse destroy

* .

* move this up

---------

Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
2025-04-12 00:15:42 +02:00
Cameron Lennox c42610c5ae Have you bingled that (#17407)
* Initial wiki system

* wiki organization and spoilers

* hide belly chems

* move ads to tgui

* add search

* .

* load screen

* error screen

* 8

* center

* .

* .

* make this more realistic

* tgui errro col

* move search to top

* .

* non NT theme

* logo to common

* base custom theme

* .

* wip refactor

* almost halfway

* reworked wiki data

* easy fix

* get data fix

* Material Page in tgui

* catch null supply points

* .

* forward crash

* reset pages

* .

* canvas prep

* fix icon stacking

* .

* colored outlined images

* fix sm datum

* fix material names

* subType prep

* only on crash

* fix null crash

* .

* fix solgov

* clean hiding

* .

* implement catalog page

* .

* particle smasher page

* I'm lazy

* unfuck some sins

* ore page

* botany page

* allergen list

* allergen returns null too

* slime injection var

* slime core data

* fixed warning

* wip

* proper data list for chems

* pass is_slime as null

* chems

* split that

* .

* .

* .

* .

* donation for bingle, some cleanup

* return types

* partially colord icons for chemistry

* .

* more sillies

* donation page

* thaler

* needs some variation

* .

* this will crash until implemented

* handle it

* fix that

* dismiss donation banner button

* .

* fix that

* donating procs

* donation stuff for comp

* -

* drink glass for drinks

* illegal iconstate pass

* fixes

* .

* nuke drink fix

* .

* .

* .

* Drink reagent fix

* more cleanup

* adjust

* .

* simple food

* .

* food list

* sending nulls, removed flavor from recipes

* .

* .

* get_donation_current added

* .

* missing key

* .

* duped recipes fixed

* .

* .

* wiki food reagent recipes

* double list add

* properly forbid remaining bad reagent

* hide this too

* stacky

* enable eslint const

* fix typing

* update that

* use proper donation proc

* printing fixes

* grinding

* .

* beaker fill volume

* plant ore and mat grinding results

* duped recipes fixed, unit test tweak

* yes this is terrible

* .

* .

* .

* chem analyzer tgui mode, some subsystem changes to support it

* redoce

* .

* ,

* .

* small fixes, missing reagent volume

* push

* sort

* catalog entries unlocked by explo

* new chem stuff

* .

* fix byond code

* fix scroll tracking

* comment

* alphabetical

* also this

* .

* fallback icon

* .

* ...

* rel path

* that too

* to defines

* organ to define

* .

* .

* .

---------

Co-authored-by: Willburd <7099514+Willburd@users.noreply.github.com>
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
2025-03-28 19:00:50 +01:00
Cameron Lennox da674d2008 Multiple bugfixes (#17432)
* Fixes

For downstream:
File to remove:
modular_chomp/code/modules/mob/living/carbon/human/species/species.dm

Upports the vars in that file and fixes traits

* whoops

* Lightning bugfix

* Fixes humans to have the proper skin color
2025-03-27 04:13:36 -04:00
Cameron Lennox e1051a0a22 temp & blacklist (#17415) 2025-03-24 11:41:52 +01:00
Kashargul d3b7ba8b43 next new to init (#17400)
* next new to init

* .

* this needs thorough testing

* .

* needs an istype

* also vnotice

* mvoe to defines
2025-03-24 06:18:39 -04:00
Cameron Lennox 6e71fe3c9d More xenoarch artifact tweaks (#17321)
* No more being uber shaky Zwide

* Artifact random activation chance (except gas)

* Gas will not spawn active!

* Artifacts will ALWAYS be visible. No more accidentally hitting them!

* Allows you to properly interact with activated touch artifacts

* move the init order for this

* better handling

* even BETTER handling!!!

* Update artifact.dm

* git....
2025-03-18 15:32:13 +01:00
Cameron Lennox 7b91a3d754 No rejection (#17351) 2025-03-15 15:49:54 +01:00
Kashargul 46bea7cfa2 Initialize fixing (#17279)
* Initialoize fixing

* diff fix

* add init grep test

* fixed missed ones

* .

* some more

* ,
2025-03-08 13:59:29 -05:00
Cameron Lennox 6a157d8614 Rig glovefix and Clothing protection fix (#17118)
* Fixes RIG gear to not drop your equipped items

Fixes the rig gear to not drop your equipped gear after undeployment

* better fix

* Fixes suits and RIGS

- Makes rigsuits no longer eat your gloves
- Allows you to properly wear a ring under a rigsuit
- Gets rid of a LOT of duplicate var  = XYZ in places
- Makes it so clothing actually properly provide protection to the areas they're covering. (This doesn't change anything unless their actual min_cold_protection or max_heat_protection is adjusted!)
- Adds a define for CHEST which is just UPPER_TORSO|LOWER_TORSO to make it clear it's protecting your WHOLE chest at a glance.
- Gives some things like knee-high and thigh-high boots proper leg protection

* Clothing unit test

* fixes

* oops

* hoods are snowflakes

* hood fix

* path fix

* no nullspace turf

* nullcheck

* don't test devwarning cloths

* ignore this too

* more exclusions

* more exclusions, disabled species test

* Changes So Far

* holding/wearing icons for clothing

* fixed

* more fixes

* lets try this again

* go

* tesh cloak

* some more

* devwarning

* the cursed one

* oops

* fixed species scan

* Update clothing.dm

* restrict this down a bit more, we don't want unit-test to choke

* no more CI killer

* suit defined name twice

* suit

* some more exclusions

* etc

* gwah

* gwah

* clarifying exclusions

* yet more exclusions

* another set of exclusions

* ranger

* compile

* more bitflag

* yet more exclusions

* more

* more missing

* Update sifguard.dm

comment (also to wake up travis)

* more exclusions

* sifguard

* more exclusions

* more

* send help, yes more exclusions

* lost to time

* skrell stuff

* offear is special

* fixes more and unbreaks protean rigs

* The big one

* wrong ifdef

* more

* boots

* Update accessory.dm

* small object fix

* lets be more careful

* Does this fix the signal

* is it the signal?

* FIXES THE REST OF THEM

* wah

* disable test

* the last one

* fix signal check

* fixes

* ignore storage

* teshari blacklist

* tesh

* God speed

* fixed progression removed lizard

* fixes some i guess but what's the point

* disable indepth check

* START ROBOT SPRITE VALIDITY

* Revert "START ROBOT SPRITE VALIDITY"

This reverts commit c9bfb7e9ce.

* consistency with another test

* yuh uh

---------

Co-authored-by: Willburd <7099514+Willburd@users.noreply.github.com>
2025-03-01 11:56:30 -05:00
Drathek d062ff9f49 Port OD Pragma Lints (#17171)
* Experimental: Port OD Pragma Lints

* first pass: Includes icon forge fixes/updates

* 2nd pass

* third pass

* debug_ai: This what you're unhappy with?

* Revert "debug_ai: This what you're unhappy with?"

This reverts commit bc178792e6.

* How about this

* Or is it the else?

* Pass summer

---------

Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com>
2025-02-26 18:12:03 -05:00
Cameron Lennox 1d630199d9 blacklist (#17160) 2025-02-16 02:31:39 +01:00
Kashargul 2ae6355aff more new to Init (#17147)
* more new to Init

* fix pumps

* style update

* fix atmos memory leak

* fix mech

* qdel in here

* Update hands.dm

* Update rings.dm
2025-02-16 00:16:15 +01:00
Cameron Lennox f43b7a1d88 Xenoarch Gas Tweaks (#17047)
* Increase artifact gas trigger

* Makes artifacts go kaboom if they get too hot.

* new=>init & unreg signals

* no more booms
2025-02-05 14:01:51 -05:00
Cameron Lennox 68e41ff7ab More xenoarch tweaks (#17011)
* More xenoarch tweaks

- Massively lowers chance of the virgo beacon spawning
- Massively lowers chance of both guns and laser guns spawning in war digsites (The chances you would find a fully functioning gun is pretty low, honestly. This reflects that.)
- Lowers chance of finding the cult blade
- Adds human corpses to temple digsites, war digsites, and garden digsites
- Adds alien corpses to garden digsites and war digsites
- Adds robot corpses to war digsites and technical digsites

* fixes the guns

* fixes name

* Blacklists pulse rifle shells

* Fixes lightning spam

* fixes an artifact typo

* Fixes a few typo errors

* gets rid of radiation explosion

Happened when accidentally hitting an artifact tile and destroying it

* Better artifact mining logic

- Adjusts the artifact wreckfinds proc so you can't constantly run into an artifact to excavate it
- Makes small artifacts able to bonk you if you destroy them, but only at a 10% chance per turf. (Does no lasting damage)
2025-02-01 14:24:00 -05:00
Kashargul 7be621e7c3 usr to user part two (#16884)
* usr to user part two

* this can be null

* A few edits

- Gets rid of src. in a few places that were edited
- Gets rid of a few //VORESTATION comments
- Removes an unneeded sanity check in sizegun_vr
- Gets rid of a mind boggling !usr check in mob.dm
- Changes usr to user in sizegun_vr.dm

---------

Co-authored-by: Heroman3003 <31296024+Heroman3003@users.noreply.github.com>
Co-authored-by: C.L. <killer65311@gmail.com>
2025-01-30 17:17:46 -05:00
Cameron Lennox 7a080a544f adds things to lists not dumbly (#16973) 2025-01-27 08:36:37 -05:00
Kashargul 63e434274d bunch of more xenoarch stuff (#16962)
* bunch of more xenoarch stuff

* .
2025-01-27 03:09:00 -05:00
Kashargul 394b2a4789 some destroy cleanup (#16958)
* some destroy cleanup

* fix inits

* deconf

* wrong PR

* rm duplicate

* fix that

* forgot that
2025-01-27 09:11:39 +10:00
Cameron Lennox 09b36a7ff6 Xenoarch Rework [Ready for Review] (#16757)
* WIP Xenoarch

* Removes the chompedits

* Makes field gen not required.

Genuinely, it was a relic and NOT fun at all to lug around this giant machinery that all it did was make it so you could actually GET the artifacts.

It added nothing to the experience and simply made it feel more clunky.

Previously, the field generator REQUIRED you to select what "generator field type" it needed, which was 'used in conjunction with analysis machines to determine correct suspension field type'...

Or, if you did what 99% of every xenoarch player did, you learned how to code dive or used the wiki ("Oh, metal composite = this field gen type").

Someone down the line realized this was a dumb idea and proceeded to axe the types.

Now, I axe the generator entirely. Still leaving this IN here in case someone DOES want to reenable it, but it just makes the whole xenoarch experience that much more worse in my opinion.

Especially when you get to deposits in awkward positions that are sandwiched between two walls, meaning you can't excavate AND use the suspension gen at the same time without choosing one of the tiles to break. Visual example below. X walls, x open space, O artifacts.
XXX
xOX
xOX
XXX

* Part 1

-Slashes a LOT of RNG from xenoarch spawns. No longer will you get 5 normal, mundane bowls in a row that all look the same. They're GUARANTEED to have coloration and various effects

- Adjusts a LOT of the RNG of xenoarch spawns.

- Remove shards (was just a glass shard...The most disappointing find you could get)

- Removes rods (See above)

- Removed Cutlery (See above)

- Increases chance for the vampiric statuette to spawn

- Makes the 'syringe' archeology find generate random 3 to 6 random chemicals that get stuffed into the syringe. (Using same blacklist as the xenoflora chem blacklist)

- Readjust spawned /material weights for items. These are ALIEN artifacts. It's boring to get your 20th 'alien wooden bat' of the day. Now it's COMPLETELY random. You might get a glass bat. Or a supermatter bat. Or a diamond bat. Who knows! (Has a blacklist that includes adminspawn materials or materials that would be  too strong/make little sense. No durasteel hull knives here!)

- Made things that just spawned "this weapon" spawn a subtype of "this weapon". Things like knives, handcuffs, 'flame' (includes matches now), tanks, and tools will also follow this logic.

- Adjust it so you can get an alien tool AND alien clothes

- Alien remains aren't just useless bones anymore, they spawn with a randomized plasma vessel and organ! Go ask medical to shove it in ya!
(TODO: Test that medical can ACTUALLY shove it in you)

- Removes the no fun 'Oops you accidentally dug too far, the artifact inside breaks!' when it comes to rocky debris because the game never tells you to dig 1 at a time.

- Expands the list of what the replenishing bowl can spawn with. Uses the xenobio plant chemical blacklist. (TODO: Add a  'blacklist' var on said chemicals, sometime)

- Makes it so ARCHAEO_REMAINS_HUMANOID can spawn a random organ.

- Makes it so the ARCHAEO_REMAINS_ROBOT spawns a lost drone pod.

- Makes it so guns are more randomized in xenoarch. They now tell you what bullet type they require
Additionally, they are now a subtype of bullet and can spawn with ANY /bullet. This makes the guns ACTUALLY really weird.
- Makes it so your xenoarch guns will always spawn with some bullets.

-Expands the alien clothes spawn to include the gluttony psy_crown.

- Makes the 'ARCHAEO_UNKNOWN' that was previous broken (and spawned nothing) spawn a rare research sample. (This is generally useless since the circuit printer exists and R&D can be speedran in 10 minutes, but whatever. If your xenoarch finds one in precursor or anomalous you'll be happy.)

- The plant fossil notes to give it to xenobotany and extract it.

- Gives the instrument spawn logic the same as everything else. Subtypes.

- Swaps the 'ARCHAEO_CULTBLADE' cultblade to a new archeology based cultblade. Has SPOOKY effects. (TODO!)

- Adds the library tome to the possible spawn pool for temple digsites (Useless unless you're an antag cult but SPOOKY

- Gets rid of 'digsite animal' as it was completely irrelevent due to bones not being able to put in the xenobio machine to give you animals. (This was a very VERY old feature. I can't even recall how many years ago)\

- Makes every xenoarch effect have its own individual tag.

- Makes it so the artifact analyzer actually gives you an idea of WHAT the artifact will do instead of saying "I dunno boss, go test it and accidentally blow medical up"

- Makes it so the artifact analyzer gives you an idea of how the artifact disperses it's effect, other than using weird super sciency-sounding terms and requiring you to code dive

- Reworks the vampire artifact spawns to make it so you're rewarded for interacting with it via spawning spooky cult-themed objects.
This makes it so there's actually a (small) incentive to experiment with it instead of just proccing it once and going "INTO THE BOX OF THINGS TO NEVER BE TOUCHED AGAIN"

- Better formatting for the anomaly analyzer. No longer will it be a MASSIVE wall of text, especially if it has multiple artifacts!

* Part 2: Guns and Weight

- Adjusts the large artifact find rates. Some things (like the supermatter shard, which could just instakill the xenoarch and the crystal which was useless)  were too high, while some (like the construct shell) were too low and would NEVER really be seen. (I've done xenoarch for years now and have only seen ONE construct shell.

Previous drop rates:
Total Wt In Pool: 1590
5 wt: 0.31%
25 wt: 1.5%
100 wt: 6.2%
150 wt: 9.4%
1000 wt (artifact): 62.8%

New wt:
	// Our total is 560 (As of the time of writing. If ANY of the weights are adjusted above, you have to recalculate. Formula: (thingy_wt/total_wt)*100 = % chance of drop)
	// Artifact: 53%
	// 50 wt: 8.9%
	// 25 wt: 4.4%
	// 5 wt: 0.89%

- Adjusts the archeology gun logic. Makes it actually functional AND makes it so you can't remove the fancy bullets out of it.
- Adjusts the archeology calibers to ones that can be obtained.
- Adds a note to the archeology gun when examined that it requires ONE bullet at a time. No speedloading these alien guns!
- Makes it so the archeology gun has the proper special HUD state depending on what bullet type is loaded.
- Fixes a few runtimes pertaining to secondary items

- ADDS A DEBUG SPAWN VERB SO I CAN TEST ALL THIS. THIS NEEDS TO BE REMOVED PRIOR TO MERGE.

- Fixes an unintentional = vs == in archeo_melee.dm. It's not completed yet and is in an EARLY wip stage but might as well fix it sooner than later.

* Added an extra failsafe last second and forgot to tab it

* angy

* Energy guns

- Makes xenoarch laser gun follow the same logic as the xenoarch projectile gun, but SOMEWHAT stricter. (Not using projectile/energy for example. Beams, ion, animate, and floramut rays only!)
- Removes the '5% explode on use' chance

* Update find_spawning.dm

- Fixes a few runtimes with material display names. Some didn't have any and would runtime.
- Adjusts and expands the list of the source_material if we don't have a specific material display name. It's supposed to be alien artifacts, so unearthing a ring made of pure meitnerium or a bowl composed of roentgenium is COMPLETELY in the realm of possibility.

* More spawn logic

- Makes material stuffs spawn properly
- Makes the robot pod spawn properly
- Makes the cursedform stop spawning (It served its purpose of confirming stuff worked)
- Makes rings have different materials (https://i.imgur.com/T9OzU4p.png)
- Makes gasmask able to spawn as either a poltergeist or a voice type.
- Makes the banned materials a list in the proc only once instead of multiple times. (Cuts down on copy paste errors and makes it easier to add to. Could honestly make it a global list but eh.)
- Makes the new_item_mat default to steel correctly.
- Allows for secondary items to have different names and desriptions.

* More Small Artifact Adjustments

- Gives the artifact blade a proper decription
- Makes the vampiric statuette no longer RNG.
- Makes the occult clothing spawn in sets instead of mix&matched
- Makes the research sample (ARCHAEO_UNKNOWN) spawn properly.
- Fixes the syringe from having too much volume and not having the sprites. It's limited to 15u now, but spawns with 5 chems now, 3u each.
- Fixes the alien clothes from having the same name as the alien tool
- Makes it so boats spawn properly.

This is ALL the small artifacts taken care of, fixed, and having additional fluff added to them.

Next, I need to adjust the large artifacts, add feature to the artifact sword, rework the vampiric statue, and see about touching up the other xenoarch code

* Shock Maul Adjustment

- Makes the shock maul's description of breaking rocks different. Plays a different sound as well

* whoops quotes

* More adjustments!

- Vampiric statuette has a hint/warning of how to activate it in it's description

- Makes shadow wrights NOT sit in nullspace 5ever after activating
- Makes shadow wrights give you some fluff text instead of just randomly KOing you.
- Makes the vampiric statuette follow the same spawn logic as the vampiric large artifact

* More sword stuff

- Adds 'ispassive' typecheck helper
- Makes the artifact blade's origin tech 6/6/6 because funny
- Makes it so the cult sword only starts processing when it's first touched.
- Makes cult sword stop processing when the user dies or stops existing.
- Adds some more features

* More relic sword stuff

More artifact blade works.
- Various blade fixes

- Makes it so it can 'consecrate' SIMULATED turf, SIMULATED walls, and  girders.

- Also adjusts 0 & 1 for grille destruction & bullet passthrough to false/true while I was in there

* Purge is lame get rid of it

* mixup

* Finishes artifact sword

Makes it so if you use it and destroy it, it gets VERY upset
Makes it so the artifact sword is a way for archeology to - slowly - exchange health and time in exchange for artifacts

* Verifies all artifact effects works, fixes some

- Makes the xenoarch anomaly harvester ACTUALLY work
- This has a BUNCH of features but I'll have to detail them out better once the PR is ready for review
- Fixes a bug where rarely, "datum/artifact_effect/extreme" would get selected and do nothing.
- Fixes a server-crashing bug.
- Makes all the artifacts compatible with the artifact harvester
- Moves 'being_used' from the artifact to /obj
- Makes gas artifacts not 100% useless.
- Makes some more adjustments to the artifact sword

* small rewrite

* lightning and culstist check fixes

* iscultist

* More small adjustments

* Organization

Organizes all the atmos affecting artifacts into one folder

* Condenses artifacts

- Condenses a LOT of the artifacts down and gets rid of duplicates.

* Updates dme for new artifacts

* switch

* Type  Changes

- Adds wrench to xenoarch supply pack
- Changes istype to ishuman, isrobot, ismob where applicable

screech

* Changes <b> to span_bold

In applicable places

* Adds Power Generator artifact

- Adds power generator artifact
- Adds some sounds from Goonstation to go along with the new artifact
- Makes it so animate_shake is a proc on /obj instead of just /closet
- Makes it so you can activate artifacts with gloves on, but you won't accidentally touch them if you have gloves on.

* More edits

* Procedural gen. Rock adjustment. Drill buffs

- Speeds up excavation drill (It made no sense it  was a downgrade in speed)
- Makes it so  when going to change the depth, it defaults to whatever it's currently set to
- Makes excavation drill able to go up to 60cm
- Makes xenoarch lockers start with excavation drill
- Changes loot pile prob2 from excavation pack to excavationdrill
- Makes it so mining vendor also sells the excavation kit
- Gives miners a basic anomaly scanner (but NOT the anomaly locator) to allow miners to do basic archeology if they stumble across a rock and want to excavate it but can't actively search and locate artifacts that archeology might be going for.
- Makes archeologist's anomaly scanner able to do continual artifact searching and generation. No more will you 'run out' of artifacts halfway through a round and have nothing to do anymore. This only occurs when all large (or small) artifacts have been completely depleted on a Z level.
- Makes it so boulders no longer randomly spawn when miners are mining, even when no artifact was there.
- Makes anomaly scanner do procedural generation to keep giving further ability to mine.
- Makes it so strange rocks can be mined with any /pickaxe, as small picks (the excavation pickset) was destroying them

* Gets rid of clearance

- Gets rid of clearance range. It was confusing and not helpful in the slightest for players.

* Gets rid of unused variables

* Removes unused vars from the tsx as well

Wanted to test to make sure it'd work first

* More bugfixes

- Fixes excavation drill text
- Fixes runtime with responsive reagent
- Makes temperature artifact show up properly to the scanner
- Fixes a typo with the atmospheric effect name
- Adds some spaces to effect.dm to make the artifact analyzer effect show up properly.
- Removes a few invisible sprite organs from spawning

* Untick

* Adds a cooldown and sanity check

- Adds a cooldown to the procedural generation of the ano scanner.
- Makes the debug ability a proc on /mob so that admins can call it to spawn artifacts.
- Adds a sanity check since it's now a proc that can be called.
2025-01-27 07:15:58 +10:00
Kashargul 59b9802628 some istype to macros (#16826) 2025-01-06 06:45:02 +10:00
Kashargul 4e7742e3c8 food.dm 2024-12-08 04:26:19 +01:00
Kashargul a12a4d2d5e toxins.dm 2024-12-07 01:03:25 +01:00
Kashargul 2bd0f9c14d other.dm 2024-12-07 00:12:42 +01:00
Kashargul 429398bdd7 some moire 2024-12-06 21:54:05 +01:00
Kashargul 80edcd2c3d Converts gas, mat and reagent strings to defines 2024-12-06 17:26:00 +01:00
Killian 6a8f1bfc40 samples from strange rocks 2024-11-29 06:41:02 +00:00
Killian 4869595855 ring/watch accessory transfer 2024-10-29 00:23:23 +00:00
Kashargul a2c673ab7a refactors most spans 2024-10-02 21:10:31 +02:00
Guti 409aaba802 Remove 2024-09-09 02:36:53 +02:00
Kashargul befde06ee9 some more 2024-07-30 00:43:37 +02:00
Heroman3003 c7b6c3e42b Revert "Revert "Garbage collection, asset delivery, icon2html revolution, and…" (#15816)
This reverts commit f6d0f62622.
2024-04-22 06:29:01 +10:00
Heroman3003 f6d0f62622 Revert "Garbage collection, asset delivery, icon2html revolution, and general…" (#15815)
This reverts commit cc05d51b69.
2024-03-10 20:01:05 +10:00