Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 12/26/15 em todas áreas

  1. Strogman

    Perfect nick system 100%

    exclusividade xtibia porfavor não postar em outro forum system exclusivo para o xtibia Bom vi muito gente a traz desse sistema e, então resolvi fazer esse nick para ajudar a galera que quer sair do Lixo do pda e começar um projeto bom com os open source. para quem não sabe, nick system é um system muito popular na família dos poketibias, é um system que muda o nome/adiciona um apelido no personagem, muda o nome de exibição no client o nome que fica em cima do personagem no jogo. fulano: Gristony como essa função funciona? Gristony: exatamente igual a do pda! Em ProtocolGame.cpp em baixo de: void ProtocolGameAddShopItem(NetworkMessage_ptr msg, const ShopInfo item){ const ItemType& it = Itemitems[item.itemId]; msg->AddU16(it.clientId); if(it.isSplash() || it.isFluidContainer()) msg->AddByte(fluidMap[item.subType % 8]); else if(it.stackable || it.charges) msg->AddByte(item.subType); else msg->AddByte(0x01); msg->AddString(item.itemName); msg->AddU32(uint32_t(it.weight * 100)); msg->AddU32(item.buyPrice); msg->AddU32(item.sellPrice);} adicione: void ProtocolGamereloadCreature(const Creature* creature){ if(!canSee(creature)) return; // we are cheating the client in here! uint32_t stackpos = creature->getTile()->getClientIndexOfThing(player, creature); if(stackpos >= 10) return; NetworkMessage_ptr msg = getOutputBuffer(); if(msg) { TRACK_MESSAGE(msg); stdlist<uint32_t>iterator it = stdfind(knownCreatureList.begin(), knownCreatureList.end(), creature->getID()); if(it != knownCreatureList.end()) { RemoveTileItem(msg, creature->getPosition(), stackpos); msg->AddByte(0x6A); msg->AddPosition(creature->getPosition()); msg->AddByte(stackpos); AddCreature(msg, creature, false, creature->getID()); } else AddTileCreature(msg, creature->getPosition(), stackpos, creature); }}void ProtocolGamesendCreatureNick(const Creature* creature){ reloadCreature(creature);} Em ProtocolGame.h em baixo de: void sendQuestInfo(Quest* quest); adicione: void reloadCreature(const Creature* creature);void sendCreatureNick(const Creature* creature); Em Player.h em baixo de: void sendCreatureShield(const Creature* creature) {if(client) client->sendCreatureShield(creature);} adicione: void sendCreatureNick(const Creature* creature) {if(client) client->sendCreatureNick(creature);} Em Creature.cpp em baixo de: partyShield = SHIELD_NONE; adicione: Nick = ""; Em Creature.h em baixo de: virtual const Monster* getMonster() const {return NULL;} adicione: stdstring Nick; Luascript.cpp em baixo de: //doPlayerSendCancel(cid, text) lua_register(m_luaState, "doPlayerSendCancel", LuaScriptInterfaceluaDoPlayerSendCancel); adicione: //doCreatureSetNick(cid, nick) lua_register(m_luaState, "doCreatureSetNick", LuaScriptInterfaceluaDoCreatureSetNick); em baixo de: int32_t LuaScriptInterfaceluaDoPlayerSendCancel(lua_State* L){ //doPlayerSendCancel(cid, text) stdstring text = popString(L); ScriptEnviroment* env = getEnv(); if(const Player* player = env->getPlayerByUID(popNumber(L))) { player->sendCancel(text); lua_pushboolean(L, true); } else { errorEx(getError(LUA_ERROR_PLAYER_NOT_FOUND)); lua_pushboolean(L, false); } return 1;} adicione: int32_t LuaScriptInterfaceluaDoCreatureSetNick(lua_State* L){ //doCreatureSetNick(cid, nick) ScriptEnviroment* env = getEnv(); stdstring nick = popString(L); Creature* creature = env->getCreatureByUID(popNumber(L)); if(creature) { SpectatorVec list; g_game.getSpectators(list, creature->getPosition()); Player* player = NULL; creature->Nick = nick; for(SpectatorVecconst_iterator it = list.begin(); it != list.end(); ++it) { if(player = (*it)->getPlayer()) { player->sendCreatureNick(creature); break; } } }else{ lua_pushnil(L); } return 1;} Em Luascript.h em baixo de: static int32_t luaDoRemoveItem(lua_State* L); adicione: static int32_t luaDoCreatureSetNick(lua_State* L); Em Protocolgame.cpp procure por: void ProtocolGameAddCreature(NetworkMessage_ptr msg, const Creature* creature, bool known, uint32_t remove){ if(!known) { em baixo de: msg->AddU32(creature->getID()); adicione: stdstring nick = creature->getName(); if (creature->Nick != "") nick = creature->Nick; substitua: msg->AddString(creature->getHideName() ? "" : creature->getName()); por: msg->AddString(creature->getHideName() ? "" : nick); Obs: compilar em rebuild all ou sem os arquivos .obj exemplo de uso: doCreatureSetNick(getCreatureSummons(cid)[1], "Gristony") Creditos Gristony façam bom uso do code pequenos grilos
    5 pontos
  2. Beeki

    Parabéns Daniel e sua Equipe.

    Hoje decidi entrar no XTibia, e percebi que tudo mudou. Fiquei tão feliz quando vi essa revolução, essas mudanças que o Daniel vêm propondo juntamente com sua equipe, quero apenas parabeniza-lo por esse feito, algo que eu mesmo tentei a algum tempo atrás e você finalmente conseguiu. Fico grato por cuidar do fórum, onde várias portas se abriram para mim, e para outras pessoas também cujo tiveram seu inicio aqui. Aqui fica meu sincero obrigado.
    3 pontos
  3. COLOSSUS SERVER 10.77 Bom Galera do XTibia, ai vai a minha primeira contribuição para o site. Espero não ter errado ai na postagem e conseguir passar todas informações necessárias para o bom entendimento do Leitor. Sem mais delongas, apresento-lhes o Colossus server. CIDADES: Colossus* Edron Ankrahmun Gnombase Mineland* Yalahar Svargrond Roshamuul Gray Beach Rathleton Alpha Base* *Cidades Novas do servidor. - Warzone 1, 2, 3; - Bank System; - Gray Beach City completa 100% (incluindo Subsolo); - Monstros 100%; - Trainer Offline 100%; - Trainer Online 100%; - Todas montarias; - Taming system funcionando 100%; - Database completa; - Wrath of Emperor Quest; - War System 100%; - Market System 100%; - Roshamull Completa100% (incluindo subsolo); - Oramond Full; - POI; - Children of a Revolution Quest; - The New Frontier Quest; - Colossus quest; - Varias quests Items Espalhadas pelo mapa; - Novos Montros. - Todas as Magias Balanceadas para um melhor desempenho. (Foi mudado todos os cálculos das magias). Essa mudança foi feita visando obter um maior empenho do jogador para crescer no jogo, pois as formulas antigas cresciam linearmente. Adotei formulas que crescem exponencialmente. Resultado, quem se dedica ao jogo, treina, upa e busca os melhores itens, sera realmente o mais forte. - Itens vips criados. - Npcs de Addon postos em uma ilha, todas as quest e execuções de addons são idênticas aos métodos do global, e todos os caminhos são direcionados no mapa. - Todas as questes requerem missão. A inquisition, por exemplo, segue o mesmo raciocínio da quest global. - Muitas Hunts novas, todo mapa foi readequado, com isso, talvez as hunts que você encontre no global, não serão as mesma deste servidor. - A Knightwatch Tower, da dream chalange quest, foi reformulada, seus teleportes levam a Incríveis desafios. - Praticamente todos os items são acessíveis. - Wands e rods readequados para uma maior exploração destes items. - Todos os monstros do Global. Os novos monstros só poderão ser acessados com a conclusão da Colossus quest, que é um desafio e tanto. - Senha do god = god/god Dediquei um pouco do meu tempo para estar criando este servidor. Baseei-me no servidor aqui postado pelo Mitsuig Porem, o mapa foi totalmente editado por mim. Cidade Colossus e Alpha Base foram criadas por mim. As demais cidades foram readequadas para suprir minhas expectativas de jogabilidade do servidor. Todas as quests Globais (Exemplo: POI, Inqui, Children of revolution, The new Frontier, etc.) foram reformuladas para proporcionar mais jogabilidade e iteração no jogo. Todo mapa foi Sinalizado para guiar os jogadores à seus devidos destinos. ATENÇÃO: O mapa Não é global, Não é Global Compacto também, Não é Baiak. Tentei construir um servidor que conduza o jogador para o maior aproveitamento. O mapa é praticamente 100% utilizável, todas as hunts e quests disponibilizam items e recompensas interessantes. Creio que criei um bom servidor pra galera por online ai. Espero que gostem!! Bom, eu ja disponibilizei com o TFS compilado em Windows. Recomendo que Compilem vocês mesmo. Esse servidor foi feito usando de modelo o do link acima. Contudo, o mais importante mesmo aquié o SERVIDOR e a DATABASE. O resto podem fazer o download de lá que vai funcionar certinho. Downloads: SERVIDOR - SCAN DATABASE - SCAN WEBSITE - SCAN TFS-SDK-2.0 - SCAN Imagens: Templo da cidade Principal. Items Vip. Sala da Reward da Colossus quest. Novos Monstros. Nova Children of a revolution quest Depot da Cidade Principal. Créditos: Os mesmos do link acima citado. OTLAND - TFS TEAM; Lucas Barreto.
    1 ponto
  4. Lumus

    Venorewar v2 [32B/64B]

    Informações: Level inicial 130 Recompensa por kill Mount's por gold Addon's por gold Sem erros no console E mais! Imagens 32 Bits Download | Scan 64 Bits Download | Scan Créditos: Demonius, Bt, Animal Park.
    1 ponto
  5. Se você está lendo isso, significa obviamente que já está utilizando o novo xTibia 2016! :smile_positivo: Mas Dani, não passou nem o natal ainda. De fato, mas queremos lhe proporcionar um fórum melhor o quanto antes e eu estarei fora até o dia 5 de janeiro (dia 06 is my "birdday"). Quero parabenizar, de minha palavra, os meus grandes colegas @@Bruno, @@Avuenja, @@Danihcv, @@Caronte, @@Lumus, @@Aberos e @@SamueLGuedes pelas grandes ideias para o xtibia 2016 e também aos membros que nos acompanharam nesse trajeto. A equipe atual é uma das melhores que eu já trabalhei nesses 4 anos de fóruns. Então Feliz natal a vocês seus palhaços e um Feliz ano novo adiantado para todos vocês leitores! Mudanças Visual e Equipe Inauguramos hoje (24/12) a nova Skin do xTibia. Este visual foi trabalhado pensando na praticidade e usabilidade dos membros, além de proporcionar um ótimo ambiente. O novo visual é um pouco (muito, na verdade) diferente do antigo. A barra superior contém a nova logo do xTibia e as opções pessoais de membro, para acesso a perfil, mensagens, notificações etc. Algo que não foi mantido é o breadcrumb fixo, devido à essa barra pessoal superior. Houve uma grande mudança nos emoticons do fórum: Foram retirados emoticons extras e não utilizados, além disso, selecionamos os melhores para aparecer em primeira vista: Dentre essas mudanças, posso citar os novas Ícones de tópicos recentes, que já haviam sido adicionadas este mês. Veja Abaixo um breve esquema para entendê-las: Tópico já lido, você não comentou neste tópico; Tópico já lido, você comentou; Tópico não lido, você não comentou neste tópico; Tópico não lido, você comentou neste tópico. Além disso, há as novas PIPS. Já foi criado um tópico sobre elas, mas elas tiveram umas mudanças na nova skin e é importante eu citá-las aqui junto com o novo sistema de cargos: Tutor: Cargo removido; Colaborador: Apenas mudou o nome de "Estagiário" para "Colaborador"; Moderador Local: Irá cuidar de seções específicas, tendo total liberdade (dentro das regras e recomendações éticas do fórum) para punir membros e organizar o conteúdo de suas seções. Assim como carregar as definições gerais do cargo que já foi utilizado no xTibia antes; Moderador Global: Multiplicará a função do moderador local em uma seção por todas as seções do fórum, além de ter a responsabilidade para com a manutenção de todos os conteúdos e gerenciação das seções moderadas. Este cargo terá a mesma PIP do Moderador Local, o que mudará será o título do membro; Coordenador: Não houve mudanças. O cargo Herói poderá ser concedido à membros que alcançarem o último rank, será levado em consideração: Número de Posts, Número de REPS, histórico de Alertas e Banimentos (se houver), Histórico de Conteúdo. Mudanças Estrutura Houve uma drástica mudança nas categorias e sub-categorias. Foi removido a seção de aprovação de downloads e tutoriais e liberado a postagem nas seções respectivas. É mais benéfico a fiscalização de tópicos que a fiscalização e aprovação destes, tendo em vista que não há uma demanda rigorosa de tópicos de risco. Em geral, o ambiente comum do fórum já nos proporciona a facilidade de visualizar novos conteúdos. Também foi removido a seção que englobava todas as categorias de Suporte. Todos os fóruns (downloads, tutoriais, notícias e suporte) foram movidos para suas respectivas seções. O número de categorias foi diminuído em 35%, assim como a poluição visual destas estruturas. Perdemos, no sentido de desistência, a seção de Bots; não queremos focar nesta área, que inclusive não dava resultados importantes ao xTibia. A seção de anúncios de otserv teve uma limpa geral e suas sub-categorias foram unidas em uma só. Para facilitar a localização e manutenção desses tópicos, adicionamos as tags: OPEN PVP, OPTIONAL PVP e HARDCORE PVP. Falando de unir seções, é importante citar que a seção Downloads de OTServ teve suas divisões 8.x unidas em uma só, para diminuir o excesso de sub-categorias nesta. Leve mudanças na seção Tibia Global, também para diminuir a poluição visual e o excesso de categorias. Além da adição da seção "Roleplaying", que é voltada agora apenas para histórias relacionadas à RPG e Tibia. Liberarei em breve tutoriais de como utilizar o novo xTibia, contendo informações sobre as seções e suas respectivas organizações. xTibia & Youtube O xTibia tem agora um canal no youtube, você pode acessar clicando aqui ou no ícone no topo do fórum. O canal será inaugurado oficialmente em janeiro e serão postados conteúdos como Tutoriais de OTServ em geral, gameplay de OTS comuns, ATS e projetos, assim como exposição de trabalhos de membros do xTibia. Confiram nosso primeiro video oficial, de um script feito por @Caronte e narrado por @@Danihcv xTibia Achievement 2015 Acontecerá entre os dias 05 e 10 de janeiro. Possíveis bugs, sugestões ou elogios sobre o novo xTibia, poste aqui: http://www.xtibia.com/forum/forum/29-feedback/ Obrigado a todos por estarem nos acompanhando e um Feliz EksYear2016!
    1 ponto
  6. Caronte

    [ACTION] Recompensa de Natal

    Olá pessoal, Feliz natal. Eu gostaria de fazer alguma coisa especial para esse natal que já está passando... (pois é, estou atrasado) então fiz esse script, para criar um clima de natal no seu otserver, que ao clicar num monte de neve, você joga uma bola de neve, e faz um boneco de neve se desfazer... Bom... nada melhor para explicar, do que um vídeo: Script:
    1 ponto
  7. Pronto local mana = 50 --custo de mana local storage = 79845 --storage para o exhaustion local tempo = 5 --em segundos local monsters = { [1] = {summons = {"rat", "dragon"}, maxSummons = 2}, [2] = {summons = {"rat", "dragon"}, maxSummons = 4}, [5] = {summons = {"rat", "dragon"}, maxSummons = 4}, [6] = {summons = {"rat", "dragon"}, maxSummons = 6} } function onSay(cid, words, param, channel) if exhaustion.check(cid, storage) then doPlayerSendTextMessage(cid, 22, "You are exhausted.") return true end --Player Status local playerpos = getPlayerPosition(cid) for k, v in pairs(monsters[getPlayerVocation(cid)].summons) do if (param == v)then if (monsters[getPlayerVocation(cid)]) and #getCreatureSummons(cid) >= monsters[getPlayerVocation(cid)].maxSummons then return doPlayerSendCancel(cid, "Você já tem sumons demais.") else --Summon doConvinceCreature(cid, doCreateMonster(param, playerpos)) doPlayerAddMana(cid, -mana, false) exhaustion.set(cid, storage, tempo) doSendMagicEffect(playerpos, 2) return true end else doPlayerSendCancel(cid, "You can't summon this monster.") end end return true end
    1 ponto
  8. Para quem não sabe como funciona o script : Cada vocation ao atingir X level ganha uma X recompensa(podendo ganhar mais de um item por level). • Adicionando o script • Em "data/creaturescripts/scripts/vocreward.lua" : local c = { [{1,5}] = { [13] = {items = {{itemid = 2191, count = 1}}, storage = 40953}, [19] = {items = {{itemid = 2188, count = 1}}, storage = 40954}, [22] = {items = {{itemid = 8921, count = 1}}, storage = 40955}, [26] = {items = {{itemid = 2189, count = 1}}, storage = 40956}, [33] = {items = {{itemid = 2187, count = 1}, {itemid = 2152, count = 25}}, storage = 40957}, [37] = {items = {{itemid = 8920, count = 1}, {itemid = 2152, count = 50}}, storage = 40958}, [42] = {items = {{itemid = 8922, count = 1}, {itemid = 2160, count = 1}}, storage = 40959} }, [{2,6}] = { [13] = {items = {{itemid = 2186, count = 1}}, storage = 40953}, [19] = {items = {{itemid = 2185, count = 1}}, storage = 40954}, [22] = {items = {{itemid = 8911, count = 1}}, storage = 40955}, [26] = {items = {{itemid = 2181, count = 1}}, storage = 40956}, [33] = {items = {{itemid = 2183, count = 1}, {itemid = 2152, count = 25}}, storage = 40957}, [37] = {items = {{itemid = 8912, count = 1}, {itemid = 2152, count = 50}}, storage = 40958}, [42] = {items = {{itemid = 8910, count = 1}, {itemid = 2160, count = 1}}, storage = 40959} }, [{3,7}] = { [12] = {items = {{itemid = 2389, count = 5}}, storage = 40953}, [16] = {items = {{itemid = 2389, count = 10}}, storage = 40954}, [20] = {items = {{itemid = 3965, count = 10}}, storage = 40955}, [25] = {items = {{itemid = 7378, count = 10}}, storage = 40956}, [30] = {items = {{itemid = 2456, count = 1}, {itemid = 2544, count = 100}}, storage = 40957}, [35] = {items = {{itemid = 7364, count = 100}, {itemid = 2152, count = 75}}, storage = 40958}, [40] = {items = {{itemid = 7365, count = 100}, {itemid = 2160, count = 1}}, storage = 40959} }, [{4,8}] = { [15] = {items = {{itemid = 2409, count = 1}}, storage = 40953}, [30] = {items = {{itemid = 2392, count = 1}, {itemid = 2152, count = 75}}, storage = 40957}, [40] = {items = {{itemid = 2407, count = 1}, {itemid = 2160, count = 1}}, storage = 40959} } } function onAdvance(cid, skill, oldlevel, newlevel) if skill ~= SKILL__LEVEL then return true end for voc, x in pairs(c) do if isInArray(voc, getPlayerVocation(cid)) then for level, z in pairs(x) do if newlevel >= level and getPlayerStorageValue(cid, z.storage) ~= 1 then local text = "" for v = 1, #z.items do count, info = z.items[v].count, getItemInfo(z.items[v].itemid) local ret = ", " if v == 1 then ret = "" elseif v == #z.items then ret = " and " end text = text .. ret text = text .. (count > 1 and count or info.article).." "..(count > 1 and info.plural or info.name) doPlayerAddItem(cid, z.items[v].itemid, z.items[v].count) end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens, voce alcancou o level "..level.." e obteve "..text..".") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FIREWORK_YELLOW) setPlayerStorageValue(cid, z.storage, 1) end end end end return true end Em "data/creaturescripts/creaturescripts.xml" : <event type="advance" name="VocReward" event="script" value="vocreward.lua"/> Em "data/creaturescripts/scripts/login.lua" : registerCreatureEvent(cid, "VocReward") • Configurando • Créditos: ViitinG
    1 ponto
  9. Dei uma aperfeiçoada no script (para melhorar o desempenho), porém não sei se está sem erros: EDIT: coloquei para remover a mana e para ter exhaustion, já. local mana = 50 --custo de mana local storage = 79845 --storage para o exhaustion local tempo = 5 --em segundos local monsters = { [1] = {summons = {"rat", "dragon"}, maxSummons = 2}, [2] = {summons = {"rat", "dragon"}, maxSummons = 4}, [5] = {summons = {"rat", "dragon"}, maxSummons = 4}, [6] = {summons = {"rat", "dragon"}, maxSummons = 6} } function onSay(cid, words, param, channel) if exhaustion.check(cid, storage) then doPlayerSendTextMessage(cid, 22, "You are exhausted.") return true end --Player Status local playerpos = getPlayerPosition(cid) for k, v in pairs(monsters[getPlayerVocation(cid)].summons) do if (param == v)then if (monsters[getPlayerVocation(cid)]) and #getCreatureSummons(cid) >= monsters[getPlayerVocation(cid)].maxSummons then return doPlayerSendCancel(cid, "Você já tem sumons demais.") if (param == '') then doPlayerSendCancel(cid,7,'Sorry not enough parameters.') return true end --Summon doConvinceCreature(cid, doCreateMonster(param, playerpos)) doPlayerAddMana(cid, -mana, false) exhaustion.set(cid, storage, tempo) doSendMagicEffect(playerpos, 2) return true end end end end
    1 ponto
  10. Strogman

    Perfect nick system 100%

    vlw, pronto corrigido.
    1 ponto
  11. notle2012

    Pokemon PDA XTIBIA

    galera fazer uma lista dos bugs encontrado quando ter mais tempo posso dar uma olhada para ajudar
    1 ponto
  12. Ok. Vou pensar em uma forma de contornar isso. (O q tenho em mente eh fazer uma tabela com o nome de todos os monstros possíveis de sumonar)
    1 ponto
  13. Tranquilo. Amn a gnt resolve o q falta pra transformar em magia.
    1 ponto
  14. Ok, ok... Paciencia devemos ter... Ainda estou desenferrujando... sshuasuhsauh local maxSorc = 2 local maxMS = 4 local maxDruid = 4 local maxED = 6 function onSay(cid, words, param, channel) --Player Status local playerpos = getPlayerPosition(cid) if getPlayerVocation(cid) == 1 and #getCreatureSummons(cid) >= maxSorc then return doPlayerSendCancel(cid, "Você já tem sumons demais.") elseif getPlayerVocation(cid) == 2 and #getCreatureSummons(cid) >= maxDruid then return doPlayerSendCancel(cid, "Você já tem sumons demais.") elseif getPlayerVocation(cid) == 5 and #getCreatureSummons(cid) >= maxMS then return doPlayerSendCancel(cid, "Você já tem sumons demais.") elseif getPlayerVocation(cid) == 6 and #getCreatureSummons(cid) >= maxED then return doPlayerSendCancel(cid, "Você já tem sumons demais.") if (param == '') then doPlayerSendCancel(cid,7,'Sorry not enough parameters.') return true end --Summon doConvinceCreature(cid, doCreateMonster(param, playerpos)) doSendMagicEffect(playerpos, 2) return true end end
    1 ponto
  15. gabriel28

    LookTipe 10.90

    Usa o ObjectBuilder.
    1 ponto
  16. Caronte

    [GRUPO] WhatsApp

    Pô cara, por mim isso está fora de alcance... uma shoutbox no fórum já dá problema, imagina no whatsapp, que é fora do fórum... A gente tem grupo no skype, só que não dá muita atividade...
    1 ponto
  17. Isso é na samples , vai no phpmyadmin , procure as samples e mude o townid provavelmente estará id 2 nos samples , aí é só alterar.
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...