Ir para conteúdo
  • Cadastre-se

8.5x - 8.7x [8.60] The Forgotten Server 0.4 (sqlite e mysql)


Posts Recomendados

  • Respostas 378
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Reporte qualquer bug encontrado.   - Mudanças: * opcode adicionado * Monstros andando em cima de corpos * War system arrumado * Anti-divulgação melhorado * Cast syst

Arrumei   Sim, comecei com esse projeto no começo do ano, eu tava usando o tfs 0.3.6 desde 2010, encontrei alguns problemas e acabei migrando pra rev 3777, e deu certo :D

talkactions/scripts/teleporttown.lua local pos = getTownTemplePosition(tmp, false) Troca por: local pos = getTownTemplePosition(tmp)   Foi o único arquivo que mudei. Adic

Posted Images

Parabéns pela iniciativa, parece ser uma base bem promissora, até porque possui o Cast System.

 

Mas me diz uma coisa, se caso eu for utilizar sua distro e sources, eu terei que importar alguma pasta/arquivo desse seu datapack para o meu? Obg.

Dark Souls Bonfire GIF - Dark Souls Bonfire Rest - Discover & Share GIFs

Link para o post
Compartilhar em outros sites
  Em 02/02/2016 em 18:41, Heyron disse:

Parabéns pela iniciativa, parece ser uma base bem promissora, até porque possui o Cast System.

 

Mas me diz uma coisa, se caso eu for utilizar sua distro e sources, eu terei que importar alguma pasta/arquivo desse seu datapack para o meu? Obg.

Mostrar mais  

talkactions/scripts/teleporttown.lua

local pos = getTownTemplePosition(tmp, false)

Troca por:

local pos = getTownTemplePosition(tmp)

 

Foi o único arquivo que mudei.

Adicionei um anti-trash no creaturescripts (houseprotect.lua), se quiser copiar:

https://github.com/Fir3element/3777/blob/master/data/creaturescripts/scripts/houseprotect.lua

 

  Em 02/02/2016 em 14:43, Sekk disse:

Perfect...

 

Me fala, a correção do bug do yellow skull, já ta na source que eu to usando?

 

Baixei só uma vez do seu git.. E até agr n baixei dnv..

Mostrar mais  

Não, só baixar no mesmo link ;)

Editado por Fir3element (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  Em 02/02/2016 em 19:40, Garen disse:

Apareceu só esses bugs:

 

UT3XWMQ.png

 

 

Mostrar mais  

1º erro: o certo é absorbPercentFire.

2º erro: não existe essa função, preciso de ver como ta o script.

Link para o post
Compartilhar em outros sites

Olha, eu achei um erro, mas não sei se é no client ou sources.

Acontece que os dias de p.a estão passando à cada logout que o player faz, porem apenas os dias passam mas a p.a continua.

 

Pressionando o CTRL+G no client, mostra que o Account Status está como Free Account, sendo que na verdade o player ainda tem p.a.

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

Dark Souls Bonfire GIF - Dark Souls Bonfire Rest - Discover & Share GIFs

Link para o post
Compartilhar em outros sites
  Em 03/02/2016 em 00:40, Sekk disse:

@Garen

 

x86 ou x64?

 

De acordo com a forma que você compilou, use as dll's adequadas.

 

 

x32 compilado no dev-cpp use o arquivo x32dev-cpp.zip

x32 compilado no msvc use o arquivo x32msvc.rar

x64 compilado no msvc use o arquivo x64msvc.rar

x32dev-cpp.zip

x32msvc.rar

x64msvc.rar

Mostrar mais  

 

É x64, porem eu uso o dev-cpp.

Link para o post
Compartilhar em outros sites
  Em 02/02/2016 em 20:43, Heyron disse:

Olha, eu achei um erro, mas não sei se é no client ou sources.

Acontece que os dias de p.a estão passando à cada logout que o player faz, porem apenas os dias passam mas a p.a continua.

 

Pressionando o CTRL+G no client, mostra que o Account Status está como Free Account, sendo que na verdade o player ainda tem p.a.

 

 

 

Mostrar mais  

Não consegui reproduzir, é só dar logout que os dias vão sumindo? Se for aqui ta normal :huh:

 

  Em 02/02/2016 em 23:27, KalimaWar disse:

bug stamina?

Mostrar mais  

Que bug seria esse?

 

  Em 03/02/2016 em 00:24, Garen disse:

Olá de novo, eu compilei sua distro pra ver sê tava ok, e foi. Compilou tudo certinho, só que dá esse erro quando executa a distro:

 

wWO9mBj.png

Mostrar mais  

Compilou com o dev-cpp mas tá usando as dlls do visual studio, não vai funcionar.

 

  Em 03/02/2016 em 00:59, Garen disse:

 

É x64, porem eu uso o dev-cpp.

Mostrar mais  

Ninguém fez ainda um dev-cpp que compila otserv em 64bit, qualquer compilação que você fazer seja adicionando "-m64" ou não, vai ser 32bit.

Editado por Fir3element (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  Em 03/02/2016 em 01:06, Fir3element disse:

Não consegui reproduzir, é só dar logout que os dias vão sumindo? Se for aqui ta normal :huh:

Mostrar mais  

 

Tipo, quando você loga e desconecta da conta, e depois entra de novo.

Os dias de p.a vão abaixando conforme você desloga.

 

O ruim é que eu pretendia usar o P.A como VIP, só que deu isso ;/

Dark Souls Bonfire GIF - Dark Souls Bonfire Rest - Discover & Share GIFs

Link para o post
Compartilhar em outros sites
  Em 03/02/2016 em 01:03, Sekk disse:

Se você compilou com dev-cpp, então é 32bits, o stian falhou na tentativa, então é só 32bits.

Mostrar mais  

 

Então, nesse caso eu devo jogar as DLL na pasta do meu OT que são referente à versão de bits do meu PC, é isso? Vlww

Link para o post
Compartilhar em outros sites
  Em 03/02/2016 em 01:13, Heyron disse:

 

Tipo, quando você loga e desconecta da conta, e depois entra de novo.

Os dias de p.a vão abaixando conforme você desloga.

 

O ruim é que eu pretendia usar o P.A como VIP, só que deu isso ;/

Mostrar mais  

Corrigido ;)

Link para o post
Compartilhar em outros sites
  Em 03/02/2016 em 01:06, Fir3element disse:

Que bug seria esse?

Mostrar mais  

quando um jogador morre e resistência é baixa recarga um pouco

www.kalimawar.com Dedicate Server Canada 24H Online 8.60 Map Custom
 
1560441_1.png
 
 
Hosted By
 
logo.png
Link para o post
Compartilhar em outros sites
  Em 03/02/2016 em 16:43, KalimaWar disse:

quando um jogador morre e resistência é baixa recarga um pouco

Expand   Mostrar mais  

Parece ser um problema de configuração/scripts, irei testar.

Link para o post
Compartilhar em outros sites
  • Erimyth unpinned this tópico

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   1 membro está online

  • Conteúdo Similar

    • Por Mateus Robeerto
      Vi que muitas pessoas estão reclamando e que não funciona, bugs, erros no console, etc. Então, resolvi baixar a base do Thunder feita por MovieBr, atualizei do TFS 1.3 para o TFS 1.5 e corrigi cerca de 80% dos problemas. No entanto, ainda não consigo encontrar alguns bugs. Quem encontrar os bugs pode me relatar pelo Discord: 82mateusroberto. Dependendo do meu dia, pode levar alguns dias para eu responder e corrigir ou não. Acredito que vocês conseguem corrigir os erros, apenas precisam aprender a consertá-los. Não é difícil. Aproveitem para usar como base do seu mapa ou mesmo do projeto Thunder futuramente! Seguem as imagens que mostram a implementação de montaria e modal widow.
       
      Obs: Alguns mapas/cavernas podem estar vazios por falta de adição. Eu não tinha boas ideias para adicionar, mas vocês podem adicionar ao seu gosto. Tenham uma boa utilização e sucesso com o projeto no futuro!
       
      https://www.mediafire.com/file/0jtn2slt2j67666/baiakthunder-master.rar/file
      https://www.mediafire.com/file/bougg0q6dlpu2fq/tfs+1.5+source.rar/file
      https://www.mediafire.com/file/yq1s63xo6np9v53/860.rar/file
       
      Este servidor só usa o OtClient. Abra o arquivo otclient/modules/game_feature/feature.lua e procure por esta linha.
      if (versão >= 860) then adicione abaixo e salve.. pronto
      g_game.enableFeature(GamePlayerMounts)  
       
      Aqui estão os GIFs
      https://imgur.com/UGdQoSS
      https://imgur.com/OwJ4hpp
      https://imgur.com/7sN1MaJ
       
       
       
      Para quem deseja usar uma gamestore personalizada, há uma disponível para TFS 1.5 e 8.6. Já a compartilhei há alguns dias. Dê uma olhada aqui.
       
       
    • Por Nolangg
      Olá Tibianos.
      Hoje após um looooongo tempo sem tempo e animo pra mexer em server etc etc.
      Venho trazer a vós um servidor do @Igorzerah  que foi vendido à mim, e foi feito inúmeras modificações também.
      Sem mais enrolação...
       
      O  que você irá encontrar no servidor?
       
      Sistema de Montaria (desativado) pelo comando "!mount" (dá pra comprar no site)
      Sistema de Daily Monster (toda vez que abre a distro um monstro é selecionado *também configurável)
      Sistema de Castle48/24HRS (exatamente as 21:00H o castle 48h abre todos os dias, já o castle 24h é sempre aberto a invasões e tem monstros específicos lá)
      Sistema de Cast Arrows / Spy System (spy é um cast para admins que mesmo sem estar ativado ele consegue ver *usado para monitorar players)
      Sistema de EXP FOOD / EGGS (dá pra usar simultâneos ovos de EXP, assim aumentando *ex: 100% + 200% + 300% etc etc)
      Sistema de Anti Divulgação  (Anti divulgação modificado, intruso parece que está divulgando mas não está, tipo um fakechat...)
      Sistema de Roleta (uma roleta que pode dar itens temporarios *itens hyper)
      Sistema de Mineração (sistema básico que dá pepitas de ouro *usado no lugar do money para comprar coisas)
      Várias Cidades (Baiak City, Nether, Oramond e Roshamuul)
      Boss Gaz'Haragoth e Boss CLAPTOMANIACO (um por boss token e outro por horário)
      Fast Respawn (quanto mais jogadores online mais rápido é o spawn)
       
      esse é o resumo do servidor, eu trabalhei mudando a maioria das coisas e tirando vários bugs, mas, o @nettonnwk vendeu o servidor e me desanimou
      agora eu estou disponibilizando, já que também teve trabalho meu aqui ?
      um monte de bug foi resolvido, mas ainda pode ter mais (falta de foco por minha parte dhasudhsa)
       
      *algumas imagens do servidor:
       

       

       

       
       

       

       
      Link Download Baiak Hyper
      https://www.mediafire.com/file/p9hdkethf6hjrbr/baiakhyper.zip/file
      Link Scan Servidor Baiak Hyper
      https://www.virustotal.com/gui/file/2993b94b808c8c5a98eca8139bd4ab4745ea482e603b847e02464e16458382b5?nocache=1
      Client 8.60 Extendido Hyper
      https://www.mediafire.com/file/l7mkxe4zmb2nlzv/Starlix+8.60.zip/file
      Link Scan Client 8.60
      https://www.virustotal.com/gui/file/11a9444677731e0f2620ce75a159b84aad21ceed472ca68f0da10ee41b8283be
      Client 8.60 Mobile Hyper
      https://www.mediafire.com/file/3vvqy78h5b5ccpr/starlix-mobile.apk/file
      Link Scan Mobile 8.60
      https://www.virustotal.com/gui/file/3ec7b021990501eacf208452296025b7b3e02a5c1c8a27e012dc77b06132c6c1?nocache=1
      Otclient v8 Hyper
      https://www.mediafire.com/file/ao7mbah1odhm4mk/Otclient-Starlix.zip/file
      Link Scan Otclient V8
      https://www.virustotal.com/gui/file/b703dac28286dd6139b2f140516b6dfe9882a288b2909817d1570692e73e3c04?nocache=1
       
      Source OTX 2.15 (Modificada por mim e feita algumas alterações..; darei suporte mas... be patienty;)
       
      https://www.mediafire.com/file/vacu76zusyk4ubr/king.rar/file
      scan: https://www.virustotal.com/gui/file/2a5cbca6a6acc028c9809448151836e68250f49abbc7e804a696e2a7eb1dac6f?nocache=1
       
       
      Atualização:
      Site: https://drive.google.com/file/d/1zCZAVvacHInGpUOWc82hrsPDGpZ2ro8l/view?usp=share_link
      Scan Site: https://www.virustotal.com/gui/url/dc2516f12b7f1bb6e3a265fd6a67a4f200fef3664c1ac3d2554203d78690dfb0?nocache=1
       
      Imagem do Site:
       

       
      apesar da maioria das coisas serem feitas por várias pessoas, o site os créditos de alterações é todo meu (já a base é crédito totalmente ao gesior )
       
       
      db compativel com o site:
      baiak.sql
       
      descrição quando estava sendo vendido*
       
      ⭐️ SERVIDOR 8.60 COM RESETS, MONTARIAS E GOLDEN OUTFIT ⭐️
      INFORMAÇÕES BÁSICAS DO SERVIDOR:
      [+] MAPA BAIAK
      [+] HIGH EXP
      [+] RESETS COM + DAMAGE
      [+] PROTEÇÃO DE BAN DO OTSERVLIST
      [+] ANTI-LAG DE TALKACTION
      [+] DISTRO OTIMIZADA
      [+] SOURCE PRONTA PARA WINDOWS/LINUX
      [+] SITE ATUAL E CONFIGURADO
      [+] CLIENTE PRÓPRIO + DB LIMPA
      ? SISTEMAS ATUAIS ?
      [+] AUTOLOOT AUTOMÁTICO
      [+] CITY DONATE
      [+] ROSHAMUUL, ORAMOND E NETHER
      [+] MONTARIAS E GOLDEN OUTFIT
      [+] INVASÃO DE MONSTROS AUTOMÁTICAS
      [+] DAILY MONSTER QUE APARECE AO LOGAR
      [+] MONTARIAS COM COMANDO !MOUNT
      [+] SISTEMA DE ROLETA ATUAL
      [+] CAST WATCH
      [+] FAST ATTACK
      [+] CAST ARROWS
      [+] PUSH CRUZADO
      [+] REWARD CHEST
      [+] WARSQUARE
      [+] COMBO EXP DE POTIONS
      [+] MINERAÇÃO COM LOJA
      [+] SISTEMA DE BOSS
      [+] CRITICAL/DODGE [500/500]
      [+] LIFE E MANA EM PORCENTAGEM*
      [+] VARIAS QUESTS
      ? EVENTOS ?
      [+] EVENTO DTT (AUTOMÁTICO)
      [+] EVENTO BATLEFIELD (AUTOMÁTICO)
      [+] EVENTO SNOWBALLWAR (AUTOMÁTICO)
      [+] EVENTO DESERT WAR (AUTOMÁTICO)
      [+] EVENTO ZOMBIE (AUTOMÁTICO)
      [+] EVENTO CAMPO MINADO (AUTOMÁTICO)
      [+] EVENTO TEAM BATLE (AUTOMÁTICO)
      [+] EVENTO CAPTURE THE FLAG (AUTOMÁTICO)
       
      see ya l8 guys.
       
      créditos em modificações do servidor ( @Lyu, @Diiego Liima, eu, @nettonnwk e o @Igorzerah)
       
      Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito.
    • Por Nextbr
      Nova Atualização Pokemon Online (2015)
       
      • Menu:
      ├ Informações Gerais;
      ├ Erros;
      ├ Prints;
      ├ Download;
      ├ Download Ultilitarios;
      ├ Scans;
      └ Creditos;
       
       
      • Informações Gerais;



       
      • ERROS;



      • BUGS GERAIS;



       
      • PRINTS;


        • DOWNLOADS;
        • DOWNLOAD Ultilitarios;
          • Scans;
           
      • CREDITOS;



    • Por Jnetworks
      Olá pessoal tudo bem? sou novo aqui no fórum, mais vou tentar ajudar um pouco com meu conhecimento  
      Hoje estarei trazendo para vocês um script que todos tem vontade de ter(eu acho) HUAHAUHAUH
      quando você entra naquele baiak e digita !autoloot e ve aquele scriptzão de pega loot e fica com vontade de ter,
      hoje estarei trazendo ele aqui pra vocês:
       

       
      Primeiramente o sistema é contido em 3 arquivos(Talkactions,creaturescripts,login.lua)
       
      Vamos começar pelo talkactions!
       
      Em talkactions.xml adicione a seguinte tag:
      <talkaction words="!autoloot" event="script" value="Auto Loot.lua"/> Agora vá na pasta talkactions/scripts e crie 1 arquivo chamado Auto Loot.lua e nele adicione o seguinte codigo:
      function ExistItemByName(name) -- by vodka local items = io.open("data/items/items.xml", "r"):read("*all") local get = items:match('name="' .. name ..'"') if get == nil or get == "" then return false end return true end local function getPlayerList(cid) local tab = {} if getPlayerStorageValue(cid, 04420021) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420021)) end if getPlayerStorageValue(cid, 04420031) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420031)) end if getPlayerStorageValue(cid, 04420041) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420041)) end if getPlayerStorageValue(cid, 04420051) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420051)) end if #tab > 0 then return tab end return false end local function addToList(cid, name) local itemid = getItemIdByName(name) if getPlayerList(cid) and isInArray(getPlayerList(cid), itemid) then return false end if getPlayerStorageValue(cid, 04420021) == -1 then return doPlayerSetStorageValue(cid, 04420021, itemid) elseif getPlayerStorageValue(cid, 04420031) == -1 then return doPlayerSetStorageValue(cid, 04420031, itemid) elseif getPlayerStorageValue(cid, 04420041) == -1 then return doPlayerSetStorageValue(cid, 04420041, itemid) elseif getPlayerStorageValue(cid, 04420051) == -1 then return doPlayerSetStorageValue(cid, 04420051, itemid) end end local function removeFromList(cid, name) local itemid = getItemIdByName(name) if getPlayerStorageValue(cid, 04420021) == itemid then return doPlayerSetStorageValue(cid, 04420021, -1) elseif getPlayerStorageValue(cid, 04420031) == itemid then return doPlayerSetStorageValue(cid, 04420031, -1) elseif getPlayerStorageValue(cid, 04420041) == itemid then return doPlayerSetStorageValue(cid, 04420041, -1) elseif getPlayerStorageValue(cid, 04420051) == itemid then return doPlayerSetStorageValue(cid, 04420051, -1) end return false end function onSay(cid, words, param) if param == "" then local fi = getPlayerStorageValue(cid, 04420021) ~= -1 and getItemNameById(getPlayerStorageValue(cid, 04420021)) or "" local se = not vip.hasVip(cid) and "Não disponível para free account" or getPlayerStorageValue(cid, 04420031) ~= -1 and getItemNameById(getPlayerStorageValue(cid, 04420031)) or "" local th = not vip.hasVip(cid) and "Não disponível para free account" or getPlayerStorageValue(cid, 04420041) ~= -1 and getItemNameById(getPlayerStorageValue(cid, 04420041)) or "" local fo = not vip.hasVip(cid) and "Não disponível para free account" or getPlayerStorageValue(cid, 04420051) ~= -1 and getItemNameById(getPlayerStorageValue(cid, 04420051)) or "" local stt = getPlayerStorageValue(cid, 04421011) == 1 and "sim" or "não" local str = getPlayerStorageValue(cid, 04421001) == 1 and "sim" or "não" doPlayerPopupFYI(cid, "{Auto-Loot} ---Menu Auto Loot do jogador\n{Auto-Loot} ----------------\n{Auto-Loot} ---Coletar dinheiro: "..stt..". Para ligar/desligar: !autoloot gold \n{Auto-Loot} ---Coletar itens únicos: "..str..". Para ligar/desligar: !autoloot power\n{Auto-Loot} --Configuração dos slots:\n{Auto-Loot} ---Slot 1: "..fi.."\n{Auto-Loot} ---Slot 2: "..se.."\n{Auto-Loot} ---Slot 3: "..th.."\n{Auto-Loot} ---Slot 4: "..fo.."\n{Auto-Loot} ---Para adicionar um novo item aos slots: !autoloot add, <nome do item>\n{Auto-Loot} ---Para retirar um item dos slots: !autoloot remove, <nome do item>\n{Auto-Loot} ---Para limpar todos os slots utilize: !autoloot clear\n{Auto-Loot} ---Para informações de quanto você já fez utilizando a coleta de dinheiro, use: !autoloot goldinfo\n\nSe seu autoloot bugar use !autoloot desbug\n\n{Auto-Loot} ----------------") return true end local t = string.explode(param, ",") if t[1] == "power" then local check = getPlayerStorageValue(cid, 04421001) == -1 and "ligou" or "desligou" doPlayerSetStorageValue(cid, 04421001, getPlayerStorageValue(cid, 04421001) == -1 and 1 or -1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você "..check.." o auto loot.") elseif t[1] == "gold" then local check = getPlayerStorageValue(cid, 04421011) == -1 and "ligou" or "desligou" doPlayerSetStorageValue(cid, 04421011, getPlayerStorageValue(cid, 04421011) == -1 and 1 or -1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você "..check.." a coleta de dinheiro.") doPlayerSetStorageValue(cid, 04421021, 0) elseif t[1] == "goldinfo" then local str = getPlayerStorageValue(cid, 04421011) == -1 and "O sistema de coleta de dinheiro está desligado" or "O sistema já coletou "..getPlayerStorageZero(cid, 04421021).." gold coins" doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, str) elseif t[1] == "add" then if ExistItemByName(t[2]) then local item = getItemIdByName(t[2]) if isInArray({2160, 2148, 2152}, item) then return doPlayerSendCancel(cid, "Você não pode adicionar moedas no autoloot. Para coletar dinheiro use !autoloot gold") end if vip.hasVip(cid) then if getPlayerStorageValue(cid, 04420011) < 3 then if addToList(cid, t[2]) then doPlayerSetStorageValue(cid, 04420011, getPlayerStorageValue(cid, 04420011) + 1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, t[2].." adicionado à sua lista do auto loot! Para ver sua lista diga !autoloot list") else doPlayerSendCancel(cid, t[2].." já está em sua lista!") end else doPlayerSendCancel(cid, "Sua lista já tem 4 itens! Você deve remover algum antes de adicionar outro.") end else if getPlayerStorageValue(cid, 04420011) == -1 then if addToList(cid, t[2]) then doPlayerSetStorageValue(cid, 04420011, getPlayerStorageValue(cid, 04420011) + 1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, t[2].." adicionado à sua lista do auto loot! Para ver sua lista diga !autoloot") else doPlayerSendCancel(cid, t[2].." já está em sua lista!") end else doPlayerSendCancel(cid, "Você já tem um item adicionado no auto loot! Para adicionar outro, você deve remover o item atual.") end end else doPlayerSendCancel(cid, "Este item não existe!") end elseif t[1] == "remove" then if ExistItemByName(t[2]) then if removeFromList(cid, t[2]) then doPlayerSetStorageValue(cid, 04420011, getPlayerStorageValue(cid, 04420011) - 1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, t[2].." removido da sua lista do auto loot!") else doPlayerSendCancel(cid, "Este item não está na sua lista!") end else doPlayerSendCancel(cid, "Este item não existe!") end elseif t[1] == "clear" then if getPlayerStorageValue(cid, 04420011) > -1 then doPlayerSetStorageValue(cid, 04420011, -1) doPlayerSetStorageValue(cid, 04420021, -1) doPlayerSetStorageValue(cid, 04420031, -1) doPlayerSetStorageValue(cid, 04420041, -1) doPlayerSetStorageValue(cid, 04420051, -1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Lista limpa!") else doPlayerSendCancel(cid, "Sua lista ja esta limpa!") end elseif t[1] == "desbug" or t[1] == "desbugar" then doPlayerSetStorageValue(cid, 04420011, -1) doPlayerSetStorageValue(cid, 04420021, -1) doPlayerSetStorageValue(cid, 04420031, -1) doPlayerSetStorageValue(cid, 04420041, -1) doPlayerSetStorageValue(cid, 04420051, -1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Desbugado!") elseif t[1] == "list" then local fi = getPlayerStorageValue(cid, 04420021) ~= -1 and ""..getItemNameById(getPlayerStorageValue(cid, 04420021)).."\n" or "" local se = getPlayerStorageValue(cid, 04420031) ~= -1 and ""..getItemNameById(getPlayerStorageValue(cid, 04420031)).."\n" or "" local th = getPlayerStorageValue(cid, 04420041) ~= -1 and ""..getItemNameById(getPlayerStorageValue(cid, 04420041)).."\n" or "" local fo = getPlayerStorageValue(cid, 04420051) ~= -1 and ""..getItemNameById(getPlayerStorageValue(cid, 04420051)).."\n" or "" doPlayerPopupFYI(cid, "O sistema auto loot está coletando:\n "..fi..""..se..""..th..""..fo) end return true end Lembrando esse script libera dois slots de autoloot pra free account e quatro slots para vip account, o sistema configurado nele é o vipSystemByMock caso use um script diferente basta alterar função vip.hasVip(cid)
       
      Vamos continuar?
      Próximo passo vamos adicionar o creaturescripts!
       
      Na pasta creaturescripts, abra o creaturescripts.xml e adicione a seguinte tag:
      <event type="kill" name="autoloot" event="script" value="Auto Loot.lua"/> Agora dentro da pasta creaturescripts vá ate a pasta scripts e crie um arquivo chamado Auto Loot.lua e adicione o seguinte codigo:
      local aloot_boost = {[2406] = 36, [2537] = 4800, [2377] = 480, [2663] = 600, [2472] = 195000, [2398] = 36, [2475] = 7200, [2519] = 6500, [2497] = 10700, [2523] = 180000, [2494] = 325000, [2400] = 144000, [2491] = 6000, [2421] = 325000, [2646] = 260000, [2477] = 7200, [2413] = 84, [2656] = 18000, [2498] = 52000, [2647] = 600, [2534] = 32500, [7402] = 19500, [2466] = 26000, [2465] = 240, [2408] = 120000, [2518] = 1800, [2500] = 3000, [2376] = 30, [2470] = 91000, [2388] = 24, [2645] = 26000, [2434] = 2400, [2463] = 480, [2536] = 11700, [2387] = 240, [2396] = 4800, [2381] = 240, [2528] = 4800, [2409] = 1800, [2414] = 12000, [2427] = 9000, [2407] = 7200, [2458] = 42, [2383] = 960, [2392] = 3600, [2488] = 18000, [2525] = 120, [2423] = 240, [7382] = 13000, [2462] = 1300, [2520] = 39000, [2390] = 180000, [2417] = 72, [2436] = 1200, [5741] = 52000, [2378] = 120, [2487] = 24000, [2476] = 6500, [8891] = 36000, [2459] = 36, [2195] = 52000, [2391] = 7200, [2464] = 120, [8889] = 72000, [2432] = 13000, [2431] = 108000, [2492] = 52000, [2515] = 240, [2430] = 2400, [2393] = 13000, [7419] = 36000, [2522] = 130000, [2514] = 65000} local function getPlayerStorageZero(cid, storage) -- By Killua local sto = getPlayerStorageValue(cid, storage) if tonumber(sto) then return tonumber(sto) > tonumber(0) and tonumber(sto) or tonumber(0) end return tonumber(0) end local tabela = {} local function getPlayerList(cid) local tab = {} if getPlayerStorageValue(cid, 04420021) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420021)) end if getPlayerStorageValue(cid, 04420031) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420031)) end if getPlayerStorageValue(cid, 04420041) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420041)) end if getPlayerStorageValue(cid, 04420051) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420051)) end if #tab > 0 then return tab end return {} end local function boost(cid) return tonumber(getPlayerStorageValue(cid,722381)) >= os.time() end local function autoLoot(cid, pos) if not isPlayer(cid) then return end local check = false local str = "" local position = {} for i = 1, 255 do pos.stackpos = i if getThingFromPos(pos).uid and getThingFromPos(pos).uid > 0 and isContainer(getThingFromPos(pos).uid) then position = pos check = true break end end if check then local corpse = getContainerItemsInfo(getThingFromPos(position).uid) if corpse then for index, info in pairs(corpse) do if index < countTable(corpse) then if info.uid and info.itemid then if isContainer(info.uid) then local bag = getContainerItemsInfo(info.uid) for i = 1, countTable(bag) do if isInArray(getPlayerList(cid), bag[i].itemid) then if bag[i].quant > 1 then doRemoveItem(bag[i].uid, bag[i].quant) doPlayerAddItem(cid, bag[i].itemid, bag[i].quant) str = str.." "..bag[i].quant.." "..getItemNameById(bag[i].itemid).." +" else doRemoveItem(bag[i].uid) if boost(cid) then if aloot_boost[bag[i].itemid] then doPlayerSetBalance(cid,getPlayerBalance(cid) + aloot_boost[bag[i].itemid]) str = str.." 1 "..getItemNameById(bag[i].itemid).." ("..aloot_boost[bag[i].itemid].."gp no banco) +" else doPlayerAddItem(cid, bag[i].itemid, 1) str = str.." 1 "..getItemNameById(bag[i].itemid).." +" end else doPlayerAddItem(cid, bag[i].itemid, 1) str = str.." 1 "..getItemNameById(bag[i].itemid).." +" end end end end end end end if isInArray(getPlayerList(cid), info.itemid) then if info.quant > 1 then doRemoveItem(info.uid, info.quant) doPlayerAddItem(cid, info.itemid, info.quant) str = str.." "..info.quant.." "..getItemNameById(info.itemid).." +" else doRemoveItem(info.uid) if boost(cid) then if aloot_boost[info.itemid] then doPlayerSetBalance(cid,getPlayerBalance(cid) + aloot_boost[info.itemid]) str = str.." 1 "..getItemNameById(info.itemid).." ("..aloot_boost[info.itemid].."gps no banco) +" else doPlayerAddItem(cid, info.itemid, 1) str = str.." 1 "..getItemNameById(info.itemid).." +" end else doPlayerAddItem(cid, info.itemid, 1) str = str.." 1 "..getItemNameById(info.itemid).." +" end end end end end end setPlayerTableStorage(cid,822564,{[1] = str, [2] = 0}) end local function autoGold(cid, pos) if not isPlayer(cid) then return end local check = false local total = 0 local position = {} for i = 1, 255 do pos.stackpos = i if getThingFromPos(pos).uid and getThingFromPos(pos).uid > 0 and isContainer(getThingFromPos(pos).uid) then position = pos check = true break end end if check then local corpse = getContainerItemsInfo(getThingFromPos(position).uid) if corpse then for index, info in pairs(corpse) do if info.uid and info.itemid then if index < countTable(corpse) then if isContainer(info.uid) then local bag = getContainerItemsInfo(info.uid) for i = 1, countTable(bag) do if isInArray({2148, 2152, 2160}, bag[i].itemid) then local multiplie = 1 if bag[i].itemid == 2148 then multiplie = 1 elseif bag[i].itemid == 2152 then multiplie = 100 elseif bag[i].itemid == 2160 then multiplie = 10000 end doRemoveItem(bag[i].uid, bag[i].quant) doPlayerSetBalance(cid, getPlayerBalance(cid) + tonumber(bag[i].quant) * multiplie) total = total + bag[i].quant * multiplie doPlayerSetStorageValue(cid, 04421021, tonumber(getPlayerStorageZero(cid, 04421021)) + tonumber(info.quant) * tonumber(multiplie)) end end end end if isInArray({2148, 2152, 2160}, info.itemid) then local multiplie = 1 if info.itemid == 2148 then multiplie = 1 elseif info.itemid == 2152 then multiplie = 100 elseif info.itemid == 2160 then multiplie = 10000 end doRemoveItem(info.uid, info.quant) doPlayerSetBalance(cid, getPlayerBalance(cid) + info.quant * multiplie) doPlayerSetStorageValue(cid, 04421021, tonumber(getPlayerStorageZero(cid, 04421021)) + tonumber(info.quant) * tonumber(multiplie)) total = total + info.quant * multiplie end end end end end if total > 0 then total = total - (total * 0.2) total = math.ceil(total) doPlayerSetBalance(cid,getPlayerBalance(cid) + total) local tab = getPlayerTableStorage(cid,822564) tab[2] = total setPlayerTableStorage(cid,822564,tab) end end local function sendMsg(cid) if not isPlayer(cid) then return end local tab = getPlayerTableStorage(cid,822564) if countTable(tab) >= 1 then if tab[1] then if tab[2] and tab[2] > 0 then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "[Auto Loot System] Coletados: ".. tab[1] .." ".. tab[2] .." gold coins.") else if type(tab[1]) == "string" and string.len(tab[1]) > 1 then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "[Auto Loot System] Coletados: "..tab[1]) end end elseif not tab[1] then if tab[2] then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "[Auto Loot System] Coletados: "..tab[2].." gold coins.") end end end doPlayerSetStorageValue(cid,822564,-1) end function onKill(cid, target, lastHit) if isPlayer(cid) and isMonster(target) then if getPlayerStorageValue(cid, 04421001) == 1 and #getPlayerList(cid) > 0 then local pos = getCreaturePosition(target) addEvent(autoLoot, 500, cid, pos) end if getPlayerStorageValue(cid, 04421011) == 1 then local pos = getCreaturePosition(target) addEvent(autoGold, 540, cid, pos) end if getPlayerStorageValue(cid, 04421001) == 1 or getPlayerStorageValue(cid, 04421011) == 1 then addEvent(sendMsg, 560, cid) end end return true end  
      E por fim ainda dentro da pagina scripts procure o arquivo login.lua e registre a seguinte tag:
       
      registerCreatureEvent(cid, "autoloot") registerCreatureEvent(cid, "Auto Loot")  
      Créditos: Killua - Vitor cardoso bertolucci
       
      Obrigado a todos e até a próxima!
      JNetworks.com.br
       
       

      Jnetworks agradece a preferência!
       
       
       
      Está querendo abrir 1 OTServer e não sabe onde hospedar?
      Acesse: JNetworks.com.br
      Instalamos seu OTServer apartir da contratação de 3GB de ram!
    • Por gilsonnj
      Boa tarde pessoal, estou tentando implementar o autoloot no meu servidor ele é versão OTX 2.15 já tentei de tudo e não consigo, a interface do autoloot funciona perfeitamente, adiciona e remove itens normal, liga e desliga normal, porém quando mata o bicho não está coletando itens, tentei em outro servidor TFS 1.1 e também não pegou de jeito nenhum alguém sabe como resolver? Já tentei vários Scripts todos pegam a interface mas nenhum coleta os items
  • Estatísticas dos Fóruns

    96837
    Tópicos
    519572
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo