Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation since 02/19/2019 in all areas

  1. 3 points
    Launcher feito 100% por mim Ele contém Login(obrigatório), atualizador, gerenciamento de conta, doações e vote por pontos sem a necessidade de ir ao site. Aceito criticas construtivas e sugestões Quando atualizado
  2. 2 points
    Download do instalador exe SOCERO; http://rathena.cronus-emulator.com/downloads/install_socero_v1.exe Download do instalador zipado SOCERO; http://rathena.cronus-emulator.com/downloads/install_socero_v1.zip Mega - Mirror do instalador EXE 1: https://mega.nz/#!FkhlTKTI!cP5rccMch-7xxeDg4jyleqpEKiwdNoU_gSZvxfimN-w Medifire - Mirror do instalador EXE 2: https://www.mediafire.com/file/ndva9rfobdkguzq/install_socero_v1.exe/file obs: Lembrando que se você quiser, pode apenas baixar separadamente; Data e Hexed, jogar dentro de uma pasta vazia e logar, porém é recomendável o uso do instalador, pois o mesmo irá usar o ThorPatcher e com isso, enviaremos correções automáticas para a data quando necessário. Diff Hexed: https://pastebin.com/DFAEJMwq Hexed: https://github.com/Cronus-Emulator/-SOCERO-hexed Pasta Data: https://github.com/Cronus-Emulator/-SOCERO-data Emulador Base: https://github.com/rathena/rathena - > Emulador usado por nós: https://github.com/Cronus-Emulator/-SOCERO-emulador FluxCP Base: https://github.com/rathena/FluxCP - >FluxCP usado por nós: https://github.com/Cronus-Emulator/-SOCERO-FluxCP ThorPatcher: https://github.com/Cronus-Emulator/-SOCERO-Thor Agradecimento especial ao membro; @Makarov Law da Makarov Serviços, pelo Diff, Hexed e Pasta data doada para o nosso servidor.
  3. 2 points
    Oque acharam? Se a equipe do Socero curtir posso programar. @JulioCF
  4. 2 points
    Olá, sou desenvolvedora de sprites nova no ramo. Esses são alguns dos meus trabalhos :3 Venha conhecer o meu deviantart, ou a minha page no face e encomendar aquela sprite que você sempre sonhou em ter no seu servidor mas nunca encontrou em lugar algum Aceito encomendas de sprite de qualquer tema.
  5. 2 points
    Eu estava com um projeto de pokemon ragnarok, porém eu desisti de continuar, então segue os link do que foi feito: https://mega.nz/#F!uthQRCzT!SjRedhVgPseZNj7dSaUw6Q Neste link contém uma série de materiais que eu reuni e outros feitos por mim mesmo. O máximo que você vai encontrar aqui é materiais para primeira geração. Reunidos: Sprite e Gifs de pokemons das versões Black/White e X/Y, pode ser utilizados para fazer as sprites e act num possível jogo de pokemon. Sprites e Gifs de NPCs de jogos de pokemon. Sprites de mapas do jogo pokemon Fire Red para auxiliar na criação de mapas. Feitos por mim: Mapas das cidades: Pallet Viridian Pewter Cerulean Mapas das Rotas: rota 1 rota 2 Floresta de Viridian Rota 3 Mt. Moon Rota 4 Rota 24 Rota 25 Modelos de casas: todos os edificios presentes nos mapas criados, isso inclui 3 modelos de GYM, centro pokemon, Market, e os outros prédios, tudo feito customizado na ferramenta Sketchup A partes internas das casas de Pallet, o interior dos centro pokemon - Ainda não convertido para formato Rag (posso fazer um tutorial de como criar casas no sketchup e converter pra o formato do rag) Itens: Pokebolas prontas para uso: Sprites icone carta do TCG oficial pokemon redimensionada imagem do visual collection dos items icones de sexo do pokemon e dos leveis 1-100 Segue anexado algumas imagens exemplo (centro pokemon piso inferior e lab do professor carvalho modelados no sketchup) do que você vai encontrar no link:
  6. 1 point
  7. 1 point
    por isso a comunidade ta como ta @topic faça (caso queira) uma versão simples com opção de trocar a skin e tudo certo.
  8. 1 point
  9. 1 point
    Aquela invocação anual aos membros "mais antigos" da comunidade.... ( more than 8years) Será que ainda esta todo mundo vivo?
  10. 1 point
    Lógico que se tu pegar o ep pre-re que tem do encontro com o desconhecido, vai ter um emulador quase full pt-br... Porém, com muitos bugs que foram consertados em outras versões. Eu indicaria usar um emulador atual, e ir modificando o que precisa pra ter o episódio pre-re instalado e pt-br.
  11. 1 point
    @Dunkerr ele disponibilizou
  12. 1 point
    Você como "Atual administrador" invés de dar uma resposta sem solução poderia ter me explicado ao invés de me criticar @Edit Se tiver como me dar dicas de como te criticar pra tomar ban e depois eu me desculpar pra ser desbanido e eu ganhar uma tarja te agradeço OBS: Queria baixar algumas coisas
  13. 1 point
    boa noite, tudo certo agora
  14. 1 point
    Download aqui https://github.com/P4RC7110/SOCERO-THOR-PATCHER/
  15. 1 point
    Previsão de estreia: 05/04/2019 as 20h Isso ai amiguinhos, irá nascer(finalmente) o Servidor Oficial Cronus-Emulador Ragnarok Online(SOCERO) Segue a ideia: Servidor full original kRO Based, somente facilitando nas rates indo para o nível mid-rates e com sistema oficial vip. Ta bom tiu, mas pra que? A ideia claro, ajudar na arrecadação de fundos para o Cronus-Emulator e todos seus sistemas. E claro, apresentar a situação atual do emulador. Quase tudo que for adicionado e usado ao Emulador/Servidor, será liberado para download na seção [+]Membros. Vai ser praticamente um servidor público, só não é possível liberar tudo, pois estamos também, se tratando de informações pessoais das contas dos usuários. - Informações - Emulador rAthena Servidor CRONUS Episódio Oficial e atual: O mais atualizado possível Servidor: Renew, ou seja, oficial Rates: 100x baseEXP 100x jobEXP 10x quests Durante a semana, de 00:00hs de Domingo para Segunda até 00:00hs de Sexta para Sábado, ou seja. Durante os 05 dias da semana. Terá uma pequena quest no centro de Prontera. Onde você entregando alguns itens e alguns destes em determinadas quantidades. Será possível até três vezes por dia. Você conseguirá dobrar as rates de todo o servidor, indo dos oficiais 100x para 200x. Tendo a durabilidade deste efeito por 60 minutos. Finais de semana: a partir das 00:00h de Sexta para Sábado, indo até as 00:00h de Domingo para Segunda, as rates bEXP e jEXP vão dos oficiais 100x para 200x - Digite @rates nos finais de semana e confira. A quantidade pode ser maior caso esteja acontecendo algum evento extra no servidor. Mas oficialmente, segue o informado: Drops comuns 25x Drops comuns MVP's 10x . ---------------------------------------------- Drops de itens de cura comuns 25x Drops de itens de cura MVP's 10x . ---------------------------------------------- Drops de itens usáveis comuns 25x Drops de itens usáveis MVP's 10x . ---------------------------------------------- Drops de equipamentos comuns 25x Drops de equipamentos MVP's 10x . ---------------------------------------------- Drops de cartas comuns 10x(0.10%) - Não afetado por qualquer bônus extra do servidor. Drops de cartas MVP's oficial 5x(0.05%) - Não afetado por qualquer bônus extra do servidor. .----------------------------------------------- Level Máximo: Oficial Atributos: Oficial Battleground: sim, oficial Dual Login: Liberado no servidor, bloqueado em mapas de WoE e BG, quando for ativada. Sistema VIP - Oficial do Ragnarok ROP's: Oficiais do Ragnarok Custons Itens: Não, nenhum. Nem itens, nem sistema, nem nada. War of Emperium (WoE): A escolher horários, dias e castelos. Sistema VIP oficial do Ragnarok e rates de EXP 150x. Servidor com pouca tradução, vamos aplicando com o passar do tempo. Segue a lista de NPC's para todos: Resetadora paga Rent: entrega o carrinho, peco, falcão e afins Habilidades de platina Veia lokona que tira cartas com 50% de chance de falha. Curandeira paga Teletransportadora E outros.. Comandos públicos: - commands - mi - ii - rates - whodrops - hominfo - refresh - noask - noks - channel - duel - invite - accept - reject - leave Informações sobre vip's e doações:
  16. 1 point
    Precisando de ajuda estamos ae, mas isso não quer dizer que eu vá ajudar #farpas
  17. 1 point
    Se o jogador sair do mapa este npc timer continuará rodando e dando as mensagens. Existem diversas formas de detectar isto, porem para se encaixar neste script o mais simples será colocar a checagem do mapa durante cada mensagem: tha_t01,1,1,5 script Contagem Regressiva 1_M_SIZ,{ OnPCLoadMapEvent: initnpctimer; getmapxy @Mapa$,@x,@y,0; if(@Mapa$ != "tha_t01") // caso dê erro, retire os " { stopnpctimer; announce "Seu tempo no mapa tha_t01 foi resetado!",bc_self,0; end; } announce ""+strcharinfo(0)+" Seu tempo no mapa restrito iniciou e acaba em 2 horas!",bc_map,0xA020F0; OnTimer3600000; // 60 minutos getmapxy @Mapa$,@x,@y,0; if(@Mapa$ != "tha_t01") { stopnpctimer; end; } announce ""+strcharinfo(0)+" Seu tempo no mapa restrito iniciou e acaba em 1 hora!",bc_map,0xA020F0; OnTimer1800000; // 30 minutos getmapxy @Mapa$,@x,@y,0; if(@Mapa$ != "tha_t01") { stopnpctimer; end; } announce ""+strcharinfo(0)+" você tem 30 minutos no mapa restrito!",bc_map,0x00FF00; OnTimer1800000; // 30 minutos getmapxy @Mapa$,@x,@y,0; if(@Mapa$ != "tha_t01") { stopnpctimer; end; } announce ""+strcharinfo(0)+" Falta 1 minuto para terminar seu tempo no mapa!",bc_map,0x00FF00; OnTimer60000; // 1 minuto getmapxy @Mapa$,@x,@y,0; if(@Mapa$ != "tha_t01") { stopnpctimer; end; } warp "SavePoint",0,0; // Teleporta o jogador para o ponto salvo. stopnpctimer; end; } tha_t01 mapflag loadevent Não ficou pra lá de bonito este script, existem formas melhores de se pensar nisto, porem para o teu caso deve resolver.
  18. 1 point
    tha_t01,1,1,5 script Contagem Regressiva 1_M_SIZ,{ OnPCLoadMapEvent: initnpctimer; getmapxy @Mapa$,@x,@y,0; if(@Mapa$ != "tha_t01") // caso dê erro, retire os " { stopnpctimer; announce "Seu tempo no mapa tha_t01 foi resetado!",bc_self,0; end; } announce ""+strcharinfo(0)+" Seu tempo no mapa restrito iniciou e acaba em 2 horas!",bc_map,0xA020F0; OnTimer3600000; // 60 minutos announce ""+strcharinfo(0)+" Seu tempo no mapa restrito iniciou e acaba em 1 hora!",bc_map,0xA020F0; OnTimer1800000; // 30 minutos announce ""+strcharinfo(0)+" você tem 30 minutos no mapa restrito!",bc_map,0x00FF00; OnTimer1800000; // 30 minutos announce ""+strcharinfo(0)+" Falta 1 minuto para terminar seu tempo no mapa!",bc_map,0x00FF00; OnTimer60000; // 1 minuto warp "SavePoint",0,0; // Teleporta o jogador para o ponto salvo. stopnpctimer; end; } tha_t01 mapflag loadevent OBS: não testei...
  19. 1 point
    Muito Obrigada. Ficarei no aguardo :3
  20. 1 point
    Essa conta mestra é só de uso do emulador para ligar ... Deve criar uma conta nova com id 2000000 e a próxima 2000001 e assim por diante
  21. 1 point
    o "sex" tem que ser S.
  22. 1 point
    Eu tenho no PC a versão 385.69-desktop-win10-64bit, tirei a nova e instalei essa.
  23. 1 point
    alanzin2303, Realmente no fórum há diversos sistemas próprios e adaptados para isso, mas respondendo a sua dúvida, basta adicionar essa linha no script de algum item. dispbottom "Foi adicionado 5 dias de acesso VIP à sua conta. Por favor, relogue para atualizá-los."; query_sql "UPDATE `login` SET `group_id` = '1', `vip_days` = DATE_ADD(`vip_days`,INTERVAL 5 DAY) WHERE `account_id`="+getcharid(3); Para alterar a quantidade de dias a serem adicionados, basta alterar a parte de INTERVAL >> INSIRA O NÚMERO DE DIAS AQUI << DAY. É basicamente isso, abraços.
  24. 1 point
    Old que nunca foi banido não é old
  25. 1 point
  26. 1 point
    Vou passar o link ai para ti eu tenho acho que uns 10.000 custons aqui que n tem no forum Link Video 1 Link Video 2 Alguns sim são repetidos outros pouca gente tem outros ninguém tem
  27. 1 point
  28. 1 point
  29. 1 point
    Coé galerinha da bad. @pecado te amo meu gostoso.
  30. 1 point
    eu desde 2008 contribuindo com a comunidade (mais ou menos)
  31. 1 point
    dezinho22, Conforme explicado pelo JulioCF, basta você adicionar o comando no NPC desejado, abaixo tem um exemplo que executa o comando apenas quando há alguma coisa a ser consertada no inventário. if(getbrokenid(1)) atcommand "@repairall"; Abraços.
  32. 1 point
    Opa olha eu aqui, boa tarde pessoal
  33. 1 point
    Não sou criador, nem detenho direitos autorais, apenas estou disponibilizando as asas. Créditos aos seus respectivos donos/criadiores. 301 302 303 304 305 306 Asa 301 Asa 302 Asa 303 Asa 304 Asa 305 Asa 306
  34. 1 point
    Basicamente você vai em item_db procura a linha 4128,Carta_Besouro-Ladrão_Dourado,Carta Besouro-Ladrão Dourado,6,20,,10,,,,,,,,32,,,,,{ bonus bNoMagicDamage,100; bonus bUseSPrate,100; },{},{} se coloca: 4128,Carta_Besouro-Ladrão_Dourado,Carta Besouro-Ladrão Dourado,6,20,,10,,,,,,,,32,,,,,{ bonus bNoMagicDamage,50; bonus bUseSPrate,50; },{},{}
  35. 1 point
    Criando habilidades ou clonando-as Introdução Uma grande área onde os jogadores têm dificuldade é adicionar novas habilidades para a fonte e o cliente. Abaixo será documentado como implementar essas novas habilidades. A habilidade A habilidade que estaremos trabalhando é simples. Nome: Earth Bolt Level Máx: 10 Tipo: Ativa Custo de SP: 20 + 5*SkillLV Alvo: 1 inimigo Tempo de conjuração: 2 seg Delay: 1 seg Duração: Instantânea Descrição: Causa dano mágico de elemento terra ao inimigo, conforme level da habilidade, a 150% MATK por hit. Basicamente, essa habilidade deve atingir 1 inimigo e lidar com 10 hits de 150% MATK, propriedade elemental da Terra e deve ser baseada em dano mágico. Abra /src/map/skill.h Role para baixo até encontrar EL_STONE_HAMMER, EL_ROCK_CRUSHER, EL_ROCK_CRUSHER_ATK, EL_STONE_RAIN, Depois daqui é onde nós adicionamos quaisquer habilidades adicionais. É melhor dar às habilidades um ID personalizado para começar. Então, vamos adicionar a nossa habilidade "Earth Bolt". Depois disso, adicione MG_EARTHBOLT = 8443, MG_ definição significa "Mago", você vai trabalhar para fora as siglas como você percorrer as habilidades. Definimos a base da habilidade. Como você pode ver, o id de habilidade é definido como '8443' desde Stone Elemental's Stone Rain é definido como 8442 (e é o última habilidade de jogador acessível). Abra /src/map/skill.c Esse arquivo é onde definimos as implementações de habilidades reais. Para habilidades de alvo único, todo o processamento dessa habilidade irá em skill_castend_damage_id (para habilidades prejudiciais) ou skill_castend_nodamage_id (para skills que não causam danos). Habilidades baseadas em mágica ou mágia. Como o Earth Bolt é baseado em danos, encontre a função skill_castend_damage_id e localize: case AB_RENOVATIO: case AB_HIGHNESSHEAL: case AB_DUPLELIGHT_MAGIC: case WM_METALICSOUND: case MH_ERASER_CUTTER: case KO_KAIHOU: A razão pela qual estaremos colocando a case para Earth Bolt aqui é porque: skill->attack(BF_MAGIC,src,src,bl,skill_id,skill_lv,tick,flag); A definição BF_MAGIC significa que a habilidade é baseada em magia e deve ser calculada sob cálculos de batalha mágica. Assim, após a case NJ_HUUJIN adicionar: case MG_EARTHBOLT: Habilidades baseadas em armas No caso de querer adicionar uma habilidade que é baseada em Arma, em vez de Magia, encontre: case WM_GREAT_ECHO: case GN_SLINGITEM_RANGEMELEEATK: case KO_JYUMONJIKIRI: case KO_SETSUDAN: case GC_DARKCROW: case LG_OVERBRAND_BRANDISH: case LG_OVERBRAND: E adicione a case depois disso. Se quiséssemos que o Earth Bolt fosse baseado em armas, ficaria assim: case WM_GREAT_ECHO: case GN_SLINGITEM_RANGEMELEEATK: case KO_JYUMONJIKIRI: case KO_SETSUDAN: case GC_DARKCROW: case LG_OVERBRAND_BRANDISH: case LG_OVERBRAND: case MG_EARTHBOLT: No entanto, vamos manter a função Magic em vez disso. Abra /src/map/battle.c Nesta função, todos os cálculos de danos principais são realizados. E em funções separadas, as % modificadoras para as habilidades são armazenados. Portanto, para os nossos danos de 150%, adicionamos o extra de 50% (já que 100% é o padrão) na função apropriada. Ataques baseado em mágica Para ataques baseados em Magia, os modificadores são encontrados em battle_calc_magic_attack. Basta encontrar: case NPC_EARTHQUAKE: skillratio += 100 +100*skill_lv +100*(skill_lv/2); break; E adicione o modificador de danos abaixo. Como Earth Bolt é baseado em magia, nós adicionaremos-a aqui. case MG_EARTHBOLT: skillratio += 50; break; Isso agora significa que o Earth Bolt causará dano mágico de 150% MATK. Átaques baseado em armas Para ataques baseados em armas, os modificadores são encontrados em battle_calc_weapon_attack. Basta encontrar: case NPC_VAMPIRE_GIFT: skillratio += ((skill_lv-1)%5+1)*100; break; E adicione seu modificador de dano lá. Por exemplo, se o Earth Bolt fosse baseado em Weapon, acrescentaríamos: case MG_EARTHBOLT: skillratio += 50; break; O + = 50 significa simplesmente "Adicionar 50% ao 100%" para danos de ATK de 150%. Suporte a banco de dados de habilidades Tecnicamente falando, a base da habilidade está agora correta. Claro, se você quiser implementar habilidades mais complexas, há muito mais para isso. A seção separada será criada no futuro para isso. Mas, por enquanto, precisamos implementar as entradas do banco de dados de habilidades. Os arquivos abaixo podem ser encontrados em db / (pre / re) /. Apenas um de ambos (pre / re) precisa ser atualizado, é o qual você usa em seu servidor. Nessa parte é sempre aconselhável que você tenha alguma habilidade escolhida para se utilizar como base, pois facilitará muito a criação e/ou clonagem de sua habilidade. Aqui há diferenças, então dependendo do emulador usado, cada forma será de um jeito, caso o seu emulador seja alguns dos abaixos, continue. Caso não, pule para a parte: ** p/ Hercules. ** p/ rAthena, brAthena, Cronus. Skill_db.txt Para a nossa habilidade Earth Bolt, podemos agora digitar o seguinte: Estrutura: // ID,Alcance,Dano,Inf,Elemento,Nk,Splash,MaxLv,ListNum,CastCancel,ChanceDefCast,Inf2,MaxCount,TipoSkill,BlowCount,Nome,Descrição // 01 ID // 02 Alcance (Habilidades de combo não verificam pelo alcance // Se o alcance < 5, então a habilidade é considerada melee) // 03 Dano (8- dano repetitivo, 6- dano único) // 04 inf (0- passivo, 1- inimigo, 2- local, 4- si próprio, 16- amigo, 32- armadilha) // 05 Elemento (0 - neutro, 1 - água, 2 - terra, 3 - fogo, 4 - vento, 5 - veneno, // 6 - sagrado, 7 - sombrio, 8 - fantasma, 9 - morto-vivo, -1 - elemento da arma // -2 - elemento endowed, -3 - elemento aleatório.) // 06 nk (Propriedade de Dano das Habilidades): // 0x01 - habilidade sem dano // 0x02 - tem área visual (necessária modificação na source) // 0x04 - dano dividido entre os alvos (necessário 0x02 em ordem de trabalho) // 0x08 - habilidade ignora dano bônus dado por cartas de quem a conjura // 0x10 - habilidade ignora bônus elementais // 0x20 - habilidade ignora a defesa do alvo (tipo variado sempre ingnora) // 0x40 - habilidade ignora a esquiva do alvo (tipo mágido sempre ignora) // 0x80 - habilidade ignora defesa do alvo dada por cartas // 07 Área de efeito (-1 para wide) // 08 Nível máximo da habilidade // 09 Número de danos (Quando positivo, acresenta o dano por dano, // valores negativos apenas mostraram o número de acertos, sem aumentar os danos totais) // 10 A conjuração pode ser cancelada? // 11 Redução de defesa durante conjuração. // 12 inf2 (Informações de Habilidades 2): // 0x0001- habilidade de quest // 0x0002- habilidade de npc // 0x0004- habilidade de casamento // 0x0008- habilidade de espírito // 0x0010- habilidade de clã // 0x0020- habilidade de música // 0x0040- habilidade de dueto // 0x0080- armadilha // 0x0100- habilidade que o alvo é quem invoca // 0x0200- não pode ser usada em si próprio // 0x0400- apenas pode ser usada em membros de grupo // 0x0800- apenas pode ser usada em membros de clã // 0x1000- não pode ser usada em inimigos // 0x2000- habilidade ignora proteção terrestre (exemplo: Chuva de Flechas) // 0x4000- chorus skill // 13 maxcount: Quantidade máxima de habilidades colocadas no chão. // player_land_skill_limit/monster_land_skill_limit está ativo. Para Habilidades // que atacam usando um caminho, este é o comprimento do caminho a ser utilizado. // 14 Tipo de Ataque (nenhum, arma, magia, misc) // 15 Blowcount (amount of tiles skill knockbacks) // 16 Nome // 17 Descrição //=================================================================*/ 8443,5,8,1,2,0,0,10,1:2:3:4:5:6:7:8:9:10,yes,0,0,0,magic, 0, MG_EARTHBOLT, Earth Bolt Isso define que: Earth Bolt tem um intervalo de 5 células, bate várias vezes, é elemento da Terra e alvos 1 inimigo. Ele pode ser interrompido, e é de dano de tipo mágico. A quantidade de acessos aumenta em 1 em cada nível, com um nível máximo de 10. Skill_cast_db.txt Para a nossa habilidade Earth Bolt, podemos agora digitar o seguinte: Estrutura: // SkillID,TempoConjuracao,AfterCastActDelay,AfterCastWalkDelay,Duracao1,Duracao2,Cool Down,Tempo de Cast Fixo //== Explanando: // TempoConjuracao: Tempo para lançar esta habilidade, em milissegundos. // AfterCastActDelay: Atraso "normal",o personagem não pode usar habilidades,em milésimos de segundo. // AfterCastWalkDleay: Tempo necessário para que o personagem possa mover-se novamente, em milésimos de segundo. // Duracao1 / Duracao2: Geralmente, o tempo ultilizado pela habilidade, em alguns casos é usado para salvar dados especiais. // Cool Down: Tempo necessário até que o personagem possa voltar a usar essa habilidade, em milésimos de segundo. // Tempo de Cast Fixo: Tempo de execução das habilidades em milissegundos (quando 0, usa-se 20% do tempo de cast e menor que 0 significa que não há tempo de cast fixo) //== Extra // Em todos os campos você pode usar ":" como delimitador de valores específicos do nível, // - Exemplo usando SM_PROVOKE // - Original:6,0,0,0,30000,0,1000 // - Modificado:6,0,0,0,30000,0,1000:2500:3000:etc // - Faz no nível 1 ter 1000 (1s) cool down, lvl 2 2500 (2.5s), lvl 3 3000, e assim por diante. //========================================== 8443,2000,1,000,0,0,0 Isso define que: Earth Bolt tem um segundo tempo de ligação e um tempo de atraso de 1 segundo. Não há atraso de caminhada após o lançamento. Skill_require_db.txt Para o nosso Earth Bolt, podemos agora digitar o seguinte: Estrutura: // SkillID,HPCost,MaxHPTrigger,SPCost,HPRateCost,SPRateCost,ZenyCost,RequiredWeapons,RequiredAmmoTypes,RequiredAmmoAmount,RequiredState,SpiritSphereCost,RequiredItemID1,RequiredItemAmount1,RequiredItemID2,RequiredItemAmount2,RequiredItemID3,RequiredItemAmount3,RequiredItemID4,RequiredItemAmount4,RequiredItemID5,RequiredItemAmount5,RequiredItemID6,RequiredItemAmount6,RequiredItemID7,RequiredItemAmount7,RequiredItemID8,RequiredItemAmount8,RequiredItemID9,RequiredItemAmount9,RequiredItemID10,RequiredItemAmount10 // // 01 ID // 02 HP cost // 03 Max HP trigger // 04 SP cost // 05 HP rate // If positive, it is a percent of your current hp, otherwise it is a percent of your max hp. // 06 SP rate // If positive, it is a percent of your current sp, otherwise it is a percent of your max sp. // 07 Zeny cost // 08 Required Weapon // See doc/item_db.txt for weapon types // 99 any weapon **includes bare fists** // To include more than one weapon type use type1:type2:type3 // 09 Required Ammo // See doc/item_db.txt for ammo types // 99 any ammo type // To include more than one ammo type use type1:type2:type3 // 10 Required ammo ammount // 11 Required State // none = Nothing special // move_enable = Requires to be able to move // recover_weight_rate = Requires to be less than 50% weight // water = Requires to be standing on a water cell // cart = Requires a Pushcart // riding = Requires to ride either a peco or a dragon // falcon = Requires a Falcon // sight = Requires Sight skill activated // hiding = Requires Hiding skill activated // cloaking = Requires Cloaking skill activated // explosionspirits = Requires Fury skill activated // cartboost = Requires a Pushcart and Cart Boost skill activated // shield = Requires a 0,shield equipped // warg = Requires a Warg // dragon = Requires to ride a Dragon // ridingwarg = Requires to ride a Warg // mado = Requires to have an active mado // poisonweapon = Requires to be under Poisoning Weapon. // rollingcutter = Requires at least one Rotation Counter from Rolling Cutter. // elementalspirit = Requires to have an Elemental Spirit summoned. // mh_fighting = Requires Eleanor fighthing mode // mh_grappling = Requires Eleanor grappling mode // peco = Requires riding a peco // 12 Spirit sphere cos 8443,0,0,25: 30: 35: 40: 45: 50: 55: 60: 65: 70,0,0,0,0,0,0,0,0,0,0,0,0, 0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 Isso define que: Earth Bolt requer 25 SP no nível 1, 30 SP no nível 2 .. 70 SP no nível 10. Pode ser lançado com qualquer arma, não requer nenhum estado e não requer nenhum item para ser consumido. =========================================================================== ** p/ Hercules. Skill_db.txt { // ------------------------------ Mandatory Fields ---------------------------- Id: ID (int) (Required) Name: "Skill Name" (string) (Required) MaxLevel: Skill Level (int) (Required) // ------------------------------ Optional Fields ----------------------------- Description: "Skill Description" (string) (optional but recommended) Range: Skill Range (int) (optional, defaults to 0) (can be grouped by Levels) Note: Range < 5 is considered Melee range. Hit: Hit Type (int) (optional, default "BDT_NORMAL") Types - "BDT_SKILL", "BDT_MULTIHIT" or "BDT_NORMAL" SkillType: { (bool, defaults to "Passive") Passive: true/false (boolean, defaults to false) Enemy: true/false (boolean, defaults to false) Place: true/false (boolean, defaults to false) Self: true/false (boolean, defaults to false) Friend: true/false (boolean, defaults to false) Trap: true/false (boolean, defaults to false) } SkillInfo: { (bool, defaults to "None") Quest: true/false (boolean, defaults to false) NPC: true/false (boolean, defaults to false) Wedding: true/false (boolean, defaults to false) Spirit: true/false (boolean, defaults to false) Guild: true/false (boolean, defaults to false) Song: true/false (boolean, defaults to false) Ensemble: true/false (boolean, defaults to false) Trap: true/false (boolean, defaults to false) TargetSelf: true/false (boolean, defaults to false) NoCastSelf: true/false (boolean, defaults to false) PartyOnly: true/false (boolean, defaults to false) GuildOnly: true/false (boolean, defaults to false) NoEnemy: true/false (boolean, defaults to false) IgnoreLandProtector: true/false (boolean, defaults to false) Chorus: true/false (boolean, defaults to false) FreeCastReduced: true/false (boolean, defaults to false) Works like skill SA_FREECAST, allow move and attack with reduced speed. FreeCastNormal: true/false (boolean, defaults to false) Works like FreeCastReduced, but not reduce speed. } AttackType: "Attack Type" (string, defaults to "None") Types: "None", "Weapon", "Magic" or "Misc" Element: "Element Type" (string) (Optional field - Default "Ele_Neutral") (can be grouped by Levels) Types: "Ele_Neutral", "Ele_Water", "Ele_Earth", "Ele_Fire", "Ele_Wind" "Ele_Poison", "Ele_Holy", "Ele_Dark", "Ele_Ghost", "Ele_Undead" "Ele_Weapon" - Uses weapon's element. "Ele_Endowed" - Uses Endowed element. "Ele_Random" - Uses random element. DamageType: { (bool, default to "NoDamage") NoDamage: true/false No damage skill SplashArea: true/false Has splash area (requires source modification) SplitDamage: true/false Damage should be split among targets (requires 'SplashArea' in order to work) IgnoreCards: true/false Skill ignores caster's % damage cards (misc type always ignores) IgnoreElement: true/false Skill ignores elemental adjustments IgnoreDefense: true/false Skill ignores target's defense (misc type always ignores) IgnoreFlee: true/false Skill ignores target's flee (magic type always ignores) IgnoreDefCards: true/false Skill ignores target's def cards } SplashRange: Damage Splash Area (int, defaults to 0) (can be grouped by Levels) Note: -1 for screen-wide. NumberOfHits: Number of Hits (int, defaults to 1) (can be grouped by Levels) Note: when positive, damage is increased by hits, negative values just show number of hits without increasing total damage. InterruptCast: Cast Interruption (bool, defaults to false) CastDefRate: Cast Defense Reduction (int, defaults to 0) SkillInstances: Skill instances (int, defaults to 0) (can be grouped by Levels) Notes: max amount of skill instances to place on the ground when player_land_skill_limit/monster_land_skill_limit is enabled. For skills that attack using a path, this is the path length to be used. KnockBackTiles: Knock-back by 'n' Tiles (int, defaults to 0) (can be grouped by Levels) CastTime: Skill cast Time (in ms) (int, defaults to 0) (can be grouped by Levels) AfterCastActDelay: Skill Delay (in ms) (int, defaults to 0) (can be grouped by Levels) AfterCastWalkDelay: Walk Delay (in ms) (int, defaults to 0) (can be grouped by Levels) SkillData1: Skill Data/Duration (in ms) (int, defaults to 0) (can be grouped by Levels) SkillData2: Skill Data/Duration (in ms) (int, defaults to 0) (can be grouped by Levels) CoolDown: Skill Cooldown (in ms) (int, defaults to 0) (can be grouped by Levels) FixedCastTime: Fixed Cast Time (in ms) (int, defaults to 0) (can be grouped by Levels) Note: when 0, uses 20% of cast time and less than 0 means no fixed cast time. CastTimeOptions: { IgnoreDex: true/false (boolean, defaults to false) IgnoreStatusEffect: true/false (boolean, defaults to false) IgnoreItemBonus: true/false (boolean, defaults to false) Note: Delay setting 'IgnoreDex' only makes sense when delay_dependon_dex is enabled. } SkillDelayOptions: { IgnoreDex: true/false (boolean, defaults to false) IgnoreStatusEffect: true/false (boolean, defaults to false) IgnoreItemBonus: true/false (boolean, defaults to false) Note: Delay setting 'IgnoreDex' only makes sense when delay_dependon_dex is enabled. } Requirements: { HPCost: HP Cost (int, defaults to 0) (can be grouped by Levels) SPCost: SP Cost (int, defaults to 0) (can be grouped by Levels) HPRateCost: HP % Cost (int, defaults to 0) (can be grouped by Levels) Note: If positive, it is a percent of your current hp, otherwise it is a percent of your max hp. SPRateCost: SP % Cost (int, defaults to 0) (can be grouped by Levels) Note: If positive, it is a percent of your current sp, otherwise it is a percent of your max sp. ZenyCost: Zeny Cost (int, defaults to 0) (can be grouped by Levels) WeaponTypes: { (bool or string, defaults to "All") NoWeapon: true/false (boolean, defaults to false) Daggers: true/false (boolean, defaults to false) 1HSwords: true/false (boolean, defaults to false) 2HSwords: true/false (boolean, defaults to false) 1HSpears: true/false (boolean, defaults to false) 2HSpears: true/false (boolean, defaults to false) 1HAxes: true/false (boolean, defaults to false) 2HAxes: true/false (boolean, defaults to false) Maces: true/false (boolean, defaults to false) 2HMaces: true/false (boolean, defaults to false) Staves: true/false (boolean, defaults to false) Bows: true/false (boolean, defaults to false) Knuckles: true/false (boolean, defaults to false) Instruments: true/false (boolean, defaults to false) Whips: true/false (boolean, defaults to false) Books: true/false (boolean, defaults to false) Katars: true/false (boolean, defaults to false) Revolvers: true/false (boolean, defaults to false) Rifles: true/false (boolean, defaults to false) GatlingGuns: true/false (boolean, defaults to false) Shotguns: true/false (boolean, defaults to false) GrenadeLaunchers: true/false (boolean, defaults to false) FuumaShurikens: true/false (boolean, defaults to false) 2HStaves: true/false (boolean, defaults to false) MaxSingleWeaponType: true/false (boolean, defaults to false) DWDaggers: true/false (boolean, defaults to false) DWSwords: true/false (boolean, defaults to false) DWAxes: true/false (boolean, defaults to false) DWDaggerSword: true/false (boolean, defaults to false) DWDaggerAxe: true/false (boolean, defaults to false) DWSwordAxe: true/false (boolean, defaults to false) } AmmoTypes: { (for all types use string "All") A_ARROW: true/false (boolean, defaults to false) A_DAGGER: true/false (boolean, defaults to false) A_BULLET: true/false (boolean, defaults to false) A_SHELL: true/false (boolean, defaults to false) A_GRENADE: true/false (boolean, defaults to false) A_SHURIKEN: true/false (boolean, defaults to false) A_KUNAI: true/false (boolean, defaults to false) A_CANNONBALL: true/false (boolean, defaults to false) A_THROWWEAPON: true/false (boolean, defaults to false) } AmmoAmount: Ammunition Amount (int, defaults to 0) (can be grouped by Levels) State: "Required State" (string, defaults to "None") (can be grouped by Levels) Types : 'None' = Nothing special 'Moveable' = Requires to be able to move 'NotOverWeight' = Requires to be less than 50% weight 'InWater' = Requires to be standing on a water cell 'Cart' = Requires a Pushcart 'Riding' = Requires to ride either a peco or a dragon 'Falcon' = Requires a Falcon 'Sight' = Requires Sight skill activated 'Hiding' = Requires Hiding skill activated 'Cloaking' = Requires Cloaking skill activated 'ExplosionSpirits' = Requires Fury skill activated 'CartBoost' = Requires a Pushcart and Cart Boost skill activated 'Shield' = Requires a 0,shield equipped 'Warg' = Requires a Warg 'Dragon' = Requires to ride a Dragon 'RidingWarg' = Requires to ride a Warg 'Mado' = Requires to have an active mado 'PoisonWeapon' = Requires to be under Poisoning Weapon. 'RollingCutter' = Requires at least one Rotation Counter from Rolling Cutter. 'ElementalSpirit' = Requires to have an Elemental Spirit summoned. 'MH_Fighting' = Requires Eleanor fighthing mode 'MH_Grappling' = Requires Eleanor grappling mode 'Peco' = Requires riding a peco SpiritSphereCost: Spirit Sphere Cost (int, defaults to 0) (can be grouped by Levels) Items: { ItemID or Aegis_Name : Amount (int, defaults to 0) (can be grouped by Levels) Item example: "ID717" or "Blue_Gemstone". Notes: Items with amount 0 will not be consumed. Amount can also be grouped by levels. } } Unit: { Id: [ UnitID, UnitID2 ] (int, defaults to 0) (can be grouped by Levels) Layout: Unit Layout (int, defaults to 0) (can be grouped by Levels) Range: Unit Range (int, defaults to 0) (can be grouped by Levels) Interval: Unit Interval (int, defaults to 0) (can be grouped by Levels) Target: "Unit Target" (string, defaults to "None") Types: All - affects everyone NotEnemy - affects anyone who isn't an enemy Friend - affects party, guildmates and neutral players Party - affects party only Guild - affects guild only Ally - affects party and guildmates only Sameguild - affects guild but not allies Enemy - affects enemies only None - affects nobody Flag: { UF_DEFNOTENEMY: true/false (boolean, defaults to false) UF_NOREITERATION: true/false (boolean, defaults to false) UF_NOFOOTSET: true/false (boolean, defaults to false) UF_NOOVERLAP: true/false (boolean, defaults to false) UF_PATHCHECK: true/false (boolean, defaults to false) UF_NOPC: true/false (boolean, defaults to false) UF_NOMOB: true/false (boolean, defaults to false) UF_SKILL: true/false (boolean, defaults to false) UF_DANCE: true/false (boolean, defaults to false) UF_ENSEMBLE: true/false (boolean, defaults to false) UF_SONG: true/false (boolean, defaults to false) UF_DUALMODE: true/false (boolean, defaults to false) UF_RANGEDSINGLEUNI: true/false (boolean, defaults to false) } } } { Id: 8443 Name: "MG_EARTHBOLT" Description: "Earth Bolt" MaxLevel: 10 Range: 9 Hit: "BDT_MULTIHIT" SkillType: { Enemy: true } } AttackType: "Magic" Element: "Ele_Earth" NumberOfHits: { Lv1: 1 Lv2: 2 Lv3: 3 Lv4: 4 Lv5: 5 Lv6: 6 Lv7: 7 Lv8: 8 Lv9: 9 Lv10: 10 } InterruptCast: true CastTime: { Lv1: 640 Lv2: 960 Lv3: 1280 Lv4: 1600 Lv5: 1920 Lv6: 2100 Lv7: 1560 Lv8: 2880 Lv9: 3200 Lv10: 3520 } AfterCastActDelay: { Lv1: 1000 Lv2: 1200 Lv3: 1400 Lv4: 1600 Lv5: 1800 Lv6: 2000 Lv7: 2200 Lv8: 2400 Lv9: 2600 Lv10: 2800 } FixedCastTime: { Lv1: 160 Lv2: 240 Lv3: 320 Lv4: 400 Lv5: 480 Lv6: 700 Lv7: 640 Lv8: 720 Lv9: 800 Lv10: 880 } Requirements: { SPCost: { Lv1: 25 Lv2: 50 Lv3: 75 Lv4: 100 Lv5: 125 Lv6: 150 Lv7: 175 Lv8: 200 Lv9: 225 Lv10: 250 } } }, =========================================================================== Skill_tree.txt Esta parte do banco de dados não é necessária se não for lida por uma classe. No entanto, se você quiser que uma classe aprenda uma habilidade, você deve fazer uma entrada em skill_tree.txt. Um exemplo abaixo: Job_Name: { // Job names as in src/map/pc.c (they are hardcoded at the moment so if you want to add a new job you should add it there) inherit: ( "Other_Job_Name" ); // Base job from which this job will inherit its skill tree. NV_TRICKDEAD inheritance is skipped for non-novices from the source skills: { // SKILL_NAMEs come from the Name (16th column) value in db/re/skill_db.txt SKILL_NAME1: Max_Level // Use this for skills that don't have other skill prerequisite; Max_Level is a numeric value that should match your client side files SKILL_NAME2: { // Use this for skills which have other skills as prerequisites MaxLevel: Max_Level // Max_Level is a numeric value that should match your client side files SKILL_NAME_PREREQUISITE: Level_Prerequisite // The prerequisite skill and min level for having this skill available. Should also match your client side files SKILL_NAME_PREREQUISITE2: Level_Prerequisite2 // You can add as many prerequisite skills as you want. Minimum of 1 if you add a skill this way } } MG_EARTHBOLT: { MaxLevel: 10 MG_FIREBOLT: 5 MG_LIGHTNINGBOLT: 5 } Isso define que: Earth Bolt pode ser aprendido por Mago, tem um nível máximo de 10 (para esta classe), e requer habilidade MG_FIREBOLT no nível 5 e habilidade MG_LIGHTNINGBOLT no nível 5. Tecnicamente, estas são as partes geralmente utilizas com arquivos de banco de dados de habilidade. Há mais, mas isso ficará pra vocês explorarem. Arquivos .lua e .lub As seguintes implementações estão de acordo com a Revisão 228 do Projeto Lua (2012-05-23). A implementação é diferente entre muitas versões de cliente, mas geralmente há 2 implementações: Sem arquivos skillinfoz Em data/lua files/skillinfo/skilltreeview.lua encontre: {"MG_FIREWALL", 18; Pos = 19, MaxLv = 10, NeedSkillList = {6, 12}} Adicione a baixo: {"MG_EARTHBOLT",8443; Pos = 20, MaxLv = 10, NeedSkillList = {19,20}} Com arquivos skillinfoz Em skillid.lua encontre: ECLAGE_RECALL = 3035, Depois adicione: MG_EARTHBOLT = 8443, in data/lua files/skillinfo/skilldescript.lua localize: [SKID.MG_THUNDERSTORM] = { "Thunder Storm", "Max Level:^777777 10 ^000000", "Type:^777777 Offensive ^000000", "SP Cost:^777777 24 + 5*SkillLV ^000000", "Target:^777777 cell ^000000", "Range:^777777 9 cells ^000000", "Cast Time:^777777 1*SkillLV sec ^000000", "Cool Down:^777777 2 sec ^000000", "Duration:^777777 0.2*SkillLV sec ^000000", "Effect:^777777 Hits every Enemy in a 5x5 area around the targeted cell with 1 Wind Element Bolt per level at a rate of 1 bolt every 0.2 seconds. Each bolt does 0.8*MATK Wind element damage. ^000000", "[LV 1]^777777 1 Bolt ^000000", "[LV 2]^777777 2 Bolts ^000000", "[LV 3]^777777 3 Bolts ^000000", "[LV 4]^777777 4 Bolts ^000000", "[LV 5]^777777 5 Bolts ^000000", "[LV 6]^777777 6 Bolts ^000000", "[LV 7]^777777 7 Bolts ^000000", "[LV 8]^777777 8 Bolts ^000000", "[LV 9]^777777 9 Bolts ^000000", "[LV 10]^777777 10 Bolts ^000000", }, Depois adicione: [SKID.MG_EARTHBOLT] = { "Earth Bolt", "Max Level:^777777 10 ^000000" "Type:^77777 Active ^000000" "SP Cost:^777777 20 + 5*SkillLV ^000000" "Target:^777777 1 Enemy ^000000" "Cast Time:^777777 2 sec ^000000" "Cool Down:^777777 1 sec ^000000" "Duration:^777777 Instant ^000000" "Effect: ^777777 Deals SkillLV bolts of Earth magic damage to one enemy, at 150% MATK per hit.^000000", }, skilltreeview.lua mude: [JOBID.JT_MAGICIAN] = { [1] = SKID.MG_STONECURSE, [2] = SKID.MG_COLDBOLT, [3] = SKID.MG_LIGHTNINGBOLT, [4] = SKID.MG_NAPALMBEAT, [5] = SKID.MG_FIREBOLT, [6] = SKID.MG_SIGHT, [8] = SKID.MG_SRECOVERY, [9] = SKID.MG_FROSTDIVER, [10] = SKID.MG_THUNDERSTORM, [11] = SKID.MG_SOULSTRIKE, [12] = SKID.MG_FIREBALL, [13] = SKID.MG_ENERGYCOAT, [18] = SKID.MG_SAFETYWALL, [19] = SKID.MG_FIREWALL }, para: [JOBID.JT_MAGICIAN] = { [1] = SKID.MG_STONECURSE, [2] = SKID.MG_COLDBOLT, [3] = SKID.MG_LIGHTNINGBOLT, [4] = SKID.MG_NAPALMBEAT, [5] = SKID.MG_FIREBOLT, [6] = SKID.MG_SIGHT, [8] = SKID.MG_SRECOVERY, [9] = SKID.MG_FROSTDIVER, [10] = SKID.MG_THUNDERSTORM, [11] = SKID.MG_SOULSTRIKE, [12] = SKID.MG_FIREBALL, [13] = SKID.MG_ENERGYCOAT, [18] = SKID.MG_SAFETYWALL, [19] = SKID.MG_FIREWALL, [20] = SKID.MG_EARTHBOLT }, skillinfolist.lua Mude: [SKID.ECL_SEQUOIADUST] = { "ECL_SEQUOIADUST"; SkillName = "Sequoia Dust", MaxLv = 1, SpAmount = { 0 }, bSeperateLv = false, AttackRange = { 7 }, } Para: [SKID.ECL_SEQUOIADUST] = { "ECL_SEQUOIADUST"; SkillName = "Sequoia Dust", MaxLv = 1, SpAmount = { 0 }, bSeperateLv = false, AttackRange = { 7 }, }, [SKID.MG_EARTHBOLT] = { "MG_EARTHBOLT"; SkillName = "Earth Bolt", MaxLv = 10, SpAmount = { 25, 30, 35, 40, 45, 50, 55, 60, 65, 70 }, _NeedSkillList = { { SKID.MG_FIREBOLT, 5}, { SKID.MG_LIGHTNINGBOLT, 5} } Finalizando Não se esqueça que você precisará de adicionar o arquivo Sprite e BMP apropriado para a habilidade. Use o nome MG_EARTHBOLT como o nome do arquivo em: data\texture\À¯ÀúÀÎÅÍÆäÀ̽º\item data\sprite\¾ÆÀÌÅÛ Efeitos Vá a src/map/skill.h, Procure a skill que deseja adicionar/editar o efeito: case WE_BABY: if(sd) { struct map_session_data *f_sd = pc->get_father(sd); struct map_session_data *m_sd = pc->get_mother(sd); bool we_baby_parents = false; if(m_sd && check_distance_bl(bl,&m_sd->bl,AREA_SIZE)) { sc_start(src,&m_sd->bl,type,100,skill_lv,skill->get_time(skill_id,skill_lv)); clif->specialeffect(&m_sd->bl,408,AREA); we_baby_parents = true; } Aqui está sendo utilizado como exemplo a habilidade de convocação das classes bebês. Onde 408 é o efeito adicionado para que seja mostrado ao utilizar a skill. Para a sua habilidade customizada, como ela é uma habilidade nova, não há nenhum efeito, então você terá que adicioná-lo ao arquivo, seguindo de exemplo a mesma forma mostrada acima. Para saber a lista de todos os efeitos, basta utilizar doc/effect_list.txt. Fontes e créditos https://github.com/HerculesWS/ https://github.com/Cronus-Emulator/ https://github.com/brAthena/ https://github.com/rAthena/ http://forum.cronus-emulator.com/ https://forum.brathena.org/ http://herc.ws/wiki/Adding_new_skills http://herc.ws/ https://google.com/ Comentários Decidi fazer esse tutorial pois percebi que ainda não há nenhum guia com esse assunto em PT-BR e havia uma grande demanda de pessoas procurando. Tinha dado uma olhada no Hercules e percebi que é um bom tutorial, mas ainda estava incompleto e bem desatualizado, então decidi usa-lo como base e também pensei, por que não criar um? Espero que esteja de boa compreensão, caso estiver faltando algo que eu esqueci ou que eu não saiba, por favor me informe para torná-lo o melhor possível. Estou aberto a sugestões e críticas construtivas. Façam um bom proveito
  36. 1 point
    Aconteceu comigo uma vez isso, rodava sem erro e os mobs não apareciam. No meu caso foi compatibilidade hexed/emulador. verifique teu arquivo mmo.
  37. 1 point
    ROSprToolkit (Chinese interface with custom English manual) Converts BMP images into SPR format and vice versa. Download
  38. 1 point
    Não dá e nem é legal ficarmos montando NPC pra todo mundo aqui, vocês precisam também absorver o conhecimento ativamente e não passivamente. Vou te dizer quais comandos de script você consegue fazer o que deseja. Gatilhos: *OnInit: Obs: Você precisa utilizar este gatilho para teu script ser executado toda vez que o emulador for reiniciado. Comandos de Scripts: *gettime Obs: Você usará este comando dentro de um If para checar se o dia e mês batem com o que você deseja. *setmapflag Obs: Você usará para definir um mapflag temporário em um determinado mapa. Como por exemplo ativar o mapflag das folhas de sakura ou as neve de snow. Dica: Procure a descrição do funcionamento dos comandos descritos aqui no arquivo doc/scripts_commands.txt Qualquer dúvida pode postar neste tópico, poste também o script que já montou para darmos sugestões de melhorias.
  39. 1 point
    Fui eu que desenvolvi o script. Eu não desenvolvi pensando em @reloadscript, pois este comando não se deve ser utilizado em ambiente de produção (servidor aberto para o público). Você poderá ter diversos outros bugs inimaginaveis se ficar utilizando @reloadscript em produção, este comando foi criado para uso em ambientes de testes e manutenções. Se você precisa fazer uma manutenção urgente ou recarregar algum NPC em especifico sem querer reiniciar o emulador em produção, existem outras opções de comando com potencial de estrago bem reduzido como o caso do @unloadnpcfile ,@unloadnpc e @loadnpc. Após o meu alerta se você quiser continuar abusando do uso do @reloadscript, tente adicionar este NPC para debug. - script SistemaPresenca_DeBug -1,{ OnInit: sleep 10000; set .debug = getnpctimer(0,"SistemaPresenca"); sleep 10000; while (getnpctimer(0,"SistemaPresenca") == .debug ) { initnpctimer "SistemaPresenca"; set .debug = getnpctimer(0,"SistemaPresenca"); sleep 10000; } } Obs: Não foi testado.
  40. 1 point
    Informações: Valor: Mínimo inicial de R$15,00 Cada valor corresponde ao seu tempo de dias vip e valor em ROPs in-game. Ex; Doando R$15,00, dentro do servidor você irá ganhar 15 dias corridos de vip e 15.000 rops para usar como desejar dentro do jogo. Os tickets adquiridos não podem ser comercializados de maneira alguma, somente guardados na Kafra/no Armazém. Os tickets serão entregues vip NPC Torsen que ficará em Prontera, na praça central a direita, ao lado da casa de Equipamentos. Não existe outra forma de realizar a doação, fora o que esta apresentado e explicado abaixo. Com estes rops, você poderá adquirir o que desejar na loja de Rops Oficial. Nesta mesma loja, terá equipamentos do tipo VISUAIS nas quais não terá nenhum stauts. Alguns itens usáveis e outros. Não será adicionado nenhum equipamento ROPs que de alguma forma, dê status. Além de ganhar o status [+]Membro em nosso fórum, com este status você ganha o direito a seções particulares e outros . Métodos de doação: (Até o presente momento, não iremos aceitar doações para contas bancárias) As confirmações de doações devem ser feitas NESTA SEÇÃO. Basta você criar um tópico novo com seu login e email usado no servidor. OBS: Esta seção só aparece para quem fizer e confirmação a doação. https://forum.cronus-emulator.com/donate/make-donation/ Como podem ver, os valores aceitos até o presente momento são; R$15,00 = 15.000 ROPs e 15 dias de status VIP R$25,00 = 25.000 ROPs e 30 dias de status VIP R$50,00 = 50.000 ROPs e 55 dias de status VIP R$75,00 = 75.000 ROPs e 80 dias de status VIP R$100,00 = 100.000 ROPs e 110 dias de status VIP Lembrando que, cada valor irá se tornar também, ROPs dentro do servidor. Aqui segue as imagens dos tickets: Como informado anteriormente. Todos os tickets serão entregues pelo NPC Torsen, este por segurança, irá guardar informações no momento que o responsável retirá-lo. O Administrador responsável, @JulioCF irá realizar a entrega dos pedidos confirmados, neste NPC todos os dias após as 20h - Salvo algum dia que tenha algum problema pessoal. Assim que o comprador do ticket entrar in-game, irá receber minha chat uma mensagem informando que, tem um ticket a ser retirado: Como comentado antes, ficará registrado em painel interno com acesso administrativo, quado este item for retirado pelo seu responsável. Comandos disponíveis para doadores -sem contar os comandos públicos, para conhecê-los, clique aqui- @at - Pode deixar sua loja ativa mesmo desconectado, durarão da loja; 72 horas. Item de destaque da loja, além dos itens usáveis da mesma; Conforme descrição, este é um acessório na qual, após equipado irá lhe fornecer a habilidade Ganância que é uma habilidade das classes Mercadores e evoluções, com esta habilidade, você será capaz de recolher uma certa quantidade de itens dropados no chão. O valor conforme demonstrado esta em; 5.000 rops que é equivalente a; R$5,00 Restrições da presilha; Não pode ser jogado no chão. Não pode ser vendido. Não pode ser trocado entre personagens. Não pode ser adicionado ao armazém de uma Guida. Não pode ser adicionado ao carrinho. Não pode ser enviado por email e afins. Este item somente pode ser guardado em armazém particular. Este item também se encontra como drops nos seguintes mini-boss do servidor, com chance de 0,01%(sem contar a edição de drops) ArchAngeling Angeling Mastering Dragão Mutante Ghostring Eclipse Líder Goblin Líder Kobold Metaller Grifo Hydrolancer Duque Coruja Barão Coruja Quimera Executioner Mysteltainn aceitamos sugestões de mini-bos, principalmente os mais simples e assim, trazer maior valorização - Use a seção de sugestões. Agora, vamos falar sobre os motivos das doações, o para que elas irão servir e assim por diante... Motivos: Manter todos os sistemas de dentro do Cronus funcionando e pagos. Lembrando que o fórum por ex, não é nulled. Pagamento da máquina para se manter todos os sistemas online Possível contratações de tradutores para o projeto Atualizações deste tópico: Informação sobre a confirmação de doação. 05/04/2019
  41. 1 point
    Procurei aqui no fórum e encontrei este, não testei...
  42. 1 point
    Se for SQL o servidor vai no PHPMYADMIN e vai no bancos de dados do seu servidor encontra o ID da sua conta e so colocar no Clientinfo.xml Qualquer dúvidas a mais, so postar aqui, obrigado! :)
  43. 0 points
    Alguem pode me dizer o porque disto nao esta nas telas de loading do servidor???
  44. 0 points
    Falando em fatos, olha o que eu achei aqui: e
  45. 0 points
  46. 0 points
  47. 0 points
    Você eu dou até razão..
  48. -1 points
  49. -1 points
    O meu não retira o vip quando acaba, alguem pode me ajudar?
  50. -1 points
    Cara nao consigo adicionar armas custom, pode me ajudar?
This leaderboard is set to Sao Paulo/GMT-03:00
Parceiro Cronus-Emulator


Seja bem vindo ao Cronus-Emulator.
É sempre um prazer te-lo conosco.
Você pode visualizar nossas áreas de suporte para encontrar suas soluções sem a necessidade de se registrar!
Registrando em nossa comunidade, você poderá conhecer mais sobre nosso projeto, criar tópicos, responder tópicos existentes, baixar milhares de recursos em nosso sistema de downloads, participar de nossa comunidade, customizar seu perfil e muito mais... Se você já possui uma conta, faça seu login - ou crie uma conta. Também temos integração com Google+ e Facebook.

×
×
  • Create New...