Btcsky Island Event
Island Event
Composable island event definition. Event behavior is intentionally kept out of this entry. The event only describes when it may run and references the mechanics that compose it.
Champs
| Champ | Type | Par défaut | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
description | List<String> | empty | Description shown in event menusCouleursMultiligne | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
chancePerCheck | Double | 0.1 | Chance applied on each selection pass, from 0 to 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
weight | Int | 10 | Relative weight used after the event passes its chance check | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cooldownMinutes | Int | 0 | Cooldown between starts of this event on the same island and dimension | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
durationMinutes | Int | 10 | Duration of the event in minutes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
minimumPlayers | Int | 1 | Minimum number of players present in the dimension | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
conditions | List<Criteria> | empty | Facts that must all match before this event can be selected | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
requiredUpgradeId | String | — | Upgrade id required to unlock this event; empty means no upgrade required | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
requiredUpgradeLevel | Int | 1 | Minimum level of the required upgrade | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
allowedDimensions | List<String> | empty | Dimension identifiers where this event is allowed; empty means every dimension | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
blockedDimensions | List<String> | empty | Dimension identifiers where this event is blocked | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
rewards | List<IslandEventRewardConfig> | empty | Rewards granted when the event completes
|
| Champ | Type | Par défaut | Description |
|---|---|---|---|
currencyId | String | — | Currency identifier; empty means no currency reward |
currencyAmount | Double | 0.0 | Currency amount |
itemMaterial | Material | AIR | Vanilla material reward; AIR means no item reward |
itemAmount | Int | 0 | Number of items to grant |
onStartList<Ref<TriggerableEntry>>emptyonEndList<Ref<TriggerableEntry>>emptymechanicsList<Ref<IslandEventMechanicEntry>>emptyBetterModelImpactMechanicEntryBossMechanicEntryCoopBuffMechanicEntryEclipseMechanicEntryEventAmbienceMechanicEntryEventTriggerMechanicEntryIslandEventFlagMechanicEntryMeteorShowerMechanicEntryMobWaveMechanicEntryStormMechanicEntryTemporaryClientBlockMechanicEntryTemporaryMultiplierMechanicEntryTreasureRainMechanicEntryBetterModelImpactMechanicEntry (6)
| Champ | Type | Par défaut | Description |
|---|---|---|---|
requiredUpgradeId | String | — | — |
requiredUpgradeLevel | Int | 1 | — |
definition | Ref<BetterModelDefinition> | — | BetterModel definition to display |
verticalOffset | Double | 0.0 | Vertical offset from the event anchor |
animation | String | — | Optional animation started when the model appears |
animationSpeed | Double | 1.0 | Animation speed |
BossMechanicEntry (5)
| Champ | Type | Par défaut | Description |
|---|---|---|---|
requiredUpgradeId | String | — | — |
requiredUpgradeLevel | Int | 1 | — |
entityType | String | WITHER | Entity type name for the boss |
maxHealth | Double | 200.0 | Maximum health, when the entity exposes that attribute |
displayName | String | <red><bold>Island Event Boss</bold></red> | MiniMessage name shown above the boss |
CoopBuffMechanicEntry (4)
| Champ | Type | Par défaut | Description |
|---|---|---|---|
requiredUpgradeId | String | — | — |
requiredUpgradeLevel | Int | 1 | — |
minimumPlayers | Int | 2 | Minimum online players required |
multiplierPerAdditionalPlayer | Double | 0.25 | Reward multiplier added for each player after the first |
EclipseMechanicEntry (3)
| Champ | Type | Par défaut | Description |
|---|---|---|---|
requiredUpgradeId | String | — | — |
requiredUpgradeLevel | Int | 1 | — |
darknessAmplifier | Int | 0 | Potion effect amplifier for darkness |
EventAmbienceMechanicEntry (9)
| Champ | Type | Par défaut | Description |
|---|---|---|---|
requiredUpgradeId | String | — | — |
requiredUpgradeLevel | Int | 1 | — |
particles | List<String> | — | Particle names emitted at each pulse |
sound | String | — | Sound name played to viewers; empty disables sound |
intervalTicks | Long | 40 | Ticks between ambience pulses |
radius | Double | 8.0 | Horizontal radius around the event anchor |
particleCount | Int | 8 | Number of particles per configured particle type |
soundVolume | Float | 1.0 | Sound volume |
soundPitch | Float | 1.0 | Sound pitch |
EventTriggerMechanicEntry (4)
| Champ | Type | Par défaut | Description |
|---|---|---|---|
requiredUpgradeId | String | — | — |
requiredUpgradeLevel | Int | 1 | — |
onStart | List<Ref<TriggerableEntry>> | empty | Triggers fired when the mechanic starts |
onStop | List<Ref<TriggerableEntry>> | empty | Triggers fired when the mechanic stops |
IslandEventFlagMechanicEntry (3)
| Champ | Type | Par défaut | Description |
|---|---|---|---|
requiredUpgradeId | String | — | — |
requiredUpgradeLevel | Int | 1 | — |
effectId | String | — | Persisted event effect identifier, for example event:blood_moon |
MeteorShowerMechanicEntry (9)
| Champ | Type | Par défaut | Description |
|---|---|---|---|
requiredUpgradeId | String | — | — |
requiredUpgradeLevel | Int | 1 | — |
fallingBlock | Material | GOLD_ORE | Falling block material |
particles | List<String> | — | Particles displayed at each impact |
intervalTicks | Long | 40 | Ticks between impacts |
radius | Double | 20.0 | Horizontal radius around the event anchor |
height | Double | 50.0 | Height above the anchor where the falling block starts |
fallingBlockChance | Double | 0.2 | Chance of spawning a falling block on an impact |
particleCount | Int | 10 | Particle count |
MobWaveMechanicEntry (7)
| Champ | Type | Par défaut | Description |
|---|---|---|---|
requiredUpgradeId | String | — | — |
requiredUpgradeLevel | Int | 1 | — |
mobs | List<String> | — | Mob entity types |
countPerWave | Int | 5 | Mobs spawned per wave |
intervalTicks | Long | 100 | Ticks between waves |
maxActiveMobs | Int | 32 | Maximum live mobs owned by this mechanic |
radius | Double | 12.0 | Horizontal radius around the event anchor |
StormMechanicEntry (5)
| Champ | Type | Par défaut | Description |
|---|---|---|---|
requiredUpgradeId | String | — | — |
requiredUpgradeLevel | Int | 1 | — |
intervalTicks | Long | 100 | Ticks between lightning strikes |
radius | Double | 15.0 | Horizontal radius around the event anchor |
chargedCreeperChance | Double | 0.15 | Chance of a charged creeper per strike |
TemporaryClientBlockMechanicEntry (6)
| Champ | Type | Par défaut | Description | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
requiredUpgradeId | String | — | — | ||||||||||||||||
requiredUpgradeLevel | Int | 1 | — | ||||||||||||||||
material | Material | GLOWSTONE | Material shown to viewers | ||||||||||||||||
positions | List<IslandEventBlockOffset> | — | Relative positions from the event anchor
|
| Champ | Type | Par défaut | Description |
|---|---|---|---|
x | Int | 0 | Relative X coordinate |
y | Int | 0 | Relative Y coordinate |
z | Int | 0 | Relative Z coordinate |
breakableBooleanfalsedropLootBooleanfalseTemporaryMultiplierMechanicEntry (4)
| Champ | Type | Par défaut | Description |
|---|---|---|---|
requiredUpgradeId | String | — | — |
requiredUpgradeLevel | Int | 1 | — |
multiplierType | String | XP | Multiplier domain: XP or DROP |
multiplier | Double | 1.5 | Direct multiplier; 1.5 means +50 percent |
TreasureRainMechanicEntry (7)
| Champ | Type | Par défaut | Description | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
requiredUpgradeId | String | — | — | ||||||||||||||||
requiredUpgradeLevel | Int | 1 | — | ||||||||||||||||
drops | List<EventTreasureDrop> | — | Weighted items dropped per rain tick
|
| Champ | Type | Par défaut | Description |
|---|---|---|---|
material | Material | GOLD_NUGGET | Material to drop |
amount | Int | 1 | Amount before event loot upgrades |
weight | Int | 1 | Selection weight |
intervalTicksLong60dropsPerWaveInt3radiusDouble15.0heightDouble20.0Champs TypeWriter communs (displayName)
| Champ | Type | Par défaut | Description |
|---|---|---|---|
displayName | String | — | Display name shown to playersCouleurs |
How to use it
The event shell only decides when it can run. Build the behaviour with mechanic entries (Meteor Shower, Storm, Mob Wave…) and list them in mechanics, in order. Then add the event to events.events of a dimension template. chancePerCheck is the chance applied at each selection pass and weight picks one event among those that passed. requiredUpgradeId ties the event to an upgrade of the dimension. You can start one by hand with /typewriter island admin event <eventId>.