Skip to main content

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.

Fields

FieldTypeDefaultDescription
descriptionList<String>emptyDescription shown in event menusColorsMulti-line
chancePerCheckDouble0.1Chance applied on each selection pass, from 0 to 1
weightInt10Relative weight used after the event passes its chance check
cooldownMinutesInt0Cooldown between starts of this event on the same island and dimension
durationMinutesInt10Duration of the event in minutes
minimumPlayersInt1Minimum number of players present in the dimension
conditionsList<Criteria>emptyFacts that must all match before this event can be selected
requiredUpgradeIdString—Upgrade id required to unlock this event; empty means no upgrade required
requiredUpgradeLevelInt1Minimum level of the required upgrade
allowedDimensionsList<String>emptyDimension identifiers where this event is allowed; empty means every dimension
blockedDimensionsList<String>emptyDimension identifiers where this event is blocked
rewardsList<IslandEventRewardConfig>emptyRewards granted when the event completes
IslandEventRewardConfig (4)
FieldTypeDefaultDescription
currencyIdString—Currency identifier; empty means no currency reward
currencyAmountDouble0.0Currency amount
itemMaterialMaterialAIRVanilla material reward; AIR means no item reward
itemAmountInt0Number of items to grant
onStartList<Ref<TriggerableEntry>>emptyTypeWriter triggers fired when the event starts
onEndList<Ref<TriggerableEntry>>emptyTypeWriter triggers fired when the event ends
mechanicsList<Ref<IslandEventMechanicEntry>>emptyOrdered list of composable mechanics executed by this eventVariants:BetterModelImpactMechanicEntryBossMechanicEntryCoopBuffMechanicEntryEclipseMechanicEntryEventAmbienceMechanicEntryEventTriggerMechanicEntryIslandEventFlagMechanicEntryMeteorShowerMechanicEntryMobWaveMechanicEntryStormMechanicEntryTemporaryClientBlockMechanicEntryTemporaryMultiplierMechanicEntryTreasureRainMechanicEntry
BetterModelImpactMechanicEntry (6)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
definitionRef<BetterModelDefinition>—BetterModel definition to display
verticalOffsetDouble0.0Vertical offset from the event anchor
animationString—Optional animation started when the model appears
animationSpeedDouble1.0Animation speed
BossMechanicEntry (5)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
entityTypeStringWITHEREntity type name for the boss
maxHealthDouble200.0Maximum health, when the entity exposes that attribute
displayNameString<red><bold>Island Event Boss</bold></red>MiniMessage name shown above the boss
CoopBuffMechanicEntry (4)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
minimumPlayersInt2Minimum online players required
multiplierPerAdditionalPlayerDouble0.25Reward multiplier added for each player after the first
EclipseMechanicEntry (3)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
darknessAmplifierInt0Potion effect amplifier for darkness
EventAmbienceMechanicEntry (9)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
particlesList<String>—Particle names emitted at each pulse
soundString—Sound name played to viewers; empty disables sound
intervalTicksLong40Ticks between ambience pulses
radiusDouble8.0Horizontal radius around the event anchor
particleCountInt8Number of particles per configured particle type
soundVolumeFloat1.0Sound volume
soundPitchFloat1.0Sound pitch
EventTriggerMechanicEntry (4)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
onStartList<Ref<TriggerableEntry>>emptyTriggers fired when the mechanic starts
onStopList<Ref<TriggerableEntry>>emptyTriggers fired when the mechanic stops
IslandEventFlagMechanicEntry (3)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
effectIdString—Persisted event effect identifier, for example event:blood_moon
MeteorShowerMechanicEntry (9)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
fallingBlockMaterialGOLD_OREFalling block material
particlesList<String>—Particles displayed at each impact
intervalTicksLong40Ticks between impacts
radiusDouble20.0Horizontal radius around the event anchor
heightDouble50.0Height above the anchor where the falling block starts
fallingBlockChanceDouble0.2Chance of spawning a falling block on an impact
particleCountInt10Particle count
MobWaveMechanicEntry (7)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
mobsList<String>—Mob entity types
countPerWaveInt5Mobs spawned per wave
intervalTicksLong100Ticks between waves
maxActiveMobsInt32Maximum live mobs owned by this mechanic
radiusDouble12.0Horizontal radius around the event anchor
StormMechanicEntry (5)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
intervalTicksLong100Ticks between lightning strikes
radiusDouble15.0Horizontal radius around the event anchor
chargedCreeperChanceDouble0.15Chance of a charged creeper per strike
TemporaryClientBlockMechanicEntry (6)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
materialMaterialGLOWSTONEMaterial shown to viewers
positionsList<IslandEventBlockOffset>—Relative positions from the event anchor
IslandEventBlockOffset (3)
FieldTypeDefaultDescription
xInt0Relative X coordinate
yInt0Relative Y coordinate
zInt0Relative Z coordinate
breakableBooleanfalseWhether viewers can break the client-side blocks
dropLootBooleanfalseWhether breaking a client-side block can drop loot
TemporaryMultiplierMechanicEntry (4)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
multiplierTypeStringXPMultiplier domain: XP or DROP
multiplierDouble1.5Direct multiplier; 1.5 means +50 percent
TreasureRainMechanicEntry (7)
FieldTypeDefaultDescription
requiredUpgradeIdString——
requiredUpgradeLevelInt1—
dropsList<EventTreasureDrop>—Weighted items dropped per rain tick
EventTreasureDrop (3)
FieldTypeDefaultDescription
materialMaterialGOLD_NUGGETMaterial to drop
amountInt1Amount before event loot upgrades
weightInt1Selection weight
intervalTicksLong60Ticks between rain waves
dropsPerWaveInt3Items dropped per wave
radiusDouble15.0Horizontal radius around the event anchor
heightDouble20.0Height above the anchor for dropped items
Common TypeWriter fields (displayName)
FieldTypeDefaultDescription
displayNameString—Display name shown to playersColors

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>.