Commit Graph

31830 Commits

Author SHA1 Message Date
Atermonera
beaf109060 Refactors posters to use decls (#8128)
* poster

* Moves decls_repo init forward

* Moves decl_repository init even further forwards
2021-06-18 19:14:49 -07:00
Atermonera
a1327676d8 Fixes unlocked air alarm uis (#8149) 2021-06-18 19:12:35 -07:00
MarinaGryphon
c224b192a9 Improves select_recipe. (#8141)
* select_recipe improvement

Removes the call to Timsort and the recipe comparator proc;
uses a handrolled implementation of
`argmax(items + reagents + fruit)` instead.
This reduces the memory footprint of `select_recipe`
as well as the amount of processing needed to select the optimal recipe.

* angelogchay
2021-06-18 14:06:27 -09:00
MarinaGryphon
1672a51eff Refactors utensils to use weakrefs (#8140)
* Refactors utensils

* fixes + removes extraneous var

* fixes another missed arg
2021-06-18 14:01:35 -09:00
Atermonera
68eadcc100 Merge pull request #8138 from Verkister/patch-72
fixes coughs screaming in the chat
2021-06-18 15:37:29 -07:00
MarinaGryphon
f9613f24bc Removes Global Iterators (#8146)
* Removes global iterators

* fix dme?

* removes useless var, TRUE/FALSE for state/equip_ready
2021-06-18 09:06:17 -09:00
MarinaGryphon
626130a0a1 makes it actually work 2021-06-16 10:42:04 -05:00
MarinaGryphon
3fa0e5cec2 linter + refactors advancedwho/staffwho
This simplifies some very old and bad code, and unifies the admin/non-admin printing to avoid duplicate code.
Also fixes a number of bugs caused by ambiguous parens and various linter errors.
2021-06-15 13:49:58 -05:00
Verkister
c61917fb90 fixes coughs screaming in the chat 2021-06-14 23:44:28 +03:00
Atermonera
9db050951e Merge pull request #8136 from VOREStation/Arokha/ssrobust
Improve subsystem robustness
2021-06-14 00:36:04 -07:00
Atermonera
688b9f4037 Merge pull request #8135 from Ketrai/letthemeatcakeagain
Makes the chaos cake cheaper.
2021-06-14 00:34:09 -07:00
Hatterhat
185d7a1c81 clamps decon_mod between 0 and 1 (#8133)
* when the decon_mod is above 1 :sus:

* when the operator is mixed
2021-06-13 22:33:03 -09:00
Atermonera
ab1ff7034e Merge pull request #8132 from VOREStation/Arokha/holofix
Fix random holoplant bug
2021-06-14 00:32:31 -07:00
Atermonera
0c5a31b0aa Merge pull request #8131 from VOREStation/Arokha/parapod
Ports Paradise pod doors
2021-06-14 00:31:35 -07:00
Atermonera
7a7e77ccf5 Merge pull request #8129 from Hatterhat/patch-1
leg holsters in cargo crate
2021-06-14 00:30:23 -07:00
Atermonera
f65c46bb32 Merge pull request #8126 from MistakeNot4892/chirp
Added unit test to ensure emote key uniqueness.
2021-06-14 00:29:07 -07:00
Atermonera
817f8ab2ca Merge pull request #8125 from Hatterhat/yet-another-ripley-buff
ripleys autoscoop ore in an aoe
2021-06-14 00:27:30 -07:00
Atermonera
5c74a1355b Merge pull request #8124 from Mechoid/GraffitiMappingAssist
Adds a graffiti spawner for PoI and general map-making.
2021-06-14 00:26:20 -07:00
Atermonera
dabfdc14db Merge pull request #8122 from VOREStation/Arokha/access
Make req_[one_]access lazy
2021-06-14 00:22:04 -07:00
Aronai Sieyes
1fd1d84deb Runechat (#8121)
* Message piece combiner returns a list

* Emote formatter returns a list

* Port Runechat

* Various onamonapoea

* Suggested changes, small opts

* Fix chat message on different size mobs

* Couple more runefixes

* Enable encoding chat emphasis in runechat

* Remove extra asterisks from rune audible messages

* Fix runedefines
2021-06-13 22:18:43 -09:00
Verkister
c9873ff9ed Fixes some unseen combat ai jank (#8116)
* Fixes some unseen combat ai jank

haha lack of exit consition go brrrr

* wow the conflict resolve editor is a piece of crap
2021-06-13 20:31:27 -09:00
Aronai Sieyes
bac077a8ea Portable mapping devices (#8097)
* Refactor holomap generation

* Portable mapping units

* Fix misnamed state

* Make it small

* Reduce power usage

I didn't know you could use fractional amounts!

* Apply suggested changes, fix indent

* Fix icon_state bug
2021-06-13 20:30:00 -09:00
Aronai Sieyes
75c9cca2ad Improve subsystem robustness 2021-06-12 17:34:23 -04:00
Ketrai
aea07924ef Makes the cake cheaper. 2021-06-12 12:40:54 +02:00
TheDavestDave
aacdcaad87 stops armour plate and armour plate inserts having the same name, and examine text as each other (#8123)
armour plate and armour plate inserts have the same sprite, name, and examine text in game. I can fix two of  three things. You need to do stuff with amour plate inserts to make it fit in a plate carrier wile amour plate just will never fit
2021-06-10 22:08:58 -07:00
Aronai Sieyes
1efd17e696 Fix random holoplant bug 2021-06-08 20:42:18 -04:00
Aronai Sieyes
c090d2c340 Ports Paradise pod doors 2021-06-08 20:41:18 -04:00
Hatterhat
b7f0c67e7f leg holsters in cargo crate 2021-06-07 05:42:51 -05:00
MistakeNot4892
14c125f41d Added unit test to ensure emote key uniqueness. 2021-06-07 00:16:58 +10:00
Hatterhat
ce7baa0946 in this thread, i disguise a buff as qol again 2021-06-06 05:57:01 -05:00
MarinaGryphon
5dc47dd3ed Adds unit test for invalid recipes (#8119)
* Adds invalid recipe unit test

Checks for:
- Missing result type
- Result type is not /atom/movable (mob or obj)
- Result quantity unset
- Quantity less than or equal to zero
- Quantity is not an integer

* Update recipe_tests.dm

* adds tests to dme

* dont code at night (remix)

* Update recipe_tests.dm
2021-06-06 00:36:52 -09:00
MarinaGryphon
f95bcd462d Fixes infinite loop following cooking error (#8118)
* Fixes infinite loop following cooking error

```
		while (select_recipe(available_recipes,C) == recipe)
			var/list/TR = list()
			TR += recipe.make_food(C)
```
This would never consume reagents due to an early return, meaning it would never terminate from the while loop. Clearing the reagents is an easy fix for something that will hopefully never happen, and avoids locking the server up if it does.
Also makes such failures obvious.
TODO: Unit test for recipes without results.

* Fixes/tweaks

* fix CI
2021-06-06 00:36:12 -09:00
Shadow-Quill
7add1a7784 Adds new UI for secure stuff (#8117)
* Adds new UI for secure stuff

* Updoot bundle
2021-06-06 00:34:37 -09:00
Casey
c331cd5409 Random mob spawners can accept faction input now (#8115)
* Random mob spawners can accept faction input now

The variable was there, just not used for anything, so I fix

* Update code/game/objects/random/mob.dm

Co-authored-by: Heroman3003 <31296024+Heroman3003@users.noreply.github.com>

Co-authored-by: Heroman3003 <31296024+Heroman3003@users.noreply.github.com>
2021-06-06 00:23:09 -09:00
Novacat
51011c9c5d Add Secret ZLevels (#8111)
* Add Secret ZLevels

Port of https://github.com/VOREStation/VOREStation/pull/10430

* Update observer.dm
2021-06-06 00:22:27 -09:00
Atermonera
c033544a62 Merge pull request #8104 from Cerebulon/rocknroll
Adds new rocks + resprites mining outcrops
2021-06-06 02:16:55 -07:00
Atermonera
cd50b5a4e7 Merge pull request #8099 from MistakeNot4892/chirp
Tweaks to emote system to avoid memory overhead and make runtime validation easier.
2021-06-06 02:13:39 -07:00
dwinters99
a23eccdfb4 Adds more winter coats + moves existing winter coats to the same file (#8086)
* code changes

* icon changes

* armor redefine fix
2021-06-05 22:51:39 -09:00
Atermonera
80d4493e9a Merge pull request #8080 from Atermonera/dbcon_onebuttonfix
Adds admin verb to hopefully fix database connection failures
2021-06-06 00:42:26 -07:00
Mechoid
c690c5febb Adds a graffiti spawner for PoI and general map-making. 2021-06-05 23:20:06 -07:00
Aronai Sieyes
e2c32cae91 Make req_[one_]access lazy 2021-05-31 22:43:11 -04:00
MistakeNot4892
3267ae47b7 Tweaks to emote system to avoid memory overhead and make runtime validation easier. 2021-05-30 23:08:24 +10:00
Atermonera
7aa86700dd Merge pull request #8114 from VOREStation/Arokha/langsani
Fix language sani on relogins
2021-05-29 12:10:04 -07:00
Aronai Sieyes
26940c7e12 Various small fixes (#8112)
* Make nurse spiders forget target

* Tweak or break AI

* Fixes ice edges

* Allow better mapped-in marker beacons

* Allow mapped-in graffiti

* Add spaceship hull corners

* Improve hull corner color finding slightly
2021-05-29 10:08:39 -09:00
Novacat
305473a76a Makes deepspace levels slightly more robust (#8110)
* Makes deepspace levels slightly more robust

Port of https://github.com/VOREStation/VOREStation/pull/10408

This is supposed to fix oddities with the overmap system where occasionally deepspace sectors are not generated properly.

* Ports another Fix
2021-05-29 09:47:18 -09:00
Atermonera
5a4cf24ae7 Merge pull request #8109 from Woodratt/05252021_Bitsnbobs
Misc Bits
2021-05-29 11:42:42 -07:00
Atermonera
7690bf69f3 Merge pull request #8108 from lbnesquik/Kot-figure
Make figurines small instead of normal sized
2021-05-29 11:41:26 -07:00
Atermonera
9c401124c7 Merge pull request #8107 from Novacat/nova-accessory
Autoinjectors are Autoinjectors
2021-05-29 11:40:15 -07:00
Novacat
be7e5898c3 Voidsuit Balance Overhaul (#8106)
* Voidsuit Balance Overhaul

Overhauls the stats of voidsuits and tries to put them into niches. So far, I decided to go with a tier-based system.

Tier 1: Basic voidsuits available to the station and can be purchased from Cargo fairly cheaply (35 points).
Tier 1.5: These are slightly improved over Tier 1, but not as good as Tier 2. Currently, only the exploration/exploration medic voidsuits fit the bill.
Tier 2: These voidsuits are available to the station, but can only be purchased from Cargo at higher prices (60 points).
Tier 3: Mercenary voidsuits.

One of the key factors in this overhaul is that the slowdown on voidsuits was made granular. Instead of all voidsuits having a slowdown of 1 or 0, most voidsuits will have a slowdown of 0.5, while voidsuits that have really good protective attributes (such as security voidsuits) will move slower.

As well as this, most higher end voidsuits were given better breach threshhold and resilience values, because even the most heavily armored voidsuits were way too easy to pincushion for some reason.

On top of this, most voidsuits were given niches.

Engineering Voidsuit (Tier 1): Moderate radiation protection, Slightly better pressure/heat protection. Moves slow (Slowdown 1)
Hazmat Voidsuit (Tier 1): Perfect Rad Protection, but loses pressure/heat protection of engineering voidsuit. Also Slow.
Construction Voidsuit (Tier 1): Lighter than Engineering/Hazmat suits, but lacks either radiation protection or pressure/temp protection. Has a bit of extra armor, too. Mostly for field use.

Reinforced Engineering Voidsuit (Tier 2): Has good pressure/temp protections, perfect radiation protection, and moves pretty well.
Salvage Voidsuit (Tier 2): Same as above.

Mining (Tier 1): Fairly decent melee/bomb armor, and slightly harder to breach. Also mild radiation protection. Heavy.

Frontier Mining (Tier 2): Same as above, except lighter.

Medical (Tier 1): Normal weight, has some radiation protection, but otherwise unremarkable.
EMT (Tier 1): Exchanges radiation shielding for additional armor. Normal weight.
Biohazard (Tier 1): Highish melee protection and high atmos protection. Designed for EMTs in extremely hazardous enviornments.

Vay-med (Tier 2): Zero weight, still made of paper mache.

Security (Tier 1): Moderate protection all round, heavy weight.
Crowd Control (Tier 2): Focus on melee/bomb protection, 
Security EVA (Tier 2): Focus on Ballistics/Laser protection.

Atmospherics (Tier 1): Pretty much the same. Super High atmos/fire protection. Extremely slow. Extremely hard to breach.
Heavy Duty Atmospherics (Tier 2): Same as above, except lighter.

Exploration (Tier 1.5): Normal weight and armored, but skimps on ballistic armor. Not quite as armored as security voidsuits. Above average rad protection.

Field Medic (Tier 1.5): Loses some of the armor, but gains more rad protection and some heat/atmos protection.

Pilot (Tier 1): Some very light armor plating, minor rad protection, otherwise unremarkable.

Blood-red (Tier 3): Mostly the same, except extremely hard to breach now.

Soot-covered Voidsuit (Tier 3): Heavier than the blood-red, but also pressure and fireproof. Loses a very little bit of ballistic/melee protection for excellent laser protection.

* Accidentally copypasta'd a bit too much

* Adjusts Breach Values
2021-05-29 09:39:52 -09:00
ShadowLarkens
d1a081033d Initialize all vending products on server start & fix multiple food icons (#8102)
* Add icons for crablegs and crabmeat

* Build all vending machine inventories on startup (cursed)

* Fix cookie having no icon (convert everything to cookiesnack)

* Remove kabob with no actual definition

* Fix spicy burrito having no icon
2021-05-29 09:24:22 -09:00