O fórum teve que ser recriado do zero, usuários do fórum antigo precisam se cadastrar novamente e caso você seja usuário vip se identifique perante a um administrador que o status vip será reatribuído..

Welcome to L2JDream Project

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

Wallz

Administrator
  • Content count

    230
  • Joined

  • Last visited

  • Days Won

    236

Wallz last won the day on November 21

Wallz had the most liked content!

Community Reputation

183 Excellent

About Wallz

  • Rank
    Advanced Member
  • Birthday 04/03/1995

Recent Profile Visitors

1,319 profile views
  1. Localização: Gameserver/data/items/ Formato: XML Vamos usar de exemplo o Infinity Bow é um item do tipo Weapon e tem o seu ID 6619. <weapon id="6619" name="Infinity Bow"> <!-- [the_infinity_bow] --> <set name="price" value="48800000"/> <set name="crystal_count" value="2850"/> <set name="enchantable" value="false"/> <set name="atk_reuse" value="1398"/> <set name="crystal_type" value="S"/> <set name="destroyable" value="false"/> <set name="dropable" value="false"/> <set name="icon" value="icon.weapon_the_bow_of_hero_i00"/> <set name="mp_consume" value="21"/> <set name="rnd_dam" value="5"/> <set name="sellable" value="false"/> <set name="soulshots" value="1"/> <set name="spiritshots" value="1"/> <set name="tradeable" value="false"/> <set name="storeable" value="false"/> <set name="type" value="BOW"/> <set name="weight" value="1300"/> <equip> <slot id="LEFT_RIGHT_HAND"/> </equip> <triggers> <trigger id="3594" level="1" type="CRIT" chance="7"/> </triggers> <skills> <skill id="3593" level="1"/> </skills> <cond msgId="1518"> <player is_hero="true"/> </cond> <cond msgId="1507"> <not> <player olympiad="true"/> </not> </cond> <for> <add stat="pAtk" order="0x10" value="614"/> <add stat="mAtk" order="0x10" value="137"/> <set stat="baseCrit" order="0x08" value="120"/> <set stat="atkBaseSpeed" order="0x08" value="293"/> <add stat="accCombat" order="0x10" value="-4.0000"/> <enchant stat="pAtk" order="0x0C" value="0"/> <enchant stat="mAtk" order="0x0C" value="0"/> </for> </weapon> 1. Todos os campos da XML. Os itens possuem 3 categorias de itens que são divididas em: Weapons - Arma, tudo que é usado na mão. Armor - Armaduras, tudo que é usado no corpo do personasgens como recipes, Etcitem - São os itens que ficam na bag e não visualmente no personagens como: pieces, recipes, quest items, etc. Então a XML já inicia com a tag <Weapon para que o sistema saiba que aquele item se trata de uma arma. "id" - identificador de item. "name" - é o identificador na XML, usado principalmente para serviços personalizados como sites, sistemas de gerenciamento. "price" - o preço do item. No momento da entrega na loja, é dividido por 2 por padrão, o preço também é utilizado para validação nas lojas pessoais para que não seja inferior ao preço à venda na loja. "crystal_count" - o número de cristais que você receberá ao quebrar um item, "enchantable" - True / False você pode torna-lo enchantando ou não. (O padrão é True, mesmo se você não tiver adicionado este parâmetro) a xml. "atk_reuse" - Usado apenas para Bow. Este é um atraso para um segundo tiro, essa faixa é necessária para esse tipo de arma. "destroyable" - True/ False ativa e desativa se pode ser destruido, jogado na lixeira. (O padrão é true, mesmo se você não tiver adicionado este parâmetro). "dropable" - True / False se pode ser deixado cair no chão. (O padrão é true, mesmo se você não tiver adicionado este parâmetro) "sellable" - True/ False se o item pode ser vendido para a loja. (O padrão é true mesmo se você não tiver adicionado este parâmetro) "tradeable" - True / Falso se o item pode ser vendido a outro jogador. (O padrão é true mesmo se você não tiver "storeable" - True / False se um item pode ser colocado em WH / CWH (banco e banco de clan). (O padrão é true mesmo se você não tiver adicionado este parâmetro) "icon" - a textura do ícone. Encontrado no cliente do jogo por padrão. Usado para exibir para serviços que mostram-nos. "mp_consume" - usado para arcos, quanto MP será tirado ao atirar. "rnd_dam" - Propagação de danos. Dano base +0 a + valor. "weight" - Peso do item. 2. Tipos de itens para cada categoria de armor, weapon etcitem. No nosso exemplo: <set name = "type" value = "BOW" /> Armor: NONE - sem tipo LIGHT - armadura light HEAVY - armadura heavy MAGIC - armadura robe PET - armadura para pets SIGIL - Escudos sigil (apenas classic) Weapon: NONE - no type. For example, fists SWORD - sword BLUNT - blunt DAGGER - dagger BOW - bow POLE - lance (pole) ETC - geralmente para armas de monstros FIST - brass knuckles (for cursed weapons) DUAL - 2 swords DUALFIST - two-handed knuckles BIGSWORD - two-handed sword PET - pet weapon (muzzle for a wolf as an example) ROD - fishing rod BIGBLUNT - two-handed club DUALDAGGER - two-handed dagger (Classic only) Etcitem: ARROW - (flechas) arrows for bow MATERIAL - materials for crafting PET_COLLAR - colar para pet POTION - potions e buffs RECIPE - recipes para crafting SCROLL - scrolls (enchants, escapes, teleport, etc.) QUEST - quest items MONEY - Adena e qualquer outra moeda de liquidação do servidor OTHER - Se você não tem certeza do tipo de item use esse. SPELLBOOK - Livros de Skills SEED - Manor Seeds BAIT - Anzol para vara de pescar SHOT - the type for Spiritshot BOLT - bolt (Classic only) RUNE - Para ruas que podem ser estocadas no inventário e podem dar skills. Elas não podem ser equipadas. HERB - herbs MERCENARY_TICKET - Tickets de Loteria ARROW_QUIVER - Arrow Quiver (Apenas Classic) 3. Tipos de slots para equipamentos <equip> </equip> . No bow o slot é assumido como LEFT_RIGHT_HAND porque é um equipamento que ocupa o espaço da mão direita e esquerda dos campos para armas (e escudo, flechas, etc). <equip> <slot id = "LEFT_RIGHT_HAND" /> </equip> Todos os tipos de slots: NONE - Sem tipo (geralmente usado para monstros). HEAD - Parte da cabeça, onde fica o helmo. CHEST - Parte de cima do Peito. LEGS - Calças. FULL_ARMOR - Armadura completa, peito e calças. FEET - Botas. GLOVES - Luvas. HAIR - Slot para acessórios como mascaras, esquerdo. FACE - Slot para acessórios como mascaras, direito. HAIR_ALL - Slot para acessórios como mascaras, ocupa 2 slots. UNDERWEAR - Slot para Tattoo. NECKLACE - Colar. RIGHT_HAND - Mão direita. LEFT_HAND - Mão esquerda. LEFT_RIGHT_HAND - Ambas as mãos. RIGHT_EAR - Brinco esquerdo. LEFT_EAR - Brinco direito. RIGHT_FINGER - Anel direito. LEFT_FINGER - Anel esquerdo. FORMAL_WEAR - Ocupa todos os espaços de armaduras. Exemplo, roupas de casamento. BELT - Belt (Classic) RIGHT_BRACELET - Bracelete direito. (Classic) LEFT_BRACELET - Bracelete esquerdo. (Classic) BROOCH - Broche (Classic) BACK - Capas (Classic) TALISMAN - Talisman slot (Classic) BROOCH_JEWEL - Brooch Jewelry Slot (Classic) AGATHION_CHARMRM - Agathion slot (Classic) 4. Blocos de skills. No exemplo abaixo quando é equipado o Infinity Bow uma skill passiva de ID 3593 no level 1 será entregue ao personagem. A skill pode ser passiva ou ativa. A skill e level: <skills> <skill id = "3593" level = "1" /> </skills> Chance de skills: Aqui podemos criar um gatilho que a skill de ID 3594 no level 1 poderá desencadear um aumento de critical attack com 7% de chance. <triggers> <trigger id = "3594" level = "1" type = "CRIT" chance = "7" /> </triggers> Valores que pode sem inclusos: ADD - a habilidade é acionada quando adicionada à lista ATTACK - a habilidade é desencadeada por um ataque normal RECEIVE_DAMAGE - a habilidade é ativada ao receber dano CRIT - a habilidade é acionada com um critico OFFENSIVE_PHYSICAL_SKILL_USE - a habilidade é acionada quando você recebe dano de habilidades físicas OFFENSIVE_MAGICAL_SKILL_USE - a habilidade é acionada quando você recebe dano de habilidades físicas SUPPORT_MAGICAL_SKILL_USE - ta habilidade é acionada quando você usa dano de habilidades físicas UNDER_MISSED_ATTACK - a habilidade é acionada ao evasão funcionar (dogge) DIE - habilidade desencadeia na morte 5. Condições Apenas para herois: <cond msgId = "1518"> <player is_hero = "true" /> </cond> Proibir o uso nas olimpiadas: <cond msgId = "1507"> <not> <player olympiad = "true" /> </not> </cond> Proibir o uso em eventos de PvP: <cond> <not> <player on_pvp_event = "true" /> </not> </cond> Está é a lista de todas as condições disponíveis, você pode comparar com itens que já conhece para ter exemplos. classId - ID da classe forbiddenClassId - Proibir certas classes olympiad - Olimpiadas min_pledge_rank - Ranking em um clan is_hero - Ser ou não heroi on_pvp_event - Usar ou não em eventos de PVP class_is_mage - Classes de Magos (True / False) instance_zone - Zona que é instancia minLevel - Level mínimo exigido maxLevel - Level máximo exigido race - Raça (Elf, Dwarf etc) gender - Genero (Male ou Female) maxPK - Quantidade de PKs damage - Quantidade de dano. 5. Blocos sobre status Você pode adicionar ou retirar status de determinados itens, veja como: <for> <add stat = "pAtk" order = "0x10" value = "614" /> - Adiciona valores de P. Atk. <add stat = "mAtk" order = "0x10" value = "137" /> - Adiciona valores de M. Atk. <set stat = "baseCrit" order = "0x08" value = "120" /> - Adiciona valores de crítico. <set stat = "atkBaseSpeed" order = "0x08" value = "293" /> - Adiciona valores de Atk Speed. <add stat = "accCombat" order = "0x10" value = "- 4.0000" /> - Adiciona valores de Accuracy. <enchant stat = "pAtk" order = "0x0C" value = "0" /> - Bloco que adiciona uma determinada caracteristica quando enchantando. No caso o valor pAtk, mas pode ser usado mAtk, atkBaseSpeed etc. </for>
  2. 1. Possibilidade de enchants do servidor Code: # Chances de enchant nessa ordem : +1;+2;+3;...;+EnchantMax # Quantidade de elementos deve ser igual a EnchantMax. Isso é, se EnchantMax = 20, aqui deve ter 20 valores definidos. EnchantChancesWeapon = 100;100;100;50;50;33;25;20;14;11;8;6;5;4;3;2;2;1;1;1 EnchantChancesArmor = 100;100;100;50;50;33;25;20;14;11;8;6;5;4;3;2;2;1;1;1 EnchantChancesFullArmor = 100;100;100;100;50;50;33;25;20;14;11;8;6;5;4;3;2;2;1;1 EnchantChancesJewelry = 100;100;100;50;50;33;25;20;14;11;8;6;5;4;3;2;2;1;1;1 2. Como configurar detalhadamente condições para scrolls. Caminho - gameserver\data\enchant_items.xml Descrição principal dos parâmetros e seu valor: id="959" - item id infallible="false/true" - quebrar o item ou voltar para 0 on_fail="CRYSTALIZE/RESET/NONE" - CRYSTALIZE : quebrar com o Crystal . RESET: volta pra zero . NONE: Deixará valor do enchant no mesmo local. chance_bonus="" Bônus adicional ao enchant . 0.2 + 20% grade="" - Item Grade levels min="0" max="20" - Min and Max . Improvement level for a roll and the maximum level of a enchant scroll items_restrict - what sharpens WEAPON or ARMOR. Weapon or Armor. 1. Exemplo do que seria despejado em +3 em um enchant não bem sucedido <scroll id="ID SCROLL AQUI" infallible="false" reset_lvl="3" on_fail="RESET" chance_bonus="0" grade="S"> <levels min="0" max="20" /> <items_restrict type="WEAPON"/> </scroll> 2. Um exemplo de enchant não em +1, e em + how many that for 1 to sharpen. Nela, um exemplo de enchant aumentará em +3 para o valor atual no sucesso. <scroll id="ID DO SCROLL AQUI" infallible="false" reset_lvl="0" increment="3" on_fail="RESET" chance_bonus="0" grade="S"> <levels min="0" max="20" /> <items_restrict type="WEAPON"/> </scroll> 3. Como fazer que o enchant não volte ao seu valor, e deixe a anterior. <scroll id="ID DO SCROLL AQUI" infallible="false" reset_lvl="0" on_fail="NONE" chance_bonus="0" grade="S"> <levels min="0" max="20" /> <items_restrict type="WEAPON"/> </scroll> 4. Como adicionar chance adicional a um scroll de 20%, por exemplo <scroll id="ID DO SCROLL AQUI" infallible="false" reset_lvl="0" on_fail="RESET" chance_bonus="0.2" grade="S"> <levels min="0" max="20" /> <items_restrict type="WEAPON"/> </scroll>
  3. Então cara, a SOURCE da V2 foi disponibilizada a venda após nós migrarmos para outra base, agora nossa pack tá equivalente a Lucera, porém com proteção antihack inclusa. As modificações pagas $$ são o que mantém o projeto ativo e online até os dias de hoje, infelizmente não dá pra fazer tudo grátis.
  4. eu tenho esse arquivo no computador, vou procurar e reupá-lo em breve (assim q eu encontrar)
  5. DreamGuard 3.0 - Sistema de Proteções L2JDream System travada na revisão. Protege contra L2Adrenaline, L2Net, L2phx, L2Tower, L2Walker e outros. Não é possí­vel logar em seu servidor sem a nossa system. Necessário ter uma licença ativa para o funcionamento da proteção. OBS: Caso você teste algum bot e consiga utilizar o mesmo, basta entrar em contato comigo enviando o programa que ele será bloqueado e você receberá a correção para implementar na sua system. Valor : R$ 300,00. Prazos - A partir da confirmação do pagamento entregamos o pacote completo em algumas horas. Formas de pagamento: PicPay, MercadoPago, PIX OU Boleto.
  6. Após fazer o download do executável, dê dois cliques nele para começar a instalação. 1) Na tela de "License Agreement" ("Contrato de Licença"), leia a licença do software e selecione a opção "I accept the license terms" ("Eu aceito os termos da licença") e pressione o botão "Next". 2) Na tela "Choosing a Setup Type" ("Escolha um tipo de configuração"), irá aparecer 5 (cinco) tipos de configurações a serem instaladas: a) Developer Default - escolha esta opção se o computador for usado para desenvolvimento de aplicativos com banco de dados MySQL. Será instalados o MySQL Server (SGBD), MySQL Shell, MySQL Router, MySQL WorkBench, MySQL for Excel, JDBC e ODBC para MySQL, componentes para Visual Studio, entre outros itens de desenvolvimento. b) Server only - escolha esta opção se o computador for um servidor dedicado para Banco de Dados MySQL. Esta opção instala somente o SGBD e os aplicativos servidores. c) Client only - escolha esta opção se o computador for uma máquina cliente de desenvolvimento, ou seja, deseja acessar um servidor MySQL remotamente. Itens como MySQL Shell, MySQL Router, MySQL Workbench, JDBC e ODBC para MySQL e componentes para Visual Studio serão instalados. d) Full - escolha esta opção se deseja instalar todos os itens do catálogo do MySQL: MySQL Server, MySQL Shell, MySQL Router, MySQL Workbench, todos os componentes de conexão e desenvolvimento, além de toda a documentação. e) Custom - escolha esta opção se deseja personalizar a instalação, escolhendo somente os itens necessários. Se o seu computador for Windows 64 bits e deseja instalar algum item de 32 bits, selecione esta opção. 3) Para a maioria dos desenvolvedores, escolher a opção "Developer Default" parece ser a melhor opção. Porém, esta opção instalará vários itens que são desnecessários e que vão ocupar muito espaço no disco. Neste exemplo, iremos escolher a opção "Custom" e selecionar somente os itens necessários: serão instalados somente o MySQL Server, MySQL Workbench e o MySQL Shell. Após isso, pressione o botão "Next". 4) Na tela "Select Products and Features" ("Selecione produtos e recursos"), irá aparecer algumas categorias de produtos disponíveis: MySQL Servers Applications MySQL Connectors Documentation 5) Escolher o MySQL Server. Selecione a categoria "MySQL Servers" e clique no sinal + para expandir as subopções. Escolha as opções MySQL Servers > MySQL Server > MySQL Server 5.7 Se for instalar em um ambiente de 64 bits, escolha o subitem MySQL Server 5.7.19 - X64. Se for instalar em um ambiente de 32 bits, escolha o subitem MySQL Server 5.7.19 - X86. Clique com o ponteiro do mouse na seta para a direita para selecionar o item para instalação. 6) Escolher o MySQL Workbench. Selecione a categoria "Applications" e clique no sinal + para expandir as subopções. Escolha as opções Applications > MySQL Workbench > MySQL Workbench 6.3 > MySQL Workbench 6.3.9 - X64. Clique com o ponteiro do mouse na seta para a direita para selecionar o item para instalação. 7) Escolher o MySQL Shell. Selecione a categoria "Applications" e clique no sinal + para expandir as subopções. Escolha as opções Applications > MySQL Shell > MySQL Shell 1.0 > MySQL Shell 1.0.9 - X64. Clique com o ponteiro do mouse na seta para a direita para selecionar o item para instalação. Após isso, pressione o botão "Next". 8) Na tela "Installation" ("Instalação"), pressione o botão "Execute" ("Executar") para que instalação se inicie. 9) A instalação poderá levar algum tempo dependendo da configuração do seu computador. 10) Após a instalação estar completa, pressione o botão "Next". 11) Na tela "Product Configuration" ("Configuração do Produto"), pressione o botão "Next". 12) Na tela "Type and Networking" ("Tipo e Rede"), escolha a opção "Standalone MySQL Server / Classic MySQL Replication". Em seguida, pressione o botão "Next". 13) Na próxima tela, no item "Server Configuration Type" ("Tipo de Configuração do Servidor"), escolha o "Config Type" ("Tipo de Configuração") como "Development Machine" ("Máquina de desenvolvimento"). Em "Connectivity", ative a opção "TCP/IP" e verifique se o "Port Number" ("Número da Porta") está como 3306. Caso necessite, libere a porta no firewall do Windows escolhendo a opção "Open Firewall port for network access". Desta forma, outros computadores da sua rede e da Internet poderão acessar o MySQL Server da sua máquina. Em seguida, pressione o botão "Next". 14) Na tela "Accounts and Roles" ("Contas e papéis/funções"), digite a senha do usuário "root" que é o administrador do banco de dados MySQL. Tente criar uma senha forte ("strong") que tenha letras maiúsculas, minúsculas, números e sinais de pontuação. Caso queira, pode-se criar uma outra conta no banco de dados pressionando o botão "Add User" ("Adicionar Usuário"). Em seguida, pressione o botão "Next". 15) Na tela "Windows Service", selecione a opção "Configure MySQL Server as a Windows Service" ("Configure o MySQL Server como um serviço Windows") para que o MySQL seja executado em background (segundo plano) como um serviço do Windows. Na opção "Windows Service Name", escolha o nome que o serviço do MySQL Server terá no Windows. Por padrão, o nome será "MySQL57". A opção "Start the MySQL Server at System Startup" fará que o serviço do MySQL seja iniciado todas as vezes que o Windows iniciar. Para usuários que possuem computadores lentos ou que não desejam ocupar a memória com o MySQL todas as vezes que o Windows iniciar, desativem esta opção. No item "Run Windows Service as..." ("Execute o serviço do Windows como..."), mantenha selecionada a opção "Standard System Account" (usar o "System Account" do Windows). Em seguida, pressione o botão "Next". 16) Na tela "Plugins and Extensions" ("Plugins e extensões"), não selecione nada e pressione o botão "Next". 17) Na tela "Apply Configuration" ("Aplicar configurações"), pressione o botão "Execute". 18) Após o instalador configurar o computador com o MySQL, pressione o botão "Finish". 19) Na tela "Product Configuration", pressione o botão "Next". 20) Na tela "Installation Complete" ("Instalação Completa"), selecione os itens que deseja iniciar após a instalação: Start MySQL Workbench after Setup ("Iniciar MySQL Workbench") Start MySQL Shell after Setup ("Iniciar MySQL Shell") Para encerrar a instalação, pressione o botão "Finish".
  7. Bom, a revisão VIP contém os mods e uma system exclusiva que só funcionarão com o seu servidor, caso sua licença seja desativada a system também será desativada evitando assim que outras pessoas possam fazer uso da sua system em outros servidores.. Tutorial para configuração da revisão VIP: Você deverá digitar o seu nome de usuário nas configs localizadas em: game/config/ no arquivo DreamGuard.properties na linha 5 conforme mostra a print abaixo:
  8. Basta substituir os arquivos no seu cliente Lineage II Interlude...
  9. Version 1.0.0

    64 downloads

    PS: Tournament ainda não está funcional (o mesmo virá na próxima pack), pois não deu tempo de terminar as alterações e testes até a presente data... PS²: NECESSÁRIO BAIXAR A GEODATA E A SYSTEM PARA FUNCIONAMENTO ADEQUADO DO SERVIDOR!!! GEODATA: SYSTEM: Tutoriais L2JDream V3: https://l2jdream.club/forum/index.php?/forum/42-tutoriais-l2jdream-v3/ Informações: Requisitos Mínimos: Programas Necessários: Bom uso!

    Free

  10. Version 3.0.11

    72 downloads

    Nova System L2JDream 2021 com engine gráfica refeita, juntamente com a DreamGuard v3.0. A nova system só funcionará na L2JDream V3, as packs antigas L2JDream V2 não irão conectar nessa system e as system antigas não irão conectar na pack L2JDream V3 .. Portanto apenas a pack L2JDream V3 será a nova pack base para essa system.. O suporte à pack L2JDream V2 e à system da antiga DreamGuard 2.0 será descontinuado, portanto atualizem seus servidores para a L2JDream V3!!

    Free

  11. Version 1.0.0

    40 downloads

    A nossa nova Geodata pra L2JDream V3. Este arquivo só funciona pra quem tem a pack L2JDream V3, devido a nossa GeoEngine da pack ser diferente de qualquer outro L2J.

    Free

  12. pronto, ja troquei link pelo meu proprio, o mediafire havia bloqueado acesso por causa do crack acusar virus
  13. Para maior facilidade na hora de configurar seu servidor, segue abaixo os links dos programas corretos para o bom funcionamento: Java JRE 15 - - Programa necessário para o funcionamento da revisão, não sendo aceito em outra versão, para baixar abra o link abaixo. (Para Windows x64). https://www.mediafire.com/file/y2clnz9ss8lggj1/bellsoft-jdk15.0.2+10-windows-amd64.msi/file MySql Server 5.7 - Programa essencial para funcionamento do banco de dados do servidor, para baixar acesse o link abaixo e clique em download no arquivo (mysql-installer-community-5.7.x.msi) o instalador instala ambas as versões x86/x64. https://dev.mysql.com/downloads/mysql/5.7.html Navicat for MySql - Ferramenta para edição no Banco de Dados do servidor sendo indispensável para maior mobilidade e edição do servidor, para baixar acesse o link e selecione a versão x86 ou x64.. https://l2jdream.club/app/download/download/Navicat 11 %2B Crack.rar
  14. Arquivo: Game/data/spawn/spawn.dtd Pré-Exemplo: <spawn name = "[queenant_room]"> <npc id = "29001" count = "1" respawn_cron = "* * * * *" pos = "- 21610 181594 -5720 0" /> </spawn> Você precisa prestar atenção em respawn_cron = "* * * * *" o formato de spawn fisico é apresentado ao Cron - consiste em cinco estrelas OBRIGATÓRIAS. Cada estrela é tempo. Primeiro- Minutos, Horas, Terceiro: Semana, Mês; Quinta - Dia da Semana (1-7) (1 = Domingo, 2 = Segunda.. etc até 7 = Sábado). (ATENÇÃO! Remova completamente respawn = "algo aqui" respawn_rand = "algo aqui" deixe APENAS respawn_cron = "data") Por exemplo: Eu quero colocar a Queen Ant todos os dias às 19:00: Como é a Queen Ant Original: <spawn name = "[queenant_room]"> <npc id = "29001" count = "1" respawn = "129600" respawn_rand = "61200" pos = "- 21610 181594 -5720 0" /> </spawn> Como ficou depois de fazer alterações pro formato atual: <spawn name = "[queenant_room]"> <npc id = "29001" count = "1" respawn_cron = "0 19 * * *" pos = "- 21610 181594 -5720 0" /> </spawn> Assim, apontei para a segunda estrela - este é um relógio, ou seja, Todos os dias, a QA será respawnada às 19:00, mesmo que tenha sido morta às 18:59:59 - regressará às 19:00. Da mesma forma, todo o método descrito funciona com dias, semanas e meses, e assim por diante.
  15. Este sistema foi projetado para implementar muitas ideias ao implementar eventos no jogo. Por exemplo, em um determinado momento, uma zona com uma bandeira de pvp ou qualquer outra liga e gera mobs nesta zona, ou simplesmente ativa a zona. Como exemplo, um evento mais complexo será dado - desabilitar zonas pacíficas em Gludio e habilitar zonas PvP e povoá-las com mobs para o período de atividade desta zona, e ao mesmo tempo fazer um anúncio do lançamento da zona e seu colapso. Em palavras simples, nós ativamos a zona, geramos mobs usando o cron timer e também o usamos para desativar zonas e gerar spawn. E então escolhemos a opção mais simples: Nesta variante, ativamos a zona pvp da zona baium às 19:00 e desligamos às 20:00, enquanto dentro da zona geramos [cron_spawn] um grupo de data/spawn, também fazemos um anúncio sobre como transformar o zona ligada e desligada. Agora consideramos em detalhes: <set name = "[baium_epic_fun]" - a própria zona com a qual trabalhamos. IMPORTANTE * Os nomes das zonas não devem ser iguais!! <set name = "enabled" val = "false" /> - em nosso exemplo, a zona é desabilitada por padrão e só é habilitada por temporizador. <set name = "cronZoneEnablePattern" val = "0 19 * * *" /> - o parâmetro é responsável por ativar a zona no momento que precisamos. Formato CronTab - como compô-lo https://crontab.guru/ <set name = "cronZoneDisablePattern" val = "0 20 * * *" /> - o parâmetro é responsável por desativar a zona no momento que precisarmos. Formato CronTab - como compô-lo https://crontab.guru/ <set name = "cronZoneEnableBroadcastSpawnEvent" val = "[cron_spawn]" /> - Lista de Spawn que será ativada quando a zona for habilitada event_name = "[cron_spawn]" or any other name <set name = "cronZoneDisableBroadcastDespawnEvent" val = "[cron_spawn]" /> - Lista de geração que será desativada quando a zona for habilitada event_name = "[cron_spawn]" or any other name <set name = "cronZoneEnableAnnounceCustomMessage" val = "voicedcommandhandlers.Debug.Enabled" /> - O anúncio que ocorrerá na ativação. Estará em data/strings <set name = "cronZoneDisableAnnounceCustomMessage" val = "voicedcommandhandlers.Debug.Disabled" /> - Anúncio que ocorrerá na desativação. Estará em data/strings *IMPORTANTE* O mesmo não é necessário na zona para usar todos os parâmetros, digamos que você não especifique o anúncio - não terá. Suponha que você não especifique um spawn na zona - ele não estará lá. Não é necessário especificar isso também, Assim como nem cronZoneEnablePattern or cronZoneDisablePattern são necessários, a menos que você os queira usar. <zone name="[baium_epic_fun]" type="fun" > <set name="enabled" val="false" /> <set name="cronZoneEnablePattern" val="0 19 * * *" /> <set name="cronZoneDisablePattern" val="0 20 * * *" /> <set name="cronZoneEnableBroadcastSpawnEvent" val="[cron_spawn]" /> <set name="cronZoneDisableBroadcastDespawnEvent" val="[cron_spawn]" /> <set name="cronZoneEnableAnnounceCustomMessage" val="voicedcommandhandlers.Debug.Enabled" /> <set name="cronZoneDisableAnnounceCustomMessage" val="voicedcommandhandlers.Debug.Disabled" /> <polygon> <coords loc="116616 17576 10032 10232" /> <coords loc="117064 16552 10032 10232" /> <coords loc="117032 15592 10032 10232" /> <coords loc="116664 14632 10032 10232" /> <coords loc="116024 14008 10032 10232" /> <coords loc="115128 13640 10032 10232" /> <coords loc="114136 13624 10032 10232" /> <coords loc="113256 13992 10032 10232" /> <coords loc="112568 14664 10032 10232" /> <coords loc="112216 15592 10032 10232" /> <coords loc="112216 16552 10032 10232" /> <coords loc="112600 17432 10032 10232" /> <coords loc="113288 18120 10032 10232" /> <coords loc="114152 18472 10032 10232" /> <coords loc="115144 18488 10032 10232" /> <coords loc="116152 18024 10032 10232" /> </polygon> </zone> Exemplo de Spawn: <spawn name="[custom_spawn]" event_name="[cron_spawn]"> <npc id="20001" count="1" respawn="60" pos="114856 16616 10080 38521" /> <npc id="20001" count="1" respawn="60" pos="114636 16443 10080 40014" /> <npc id="20001" count="1" respawn="60" pos="114504 16168 10080 46038" /> <npc id="20001" count="1" respawn="60" pos="114520 16040 10080 50449" /> <npc id="20001" count="1" respawn="60" pos="114616 15944 10080 3355" /> <npc id="20001" count="1" respawn="60" pos="114877 16012 10080 1875" /> <npc id="20001" count="1" respawn="60" pos="115024 16105 10080 7805" /> <npc id="20001" count="1" respawn="60" pos="115278 16421 10080 5636" /> <npc id="20001" count="1" respawn="60" pos="115416 16200 10080 46871" /> <npc id="20001" count="1" respawn="60" pos="115328 16074 10080 40959" /> </spawn> 2) Agora estamos considerando uma opção mais difícil, apertar os cintos de segurança. Estamos fazendo uma desativação completa de zonas pacíficas na cidade de Gludio, tornando-a uma zona PvP, desparecendo NPCs pacíficos e gerando Mobs. Então ligamos a zona pacífica, desligamos os mobs e geramos NPCs pacíficos.. E isso tudo vai iniciar as 16:00 e terminar as 16:30. Na cidade de Gludio tem 2 zonas que a desenhamos [guldiocastle_town_peace1] and [guldiocastle_town_peace2] e então desativamos no período do evento e ligamos após <set name = "cronZoneDisablePattern" val = "0 16 * * *" /> - Desativar a zona de Paz [guldiocastle_town_peace1] and [guldiocastle_town_peace2] <set name = "cronZoneEnablePattern" val = "31 16 * * *" /> - Ativar a Zona de Paz [guldiocastle_town_peace1] and [guldiocastle_town_peace2] Despawn all peaceful NPCs - e então as piruetas começam, precisamos reunir todos os NPCs pacíficos em um grupo e atribuí-lo um event_name = "[gludio_peace_npc]" no Spawn ele Despawna todos os NPCs No fim, anunciamos que o evento acabou - в data/strings add the line zone_gludio_pvp.Disable=The Town of Gludo has become peaceful! Exemplo: <zone name="[guldiocastle_town_peace1]" type="peace_zone" > <set name="cronZoneDisablePattern" val="0 16 * * *" /> <set name="cronZoneEnablePattern" val="31 16 * * *" /> <set name="cronZoneDisableBroadcastDespawnEvent" val="[gludio_peace_npc]" /> <set name="cronZoneDisableAnnounceCustomMessage" val="zone_gludio_pvp.Disable" /> <polygon> <coords loc="-11998 123905 -3245 -2745" /> <coords loc="-12880 126192 -3245 -2745" /> <coords loc="-13928 126485 -3245 -2745" /> <coords loc="-14408 126484 -3245 -2745" /> <coords loc="-15239 126174 -3245 -2745" /> <coords loc="-16120 125367 -3245 -2745" /> <coords loc="-16551 124468 -3245 -2745" /> <coords loc="-16550 123911 -3245 -2745" /> <coords loc="-16509 123323 -3245 -2745" /> <coords loc="-14638 122381 -3245 -2745" /> <coords loc="-12022 122270 -3245 -2745" /> </polygon> </zone> <zone name="[guldiocastle_town_peace2]" type="peace_zone" > <set name="cronZoneDisablePattern" val="0 16 * * *" /> <set name="cronZoneEnablePattern" val="30 16 * * *" /> <polygon> <coords loc="-14956 121115 -3156 -2656" /> <coords loc="-12670 121093 -3156 -2656" /> <coords loc="-12021 121755 -3156 -2656" /> <coords loc="-12019 123005 -3156 -2656" /> <coords loc="-15400 123009 -3156 -2656" /> </polygon> </zone> Agora nós precisamos ativar as zonas PvP ao invés de desativar as zonas de Paz: <set name = "cronZoneEnablePattern" val = "1 16 * * *" /> -ativar zonas de pvp [guldiocastle_town_pvp1] and [guldiocastle_town_pvp2] <set name = "cronZoneEnablePattern" val = "31 16 * * *" /> - ativar zonas de paz [guldiocastle_town_pvp1] and [guldiocastle_town_pvp2] Spawna todos mobs - crie seu proprio grupo de mobs para spawnar com o nome do evento = "[gludio_pvp_mobs]" Anunciamos que começou o evento: - в data/strings add the line zone_gludio_pvp.Enable=The city of Gludo has become unsafe! Fight monsters and players for a reward <zone name="[guldiocastle_town_pvp1]" type="battle_zone" > <set name="cronZoneEnablePattern" val="1 16 * * *" /> <set name="cronZoneDisablePattern" val="30 16 * * *" /> <set name="cronZoneEnableBroadcastSpawnEvent" val="[gludio_pvp_mobs]" /> <set name="cronZoneEnableAnnounceCustomMessage" val="zone_gludio_pvp.Enable" /> <polygon> <coords loc="-11998 123905 -3245 -2745" /> <coords loc="-12880 126192 -3245 -2745" /> <coords loc="-13928 126485 -3245 -2745" /> <coords loc="-14408 126484 -3245 -2745" /> <coords loc="-15239 126174 -3245 -2745" /> <coords loc="-16120 125367 -3245 -2745" /> <coords loc="-16551 124468 -3245 -2745" /> <coords loc="-16550 123911 -3245 -2745" /> <coords loc="-16509 123323 -3245 -2745" /> <coords loc="-14638 122381 -3245 -2745" /> <coords loc="-12022 122270 -3245 -2745" /> </polygon> </zone> <zone name="[guldiocastle_town_pvp2]" type="battle_zone" > <set name="cronZoneEnablePattern" val="1 16 * * *" /> <set name="cronZoneDisablePattern" val="30 16 * * *" /> <polygon> <coords loc="-14956 121115 -3156 -2656" /> <coords loc="-12670 121093 -3156 -2656" /> <coords loc="-12021 121755 -3156 -2656" /> <coords loc="-12019 123005 -3156 -2656" /> <coords loc="-15400 123009 -3156 -2656" /> </polygon> </zone> Todo o conjunto de parâmetros: "cronZoneEnablePattern" - Quando a Zona ativa. Exemplo <set name = "cronZoneEnablePattern" val = "0 18 * * *" /> "cronZoneEnableBroadcastSpawnEvent" - Evento para Spawnar quando a zona for ATIVADA<set name = "cronZoneEnableBroadcastSpawnEvent" val = "[gludio_peace_npc]" /> "cronZoneEnableBroadcastDespawnEvent" - Evento para DESpawnar quando a zona for ATIVADA <set name = "cronZoneEnableBroadcastSpawnEvent" val = "[gludio_pvp_mobs]" /> "cronZoneEnableAnnounceCustomMessage" - Anúncio para quando ativar a Zona <set name="cronZoneEnableAnnounceCustomMessage" val="zone_gludio_pvp.Enable" /> "cronZoneDisablePattern" - Quando a Zona Desliga. Example <set name="cronZoneEnablePattern" val="0 19 * * *" /> "cronZoneDisableBroadcastSpawnEvent" - Evento para DESpawnar os NPCS ativados pela zona <set name="cronZoneEnableBroadcastSpawnEvent" val="[gludio_peace_npc]" /> "cronZoneDisableBroadcastDespawnEvent" - Evento para DESpawnar quando a zona for desativada <set name="cronZoneEnableBroadcastSpawnEvent" val="[gludio_pvp_mobs]" /> "cronZoneDisableAnnounceCustomMessage" - Anúncio para quando desativar a Zona <set name="cronZoneEnableAnnounceCustomMessage" val="zone_gludio_pvp.Disable" /> Todo o sistema é limitado apenas pela sua imaginação, com a ajuda desta ferramenta você pode fazer qualquer evento do jogo, ativar zonas e gerar, girar zonas do seu jeito e o que vier à sua mente..