Ir para conteúdo
  • Cadastre-se

Scripting [Dúvida] Jinchuuriki System [NTO]


Posts Recomendados

Boa noite, primeiramente estou criando um Jinchuuriki System e quero ideias para melhora-lo!

 

O meu Sistema ele está "pronto", falta traduzir algumas partes para inglês, porém quero ideia para deixar ele com mais algumas funções... O que tem no sistema por enquanto?

 

- Ele é feito por banco de dados(db), (depois alguém pode implementar para colocar algumas informações no shop.

- De forma automática, uma Bijuu pode aparecer a cada X dias no mapa, (de forma aleatória a bijuu é summonada, ela obviamente não pode estar selada por algum jinchuuriki).

- O jogador que é um Jinchuuriki pode ficar com a Biju por até X dias, por exemplo, dois dias...

- O jogador assim que se torna um Jinchuuriki ele aprende novas skills, além de receber um Buff, onde ganhará mais SKILLS, HP e MANA e fica saindo um efeito!

- Ao acabar o Tempo ou o Jinchuuriki morrer, ele perderá a Bijuu, efeito, spells e o Buff.

- Quando o Jinchuuriki morrer, tem uma chance de a Bijuu renascer dentro de "X" minutos no local dela(cada bijuu tem uma área, por exemplo, shukaku nasce em qualquer parte do deserto.)

- Quando você for selar a Bijuu, tem uma pequena chande de falha, se falhar, o jogador irá morrer e outro poderá tentar selar a bijuu.

- Você só pode selar a Bijuu se ela estiver com 20% ou menos de HP.

- Existe alguns comandos que eu criei, por exemplo:

 

Comando !jinchuuriki :

 

m0TQdmm.png

Mostra em tempo real, quanto tempo você ainda tem como um Jinchuuriki.

 

Comando !jinchuuriki list :

 

uko34rH.png

Mostra a Lista de Bijuu do servidor que estão ou não selados!!

 

Comando !jinchuuriki time :

 

b6fSYRX.png

comando extra, é baseado no globalevents , onde o respaw é a cada X dia, então vai mostrando quanto falta para o próximo respaw da Bijuu

 

 

 

Caso alguém tenha alguma ideia para implementar, favor colocar no tópico!!

 

 

OBS: Estarei trabalhando nesta semana na traduçãoo para TFS 1.3 o Survive system(sistema que não irei postar) para meu amigo @black hawk e fazendo um sistema de Dragon Ball para o Hique!!

 

Então até sábado vou pegar as melhores ideias!! Valeu galera.

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

@Vodkart sensacional seria legal poder selar em um item também para poder ser comercializado com tempo de duração então caso fosse selado em um pergaminho teria que usar em X tempo ou vender em X tempo para outro player usar, caso contrário seria deletado o pergaminho e assim voltando a dar spawn da bijuu

Compre seus Scripts Agora totalmente seguro e de forma rápida, aceitamos também encomendas.

discord.gg/phJZeHa2k4

 

Projeto ATS (Naruto)

Informações Abaixo

Facebook

Youtube
Discord

 

Tutoriais / Conteúdos

Clique Aqui

Link para o post
Compartilhar em outros sites
25 minutos atrás, LeoTK disse:

@Vodkart sensacional seria legal poder selar em um item também para poder ser comercializado com tempo de duração então caso fosse selado em um pergaminho teria que usar em X tempo ou vender em X tempo para outro player usar, caso contrário seria deletado o pergaminho e assim voltando a dar spawn da bijuu

 

Obrigado pela contribuição dando sua ideia!

 

Neste caso eu acho que foge muito do que é o sistema jinchuuriki, que como o desenho retrata, é algo que está selado dentro do seu corpo, não é o selo(item) em si, tanto é que para selar você pode morrer, caso não suporte tal feito.

Também creio que comercializar esse tipo de item, perde a graça de caçar a Bijuu...

 

De qualquer jeito obrigado novamente!!

 

 

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

Seria legal adicionar algum modo que nao sei ainda qual seria o "ideal", de os outros players do servidor remover o bijuu de dentro do jinchuuriki, vou dar algumas ideias "aleatorias para isso" Quando o player que possui o jinchuuriki tiver com 5% da vida, alguem player pode tentar quebrar o selo da maldição, assim tendo uma % bem baixa de consegui, e uma % de nao da certo e esse Player que tentou acabar morrendo, outra forma, poderia ser quando o player que possui jinchuuriki morrer uma para algum player, o player vai ganhando uma %, exemplo, 1% de chance da bijuu ser solta, morreu denovo, 2%, e assim até um limite de 20% dai sempre que esse jinchuuriki morrer tem 20% do bijuu sair do seu corpo.

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites
2 minutos atrás, Ackerzin disse:

Seria legal adicionar algum modo que nao sei ainda qual seria o "ideal", de os outros players do servidor remover o bijuu de dentro do jinchuuriki, vou dar algumas ideias "aleatorias para isso" Quando o player que possui o jinchuuriki tiver com 5% da vida, alguem player pode tentar quebrar o selo da maldição, assim tendo uma % bem baixa de consegui, e uma % de nao da certo e esse Player que tentou acabar morrendo, outra forma, poderia ser quando o player que possui jinchuuriki morrer uma para algum player, o player vai ganhando uma %, exemplo, 1% de chance da bijuu ser solta, morreu denovo, 2%, e assim até um limite de 20% dai sempre que esse jinchuuriki morrer tem 20% do bijuu sair do seu corpo.

 

Sobre a primeira eu achei achei bastante interessante, é algo que os membros da akatsuki faziam, eles "roubavam" as bijuus dos jinchuurikis, vou implementar essa ideia!!

 

Já a questão da segunda, eu não acho viável, até pq quando o usuário que é um jinchuuriki morrer, ele automaticamente já perde a bijuu... sendo que a mesma tem uma certa chance de reaparecer em determinado local.

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites
4 minutos atrás, Ackerzin disse:

Outra coisa tambem, quando algum player ter selado todos os 9 bijuus, ele consiga criar o Juubi que é o bijuu de 10 caudas. 

 

No caso desse sistema, você só pode ter uma Bijuu por character, mas eu também pensei nisso, em poder selar mais que uma Bijuu e ai o buff iria acumulando!

 

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites
1 hora atrás, Vodkart disse:

 

No caso desse sistema, você só pode ter uma Bijuu por character, mas eu também pensei nisso, em poder selar mais que uma Bijuu e ai o buff iria acumulando!

 

se tivesse o item, podendo ser o chakra dos bijuu, pedaço etc.... inclusive já existe os itens em alguns clientes por ai. Poderia ser feito a junção dos 9 pra criar o de 10 caldas

Compre seus Scripts Agora totalmente seguro e de forma rápida, aceitamos também encomendas.

discord.gg/phJZeHa2k4

 

Projeto ATS (Naruto)

Informações Abaixo

Facebook

Youtube
Discord

 

Tutoriais / Conteúdos

Clique Aqui

Link para o post
Compartilhar em outros sites
15 horas atrás, Vodkart disse:

Neste caso eu acho que foge muito do que é o sistema jinchuuriki, que como o desenho retrata, é algo que está selado dentro do seu corpo, não é o selo(item) em si, tanto é que para selar você pode morrer, caso não suporte tal feito.

Também creio que comercializar esse tipo de item, perde a graça de caçar a Bijuu...

A ideia dele faz sentido e não foge muito do que é mostrado no desenho não, seriam poucos items que se encaixam nessa categoria (poderoso o suficiente pra selar uma Bijuu), mas Bijuus já foram sim aprisionadas em items, no momento me recordo só do 8 caudas e das reincarnações Kinkaku e Ginkaku, não me lembro se teve algum outro mas me recordo que esses 2 casos de fato ocorreram.

Editado por WooX (veja o histórico de edições)

 

 

 

Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito.

                                                                                                                                                                                                                                        Aristóteles 

Link para o post
Compartilhar em outros sites

Poderia ter uma Spell ultimate para cada tipo de Jinchuuriki, mas a ideia que eu tive sobre esse sistema, ainda que incerto sobre o uso das sprites, é de ter modos Jinchuuriki.

 

Lembro que até o Naruto aprender a ser o Jinchuuriki da raposa, no início apareceu 1 cauda, depois 2, etc... Seria muito mais interessante quando dominar a Biju ter que coletar pontos, tempo ou experiência para ativar todos os modos dela e chegar no modo final, desse modo os skills, ataques e atributos subiriam progressivamente.

 

E ter um certo risco de carregar a Bijuu por muito tempo, adicionando uma dificuldade ou fraqueza enquanto estiver evoluindo as primeiras caudas. pra quando chegar na forma completa ser mais recompensador. Uma certa chance de ficar com raiva e se descontrolar nos primeiros modos. Ao tentar usar a ultimate no modo inicial aplicaria um slow e efeito de falha.

 

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.


  • Conteúdo Similar

    • Por cloudrun2023
      CloudRun - Sua Melhor Escolha para Hospedagem de OTServer!
      Você está procurando a solução definitiva para hospedar seu OTServer com desempenho imbatível e segurança inigualável? Não procure mais! Apresentamos a CloudRun, sua parceira confiável em serviços de hospedagem na nuvem.
       
      Recursos Exclusivos - Proteção DDoS Avançada:
      Mantenha seu OTServer online e seguro com nossa robusta proteção DDoS, garantindo uma experiência de jogo ininterrupta para seus jogadores.
       
      Servidores Ryzen 7 Poderosos: Desfrute do poder de processamento superior dos servidores Ryzen 7 para garantir um desempenho excepcional do seu OTServer. Velocidade e estabilidade garantidas!
       
      Armazenamento NVMe de Alta Velocidade:
      Reduza o tempo de carregamento do jogo com nosso armazenamento NVMe ultrarrápido. Seus jogadores vão adorar a rapidez com que podem explorar o mundo do seu OTServer.
       
      Uplink de até 1GB:
      Oferecemos uma conexão de alta velocidade com até 1GB de largura de banda, garantindo uma experiência de jogo suave e livre de lag para todos os seus jogadores, mesmo nos momentos de pico.
       
      Suporte 24 Horas:
      Estamos sempre aqui para você! Nossa equipe de suporte está disponível 24 horas por dia, 7 dias por semana, para resolver qualquer problema ou responder a qualquer pergunta que você possa ter. Sua satisfação é a nossa prioridade.
       
      Fácil e Rápido de Começar:
      Configurar seu OTServer na CloudRun é simples e rápido. Concentre-se no desenvolvimento do seu jogo enquanto cuidamos da hospedagem.
       
      Entre em Contato Agora!
      Website: https://central.cloudrun.com.br/index.php?rp=/store/cloud-ryzen-brasil
      Email: [email protected]
      Telefone: (47) 99902-5147

      Não comprometa a qualidade da hospedagem do seu OTServer. Escolha a CloudRun e ofereça aos seus jogadores a melhor experiência de jogo possível. Visite nosso site hoje mesmo para conhecer nossos planos e começar!
       
      https://central.cloudrun.com.br/index.php?rp=/store/cloud-ryzen-brasil
       
      CloudRun - Onde a Velocidade Encontra a Confiabilidade!
       

    • Por FeeTads
      SALVE rapaziada do TK, esses dias vim pensando em novos scripts pro meu OT, e em um deles eu precisava que determinada area não contasse frag pro player que matasse outros, PORÉM eu precisava que os players que morressem nessa area ainda assim tivessem as penalidades da sua morte, procurei por ai, achei alguns scripts que apenas tiravam o SKULL e não realmente o FRAG do player.

      **script atualizado 22/10/2023** - melhorado e otimizado, levei o script pra puxar as infos por .lua / creatureScripts

      vou disponibilizar o code aqui, e o que fazer pra determinada area não contar frag.

      SOURCE OTX 2 / TFS 0.x, Funciona em TFS 1.x mudando as tags e ajeitando as sintaxes.

      vá em creatureevent.cpp

      procure por:
      else if(type == "preparedeath") _type = CREATURE_EVENT_PREPAREDEATH;
      Adiciona abaixo:
      else if(type == "nocountfrag") _type = CREATURE_EVENT_NOCOUNTFRAG;

      procure por:
      case CREATURE_EVENT_PREPAREDEATH: return "onPrepareDeath";  
      Adicione abaixo: 
      case CREATURE_EVENT_NOCOUNTFRAG: return "noCountFragArea";

      procure por:
      case CREATURE_EVENT_PREPAREDEATH: return "cid, deathList";
      Adicione abaixo:
      case CREATURE_EVENT_NOCOUNTFRAG: return "cid, target";

      agora no mesmo arquivo, vá até o final do arquivo e adicione essa função:
      uint32_t CreatureEvent::executeNoCountFragArea(Creature* creature, Creature* target) { //noCountFragArea(cid, target) if(m_interface->reserveEnv()) { ScriptEnviroment* env = m_interface->getEnv(); if(m_scripted == EVENT_SCRIPT_BUFFER) { env->setRealPos(creature->getPosition()); std::ostringstream scriptstream; scriptstream << "local cid = " << env->addThing(creature) << std::endl; scriptstream << "local target = " << env->addThing(target) << std::endl; if(m_scriptData) scriptstream << *m_scriptData; bool result = true; if(m_interface->loadBuffer(scriptstream.str())) { lua_State* L = m_interface->getState(); result = m_interface->getGlobalBool(L, "_result", true); } m_interface->releaseEnv(); return result; } else { #ifdef __DEBUG_LUASCRIPTS__ std::ostringstream desc; desc << creature->getName(); env->setEvent(desc.str()); #endif env->setScriptId(m_scriptId, m_interface); env->setRealPos(creature->getPosition()); lua_State* L = m_interface->getState(); m_interface->pushFunction(m_scriptId); lua_pushnumber(L, env->addThing(creature)); lua_pushnumber(L, env->addThing(target)); bool result = m_interface->callFunction(2); m_interface->releaseEnv(); return result; } } else { std::clog << "[Error - CreatureEvent::noCountFragArea] Call stack overflow." << std::endl; return 0; } }

      agora vá em creatureevent.h

      procure por:
      CREATURE_EVENT_PREPAREDEATH
      adicione abaixo:
      CREATURE_EVENT_NOCOUNTFRAG

      procure por:
      uint32_t executePrepareDeath(Creature* creature, DeathList deathList);
      Adicione abaixo:
      uint32_t executeNoCountFragArea(Creature* creature, Creature* target);

      agora vá em player.cpp

      procure por:
      bool Player::onKilledCreature(Creature* target, DeathEntry& entry)
      abaixo de:
      War_t enemy; if(targetPlayer->getEnemy(this, enemy)) { if(entry.isLast()) IOGuild::getInstance()->updateWar(enemy); entry.setWar(enemy); }
      Adicione o seguinte código:
      if (targetPlayer){ CreatureEventList killEvents = getCreatureEvents(CREATURE_EVENT_NOCOUNTFRAG); for (const auto &event : killEvents) { if (!event->executeNoCountFragArea(this, target)) { return true; } } }

      //

      Feito isso, tudo completo na sua source, agora é necessário adicionar o creaturescript dentro do servidor

      vá até creaturescripts/scripts
      crie um arquivo chamado, "noCountFragInArea.lua"
      e dentro dele cole o código:
       
      --[[ script feito por feetads / TibiaKing ]]-- --[[ discord: feetads / FeeTads#0246 ]]-- -- Add positions here for which you do not want to count frags local areas = { [1] = {from = {x = 91, y = 122, z = 7}, to = {x = 98, y = 127, z = 7}}, -- from = area superior esquerda / to = area inferior direita (formando um quadrado) } local onlyKillerInArea = false -- only killer need to be in area? function noCountFragArea(cid, target) if not isCreature(cid) or not isCreature(target) then return true end local posKiller = getPlayerPosition(cid) local posTarget = getPlayerPosition(target) for i = 1, #areas do local area = areas[i] if isInArea(posKiller, area.from, area.to) then if onlyKillerInArea then return false elseif isInArea(posTarget, area.from, area.to) then return false end end end return true end
      agora em creaturescripts.xml
      <event type="nocountfrag" name="fragarea" event="script" value="noCountFragInArea.lua"/>
      agora em creaturescripts/scripts/login.lua
       procure por OU semelhante a esse:
      registerCreatureEvent(cid, "AdvanceSave")
      e abaixo adicione:
      registerCreatureEvent(cid, "fragarea")

      //


      Agora tudo certo, quando quiser adiciona uma area que não pega frag, vá até o script e apenas coloque a area, igual o demonstrado no script

      Exemplo:
      local areas = { [1] = {from = {x = 91, y = 122, z = 7}, to = {x = 98, y = 127, z = 7}}, [2] = {from = {x = 1000, y = 1000, z = 7}, to = {x = 1100, y = 1100, z = 7}}, }
      assim somente colocando a area no script e abrindo o server ou dando /reload, já funcionará a area como não pegar frag.
      Esse sistema pode ser bom pra areas de pvp ativo, onde você ainda quer que o player que morrer perca os atributos, como se fosse uma morte normal, porém não conta frag pra quem matar.
      Bom pra sistemas tipo castle 48h (guild war), onde há diversas mortes e risco de pegar red, atrapalhando a war.

      Façam bom proveito dos scripts, e deixem os créditos no script rsrs

      **Eu fiz as alterações e o simples código por isso vim disponibilizar, créditos meus**
    • Por Muvuka
      Abri canal a força creaturescript acho que funcione no creaturescript cria script creaturescript
       
      <channel id="9" name="HELP" logged="yes"/>
      <channel id="12" name="Report Bugs" logged="yes"/>
      <channel id="13" name="Loot" logged="yes"/>
      <channel id="14" name="Report Character Rules Tibia Rules" logged="yes"/>
      <channel id="15" name="Death Channel"/>
      <channel id="6548" name="DexSoft" level="1"/>
      <channel id="7" name="Reports" logged="yes"/>
       
      antes de 
              if(lastLogin > 0) then adicione isso:
                      doPlayerOpenChannel(cid, CHANNEL_HELP) doPlayerOpenChannel(cid, 1,  2, 3) = 1,2 ,3 Channels, entendeu? NÃO FUNCIONA EU QUERO UM MEIO DE ABRI SEM USA A SOURCE
       
      EU NÃO CONSEGUI ABRI EU NÃO TENHO SOURCE
       
       
    • Por bolachapancao
      Rapaziada seguinte preciso de um script que ao utilizar uma alavanca para até 4 jogadores.
      Os jogadores serão teleportados para hunt durante uma hora e depois de uma hora os jogadores serão teleportados de volta para o templo.
       
      Observação: caso o jogador morra ou saia da hunt o evento hunt é cancelado.

      Estou a base canary
      GitHub - opentibiabr/canary: Canary Server 13.x for OpenTibia community.
       
    • Por RAJADAO
      .Qual servidor ou website você utiliza como base? 
      Sabrehaven 8.0
      Qual o motivo deste tópico? 
      Ajuda com novos efeitos
       
      Olá amigos, gostaria de ajuda para introduzir os seguintes efeitos no meu servidor (usando o Sabrehaven 8.0 como base), adicionei algumas runas novas (avalanche, icicle, míssil sagrado, stoneshower & Thunderstorm) e alguns novos feitiços (exevo mas san, exori san, exori tera, exori frigo, exevo gran mas frigo, exevo gran mas tera, exevo tera hur, exevo frigo hur) mas nenhum dos efeitos dessas magias parece existir no servidor, alguém tem um link para um tutorial ou algo assim para que eu possa fazer isso funcionar?
      Desculpe pelo mau inglês, sou brasileiro.

      Obrigado!


      AVALANCHE RUNE id:3161 \/
      (COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)
      (COMBAT_PARAM_EFFECT, CONST_ME_ICEAREA)
      (COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ICE)

      STONESHOWER RUNE id:3175 \/
      (COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
      (COMBAT_PARAM_EFFECT, CONST_ME_STONES)
      (COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_EARTH)

      THUNDERSTORM RUNE id:3202 \/
      (COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
      (COMBAT_PARAM_EFFECT, CONST_ME_E NERGYHIT)
      (COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGYBALL)

      ICICLE RUNE id:3158 \/
      COMBAT_ICEDAMAGE
      CONST_ME_ICEAREA
      CONST_ANI_ICE

      SANTO MÍSSIL RUNA id:3182 \/
      (COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)
      (COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE)
      (COMBAT_PARAM_EFFECT, CONST_ME_HOLYAREA)
      (COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_HOLY)

      CONST_ME_PLANTATTACK (exevo gran mas tera)
      CONST_ME_ICETORNADO (exevo gran mas frigo)
      CONST_ME_SMALLPLANTS (exevo tera hur)
      CONST_ME_ICEAREA (exevo frigo hur)
      CONST_ME_ICEATTACK (exori frigo)
      CONST_ME_CARNIPHILA (exori tera)

      EXORI SAN \/
      (COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SMALLHOLY)
      CONST_ME_HOLYDAM IDADE

      EXEVO MAS SAN \/
      CONST_ME_HOLYAREA
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo