3,350 Commits over 976 Days - 0.14cph!
Create ScriptableWorldConfig so we can override terrain generation for each gamemode
- have to use a new object since gamemodes are spawned after the terrain is generated
Re-add molotov as it accidently got removed
Restrict additional items
- mlrs
- 40mm grenade ammo (since MGL was already removed)
- all rocket ammo (since launcher was already removed)
- C4
- HV & incendiary pistol ammo
- homing launcher & ammo
Fix restricted items showing up in quick craft
Fix restricted items showing up when searching crafting menu
Fix favorites in crafting menu being shown when restricted
Fix for RPC not filtering out the sell orders in a different era
Cherrypick CS
110544 compile fix (unsure why it didn't show in this branch originally)
merge from primitive -> aux2
Fix compile error from System namespace applying to Random class
merge from primitive -> aux2
merge from primitive_gm -> primitive
merge from main -> primitive_gm
merge from monument_menu_items -> main
merge from main -> monument_menu_items
merge from fix_banlist_allocation -> main
Fix banlist & banlistex command allocating 130MB every time it was ran
- was set to a starting length of 64M characters instead of 64K
- reuses the StringBuilder instead of making a new one each time
Try catch convars when setting up gamemode incase one of the convars throws an error upwards
Redo the way server event convars are applied by storing the changes and applying them once the event prefab is loaded
- we need to do this because convars can be ran before the event's scheduling prefab has been loaded on the server
Fix gamemode failing to run startup methods if it was spawned before ServerMgr
Add convar to control if oil rigs should generate on the map
- disable oil rigs in primitive
Fixed static workbenches not having primitive version of tech tree attached to them
merge from qol_horse_comfort_increase -> main
Enable horse comfort only on campfire prefabs
- campfire
- skull firepit
- cursed cauldron
merge from primitive -> aux2
merge from primitive_gm -> primitive
Fix T2 and T3 tech tree not marked as available in primitive
Restrict spring since it's only used for restricted weapons
- remove spring from pressure plate in primitive to make it craftable with spring removal
Remove rifle body, SMG body, semi body since they are only used for restricted weapons
Fix metal detector not applying item era restrictions
Restrict access to rifle ammo since no weapons that use rifle ammo are available
Fix advent calendar able to bypass primitive era item restrictions
Remove `npc_junkpile_a_spawn_chance` and `npc_junkpile_g_spawn_chance` convars as no junkpiles in the project actually use the components the convars are referenced in
- replace with the normal convar `npc_junkpilespawn_chance`
Restrict double barrel shotgun
Disable all scientists in primitive mode
Add convars to block NPCs from spawning
- `npc_spawn_on_junkpile` specifically for junkpiles
- `scientist_spawners_enabled` will disable all scientists spawning (peaceful & hostile)
Whoops: supposed to KEEP the RHIB in primitive
Set convar in primitive gamemode so rowboat spawns rear of cargo instead of rhib (since RHIB is supposed to be disabled)
Add convar `cargo_escape_boat_rhib` to control whether a rowboat or rhib will spawn on the back of cargoship
merge from primitive -> aux2
merge from primitive_gm -> primitive
Ensure missions can't give out items that are blocked by an era
- ideally missions rewards are changed if they aren't allowed in an era but this is a failsafe
Ensure vending machines don't sell restricted items
- block orders with restricted items from being networked
- also block it from being bought if the sell order somehow goes through
merge from primitive -> aux2
merge from primitive_gm -> primitive
Show a red background around restricted items in the F1 menu
Add primitive version of T1 tech tree, except satchel is missing (as an example)
Mark existing tech trees as the unknown era