Ir para conteúdo

A.Mokk

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Gostei
    Para aqueles que estão interessados em adotar a base do Nekiro, gostaria de anunciar que as montarias e a modal widow agora estão disponíveis. Se você deseja implementar sistemas como o de crafting com modal e outros recursos, sinta-se à vontade para fazer o download e testar.
    É importante observar que o Nekiro não incluiu mapas nesta versão. Portanto, será necessário migrar seus próprios mapas para o TFS 1.5 8.6. Alternativamente, você pode considerar utilizar a base do Luciano, conhecida como STYLLER OT. Após realizar testes, posso confirmar que essa é uma opção bastante interessante. Esta versão já está completa, permitindo que você utilize seus próprios mapas sem dificuldades significativas.
    Além disso, estou disponibilizando os sprites no formato 13x para a versão 8.6, juntamente com os arquivos items.otb e XML. Quanto à correção de eventuais erros, isso fica a seu critério, mas gostaria de ressaltar que não é uma tarefa difícil de realizar.
     
    É com satisfação que compartilho que a source está agora disponível para acesso público. Caso você deseje, pode realizar atualizações através dos commits. Estou preparando uma lista abrangente de atualizações necessárias, pois há muitas modificações a serem feitas.
    Para acessar a source, por favor, clique no link abaixo:
    https://www.mediafire.com/file/0680a4b624163pd/TFS-1.5-Downgrades-8.60.rar/file
     
    Dentro da SRC que implementei, você encontrará os seguintes recursos:
    Sistema de Montaria: Agora você pode adicionar essa funcionalidade ao seu servidor.
    Modal Window: Esta é uma janela modal, proporcionando uma experiência mais interativa para os jogadores.
     
    Custom Attributes(Boost e Relfect:: https://github.com/otland/forgottenserver/pull/2807/commits/18f5afa52a36a02ea56dae97b29e683233d15c25.
     
    Além disso, gostaria de compartilhar três repositórios no GitHub que podem ser valiosos para você. Três deles são mantidos pelos usuários @Movie e @ralke23 e a Sarah (MillhioreBT). Esses repositórios contêm recursos e scripts úteis que podem aprimorar a experiência do seu servidor. Sinta-se à vontade para explorar e utilizar esses recursos conforme necessário.
    https://github.com/moviebr/TFS-1.5-Downgrades
    https://github.com/ralke23/Greed-TFS-1.5-Downgrades
    https://github.com/MillhioreBT/forgottenserver-downgrade
     
    Para os interessados nos sprites 13x para a versão 8.6, estou disponibilizando o link para download abaixo:
    https://mega.nz/folder/5FQEnT4R#pAbmAAhpBhmcP1jaVkXm8Q
     
    Recomendo também o uso do ObjectBuilder_0_5_5-dev para facilitar o processo:
    https://github.com/punkice3407/ObjectBuilder/releases/tag/v0.5.5
     
    Para aqueles que enfrentam dificuldades na compilação do executável, estou disponibilizando um arquivo para download que pode ajudar:
    https://www.mediafire.com/file/cxirgq7n1cm2p3i/dlls+e+exe.rar/file
     
     
    Quanto à ativação do sistema de montarias via OTClient, basta acessar o arquivo game_features/features.lua e localizar a linha: 'if(version >= 860) then!' e adicionar abaixo 'g_game.enableFeature(GamePlayerMounts)'.
     
    É necessário baixar ambos os arquivos, mounts.xml e outfits.xml, para que o OtClient funcione corretamente. Sem esses arquivos, o cliente pode apresentar bugs ou até mesmo crashar sozinho. É obrigatório o uso desses arquivos. Basta fazer o download e colocá-los na base do Luciano. Basta ir até a pasta data/xml e inserir os arquivos lá. Se você estiver usando seu próprio mapa, os arquivos são igualmente necessários, independentemente de suas preferências.
    outfits.xml
    mounts.xml
     

    ATENÇÃO: Sobre a base do Luciano ou do Nekiro downgrade que você baixou (schemas.sql), ela está totalmente limpa, sem implementações adicionais. Cabe a você implementar por conta própria. Por exemplo, se você for usar o Znote, ele solicitará o esquema e as colunas necessárias. Isso não são erros, são apenas avisos. Você deve procurar pelas colunas necessárias e inseri-las para que funcione corretamente. Isso não é difícil de fazer.
    https://github.com/slawkens/myaac
    https://github.com/gesior/Gesior2012
    https://github.com/Znote/ZnoteAAC/tree/v2
     
     
    Antes de prosseguir com o download, sugiro que realize uma verificação de vírus nos arquivos. Seguem os links para o scan:
     
    Scan da SRC
    https://www.virustotal.com/gui/file/1364b14cab10a34ca7102d3581e427396f8224cc5156d6bc3859b4ebcb155de6?nocache=1
    Scan das DLLs e Executável
    https://www.virustotal.com/gui/file/603c853dbd5b40ff21b0b0004c129e5039c9954277da22722b2980fcbfcbe0ce?nocache=1
     
    IMPORTANTE: Por favor, note que a funcionalidade de montaria e janela modal não está disponível para versão old do client (CipSoft). Infelizmente, não estou oferecendo suporte para essas versões no momento. No entanto, é possível adquirir uma DLL especial que pode ser injetada no client old (CipSoft) para habilitar essas funcionalidades. Caso esteja interessado, conheço um vendedor confiável que oferece essa DLL. Para mais informações, por favor, entre em contato através do Discord: Sharingan.
  2. Gostei
    A.Mokk deu reputação a L3K0T em (Resolvido)Script Boss Teleport   
    function onCastSpell(cid, var) local target = getCreatureTarget(cid) if isCreature(target) and isPlayer(target) then local targetPos = getCreaturePosition(target) local creaturePos = getCreaturePosition(cid) local distance = math.max(math.abs(targetPos.x - creaturePos.x), math.abs(targetPos.y - creaturePos.y)) if distance > 1 then -- Defina a distância mínima para teleportar conforme sua preferência doTeleportThing(cid, targetPos, true) end end return true end @A.Mokk
  3. Gostei
    A.Mokk recebeu reputação de L3K0T em (Resolvido)Script Boss Teleport   
    Muito obrigado, funcional em TFS 0.4 !
  4. Gostei
    Claro aqui passo a passo.
     
    Definir Variáveis: 
    Comece definindo as variáveis necessárias. Você precisará de uma variável para representar a duração do cooldown (em segundos) e outra variável para armazenar a última vez que a ação foi realizada para cada jogador.
     
    local cooldown = 10 local lastActionTime = {} Verificar Tempo de Recarga:
    Antes de permitir que a ação seja executada, verifique se passou tempo suficiente desde a última vez que a ação foi executada. Se a diferença de tempo for menor que a duração do resfriamento, você impedirá a ação.
    local currentTime = os.time() local lastTime = lastActionTime[cid] or 0 if currentTime - lastTime < cooldown then doCreatureSay(cid, "COLOQUE AQUI MSG QUE VC QUISER.", TALKTYPE_ORANGE_1) return true end Atualizar tempo de espera:
    se a ação for permitida, atualize o horário da última ação para o horário atual.
    lastActionTime[cid] = currentTime Executar ação: 
    agora você pode prosseguir para executar a ação pretendida. Por exemplo, deduzir dinheiro, conceder um item, enviar uma mensagem, etc.
    local cost = 20 if doPlayerRemoveMoney(cid, cost) == TRUE then else doCreatureSay(cid, "voce nao tem dinheiro.", TALKTYPE_ORANGE_1) end Return true: 
    Por fim, certifique-se de retornar true no final da função para indicar que a ação foi tratada.
    return true fim só isso
     
     
    O sistema mencionado por King Laker também funciona.
     
    function onSay(cid, words, param) local exhaust = 5 local storage = 5839 if exhaustion.check(cid, storage) then exhaustion.set(cid, storage, exhaust) if doPlayerRemoveMoney(cid, 20) == TRUE then local bp = doPlayerAddItem(cid, 1988, 1) doSendMagicEffect(getCreaturePosition(cid), 13) doCreatureSay(cid, "Voce comprou uma backpack.", TALKTYPE_ORANGE_1) else doCreatureSay(cid, "Voce nao tem dinheiro.", TALKTYPE_ORANGE_1) doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end end end  
     
    Obs: Depende dos scripts, pode ser mais fácil ou difícil fazer alterações, mas você consegue adaptar tanto o cooldown quanto o exhaustion em qualquer script. BOA SORTE! 😉

Informação Importante

Confirmação de Termo