Configuration Guide
All configuration lives in the config/ folder and stays editable in the encrypted version. Every file is commented in detail, and this page is the map.
Framework, inventory, target and notification settings are not in Base Building. They are handled by vns-core and, if you need to force something, set in vns-core/config.lua.
config/general.lua
The core file:
- Debug -
Config.Debug.Enablemaster switch plus per-feature debug drawing (prop outlines, turret lines and cones, base radius spheres, garden markers) and draw-distance caps. KeepConfig.Debug.Enable = falsein production. - Base streaming -
Config.BaseStreamDistance(metres at which a base's data is sent to a player) andConfig.BaseStreamInterval(seconds between position checks). Players only receive the bases around them, so a server with many bases stays light. - Server integration -
Config.SaveSQLEvery(shortest time between two saves of the same base, in minutes),Config.SaveSpacing(seconds between two database writes),Config.FullSaveEvery(minutes between queueing every base for a save),Config.DownloadPropsOnJoin,Config.PropLoadTimeout. Only bases that changed are written, one at a time. - Item icons -
Config.ItemIcons:"inventory"loads icons from your inventory's image folder (taken from vns-core'sConfig.ItemImagePath),"custom"loads them from the resource's ownhtml/icons/othersfolder. See Items Setup. - Where players can build -
Config.BuildingBlockZones(no-build spheres with optional map blips),Config.BaseControl(base radius and spacing between bases),Config.SpawnDistance,Config.SpawnBases. - Lights -
Config.LightRenderingcaps how many lights cast shadows, render as spotlights, or fall back to a small glow, to protect client framerate. - Anti-abuse -
Config.PlaceObjectCooldownMsandConfig.MaxBuildDistance(server-side placement checks). - Building rules -
Config.Stability,Config.CeilingMaxSpan,Config.ContinuouslyBuilding,Config.InstantUpgrade,Config.RequiredItemToBuild,Config.FreeBuildingCost,Config.RefundOnDemolish,Config.PropLimitsPerBase. - Decay & upkeep -
Config.EnableDecay,Config.UpkeepMultiplier,Config.UpkeepInterval,Config.DecayDamagePerTick,Config.FullCyrcleDecay(keep that spelling),Config.RepairSecondsPer1000HP,Config.RepairMaterialsFrom(repair with materials from the player's inventory or from the base storage). - Raiding -
Config.Raid, see Raiding & Turrets. - Turrets -
Config.Turret, see Raiding & Turrets. - Membership & permissions -
Config.OneBasePerPlayer,Config.MemberOnSingleBase,Config.ShowMemberNames,Config.DefaultMemberPermissions,Config.MaxBaseNameLengthandConfig.BasePermissions(the permissions an owner can grant: inventory, build, doors, electricity, upkeep withdraw, manage). - Radial build menu -
Config.RadialMenu: enable, keybind (default G), categories and submenu groups with icons and order. - Misc -
Config.Progress(ox_lib progress style and timers),Config.Items(which item names are used for wood/stone/metal/concrete),Config.DisabledButtons(controls blocked in build mode),Config.Storages(slots and weight per storage prop).
config/props.lua
Every placeable prop: structures (Config.BaseBuildables, in 3 material tiers with per-tier health, build cost and upkeep cost) and furniture (Config.PropBuildables). You can add your own props here: copy an existing entry, change the model and costs, and it appears in the build menu. Setting ItemName on a furniture entry means players need that item to place it: the item is used up instead of the materials, and using it from the inventory starts the placement. ItemName = false (the default) places it with the materials.
config/electricity.lua
Generator fuel items (Config.FuelItems) and Config.Electricity: generator efficiency, wire length, battery capacity, solar output. In Lite this file only contains the fuel items, generator efficiency and tank size.
config/planting.lua (Pro)
Crops (growth stages, times, yields), water consumption, rain collector rates per weather type, weeds, fertilizer, light requirement and the planting animations.
config/cooking.lua & config/crafting.lua (Pro)
Recipes for the furnace and workbench, see Cooking & Crafting. Each file starts with a Custom block that lets you hand the station over to your own client event, server event or export instead of the built-in UI.
config/seating.lua
Which props can be sat or slept on and the seat positions per prop.
config/language.lua
Every player-facing text: notifications, target labels, UI strings. Translate the whole script from this one file.
Open files
Besides the configs, client/open_client.lua and server/open_server.lua are editable in every version. They contain the functions through which the script uses vns-core (identity, items, notifications, targets, item icon path) and hooks such as CanUserPlaceObject, CanUserOpenMenu and CanUserUpgradeObject for your own rules. Support for a custom framework or inventory belongs in vns-core, not here.