-
Notifications
You must be signed in to change notification settings - Fork 1
Data Pack Reference
Siegeworks loads engine and projectile profiles from server data packs. A higher-priority file with the same namespace and path replaces the built-in profile after /reload.
Path:
data/<namespace>/definitions/siege_engines/<engine_id>.json
The file name must match the entity path, such as culverin.json or trebuchet.json.
{
"baseDamage": 78.0,
"projectileSpeed": 145.0,
"accuracyMultiplier": 0.07,
"scattershot": {
"capacity": 12,
"minPellets": 1,
"maxPellets": 12,
"pelletsPerLoadedItemMin": 2,
"pelletsPerLoadedItemMax": 3,
"spreadDegrees": 5.5,
"baseDamagePerPellet": 47.3
}
}baseDamage, projectileSpeed and accuracyMultiplier control the machine's attack. The optional scattershot object controls capacity, pellet count, spread and pellet damage for machines that support it.
An optional damageConfig object determines what can damage the machine. Its entityDamageSources, itemDamageSources and damageTypeSources maps check an exact registry ID before *. entityDamageMultipliers scales direct damage from accepted entity types.
Movement and loading timings are configured in siegeworks-server.toml.
Path:
data/<namespace>/definitions/projectile_physics/<projectile_entity_id>.json
| Field | Meaning |
|---|---|
mass |
Kinetic-energy mass term. |
penetration |
Converts energy into penetration budget. |
drag |
Fraction of velocity removed each tick. |
impactFuse |
Detonate on impact and stop kinetic continuation. |
blockCostMultiplier |
Multiplier on penetration cost. |
blockDamageMultiplier |
Structural impact multiplier. |
energyLossMultiplier |
Energy removed while penetrating material. |
armorPiercing |
Compensation for living-entity armour. |
entityDamageMultiplier |
Direct entity-damage multiplier. |
shockRadius / shockDamageMultiplier
|
Radial impact damage. |
baseExplosionPower / speedExplosionScale
|
Impact explosion strength. |
shrapnelFragments, shrapnelRadius, shrapnelDamage
|
Secondary fragment burst. |
See Ballistics for how these values interact.
Siegeworks blueprints are stored under:
data/<namespace>/blueprints/*.json
They use Axiomata's blueprint and staged-construction format. See the Axiomata Blueprint Data reference.
Siegeworks
- Home
- Getting Started
- Operating Siege Engines
- Ammunition Guide
- Construction and Maintenance
- Items and Recipes
Siege Engines
- Overview
- Tower Crossbow
- Arcballista
- Culverin
- Serpentine
- Mons Meg
- Mangonel
- Trebuchet
- Hwacha
- Battering Ram
- Mantlet
- Siege Ladder
- Siege Tower
Compatibility
Reference