Ir para conteúdo

mullino

Membro
  • Registro em

  • Última visita

Tudo que mullino postou

  1. quando eu tento usar o commando !rank resets da esse erro na distro e ele nao funciona [Error - mysql_real_query] Query: SELECT 'name', 'resets' FROM 'players' WHERE group_id < '2' ORDER BY 'resets' DESC LIMIT 50; Message: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''players' WHERE group_id < '2' ORDER BY 'resets' DESC LIMIT 50' at line 1 [Error - mysql_store_result] Query: SELECT 'name', 'resets' FROM 'players' WHERE group_id < '2' ORDER BY 'resets' DESC LIMIT 50; Message: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''players' WHERE group_id < '2' ORDER BY 'resets' DESC LIMIT 50' at line 1 [Error - TalkAction Interface] data/talkactions/scripts/ranks.lua:onSay Description: data/lib/004-database.lua:106: attempt to call global 'error' (a string value) stack traceback: data/lib/004-database.lua:106: in function 'free' data/talkactions/scripts/ranks.lua:84: in function <data/talkactions/scripts/ranks.lua:5>
  2. mullino postou uma resposta no tópico em Tutoriais sobre Scripting
    Me explica essa linha? -1 , -60 ,-1, -60,5 ,5 ,4, 7 Como configurar?
  3. no bau que vc colocou para ser a quest da 2 cliques nele e coloca esse numero 3513 ficando assim ajudei + rep e marca como melhor resposta!! clica aliii
  4. tem alguma outra pasta antes dos arquivos da source ?
  5. abre o actions.xml e perquisa quests
  6. qual nome da pasta que voce tirou esse script??
  7. apt-get install make vc tem que estar no diretorio da sua source ex: se sua source esta na sua pasta do otserv cd /home/otserv/source enter (se o indereço da sua source for essa.
  8. pesquisa o nome da pasta que é essa script no actions.xml vai ter um actoinid=xxx pega esse numero e coloca no bau da quest que vc mudou de lugar
  9. quero mostrar no game mesmo pq ja tem o comando !rank magic !rank distance !rank sword !rank level e eu queria add o !rank resets aki junto.
  10. mullino postou uma resposta no tópico em Suporte Tibia OTServer
    Ajuda como amigo ? vc so postou a foto do mapa ai mas nao especificou que tipo de ajuda vc quer!
  11. bom dia TK Gostaria da ajuda de vcs eu tenho um sistema de reset por db e nao estou conseguindo nem achei nenhun sistema de rank por db aki no forum vcs poderiao me ajudar? script de reset local config = { minlevel = 10000, --- level inical para resetar price = 100000, --- preço inicial para resetar newlevel = 20, --- level apos reset priceByReset = 90000, --- preço acrescentado por reset percent = 80, ---- porcentagem da vida/mana que você terá ao resetar (em relação à sua antiga vida total) maxresets = 25, look = true, levelbyreset = 8000 --- quanto de level vai precisar a mais no próximo reset } local function getResets(cid) local query = db.getResult("SELECT `resets` FROM `players` WHERE `id`= "..getPlayerGUID(cid)) return query:getDataInt("resets") <= 0 and 0 or query:getDataInt("resets") end local function addReset(cid) local resets = getResets(cid) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) local hp = getCreatureMaxHealth(cid) local resethp = hp*(config.percent/100) setCreatureMaxHealth(cid, resethp) local differencehp = (hp - resethp) doCreatureAddHealth(cid, -differencehp) local mana = getCreatureMaxMana(cid) local resetmana = mana*(config.percent/100) setCreatureMaxMana(cid, resetmana) local differencemana = (mana - resetmana) doCreatureAddMana(cid, -differencemana) local guid = getPlayerGUID(cid) doRemoveCreature(cid) local description = resets+1 db.query("UPDATE `players` SET `level` = "..config.newlevel..", `experience`= 0, `resets`= "..description.." WHERE `players`.`id`= ".. guid) return true end function onSay(cid, words, param, channel) if not isInArea(getThingPos(cid),{x = 294, y = 33, z = 7},{x = 314, y = 50, z = 7}) then doPlayerSendCancel(cid, "Nao pode resetar aqui!") return true end local var = getResets(cid) local newPrice = config.price + (var * config.priceByReset) local newminlevel = config.minlevel + (var * config.levelbyreset) if param == "quantity" then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'You have a total of '..var..' reset(s).') end if var >= config.maxresets then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,'You already have reached the maximum of '.. config.maxresets.. ' resets!') elseif getPlayerMoney(cid) < newPrice then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,'Its necessary to have at least '..newPrice..' gp\'s for reseting!') elseif getPlayerLevel(cid) < newminlevel then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,'The minimum level for reseting is '..newminlevel..'!') end doPlayerRemoveMoney(cid,newPrice) addEvent(function() if isPlayer(cid) then addReset(cid) end end, 3000) local number = var+1 local msg ="---[Reset: "..number.."]-- You have reseted! You'll be disconnected in 3 seconds." doPlayerPopupFYI(cid, msg) return true end script de rank local displayoutput = {"Level","Magic Level","Fist Fighting","Club Fighting","Sword Fighting","Axe Fighting","Distance Fighting","Shielding"} local itemtype = {9969,9933,5896,8929,8932,7388,8849,8906,2580} function onSay(cid, words, param) number = 1 param = string.lower(param) skilllist = "" command = TRUE if param == "level" then display = 1 elseif param == "magic" then display = 2 elseif param == "club" then id = 1 display = 4 elseif param == "sword" then id = 2 display = 5 elseif param == "axe" then id = 3 display = 6 elseif param == "distance" then id = 4 display = 7 elseif param == "shield" then id = 5 display = 8 else error = 'Highscore Commands:\n\n!rank level\n!rank magic\n!rank fist\n!rank club\n!rank sword\n!rank axe\n!rank distance\n!rank shield\n' doShowTextDialog(cid, 5958, error) command = FALSE end if command ~= FALSE then if display == 1 then local player = db.getResult("SELECT `name`, `level` FROM `players` WHERE group_id < '2' ORDER BY `level` DESC LIMIT 50;") if(player:getID() ~= -1) then while (true) do local name = player:getDataString("name") local level = player:getDataInt("level") skilllist = skilllist.. "\n#"..string.format("%5s",number.." "..name.." - "..level) number = number + 1 if not(player:next()) then break end end player:free() end elseif display == 2 then local player = db.getResult("SELECT `name`, `maglevel` FROM `players` WHERE group_id < '2' ORDER BY `maglevel` DESC LIMIT 50;") if(player:getID() ~= -1) then while (true) do local name = player:getDataString("name") local maglevel = player:getDataInt("maglevel") skilllist = skilllist.. "\n#"..string.format("%5s",number.." "..name.." - "..maglevel) if not(player:next()) then break end number = number + 1 end end player:free() else local skills = db.getResult("SELECT `player_id`, `value`, `skillid` FROM `player_skills` WHERE `skillid` = "..id.." ORDER BY `value` DESC;") while (true) do local GUID = skills:getDataInt("player_id") local value = skills:getDataInt("value") local skillid = skills:getDataInt("skillid") local player = db.getResult("SELECT `name` FROM `players` WHERE `id` = "..GUID.." and group_id < '2' ") if(player:getID() ~= -1) then local name = player:getDataString("name") skilllist = skilllist.. "\n#"..string.format("%5s",number.." "..name.." - "..value) number = number + 1 player:free() end if number > 50 then break end if not(skills:next()) then break end end skills:free() end dialog = ""..displayoutput[display].." Highscores: \n "..skilllist.."" doShowTextDialog(cid, itemtype[display], dialog) end end
  12. obrigado mano eu estou tentando criar o meu propio pra entender mais como funciona as funçoes tibia e como usalas mas obrigado pela ajuda .. consegui fazer o meu era as ordems das funçoes que estavao erradas o meu ficou assim --- vou confiar em meus scripts ----by ADM Indio local config = { resets = 5, msgWelcomeReset = "Bem-Vindo A Area Reset!", msgCancel = "Vc Precisa ter 5 Resets Para Passar" } function onStepIn(cid, item, position, fromPosition) resets = db.getResult("SELECT `resets` FROM `players` WHERE `id` = " ..getPlayerGUID(cid)):getDataInt("resets") if getPlayerResets(cid) >= config.resets then doPlayerSendTextMessage(cid, 22, config.msgWelcomeReset) else doTeleportThing(cid, fromPosition, FALSE) doPlayerPopupFYI(cid, config.msgCancel) end return true end
  13. boa tarde galerinha do tk tudo bem? estou com um problema aqui vcs podem me ajudar? estou tentando aprender scripts, vendo ums tutoriais aqui ums ali, ate consegui criar ums 2 scripts de actions faceis estou tentando agora criar um que o player so pode passar em um tile se tiver 5 resets mas nao esta dando muito certo segue o script que fiz local config = { reset = 5, msgWelcomeReset = "Bem-vindo A Area Reset!", msgCancel = "Vc Precisa ter 5 Resets Para Passar" } function getPlayerReset(cid) local qr = db.getResult("SELECT `resets` FROM `players` WHERE `id`= "..getPlayerGUID(cid)) return qr:getDataInt("resets") == 5 and 5 or qr:getDataInt("resets") end function onStepIn(cid, item, position, fromPosition) if getPlayerResets(cid) >= config.levelresets and getPlayerResets(cid) == 5 then doPlayerSendTextMessage(cid, 22, config.msgWelcomeReset) else doPlayerPopupFYI(cid, config.msgCancel) end return true end segue o erro [Error - MoveEvents Interface] data/movements/scripts/tiledonate.lua:onStepIn Description: data/movements/scripts/tiledonate.lua:14: attempt to compare nil with number stack traceback: data/movements/scripts/tiledonate.lua:14: in function <data/movements/scripts/tiledonate.lua:13> [Error - MoveEvents Interface] data/movements/scripts/tiledonate.lua:onStepIn Description: data/movements/scripts/tiledonate.lua:14: attempt to compare nil with number stack traceback: data/movements/scripts/tiledonate.lua:14: in function <data/movements/scripts/tiledonate.lua:13> alguem tem alguma dica pra min ai?
  14. Bom dia Galerinha do Tk Gostaria da ajuda de voces para criar um script onde o player usa x items em uma house e esse item usado cria um teleporte que fica aberto por 10 dias depois de 10 dias o teleporte some. eu quero criar uma uma cave privada que fique na casa do player onde ele usa o item na casa dele e abre um teleporte dando acesso a uma Hunter que somente ele possa upar nessa área por 10 dias. mas eu quero criar varias para vender no site e cada item que for usado seja diferente um do outro para não ter como mais de um player upar nessa área. vai ser igual as caves exclusivas por 2 horas porem em vez de 2 horas possa ser 10 dias. acho q posso pegar os scripts das caves exclusivas como base né?
  15. mullino postou uma resposta no tópico em Suporte Tibia OTServer
    obrigado mano ja ajudou bastante.... vou tentar criar um script aki se complicar de mais chamo vc kkkk um actions é coisa basica ne pra comessar? vc tem discord?
  16. mullino postou uma resposta no tópico em Suporte Tibia OTServer
    Boa noite Galerinha Do TK... Gostaria da Ajuda De Voces Para Me Ajudar A Comessar Criar Scripts... Vi Alguns Tutoriais, Baixei as Funçoes tibia, mas so com as funçoes nao vou conseguir desenvolver scripts algun tem muitas sintaxe que eu nao sei como usar..... ex: then , == , return true , end ETC... quando devo usar? depois de que devo usar? gostaria de saber se tem alguem que possa me auxiliar comessando ums primeiros scripts, dando umas dicas legais ... me passando ums scripts faceis pra min fazer e ir treinando ..... estou muito entereçado em aprender mas sozinho é complicado.... tenho discord ADM Indio#8310 se alguem quiser add des de ja obrigado a todos..
  17. Esse script é de 2011 Está bem desatualizado O problema é que não achei nenhum sistema de pet que o pet evolui com o player certinho .todos têm bugs E esse foi o mais próximo do perfeito que achei . Chegar em casa vou tentar.
  18. @Reds Como faço isso ? Colocar o nome do monstro? Se for são 3 monstros ... Aí eu coloco o nome dos 3 aí ou só de 1?
  19. como ta o nome da tua tabala ... "reset" ou "resets " ? eu tive esse problema ai eu add outra tabela com o nome reset pq a minha estava resets
  20. basta vc colocar os items que add vip do seu servidor para vender em game. se tem o comando de add vip entao tem o item que o player usa e ganha a vip
  21. @jakons local config = { minlevel = 30000, --- level inical para resetar price = 100000, --- preço inicial para resetar newlevel = 20, --- level apos reset priceByReset = 90000, --- preço acrescentado por reset percent = 80, ---- porcentagem da vida/mana que vocĂŞ terĂĄ ao resetar (em relação Ă sua antiga vida total) maxresets = 25, look = true, levelbyreset = 10000 --- quanto de level vai precisar a mais no prĂłximo reset } local function getResets(cid) local query = db.getResult("SELECT `reset` FROM `players` WHERE `id`= "..getPlayerGUID(cid)) return query:getDataInt("reset") <= 0 and 0 or query:getDataInt("reset") end local function addReset(cid) local resets = getResets(cid) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) local hp = getCreatureMaxHealth(cid) local resethp = hp*(config.percent/100) setCreatureMaxHealth(cid, resethp) local differencehp = (hp - resethp) doCreatureAddHealth(cid, -differencehp) local mana = getCreatureMaxMana(cid) local resetmana = mana*(config.percent/100) setCreatureMaxMana(cid, resetmana) local differencemana = (mana - resetmana) doCreatureAddMana(cid, -differencemana) local guid = getPlayerGUID(cid) doRemoveCreature(cid) local description = resets+1 db.query("UPDATE `players` SET `level` = "..config.newlevel..", `experience`= 0, `reset`= "..description.." WHERE `players`.`id`= ".. guid) return true end function onSay(cid, words, param, channel) local var = getResets(cid) local newPrice = config.price + (var * config.priceByReset) local newminlevel = config.minlevel + (var * config.levelbyreset) if param == "quantity" then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'You have a total of '..var..' reset(s).') end if var >= config.maxresets then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,'You already have reached the maximum of '.. config.maxresets.. ' resets!') elseif getPlayerMoney(cid) < newPrice then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,'Its necessary to have at least '..newPrice..' gp\'s for reseting!') elseif getPlayerLevel(cid) < newminlevel then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,'The minimum level for reseting is '..newminlevel..'!') end doPlayerRemoveMoney(cid,newPrice) addEvent(function() if isPlayer(cid) then addReset(cid) end end, 3000) local number = var+1 local msg ="---[Reset: "..number.."]-- You have reseted! You'll be disconnected in 3 seconds." doPlayerPopupFYI(cid, msg) return true end Testa esse so configura do Jeito que vc Quer .
  22. alguem ajuda?
  23. obrigamo mano funcionou perfeitamente vc é 10 mano + Rep
  24. agora deu vamo testar ja voltou reputando e marcando melhor resposta mas des de ja muito obrigado manooo para almentar o dano a cada magic level eu abaixo ou almento esses numeros?

Informação Importante

Confirmação de Termo