Server configuration reference
Look up all 229 server scalar settings with exact defaults, validation bounds, scope, file-only lists and local audio.
Scope and safe interpretation
This is the complete 229-scalar declaration catalog reported on PDF pages 51–70 for civic_frontier-server.toml in world server configuration. Values are mod defaults, not this pack’s overrides. Bounds are validation limits, not recommendations. Descriptions below retain declaration wording; system guides explain gates and partial features.
Integer/double/boolean/choice types were separately checked against the supplied CfConfig.java declaration helpers. Defaults, bounds and descriptions retain PDF provenance.
All scalar metadata marks restart=false. Actual effects may wait for system timing; already-open projects can freeze opening-time rules. Admin Book saves these server/world settings. Six file-only lists and two client audio entries are separate.
economy.supply_mode=targeted has a mint gate but not the full planned controller. Afterfall billing needs its working API hook and defaults off. clock.mode does not make every earnings/public-pay counter reset at midnight. Read tax timing, integrations and build status before interpreting labels as complete features.
Clock
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
clock.mode | auto (choice) | auto, calendar, afterfall, uptime, minecraft_days | When civic days turn over. auto = calendar alone, afterfall when Afterfall is installed. | 51 |
clock.new_day_hour | 0 (integer) | 0 to 23 | Calendar mode: hour (server local time) a new civic day starts. | 51 |
clock.minecraft_days | 1 (integer) | 1 to 30 | minecraft_days mode: Minecraft days per civic day. | 51 |
clock.afterfall_rates_per_afterfall_day | false (boolean) | true / false | Charge the full daily rate on every Afterfall day instead of prorating (not recommended). | 51 |
Economy
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
economy.supply_mode | open (choice) | open, targeted | open = no money cap: public pay creates money when the public purse is empty. targeted = rev 1.1 supply target. | 52 |
economy.starting_money | 1000 (integer) | 0 to 1000000000 | Money every new player gets once, from the public purse. | 52 |
economy.starting_public_fund | 1000 (integer) | 0 to 1000000000 | Starting public fund for a new standalone world. | 52 |
economy.public_pay_hour_cap | 100 (integer) | 0 to 1000000000 | Most public pay one player can earn per hour (0 = no limit). | 52 |
economy.public_pay_day_cap | 500 (integer) | 0 to 1000000000 | Most public pay one player can earn per civic day (0 = no limit). | 52 |
economy.price_index_enabled | true (boolean) | true / false | Civic prices follow average money per active player. | 52 |
economy.price_index_reference | 150000 (integer) | 1 to 1000000000 | Money per active player at which the index is 1. | 52 |
economy.price_index_min | 1.0 (double) | 0.01 to 1000 | Lowest civic price index. | 52 |
economy.price_index_max | 0.0 (double) | 0.0 to 1000000 | Highest civic price index (0 = no limit). | 52 |
economy.fee_recycle_share | 0.0 (double) | 0.0 to 1.0 | Share of destroyed server fees returned to the public purse. | 52 |
economy.afterfall_civic_notes | false (boolean) | true / false | With Afterfall: also allow Trade Notes. | 52 |
economy.afterfall_public_market_creates_tokens | true (boolean) | true / false | With Afterfall: the public market pays new Supply Tokens when its purse is empty, like an NPC trader. | 52 |
economy.crossing_save_radius | 4 (integer) | -1 to 16 | After a bank action, also save unsaved chunks this many chunks around the player (-1 = off). | 52 |
economy.bank_reach_blocks | 5 (integer) | 2 to 16 | How close a player must be to use a civic block. | 52 |
Market
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
market.bid_factor | 0.55 (double) | 0.0 to 10.0 | Public market pays base value x this. | 53 |
market.units_per_item_per_hour | 16 (integer) | 0 to 100000 | Units of each goods one player can sell to the server per hour (0 = no limit). | 53 |
market.buy_tax_percent | 12.0 (double) | 0.0 to 1000.0 | Sales tax on buying from the server, in percent on top of the price; paid to the public purse. | 53 |
market.ask_factor | 1.0 (double) | 0.01 to 100.0 | The server sells goods at base value x this (buying is never limited). | 53 |
Earnings
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
earnings.earnings_tax_enabled | true (boolean) | true / false | Server tax on what players earn, taken when they earn it. | 54 |
earnings.tax_free_per_day | 10000 (integer) | 0 to 2000000000 | Earnings per civic day with no server tax. | 54 |
earnings.band1_up_to | 50000 (integer) | 0 to 2000000000 | Band 1 ends at this day total. | 54 |
earnings.band1_percent | 5 (double) | 0 to 100 | Tax in band 1 (percent). | 54 |
earnings.band2_up_to | 100000 (integer) | 0 to 2000000000 | Band 2 ends at this day total. | 54 |
earnings.band2_percent | 10 (double) | 0 to 100 | Tax in band 2 (percent). | 54 |
earnings.band3_up_to | 200000 (integer) | 0 to 2000000000 | Band 3 ends at this day total. | 54 |
earnings.band3_percent | 15 (double) | 0 to 100 | Tax in band 3 (percent). | 54 |
earnings.band4_up_to | 250000 (integer) | 0 to 2000000000 | Band 4 ends at this day total. | 54 |
earnings.band4_percent | 20 (double) | 0 to 100 | Tax in band 4 (percent). | 54 |
earnings.top_percent | 25 (double) | 0 to 100 | Tax above band 4 (percent). | 54 |
Trade
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
trade.enabled | true (boolean) | true / false | Players can trade items and money at Trade Posts. | 54 |
Jobs
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
jobs.enabled | true (boolean) | true / false | Players can post and take jobs at Job Boards. | 55 |
jobs.posting_fee | 1 (integer) | 0 to 1000000000 | Fee burned when a job is published. | 55 |
jobs.reward_min | 2 (integer) | 1 to 1000000000 | Smallest job reward. | 55 |
jobs.reward_max | 10000 (integer) | 1 to 1000000000 | Largest job reward. | 55 |
jobs.max_listings_per_player | 8 (integer) | 1 to 1000 | Unfinished jobs one player can have posted. | 55 |
jobs.max_listings_per_town | 64 (integer) | 1 to 100000 | Unfinished jobs listed in one town. | 55 |
jobs.max_places | 10 (integer) | 1 to 100 | Most workers one job can have at once. | 55 |
jobs.max_accepted_per_worker | 3 (integer) | 1 to 1000 | Most jobs one worker can ever hold at once. | 55 |
jobs.second_slot_after_jobs | 5 (integer) | 0 to 100000 | Paid jobs before a worker can hold 2 jobs at once. | 55 |
jobs.third_slot_after_jobs | 15 (integer) | 0 to 100000 | Paid jobs before a worker can hold 3 jobs at once. | 55 |
jobs.bounties_enabled | true (boolean) | true / false | Players can post bounties on other players. | 55 |
jobs.supply_max_count | 4096 (integer) | 1 to 100000 | Most items one supply job can ask for. | 55 |
jobs.courier_max_stacks | 27 (integer) | 1 to 54 | Most stacks of cargo one courier job carries. | 55 |
jobs.parcel_reissue_hours | 1 (integer) | 0 to 1000 | Hours before a lost parcel can be reissued. | 55 |
jobs.review_hours | 48 (integer) | 1 to 10000 | Hours a reviewer has to answer before the job is disputed. | 55 |
jobs.vault_slots | 54 (integer) | 1 to 1000 | Stacks a player’s delivery vault holds (refunds may go over). | 56 |
jobs.hunt_max_kills | 256 (integer) | 1 to 100000 | Most kills one hunt job can ask for. | 56 |
jobs.hunt_near_max_radius | 256 (integer) | 8 to 100000 | Largest ‘near a point’ radius of a hunt job. | 56 |
jobs.escort_arrive_radius | 8 (integer) | 1 to 128 | How close to the marked point an escort must arrive. | 56 |
jobs.escort_together_blocks | 16 (integer) | 2 to 256 | Worker within this many blocks of the escorted player: together. | 56 |
jobs.escort_apart_blocks | 32 (integer) | 4 to 1024 | Farther apart than this counts as separated. | 56 |
jobs.escort_apart_seconds | 30 (integer) | 1 to 3600 | Seconds separated before the escort fails. | 56 |
jobs.zone_max_blocks | 32768 (integer) | 1 to 1000000 | Most blocks in one construction or extraction zone. | 56 |
jobs.zone_max_span | 64 (integer) | 1 to 256 | Longest side of a construction or extraction zone. | 56 |
Starter
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
starter.enabled | true (boolean) | true / false | New players can do paid starter work. | 57 |
starter.pay_per_unit | 25 (integer) | 0 to 1000000000 | Pay for one unit of starter work. | 57 |
starter.units_per_task | 3 (integer) | 0 to 1000 | Units of each starter task one player can do. | 57 |
starter.lifetime_pay_cap | 300 (integer) | 0 to 1000000000 | Starter pay one player can earn in total. | 57 |
starter.unlock_play_minutes | 20 (integer) | 0 to 100000 | Play minutes before starter work opens. | 57 |
starter.window_play_hours | 24 (integer) | 1 to 100000 | Starter work closes after this many play hours. | 57 |
starter.window_days | 30 (integer) | 1 to 100000 | Starter work closes this many days after first join. | 57 |
starter.units_per_hour | 2 (integer) | 1 to 1000 | Starter units one player can do per hour. | 57 |
Land
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
land.founding_fee | 5000 (integer) | 0 to 1000000000 | Base cost to found a town (x price index). | 58 |
land.claim_base | 2000 (integer) | 0 to 1000000000 | Base price of a claim (x price index). | 58 |
land.claim_escalation | 1.06 (double) | 1.0 to 10.0 | Price multiplier per chunk above the allowance. | 58 |
land.allowance_base | 2 (integer) | 0 to 100000 | Chunks (home chunk included) every town holds at base price; each further chunk costs more. | 58 |
land.allowance_per_resident | 0 (integer) | 0 to 100000 | Extra base-price chunks per qualifying resident. | 58 |
land.max_claims_per_town | 256 (integer) | 1 to 100000 | Hard ceiling of claims per town. | 58 |
land.town_buffer_chunks | 4 (integer) | 0 to 64 | Minimum chunk distance between different towns. | 58 |
land.spawn_protection_blocks | 64 (integer) | 0 to 100000 | No claims this close to world spawn. | 58 |
land.claim_batch_max | 8 (integer) | 1 to 64 | Most chunks claimed in one action. | 58 |
land.room_max_side | 48 (integer) | 2 to 1024 | Longest side of a room (blocks). | 58 |
land.rooms_per_town | 256 (integer) | 0 to 100000 | Most rooms one town can have. | 58 |
land.lease_notice_hours | 24 (integer) | 0 to 10000 | Notice before a lease ends, when either side ends it. | 58 |
land.districts_per_town | 32 (integer) | 0 to 256 | Most districts one town can make. | 58 |
land.embassy_tax_max | 200 (integer) | 0 to 1000000000 | Highest embassy tax per embassy plot per day held by someone from outside the town (x price index). | 58 |
land.outposts_enabled | true (boolean) | true / false | Towns can claim outposts away from their land. | 58 |
land.outposts_per_town | 1 (integer) | 0 to 64 | Most outposts per town while development is off (with development on, development.outposts decides). | 59 |
land.outpost_min_distance_chunks | 16 (integer) | 1 to 10000 | An outpost’s first chunk is at least this many chunks from the town’s other land. | 59 |
land.outpost_fee | 500.0 (double) | 0.0 to 1000000000.0 | Fee to found an outpost, on top of the chunk price (x price index). | 59 |
land.outpost_upkeep | 5.0 (double) | 0.0 to 1000000.0 | Upkeep per outpost per day, on top of its chunks (x price index). | 59 |
land.arena_keep_inventory | true (boolean) | true / false | Players who die in an arena plot keep their items and experience. | 59 |
land.resident_qualify_play_hours | 2 (integer) | 0 to 1000 | Play hours before a resident adds to the allowance. | 59 |
Camp
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
camp.lifetime_hours | 48 (integer) | 1 to 100000 | Hours a camp protects its chunk. | 59 |
camp.cooldown_hours | 24 (integer) | 0 to 100000 | Hours before a player can make another camp. | 59 |
camp.max_trusted | 8 (integer) | 0 to 64 | Players a camp owner can trust. | 59 |
Tax
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
tax.upkeep_base | 2 (double) | 0 to 1000000 | Daily land upkeep base. | 60 |
tax.upkeep_per_chunk | 1 (double) | 0 to 1000000 | Daily land upkeep per chunk. | 60 |
tax.upkeep_over_allowance | 1 (double) | 0 to 1000000 | Extra daily upkeep per chunk above the allowance. | 60 |
tax.age_cap_per_resident | 2 (double) | 0 to 1000000 | Maturity supplement cap per resident per day. | 60 |
tax.age_ramp_days | 30 (integer) | 1 to 100000 | Civic days for the maturity supplement to reach its cap. | 60 |
tax.ordinary_cap_per_resident | 12 (double) | 0 to 1000000 | Assessment cap per resident (land floor always applies). | 60 |
tax.resident_tax_flat_max | 10000 (integer) | 0 to 1000000000 | Highest flat resident tax a mayor can set (x price index). | 60 |
tax.resident_tax_percent_max | 50 (double) | 0 to 100 | Highest income tax (percent of earnings) a town can set. | 60 |
tax.plot_tax_max | 5000 (integer) | 0 to 1000000000 | Highest plot tax per plot per day (x price index). | 60 |
tax.grace_hours | 72 (integer) | 0 to 100000 | Hours of unpaid town tax before a resident is delinquent. | 60 |
tax.plot_reversion_hours | 168 (integer) | 0 to 100000 | Further hours before a delinquent resident’s plots return to the town. | 60 |
tax.protection | newcomers (choice) | newcomers, off | newcomers = new members pay no town tax for 72 h and 8 play hours. | 60 |
tax.auto_evict | false (boolean) | true / false | Evict delinquent residents automatically. | 60 |
tax.arrears_grace_hours | 72 (integer) | 0 to 100000 | Hours a town can stay in arrears before recovery. | 60 |
tax.recovery_hours | 168 (integer) | 0 to 100000 | Hours of recovery before an unpaid town’s claims are released. | 60 |
tax.rate_notice_hours | 24 (integer) | 0 to 100000 | Notice before a tax increase applies. | 61 |
Ward
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
ward.enabled | true (boolean) | true / false | Town Wards can be switched on. | 61 |
ward.affects | monsters_and_infected (choice) | monsters, monsters_and_infected | What a Ward stops from spawning inside the town. | 61 |
ward.base | 5 (double) | 0 to 1000000 | Daily Ward fee base. | 61 |
ward.per_chunk | 0.5 (double) | 0 to 1000000 | Daily Ward fee per chunk. | 61 |
ward.turn_away_mobs | auto (choice) | auto, on, off | Hostile mobs walking into a town are turned away (despawned) for a fee each, until the money runs out. auto = on only when Afterfall is installed. | 61 |
ward.turn_away_paid | true (boolean) | true / false | Turning a mob away costs the town money (the fee below). Off = free. Mayors switch it on or off for their town, plot owners for their plot. | 61 |
ward.turn_away_paid_from | ward_fund (choice) | ward_fund, treasury | Where the fee is taken from: the town’s Ward fund (filled at the Town Ward) or the town treasury. | 61 |
ward.turn_away_cost | 50 (integer) | 0 to 1000000000 | Flat fee per hostile mob turned away (not scaled by the price index). | 61 |
Nations
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
nations.enabled | true (boolean) | true / false | Towns can found and join nations. | 62 |
nations.founding_fee | 250000 (integer) | 0 to 2000000000 | Cost to found a nation, paid from the founding town’s treasury and destroyed (x price index). | 62 |
nations.max_towns | 32 (integer) | 1 to 1000 | Most member towns in one nation. | 62 |
nations.upkeep_base | 10 (double) | 0 to 1000000 | Daily nation upkeep base (server tax, destroyed). | 62 |
nations.upkeep_per_town | 2 (double) | 0 to 1000000 | Daily nation upkeep per member town. | 62 |
nations.upkeep_grace_hours | 72 (integer) | 1 to 100000 | Hours a nation can leave its upkeep unpaid before it dissolves (towns are not affected). | 62 |
nations.levy_flat_max | 100000 (integer) | 0 to 1000000000 | Highest flat nation tax per town per day (x price index). | 62 |
nations.levy_plot_max | 5000 (integer) | 0 to 1000000000 | Highest nation tax per claimed chunk per day (x price index). | 62 |
nations.levy_percent_max | 50 (double) | 0 to 100 | Highest nation income tax (percent of what a town collects). | 62 |
nations.expel_mode | king (choice) | king, vote | king = the leader removes a member town at any time. vote = member towns vote; each town counts once, by the majority of its residents. | 62 |
nations.vote_max_hours | 168 (integer) | 24 to 10000 | Longest vote window the leader can set (the shortest is 24 hours). | 62 |
nations.leave_notice_hours | 24 (integer) | 0 to 10000 | Notice a town gives before it leaves its nation. | 62 |
nations.invite_hours | 24 (integer) | 1 to 10000 | How long an invitation to join a nation stays open. | 62 |
nations.alliance_notice_hours | 24 (integer) | 0 to 10000 | Notice before an ended alliance stops. | 62 |
Pigeons
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
pigeons.enabled | true (boolean) | true / false | Players can send letters by carrier pigeon. | 63 |
pigeons.seconds_per_chunk_wicker | 1.0 (double) | 0.0 to 600.0 | Flight time per chunk from a Wicker (tier 1) cage. | 63 |
pigeons.seconds_per_chunk_copper | 0.5 (double) | 0.0 to 600.0 | Flight time per chunk from a Copper (tier 2) cage. | 63 |
pigeons.seconds_per_chunk_gold | 0.2 (double) | 0.0 to 600.0 | Flight time per chunk from a Gold (tier 3) cage. Ender (tier 4) is instant. | 63 |
pigeons.pigeons_per_cage | 64 (integer) | 1 to 1000 | Most pigeons one cage holds (side-by-side cages add up). | 63 |
pigeons.letters_per_cage | 54 (integer) | 1 to 1000 | Most letters one cage’s mail holds (side-by-side cages add up). | 63 |
pigeons.letter_max_chars | 256 (integer) | 16 to 2000 | Longest letter. | 63 |
pigeons.breed_minutes | 20 (integer) | 1 to 100000 | Minutes for a fed pair to raise one chick. | 63 |
pigeons.seeds_per_chick | 8 (integer) | 0 to 64 | Seeds a cage is fed to raise one chick. | 63 |
pigeons.postage_wicker | 2.0 (double) | 0.0 to 1000000.0 | Postage per letter from a Wicker cage, in money (x price index). Paid by the sender and taken out of circulation. | 63 |
pigeons.postage_copper | 3.0 (double) | 0.0 to 1000000.0 | Postage per letter from a Copper cage. | 63 |
pigeons.postage_gold | 5.0 (double) | 0.0 to 1000000.0 | Postage per letter from a Gold cage. | 63 |
pigeons.postage_ender | 10.0 (double) | 0.0 to 1000000.0 | Postage per letter from an Ender cage. | 63 |
pigeons.postage_per_stack | 1.0 (double) | 0.0 to 1000000.0 | Extra postage for each stack of items sent with a letter. | 63 |
pigeons.parcel_stacks | 9 (integer) | 0 to 27 | Most stacks of items one letter carries (0 = letters only). | 63 |
Travel
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
travel.enabled | true (boolean) | true / false | Players can travel to town spawns with a Homing Charter or at a Waypost. | 64 |
travel.warmup_seconds | 10 (integer) | 0 to 600 | Seconds to stand still before travelling (moving more than a block or taking damage cancels). | 64 |
travel.cooldown_minutes | 5 (integer) | 0 to 10000 | Minutes between two trips. | 64 |
travel.combat_seconds | 30 (integer) | 0 to 3600 | No travel this many seconds after fighting. | 64 |
travel.base_fee | 10.0 (double) | 0.0 to 1000000.0 | Server travel fee per trip (x price index), taken out of circulation. | 64 |
travel.fee_per_100_blocks | 1.0 (double) | 0.0 to 1000000.0 | Extra server fee per 100 blocks travelled. | 64 |
travel.other_dimension_blocks | 2000 (integer) | 0 to 1000000 | A trip to another dimension costs as if it were this many blocks. | 64 |
travel.respawn_at_town_spawn | true (boolean) | true / false | Residents without a usable bed respawn at their town spawn. | 64 |
travel.town_travel_fee_max | 100 (integer) | 0 to 1000000000 | Highest travel fee a town can charge visitors per arrival (x price index). | 64 |
travel.inn_fee_max | 100 (integer) | 0 to 1000000000 | Highest inn fee per stay (x price index). | 64 |
travel.inn_stay_hours | 24 (integer) | 1 to 10000 | How long an inn stay keeps a visitor’s respawn in the town. | 64 |
Justice
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
justice.enabled | true (boolean) | true / false | Warrants, bounties, Shackles and the Penitentiary. | 65 |
justice.mayor_max_minutes | 60 (integer) | 1 to 100000 | Longest sentence a mayor (or the town’s Sheriff) can give, in minutes. | 65 |
justice.king_max_minutes | 240 (integer) | 1 to 100000 | Longest sentence a nation leader (or Marshal) can give, in minutes. | 65 |
justice.min_play_hours | 8 (integer) | 0 to 10000 | Players with fewer verified play hours can’t be jailed. | 65 |
justice.same_authority_hours | 24 (integer) | 0 to 10000 | The same town, nation or server jails the same player at most once in this many hours. | 65 |
justice.safety_cap_hours | 8 (integer) | 1 to 10000 | A prisoner is released after this many online hours in the Penitentiary, whatever is left. | 65 |
justice.offline_time_counts | false (boolean) | true / false | Time also counts down while the prisoner is offline. | 65 |
justice.buy_down_per_minute | 5.0 (double) | 0.0 to 1000000.0 | Price to buy down one minute of a sentence (x price index), paid to the authority that set it. | 65 |
justice.surrender_discount_percent | 25 (integer) | 0 to 100 | Sentence taken off for surrendering. | 65 |
justice.bounty_max | 100000 (integer) | 0 to 1000000000 | Largest bounty on one warrant (x price index). | 65 |
justice.rebuild_day | sunday (choice) | off, monday, tuesday, wednesday, thursday, friday, saturday, sunday | Day the Penitentiary is rebuilt with a new layout (server time), or off. | 65 |
justice.rebuild_hour | 0 (integer) | 0 to 23 | Hour of the weekly rebuild (server time). | 65 |
justice.rollcall_minutes | 2 (integer) | 1 to 120 | Penitentiary routine: roll call length (minutes). | 65 |
justice.work_minutes | 8 (integer) | 1 to 240 | Penitentiary routine: work period (minutes). | 65 |
justice.yard_minutes | 6 (integer) | 1 to 240 | Penitentiary routine: yard time (minutes). | 65 |
justice.lights_out_minutes | 4 (integer) | 1 to 240 | Penitentiary routine: lights-out (minutes). | 66 |
justice.solitary_minutes | 15 (integer) | 0 to 1000 | Solitary for being caught with contraband at a search (minutes). Never adds to the sentence. | 66 |
justice.lights_out_solitary_minutes | 5 (integer) | 0 to 1000 | Solitary for being out of your cell after lights-out (minutes). | 66 |
justice.prison_jobs | true (boolean) | true / false | Prison jobs take time off the sentence during the work period. | 66 |
justice.wardens | 6 (integer) | 0 to 6 | Penitentiary Wardens per complex. | 66 |
justice.security | 6 (integer) | 0 to 6 | Penitentiary Security guards per complex. | 66 |
justice.warden_respawn_minutes | 10 (integer) | 1 to 1440 | A killed Warden is back at its post after this many minutes. | 66 |
justice.security_respawn_minutes | 5 (integer) | 1 to 1440 | A killed Security guard is back at its post after this many minutes. | 66 |
justice.escapes | true (boolean) | true / false | Escape routes: the Tunnel, the Wall and the Riot (escaping releases the prisoner). | 66 |
justice.escape_caught_solitary_minutes | 15 (integer) | 0 to 1000 | Solitary for being caught escaping (minutes). Never adds to the sentence. | 66 |
justice.escape_cooldown_minutes | 10 (integer) | 0 to 1440 | After being caught, that escape route is closed to the prisoner for this many minutes. | 66 |
justice.panel_chips | 40 (integer) | 1 to 1000 | Bent Spoon chips needed to open a cell wall panel. | 66 |
justice.riot_window_seconds | 30 (integer) | 5 to 600 | Alarm levers must all be pulled within this many seconds. | 66 |
justice.riot_minutes | 2 (integer) | 1 to 60 | How long the gate stays open in a riot (minutes). | 66 |
justice.riot_cooldown_minutes | 60 (integer) | 0 to 10080 | Minutes after a riot before the alarm levers work again. | 66 |
justice.riot_solitary_minutes | 15 (integer) | 0 to 1000 | Solitary for lever pullers still inside when the gate closes (0 = none). | 66 |
justice.searchlight_turn_seconds | 40 (integer) | 5 to 600 | Seconds for one turn of a searchlight beam. | 67 |
justice.rope_minutes | 3 (integer) | 1 to 60 | A rope line over the wall falls away after this many minutes. | 67 |
justice.breakouts | true (boolean) | true / false | Break-outs: Skeleton Keys, Breach Charges and intruders. | 67 |
justice.breach_minutes | 5 (integer) | 1 to 60 | A Breach Charge’s rift stays open this many minutes. | 67 |
justice.gate_minutes | 3 (integer) | 1 to 60 | A Prison Gate powered with a gold block stays open this many minutes. | 67 |
justice.intruder_minutes | 30 (integer) | 1 to 100000 | Sentence for an intruder caught in the Penitentiary (minutes). | 67 |
justice.bribe_chance_percent | 33 (integer) | 0 to 100 | Chance the Shady Guard turns up in a yard period (percent). | 67 |
justice.bribe_success_percent | 75 (integer) | 0 to 100 | Chance the Shady Guard’s forged transfer works (percent); otherwise he reports you. | 67 |
justice.bribe_price_factor | 2.0 (double) | 0.0 to 100.0 | The bribe costs this many times the buy-down price of the time left. | 67 |
justice.visit_minutes | 10 (integer) | 1 to 120 | How long a visit with a Visitor Pass lasts (minutes). | 67 |
justice.laundry_find_one_in | 40 (integer) | 1 to 100000 | A washtub use finds a guard uniform piece 1 time in this many. | 67 |
justice.poster_price | 10.0 (double) | 0.0 to 1000000.0 | Price of a Poster at the Commissary (x price index). | 67 |
Chat
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
chat.channels_enabled | true (boolean) | true / false | Local chat channel (towns and nations use pigeon post). | 68 |
chat.local_range | 100 (integer) | 1 to 100000 | Local chat range in blocks. | 68 |
chat.titles_on_nameplate | true (boolean) | true / false | Show civic titles in player names. | 68 |
Maps
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
maps.enabled | true (boolean) | true / false | Show towns on map mods (BlueMap, squaremap, JourneyMap, Xaero’s maps) when they are installed. | 68 |
maps.web_maps | true (boolean) | true / false | Add town markers to BlueMap and squaremap web maps. | 68 |
maps.client_maps | true (boolean) | true / false | Send town land to players whose JourneyMap or Xaero’s maps can show it. | 68 |
maps.show_spawns | true (boolean) | true / false | Mark town spawns on web maps. | 68 |
maps.show_camps | false (boolean) | true / false | Show players’ camps on maps (off: camps stay private). | 68 |
maps.update_seconds | 5 (integer) | 1 to 300 | At most one map update this often after towns or land change (seconds). | 68 |
Culture
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
culture.enabled | true (boolean) | true / false | Mottos, Bandstands, anthems and festivals. | 69 |
culture.town_music | true (boolean) | true / false | Town and plot tracks set at Town Speakers play on their land (master C8.2). | 69 |
culture.anthem_cooldown_seconds | 30 (integer) | 0 to 3600 | Rest between two performances at one Bandstand (seconds). | 69 |
culture.festival_cost | 250.0 (double) | 0.0 to 1000000.0 | Cost of a festival from the town treasury (x price index; leaves circulation). | 69 |
culture.festival_minutes | 30 (integer) | 1 to 1440 | How long a festival lasts (minutes). | 69 |
culture.festival_cooldown_hours | 72 (integer) | 0 to 10000 | Hours from the start of one festival to the next in the same town. | 69 |
culture.festival_hero | false (boolean) | true / false | Everyone inside a festival town has Hero of the Village (off: the master plan rules out status bonuses). | 69 |
culture.festival_free_travel | true (boolean) | true / false | During a festival the town spawn is open to everyone and travel there is free. | 69 |
culture.max_cultures | 128 (integer) | 1 to 100000 | Most cultures a world can have (master C8.1). | 69 |
culture.change_cooldown_hours | 24 (integer) | 0 to 10000 | Civic hours before a town can change its culture again. | 69 |
culture.message_max | 256 (integer) | 1 to 256 | Longest Culture Channel message (characters). | 69 |
culture.message_cooldown_ticks | 40 (integer) | 0 to 72000 | Ticks between two messages from one player. | 69 |
culture.messages_kept | 100 (integer) | 1 to 10000 | Messages kept per culture. | 69 |
culture.message_days | 7 (integer) | 1 to 365 | Civic days a message is kept. | 69 |
Development
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
development.enabled | true (boolean) | true / false | Town and nation levels and their projects. Off: base caps everywhere; earned levels and receipts are kept. | 70 |
development.project_hours | 168 (integer) | 1 to 10000 | Civic hours an open project lasts before it expires and its supplies go back. | 70 |
development.public_job_min_reward | 20 (integer) | 0 to 1000000 | Smallest reward (x price index) of a town job that counts as public funded work. | 70 |
development.standing_grace_hours | 24 (integer) | 1 to 168 | Civic hours a nation keeps its level after it stops meeting it. | 70 |
development.city_needs_recurring_shift | true (boolean) | true / false | City and Metropolis projects need a funded recurring town job shift (master P5). Applies to projects opened after a change. | 70 |
development.member_hours | 12 (integer) | 0 to 168 | Civic hours a town must belong to a nation before it counts for the nation’s level. | 70 |
Afterfall
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
afterfall.power_billing | false (boolean) | true / false | With Afterfall 0.14.0 or newer: towns pay a daily fee for mains power on their land. A town that can’t pay is cut off from the regional grid until it pays; wired generators, solar and batteries keep working. Does nothing without Afterfall. | 70 |
afterfall.power_fee_per_chunk | 0.5 (double) | 0 to 100000 | Mains power fee per claimed chunk per day (today’s money, prorated like every bill). | 70 |
Admin
| Exact key | Default / type | Bounds / choices | Declared behavior and units | |
|---|---|---|---|---|
admin.op_level | 3 (integer) | 0 to 4 | Operator level needed for the Admin Book. | 70 |
File-only lists
| Key | Default | Validation and use |
|---|---|---|
development.claim_bonus | [0, 4, 8, 16, 24, 40] | Nonnegative integer elements up to 100,000; intended nondecreasing capacities; global caps still apply |
development.outposts | [0, 1, 2, 3, 4, 6] | Nonnegative integer elements up to 100,000; intended nondecreasing capacities; global caps still apply |
development.rooms | [4, 8, 16, 24, 40, 64] | Nonnegative integer elements up to 100,000; intended nondecreasing capacities; global caps still apply |
development.contracts | [8, 12, 20, 32, 48, 64] | Nonnegative integer elements up to 100,000; intended nondecreasing capacities; global caps still apply |
development.nation_towns | [2, 4, 8, 16, 32] | Nonnegative integer elements up to 100,000; intended nondecreasing capacities; global caps still apply |
culture.music_tracks | [“minecraft:music_disc.13”, “minecraft:music_disc.cat”, “minecraft:music_disc.blocks”, “minecraft:music_disc.chirp”, “minecraft:music_disc.far”, “minecraft:music_disc.mall”, “minecraft:music_disc.mellohi”, “minecraft:music_disc.stal”, “minecraft:music_disc.strad”, “minecraft:music_disc.ward”, “minecraft:music_disc.11”, “minecraft:music_disc.wait”, “minecraft:music_disc.otherside”] | Registered sound-event syntax; unknown IDs skipped by catalog logic |
List comments require nondecreasing capacities, but the reported direct element validator checks type/range only; no separate whole-list monotonicity check was established. Nation capacity is bounded in use by nations.max_towns; room/job capacity still uses global caps. Test changed ordering rather than assuming automatic rejection.
Client-local audio
| Key | Default | Scope |
|---|---|---|
audio.town_music | true | Client-local boolean |
audio.town_music_volume | 30 | Client-local integer 0–100; Minecraft Music slider also applies |
Sources: Appendix C pp. 51–71, Civic report E07/E89/E110/E13/E11. No world configuration was copied or modified.
Sources & verification
Evidence: pdf-derived. Feature status: mixed. Article coverage: ready.
PDF pages 51-71 · Appendix C Configuration · E07, E11, E13, E89, E110
Civic Frontier report, reviewed October 23, 2026. Implementation and historical tests are reported findings unless a direct catalog inspection is separately identified. Pack overrides unknown.
The wiki has not independently playtested report-derived instructions. Your server or modpack settings may change them.