BTC Sky
Visão geral
O BTC Sky é o motor de skyblock da build BTC do TypeWriter. Cada perfil de jogador possui uma ilha. A ilha é composta por uma ou mais dimensões (Overworld, Nether, End ou qualquer mundo personalizado que você criar), cada uma clonada de um mundo modelo e configurada por um Dimension Template. Cada dimensão tem seu próprio tamanho, upgrades, limites, gerador, temporadas, eventos e configurações de combate.
Os jogadores fazem sua ilha crescer comprando chunks, upgrades e tiers de gerador, pesquisando novas tecnologias, completando coleções, aceitando contratos e visitando ou lutando contra outras ilhas. Tudo é configurado pelo painel web: uma BTC Sky Main Configuration guarda as regras globais, um template por dimensão guarda a jogabilidade e um BTC Sky Menu constrói o painel de controle.
O BTC Sky é uma extensão privada. Ela roda no BTC Core (Paper ou Folia com Advanced Slime Paper) e é documentada aqui como referência. Outras extensões da BTC dependem dela: o Machine usa suas ilhas para posicionamento, limites e tiers de pesquisa, e o FakeBlock pode ancorar schematics às suas dimensões.
Recursos
- Ilhas vinculadas a perfis — uma ilha por perfil, criada a partir de um template de dimensão, compartilhada pelos donos de um perfil coop.
- Várias dimensões — desbloqueie e projete quantas dimensões quiser por ilha, cada uma com sua própria progressão.
- Expansão por chunks — comece com um único chunk e compre mais, com uma curva de custo configurável, chunks personalizados e uma prévia ao vivo com partículas e bordas do mundo.
- Cargos e configurações — cargos de visitante, membro, moderador, admin e líder, permissões por dimensão e flags da ilha (PvP, voo, spawn de mobs, explosões, regras de visitantes).
- Árvore de pesquisa — ramos e nós desbloqueados alimentando fragmentos, carregando combustível e esperando um tempo de cozimento.
- Temporadas e eventos — temporadas por dimensão e eventos combináveis (chuvas de meteoros, tempestades, ondas de mobs, bosses, chuva de tesouros).
- Geradores e upgrades — geradores de pedra em tiers e um catálogo de upgrades orientado por dados.
- Limites — limites de blocos, entidades, máquinas e pets, além de um orçamento de população de mobs por dimensão.
- Banco da ilha e contratos — um banco que serve também de economia do servidor e contratos entre jogadores em uma Contracts Table.
- Coleções, ranking, guerra — coleções globais com recompensas por nível, um ranking de níveis e uma fila de guerra entre ilhas.
- Ganchos para o TypeWriter — 38 facts, 33 eventos, grupos, um objective e muitas actions para construir quests em torno das ilhas.
Instalação
- Instale a build BTC do TypeWriter com o BTC Core. Os mundos das ilhas são criados com o Advanced Slime Paper, então o servidor precisa fornecê-lo.
- Instale as extensões que o BTC Sky declara como obrigatórias: Region, Entity, RoadNetwork e BTCMobs. Na prática, ele também precisa da extensão Profiles (cada ilha é identificada por um id de perfil) e da extensão GUI (menus).
- Extensões opcionais: MySql (armazenamento compartilhado entre servidores), UiCore (menus avançados e banners), Party, Friend e Guild para vínculos sociais, NumericalStorage para moedas, CraftEngine para blocos personalizados, CustomBiome para biomas personalizados e PacketEvents para bordas e hologramas do lado do cliente. O MiniPlaceholders é necessário para os placeholders.
- Coloque o JAR do BTC Sky em
plugins/Typewriter/extensions/e reinicie o servidor. - Crie um mundo modelo por dimensão e coloque-o na pasta
slime_worldsdo servidor, com o nome que você dará atemplateWorldName.
Como funciona
A instance
Uma instance é uma cópia colocada de um objeto do jogo dentro de uma dimensão de uma ilha. O BTC Sky tem dois tipos de entries de instance. Uma BTC Sky Instance invoca uma entidade (um NPC ou um modelo do BetterModel) em uma dimensão dada (targetDimension) a um deslocamento do ponto de spawn da dimensão (spawnOffset), com uma road network opcional para pathfinding. Uma Island NPC Instance é a variante de NPC cuja posição é armazenada por dimensão da ilha, de modo que cada ilha tem sua própria cópia, que o dono pode mover com a action Move Island NPC.
Templates de dimensão
Um Dimension Template é o projeto de uma dimensão. Adicione-o à lista dimensionTemplates da configuração principal. Ele define:
| Grupo | Campos | O que controla |
|---|---|---|
| Identidade | dimensionId, displayName, priority, description, icon, menuSlots | Como a dimensão é nomeada e exibida nos menus. |
| Mundo | templateWorldName, defaultBiome, allowedBiomes, spawn | O mundo clonado para cada ilha, os grupos de biomas entre os quais o jogador pode escolher e o canto de spawn. |
| Acesso | unlock | Desbloqueada por padrão ou não, dimensão primária, custo, nível de ilha exigido, permissão, actions disparadas ao desbloquear. |
| Tamanho | expansion | Tamanho inicial e máximo em chunks por lado, curva de custo, chunks personalizados, materiais da prévia. |
| Limites | limits | Limites de blocos, entidades, máquinas e pets, e o limite de warps. |
| População | spawner, mobLevelAtCenter, mobLevelAtEdge | Taxa de spawn de mobs, distâncias e tetos, e nível dos mobs do centro até a borda. |
| Economia | blockValues, generator, multipliers | Valor de nível de ilha de cada bloco, tiers de gerador, multiplicadores de plantações, drops, spawners e XP. |
| Pessoas | rolePermissions, overrideGlobalFlags, enabledFlags | O que cada cargo pode fazer nesta dimensão. |
| Tempo | seasons, events | Temas sazonais e eventos aleatórios da ilha. |
| Progressão | upgrades | O catálogo de upgrades desta dimensão. |
| Combate e cristal | combat, crystal, crystalOffset, crystalMovable | Configurações de guerra e o cristal de estabilização da dimensão. |
O cristal de estabilização tem três estados (crystal): ACTIVE abre a sala de controle da dimensão (e seu painel de máquinas), DECORATIVE é cenário que recusa interação, ABSENT proíbe colocar um.
Ilhas
Uma ilha pertence a um perfil: seu id é o id do perfil. Ela guarda suas dimensões, configurações, membros, upgrades, saldo do banco, estatísticas, progresso de pesquisa, coleções, warps, hologramas, avaliações e banimentos. As ilhas são salvas no Player Sky Data Artifact, que você referencia no campo playerSkyDataArtifact da configuração principal.
Uma ilha é criada a partir de um template com a action Create Island. Por padrão, nada a cria automaticamente: defina autoProvisionIslandOnProfileCreation para criar e entrar na ilha primária logo após a criação de um perfil, ou mantenha-o desativado para que um tutorial ou um menu desbloqueie a ilha mais tarde.
Os níveis das ilhas são calculados por um scanner a partir dos blockValues de cada dimensão. Blocos empilhados contam no nível, mas ocupam o espaço de um único bloco.
Membros, cargos e coop
| Cargo | Significado |
|---|---|
VISITOR | Qualquer pessoa que não seja membro. |
MEMBER | Um amigo do dono com acesso básico. |
MODERATOR | Pode convidar e expulsar. |
ADMIN | Gerenciamento completo, exceto dissolver. |
LEADER | O dono. |
O dono atribui cargos aos amigos (members). Um cargo alto é um nível de permissão: ele não torna o amigo um co-dono e não compartilha a progressão. O que cada cargo pode fazer (BUILD, BREAK, CHEST_ACCESS, INVITE, KICK, BAN, SET_WARP, SET_HOME, SET_BIOME, MANAGE_FLAGS, MANAGE_UPGRADES, TRANSFER, DISBAND…) é definido por dimensão em rolePermissions do template.
O coop é diferente: uma ilha coop tem vários donos, e eles compartilham a progressão da ilha (pesquisa, coleções, nível). O coop precisa de um perfil Coop na extensão Profiles. Um dono ou um admin da ilha convida um jogador com a action Invite Coop Partner. O convite expira após 60 segundos e é aceito com Accept Invite ou recusado com Decline Invite. O Coop Countable Objective dobra sua meta em ilhas coop.
As configurações da ilha (flags) são alternadas por ilha: IS_OPEN, ALLOW_FLY, IS_PVP_ENABLED, IS_MOB_SPAWNING_ENABLED, IS_EXPLOSIONS_ENABLED, IS_FIRE_SPREAD_ENABLED, VISITOR_ITEM_PICKUP, VISITOR_ITEM_DROP, VISITOR_DOOR_USE, VISITOR_CONTAINER_ACCESS, VISITOR_ANIMAL_INTERACT, BORDER_VISIBLE e WORLD_BORDER.
Upgrades, geradores e limites
Cada dimensão lista seus upgrades. Um upgrade tem níveis com um cost, um effectValue e actions opcionais na compra. Seu effectType decide o que ele faz: multiplicadores de crescimento de plantações, de drops de mobs ou de taxa de spawners, efeitos de poção e de ilha, aumentos de limites de blocos e entidades, tamanho da equipe, limite de warps, tier de gerador, voo na ilha, frequência e loot de eventos, desbloqueios de eventos ou um efeito personalizado por meio de actions. Se você deixar upgrades intocado, o catálogo padrão interno é usado.
O gerador de pedra tem tiers (generator.tiers), cada um com um cost e uma lista de rates (um bloco vanilla ou um id de bloco do CraftEngine, com uma porcentagem). Deixe tiers vazio para usar os padrões internos do overworld, do nether e do end.
Os limites vêm apenas do template: um tipo de bloco ou entidade que não está listado é ilimitado. Cada limite tem um valor base e pode ser aprimorável (upgradeCost, upgradeIncrease). Os limites de máquinas e pets se aplicam quando essas extensões estão instaladas. O bloco spawner adiciona um orçamento de população de mobs (maxNearbyMobs, maxPerChunk, tetos por template) para que uma farm não impeça todos os outros spawns. Quando o UiCore está instalado, os jogadores veem um banner quando um teto recusa um spawn.
Pesquisa
A árvore de pesquisa é definida na seção research da configuração principal, não em entries separadas:
- Os ramos (
research.branches) são categorias com uma curva de níveis: o XP necessário por nível, os pontos concedidos e as actions executadas ao subir de nível. - Os nós (
research.nodes) pertencem a um ramo, ficam em uma posiçãox/ye listam seusparents,powerCost,requiredLevel,criteria,fuels,output,successChance, configurações de repetição e recompensas. - Os fragmentos (
research.fragments) são itens que dão poder.
Um nó é pesquisado em etapas. O jogador coloca fragmentos no nó para preencher seu poder, carrega um item de combustível, o nó cozinha pela duração do combustível e depois o jogador resgata o resultado. Em caso de sucesso, as rewards são executadas (cada uma com sua própria chance) e as receitas listadas em recipes são desbloqueadas; em caso de falha, as failRewards são executadas. A pesquisa pertence à ilha, então todos os donos a compartilham, e as receitas são devolvidas a cada jogador ao entrar. Outras extensões leem os nós desbloqueados: por exemplo, os tiers do Machine indicam um nó de pesquisa.
As entries de manifest Research Branch e Research Node existem, mas o runtime de pesquisa lê a configuração principal, então defina sua árvore lá. Use as actions Research Grant Points, Research Grant XP, Unlock Research e Open Research Menu para conectá-la às suas quests.
Temporadas
As temporadas são configuradas por dimensão em seasons e vêm desativadas por padrão (enabled). Existem dois modos de temporização:
FIXED_DURATION— cada temporada durafixedDurationHoursde tempo real (168 por padrão, uma semana).CALENDAR_LINKED— o ano de um calendário do TinyEssentials (calendar,startMonth) é dividido igualmente entre as temporadas.
Cada definição de temporada (definitions, com primavera, verão, outono e inverno por padrão) pode sobrescrever o bioma, definir um padrão de clima (CLEAR, RAIN, THUNDER, SNOW), multiplicar o crescimento de plantações, os spawns de mobs, os drops de mobs e o XP, exibir partículas e disparar actions em seu início e fim. O evento Season Change informa cada mudança.
Eventos
Um evento de ilha é um invólucro combinável: o Island Event descreve quando ele pode ocorrer (chancePerCheck, weight, cooldownMinutes, minimumPlayers, conditions, requiredUpgradeId, dimensões permitidas e bloqueadas) e lista as mecânicas que ele executa (mechanics). Adicione os eventos que uma dimensão pode usar a events.events de seu template; minIntervalMinutes e maxIntervalMinutes espaçam as verificações.
As mecânicas são entries separadas que você combina: Meteor Shower, Treasure Rain, Mob Wave, Storm, Eclipse, Boss, Event Ambience (partículas e som), Event Flag, Event Trigger (actions), Temporary Multiplier (XP ou drops), Temporary Client Block, Coop Buff e BetterModel Impact. Elas estão listadas no índice de Entries abaixo.
Economia, contratos e coleções
O banco da ilha guarda o dinheiro da ilha. Em um servidor sem plugin de economia, o banco é publicado como a economia do servidor, então o dinheiro de um jogador é o dinheiro de sua ilha. Deposite e saque com as actions Island Bank Deposit e Island Bank Withdraw. Os custos nos templates usam uma referência de moeda (currency) que aponta para uma entry de moeda, como uma do NumericalStorage.
Os contratos são acordos entre jogadores, feitos em uma Contracts Table. Por padrão (contractsRequireWorkstation), o menu só abre a partir do bloco da mesa (contractsTableBlock, uma mesa de cartografia por padrão). As recompensas são taxadas por contracts.rewardTaxPercent.
As coleções acompanham o que a ilha colhe, mata e pesca, por item, com limites de nível (collections.categories). Cada nível pode executar actions uma única vez (onReach). Os jogadores também podem desbloquear ou bloquear uma coleção com a action Unlock Collection.
Guerra
Quando combat.enabled está definido em um template, as ilhas dessa dimensão podem participar de guerras. Uma ilha entra na fila de guerra como atacante ou defensora (pelo painel de controle) e é pareada com uma ilha na fila no papel oposto. A ilha deve atingir combatWar.minIslandLevel, e combatWar.warCooldownMinutes espaça duas guerras. O template define a própria luta: vida e regeneração do núcleo (coreHealth, coreRegeneration), durationMinutes, attackCooldownHours, pontos de spawn e actions para início, vitória e derrota. O vencedor pode saquear uma parte do banco do perdedor (combatWar.pillagePercent). Vitórias, derrotas e empates são mantidos nas estatísticas da ilha.
O Archipel
O Archipel des Métiers é um mundo compartilhado e somente leitura (listado em readOnlyWorlds) de nove ilhotas restauradas pela ilha: acesso, pontes e tiers são armazenados na ilha e expostos como facts e actions archipel_*.
Primeiros passos
Crie uma primeira ilha com uma dimensão e deixe os jogadores abrirem o painel de controle:
- No painel web do TypeWriter, abra uma página static e adicione um Player Sky Data Artifact.
- Adicione um Dimension Template. Defina
dimensionIdcomooverworld,templateWorldNamecom o nome do seu mundo modelo e mantenhaunlock.isPrimaryativado. Ajusteexpansion(initialSizeChunks,maxSizeChunks,baseCost). - Adicione uma BTC Sky Main Configuration. Coloque o template em
dimensionTemplatese o artifact emplayerSkyDataArtifact. - Adicione um BTC Sky Menu com o id
control_panel(a Contracts Table abre essa entry), construa seuslayoutPooleviewse adicione uma BTC Sky Menu Configuration com os templates das listas dinâmicas. - Adicione uma action Create Island com
templatedefinido como o seu template e conecte-a a um botão, um comando ou uma etapa de tutorial. - Publique. Crie um perfil, dispare a action e a ilha aparece com seu mundo modelo.
- Teste o fluxo de admin com
/typewriter island admin search <name>em uma conta da staff.
O BTC Sky registra seus comandos sob o comando do TypeWriter. Um /island de nível superior não é definido pela extensão: crie um com uma entry de comando que dispare o BTC Sky Menu (veja Comandos).
Comandos
Os comandos de ilha são registrados como @TypewriterCommand, então ficam sob /typewriter (alias /tw). Os menus os executam pelo jogador, e é por isso que a maioria deles é interna.
Comandos de ilha
| Comando | Descrição |
|---|---|
/typewriter island | Abre o painel de controle. |
/typewriter island visit <islandId> | Teletransporta para uma ilha aberta, a menos que você esteja banido. |
/typewriter island invite [player] | Abre o diálogo de convite ou convida um jogador online como parceiro coop. |
/typewriter island dimension tp <dimId> | Teletransporta para uma dimensão da sua ilha. |
/typewriter island dimension buy <dimId> | Desbloqueia uma dimensão da sua ilha. |
O painel de controle também executa estes comandos internos: navegação de abas e dimensões (dim_select, list_scroll, cp, close), expansão (expansion_map, expansion_nav, buy_chunk), nível (recalculate_level, recalc_level), warps (warps, warp, warp_create, warp_delete, warp_edit, warp_set_icon, warp_toggle_public), membros (members, member_manage, member_promote, member_demote, member_kick), moderação (visitor_kick, visitor_ban, unban), bordas (border …), hologramas (holograms, create_hologram, edit_hologram), contratos (contracts_browse, contract_apply, contracts_create, contract_accept, contract_reject, contract_cancel e relacionados), upgrades (upgrade, upgrade_confirm, upgrade_generator), pesquisa (research_input, research_feed, research_fuel, research_claim), guerra (declare_war, combat_queue, combat_history, attack), avaliações (rate), biomas (biomes, set_biome, set_chunk_biome), configurações (toggle_setting, fly_toggle, fly_scope) e ranking (ranking_sort, ranking_dim). Eles não foram feitos para serem digitados manualmente.
Os botões de chat de um convite coop executam /island coop accept e /island coop deny. Esses subcomandos não são registrados pela extensão, então conecte Accept Invite e Decline Invite aos seus próprios comandos.
commandAliases da configuração principal (padrão island, is, islands) apenas informa ao sistema de menus quais palavras de comando encaminhar para a árvore de ilha. Ele não registra novos comandos.
Comandos de admin
Toda a ramificação admin exige btcsky.admin (ou status de operador).
| Comando | Descrição |
|---|---|
/typewriter island admin search <query> | Encontra ilhas por id, dono ou nome de membro. |
/typewriter island admin create <player> <template> | Cria uma ilha para um jogador online a partir de um template (por id de entry ou id de dimensão). |
/typewriter island admin delete <profileId> | Exclui uma ilha. |
/typewriter island admin tp <player or id> | Teletransporta para uma ilha. |
/typewriter island admin setlevel <profileId> <level> | Define o nível da ilha. |
/typewriter island admin eco <islandId> get, set <amount>, add <amount> | Lê, define ou soma ao banco da ilha. |
/typewriter island admin collection <islandId> <collectionId> <level> | Define o nível de uma coleção. |
/typewriter island admin upgrade <upgradeId> <level> | Define o nível de um upgrade na ilha em que você está, na dimensão selecionada. |
/typewriter island admin unlock dimension <islandId> <dimId> | Desbloqueia uma dimensão para uma ilha. |
/typewriter island admin event <eventId> | Inicia agora um evento de ilha na sua ilha. |
/typewriter island admin limit show <profileId> | Mostra os limites de entidades ao lado das contagens reais. |
/typewriter island admin limit budget <profileId> <dimensionId> <value> | Define o orçamento de mobs de uma dimensão (unlimited ou -1 o remove). |
/typewriter island admin limit species <profileId> <dimensionId> <entityType> <value> | Define o teto de um tipo de entidade. |
/typewriter archipel, acces, passerelle <islet>, palier <islet>, ouvrir | Inspeciona e concede acesso, pontes e tiers do Archipel (permissão btcsky.admin.archipel). |
Permissões
| Permissão | Concede |
|---|---|
btcsky.admin | Toda a ramificação /typewriter island admin. |
btcsky.admin.search, .create, .delete, .tp, .setlevel, .eco, .collection, .upgrade, .dimension, .event, .limit | Cada subcomando de admin, como alternativa mais granular. A ramificação pai ainda exige btcsky.admin ou status de operador. |
btcsky.admin.archipel | Os comandos /typewriter archipel. |
btcsky.admin.bypass | Ignora a proteção da ilha e as restrições de warps, desde que o jogador também tenha a flag de bypass de admin. |
btcsky.admin.dimensions | Entra em dimensões que não estão desbloqueadas. |
btcsky.warp.unlimited | Ignora o limite de warps. |
btcsky.contracts.bypass | Abre contratos sem passar pela Contracts Table (configurável: contractsBypassPermission). |
Permissões de contracts.permissionLimits | Aumentam o número de contratos abertos. |
A entry BTC Sky Permission Definitions e as seções permissions e commands da configuração principal listam muitos outros nodes (btcsky.island.*, btcsky.vip.*, btcsky.command.*). Eles são documentação: o código atual não os verifica.
Placeholders
Tags MiniPlaceholders da expansão btcsky, fornecidas por meio do TypeWriter. Um jogador sem ilha recebe 0 para todas as tags, exceto has_island. Onde quer que uma dimensão seja esperada, current significa a dimensão em que o jogador está, e o padrão é essa dimensão quando o argumento é omitido.
Ilha
| Placeholder | Retorna |
|---|---|
<btcsky_has_island> | true ou false. |
<btcsky_context_state> | Estado do vínculo entre perfil e ilha (NO_PROFILE quando não há). |
<btcsky_island_id> | Id da ilha (perfil). |
<btcsky_island_owner>, <btcsky_owner_name> | Nome do dono. |
<btcsky_island_role> | Cargo do jogador na ilha. |
<btcsky_island_level>, <btcsky_level> | Nível da ilha. |
<btcsky_island_balance>, <btcsky_bank_balance> | Saldo do banco. |
<btcsky_island_members_count>, <btcsky_member_count> | Número de membros. |
<btcsky_island_members_online> | Membros online. |
<btcsky_member_max> | Limite de tamanho da equipe, incluindo upgrades. |
<btcsky_team_members_list> | Nomes dos membros separados por vírgulas. |
<btcsky_is_coop_island> | true para uma ilha coop. |
<btcsky_island_creation_date> | Data de criação (yyyy-MM-dd HH:mm:ss). |
<btcsky_island_worth> | Soma dos níveis das dimensões. |
<btcsky_visitor_count> | Visitantes atualmente na ilha. |
<btcsky_biome_current> | Nome do bioma sob o jogador. |
<btcsky_season> | Temporada da dimensão atual, ou da data do calendário fora de uma ilha. |
<btcsky_setting:name> | Estado ligado/desligado colorido de uma configuração: visit (ou open), fly, pvp, mobs, explosions, fire, world_border, possession_border. |
<btcsky_island_exp> sempre retorna 0, <btcsky_island_level_progress> sempre 100 e <btcsky_bank_interest_rate> sempre 0.0: eles existem apenas por compatibilidade.
Tamanho, biomas e contagens
| Placeholder | Retorna |
|---|---|
<btcsky_size> | Chunks desbloqueados na dimensão atual. |
<btcsky_island_size> | Chunks desbloqueados em todas as dimensões. |
<btcsky_size_max>, <btcsky_max_size> | Máximo de chunks da dimensão atual, conforme seu template. |
<btcsky_island_size_max>, <btcsky_island_max_size> | Máximo de chunks em todas as dimensões. |
<btcsky_biomes_acquired>, <btcsky_island_biomes_total> | Biomas desbloqueados em todas as dimensões. |
<btcsky_biomes_total> | Biomas que podem existir em todas as dimensões. |
<btcsky_biomes:group> | Biomas desbloqueados de um grupo de biomas na dimensão atual. |
<btcsky_island_biomes:group> | Biomas desbloqueados de um grupo de biomas em todas as dimensões. |
<btcsky_block_count:MATERIAL> | Contagem de um bloco na dimensão atual. |
<btcsky_upgrade_level:id> | Nível de um upgrade na dimensão atual. |
<btcsky_upgrades_acquired>, <btcsky_upgrades_total> | Upgrades comprados e upgrades disponíveis, em todas as dimensões. |
<btcsky_warp_count>, <btcsky_warp_list> | Número e nomes dos warps. |
<btcsky_warp_limit> | Limite padrão de warps da configuração. |
Progressão e social
| Placeholder | Retorna |
|---|---|
<btcsky_contract_completed_count> | Contratos concluídos. |
<btcsky_research_unlocked_nodes>, <btcsky_research_unlocked_count> | Nós de pesquisa desbloqueados. |
<btcsky_research_points> | Pontos de pesquisa. |
<btcsky_collection_total_unlocked> | Coleções desbloqueadas. |
<btcsky_collection_progress:id> | Quantidade coletada para um id de coleção. |
<btcsky_ban_count> | Jogadores banidos. |
<btcsky_rating>, <btcsky_rating_count> | Avaliação média (1 casa decimal) e número de votos. |
<btcsky_combat_wins>, <btcsky_combat_losses>, <btcsky_combat_draws>, <btcsky_combat_winrate> | Estatísticas de guerra e taxa de vitória em porcentagem. |
Dimensões
O argumento é um id de dimensão ou current.
| Placeholder | Retorna |
|---|---|
<btcsky_dimension_id:dim>, <btcsky_dimension_display:dim> | Id da dimensão e seu nome de exibição com inicial maiúscula. |
<btcsky_dimension_unlocked:dim>, <btcsky_dimension_is_locked:dim> | true ou false. |
<btcsky_dimension_level:dim> | Nível da dimensão. |
<btcsky_dimension_generator_tier:dim> | Tier do gerador. |
<btcsky_dimension_event_next:dim> | Tempo até o próximo evento (mm:ss), Now ou Unknown. |
<btcsky_dimension_size:dim>, <btcsky_dimension_size_max:dim> | Chunks desbloqueados e máximo de chunks. |
<btcsky_dimension_biomes_total:dim> | Biomas desbloqueados. |
<btcsky_dimension_upgrades_acquired:dim>, <btcsky_dimension_upgrades_total:dim> | Upgrades comprados e disponíveis. |
<btcsky_dimension_visitor_count:dim> | Visitantes na dimensão. |
<btcsky_dimension_upgrade_level:dim:id> | Nível de um upgrade na dimensão. |
<btcsky_dimension_biomes:dim:group> | Biomas desbloqueados de um grupo na dimensão. |
<btcsky_block_limit:dim:MATERIAL> | Limite de blocos na dimensão. |
<btcsky_dimension_lock_mark:dim> | [X] quando a dimensão está bloqueada, vazio quando aberta. |
<btcsky_dimension_locked_palette:dim> | Nome da paleta para uma dimensão bloqueada ou aberta, para botões de menu. |
Menus
O painel de controle é um único menu com views.
- O BTC Sky Menu guarda o
layoutPool, asviews(uma por tela), odefaultViewIde asinventoryRows. Os slots de aba carregam a tagview:<viewId>; os frames de conteúdo variável usam o id de layout@view. Uma view é aberta com<viewId>ou<viewId>:<argument>(por exemplocollection_detail:mining). - Os itens de conteúdo usam um
buttonTypeno formatobtcsky_button:TYPE. A extensão preenche os dados ao vivo (informações da ilha, dimensões, upgrades, coleções, ranking, warps, contratos, membros, banimentos, pesquisa, chunks de expansão, bordas, combate, hologramas…) e anexa os cliques. - A BTC Sky Menu Configuration guarda os templates de itens das listas dinâmicas.
- O Open Specific Menu abre uma view específica, e o Open Friends Menu abre a tela de amigos.
O painel é um catálogo quando aberto pelo menu global (você navega, não compra nada). Aberto a partir de um cristal de estabilização, ele se torna a sala de controle da dimensão, e a compra de upgrades e chunks é permitida; caso contrário, os comandos de compra recusam.
Quando o UiCore está instalado, o BTC Sky também publica listas (upgrades, mapa de expansão, visitas, coleções, ranking, membros e bordas) em menus do UiCore e exibe banners quando um teto de população recusa um spawn.
Entries
161 entradas, geradas a partir do código-fonte da extensão.
Ações61
- Archipel Build Bridge ActionArchipel : bâtir une passerelle
- Archipel Grant Access ActionArchipel : accorder l'accès
- Archipel Raise Tier ActionArchipel : monter un îlot d'un palier
- Btcsky Add RatingAdd rating to island
- Btcsky Apply EffectApply island effect
- Btcsky Decline InviteDecline island invite
- Btcsky Invite Coop PartnerInvite a player to start a Coop
- Btcsky Leave CoopLeave cooperative island
- Btcsky MenuBTC Sky Menu
- Btcsky Open Friends MenuOpens the friends menu for the player
- Btcsky Open MenuOpen specific menu
- Btcsky Remove EffectRemove island effect
- Btcsky Reset UpgradesReset all upgrades
- Btcsky Set Dimension BiomeSet dimension biome
- Btcsky Set Generator TierSet generator tier
- Btcsky Set TimeSet dimension time
- Btcsky Set Upgrade LevelSet upgrade level (admin)
- Btcsky Switch Next DimensionCycle to next unlocked island dimension
- Btcsky Teleport Random IslandTeleport to random public island
- Btcsky Teleport to PlayerTeleport to player on island
- Btcsky Toggle Warp PublicToggle warp visibility
- Btcsky Upgrade GeneratorUpgrade generator one tier
- Create Island ActionCreate Island
- Create Named HologramCreate a hologram from menu input
- Create Named WarpCreate a named warp from menu input
- Create Warp ActionCreate Island Warp
- Delete Island ActionDelete Island
- Delete Named HologramDelete a hologram from menu
- Delete Warp ActionDelete Island Warp
- Demote Member ActionDemote Member
- Edit Named HologramEdit a hologram from menu input
- Initiate Guild WarInitiates a Guild War instance directly via ASPaper.
- Invite Member ActionInvite Member
- Invite Named PlayerInvite a player by name from menu input
- Island Accept Invite ActionAccepts a pending island invitation
- Island Ban PlayerBan a player from the island
- Island Bank DepositDeposits money into island bank
- Island Bank WithdrawWithdraw money from island bank
- Island Calculate LevelRecalculate island level
- Island Rename WarpRename an island warp
- Island Research ActionUnlock a research node
- Island Reset ActionResets the player's island (Delete & Re-create)
- Island Set BiomeSet the island's biome
- Island Set HomeSet island home location
- Island Set WeatherSet dimension weather
- Island Show BorderVisually show island border
- Island Teleport DimensionTeleport to specific dimension
- Island Teleport SpawnTeleport to server spawn
- Island Toggle FlyToggle Fly mode on the island
- Island Toggle PVPToggle PvP on the island
- Island Upgrade ActionPurchase an upgrade for the island
- Kick Member ActionKick Member
- Leave Island ActionLeave Island
- Move Island NPC ActionDéplacer un habitant de l'île
- Open Research MenuOpen a research menu for the player
- Promote Member ActionPromote Member
- Research Grant PointsGrant research points to the player's island
- Research Grant XPGrant experience to a research category
- Teleport Home ActionTeleport Home
- Unlock Collection ActionUnlock/Lock Collection
- Unlock Dimension ActionUnlock Island Dimension
Eventos33
- Btcsky Block Broken EventWhen a block is broken on the island
- Btcsky Block Limit Reached EventWhen block limit is reached
- Btcsky Block Placed EventWhen a block is placed on the island
- Btcsky Combat End EventWhen island combat ends
- Btcsky Combat Start EventWhen island combat starts
- Btcsky Coop Invite Accepted EventWhen a coop invitation is accepted
- Btcsky Coop Invite Declined EventWhen a coop invitation is declined
- Btcsky Coop Invite Sent EventWhen a coop invitation is sent
- Btcsky Coop Partner Left EventWhen a coop partner leaves
- Btcsky Entity Limit Reached EventWhen entity limit is reached
- Btcsky Generator Used EventWhen a cobblestone generator is used
- Btcsky Island Enter EventWhen a player enters any island
- Btcsky Island Event EndWhen a random island event ends
- Btcsky Island Event StartWhen a random island event starts
- Btcsky Island Leave EventWhen a player leaves an island
- Btcsky Island Visit EventWhen a player visits another player's island
- Btcsky Level Up EventWhen island level increases
- Btcsky Member Banned EventWhen a player is banned from the island
- Btcsky Member Demoted EventWhen a member is demoted
- Btcsky Member Join EventWhen a new member joins the island
- Btcsky Member Kicked EventWhen a member is kicked
- Btcsky Member Leave EventWhen a member leaves the island
- Btcsky Member Promoted EventWhen a member is promoted
- Btcsky Member Unbanned EventWhen a player is unbanned
- Btcsky Research Complete EventWhen a research is completed
- Btcsky Season Change EventWhen the island season changes
- Btcsky Top Reached EventWhen island enters top rankings
- Btcsky Warp Create EventWhen an island warp is created
- Btcsky Warp Delete EventWhen an island warp is deleted
- Island Bank Transaction EventTriggered on bank transactions
- On Island CreateTriggered when a player creates an island
- On Island Dimension EnterWhen player enters an island dimension
- On Island UpgradeWhen an island upgrade is purchased
Objetivos1
- Coop Countable ObjectiveA countable objective that scales its target for coop islands
Fatos38
- Archipel Access FactArchipel : accès accordé
- Archipel Bridge FactArchipel : passerelle bâtie
- Archipel Bridges FactArchipel : passerelles bâties
- Archipel Progression FactArchipel : progression totale
- Archipel Tier FactArchipel : palier de l'îlot
- Btcsky Block Count FactCount of specific block/material
- Btcsky Block Limit FactLimit for specific block/material
- Btcsky Dimension Is Primary FactDimension is primary/home
- Btcsky Dimension Unlocked FactDimension is unlocked
- Btcsky Entity Count FactCount of specific entity type
- Btcsky Entity Limit FactLimit for specific entity type
- Btcsky Fly Enabled FactIf fly is enabled (upgrade/setting)
- Btcsky Generator Tier FactGenerator tier for dimension
- Btcsky Has Island FactPlayer has an island
- Btcsky Has Upgrade FactHas upgrade (level > 0)
- Btcsky Is Coop Island FactIsland is cooperative
- Btcsky Is in Void FactPlayer is in the void (Y < -64)
- Btcsky Is Island Admin FactPlayer is island admin or higher
- Btcsky Is Island Member FactPlayer is island member or higher
- Btcsky Is Island Moderator FactPlayer is island moderator or higher
- Btcsky Is Island Owner FactPlayer is island owner
- Btcsky Is on Any Island FactPlayer is on valid island world
- Btcsky Is on Island FactPlayer is on their own island
- Btcsky Is Visitor FactPlayer is visiting another island
- Btcsky Island Age FactIsland age in days
- Btcsky Island Balance FactIsland bank balance
- Btcsky Island Rating FactIsland average rating
- Btcsky Member Count FactNumber of island members
- Btcsky Member Role FactPlayer's island role (ordinal)
- Btcsky Online Member Count FactNumber of online island members
- Btcsky Upgrade Level FactLevel of specific upgrade
- Btcsky Warp Count FactNumber of warps in dimension
- Contract Completion FactReturns the number of contracts completed by the player
- Island Block Count FactCount specific blocks on an island dimension
- Island Dimension ActivityGet last activity timestamp for an island dimension
- Island Level FactCheck Island Level
- Island NPC PositionStores island npc position per dimension
- Island Role FactCheck Island Role
Entidades1
- Island NPC InstanceNpc instance per island dimension
Atividades1
- Btcsky Runtime PathRuntime Path Activity
Grupos2
- Btcsky Island GroupGroups players by their BTCSky island (Global)
- Btcsky Role GroupGroups players by their BTCSky island and role
Artefatos1
- Player Sky Data ArtifactGlobal BTC Sky Data Storage
Manifestos20
- Btcsky Bettermodel Impact MechanicBetterModel Impact Mechanic
- Btcsky Boss MechanicBoss Mechanic
- Btcsky ConfigBTC Sky Main Configuration
- Btcsky Coop Buff MechanicCoop Buff Mechanic
- Btcsky Dimension TemplateIsland Dimension Template
- Btcsky Eclipse MechanicEclipse Mechanic
- Btcsky Event Ambience MechanicEvent Ambience Mechanic
- Btcsky Event Flag MechanicIsland Event Flag
- Btcsky Event Trigger MechanicEvent Trigger Mechanic
- Btcsky Island EventIsland Event
- Btcsky Menu ConfigBTC Sky Menu Configuration
- Btcsky Meteor Shower MechanicMeteor Shower Mechanic
- Btcsky Mob Wave MechanicMob Wave Mechanic
- Btcsky PermissionsBTC Sky Permission Definitions
- Btcsky Research BranchResearch Branch
- Btcsky Research NodeResearch Node
- Btcsky Storm MechanicStorm Mechanic
- Btcsky Temporary Client Block MechanicTemporary Client Block Mechanic
- Btcsky Temporary Multiplier MechanicTemporary Multiplier Mechanic
- Btcsky Treasure Rain MechanicTreasure Rain Mechanic
Definições1
- Island Dimension Road NetworkRoad network shared across BTC Sky dimensions
Outras entradas2
- Btcsky InstanceSpawns an Entity Instance in a specific Island Dimension.
- Btcsky NPC Reference BlockNPC Reference Block
Solução de problemas
O mundo da ilha não é criado. Cada dimensão clona o mundo indicado em templateWorldName a partir da pasta slime_worlds. O arquivo deve existir e o BTC Core deve fornecer o Advanced Slime Paper. Verifique no log do servidor o id da dimensão e o id da ilha.
Um jogador não tem ilha depois de criar um perfil. autoProvisionIslandOnProfileCreation vem desativado por padrão. Dispare uma action Create Island ou ative a opção.
/island não existe. A extensão só registra /typewriter island. Crie seu próprio comando que dispare o BTC Sky Menu e observe que a entry de menu aberta pela Contracts Table deve ter o id control_panel.
Os contratos se recusam a abrir. Com contractsRequireWorkstation ativado, os contratos só abrem a partir da Contracts Table (contractsTableEnabled e contractsTableBlock). Desative-o em um servidor de teste ou conceda a permissão de bypass.
Todos os placeholders retornam 0. O jogador não tem ilha ou perfil ativo. Verifique <btcsky_has_island> e <btcsky_context_state>. Um argumento de dimensão deve ser um id de dimensão válido ou current.
Minha árvore de pesquisa não aparece. O runtime de pesquisa lê research.branches e research.nodes da configuração principal. As entries Research Branch e Research Node não são lidas.
As temporadas ou os eventos nunca começam. As temporadas vêm desativadas por padrão (seasons.enabled). Os eventos precisam de pelo menos um evento em events.events do template, e um evento só dispara quando seus conditions, requiredUpgradeId e minimumPlayers correspondem.
Nenhum mob surge na ilha. Verifique spawner.enabled, maxNearbyMobs e maxPerChunk, e a flag de ilha IS_MOB_SPAWNING_ENABLED. Use /typewriter island admin limit show <profileId> para comparar os contadores com o número real de mobs.
Os jogadores não conseguem construir em um mundo compartilhado. Os mundos listados em readOnlyWorlds (padrão archipel_metiers) são protegidos para todos, exceto para quem tem machine.protection.bypass.