Configuration
Current configuration map and defaults for oxide-meth.
Reference for the shipped oxide-meth config files.
shared/config.lua
General
| Setting | Default | Description |
|---|
Config.Debug | false | Enable debug output |
Config.RequireOwnership | true | Restrict pickup and collection to the placing character |
Config.SpawnDistance | 100.0 | Client spawn range for placed equipment |
Config.SafeZones | {} | Polygon zones where equipment placement is blocked |
Fume effects
| Setting | Default |
|---|
lingerDuration | 120000 |
maxStrength | 0.6 |
rampUpRate | 0.008 |
maskedFadeRate | 0.02 |
Gas mask
| Setting | Default |
|---|
Config.GasMask.item | gas_mask |
componentId | 1 |
drawable | 175 |
texture | 0 |
anim.dict | mp_masks@standard_car@ds@ |
anim.name | put_on_mask |
anim.duration | 1200 |
Placement animations
| Setting | Default |
|---|
Config.Anims.place.dict | weapons@first_person@aim_rng@generic@projectile@sticky_bomb@ |
Config.Anims.place.name | plant_floor |
Config.Anims.place.duration | 1000 |
Config.Anims.remove.dict | weapons@first_person@aim_rng@generic@projectile@sticky_bomb@ |
Config.Anims.remove.name | plant_floor |
Config.Anims.remove.duration | 1000 |
Cooking
| Setting | Default |
|---|
cookDuration | 20000 |
cookHeatRate | 0.13 |
cookCoolAmount | 15.0 |
cookOverheatPenalty | 3.0 |
cookKeyChangeInterval | 4000 |
cookColdThreshold | 15.0 |
cookColdMaxMs | 5000 |
cookStartTemp | 30.0 |
cookKeys | E, Q, R, G, X, H |
pourSpeed | 3.0 |
pourTiltMax | 120.0 |
dropSnapDistance | 0.5 |
lerpDuration | 600 |
This file also contains the cooking camera offsets, scene prop groups, and the fire and smoke FX definitions used by the client minigame.
Drying
| Setting | Default |
|---|
Config.Drying.dryingTime | 300 |
Config.Drying.equipment.model | bkr_prop_meth_chiller_01a |
Config.Drying.trays.stacksPerColumn | 9 |
Drying uses two columns with nine stacked tray slots per column, for 18 total slots.
Breaking
| Setting | Default |
|---|
Config.Breaking.shardsMin | 3 |
Config.Breaking.shardsMax | 6 |
Config.Breaking.shardModel | prop_oxide_crystal_meth |
Bagging
| Setting | Default |
|---|
Config.Bagging.shardsPerBag | 3 |
Config.Bagging.shardWeightMin | 0.3 |
Config.Bagging.shardWeightMax | 1.0 |
Config.Bagging.targetWeight | 1.0 |
Config.Bagging.minSealWeight | 0.8 |
Config.Bagging.dropSnapDistance | 0.3 |
Config.Bagging.lerpDuration | 400 |
shared/config/items.lua
This file defines the canonical item names used by each stage.
| Setting | Default |
|---|
Config.Items.ingredients | hydrogen_peroxide, ammonia, hydrochloric_acid, sodium_benzoate |
Config.Items.cooking.output.name | liquid_meth_tray |
Config.Items.cooking.output.amount | 1 |
Config.Items.drying.input | liquid_meth_tray |
Config.Items.drying.output | crystallized_meth_tray |
Config.Items.breaking.input | crystallized_meth_tray |
Config.Items.breaking.maxTrays | 3 |
Config.Items.breaking.output | crystal_meth |
Config.Items.bagging.shardItem | crystal_meth |
Config.Items.bagging.bagItem | baggy |
Config.Items.bagging.output | meth_baggy |
shared/config/additives.lua
Additives
Each additive entry defines:
label
model
type as pour or drag
requiredLevel
heatRateModifier
optimalRangeModifier
purityBonus
Shipped unlock levels:
| Additive | Required Level |
|---|
pain_killer | 1 |
lax_to_the_max | 1 |
cannabis_leaf | 1 |
cough_syrup | 1 |
magnesium_oxide | 3 |
hazardous_waste | 3 |
vanilla_unicorn_pills | 3 |
adrenaline | 5 |
acetone | 5 |
toluene | 7 |
Variant mapping
Config.Variants maps additive combinations to:
key
name
additives
shardItem
bagItem
shardsModifier
valueMultiplier
Shipped variants:
glass
blue_sky
purple_haze
lean_crystal
green_rush
dirty_sprite
street_mix
rocket_fuel
club_special
ice
Config.DefaultVariant is the fallback variant and ships as:
key = 'crystal'
shardItem = 'crystal_meth'
bagItem = 'meth_baggy'
valueMultiplier = 1.0
Purity settings
| Setting | Default |
|---|
Config.Purity.optimalTempMin | 35 |
Config.Purity.optimalTempMax | 65 |
Config.Purity.maxAdditives | 2 |
Additive interaction defaults
| Setting | Default |
|---|
Config.AdditiveDefaults.pourMaxFrames | 300 |
Config.AdditiveDefaults.dropSnapDistance | 0.45 |
Config.AdditiveDefaults.dragLerpDuration | 200 |
shared/config/equipment.lua
Meth table
| Setting | Default |
|---|
Config.Equipment.meth_table.item | meth_table |
equipmentType | table |
facingOffset | 180 |
Meth crystallizer
| Setting | Default |
|---|
Config.Equipment.meth_crystallizer.item | meth_crystallizer |
equipmentType | crystallizer |
requiredLevel | 0 |
facingOffset | 180 |
Note: equipment placement currently uses tr_prop_meth_chiller_01a, while the drying scene config in shared/config.lua references bkr_prop_meth_chiller_01a.
shared/config/progression.lua
XP rewards
| Setting | Default |
|---|
Config.Progression.xpRewards.cook | 25 |
Config.Progression.xpRewards.dry | 10 |
Config.Progression.xpRewards.breakMeth | 30 |
Config.Progression.xpRewards.bag | 15 |
Level thresholds
Shipped progression runs from level 1 to level 10 with these XP breakpoints:
0, 100, 300, 650, 1200, 2000, 3200, 5000, 7500, 11000
Purity penalties
Shipped purity penalties by level:
-30, -25, -20, -15, -10, -8, -5, -3, -1, 0
shared/config/usage.lua
This file controls the usable meth effects for all bagged output items.
Core settings
| Setting | Default |
|---|
Config.Usage.cooldown | 120 |
Config.Usage.anim.dict | mp_player_intdrink |
Config.Usage.anim.clip | loop_bottle |
Config.Usage.anim.duration | 3000 |
Config.Usage.anim.flag | 49 |
Effect toggles
| Setting | Default |
|---|
needsEffects.stressRelief | true |
needsEffects.armour | true |
needsEffects.healing | true |
needsEffects.stamina | true |
Screen effects
| Setting | Default |
|---|
timecycle | spectator5 |
cameraShake | HAND_SHAKE |
fovBoost | 5.0 |
pulseInterval | 8.0 |
pulseDuration | 1.5 |
Base effects
| Setting | Default |
|---|
duration | 90 |
intensity | 0.5 |
stressRelief | 30 |
healRate | 0 |
healTickInterval | 5 |
armourAmount | 0 |
staminaRegenRate | 0.0 |
speedBoost | 0.0 |
cameraShakeAmplitude | 1.5 |
Purity multipliers
| Grade | Multiplier |
|---|
Pure | 1.3 |
High | 1.1 |
Mid | 1.0 |
Low | 0.8 |
Dirty | 0.6 |
Config.Usage.variantEffects overrides the base profile per variant before purity scaling is applied.
Next Steps