WorldCannon Configuration
O WorldCannon usa um ficheiro de configuracao global mais um ficheiro de configuracao por cannon.
File Layout
- Configuracao global:
plugins/FunRTP/config.yml - Configuracoes por cannon:
plugins/FunRTP/custom/fun_rtps/<id>.yml
O plugin tambem inclui um pacote de exemplo chamado example_world_cannon. Ele vem desativado por omissao.
Global Config Structure
A configuracao principal esta organizada sob:
runtime.*landing.*messages.*protection.*
Runtime Settings
| Key | Default | Behavior |
|---|---|---|
runtime.scanIntervalTicks | 10 | Com que frequencia os cannons verificam jogadores proximos |
runtime.particleIntervalTicks | 15 | Com que frequencia as particulas idle do cannon sao renderizadas |
Landing Search Settings
| Key | Default | Behavior |
|---|---|---|
landing.searchAttemptsPerTick | 2 | Tentativas de pesquisa por cannon e por tick enquanto pre-carrega |
landing.preloadedLocationsPerCannon | 5 | Numero de destinos seguros que o plugin tenta manter em fila |
landing.searchTimeoutSeconds | 1000 | Tempo ate um cannon ainda em pesquisa ser marcado como exhausted |
landing.slowFallingSeconds | 60 | Duracao de Slow Falling apos a chegada (o efeito e removido antecipadamente quando o jogador aterra) |
landing.failOpenOnProtectionErrors | false | Se uma API de protecao falhar, a aterragem e bloqueada por omissao |
Landing Sounds
As seguintes sound keys sao configuraveis:
landing.sounds.levitationStart.soundlanding.sounds.levitationStart.volumelanding.sounds.levitationStart.pitchlanding.sounds.blastOff.soundlanding.sounds.blastOff.volumelanding.sounds.blastOff.pitch
Os sons por omissao sao BLOCK_BEACON_ACTIVATE para o warmup e ENTITY_GENERIC_EXPLODE para o blast-off.
Unsafe Material Lists
O WorldCannon rejeita locais candidatos de aterragem com base em duas listas de materiais:
landing.unsafeGroundMaterialslanding.unsafeBodyMaterials
Materiais inseguros por omissao para o solo:
LAVAMAGMA_BLOCKCAMPFIRESOUL_CAMPFIRECACTUSPOWDER_SNOW
Materiais inseguros por omissao para o espaco do corpo:
LAVAWATERFIRESOUL_FIRESWEET_BERRY_BUSHPOWDER_SNOWCOBWEB
Message Settings
O plugin expoe message keys e title keys sob:
messages.prefixmessages.helpHeadermessages.createdCannonmessages.deletedCannonmessages.movedCannonmessages.targetWorldUpdatedmessages.searchCenterUpdatedmessages.reloadmessages.noPermissionmessages.cannonDisabledmessages.queueCalibrationmessages.noValidLocationYetmessages.noValidLocationFoundmessages.invalidConfigurationmessages.statusLinemessages.probeAllowedmessages.probeBlockedmessages.unknownCommandmessages.titles.launchQueuedTitlemessages.titles.launchQueuedSubtitlemessages.titles.destinationPreviewTitlemessages.titles.destinationPreviewSubtitlemessages.titles.destinationConfirmedTitlemessages.titles.destinationConfirmedSubtitlemessages.titles.arrivalSubtitles
As title keys controlam as mensagens automaticas de launch e chegada. arrivalSubtitles e uma lista; o plugin escolhe uma linha aleatoriamente em cada lancamento. Nao existe prompt manual de confirmacao na implementacao atual.
Per-Cannon Config Fields
Cada ficheiro de cannon guarda estes campos:
| Field | Default | Notes |
|---|---|---|
isEnabled | true para cannons recem-criados | Cannons desativados nao disparam |
displayName | Id saneado com underscores convertidos em espacos | Usado em mensagens e no output de estado |
cannonLocation | Obrigatorio | Onde existe o trigger do cannon |
targetWorld | Mundo atual no momento da criacao | Tem de estar carregado em runtime |
searchCenter | Spawn do mundo atual no momento da criacao | Se ficar vazio depois, o plugin usa o spawn do mundo-alvo |
triggerRadius | 1.75 | Raio usado para detetar jogadores proximos |
minSearchRadius | 500 | Distancia minima de pesquisa a partir do search center |
maxSearchRadius | 5000 | Distancia maxima de pesquisa a partir do search center |
launchWarmupSeconds | 6 | Tempo de levitation/countdown antes do launch |
verticalBoostTicks | 45 | Ticks de velocidade vertical antes do teleporte |
verticalBoostVelocity | 1.35 | Velocidade ascendente aplicada durante o launch |
enableParticles | true | Controla as particulas idle do cannon |
requiredPermission | vazio | Gate adicional opcional de permissao para esse cannon |
Cannon Creation Defaults
Quando executas /wc create:
- o id do cannon e convertido para lowercase e os caracteres que nao sejam
a-z,0-9,_ou-sao substituidos por_ - o display name fica por omissao igual ao id saneado com underscores convertidos em espacos
cannonLocatione definido para a tua localizacao atualtargetWorlde definido para o teu mundo atualsearchCentere definido para o spawn desse mundo
Runtime Validation Behavior
O WorldCannon rejeita locais candidatos de aterragem quando qualquer uma destas verificacoes falha:
- o mundo-alvo nao esta carregado
- o search center e invalido
- a amostra aleatoria cai fora da world border
- nao e encontrada uma superficie solida segura
- o espaco dos pes ou da cabeca esta bloqueado
- os blocos do terreno ou do corpo correspondem as listas configuradas de materiais inseguros
- uma integracao de protecao bloqueia a aterragem
Se um cannon nao conseguir encontrar locais validos antes de landing.searchTimeoutSeconds, ele entra em estado exhausted e passa a devolver a mensagem de falha configurada em vez de lancar jogadores.