we can load all of the rmesh files now :)

This commit is contained in:
Holly Stubbs 2025-01-11 23:49:43 +00:00
parent 8f5d2fcf9f
commit 3a6fc03256
Signed by: tgpholly
GPG key ID: B8583C4B7D18119E
34 changed files with 2736 additions and 35 deletions

60
Data/1499chunks.ini Normal file
View file

@ -0,0 +1,60 @@
;WARNING: Editing this file might cause some several issues with the saving system (if you load a game)!
;After you edited this file you should NOT load a save file where you entered "dimension1499" before!
[general]
count = 4
[chunk0]
count = 1
obj0 = 3
obj0-x = -6
obj0-z = 18
obj0-yaw = 90
obj1 = 12
obj1-x = 1
obj1-z = -12
obj1-yaw = RANDOM
[chunk1]
count = 2
obj0 = 2
obj0-x = 10
obj0-z = -12
obj0-yaw = 0
obj1 = 6
obj1-x = -16
obj1-z = 11
obj1-yaw = RANDOM
obj2 = 9
obj2-x = 16
obj2-z = -4
obj2-yaw = RANDOM
[chunk2]
count = 0
obj0 = 5
obj0-x = 0
obj0-z = 0
obj0-yaw = RANDOM
[chunk3]
count = 2
obj0 = 3
obj0-x = 15
obj0-z = 5
obj0-yaw = 180
obj1 = 15
obj1-x = -17
obj1-z = -17
obj1-yaw = RANDOM
obj2 = 14
obj2-x = 7
obj2-z = -3
obj2-yaw = RANDOM
[chunk4]
count = 0
obj0 = 4
obj0-x = 1
obj0-z = -2
obj0-yaw = RANDOM

19
Data/NPCBones.ini Normal file
View file

@ -0,0 +1,19 @@
[Guard]
head_bonename = Neck
head_controller_max = 2
head_controlleraxis1 = yaw
head_controlleraxis1_min = -60
head_controlleraxis1_max = 60
head_controlleraxis1_offset = 180
head_controlleraxis1_smoothing = 10
head_controlleraxis2 = pitch
head_controlleraxis2_min = -60
head_controlleraxis2_max = 60
head_controlleraxis2_inverse = true
head_controlleraxis2_offset = 15
chest_bonename = Chest
chest_controller_max = 1
chest_controlleraxis1 = pitch
chest_controlleraxis1_min = -60
chest_controlleraxis1_max = 60
chest_controlleraxis1_offset = 25

47
Data/NPCs.ini Normal file
View file

@ -0,0 +1,47 @@
[SCP-173]
speed = 38.0
scale = 0.35
[SCP-106]
speed = 1.2
scale = 0.25
[SCP-096]
speed = 9.0
scale = 0.6
[SCP-049]
speed = 1.5
scale = 1.2
[SCP-049-2]
speed = 0.8
scale = 0.27
[Guard]
speed = 2.0
scale = 0.29
[MTF]
speed = 2.0
scale = 0.29
[Forestmonster]
speed = 8.0
scale = 0.5
[SCP-939]
speed = 4.0
scale = 0.5
[SCP-066]
speed = 2.0
scale = 0.17
[SCP-966]
speed = 1.0
scale = 0.5
[SCP-1499-1]
speed = 1.5
scale = 0.08

999
Data/SCP-294.ini Normal file
View file

@ -0,0 +1,999 @@
;color = the color of the liquid
;alpha = the transparency of the liquid (0.0 = invisible, 1.0 = nontransparent)
;glow = makes the liquid glow (true/false)
;sound = the sound clip played when the player drinks the liquid
;dispensesound = the sound clip played when the liquid is dispensed ("SFX\SCP\294\dispense1.ogg" by default).
;lethal = true/false
;deathmessage = the text shown in the game over -screen if the player dies when drinking the liquid
;blur = how many seconds the screen stays blurry after drinking the liquid
;message = a text shown on the screen after drinking the liquid
;damage = increases the injuries-value
;blood loss = increases the blood loss - value
;stomachache = true/false, has the same effect as appendicitis caused by SCP-1025 (decreased stamina and messages about stomach ache)
;stamina effect = changes how fast stamina decreases (1.0 = normal speed, 2.0 = decreases twice as fast, 0.0 = doesn't decrease at all)
;stamina effect timer = the amount of time it takes before stamina effect wears off
;blink effect, blink effect timer
;explosion = true/false, creates an explosion similar to the one at Gate B
[Air|Nothing|Cup|Emptiness|Vacuum|HL3|Half Life 3]
color = 0,0,0
alpha = 0.0
refusemessage = There is nothing to drink in the cup.
dispensesound = SFX\SCP\294\dispense0.ogg
[Alcohol|Ethanol|Ethanol Liquid|Spirit|Vodka]
color = 255,255,255
alpha = 0.5
blur = 5
dispensesound = SFX\SCP\294\dispense1.ogg
sound = SFX\SCP\294\cough.ogg
message = Damn, that's strong.
[Aloe Vera Drink|Cactus Drink]
color = 217,214,186
alpha = 0.8
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
damage = -0.2
[Amnesia]
color = 255, 255, 255
alpha = 0.5
glow = true
sound = SFX\SCP\294\slurp.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
blur = 10
message = Daniel, is that you? What are you doing?
[Anti-Energy Drink|Anti Energy Drink]
color = 250,180,12
alpha = 0.5
sound = slurp.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = The drink tastes terrible. You feel tired and drained.
stamina effect = 2.0
stamina effect timer = 300
blink effect = 1.5
blink effect timer = 300
[Antimatter|Anti-matter|Void]
color = 0,0,0
explosion = true
dispensesound = SFX\SCP\294\Dispense3.ogg
deathmessage = Recon teams sent in at [REDACTED] show that everything within a 210 mile radius from Site-[REDACTED] was vaporized, save for a 5 meter radius of unharmed area in the facility cafeteria of Sector [REDACTED], surrounding SCP-294.
[Aqua Regia]
color = 170,75,0
refusemessage = Hmm... There should be more cuprite.
dispensesound = SFX\SCP\294\dispense2.ogg
[Atomic|Nuclear|Nuclear Fusion|Nuclear Fission|Nuclear Reaction]
color = 0, 255, 0
alpha = 1.0
glow = true
dispensesound = SFX\SCP\294\dispense3.ogg
explosion = true
deathmessage = Recon teams sent in at [REDACTED] show that the entirety of Site-[REDACTED] was vaporized, save for a 5 meter radius of unharmed area in the facility cafeteria of Sector [REDACTED], surrounding SCP-294.
[Beer|Lager]
color = 235,165,40
alpha = 0.8
message = The drink tastes like a standard pale lager.
sound = SFX\SCP\294\ahh.ogg
[Black corrosive liquid|SCP-106|106|Old Man|Larry|Radical Larry]
color = 0, 0, 0
sound = SFX\SCP\106\Decay3.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
blur = 8
message = You feel strange. It's as if there was something moving in your stomach.
blood loss = 2.0
stomachache = true
[Bleach]
color = 255,255,255
alpha = 0.5
sound = SFX\SCP\294\spit.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
blur = 300
message = The liquid burns in your mouth and throat.
deathtimer = 50
[Blood]
color = 145,32,50
message = The drink tastes like red wine.
sound = SFX\SCP\294\spit.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
blood loss = 40
[Blood of Christ|Blood of Jesus|Blood of Jesus Christ]
color = 145,32,50
alpha = 0.9
message = The drink tastes like red wine.
sound = SFX\SCP\294\slurp.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
[Bose-Einstein Condensate|Quantum Gas]
color = 255,230,255
alpha = 0.2
sound = SFX\SCP\294\burn.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
lethal = true
deathmessage = A dead organic mass later identified as D-9341 through DNA tests was discovered with parts of the body frozen at near Absolute Zero temperatures. What was left of the throat and mouth cavity contained traces of near negative temperature Bosonic Particles, therefore making it a substance at a Bose-Einstein Condensate phase of matter the cause of death.
[Carbon]
color = 0,0,0
blur = 15
lethal = true
sound = SFX\SCP\294\burn.ogg
deathmessage = The mouth cavity, throat and face of the victim are covered in severe third degree burns. A layer of black, crystalline substance was found inside the mouth cavity. Sent for chemical analysis.
dispensesound = SFX\SCP\294\dispense2.ogg
[Cassis Fanta]
color = 204, 122, 235
alpha = 0.6
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = Refreshing...
[Carrot Juice|Carrot]
color = 254,135,16
message = Pretty good.
sound = SFX\SCP\294\slurp.ogg
[Champagne]
color = 245, 202, 10
alpha = 0.5
sound = SFX\SCP\294\Ahh.ogg
[Chim]
color = 255,200,14
glow = true
message = There are no words in any human language to describe the taste of the liquid.
blur = 100
injuries = -4
blood loss = -4
[Cider|Apple Cider|Pear Cider]
color = 240,190,50
alpha = 0.8
message = A bit too sugary for me.
sound = SFX\SCP\294\slurp.ogg
[Chocolate|Cocoa|Hot chocolate|Hot cocoa]
color = 170,75,0
blur = 2
sound = SFX\SCP\294\ahh.ogg
stamina effect = 1.1
stamina effect timer = 200
[Cocaine Energy Drink]
color = 340,29,94
alpha = 0.8
message = The drink has a boost, and taste faintly hot with a hint of cinnamon.
blur = 5
stamina effect = 1.2
stamina effect timer = 200
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
[Coffee|Black Coffee]
color = 87,62,45
message = The drink tastes like fairly strong black coffee.
blur = 2
stamina effect = 0.9
stamina effect timer = 30
sound = SFX\SCP\294\slurp.ogg
[Coconut|Coconut milk|Coconut water|Coconut juice]
color = 255,255,255
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = You enjoy the refreshing flavor of coconut milk.
[Cola|Coke|Coca-Cola|Pepsi|Soda]
color = 58,29,20
alpha = 0.8
message = It's cold and refreshing.
sound = SFX\SCP\294\ahh.ogg
[Cold|Cool|Freezing|Coldness]
color = 200,200,200
alpha = 0.2
message = Your head aches from the freezing cold liquid.
blur = 8.0
[Cosmopolitan|Cocktail|Cosmopolitan Cocktail]
color = 130, 0, 0
alpha = 0.2
dispensesound = SFX\SCP\294\dispense1.ogg
message = Even in the worst situations, nothing beats a fresh cosmopolitan.
sound = SFX\SCP\294\ahh.ogg
[Courage|Bravery]
color = 41,28,22
dispensesound = SFX\SCP\294\dispense3.ogg
sound = SFX\SCP\294\ahh.ogg
blink effect = 0.7
blink effect timer = 180
stamina effect = 0.5
stamina effect timer = 180
[Curry|Masala|Curry Sauce|Masala Sauce]
color = 255, 83, 0
dispensesound = SFX\SCP\294\dispense2.ogg
message = Full of exotic spices and flavours, wet consistency, delicious.
sound = SFX\SCP\294\slurp.ogg
[Death|Game Over]
color = 0,0,0
alpha = 1.0
Sound = SFX\SCP\294\cough.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
lethal = true
deathmessage = A Class D found dead in the facility cafeteria of Sector [REDACTED]. Presumably killed by something dispensed by SCP-294.
[Egg|Eggs]
color = 252,252,212
alpha = 1.0
sound = SFX\SCP\294\ew2.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = It tastes just like raw eggs!
[Element 0|Element Zero|Neutronium|Neutrium|Tetraneutron]
color = 25,75,100
glow = true
sound = SFX\SCP\294\burn.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
lethal = true
message = You didn't think Biotic Powers were real? Right?
deathmessage = A body emitting large levels of radiation was discovered at Sector [REDACTED]. The subject appears to have consumed an unknown substance via SCP-294. Analysis of the radioactive substance via use of and chemical and nuclear testing shows that it has 0 charge, is composed purely of Neutrons, and appears to lack any Electrons or Protons. This indicates that the substance may be the theoretical Element known as Netronium.
[ES|Euroshopper|Euroshopper Energy Drink|Energy Drink|Red Bull]
color = 254,194,16
alpha = 0.5
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = The drink tastes like an average energy drink.
stamina effect = 0.9
stamina effect timer = 180
[Espresso]
color = 204,91,53
sound = SFX\SCP\294\slurp.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
[Estus]
color = 250,200,15
sound = SFX\SCP\294\ahh.ogg
blood loss = -50
damage = -2
dispensesound = SFX\SCP\294\dispense2.ogg
message = The taste is hard to describe. You feel refreshed.
[Eternal Champion|Blood of Eternal Champion|Talin Warhaft]
color = 124, 124, 124
dispensesound = SFX\SCP\294\dispense3.ogg
message = "I graciously accept thy position, my Emperor."
sound = SFX\SCP\294\slurp.ogg
blur = 10
damage = -4
blood loss = -4
blink effect = 0.0
blink effect timer = 10
stamina effect = 2.0
stamina effect timer = 30
[Exotic Matter|Zero Point Energy|Negative Matter|Gravitons|Higgs Boson|God Particles|Black Holes]
color = 255,255,255
dispensesound = SFX\Horror\Horror16.ogg
explosion = true
deathmessage = After an investigation team was sent to inspect Site [DATA REDACTED], everything within a 30 meter radius of a strange energy orb was missing. Assumed to be a singularity, it eventually demagnetized and collapsed. Foundation personnel are still unsure as to the cause of the event.
[Eyedrops|Eye Drops|ReVision Eyedrops|Anti-blink]
color = 255,255,255
alpha = 0.4
sound = SFX\SCP\294\cough.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
message = The liquid tastes awful. Maybe it wasn't meant to be used orally.
blink effect = 0.5
blink effect timer = 200
blur = 10
stomachache = true
[Fear|Scare|Horror|Terror]
color = 0,0,0
glow = true
sound = SFX\Room\035Chamber\InProximity.ogg
dispensesound = SFX\Horror\Horror3.ogg
blur = 3
deathtimer = 2
deathmessage = Nine-Tailed Fox discovered the body of D-9341 near the cafeteria at Sector [REDACTED]. Tests concluded that the cause of death was cardiac arrest, presumably related to SCP-294.
[Feces|Fecal matter|Shit|Crap|Poo|Poop|Dung|Scat|Turd|Bullshit|Horseshit|Diarrhea]
color = 120,60,0
refusemessage = Yeah, I'm not drinking that.
dispensesound = SFX\SCP\294\dispense2.ogg
[Feces and Blood|Blood and Feces]
color = 220,80,30
refusemessage = The drink smells like SCP-173's containment chamber.
dispensesound = SFX\SCP\294\dispense2.ogg
[Gin|Gin and Tonic|Gin & Tonic]
color = 255, 255, 255
alpha = 0.2
dispensesound = SFX\SCP\294\dispense1.ogg
message = Gin has never tasted this good.
sound = SFX\SCP\294\slurp.ogg
[Glass]
color = 255,0,0
glow = true
blur = 15
deathtimer = 5
sound = SFX\SCP\294\burn.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
[Gold]
color = 255,200,15
glow = true
blur = 15
sound = SFX\SCP\294\burn.ogg
deathtimer = 5
dispensesound = SFX\SCP\294\dispense2.ogg
[Grog]
color = 207,120,39
alpha = 0.7
sound = SFX\SCP\294\slurp.ogg
blur = 5
message = It's been too long since you've had a good drink.
[Happiness|Cheerfulness|Joy]
color = 0,213,255
alpha = 0.5
glow = true
message = An overwhelming sense of happiness takes you over. Your heart is pounding like crazy.
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
deathtimer = 10
deathmessage = Nine-Tailed Fox discovered the body of D-9341 after the incident. The victim apparently had an abnormally large smile on his face. Further tests concluded that the cause of death was a heart attack, however the cause of the heart attack is still undetermined.
[Heroin|Morphine]
color = 255,255,255
alpha = 0.5
message = The liquid tastes awful.
sound = SFX\SCP\294\cough.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
deathtimer = 30
blurtimer = 30
[Honey]
color = 224,198,79
alpha = 0.8
sound = SFX\SCP\294\slurp.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
message = Mmm... Sweet.
[Hot|Warm]
color = 200,200,200
alpha = 0.2
message = The liquid stings your mouth, it is very hot.
[Hot Tea|Tea|Green Tea|Black Tea|Yellow Tea]
color = 137, 139, 65
alpha = 0.8
sound = SFX\SCP\294\Slurp.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = It's too hot!
[Hydroflouric Acid|Hydrochloric Acid|Corrosive Acid]
color = 200,200,200
alpha = 0.2
sound = SFX\SCP\294\burn.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
lethal = true
deathmessage = D-9341 was found dead at Sector [REDACTED]. Autopsy reveals that severe acid burns are present within his digestive system, presumably related to SCP-294.
[Ice Cream|Frozen Yoghurt]
color = 255, 255, 179
dispensesound = SFX\SCP\294\dispense1.ogg
message = It is vanilla flavoured ice cream of a perfectly smooth consistency.
sound = SFX\SCP\294\slurp.ogg
stamina effect = 0.5
stamina effect timer = 10
[Ink]
color = 0,0,0
message = You recoil from the powerful odor of the liquid.
sound = SFX\SCP\294\cough.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
blur = 10
[Insulin|NovoRapid|Novo Rapid|Glargine]
color = 200,200,200
message = It smells strong... but it tastes slightly of milk...
dispensesound = SFX\SCP\294\dispense1.ogg
sound = SFX\SCP\294\slurp.ogg
alpha = 0.2
blur = 10
stomachache = true
[Ipecac]
color = 28, 0, 0
alpha = 0.94
dispensesound = SFX\SCP\294\dispense1.ogg
message = It tastes like tree sap, your stomach begins trembling soon after consumption.
sound = SFX\SCP\294\ew1.ogg
stomachache = true
stamina effect = 1.5
stamina effect timer = 20
vomit = 20
[Iron|Steel|Metal|Razor Blades|Razorblades]
color = 255,100,30
glow = true
blur = 15
lethal = true
sound = SFX\SCP\294\burn.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
[Jewel of Fire|Lifeforce|The Jewel]
color = 255, 0, 0
glow = true
dispensesound = SFX\SCP\294\dispense3.ogg
message = An echoed voice shouts: "YOU MUST NOT! THE JEWEL HOLDS MY LIFEFORCE!!!"
sound = SFX\SCP\294\burn.ogg
deathtimer = 7
blur = 100
blood loss = 3
stomachache = true
[Jimmies|Rustling|Gorilla Munch]
color = 242,239,27
glow = true
alpha = 0.3
message = Shh, no tears, only dreams now. There is no need to be upset.
dispensesound = SFX\SCP\294\dispense3.ogg
sound = SFX\Ending\MenuBreath.ogg
[Joe|Joseph|Cat|Dog|Intestines]
color = 145,32,50
alpha = 0.9
message = The drink tastes like blood. It's still warm.
sound = SFX\SCP\294\spit.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
[Jorge]
color = 0, 0, 255
alpha = 1.0
glow = true
dispensesound = SFX\SCP\294\dispense3.ogg
message = You feel as though someone is expecting you.
sound = SFX\SCP\970\thumbs.db
blur = 2
damage = -2
blood loss = -2
blink effect = 0.5
blink effect timer = 30
[Knowledge]
color = 255,255,255
alpha = 0.9
glow = true
message = I need SCP-079's help if I want to go through Gate B, or a distraction of some kind to go through Gate A.
sound = SFX\SCP\294\slurp.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
[Lava|Magma|Earth|Rock|Rocks|Stone]
color = 255,72,0
alpha = 1.0
glow = true
sound = SFX\SCP\294\burn.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
message = The liquid disintegrates your insides almost instantly.
lethal = true
deathmessage = Subject D-9341 was found dead with the victim's organs and mouth cavity suffering numerous 4th degree burns and traces of molten igneous rock in the stomach. A polystyrene cup was also located next to the subject's body. Cause of death is most likely linked to [REDACTED].
[Lemon|Lemon juice|Lemonade]
color = 237, 229, 7
alpha = 0.7
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\Dispense1.ogg
[Lemon fanta]
color = 251, 253, 162
alpha = 0.6
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = Take that! In one gulp, without breathing.
[Life]
color = 255,255,255
alpha = 0.5
blur = 10
blood loss = -100
damage = -10
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
message = The drink tastes unlike anything you've drink before. You feel better than ever.
[Liquid Hydrogen|Hydrogen]
color = 255,255,255
alpha = 0.5
blur = 10
lethal = true
sound = SFX\SCP\294\burn.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
[Liquid Nitrogen|Nitrogen]
color = 255,255,255
alpha = 0.5
blur = 10
lethal = true
sound = SFX\SCP\294\burn.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
[Love]
color = 255,100,100
glow = true
blur = 10
lethal = true
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
[Mayo|Butter]
color = 250,185,90
alpha = 1.0
sound = SFX\SCP\294\ew1.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
[Me|Myself|D-9431|D-9341]
color = 200,0,0
blur = 10
sound = SFX\SCP\294\spit.ogg
damage = 0.5
blood loss = 50
dispensesound = SFX\death2.ogg
refusemessage = The liquid tastes like blood. It's still warm.
[Memes|Meme|Maymays]
color = 100,100,255
blur = 10
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
refusemessage = Me gusta this drink xD le epic taste
[Mercury|Quick Silver]
color = 119,128,133
blur = 50
blood loss = 10
stomach ache = true
sound = SFX\SCP\294\cough.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = The drink is thick like cream, and burns your throat.
[Microwave Casserole]
color = 245,238,144
refusemessage = Through a complex series of thoughts and inside events, you feel that this belongs to someone else.
[Milk]
color = 255,255,255
sound = SFX\SCP\294\slurp.ogg
[Molasses|Treacle|Black Treacle]
color = 34, 0, 0
dispensesound = SFX\SCP\294\dispense1.ogg
message = The flavour is tangy and sweet, but a little too much for your liking.
sound = SFX\SCP\294\ew1.ogg
blur = 1
stamina effect = 0.4
stamina effect timer = 10
[Monkey Island Grog]
color = 199,190,37
alpha = 0.7
glow = true
sound = SFX\SCP\294\burn.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
blur = 8
deathtimer = 8
deathmessage = Subject D-9341 was found face down in a puddle of blood, upper digestive tract seemingly molten by corrosion. A cup with the message "The Styx is a river, not a sea, dumbass." printed on it was found near the corpse. Cause of death is without a doubt related to SCP-294.
message = A pirate I was meant to be, trim the sails and roam the sea! Unfortunately, as you start feeling a terrible burning sensation in your throat and stomach, you realize you're actually not used to drinking such heavy stuff ...
[Motor Oil|Oil]
color = 0,0,0
sound = SFX\SCP\294\cough.ogg
blur = 10
stomachache = true
dispensesound = SFX\SCP\294\dispense2.ogg
[Mountain Dew]
color = 234,252,163
sound = SFX\SCP\294\slurp.ogg
message = It's nice and cold.
[Mucus]
color = 102,204,0
refusemessage = Why the hell would I want to drink this?
[Mud|Clay]
color = 120,60,0
sound = SFX\SCP\294\cough.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
[Nausea]
color = 59,92,32
alpha = 0.6
sound = SFX\SCP\294\ew2.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
message = Ugg... I don't feel so good...
stomachache = true
[Orange fanta|Orangina]
color = 247, 174, 26
alpha = 0.6
sound = SFX\SCP\294\Slurp.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
lethal = false
message = That tastes good...
[Orange Juice|Orange]
color = 240,175,70
message = The drink tastes sweet and has quite a bit of pulp.
sound = SFX\SCP\294\slurp.ogg
[Pain|Agony]
color = 0,0,0
message = The drink tastes incredibly bitter. You feel a burning pain in your stomach.
stomachache = true
damage = 1.5
sound = SFX\SCP\294\cough.ogg
dispensersound = SFX\SCP\294\dispense3.ogg
[Perfume|Deodorant|Shampoo|Cologne|Fragrance]
color = 219,217,195
alpha = 0.2
dispensesound = SFX\SCP\294\dispense1.ogg
refusemessage = While it does smell lovely, I'd rather wear it than drink it.
[Pina Colada]
color = 230,230,150
alpha = 0.8
sound = SFX\SCP\294\Slurp.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = Cold and sweet.
[Plastic]
color = 73, 23, 102
damage = 1.0
blur = 2
sound = SFX\SCP\294\burn.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
message = The molten plastic burns your mouth.
[Prune Juice]
color = 73, 23, 102
sound = SFX\SCP\294\slurp.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
[Purple Drank|Sizzurp|Lean|Codeine]
color = 163,73,164
alpha = 0.8
refusemessage = The drink tastes like cough syrup.
sound = SFX\SCP\294\ew1.ogg
dispensersound = SFX\SCP\294\dispense2.ogg
blur = 100
[Pus]
color = 245,245,149
alpha = 1.0
refusemessage = It smells like rancid egg salad. I think I'm going to puke!
stomachache = true
[Quarks|Glouns|Quark Gloun Plasma]
color = 255,255,255
dispensesound = SFX\Horror\Horror16.ogg
explosion = true
deathmessage = A large scorch mark measuring 30 meters in diameter with a glowing hot white crater was found in Sector [REDACTED]. Everything within a 10 meter radius appears to have completely disintegrated, save for a 5 meter radius surrounding SCP-294. Tests are being conducted to determine the cause of this anomaly, although it is presumably related to SCP-294.
[Radioactive Element|Radioactive Material]
color = 100,175,100
glow = true
sound = SFX\SCP\294\burn.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
lethal = true
deathmessage = Subject D-9341 was found dead near SCP-294 holding what appears to be a cup of a molten radioactive element that is being identified by investigators. It appears that D-9341 ingested the material, judging by the severely burnt digestive organs and the radioactivity of the body.
[Rage|Anger|Angry|Hate]
color = 255,60,0
alpha = 0.7
message = Your blood boils with overwhelming hatred towards everything.
lethal = true
sound = SFX\Ending\GateB\Nuke2.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
deathmessage = Nine-Tailed Fox discovered the headless corpse of D-9341 among considerable amounts of blood, tissue and skull fragments. Medical staff cannot identify the cause of death, further tests are in progress.
[Room-temperature Superconductor]
color = 254,219,93
alpha = 0.5
message = The drink tastes like apple juice.
sound = SFX\SCP\294\slurp.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
[Sadness|Unhappiness|Mourning|Grieving]
color = 200,200,200
alpha = 0.2
message = The warm liquid has a salty after-taste, almost like tears.
sound = SFX\SCP\294\slurp.ogg
[SCP 294|SCP-294|294]
color = 255, 255, 255
alpha = 0.0
dispensesound = SFX\SCP\294\dispense3.ogg
refusemessage = On the side of the empty cup there are complex blueprints. They contain an untranslatable language and indecipherable diagrams.
[Sea water|Saline water|Salt water]
color = 200,200,200
alpha = 0.2
sound = SFX\SCP\294\cough.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = The extremely salty taste is almost unbearable. You begin to feel dehydrated and dizzy.
stomachache = true
blur = 4.0
[Semen|Cum|Jizz|Man milk|Baby batter|Joy juice|Cock snot|Load|Man chowder|Wad|9gag]
color = 240,240,240
alpha = 0.9
dispensesound = SFX\SCP\294\dispense2.ogg
refusemessage = No way.
[Smoothie]
color = 176, 100, 136
dispensesound = SFX\SCP\294\dispense1.ogg
message = It is a delicious blueberry and banana smoothie.
sound = SFX\SCP\294\ahh.ogg
stamina effect = 0.5
stamina effect timer = 15
[something that will destroy SCP-682|something that destroys SCP-682|something to destroy SCP-682]
color = 255,255,255
glow = true
dispensesound = SFX\SCP\294\dispense3.ogg
deathmessage = Recon teams sent in at [REDACTED] show that the entirety of Site-[REDACTED] was vaporized, save for a 5 meter radius of unharmed area in the facility cafeteria of Sector [REDACTED], surrounding SCP-294.
explosion = true
[Spinal Fluid|Brain Juice|Brain Fluid]
color = 255, 255, 255
alpha = 0.1
dispensesound = SFX\SCP\294\dispense3.ogg
message = It is mildly salty, tepid and watery. I shouldn't really be drinking this.
sound = SFX\SCP\294\ew1.ogg
[Spoiler|Spoilers|Spoiling]
color = 100,100,255
glow = true
sound = SFX\Ending\GateB\EndingB3.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
message = You hear a voice inside your head.
[Stew]
color = 153, 123, 102
dispensesound = SFX\SCP\294\dispense1.ogg
message = It is a scrumptious, warm and creamy mushroom stew
sound = SFX\SCP\294\ahh.ogg
blur = 10
stamina effect = 0.5
stamina effect timer = 20
[Strawberry Juice]
color = 255,50,50
alpha = 0.8
sound = SFX\SCP\294\Ahh.ogg
message = So sweet.
[Soup]
color = 89,125,85
message = The liquid tastes like the spinach soup you ate this morning.
sound = SFX\SCP\294\slurp.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
[Speed|Velocity|Fastness|Sanic]
color = 255,255,0
alpha = 0.8
glow = true
blur = 15
stamina effect = 0.0
stamina effect timer = 15
message = You feel really nervous.
sound = SFX\SCP\294\slurp.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
[Stearin|Stearine]
color = 200,200,200
alpha = 0.9
sound = SFX\SCP\294\burn.ogg
blur = 2
dispensesound = SFX\SCP\294\dispense2.ogg
message = HOT HOT HOT
[Strange Matter]
color = 110,110,115
glow = true
sound = SFX\SCP\106\Decay1.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
lethal = true
deathmessage = A portion of the facility was transformed into some form of grey colored goo-like substance before being demagnetized. Further analysis is being done.
[Sulfuric Acid]
color = 200,200,200
alpha = 0.5
sound = SFX\SCP\294\burn.ogg
blur = 5
deathtimer = 5
dispensesound = SFX\SCP\294\dispense2.ogg
[Superfluid|Superfluid Helium|Helium|Helium-4|Liquid Helium]
color = 255,255,255
alpha = 0.2
dispensesound = SFX\SCP\294\dispense3.ogg
sound = SFX\SCP\294\burn.ogg
lethal = true
deathmessage = A dead body identified as D-9341 was discovered with a severely damaged throat and mouth cavity containing sharp icicles and traces of Helium-4. There are visible open wounds caused by Thermal Contraction located along the throat, and it would appear that the superfluid liquid passed right through the body, damaging any organs that it came in contact with.
[Surprise|Surprise me|Shock|Shock me]
color = 200,200,200
alpha = 0.2
sound = SFX\SCP\294\burn.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = The water burns your mouth instantly.
blur = 2.0
[Syrup|Golden Syrup|Maple Syrup]
color = 117, 58, 0
alpha = 0.5
dispensesound = SFX\SCP\294\dispense1.ogg
message = While irresistibly sweet, you become overpowered by the sweetness to the point of nausea.
sound = SFX\SCP\294\slurp.ogg
blur = 7
[Tachyons|Tachyonic Matter|Imaginary Matter|Neutrinos]
color = 255,255,255
dispensesound = SFX\Horror\Horror16.ogg
explosion = true
deathmessage = A beam of light was spotted emitting from Site [DATA REDACTED]. The origin was found to be from one of the sites cafeterias housing SCP-294, which was left untouched by the vaporizing heat.
[Tea|Ice Tea]
color = 137, 139, 65
alpha = 0.8
sound = SFX\SCP\294\Slurp.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = It tastes like cold tea.
[Tears|Tear|Saliva|Spit|Sweat]
color = 255,255,255
alpha = 0.2
sound = SFX\SCP\294\Ew1.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
[Tequila]
color = 230,230,150
alpha = 0.2
sound = SFX\SCP\294\Slurp.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = Could've used some lime and salt with that.
[the best drink I've ever had|the best drink I've had]
color = 235,165,40
alpha = 0.8
message = The drink tastes like a Vienna lager you drinked years ago.
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
[the perfect drink|perfect drink|perfection]
color = 179,120,211
alpha = 0.8
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
lethal = true
message = I can't take this anymore, everything at this point is just one big letdown.
blur = 1000
deathmessage = Subject D-9341's body was recovered with numerous self-inflicted injuries on the arms and [REDACTED].
[Tropical juice|Tropical water]
color = 255,128,0
alpha = 0.7
sound = SFX\SCP\294\ahh.ogg
dispensesound = SFX\SCP\294\dispense1.ogg
message = The chilled orange beverage tastes like a combination of tropical fruits.
[Tomato Juice]
color = 204,0,0
sound = SFX\SCP\294\slurp.ogg
Message = Meh, it's ok. Never was a big fan of tomato juice though.
[Urine|Piss|Pee|Jarate]
color = 240,190,50
alpha = 0.7
refusemessage = I'm not drinking that.
[Venom|Snake Venom]
color = 230,212,23
alpha = 0.8
dispensesound = SFX\SCP\294\dispense2.ogg
[Vidya|v|4chan]
color = 100,100,100
alpha = 0.7
sound = SFX\SCP\294\spit.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
message = The drink tastes awfully bitter.
[Vinegar]
color = 245,167,17
alpha = 0.8
blur = 10
sound = SFX\SCP\294\cough.ogg
dispensesound = SFX\SCP\294\dispense2.ogg
[Vomit]
color = 240,190,100
refusemessage = I'm not drinking that.
[Water|Mineral Water|Soda water]
color = 200,200,200
message = Well, that was refreshing.
alpha = 0.2
sound = SFX\SCP\294\slurp.ogg
[Wax|Grease]
color = 203,203,199
message = The taste makes you feel ill.
sound = SFX\SCP\294\ew2.ogg
stomachache = true
[Wine|Red Wine|Grape Wine]
color = 145,32,50
alpha = 0.9
sound = SFX\SCP\294\slurp.ogg
[Whisky|Whiskey|Scotch]
color = 236,165,0
alpha = 0.2
sound = SFX\SCP\294\slurp.ogg
[White Port and Lemon Juice|WPLJ]
color = 239,228,176
alpha = 0.8
sound = SFX\SCP\294\ahh.ogg
message = Please please please gimme some more
[Yoghurt]
color = 255, 128, 128
dispensesound = SFX\SCP\294\dispense1.ogg
message = It is a thick, mixed berry yoghurt with no solid bits.
sound = SFX\SCP\294\slurp.ogg
stamina effect = 0.5
stamina effect timer = 10
[420|Weed|Dope|Green Dragon]
color = 54,177,30
message = MAN DATS SOM GOOD ASS SHIT
sound = SFX\Music\420J.ogg
[Butt ghost|Liquid butt ghost]
color = 0,0,0
alpha = 1.0
Sound = SFX\SCP\294\slurp.ogg
dispensesound = SFX\SCP\294\dispense3.ogg
message = Ouch, my ass is being eaten.
blur = 10
lethal = true
deathmessage = Nine-Tailed Fox discovered the body of D-9341 near the cafeteria at Sector [REDACTED] without some pieces of [REDACTED]. The subject died of anomalous blood loss.

184
Data/achievementstrings.ini Normal file
View file

@ -0,0 +1,184 @@
[s0]
string1=Biohazard
image=Achv008
AchvDesc=Encountered the Zombie Plague.
[s1]
string1=Scribe
image=Achv012
AchvDesc=Encountered the Bad Composition.
[s2]
string1=Curtains Down
image=Achv035
AchvDesc=Encountered the Possessive Mask.
[s3]
string1=Doctor, Doctor
image=Achv049
AchvDesc=Found the cure
[s4]
string1=Anti-Meme
image=Achv055
AchvDesc=Recontained SCP-055
[s5]
string1=Deductive Reasoning
image=Achv079
AchvDesc=Encountered the Old AI.
[s6]
string1=Don't Look At Me
image=Achv096
AchvDesc=Encountered the Shy Guy.
[s7]
string1=A Decayed March
image=Achv106
AchvDesc=Encountered the Old Man.
[s8]
string1=Dirty Metal
image=Achv148
AchvDesc=Acquired the "Telekill Alloy".
[s9]
string1=Femme Fatale
image=Achv205
AchvDesc=Encountered the Shadow Lamps.
[s10]
string1=OUT OF RANGE
image=Achv294
AchvDesc=Obtained a liquid from the Coffee Machine.
[s11]
string1=The Corner of Your Eye...
image=Achv372
AchvDesc=Encountered the Peripheral Jumper.
[s12]
string1="Reggae, man."
image=Achv420
AchvDesc=Smoked some good ass shit.
[s13]
string1=Light of Life
image=Achv427
AchvDesc=Found and equipped the "Lovecraftian Locket".
[s14]
string1=A Taste of Immortality
image=Achv500
AchvDesc=Swallowed a sample of Panacea.
[s15]
string1=If You Ring It, He Will Come
image=Achv513
AchvDesc=Encountered an Old Cowbell.
[s16]
string1=Mental Exhaustion
image=Achv714
AchvDesc=Found a Jaded Ring.
[s17]
string1="by researcher james, age 11"
image=Achv789
AchvDesc=Encountered the Butt Ghost.
[s18]
string1=Blue Hue
image=Achv860
AchvDesc=Found a Blue Key.
[s19]
string1=Interference
image=Achv895
AchvDesc=Encountered an Old Coffin.
[s20]
string1=Refinery
image=Achv914
AchvDesc=Encountered the Clockworks Machine.
[s21]
string1=Show Yourself
image=Achv939
AchvDesc=Encountered the Creatures with Many Voices.
[s22]
string1=Rapid Eye Movement
image=Achv966
AchvDesc=Encountered the Sleep Killers.
[s23]
string1=Recursive Spacial Phenomenon
image=Achv970
AchvDesc=Encountered a Recursive Room.
[s24]
string1="Potential Bioweapon"
image=Achv1025
AchvDesc=Read the Encyclopedia of Common Diseases.
[s25]
string1=The Architect
image=Achv1048
AchvDesc=Encountered the Builder Bear.
[s26]
string1=The Final Solution
image=Achv1123
AchvDesc=Encountered the Atrocity Skull.
[s27]
string1=The Containment Breach
image=AchvMaynard
AchvDesc=Entered Doctor Maynard's office.
[s28]
string1=World-Ending Scenario
image=AchvHarp
AchvDesc=Entered Doctor Harp's office.
[s29]
string1=Technical Accomplishments
image=AchvSNAV
AchvDesc=Acquired the S-NAV Navigator Ultimate.
[s30]
string1=Unlimited Access
image=AchvOmni
AchvDesc=Acquired an Omni-level Keycard.
[s31]
string1=Fair Play
image=AchvConsole
AchvDesc=Didn't use console commands.
[s32]
string1=Shell Shocked
image=AchvTesla
AchvDesc=Lured the Old Man through a Tesla gate.
[s33]
string1=No Man's Land
image=AchvPD
AchvDesc=Escaped the Old Man's Pocket Dimension.
[s34]
string1=Pieces of the Past
image=Achv1162
AchvDesc=Encountered the Hole In The Wall.
[s35]
string1=Screams Of The Present
image=Achv1499
AchvDesc=Wore a GP-5 Gas Mask.
[s36]
string1=Survival In a Nightmare
image=AchvKeter
AchvDesc=Beat the game on Keter difficulty.

304
Data/events.ini Normal file
View file

@ -0,0 +1,304 @@
[alarm]
descr=The start event. Should always be present in all maps.
room1=start
[008]
descr=The event in SCP-008's chamber where SCP-173 breaks the window. Should always be present in all maps.
room1=008
[914]
descr=SCP-914's mechanism event. Required for SCP-914 to function.
room1=914
[coffin]
descr=SCP-895's chamber event.
room1=coffin
[coffin106]
descr=SCP-895's chamber event + SCP-106 spawn near the coffin.
room1=coffin106
[gateaentrance]
descr=Gate A entrance event. Should always be present in all maps.
room1=gateaentrance
[exit1]
descr=Gate B event. Should always be present in all maps.
room1=exit1
[endroom106]
descr=An event where SCP-106 takes Janitor into the Pocket Dimension.
room1=endroom
[medibay]
descr=Spawns an infected surgeon inside the room.
room1=medibay
[checkpoint]
descr=CheckPoint room event.
room1=checkpoint1
room2=checkpoint2
[lockroom173]
descr=Spawns SCP-173 inside the room.
room1=lockroom
[lockroom096]
descr=Spawns SCP-096 inside the room.
room1=lockroom2
[testroom]
descr=Opens up the gas valves and plays a sound through the intercom once the player enters the lower level of the room.
room1=testroom
[tunnel2]
descr=An event where the lights go out and SCP-173 spawns in front of the player.
room1=tunnel2
[tunnel2smoke]
descr=Opens up the gas valves in the room.
room1=tunnel2
[096spawn]
descr=Spawns SCP-096 inside the room.
room1=tunnel2
room2=room2pipes
room3=room2pit
room4=room3pit
room5=room3tunnel
room6=tunnel
room7=room4tunnels
room8=room4pit
room9=room3z2
[roompj]
descr=Spawns SCP-372 once the player enters the room.
room1=roompj
[room012]
descr=Required for SCP-012 to function.
room1=room012
[room035]
descr=Spawns a scientist possessed by SCP-035 inside the room.
room1=room035
[room049]
descr=Spawns SCP-049 and updates the levers and elevators within the room.
room1=room049
[room079]
descr=Required for SCP-079 to interact with the player. Should be present in all maps.
room1=room079
[room106]
descr=Required for SCP-106's recall protocol to function.
room1=room106
[room205]
descr=Required for SCP-205 to function.
room1=room205
[room966]
descr=Spawns multiple SCP-966 instances inside the room.
room1=room966
[room1123]
descr=Required for SCP-1123 to function.
room1=room1123
[room2trick]
descr=Secretly turns the player around by 180 degrees when they reach the middle of the hallway.
room1=room2
room2=room2_3
[1048a]
descr=Spawns SCP-1048-A inside the room.
room1=room2
room2=room2_2
room3=room2_3
[room2fan]
descr=Activates the fan in the room.
room1=room2_2
[room2cafeteria]
descr=Required for SCP-294 to function.
room1=room2cafeteria
[room2ccont]
descr=Required for the levers inside the room to function. Should be present in all maps.
room1=room2ccont
[room2closets]
descr=An event where a scientist and a janitor get killed by SCP-173.
room1=room2closets
[room2elevator]
descr=An event where a guard enters the elevator in the room.
room1=room2elevator
[room2elevator2]
descr=Spawns a dead janitor inside the room.
room1=room2elevator
[room2nuke]
descr=Updates the levers inside the room. Should be present in all maps.
room1=room2nuke
[room2offices2]
descr=Spawns an anomalous duck inside the room.
room1=room2offices2
[room2offices3]
descr=An event where a door closes behind the player.
room1=room2offices3
[room2pipes106]
descr=An event where SCP-106 appears from a wall.
room1=room2pipes
[room2pit]
descr=Spawns SCP-173 inside the room.
room1=room2pit
room2=room2_4
[room2pit106]
descr=Spawns SCP-016 at the lower level of the room.
room1=room2pit
[room2poffices2]
descr=Plays some sound effects when the player enters Dr L's office.
room1=room2poffices2
[room2servers]
descr=An event where SCP-096 kills a guard.
room1=room2servers
[room2storage]
descr=Required for the endless hallway to function.
room1=room2storage
[room2tesla]
descr=Activates the tesla gate in the room.
room1=room2tesla
room2=room2tesla_lcz
room3=room2tesla_hcz
[testroom173]
descr=An event where SCP-173 breaks through the window in the room.
room1=room2testroom2
[toiletguard]
descr=An event where a guard commits suicide.
room1=room2toilets
[buttghost]
descr=Spawns the butt ghost.
room1=room2toilets
[room2tunnel]
descr=Generates and updates the maintenance tunnels.
room1=room2tunnel
[room2doors173]
descr=Spawns SCP-173 inside the room.
room1=room2doors
[room3door]
descr=Closes the doors behind the player.
room1=room3
room2=room3tunnel
[room3servers]
descr=Spawns SCP-173 inside the room.
room1=room3servers
room2=room3servers2
[room3storage]
descr=Spawns SCP-939 instances inside the room and updates the elevators.
room1=room3storage
[room3pitduck]
descr=Spawns a saxophone-playing anomalous duck inside the room.
room1=room3pit
[room3pit1048]
descr=An event where SCP-1048 hands over a drawing to the player.
room1=room3pit
[room3tunnel]
descr=Eventroom3tunnel
room1=room3tunnel
[106victim]
descr=Event where dead scientist falls down from the ceiling.
room1=room3
room2=room3_2
[106sinkhole]
descr=Spawns a sinkhole to the Pocket Dimension on the floor.
room1=room3
room2=room3_2
room3=room4
[room4]
descr=May cause SCP-049 to appear on the walkway above the room.
room1=room4
[room860]
descr=Required for the player to enter the forest.
room1=room860
[tunnel106]
descr=Spawns SCP-106 inside the room.
room1=tunnel
[room4tunnels]
descr=Spawns a dead body inside the room.
room1=room4tunnels
[room_gw]
descr=Required for the airlock inside the room to be functional.
room1=room2gw
room2=room3gw
[room2gw_b]
descr=Spawns a guard inside the room.
room1=room2gw_b
[room1162]
descr=Required for SCP-1162 to be functional.
room1=room1162
[room2scps2]
descr=An event where Emily Ross gets captured by SCP-106.
room1=room2scps2
[room2sl]
descr=Spawns SCP-049 inside the room.
room1=room2sl
[room2offices035]
descr=Spawns the corpse of the possessed scientist inside the room after the player has released him from the containment chamber.
room1=room2offices
[medibay]
descr=Spawns an SCP-008-1 instance inside the room.
room1=medibay
[room2shaft]
descr=Spawns a dead guard inside the room.
room1=room2shaft
[room2pit106]
descr=An event in which SCP-106 spawns at the bottom of the catwalk.
room1=room2pit
[room1archive]
descr=Required for the entrance door to be functional.
room1=room1archive
[room1lifts]
descr=Required for the elevator buttons to be clickable.
room1=room1lifts

42
Data/materials.ini Normal file
View file

@ -0,0 +1,42 @@
[tilefloor.jpg]
bump = GFX\map\tilebump.jpg
[whitewall.jpg]
bump = GFX\map\whitewallbump.jpg
[concretefloor.jpg]
bump = GFX\map\concretefloorbump.jpg
[metal3.jpg]
bump = GFX\map\metal3bump.jpg
stepsound = 1
[vent.jpg]
bump = GFX\map\ventbump.jpg
[dirtymetal.jpg]
bump = GFX\map\dirtymetalbump.jpg
stepsound = 1
[misc.jpg]
bump = GFX\map\miscbump.jpg
[rockmoss.jpg]
bump = GFX\map\rockmossbump.jpg
[metalpanels.jpg]
bump = GFX\map\metalpanelsbump.jpg
stepsound = 1
[metalpanels2.jpg]
bump = GFX\map\metalpanels2bump.jpg
stepsound = 1
[concretewall.jpg]
bump = GFX\map\concretewallbump.jpg
[scp1162.jpg]
bump = GFX\map\scp1162bump.jpg
[scp1162wall.jpg]
bump = GFX\map\scp1162wallbump.jpg

748
Data/rooms.ini Normal file
View file

@ -0,0 +1,748 @@
;=== STYLE ABBREVIATIONS ===
;LCZ - Light Containment Zone
;HCZ - Heavy Containment Zone
;EZ - Entrance Zone
;===========================
[room ambience]
ambience1 = SFX\Ambient\Room ambience\rumble.ogg
ambience2 = SFX\Ambient\Room ambience\lowdrone.ogg
ambience3 = SFX\Ambient\Room ambience\pulsing.ogg
ambience4 = SFX\Ambient\Room ambience\ventilation.ogg
ambience5 = SFX\Ambient\Room ambience\drip.ogg
ambience6 = SFX\Alarm\Alarm.ogg
ambience7 = SFX\Ambient\Room ambience\895.ogg
ambience8 = SFX\Ambient\Room ambience\fuelpump.ogg
ambience9 = SFX\Ambient\Room ambience\Fan.ogg
ambience10 = SFX\Ambient\Room ambience\servers1.ogg
;LIGHT CONTAINMENT ZONE ROOMS
;============================
[lockroom]
descr=A timed airlock room, with two doors.
mesh path=GFX\map\lockroom_opt.rmesh
shape = 2C
commonness = 30
zone1=1
zone2=3
[173]
descr=Class-D Cells & SCP-173's chamber in the intro. Placed automatically in all maps.
mesh path=GFX\map\173bright_opt.rmesh
shape = 1
commonness = 0
disabledecals = true
[start]
descr=SCP-173's chamber, after the breach. Placed automatically in all maps.
mesh path=GFX\map\173_opt.rmesh
shape = 1
commonness = 0
disabledecals = true
[room1123]
descr=SCP-1123's containment chamber.
mesh path=GFX\map\1123_opt.rmesh
shape = 2
commonness = 0
zone1=1
disabledecals = true
[room1archive]
descr=An archive room, where various (random) items spawn on shelves.
mesh path=GFX\map\room1archive_opt.rmesh
shape = 1
commonness = 80
zone1=1
[room2storage]
descr=SCP-970's storage hallway.
mesh path=GFX\map\room2storage_opt.rmesh
shape = 2
commonness = 0
zone1=1
disabledecals = true
[room3storage]
descr=SCP-939's storage area, with various roaming instances of 939.
mesh path=GFX\map\room3storage_opt.rmesh
shape = 3
commonness = 0
zone1=1
disableoverlapcheck=true
[room2tesla_lcz]
descr=Hallway with a tesla gate. LCZ variant.
mesh path=GFX\map\room2tesla_lcz_opt.rmesh
shape = 2
commonness = 100
zone1=1
[endroom]
descr=Red-lit dead end room with a large, unopenable gate.
mesh path=GFX\map\endroom_opt.rmesh
shape = 1
commonness = 100
zone1=1
zone3=3
[room012]
descr=SCP-012's containment chamber.
mesh path=GFX\map\room012_opt.rmesh
shape = 2
commonness = 0
zone1=1
disabledecals = true
[room205]
descr=SCP-205's containment chamber.
mesh path=GFX\map\room205_opt.rmesh
shape = 1
commonness = 0
zone1=1
large = true
[room2]
descr=An empty, two-door hallway.
mesh path=GFX\map\room2_opt.rmesh
shape = 2
commonness = 45
zone1=1
[room2_2]
descr=An empty, two-door hallway with a large fan/vent in the wall.
mesh path=GFX\map\room2_2_opt.rmesh
shape = 2
commonness = 40
zone1=1
[room2_3]
descr=A larger version of the two-door hallway, with lights in the floor.
mesh path=GFX\map\room2_3_opt.rmesh
shape = 2
commonness = 35
zone1=1
[room2_4]
descr=A two-door hallway, with a unopenable door off to the side.
mesh path=GFX\map\room2_4_opt.rmesh
shape=2
commonness = 30
zone1=1
[room2_5]
descr=A two-door hallway, with lowered ceilings.
mesh path=GFX\map\room2_5_opt.rmesh
shape=2
commonness = 35
zone1=1
[room2C]
descr=An empty, plain corner room.
mesh path=GFX\map\room2C_opt.rmesh
shape = 2C
commonness = 40
zone1=1
[room2c2]
descr=A corner room, with more of a LCZ style.
mesh path=GFX\map\room2c2_opt.rmesh
shape = 2C
commonness = 30
zone1=1
[room2closets]
descr=A storage hallway, where SCP-173 kills two NPCs. The Gas Mask & Batteries spawn here.
mesh path=GFX\map\room2closets_opt.rmesh
shape = 2
commonness = 0
zone1=1
disabledecals = true
large = true
[room2elevator]
descr=A two-door hallway, with an elevator off to the side.
mesh path=GFX\map\room2elevator_opt.rmesh
shape = 2
commonness = 20
zone1=1
[room2doors]
descr=Red-lit airlock room, in the shape of a T.
mesh path=GFX\map\room2doors_opt.rmesh
shape = 2
commonness = 30
zone1=1
[room2scps]
descr=SCP-714's, SCP-860's, & SCP-1025's two-door hallway.
mesh path=GFX\map\room2scps_opt.rmesh
shape = 2
commonness = 0
zone1=1
[room860]
descr=SCP-860-1's containment chamber. Can't be traversed without SCP-860.
mesh path=GFX\map\room860_opt.rmesh
shape = 2
commonness = 0
[room2testroom2]
descr=Two-door hallway with a small testing room, where SCP-173 shatters the testroom's window.
mesh path=GFX\map\room2testroom2_opt.rmesh
shape = 2
commonness = 0
zone1=1
[room3]
descr=Three-door hallway, with a caged off portion in the back wall.
mesh path=GFX\map\room3_opt.rmesh
shape = 3
commonness = 100
zone1=1
[room3_2]
descr=A three-door hallway, without the caged portion.
mesh path=GFX\map\room3_2_opt.rmesh
shape = 3
commonness = 100
zone1=1
[room4]
descr=A four-door hallway, with a metal walkway hanging above.
mesh path=GFX\map\room4_opt.rmesh
shape = 4
commonness = 100
zone1=1
[room4_2]
descr=A varient of the four-door hallway, without the metal walkway.
mesh path=GFX\map\room4_2_opt.rmesh
shape=4
commonness = 80
zone1=1
[roompj]
descr=SCP-372's containment chamber.
mesh path=GFX\map\roompj_opt.rmesh
shape = 1
commonness = 0
disabledecals = true
zone1=1
[914]
descr=SCP-914's containment chamber.
mesh path=GFX\map\machineroom_opt.rmesh
shape = 1
commonness = 0
zone1=1
[room2gw]
descr=A two-door contamination airlock.
mesh path=GFX\map\room2gw_opt.rmesh
shape=2
commonness = 10
zone1=1
[room2gw_b]
descr=Broken varient of the two-door contamination airlock.
mesh path=GFX\map\room2gw_b_opt.rmesh
shape=2
commonness = 0
zone1=1
[room1162]
descr=SCP-1162's containment chamber, in a corner room.
mesh path=GFX\map\room1162_opt.rmesh
shape=2c
commonness = 0
zone1=1
[room2scps2]
descr=SCP-1499 & SCP-500's containment chambers, in a two-door hallway.
mesh path=GFX\map\room2scps2_opt.rmesh
shape=2
commonness = 0
zone1=1
[room2sl]
descr=The surveillance room in the LCZ. Required for passing into HCZ, if used.
mesh path=GFX\map\room2sl_opt.rmesh
shape=2
commonness = 0
zone1=1
large = true
[lockroom3]
descr=A varient of the timed lockroom, where a seperate path is opened. The airlock itself is broken.
mesh path=GFX\map\lockroom3_opt.rmesh
shape=2c
commonness = 15
zone1=1
[room4info]
descr=A 4-way hallway containing an info center.
mesh path=GFX\map\room4info_opt.rmesh
shape=4
commonness = 0
zone1=1
[room3_3]
descr=Another variant of a three-door hallway.
mesh path=GFX\map\room3_3_opt.rmesh
shape=3
commonness = 20
zone1=1
[checkpoint1]
descr=The keycarded checkpoint between the LCZ and HCZ.
mesh path=GFX\map\checkpoint1_opt.rmesh
shape = 2
commonness = 0
;HEAVY CONTAINMENT ZONE ROOMS
;============================
[008]
descr=SCP-008's containment chamber.
mesh path=GFX\map\008_opt.rmesh
shape = 1
commonness = 0
disabledecals = true
zone1=2
[room035]
descr=SCP-035's containment chamber.
mesh path=GFX\map\room035_opt.rmesh
shape = 1
commonness = 0
zone1=2
[room049]
descr=SCP-049's containment chamber.
mesh path=GFX\map\room049_opt.rmesh
shape = 2
commonness = 0
disabledecals = true
walksound=1
zone1=2
usevolumelighting = 1
disableoverlapcheck=true
[room106]
descr=SCP-106's containment chamber.
mesh path=GFX\map\room106_opt.rmesh
shape = 1
commonness = 0
disabledecals = true
zone1=2
large = true
[room513]
descr=SCP-513's containment chamber.
mesh path=GFX\map\room513_opt.rmesh
shape = 3
commonness = 0
zone1=2
usevolumelighting = 1
[coffin]
descr=SCP-895's containment chamber.
mesh path=GFX\map\coffin_opt.rmesh
shape = 1
commonness = 0
disabledecals = true
walksound=1
zone1=2
[room966]
descr=SCP-966's containment chamber.
mesh path=GFX\map\room966_opt.rmesh
shape = 3
commonness = 0
zone1=2
usevolumelighting = 1
disableoverlapcheck=true
[endroom2]
descr=A small, red-lit, HCZ-styled endroom.
mesh path=GFX\map\endroom2_opt.rmesh
shape = 1
commonness = 100
zone1=2
[testroom]
descr=A large testroom, where SCP-682's document can be found.
mesh path=GFX\map\testroom_opt.rmesh
shape = 2
commonness = 0
walksound = 1
disabledecals = true
zone1=2
[tunnel]
descr=A two-door hallway, in the shape of a tunnel.
mesh path=GFX\map\tunnel_opt.rmesh
shape = 2
commonness = 100
walksound=1
zone1=2
usevolumelighting = 1
[tunnel2]
descr=A varient of the tunnel hallway, with a fuse box off to the side where SCP-173 spawns.
mesh path=GFX\map\tunnel2_opt.rmesh
shape = 2
commonness = 70
walksound=1
zone1=2
usevolumelighting = 1
[room2Ctunnel]
descr=A HCZ-styled corner room.
mesh path=GFX\map\room2Ctunnel_opt.rmesh
shape = 2C
commonness = 40
walksound=1
zone1=2
usevolumelighting = 1
[room2nuke]
descr=A two-door hallway, with a room on the side which leads to the Omega & Alpha warheads.
mesh path=GFX\map\room2nuke_opt.rmesh
shape = 2
commonness = 0
zone1=2
large = true
[room2pipes]
descr=A two-door hallway, with caged floors and ceiling that contain various pipes. SCP-106 can appear out of the walls.
mesh path=GFX\map\room2pipes_opt.rmesh
shape = 2
commonness = 50
disabledecals = true
walksound=1
zone1=2
[room2pit]
descr=A two-door catwalk, where the catwalk spews gas.
mesh path=GFX\map\room2pit_opt.rmesh
shape = 2
commonness = 75
disabledecals = true
walksound=1
zone1=2
[room3pit]
descr=A three-door walkway, with a large box-like structure in the back wall.
mesh path=GFX\map\room3pit_opt.rmesh
shape = 3
commonness = 100
disabledecals = true
walksound=1
zone1=2
[room4pit]
descr=A four-door walkway, with a large cube-like stucture in the middle of the room.
mesh path=GFX\map\room4pit_opt.rmesh
shape=4
commonness = 100
zone1=2
[room2servers]
descr=SCP-096's spawn area, where 096 kills a guard.
mesh path=GFX\map\room2servers_opt.rmesh
shape = 2
commonness = 0
walksound=1
zone1=2
large = true
[room2shaft]
descr=A two-door hallway, which has a non-functional elevator and the maintenance shaft.
mesh path=GFX\map\room2shaft_opt.rmesh
shape = 2
commonness = 0
disabledecals = true
[room2tunnel]
descr=A closed gate, and elevators leading to the maintenance tunnels. Gate can be opened if SCP-372's chamber is in the map for the code.
mesh path=GFX\map\room2tunnel_opt.rmesh
shape = 2
commonness = 0
disabledecals = true
walksound=1
zone1=2
[room3tunnel]
descr=A three-door hallway, shaped after tunnels.
mesh path=GFX\map\room3tunnel_opt.rmesh
shape = 3
commonness = 100
walksound=1
zone1=2
usevolumelighting = 1
[room4tunnels]
descr=A four-door hallway, shaped after tunnels.
mesh path=GFX\map\4tunnels_opt.rmesh
shape = 4
commonness = 100
walksound=1
zone1=2
usevolumelighting = 1
[room2tesla_hcz]
descr=Hallway with a tesla gate. HCZ variant.
mesh path=GFX\map\room2tesla_hcz_opt.rmesh
shape = 2
commonness = 100
zone1=2
[room3z2]
descr=A T-shaped, three-door hallway.
mesh path=GFX\map\room3z2_opt.rmesh
shape=3
commonness = 100
zone1=2
[room2cpit]
descr=A corner room, with a large cube-like stucture in the middle of the room.
mesh path=GFX\map\room2cpit_opt.rmesh
shape=2c
commonness = 0
disabledecals = true
zone1=2
[room2pipes2]
descr=Another variant of the two-door hallway, with caged floors and ceiling that contain various pipes.
mesh path=GFX\map\room2pipes2_opt.rmesh
shape = 2
commonness = 70
disabledecals = true
zone1=2
[checkpoint2]
descr=The keycarded checkpoint which leads from the HCZ to the EZ.
mesh path=GFX\map\checkpoint2_opt.rmesh
shape = 2
commonness = 0
;ENTRANCE ZONE ROOMS
;============================
[room079]
descr=SCP-079's containment chamber.
mesh path=GFX\map\room079_opt.rmesh
shape = 1
commonness = 0
disabledecals = true
zone1=3
large = true
[lockroom2]
descr=The open-doored lockroom, with SCP-096 sitting in the middle.
mesh path=GFX\map\lockroom2_opt.rmesh
shape = 2C
commonness = 0
zone1=3
[exit1]
descr=The entrance room to Gate B, with an elevator to the surface of Gate B.
mesh path=GFX\map\exit1_opt.rmesh
shape = 1
commonness = 0
zone1=3
disableoverlapcheck=true
[gateaentrance]
descr=The room with the elevator to Gate A.
mesh path=GFX\map\gateaentrance_opt.rmesh
shape = 1
commonness = 0
zone1=3
[gatea]
descr=The surface of Gate A. Placed automatically in every map.
mesh path=GFX\map\gatea_opt.rmesh
shape = 1
commonness = 0
disableoverlapcheck=true
[medibay]
descr=A two-door hallway, leading to the medical bay. Contains a zombie.
mesh path=GFX\map\medibay_opt.rmesh
shape = 2
commonness = 0
zone1=3
[room2z3]
descr=An office-styled two-door hallway.
mesh path=GFX\map\room2z3_opt.rmesh
shape = 2
commonness = 75
zone1=3
[room2cafeteria]
descr=A two-doored walkway, with stairs leading to the cafeteria.
mesh path=GFX\map\room2cafeteria_opt.rmesh
shape = 2
commonness = 0
zone1=3
large = true
disabledecals = true
[room2Cz3]
descr=A corner room, with two benches against the walls.
mesh path=GFX\map\room2Cz3_opt.rmesh
shape = 2C
commonness = 100
zone1=3
[room2ccont]
descr=A corner room, which has the electrical center. Required to finish the game.
mesh path=GFX\map\room2ccont_opt.rmesh
shape = 2C
commonness = 0
zone1=3
large = true
[room2offices]
descr=A small, plain office room with various deks.
mesh path=GFX\map\room2offices_opt.rmesh
shape = 2
commonness = 30
zone1=3
[room2offices2]
descr=An office room with stairs that extends downwards.
mesh path=GFX\map\room2offices2_opt.rmesh
shape = 2
disabledecals=true
commonness = 20
zone1=3
[room2offices3]
descr=A large office with a second floor, and two seperate rooms.
mesh path=GFX\map\room2offices3_opt.rmesh
shape = 2
commonness = 20
zone1=3
[room2offices4]
descr=A varient of the offices.
mesh path=GFX\map\room2offices4_opt.rmesh
shape=2
commonness = 0
zone1=3
[room2poffices]
descr=A two-door hallway with three labeled offices (Harp, Maynard, & Gears).
mesh path=GFX\map\room2poffices_opt.rmesh
shape = 2
commonness = 0
zone1=3
[room2poffices2]
descr=A smaller hallway, with two doors leading to Dr. L's office and the conference rooms.
mesh path=GFX\map\room2poffices2_opt.rmesh
shape = 2
commonness = 0
zone1=3
[room2sroom]
descr=A two-door hallway with an office containing SCP-420-J
mesh path=GFX\map\room2sroom_opt.rmesh
shape = 2
commonness = 0
zone1=3
[room2toilets]
descr=Hallway containing SCP-789-J.
mesh path=GFX\map\room2toilets_opt.rmesh
shape = 2
commonness = 30
zone1=3
[room2tesla]
descr=Hallway with a tesla gate. EZ variant.
mesh path=GFX\map\room2tesla_opt.rmesh
shape = 2
commonness = 100
zone1=3
[room3servers]
descr=A maze of re-arranced servers, where SCP-173 spawns.
mesh path=GFX\map\room3servers_opt.rmesh
shape = 3
commonness = 0
disabledecals = true
zone1=3
[room3servers2]
descr=Another variant of the server room, with a longer catwalk.
mesh path=GFX\map\room3servers2_opt.rmesh
shape = 3
commonness = 0
disabledecals = true
zone1=3
[room3z3]
descr=A three-door hallway.
mesh path=GFX\map\room3z3_opt.rmesh
shape = 3
commonness = 100
zone1=3
[room4z3]
descr=A 4-door hallway.
mesh path=GFX\map\room4z3_opt.rmesh
shape = 4
commonness = 100
zone1=3
[room1lifts]
descr=A dead-end room with two elevators.
mesh path=GFX\map\room1lifts_opt.rmesh
shape=1
commonness = 0
zone1=3
[room3gw]
descr=An alternate, EZ-styled, broken contamination airlock.
mesh path=GFX\map\room3gw_opt.rmesh
shape=3
commonness = 10
zone1=3
[room2servers2]
descr=A server room dedicated to keep the Site-COMmunications up and running (no real value).
mesh path=GFX\map\room2servers2_opt.rmesh
shape=2
commonness = 0
zone1=3
[room3offices]
descr=A office room with three exits.
mesh path=GFX\map\room3offices_opt.rmesh
shape=3
commonness = 0
zone1=3
[room2z3_2]
descr=A varient of the two-door hallway.
mesh path=GFX\map\room2z3_2_opt.rmesh
shape=2
commonness = 25
zone1=3
[pocketdimension]
descr=SCP-106's pocket dimension. Placed automatically in all maps.
mesh path=GFX\map\pocketdimension1_opt.rmesh
shape = 1
commonness = 0
[dimension1499]
descr=SCP-1499's dimension. Placed automatically in all maps.
mesh path=GFX\map\dimension1499\1499object0_opt.rmesh
shape=1
commonness = 0
disabledecals = true

BIN
a0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 563 B

View file

@ -2,16 +2,16 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://bnnxby4bprtmh"
path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"
uid="uid://6fdmme6l7m0p"
path="res://.godot/imported/a0.png-554458861febe5afb9c5b407bd9aeeca.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://icon.svg"
dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"]
source_file="res://a0.png"
dest_files=["res://.godot/imported/a0.png-554458861febe5afb9c5b407bd9aeeca.ctex"]
[params]
@ -32,6 +32,3 @@ process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

BIN
icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

34
icon.png.import Normal file
View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://gsytawkst1eg"
path="res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://icon.png"
dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View file

@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128"><rect width="124" height="124" x="2" y="2" fill="#363d52" stroke="#212532" stroke-width="4" rx="14"/><g fill="#fff" transform="translate(12.322 12.322)scale(.101)"><path d="M105 673v33q407 354 814 0v-33z"/><path fill="#478cbf" d="m105 673 152 14q12 1 15 14l4 67 132 10 8-61q2-11 15-15h162q13 4 15 15l8 61 132-10 4-67q3-13 15-14l152-14V427q30-39 56-81-35-59-83-108-43 20-82 47-40-37-88-64 7-51 8-102-59-28-123-42-26 43-46 89-49-7-98 0-20-46-46-89-64 14-123 42 1 51 8 102-48 27-88 64-39-27-82-47-48 49-83 108 26 42 56 81zm0 33v39c0 276 813 276 814 0v-39l-134 12-5 69q-2 10-14 13l-162 11q-12 0-16-11l-10-65H446l-10 65q-4 11-16 11l-162-11q-12-3-14-13l-5-69z"/><path d="M483 600c0 34 58 34 58 0v-86c0-34-58-34-58 0z"/><circle cx="725" cy="526" r="90"/><circle cx="299" cy="526" r="90"/></g><g fill="#414042" transform="translate(12.322 12.322)scale(.101)"><circle cx="307" cy="532" r="60"/><circle cx="717" cy="532" r="60"/></g></svg>

Before

Width:  |  Height:  |  Size: 994 B

BIN
logo.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

BIN
missing.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

34
missing.png.import Normal file
View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://di000dlo382w"
path="res://.godot/imported/missing.png-6de6bfc1abaa77bc165d73c8af33c288.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://missing.png"
dest_files=["res://.godot/imported/missing.png-6de6bfc1abaa77bc165d73c8af33c288.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View file

@ -13,7 +13,10 @@ config_version=5
config/name="SCPCB"
run/main_scene="res://scenes/screens/Startup.tscn"
config/features=PackedStringArray("4.3", "GL Compatibility")
config/icon="res://icon.svg"
run/max_fps=240
boot_splash/bg_color=Color(0, 0, 0, 1)
boot_splash/show_image=false
config/icon="res://icon.png"
[autoload]
@ -21,6 +24,11 @@ Global="*res://src/Global.gd"
Options="*res://src/Options.gd"
DebugMenu="*res://addons/debug_menu/debug_menu.tscn"
[display]
window/size/viewport_width=640
window/size/viewport_height=480
[editor_plugins]
enabled=PackedStringArray("res://addons/debug_menu/plugin.cfg")
@ -73,3 +81,4 @@ player_blink={
renderer/rendering_method="gl_compatibility"
renderer/rendering_method.mobile="gl_compatibility"
environment/defaults/default_clear_color=Color(0, 0, 0, 1)
occlusion_culling/use_occlusion_culling=true

View file

@ -0,0 +1,9 @@
[gd_scene format=3 uid="uid://bdqtosfjpsvyl"]
[node name="LauncherResButton" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2

View file

@ -0,0 +1,12 @@
[gd_scene load_steps=2 format=3 uid="uid://dl3obcg0k5dux"]
[ext_resource type="Script" path="res://src/GameStartup.gd" id="1_4np6w"]
[node name="GameStartup" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_4np6w")

View file

@ -0,0 +1,29 @@
[gd_scene load_steps=4 format=3 uid="uid://dc8jcyubx5hv7"]
[ext_resource type="Script" path="res://src/Launcher.gd" id="1_cf26g"]
[ext_resource type="Texture2D" uid="uid://d3sh54nbyqqiu" path="res://GFX/menu/launcher.jpg" id="2_6ldjf"]
[ext_resource type="PackedScene" uid="uid://5ktmpg8aurb7" path="res://scenes/gui/Button.tscn" id="3_nah2s"]
[node name="Launcher" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_cf26g")
[node name="BG" type="TextureRect" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("2_6ldjf")
[node name="Button" parent="." instance=ExtResource("3_nah2s")]
offset_left = 267.0
offset_top = 255.0
offset_right = 417.0
offset_bottom = 305.0

View file

@ -0,0 +1,9 @@
[gd_scene format=3 uid="uid://ctajpl2bdscko"]
[node name="LoadingScreen" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2

View file

@ -0,0 +1,35 @@
[gd_scene load_steps=3 format=3 uid="uid://cn6hlgepkjxef"]
[ext_resource type="Script" path="res://src/UpdateChecker.gd" id="1_nqadt"]
[ext_resource type="FontFile" uid="uid://xe31montgcoo" path="res://GFX/font/cour/Courier New.ttf" id="1_qoah1"]
[node name="UpdateChecker" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_nqadt")
[node name="HTTPRequest" type="HTTPRequest" parent="."]
[node name="Text" type="Label" parent="."]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -111.0
offset_top = -11.5
offset_right = 111.0
offset_bottom = 11.5
grow_horizontal = 2
grow_vertical = 2
theme_override_fonts/font = ExtResource("1_qoah1")
text = "Checking for updates..."
horizontal_alignment = 1
vertical_alignment = 1
[connection signal="request_completed" from="HTTPRequest" to="." method="_on_http_request_request_completed"]

View file

@ -1,10 +1,23 @@
extends Node3D
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
#RMesh.LoadRMesh(self, "GFX\\map\\machineroom_opt.rmesh")
B3D.Load("GFX\\npcs\\106_2.b3d")
var usableRooms = Dictionary()
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass
func _ready() -> void:
#RMesh.LoadRMesh(self, "GFX\\map\\gatea_opt.rmesh")
#B3D.Load("GFX\\npcs\\106_2.b3d")
var rooms = INI.Load("res://Data/rooms.ini")
for room in rooms:
if room == "loose":
continue
if room == "room ambience":
continue
var roomInfo = rooms[room]
if not roomInfo.has("mesh path"):
print(room, roomInfo)
continue
usableRooms.get_or_add(room, roomInfo)
#RMesh.LoadRMesh(self, roomInfo["mesh path"])

11
src/GameStartup.gd Normal file
View file

@ -0,0 +1,11 @@
extends Control
var skipIntro = false
func _ready() -> void:
DisplayServer.window_set_title(str("SCP - Containment Breach v", Global.GAME_VERSION))
if skipIntro:
get_tree().change_scene_to_file("res://scenes/screens/MainMenu.tscn")
else:
Global.videoToPlay = "res://GFX/menu/startup_Undertow.avi"
get_tree().change_scene_to_file("res://scenes/screens/IntroVideo.tscn")

View file

@ -1,8 +1,11 @@
extends Node
var GAME_VERSION = "1.3.11"
var menuScale: float
var displaySize: Vector2
var textureCache: Dictionary
var audioCache: Dictionary
var videoToPlay: String
var clickSound: AudioStreamPlayer
@ -14,15 +17,39 @@ func GetTextureFromCache(name:String):
return textureCache.get(fixedName)
return null
func LoadTexture(name:String):
var TRANSPARENT_TEXTURE = load("res://a0.png")
var MISSING_TEXTURE = load("res://missing.png")
func LoadTexture(name: String):
var fixedName = name.replace("\\", "/")
return textureCache.get_or_add(fixedName, load(str("res://", fixedName)))
var fileName = Utils.GetCaseiFileName(str("res://", fixedName))
if fileName == null:
return MISSING_TEXTURE
elif fileName.contains("<null>"):
return TRANSPARENT_TEXTURE
return textureCache.get_or_add(fixedName, load(fileName))
func GetTextureSafe(name: String):
var fixedName = name.replace("\\", "/")
if textureCache.has(fixedName):
return textureCache.get(fixedName)
else:
return LoadTexture(name)
func LoadAudio(name: String):
var fixedName = name.replace("\\", "/")
return audioCache.get_or_add(fixedName, load(str("res://", fixedName)))
func _ready():
clickSound = AudioStreamPlayer.new()
clickSound.stream = load("res://SFX/Interact/Button.ogg")
clickSound.stream = LoadAudio("SFX/Interact/Button.ogg")
clickSound.max_polyphony = 5
add_child(clickSound)
Input.set_custom_mouse_cursor(Utils.KeyBackground(LoadTexture("GFX/cursor.PNG"), Color(0, 0, 0, 1)))
LoadTexture("GFX/BlinkMeter.jpg")
func _process(delta):
FPSfactor = delta

View file

@ -7,6 +7,9 @@ func _ready() -> void:
$AspectRatioContainer/VideoStreamPlayer.play()
$AudioStreamPlayer.play()
func _process(delta: float) -> void:
if Input.is_action_just_pressed("ui_accept"):
_on_video_stream_player_finished()
func _on_video_stream_player_finished() -> void:
if Global.videoToPlay == "res://GFX/menu/startup_TSS.avi":

10
src/Launcher.gd Normal file
View file

@ -0,0 +1,10 @@
extends Control
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
DisplayServer.window_set_title("SCP - Containment Breach Launcher")
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass

View file

@ -24,7 +24,7 @@ func newGame():
print("clicked new game")
func quitGame():
get_tree().quit()
get_tree().quit.call_deferred()
var jankyCounter = 0
func _process(delta: float) -> void:

View file

@ -1,10 +1,4 @@
extends Control
var skipIntro = false
func _ready() -> void:
if skipIntro:
get_tree().change_scene_to_file("res://scenes/screens/MainMenu.tscn")
else:
Global.videoToPlay = "res://GFX/menu/startup_Undertow.avi"
get_tree().change_scene_to_file("res://scenes/screens/IntroVideo.tscn")
get_tree().change_scene_to_file("res://scenes/screens/UpdateChecker.tscn")

9
src/UpdateChecker.gd Normal file
View file

@ -0,0 +1,9 @@
extends Control
func _ready() -> void:
DisplayServer.window_set_max_size(Vector2i(640, 480))
DisplayServer.window_set_min_size(Vector2i(640, 480))
$HTTPRequest.request("https://www.scpcbgame.com/changelog.txt")
func _on_http_request_request_completed(result: int, response_code: int, headers: PackedStringArray, body: PackedByteArray) -> void:
get_tree().change_scene_to_file("res://scenes/screens/Launcher.tscn")

View file

@ -17,3 +17,34 @@ static func WrapAngle(angle):
while angle >= 360:
angle = angle - 360
return angle
static func KeyBackground(image, key: Color):
var imageRaw = image.get_image()
imageRaw.convert(Image.FORMAT_RGBA8)
for y in imageRaw.get_height():
for x in imageRaw.get_width():
if imageRaw.get_pixel(x, y) == key:
imageRaw.set_pixel(x, y, Color.TRANSPARENT)
static var cachedLookupPaths = Dictionary()
static func GetCaseiFileName(path: String):
var pathParts = path.split("/")
var dirName = "/".join(pathParts.slice(0, len(pathParts) - 1))
var loadedFileNames: Dictionary
if cachedLookupPaths.has(dirName.to_lower()):
loadedFileNames = cachedLookupPaths.get(dirName.to_lower())
else:
loadedFileNames = Dictionary()
var sillyDir = DirAccess.open(dirName)
sillyDir.list_dir_begin()
var dirFileName = sillyDir.get_next()
while dirFileName != "":
loadedFileNames.get_or_add(dirFileName.to_lower(), dirFileName)
dirFileName = sillyDir.get_next()
cachedLookupPaths.get_or_add(dirName.to_lower(), loadedFileNames)
return str(dirName, "/", loadedFileNames.get(pathParts[-1].to_lower()))

21
src/file_parsers/INI.gd Normal file
View file

@ -0,0 +1,21 @@
class_name INI
static func Load(file: String):
var sections = Dictionary()
var fileHandle = FileAccess.open(file, FileAccess.READ)
var fileContent = fileHandle.get_as_text().replace("\r\n", "\n").split("\n")
fileHandle.close()
var currentSection: Dictionary = sections.get_or_add("loose", Dictionary())
for line in fileContent:
if line.strip_edges().strip_escapes() == "" or line.begins_with(";"):
continue
if line.begins_with("[") and line.ends_with("]"):
currentSection = sections.get_or_add(line.substr(1, len(line) - 2), Dictionary())
else:
var segments = line.split("=")
currentSection.get_or_add(segments[0], segments[1])
return sections

View file

@ -19,8 +19,11 @@ static func StripFilename(file: String):
static var EMPTY_TEXTURE = Texture2D.new()
static var RMESH_LOAD_COUNT = 0
static func LoadRMesh(parentNode: Node3D, file: String):
var correctedPath = file.replace("\\", "/")
var fileName = correctedPath.split("/")[-1]
var fileHandle = FileAccess.open(str("res://", correctedPath), FileAccess.READ)
var reader = BufferStuffReader.create(fileHandle.get_buffer(fileHandle.get_length()))
@ -33,13 +36,15 @@ static func LoadRMesh(parentNode: Node3D, file: String):
return
var scene = Node3D.new()
scene.name = str(fileName, "_", RMESH_LOAD_COUNT)
RMESH_LOAD_COUNT += 1
parentNode.add_child(scene)
var count: int = 0
var count2: int = 0
file = StripFilename(file)
print(file)
#print(file)
var i
var j
@ -212,8 +217,10 @@ static func LoadRMesh(parentNode: Node3D, file: String):
if isAlpha == 1:
#AddMesh childMesh,Alpha
#EntityAlpha childMesh,0.0
print("loaded transparent face")
#print("loaded transparent face")
x
else:
x
#AddMesh childMesh,Opaque
#EntityParent childMesh,collisionMeshes
#EntityAlpha childMesh,0.0
@ -225,7 +232,7 @@ static func LoadRMesh(parentNode: Node3D, file: String):
#FlipMesh(flipChild)
#AddMesh flipChild,childMesh
#FreeEntity flipChild
print("loaded opaque geometry")
#print("loaded opaque geometry")
#var st = SurfaceTool.new()
#st.begin(Mesh.PRIMITIVE_LINE_STRIP)
@ -257,7 +264,7 @@ static func LoadRMesh(parentNode: Node3D, file: String):
#meshInstance.create_trimesh_collision()
scene.add_child(meshInstance)
print("YOYOYO MARKER")
#print("YOYOYO MARKER")
#Local hiddenMesh%
#hiddenMesh=CreateMesh()
@ -314,7 +321,7 @@ static func LoadRMesh(parentNode: Node3D, file: String):
# trigger boxes
if hasTriggerBox:
print("TriggerBoxEnable")
#print("TriggerBoxEnable")
var triggerBoxAmount = reader.readInt()
for tb in range(triggerBoxAmount):
var tbVerts = PackedVector3Array()
@ -370,7 +377,7 @@ static func LoadRMesh(parentNode: Node3D, file: String):
count = reader.readInt() # point entities
for i1 in range(count):
temp1s = ReadString(reader)
print(str("POINT ENTITY: ", temp1s))
#print(str("POINT ENTITY: ", temp1s))
if temp1s == "screen":
temp1 = -reader.readFloat() * WORLD_SCALE
temp2 = reader.readFloat() * WORLD_SCALE
@ -409,7 +416,7 @@ static func LoadRMesh(parentNode: Node3D, file: String):
var lcolor = ReadString(reader).split(" ")
var intensity = min(reader.readFloat() * 0.8, 1.0)
print(str("light. Range: ", range, ", lcolor: ", lcolor, ", intensity:", intensity))
#print(str("light. Range: ", range, ", lcolor: ", lcolor, ", intensity:", intensity))
var r = int(lcolor[0]) / 255 * intensity
var g = int(lcolor[1]) / 255 * intensity
var b = int(lcolor[2]) / 255 * intensity
@ -444,7 +451,7 @@ static func LoadRMesh(parentNode: Node3D, file: String):
#
var innerconeangle = reader.readInt()
var outerconeangle = reader.readInt()
print(str("spotlight. Range: ", range, ", lcolor: ", lcolor, ", intensity:", intensity, ", angles: ", angles, ", innerconeangle: ", innerconeangle, ", outerconeangle: ", outerconeangle))
#print(str("spotlight. Range: ", range, ", lcolor: ", lcolor, ", intensity:", intensity, ", angles: ", angles, ", innerconeangle: ", innerconeangle, ", outerconeangle: ", outerconeangle))
#lt\innerconeangle = ReadInt(f)
#lt\outerconeangle = ReadInt(f)
else:

View file

@ -3,6 +3,11 @@ class_name X
static func LoadModel(filePath: String):
var sillyPath = str("res://", filePath.replace("/Map/", "/map/"))
var file = FileAccess.open(sillyPath, FileAccess.READ)
# Do a case insensitive lookup only if we have to, it's more expensive.
if file == null:
file = FileAccess.open(Utils.GetCaseiFileName(sillyPath), FileAccess.READ)
var fileLines = file.get_as_text(true).split("\n")
var meshDataStart = false