Settings reference
Every setting TTSCore has, read from the server's own source: the default, the range and the description are the ones it writes into ttscore.yml. All of them are per world, live under world-settings.<world> and apply on /ttscore reload.
Every default below is the vanilla value: a setting changes the game only after you change it.
General and performance
| Setting | Default | Range | What it does |
|---|---|---|---|
mechanics | "custom" | legacy / modern / custom | Preset for this world: 'legacy' sets every raid.* setting to a 1.8 factions server's values, 'modern' leaves them all vanilla, 'custom' uses what is written below. |
raid.enabled | true | true / false | Master switch for this world's raid engine. With it off, every raid.* setting below behaves as vanilla, whatever it is set to. |
raid.legacy-precision | false | true / false | Apply TNT gravity and drag at 1.8's short precision (0.04f rather than 0.04). Only for chasing exact parity. |
raid.legacy-collision-order | false | true / false | Resolve the smaller horizontal axis before the larger one when an entity collides, as TacoSpigot's fix-east-west-cannoning does. Vanilla 1.21 does the opposite; the two differ when something grazes a corner. |
performance.activation-single-pass | true | true / false | Mark entities active in one pass per tick instead of one world query per player. Same entities end up active; with many players on one spot it is several times cheaper. |
TNT
| Setting | Default | Range | What it does |
|---|---|---|---|
raid.tnt.fuse-ticks | 80 | 1 to 72000 | TNT fuse, in ticks. 80 = vanilla. |
raid.tnt.merge | false | true / false | Merge TNT that shares position, velocity and fuse into one entity. Cannon performance; the outcome is unchanged. |
raid.tnt.merge-radius-y | 1.05 | 0 to 4 | Vertical tolerance for merging, in blocks. 1.05 merges a freshly dispensed column, which is the cannon case. |
raid.tnt.column-dispensing | false | true / false | TNT dropped by several dispensers on the same tick and column is born already merged. This is what loads a cannon. |
raid.tnt.dispense-straight | false | true / false | Dispensed TNT comes out straight, without vanilla's random sideways nudge. Required for a cannon to be repeatable. |
raid.tnt.stacked-explosion-cache | true | true / false | The N explosions of a merged TNT share one block cache, told what each explosion changed. Same crater, a fraction of the cost. |
raid.tnt.stacked-explosion-verify | false | true / false | Check that shared cache against the world after every explosion and log stale entries. For proving the cache, not for production. |
raid.tnt.disable-chain-explosions | false | true / false | A TNT block caught in an explosion is not primed by it. Stops a cannon from detonating its own ammunition. |
raid.tnt.load-chunks | false | true / false | Primed TNT keeps the chunks it flies through loaded and ticking (2-chunk radius, as ender pearls do). Without it a charge freezes mid-air in any chunk nobody is watching. |
Falling blocks
| Setting | Default | Range | What it does |
|---|---|---|---|
raid.falling-block.merge | false | true / false | Merge falling blocks (a cannon's sand) the same way as TNT. Mind merge-places-all. |
raid.falling-block.merge-places-all | false | true / false | When a merged stack lands, place a single block as vanilla does (false) or all N of them (true). |
raid.falling-block.tick-lifespan | 600 | 1 to 72000 | How many ticks a falling block survives. 600 = vanilla. Lowering it stops lag machines. |
raid.falling-block.anti-lag-machine-threshold | -1 | -1 to 100000 | How many falling blocks a chunk tolerates before they are all removed. -1 disables the limit. 2000 is a sane cap for a cannon server. |
raid.falling-block.disable-item-spawning | false | true / false | Falling blocks with nowhere to land drop no item. During a cannon shot those items cost more than the sand itself. |
raid.falling-block.load-chunks | false | true / false | Same as raid.tnt.load-chunks, for falling blocks (a cannon's sand). |
Anvils
| Setting | Default | Range | What it does |
|---|---|---|---|
raid.anvil.explosion-resistance | -1 | -1 to 3600000 | Anvil blast resistance. -1 = Minecraft's own (1200, which no cannon will break). Around 1.0 makes anvils breakable. |
raid.anvil.pushed-by-piston | false | true / false | Let a piston push an anvil. Vanilla allows this in no version; a 1.8 factions server did. |
Hit registration
| Setting | Default | Range | What it does |
|---|---|---|---|
raid.rogue-hit.enabled | false | true / false | The server rescues a swing the client did not register, by tracing the blow itself. This changes how PvP feels. |
raid.rogue-hit.max-distance | 2.6 | 0 to 6 | Reach of that rescue in blocks, measured FROM THE EYES to the hit. 2.6 matches 1.8 reach (2.90 between player centres). |
raid.rogue-hit.hitbox-leeway | 0.01 | 0 to 1 | How much the target's hitbox is grown when checking that hit. 0.01 matches 1.8. |
PvP timing
| Setting | Default | Range | What it does |
|---|---|---|---|
raid.pvp.time-based-hit-cooldown | false | true / false | Count the invulnerability between player hits in real time rather than ticks, so combat does not turn sluggish when TPS drops. |
1.8 combat
| Setting | Default | Range | What it does |
|---|---|---|---|
raid.combat.no-attack-cooldown | false | true / false | 1.8 combat: every click hits for full damage, with no weapon recharge scaling damage, knockback or crits. The client stops drawing the attack indicator. |
raid.combat.no-sweep-attack | false | true / false | 1.8 combat: swords do not sweep. Only the entity you hit takes damage. |
raid.combat.no-shield-blocking | false | true / false | 1.8 combat: nothing blocks. Shields (and any item with blocks_attacks) stop reducing damage. |
raid.combat.legacy-weapon-damage | false | true / false | 1.8 combat: weapon damage table of 1.8 (sword +1, axe -2, pickaxe +1, shovel -0.5 against today's values; a diamond sword hits 8) and Sharpness at +1.25 per level. |
raid.combat.legacy-potion-damage | false | true / false | 1.8 combat: Strength multiplies damage by 1 + 1.3 per level (x2.3 with Strength I) instead of adding 3, and Weakness takes 0.5 per level instead of 4. |
raid.combat.legacy-armor | false | true / false | 1.8 combat: armor reduces damage by 4% per point with no toughness and no damage-size scaling. Full diamond stops 80% of any hit. |
raid.combat.legacy-golden-apple | false | true / false | 1.8 combat: the enchanted golden apple gives Regeneration V for 30 s instead of Regeneration II for 20 s. |
raid.combat.legacy-regeneration | false | true / false | 1.8 combat: natural regeneration heals one point every 80 ticks at 18+ food (3 exhaustion per point), without the fast saturation regen added in 1.11. |
Anti-freecam
| Setting | Default | Range | What it does |
|---|---|---|---|
raid.anti-freecam.chests | false | true / false | Refuse to open a chest when a block sits between the player's eyes and the face they clicked. Stops freecam looting. |
raid.anti-freecam.dispensers | false | true / false | The same for dispensers. |
raid.anti-freecam.signs | false | true / false | The same for signs. |
raid.anti-freecam.spawn-eggs | false | true / false | The same for placing a spawn egg. |
Spawners
| Setting | Default | Range | What it does |
|---|---|---|---|
raid.spawner.ignore-light-checks | false | true / false | Spawners ignore light level, so a lit spawner room keeps producing. |
raid.spawner.ignore-spawn-rules | false | true / false | Spawners ignore the mob's own spawn rules (grass underneath, water, biome). Includes the light check. |
raid.spawner.ignore-entity-obstruction | false | true / false | Spawners do not check whether another entity already occupies the spot, which is what lets a farm stack. |
raid.spawner.fixed-spawn-locations | false | true / false | Mobs are born at fixed positions within the radius (two per axis) facing north, instead of at random. |
raid.spawner.spawn-y-velocity | 0 | -10 to 10 | Vertical velocity at birth, in blocks per tick. 0 = vanilla (born still). A negative value drops them into a grinder. |
raid.spawner.retry-one-block-up | false | true / false | When the spot is blocked, the spawner tries one block higher before giving up. |
Server-wide
| Setting | Default | Range | What it does |
|---|---|---|---|
settings.verbose | false | true / false | Print each world's resolved configuration to the console when it loads and on every reload. |
settings.license-key | empty | your key | Your licence key from the store. Without a valid one the server runs as plain Paper and the settings above stay locked. If the store cannot be reached, the server runs anyway. |