Ir para conteúdo

WhiteBubble

Membro
  • Registro em

  • Última visita

Tudo que WhiteBubble postou

  1. WhiteBubble postou uma resposta no tópico em Suporte Tibia OTServer
    Se for windows é só entrar no semi dedicado e colocar online, mas se for linux tera que compilar e usar uns comandos no putty.
  2. Não é o npc/monstro que ta configurado errado pra esse tile ?(void)
  3. Bom, o servidor não ta conseguindo conectar ao mysql (database) que fica no localhost (seu pc). Pode ser algo configurado errado no config.php do seu site ou no config.lua.
  4. WhiteBubble postou uma resposta no tópico em Suporte Tibia OTServer
    Eu nunca usei o Otpainel mas acredito eu que não tenha nada de dificil, bom acho que é so você colocar a pasta do seu server ai e configurar o config.lua e abrir o server.
  5. Eu não recomendaria por este servidor online, tem um "bug" proposital que ele colocou que quando se clica em certos itens espalhados pelo mapa você vira god, fora outras coisas.
  6. Que problemas ?
  7. @login12 Mandei o errado kk, mas acredito que seja esse. bool IOGuild::invitePlayer(uint32_t guild, uint32_t guid) { Database* db = Database::getInstance(); DBQuery query; query << "INSERT INTO `guild_invites` (`player_id`, `guild_id`) VALUES ('" << guid << "', '" << guild << "')"; return db->query(query.str()); }
  8. @login12 consegui editar essa função da source ? pra aceitar uma determinada quantidade de players ? bool IOGuild::joinGuild(Player* player, uint32_t guildId, bool creation/* = false*/) { Database* db = Database::getInstance(); DBResult* result; DBQuery query; query << "SELECT `id` FROM `guild_ranks` WHERE `guild_id` = " << guildId << " AND `level` = " << (creation ? "3" : "1") << " LIMIT 1"; if(!(result = db->storeQuery(query.str()))) return false; const uint32_t rankId = result->getDataInt("id"); result->free(); std::string guildName; if(!creation) { query.str(""); query << "SELECT `name` FROM `guilds` WHERE `id` = " << guildId << " LIMIT 1"; if(!(result = db->storeQuery(query.str()))) return false; guildName = result->getDataString("name"); result->free(); } query.str(""); query << "UPDATE `players` SET `rank_id` = " << rankId << " WHERE `id` = " << player->getGUID() << db->getUpdateLimiter(); if(!db->query(query.str())) return false; player->setGuildId(guildId); GuildLevel_t level = GUILDLEVEL_MEMBER; if(!creation) player->setGuildName(guildName); else level = GUILDLEVEL_LEADER; player->setGuildLevel(level, rankId); player->invitedToGuildsList.clear(); return true; }
  9. @poko360 Acredito eu que de pra criar um script em movements, mas eu tenho as sources 0.4 se o @login12 souber editar nas sources. Eu passo pra você ou compilo se não souber
  10. @poko360 Qual seu tfs ? Versão do seu servidor ?
  11. E por causa do looktype <look type="453"/> o meu servidor é derivado portanto tem varios looktypes, só alterar esse numero ai.
  12. O comando de invitar pra guild e criar fica nas sources no ioguild.cpp. Ele precisaria editar a função da source.
  13. @poko360 No seu servidor se cria guild dentro do jogo ou pelo site ?
  14. @KingsotServ Executa essa query no sqlite. DROP TABLE IF EXISTS players; CREATE TABLE players ( id INTEGER PRIMARY KEY NOT NULL, name VARCHAR( 255 ) NOT NULL, world_id INTEGER NOT NULL DEFAULT '0', group_id INTEGER NOT NULL DEFAULT '1', account_id INTEGER NOT NULL, level INTEGER NOT NULL DEFAULT '1', vocation INTEGER NOT NULL DEFAULT '0', health INTEGER NOT NULL DEFAULT '100', healthmax INTEGER NOT NULL DEFAULT '100', experience INTEGER NOT NULL DEFAULT '0', lookbody INTEGER NOT NULL DEFAULT '10', lookfeet INTEGER NOT NULL DEFAULT '10', lookhead INTEGER NOT NULL DEFAULT '10', looklegs INTEGER NOT NULL DEFAULT '10', looktype INTEGER NOT NULL DEFAULT '136', lookaddons INTEGER NOT NULL DEFAULT '0', lookmount INTEGER NOT NULL DEFAULT '0', maglevel INTEGER NOT NULL DEFAULT '0', mana INTEGER NOT NULL DEFAULT '100', manamax INTEGER NOT NULL DEFAULT '100', manaspent INTEGER NOT NULL DEFAULT '0', soul INTEGER NOT NULL DEFAULT '0', town_id INTEGER NOT NULL, posx INTEGER NOT NULL DEFAULT '32369', posy INTEGER NOT NULL DEFAULT '32241', posz INTEGER NOT NULL DEFAULT '7', conditions BLOB NOT NULL, cap INTEGER NOT NULL DEFAULT '0', sex INTEGER NOT NULL DEFAULT '0', lastlogin INTEGER NOT NULL DEFAULT '0', lastip INTEGER NOT NULL DEFAULT '0', save BOOLEAN NOT NULL DEFAULT 'TRUE', skull INTEGER NOT NULL DEFAULT '0', skulltime INTEGER NOT NULL DEFAULT '0', rank_id INTEGER NOT NULL, guildnick VARCHAR( 255 ) NOT NULL DEFAULT '''', lastlogout INTEGER NOT NULL DEFAULT '0', blessings INTEGER NOT NULL DEFAULT '0', pvp_blessing BOOLEAN NOT NULL DEFAULT 'FALSE', balance INTEGER NOT NULL DEFAULT '0', stamina INTEGER NOT NULL DEFAULT '151200000', direction INTEGER NOT NULL DEFAULT '2', loss_experience INTEGER NOT NULL DEFAULT '100', loss_mana INTEGER NOT NULL DEFAULT '100', loss_skills INTEGER NOT NULL DEFAULT '100', loss_containers INTEGER NOT NULL DEFAULT '100', loss_items INTEGER NOT NULL DEFAULT '100', premend INTEGER NOT NULL DEFAULT '0', online INTEGER NOT NULL DEFAULT '0', marriage INTEGER NOT NULL DEFAULT '0', promotion INTEGER NOT NULL DEFAULT '0', deleted INTEGER NOT NULL DEFAULT '0', description VARCHAR( 255 ) NOT NULL DEFAULT '''', comment TEXT NOT NULL, create_ip INT( 11 ) NOT NULL DEFAULT '0', create_date INT( 11 ) NOT NULL DEFAULT '0', hide_char INT( 11 ) NOT NULL DEFAULT '0', signature TEXT NOT NULL, offlinetraining_time SMALLINT UNSIGNED NOT NULL DEFAULT '43200', offlinetraining_skill INT NOT NULL DEFAULT '-1', cast TINYINT( 4 ) NOT NULL DEFAULT '0', castViewers INT( 11 ) NOT NULL DEFAULT '0', castDescription VARCHAR( 255 ) NOT NULL, created INT( 11 ) NOT NULL DEFAULT '0', nick_verify INT( 11 ) NOT NULL DEFAULT '0', old_name VARCHAR( 255 ) NOT NULL DEFAULT '', worldtransfer INT( 11 ) NOT NULL DEFAULT '0', show_outfit TINYINT( 4 ) NOT NULL DEFAULT '1', show_eq TINYINT( 4 ) NOT NULL DEFAULT '1', show_bars TINYINT( 4 ) NOT NULL DEFAULT '1', show_skills TINYINT( 4 ) NOT NULL DEFAULT '1', show_quests TINYINT( 4 ) NOT NULL DEFAULT '1', stars INT( 10 ) NOT NULL DEFAULT '0', ip VARCHAR( 17 ) NOT NULL DEFAULT '0', UNIQUE ( name, deleted ), FOREIGN KEY ( account_id ) REFERENCES accounts ( id ) ); INSERT INTO `players` VALUES (1, 'Account Manager', 0, 1, 1, 8, 0, 180, 180, 4200, 0, 0, 0, 0, 110, 0, 0, 0, 35, 35, 0, 0, 2, 32369, 32241, 7, '', 400, 0, 1400804121, 202641162, 0, 0, 0, 0, '', 0, 0, 0, 0, 201660000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', '', 0, 0, 0, '', 43200, -1, 0, 0, '', 0, 0, '', 0, 1, 1, 1, 1, 1, 0, 0);
  15. WhiteBubble postou uma resposta no tópico em Suporte Tibia OTServer
    @sinfulacts Você precisa de que tipo de ajuda ? Em que no caso ?
  16. @poko360 Testa esse aqui. local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid local itemid = 2157 -- Novos points local shopWindow = {} local t = { [8850] = {price = 400}, -- [ID do item] e o preço que ele irá custar em points. [8929] = {price = 400}, [8932] = {price = 400}, [8926] = {price = 400}, [2424] = {price = 400}, [11296] = {price = 200}, [11295] = {price = 200}, [11298] = {price = 200}, [11297] = {price = 200}, [2527] = {price = 200}, [2108] = {price = 900}, [9019] = {price = 900}, [3955] = {price = 900} } local onBuy = function(cid, item, subType, amount, ignoreCap, inBackpacks) if t[item] and getPlayerItemCount(cid, itemid) < t[item].price then selfSay("you do not have "..t[item].price.." Nugget Coins.", cid) else doPlayerAddItem(cid, item) doPlayerRemoveItem(cid, itemid, (t[item].price)) selfSay("Here you item", cid) end return true end if (msgcontains(msg, 'trade') or msgcontains(msg, 'TRADE'))then for var, ret in pairs(t) do table.insert(shopWindow, {id = var, subType = 0, buy = ret.price, sell = 0, name = getItemNameById(var)}) end openShopWindow(cid, shopWindow, onBuy, onSell) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  17. Como ninguem me ajudou, fiz umas gambiarra peguei uns pedaços de uns scripts depois interpretei os erros da distro e consegui fazer,caso alguem precise aqui o script. OBS: Não sei se tem alguma função unica do meu server. function onSay(cid, words, param) if (getPlayerStorageValue(cid,100023) ~= 1 and (getPlayerLevel(cid) >= 800)) then doPlayerAddExp(cid, getExperienceForLevel(100)-getPlayerExperience(cid)) doCreatureAddMana(cid, getCreatureMaxMana(cid)-getCreatureMana(cid)) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)-getCreatureHealth(cid)) setPlayerStorageValue(cid,100023,1) doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "Voce resetou!") doRemoveCreature(cid) else doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "Voce ja tem 1 reset ou nao esta level 800.") end end
  18. Ola pessoal, primeiramente boa tarde gostaria de fazer um pedido que é um sistema de reset, sei que tem varios no forum mas não são como eu quero. Enfim, quero da seguinte forma: Player precisa estar level 800 no minimo e não ter nenhum reset pra usar o comando, pode ser por talkactions ou npc o que for mais facil para vocês. Limite maximo de 1 reset. Quando player resetar voltar o level dele para 100 e a mana e vida de um level 100 também. e setar uma storage 1020 por exemplo, pois vou por esta storage para entrar numa area de reset. Resumindo, e so um comando ou npc que faça o player voltar para o level 100 com a vida e mana de um level 100 e ganha a storage.
  19. Desculpa demora pra responder, e a distro só que nao posso voltar pra original por eu n ter as sources dela por isso tava querendo arrumar esse erro que esta dando.
  20. WhiteBubble postou uma resposta no tópico em Suporte Tibia OTServer
    Em npc/scripts nao tem o npc "entrarsaffari.lua"
  21. Ola pessoal, meu servidor e de dbo 8.60 e quando alguns players "morrem" a vida fica 0 e a mana 0 mais nao morrem acredito que seja a distro que mudei, mas alguns vão falar para por a antiga só que não posso porque a atual minha eu tenho as source e a distro antiga não tenho, por isso acho que o erro seria na source. Segue abaixo print do erro. Obs: na distro nao acusa nenhum erro.
  22. Eu sei que este topico é antigo mas eu queria usar esse script em um npc e como intendo muito pouco sobre scripts consegui fazer um npc com base em outro de meu server, enfim vai que alguem queira o npc e não saiba criar vou posta-lo aqui. Em npc cria um arquivo com nome P trader.xml e adicione isso dentro: <?xml version="1.0" encoding="UTF-8"?> <npc name="Points Trader" script="P trader.lua" walkinterval="2000"> <health now="100" max="100"/> <look type="453"/> <parameters> <parameter key="message_greet" value="Olá, |PLAYERNAME|! Eu vendo itens por P Points (Horas Online). Diga {Trade}."/> </parameters> </npc> Agora em npc/scripts crie um arquivo .lua com nome P trader.lua e adicione isso dentro: local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid local shopWindow = {} local t = { [5957] = 240, -- [id do item] = quantos pontos vai custar [2159] = 25, [2396] = 5, [2397] = 5, [2398] = 5, [2493] = 5, [2494] = 5, [2495] = 5, [2496] = 5, [2331] = 1 } local onBuy = function(cid, item, subType, amount, ignoreCap, inBackpacks) if t[item] and getPoints(cid) < t[item] then selfSay("Você precisa de "..t[item].." P points para comprar este item.", cid) else doPlayerRemovePoints(cid, t[item]) doPlayerAddItem(cid, item) selfSay("Aqui esta seu item", cid) end return true end if (msgcontains(msg, 'trade') or msgcontains(msg, 'TRADE'))then for var, ret in pairs(t) do table.insert(shopWindow, {id = var, subType = 0, buy = ret, sell = 0, name = getItemNameById(var)}) end openShopWindow(cid, shopWindow, onBuy, onSell) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Acho que nem preciso explicar como configurar.
  23. Em vocations.xml aonde ta fromvoc="..." você tem que por o id da vocation, por exemplo knight é vocation id "2" então o fromvoc tem que estar "2" tambem. Acho que é isso que esta acontecendo.
  24. Olá pessoal, estou montando um servidor e o npc reborn não quer funcionar acho que o erro esta no npchandler não no reborn alguma função esta diferente talvez por serem de versões diferentes mas enfim segue print abaixo do erro. @Edit o erro era que eu estava testando com uma vocation que não tem no script de reborn e por isso dava o erro, problema ja resolvido

Informação Importante

Confirmação de Termo