Merge branch 'master' of https://github.com/Citadel-Station-13/Citadel-Station-13 into miscsprites
9
.vscode/settings.json
vendored
@@ -12,12 +12,9 @@
|
||||
"editor.codeActionsOnSave": {
|
||||
"source.fixAll.eslint": true
|
||||
},
|
||||
"workbench.editorAssociations": [
|
||||
{
|
||||
"filenamePattern": "*.dmi",
|
||||
"viewType": "imagePreview.previewEditor"
|
||||
}
|
||||
],
|
||||
"workbench.editorAssociations": {
|
||||
"*.dmi": "imagePreview.previewEditor"
|
||||
},
|
||||
"files.eol": "\n",
|
||||
"gitlens.advanced.blame.customArguments": ["-w"],
|
||||
"tgstationTestExplorer.project.resultsType": "json",
|
||||
|
||||
@@ -18,8 +18,6 @@ GLOBAL_LIST_INIT(meteorsB, list(/obj/effect/meteor/meaty=5, /obj/effect/meteor/m
|
||||
|
||||
GLOBAL_LIST_INIT(meteorsC, list(/obj/effect/meteor/dust)) //for space dust event
|
||||
|
||||
GLOBAL_LIST_INIT(meteorsCat, list(/obj/effect/meteor/cat)) //for cat meteors
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
//Meteor spawning global procs
|
||||
@@ -347,17 +345,6 @@ GLOBAL_LIST_INIT(meteorsCat, list(/obj/effect/meteor/cat)) //for cat meteors
|
||||
..()
|
||||
if(prob(20))
|
||||
explosion(src.loc,2,4,6,8)
|
||||
|
||||
/obj/effect/meteor/cat
|
||||
name = "space cat"
|
||||
icon_state = "catmeteor"
|
||||
desc = "Meow."
|
||||
hits = 1
|
||||
heavy = FALSE
|
||||
meteorsound = 'sound/effects/meow1.ogg'
|
||||
meteordrop = list(/mob/living/simple_animal/pet/cat/space)
|
||||
threat = 0
|
||||
dropamt = 1
|
||||
|
||||
//////////////////////////
|
||||
//Spookoween meteors
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
/obj/machinery/computer/bank_machine
|
||||
name = "bank machine"
|
||||
desc = "A machine used to deposit and withdraw station funds."
|
||||
icon = 'goon/icons/obj/goon_terminals.dmi'
|
||||
icon = 'icons/obj/computer.dmi'
|
||||
icon_state = "computer"
|
||||
icon_screen = "vault"
|
||||
icon_keyboard = "security_key"
|
||||
idle_power_usage = 100
|
||||
|
||||
var/siphoning = FALSE
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "A culinary marvel that uses matter-to-energy conversion to store dishes and shards. Convenient! \
|
||||
Additional features include a vacuum function to suck in nearby dishes, and an automatic transfer beam that empties its contents into nearby disposal bins every now and then. \
|
||||
Or you can just drop your plates on the floor, like civilized folk."
|
||||
icon = 'goon/icons/obj/kitchen.dmi'
|
||||
icon = 'icons/obj/kitchen.dmi'
|
||||
icon_state = "synthesizer"
|
||||
idle_power_usage = 8 //5 with default parts
|
||||
active_power_usage = 13 //10 with default parts
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/obj/item/singularityhammer
|
||||
name = "singularity hammer"
|
||||
desc = "The pinnacle of close combat technology, the hammer harnesses the power of a miniaturized singularity to deal crushing blows."
|
||||
icon_state = "mjollnir0"
|
||||
icon_state = "singularity_hammer0"
|
||||
lefthand_file = 'icons/mob/inhands/weapons/hammers_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/weapons/hammers_righthand.dmi'
|
||||
flags_1 = CONDUCT_1
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
/obj/item/singularityhammer/ComponentInitialize()
|
||||
. = ..()
|
||||
AddComponent(/datum/component/two_handed, force_multiplier=4, icon_wielded="mjollnir1")
|
||||
AddComponent(/datum/component/two_handed, force_multiplier=4, icon_wielded="singularity_hammer1")
|
||||
|
||||
/// triggered on wield of two handed item
|
||||
/obj/item/singularityhammer/proc/on_wield(obj/item/source, mob/user)
|
||||
@@ -36,7 +36,7 @@
|
||||
wielded = FALSE
|
||||
|
||||
/obj/item/singularityhammer/update_icon_state()
|
||||
icon_state = "mjollnir0"
|
||||
icon_state = "singularity_hammer0"
|
||||
|
||||
/obj/item/singularityhammer/Destroy()
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
@@ -13,15 +13,16 @@
|
||||
return 0
|
||||
. = ..()
|
||||
|
||||
// Exists to work around the minimum 700 cr price for goodies / small items
|
||||
/obj/structure/closet/secure_closet/goodies
|
||||
// Exists to work around the minimum 700 cr price for goodies / small items / materials
|
||||
/obj/structure/closet/secure_closet/cargo
|
||||
name = "cargo locker"
|
||||
icon_state = "goodies"
|
||||
desc = "A sturdier card-locked storage unit used for bulky shipments."
|
||||
max_integrity = 500 // Same as crates.
|
||||
melee_min_damage = 25 // Idem.
|
||||
|
||||
/obj/structure/closet/secure_closet/goodies/owned
|
||||
name = "private locker"
|
||||
/obj/structure/closet/secure_closet/cargo/owned
|
||||
name = "private cargo locker"
|
||||
desc = "A locker designed to only open for who purchased its contents."
|
||||
///Account of the person buying the crate if private purchasing.
|
||||
var/datum/bank_account/buyer_account
|
||||
@@ -32,18 +33,18 @@
|
||||
///Is the crate being bought by a person, or a budget card?
|
||||
var/department_purchase = FALSE
|
||||
|
||||
/obj/structure/closet/secure_closet/goodies/owned/examine(mob/user)
|
||||
/obj/structure/closet/secure_closet/cargo/owned/examine(mob/user)
|
||||
. = ..()
|
||||
. += "<span class='notice'>It's locked with a privacy lock, and can only be unlocked by the buyer's ID.</span>"
|
||||
|
||||
/obj/structure/closet/secure_closet/goodies/owned/Initialize(mapload, datum/bank_account/_buyer_account)
|
||||
/obj/structure/closet/secure_closet/cargo/owned/Initialize(mapload, datum/bank_account/_buyer_account)
|
||||
. = ..()
|
||||
buyer_account = _buyer_account
|
||||
if(istype(buyer_account, /datum/bank_account/department))
|
||||
department_purchase = TRUE
|
||||
department_account = buyer_account
|
||||
|
||||
/obj/structure/closet/secure_closet/goodies/owned/togglelock(mob/living/user, silent)
|
||||
/obj/structure/closet/secure_closet/cargo/owned/togglelock(mob/living/user, silent)
|
||||
if(privacy_lock)
|
||||
if(!broken)
|
||||
var/obj/item/card/id/id_card = user.get_idcard(TRUE)
|
||||
|
||||
@@ -96,7 +96,7 @@
|
||||
var/static/list/blacklisted_error = typecacheof(list(
|
||||
/obj/structure/closet/crate/secure,
|
||||
/obj/structure/closet/crate/large,
|
||||
/obj/structure/closet/secure_closet/goodies
|
||||
/obj/structure/closet/secure_closet/cargo
|
||||
))
|
||||
if(is_type_in_list(container, blacklisted_error))
|
||||
P.errors &= ~MANIFEST_ERROR_ITEM
|
||||
|
||||
@@ -22,8 +22,8 @@
|
||||
/datum/supply_pack/proc/generate(atom/A, datum/bank_account/paying_account)
|
||||
var/obj/structure/closet/crate/C
|
||||
if(paying_account)
|
||||
if(ispath(crate_type, /obj/structure/closet/secure_closet/goodies)) // lets ensure private orders don't come in crates when the original one comes in lockers
|
||||
C = new /obj/structure/closet/secure_closet/goodies/owned(A, paying_account) // that would lead to infinite money exploits
|
||||
if(ispath(crate_type, /obj/structure/closet/secure_closet/cargo)) // lets ensure private orders don't come in crates when the original one comes in lockers
|
||||
C = new /obj/structure/closet/secure_closet/cargo/owned(A, paying_account) // that would lead to infinite money exploits
|
||||
else
|
||||
C = new /obj/structure/closet/crate/secure/owned(A, paying_account)
|
||||
C.name = "[crate_name] - Purchased by [paying_account.account_holder]"
|
||||
|
||||
@@ -14,56 +14,56 @@
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/datum/supply_pack/materials/cardboard50
|
||||
crate_type = /obj/structure/closet/secure_closet/goodies
|
||||
crate_type = /obj/structure/closet/secure_closet/cargo
|
||||
name = "50 Cardboard Sheets"
|
||||
desc = "Create a bunch of boxes."
|
||||
cost = 300 //thrice their export value
|
||||
contains = list(/obj/item/stack/sheet/cardboard/fifty)
|
||||
|
||||
/datum/supply_pack/materials/glass50
|
||||
crate_type = /obj/structure/closet/secure_closet/goodies
|
||||
crate_type = /obj/structure/closet/secure_closet/cargo
|
||||
name = "50 Glass Sheets"
|
||||
desc = "Let some nice light in with fifty glass sheets!"
|
||||
cost = 300 //double their export value
|
||||
contains = list(/obj/item/stack/sheet/glass/fifty)
|
||||
|
||||
/datum/supply_pack/materials/metal50
|
||||
crate_type = /obj/structure/closet/secure_closet/goodies
|
||||
crate_type = /obj/structure/closet/secure_closet/cargo
|
||||
name = "50 Metal Sheets"
|
||||
desc = "Any construction project begins with a good stack of fifty metal sheets!"
|
||||
cost = 300 //double their export value
|
||||
contains = list(/obj/item/stack/sheet/metal/fifty)
|
||||
|
||||
/datum/supply_pack/materials/plasteel20
|
||||
crate_type = /obj/structure/closet/secure_closet/goodies
|
||||
crate_type = /obj/structure/closet/secure_closet/cargo
|
||||
name = "20 Plasteel Sheets"
|
||||
desc = "Reinforce the station's integrity with twenty plasteel sheets!"
|
||||
cost = 4000
|
||||
contains = list(/obj/item/stack/sheet/plasteel/twenty)
|
||||
|
||||
/datum/supply_pack/materials/plastic50
|
||||
crate_type = /obj/structure/closet/secure_closet/goodies
|
||||
name = "50 Plastic Sheets"
|
||||
/datum/supply_pack/materials/plastic20
|
||||
crate_type = /obj/structure/closet/secure_closet/cargo
|
||||
name = "20 Plastic Sheets"
|
||||
desc = "Build a limitless amount of toys with fifty plastic sheets!"
|
||||
cost = 200 // double their export
|
||||
contains = list(/obj/item/stack/sheet/plastic/twenty)
|
||||
|
||||
/datum/supply_pack/materials/sandstone30
|
||||
crate_type = /obj/structure/closet/secure_closet/goodies
|
||||
crate_type = /obj/structure/closet/secure_closet/cargo
|
||||
name = "30 Sandstone Blocks"
|
||||
desc = "Neither sandy nor stoney, these thirty blocks will still get the job done."
|
||||
cost = 150 // five times their export
|
||||
contains = list(/obj/item/stack/sheet/mineral/sandstone/thirty)
|
||||
|
||||
/datum/supply_pack/materials/wood20
|
||||
crate_type = /obj/structure/closet/secure_closet/goodies
|
||||
crate_type = /obj/structure/closet/secure_closet/cargo
|
||||
name = "20 Wood Planks"
|
||||
desc = "Turn cargo's boring metal groundwork into beautiful panelled flooring and much more with twenty wooden planks!"
|
||||
cost = 400 // 6-7 planks shy from having equal import/export prices
|
||||
contains = list(/obj/item/stack/sheet/mineral/wood/twenty)
|
||||
|
||||
/datum/supply_pack/materials/rcdammo
|
||||
crate_type = /obj/structure/closet/secure_closet/goodies
|
||||
crate_type = /obj/structure/closet/secure_closet/cargo
|
||||
name = "Large RCD ammo Single-Pack"
|
||||
desc = "A single large compressed RCD matter pack, to help with any holes or projects people might be working on."
|
||||
cost = 600
|
||||
|
||||
@@ -370,7 +370,7 @@
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/datum/supply_pack/misc/carpet
|
||||
crate_type = /obj/structure/closet/secure_closet/goodies
|
||||
crate_type = /obj/structure/closet/secure_closet/cargo
|
||||
name = "Classic Carpet Single-Pack"
|
||||
desc = "Plasteel floor tiles getting on your nerves? This 50 units stack of extra soft carpet will tie any room together."
|
||||
cost = 200
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
desc = "Just looking at it makes you want to buy an SKS, go into the woods, and -operate-."
|
||||
icon_state = "tactifool"
|
||||
item_state = "bl_suit"
|
||||
has_sensor = TRUE
|
||||
has_sensor = HAS_SENSORS
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0, "wound" = 5)
|
||||
|
||||
/obj/item/clothing/under/syndicate/cosmetic/skirt
|
||||
@@ -64,6 +64,7 @@
|
||||
icon_state = "tactifool_skirt"
|
||||
fitted = FEMALE_UNIFORM_TOP
|
||||
mutantrace_variation = STYLE_DIGITIGRADE|STYLE_NO_ANTHRO_ICON
|
||||
can_adjust = FALSE
|
||||
|
||||
/obj/item/clothing/under/syndicate/sniper
|
||||
name = "Tactical turtleneck suit"
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
/datum/round_event_control/meteor_wave/cat
|
||||
name = "Meteor Wave: CATastrophic"
|
||||
typepath = /datum/round_event/meteor_wave/cat
|
||||
weight = 10
|
||||
max_occurrences = 1
|
||||
|
||||
/datum/round_event/meteor_wave/cat
|
||||
wave_name = "cat"
|
||||
|
||||
/datum/round_event/meteor_wave/cat/announce(fake)
|
||||
priority_announce("Unknown biological entities have been detected near [station_name()], please stand-by.", "Lifesign Alert", "meteors")
|
||||
@@ -56,8 +56,6 @@
|
||||
wave_type = GLOB.meteorsC
|
||||
if("halloween")
|
||||
wave_type = GLOB.meteorsSPOOKY
|
||||
if("cat")
|
||||
wave_type = GLOB.meteorsCat
|
||||
else
|
||||
WARNING("Wave name of [wave_name] not recognised.")
|
||||
kill()
|
||||
|
||||
@@ -213,7 +213,7 @@
|
||||
)
|
||||
result = /obj/item/reagent_containers/food/snacks/salad/gumbo
|
||||
subcategory = CAT_MEAT
|
||||
|
||||
|
||||
/datum/crafting_recipe/food/goliathcalamari
|
||||
name = "Goliath Calamari"
|
||||
reqs = list(
|
||||
@@ -221,4 +221,4 @@
|
||||
/datum/reagent/consumable/cooking_oil = 10
|
||||
)
|
||||
result = /obj/item/reagent_containers/food/snacks/goliathcalamari
|
||||
|
||||
subcategory = CAT_MEAT
|
||||
|
||||
@@ -126,7 +126,8 @@ GLOBAL_LIST_INIT(cargo_shuttle_leave_behind_typecache, typecacheof(list(
|
||||
var/value = 0
|
||||
var/purchases = 0
|
||||
var/list/goodies_by_buyer = list() // if someone orders more than GOODY_FREE_SHIPPING_MAX goodies, we upcharge to a normal crate so they can't carry around 20 combat shotties
|
||||
// var/list/lockers_by_buyer = list() // TODO, combine orders that come in lockers into a single locker to not crowd the shuttle
|
||||
var/list/lockers_by_buyer = list() // used to combine orders that come in lockers into a single locker to not crowd the shuttle
|
||||
|
||||
for(var/datum/supply_order/SO in SSshuttle.shoppinglist)
|
||||
if(!empty_turfs.len)
|
||||
break
|
||||
@@ -147,11 +148,15 @@ GLOBAL_LIST_INIT(cargo_shuttle_leave_behind_typecache, typecacheof(list(
|
||||
D.bank_card_talk("Goody order size exceeds free shipping limit: Assessing [CRATE_TAX] credit S&H fee.")
|
||||
else
|
||||
D = SSeconomy.get_dep_account(ACCOUNT_CAR)
|
||||
|
||||
if(D)
|
||||
if(!D.adjust_money(-price))
|
||||
if(SO.paying_account)
|
||||
D.bank_card_talk("Cargo order #[SO.id] rejected due to lack of funds. Credits required: [price]")
|
||||
continue
|
||||
else if(ispath(SO.pack.crate_type, /obj/structure/closet/secure_closet/cargo))
|
||||
LAZYADD(lockers_by_buyer[D], SO)
|
||||
|
||||
|
||||
if(SO.paying_account)
|
||||
if(SO.pack.goody)
|
||||
@@ -164,7 +169,7 @@ GLOBAL_LIST_INIT(cargo_shuttle_leave_behind_typecache, typecacheof(list(
|
||||
SSshuttle.orderhistory += SO
|
||||
QDEL_NULL(SO.applied_coupon)
|
||||
|
||||
if(!SO.pack.goody) //we handle goody crates below
|
||||
if(!SO.pack.goody && !ispath(SO.pack.crate_type, /obj/structure/closet/secure_closet/cargo)) //we handle goody crates and material closets below
|
||||
SO.generate(pick_n_take(empty_turfs))
|
||||
|
||||
SSblackbox.record_feedback("nested tally", "cargo_imports", 1, list("[SO.pack.cost]", "[SO.pack.name]"))
|
||||
@@ -198,6 +203,33 @@ GLOBAL_LIST_INIT(cargo_shuttle_leave_behind_typecache, typecacheof(list(
|
||||
misc_contents[buyer] += item
|
||||
misc_order_num[buyer] = "[misc_order_num[buyer]]#[our_order.id] "
|
||||
|
||||
|
||||
// handling locker bundles
|
||||
for(var/D in lockers_by_buyer)
|
||||
var/list/buying_account_orders = lockers_by_buyer[D]
|
||||
|
||||
var/buyer
|
||||
|
||||
if(!istype(D, /datum/bank_account/department)) // department accounts break the secure closet for some reason
|
||||
var/obj/structure/closet/secure_closet/cargo/owned/our_closet = new /obj/structure/closet/secure_closet/cargo/owned(pick_n_take(empty_turfs))
|
||||
var/datum/bank_account/buying_account = D
|
||||
buyer = buying_account.account_holder
|
||||
our_closet.buyer_account = buying_account
|
||||
our_closet.name = "private cargo locker - purchased by [buyer]"
|
||||
miscboxes[buyer] = our_closet
|
||||
else
|
||||
var/obj/structure/closet/secure_closet/cargo/our_closet = new /obj/structure/closet/secure_closet/cargo(pick_n_take(empty_turfs))
|
||||
buyer = "Cargo"
|
||||
miscboxes[buyer] = our_closet
|
||||
|
||||
misc_contents[buyer] = list()
|
||||
for(var/O in buying_account_orders)
|
||||
var/datum/supply_order/our_order = O
|
||||
for(var/item in our_order.pack.contains)
|
||||
misc_contents[buyer] += item
|
||||
misc_order_num[buyer] = "[misc_order_num[buyer]]#[our_order.id] "
|
||||
|
||||
|
||||
for(var/I in miscboxes)
|
||||
var/datum/supply_order/SO = new/datum/supply_order()
|
||||
SO.id = misc_order_num[I]
|
||||
|
||||
7
code/modules/unit_tests/crafting_recipes.dm
Normal file
@@ -0,0 +1,7 @@
|
||||
/datum/unit_test/crafting_recipes/Run()
|
||||
for(var/i in GLOB.crafting_recipes)
|
||||
var/datum/crafting_recipe/R = i
|
||||
if(!R.subcategory)
|
||||
Fail("Invalid subcategory on [R] ([R.type]).")
|
||||
if(!R.category && (R.cateogry != CAT_NONE))
|
||||
Fail("Invalid category on [R] ([R.type])")
|
||||
|
Before Width: | Height: | Size: 951 B |
|
Before Width: | Height: | Size: 913 B |
|
Before Width: | Height: | Size: 1.2 KiB |
@@ -50,6 +50,12 @@
|
||||
-->
|
||||
<div class="commit sansserif">
|
||||
|
||||
<h2 class="date">12 June 2021</h2>
|
||||
<h3 class="author">silicons updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="bugfix">xenos are now truly immune to stamina damage.</li>
|
||||
</ul>
|
||||
|
||||
<h2 class="date">10 June 2021</h2>
|
||||
<h3 class="author">Arturlang updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
|
||||
@@ -29443,3 +29443,6 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py.
|
||||
zeroisthebiggay:
|
||||
- bugfix: Fixed an exploit allowing you to grab people from anywhere with a clowncar.
|
||||
- balance: revenant essence objective reduced
|
||||
2021-06-12:
|
||||
silicons:
|
||||
- bugfix: xenos are now truly immune to stamina damage.
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
author: "silicons"
|
||||
delete-after: True
|
||||
changes:
|
||||
- bugfix: "xenos are now truly immune to stamina damage."
|
||||
4
html/changelogs/AutoChangeLog-pr-14813.yml
Normal file
@@ -0,0 +1,4 @@
|
||||
author: "SandPoot"
|
||||
delete-after: True
|
||||
changes:
|
||||
- bugfix: "The cosmetic turtleneck and skirtleneck no longer start with broken sensors."
|
||||
5
html/changelogs/AutoChangeLog-pr-14820.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
author: "qweq12yt"
|
||||
delete-after: True
|
||||
changes:
|
||||
- bugfix: "Locker orders now properly bundle together in a single locker (still separated by buyer)."
|
||||
- bugfix: "Changed some package names to be more accurate."
|
||||
4
html/changelogs/AutoChangeLog-pr-14825.yml
Normal file
@@ -0,0 +1,4 @@
|
||||
author: "zeroisthebiggay"
|
||||
delete-after: True
|
||||
changes:
|
||||
- imageadd: "new water cooler sprite"
|
||||
5
html/changelogs/AutoChangeLog-pr-14826.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
author: "zeroisthebiggay"
|
||||
delete-after: True
|
||||
changes:
|
||||
- imageadd: "new bank machine sprite"
|
||||
- imagedel: "unused goon coffin sprite"
|
||||
4
html/changelogs/AutoChangeLog-pr-14829.yml
Normal file
@@ -0,0 +1,4 @@
|
||||
author: "zeroisthebiggay"
|
||||
delete-after: True
|
||||
changes:
|
||||
- imageadd: "new singularity hammer sprite"
|
||||
4
html/changelogs/AutoChangeLog-pr-14830.yml
Normal file
@@ -0,0 +1,4 @@
|
||||
author: "zeroisthebiggay"
|
||||
delete-after: True
|
||||
changes:
|
||||
- imageadd: "new singularity hammer sprite"
|
||||
4
html/changelogs/AutoChangeLog-pr-14836.yml
Normal file
@@ -0,0 +1,4 @@
|
||||
author: "timothyteakettle"
|
||||
delete-after: True
|
||||
changes:
|
||||
- rscadd: "7 more round tips have been added"
|
||||
4
html/changelogs/AutoChangeLog-pr-14841.yml
Normal file
@@ -0,0 +1,4 @@
|
||||
author: "MrJWhit"
|
||||
delete-after: True
|
||||
changes:
|
||||
- balance: "Removes cat meteors."
|
||||
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 5.4 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 5.2 KiB |
|
Before Width: | Height: | Size: 127 KiB After Width: | Height: | Size: 130 KiB |
|
Before Width: | Height: | Size: 126 KiB After Width: | Height: | Size: 124 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 113 KiB After Width: | Height: | Size: 113 KiB |
@@ -303,3 +303,11 @@ You do not regenerate as much stamina while in combat mode. Resting (being on th
|
||||
Keybinds can be reassigned in character setup on the keybindings tab. This is extremely useful, especially if you know how to use independent binds.
|
||||
If your suit sensors have been shorted out, you can use cable coil to fix them by using the coil on your suit. Your suit needs to be in proper condition, however.
|
||||
Most clothing when damaged can be repaired using cloth, but there may be some clothes out there that will require different stacks of materials.
|
||||
You should under no circumstances, teleport bread.
|
||||
Food made from upgraded machines has a higher quality. Food with a high enough quality can give good moodlets even if your species dislikes the kind of food!
|
||||
Frying something makes it edible, while still maintaining its original functionality.
|
||||
Slimepeople are damaged by most things that heal toxin damage, and healed by most things that deal it. You can recognise people with this functionality through them having a cyan coloured species name when examined!
|
||||
EMPs can be created by mixing uranium and iron. The power of the pulse is determined by the distance from its epicentre, and the maximum distance is determined by the volume of the reaction!
|
||||
Lizards start with a disabled mutation that allows them to breath fire. This can be unlocked through the usage of genetics!
|
||||
Several loadout items can be unlocked through progress in parts of the game. The progress for these can be tracked in the loadout menu.
|
||||
|
||||
|
||||