
Wiki
Airdrops Wiki
Scheduled drops, flare call-ins, loot crates, admin tooling, and crash-safe cleanup for MCWAR Airdrops.
Getting Started
Start here for the current Paper build, first boot checks, and the runtime settings that affect every drop.
Crate Authoring
Learn how crate families are structured, where the loot really lives, and how zones and models fit into one crate definition.
Drop Pipeline and Effects
Run the scheduled event lane, manual call-ins, and the staged smoke signaling that tells players where to look.
Admin and Operations
Use the in-game tools, command surface, migration support, and cleanup systems that make the plugin maintainable on live servers.
This is the page to keep nearby on a live server.
Why cleanup exists at all
Airdrops uses long-travel display logic for planes, parachutes, and crates. If the server is hard-killed while a plane is active, you can end up with leftover entities saved to disk.
The current plugin has explicit cleanup logic to deal with that.
The cleanup system
The main cleanup controls live under cleanup in config.yml.
Important keys:
enabledcleanOnChunkLoadrecordFlightPathstartupSweep.enabledstartupSweep.chunksPerTicktargets
The current default target list is plane-focused:
targets: ["plane"]That is deliberate. The most common orphaned entity problem in this plugin is the plane lane.
pending-cleanup.yml
When recordFlightPath is enabled, the plugin writes the plane's chunk path so it can clean the leftover entity later even if the server did not shut down cleanly.
If you see that file after a forced restart, that is usually normal.
Common real-world problems
"The crate is there, but players cannot open it"
Check:
interactions.crate.blockClickRadiusinteractions.crate.ignoreInteractableBlocks- whether foliage or a nearby interactable block is stealing the click
- whether the crate has an
open.permissionoropen.requiredItemrestriction
"The drop is happening, but nobody can see it from far enough away"
Check:
effects.viewRange.defaulteffects.plane.viewRangeeffects.parachute.viewRangeeffects.crate.viewRange- player render distance and server tracking expectations
"The model looks buried or sideways"
Check:
effects.crate.baseYOffseteffects.crate.displayScaleeffects.crate.displayTransformeffects.parachute.basePitchDegreeseffects.parachute.baseRollDegreeseffects.parachute.xOffseteffects.parachute.zOffset
This is especially common when the content came from an older 1.15.2 resource-pack workflow.
"The scheduler feels wrong"
Check:
scheduler.enabledscheduler.baseIntervalMinutesscheduler.randomJitterMinutesscheduler.announceOffsetsSecondsgeneral.onlyOneActiveDrop
"Manual call-ins do nothing"
Check:
callins.enabledcallins.torch.enabled- whether the call-in service actually initialized
- whether the target crate ID exists
"Planes are lingering after restart"
Check:
cleanup.enabledcleanup.cleanOnChunkLoadcleanup.recordFlightPathcleanup.startupSweep.enabled
Then make sure the server actually loaded the relevant chunks after restart.
Debug steps
The safest quick diagnostic loop is:
/airdrop debug on- reproduce one exact case
- inspect the result and config
/airdrop debug off
Use /airdrop status before and after the test so you know whether the problem is scheduler state, active-drop state, or crate content.
Good ops habits
- keep backups before large crate-table edits
- run migration after major legacy merges
- test one call-in and one scheduled drop after config changes
- keep cleanup enabled on servers where forced restarts can happen

