Sueta

P_Randomtp

1.5.0

Plugin de Random Teleport RTP otimizado Optimized Random Teleport RTP plugin

·Plugin
  1. 1.5.0latestP_Randomtp 1.5.0Aug 25, 2025

    🌍 P_Randomtp

    Plugin de Random Teleport (RTP) otimizado para servidores Paper/Spigot 1.21+. Permite que jogadores se teleportem para locais aleatórios seguros em um mundo, evitando lag e falhas típicas de plugins de RTP.

    ✨ Recursos

    - 🔄 Teleporte Aleatório Seguro – evita líquidos, blocos perigosos e tetos do Nether. - 🧭 Raio adaptativo – expande automaticamente a área de busca se não encontrar local válido. - ⚡ Busca fatiada por tick – executa tentativas de forma distribuída, sem travar o servidor. - 📦 Carregamento assíncrono de chunks – garante RTP rápido mesmo em distâncias grandes. - 🛡️ Integração com WorldGuard (opcional) – respeita regiões protegidas. - 💰 Integração com Vault (opcional) – cobra valores customizados por mundo. - ⏳ Warmup, cooldown e tiers por permissão – configurações flexíveis para balancear o uso. - 🌐 Multi-idioma (pt_br, en_us) – mensagens personalizadas por idioma ou forçadas no config.yml. ---

    📥 Instalação

    1. Baixe o arquivo .jar compilado do plugin. 2. Coloque em plugins/ no seu servidor Paper 1.21+. 3. Reinicie o servidor para gerar os arquivos de configuração. 4. Edite config.yml conforme necessário. 5. (Opcional) Instale Vault para cobrar por RTP e WorldGuard para respeitar proteções. ---

    ⚙️ Configuração

    O arquivo [config.yml](./src/main/resources/config.yml) possui várias opções. Exemplo de configuração otimizada (trecho):
    settings:
      cooldown-seconds: 60
      warmup-seconds: 3
      per-tick-attempts: 6
      loaded-chunks-only: false
      allow-chunk-load: true
      async-chunk-loads-parallel: 8
      max-attempts: 120
      adaptive-radius:
        enabled: true
        step-percent: 25
        max-multiplier: 3.0
     
    | Permissão | Descrição | Default | | ----------------------- | ---------------------------------------------- | --------------- | | prandomtp.use | Permite usar /rtp | ✅ todos | | prandomtp.bypass | Ignora cooldown | ❌ apenas OP | | prandomtp.free | Usa RTP sem custo (Vault) | ❌ apenas OP | | prandomtp.world.* | Permite selecionar qualquer mundo com /rtp | ❌ apenas OP | | prandomtp.admin | Acesso ao /rtp reload | ❌ apenas OP | | prandomtp.tier.vip | Tier customizado (cooldown menor, +raio) | ❌ apenas VIP | | prandomtp.tier.legend | Tier customizado (cooldown muito menor, +raio) | ❌ apenas Legend | | Comando | Uso | Descrição | | -------------- | ------------------- | ------------------------------------------------ | | /rtp | /rtp | Teleporta para um local aleatório no mundo atual | | /rtp <mundo> | /rtp world_nether | Teleporta para outro mundo (se permitido) | | /rtp reload | /rtp reload | Recarrega a configuração e mensagens |

    🧩 Integrações

    - Vault – cobra valor configurado por mundo (economy.cost.per-world). - WorldGuard – impede teleporte em áreas protegidas. - bStats – envia métricas anônimas (opcional).

    🔌 API Pública (para outros plugins)

    - Interface disponível via ServicesManager: - RtpService service = Bukkit.getServicesManager().load(RtpService.class); - // Encontrar um local seguro Location safe = service.findSafeLocation(player, world); - // Solicitar RTP completo (como se fosse /rtp) service.requestRtp(player, world); - Eventos disponíveis (RtpEvents): - WarmupStartEvent - WarmupCancelEvent - SuccessEvent - FailEvent

    🚀 Otimização

    - Use allow-chunk-load: true e async-chunk-loads-parallel ajustado conforme o hardware. - Ajuste per-tick-attempts (4–8 é ideal). - Use adaptive-radius para reduzir falhas em seeds com muitos oceanos. - Se for servidor com muito player simultâneo, limite RTPs concorrentes (semáforo global).

    ❓ FAQ

    ❓ - O RTP falha em mundos com muito oceano, e agora?

    Ative adaptive-radius e aumente max-attempts para permitir expandir além dos oceanos.

    ❓ - Dá lag quando o jogador usa RTP de 2000 blocos.

    Certifique-se de estar no Paper 1.21+ e habilite allow-chunk-load: true. O carregamento é assíncrono, não trava o tick.

    ❓ - Como adicionar mais idiomas?

    Crie arquivos em plugins/P_Randomtp/idiomas/ com o código da língua, ex.: es_es.yml.

    ❓ - Posso desativar RTP em mundos específicos?

    Sim, configure worlds.<nome>.allow: false no config.yml.

    📊 bStats

    👨‍💻 Autor

    - Desenvolvido por Pedro. Sugestões, bugs ou PRs são bem-vindos!

    🌍 P_Randomtp

    An optimized Random Teleport (RTP) plugin for Paper/Spigot 1.21+ servers. Allows players to safely teleport to random locations in a world, avoiding lag and common RTP plugin issues. ---

    ✨ Features

    - 🔄 Safe Random Teleport – avoids liquids, dangerous blocks, and Nether ceilings. - 🧭 Adaptive radius – automatically expands the search area if no valid spot is found. - ⚡ Per-tick sliced search – spreads attempts across ticks to avoid server freezes. - 📦 Asynchronous chunk loading – ensures fast RTP even at large distances. - 🛡️ WorldGuard integration (optional) – respects protected regions. - 💰 Vault integration (optional) – charge custom prices per world. - ⏳ Warmup, cooldown, and permission tiers – flexible settings to balance usage. - 🌐 Multi-language (pt_br, en_us) – customizable messages per language or forced in config.yml. ---

    📥 Installation

    1. Download the compiled .jar file of the plugin. 2. Place it inside the plugins/ folder of your Paper 1.21+ server. 3. Restart the server to generate the configuration files. 4. Edit config.yml as needed. 5. (Optional) Install Vault to charge for RTP and WorldGuard to respect protections. ---

    ⚙️ Configuration

    The [config.yml](./src/main/resources/config.yml) file contains several options. Example of an optimized setup (snippet):
    settings:
      cooldown-seconds: 60
      warmup-seconds: 3
      per-tick-attempts: 6
      loaded-chunks-only: false
      allow-chunk-load: true
      async-chunk-loads-parallel: 8
      max-attempts: 120
      adaptive-radius:
        enabled: true
        step-percent: 25
        max-multiplier: 3.0
    🔑 Permissions
    | Permission | Description | Default | | ----------------------- | ---------------------------------------------- | ----------- | | prandomtp.use | Allows using /rtp | ✅ everyone | | prandomtp.bypass | Ignores cooldown | ❌ OP only | | prandomtp.free | RTP without cost (Vault) | ❌ OP only | | prandomtp.world.* | Allows teleporting to any world with /rtp | ❌ OP only | | prandomtp.admin | Access to /rtp reload | ❌ OP only | | prandomtp.tier.vip | Custom tier (shorter cooldown, larger radius) | ❌ VIP only | | prandomtp.tier.legend | Custom tier (much shorter cooldown, big radius)| ❌ Legend |
    ⌨️ Commands
    | Command | Usage | Description | | -------------- | ------------------- | -------------------------------------------------- | | /rtp | /rtp | Teleports to a random location in the current world| | /rtp <world> | /rtp world_nether | Teleports to another world (if allowed) | | /rtp reload | /rtp reload | Reloads configuration and messages | ---

    🧩 Integrations

    - Vault – charges configured cost per world (economy.cost.per-world). - WorldGuard – prevents teleportation into protected regions. - bStats – sends anonymous metrics (optional). ---

    🔌 Public API (for other plugins)

    Available through **ServicesManage
    241 downloads

Similar projects

Plugin →