Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 03/31/14 em %

  1. jeanflamengo

    [8.54] Remakes PxG até 07/03

    Oi povo do Xtibia, sou o adm do PxC e vim aqui disponibilizar para vocês umas sprites de remakes da PxG em formato .obd .Arquivo contidos \/: Olha a Imagem e.e \/ .Downloads em .obd em png .Créditos .EdMignari por disponibilizar um MegaPack com todos as spr da PxG .Para Euzito por localiza-las, renomear e distribuir para vocês e.e .joaopera por colocar em formato de png Se Gosto agradeça sua mão não vai cair e.e
    3 pontos
  2. Wend ll

    PDA By: Bolz:: Versão [GOD anna]

    Fala galera do xtibia, Hoje estou trazendo o servidor PDA by: Bolz editado por mim, Passei um bom tempo Editando ele Espero que gostem;; • Menu: ├ Informações; ├ Ediçoes; ├ Erros; ├ Prints; ├ Download; └ Creditos. • Informações Basicas • • Erros do servidor • • PrintScreen • • Download's • Servidor PDA by: Bolz [Editado Por Mim ] http://www.4shared.com/rar/06OG8lB5ba/pda_by_bolz_verso_god_anna.html? OTClient:: http://www.4shared.com/rar/x5LgTQKLce/OTclient.html? @Atualizado 02/04/2014 • Menu: ├ Ediçoes; ├ Prints; ├ Download; • Edições / ajustes • • PrintScreen • • Download's • Servidor PDA by: Bolz [Editado Por Mim v2 ] http://www.4shared.com/rar/_lB31rwxba/PDA_By_Bolz_Verso_GOD_anna_v2.html? OTclient v2:: http://www.4shared.com/rar/aiqka_kQce/OTclient_v2.html? • Creditos • Slicer (pelo servidor) Brun123 (por alguns scripts, e por criar o pda) Stylo Maldoso (pelo mapa) Bolz (por editar Maior Parte do Server) Eu ( por Corrigir Varios bugs e Editar varias coisas no Servidor) Gabrielsales ( pelos Systemas:: "Held item", "Ditto system" ) valakas ( Por ter ajudado a resolve o Bug da Barra de Ataques do OTclient v2) Xtibia (por alguns scripts) Cometem OQ acharam do Server Tou parando com as atualizações por enquanto POr causa das Provas (Tenho que Passa) Mais quando terminar as Aulas posto Nova atualiazação... Obrigado a Todos que Elogiaram minha edição nesse Belo servidor
    2 pontos
  3. JustinnoTibianno

    Mammoths!

    Mammoths Ótima hunt para se caçar no level 30~40. Entretando esse tutorial é direcionado a knights de nível médio que não são ricos e querem fazer uma grana. Vamos lá? Informações da Hunt Localização: Svargrond. Respawn: No tamanho certo pra lucrar, se estiver sozinho o respawn nunca ficará lento. Exp/hora: 40k/hora (não importa). Gold/hora: 3k/hora. (mais os itens). Perigo: Baixo Ocupação: Média/Alta Vocação, level e skills Vocação: Knight Level: 60 Skill: 80/80 Informações da criatura Nome: Mammoth HP: 320 XP: 160 Ataque: 0-110 Forte contra físico (mesmo assim é fácil de matar com o skill recomendado). Loots 0-40 gold coins 0-2 mammoth tusk (100gp cada). mammoth whopper (300gp cada). thick fur (150gp cada). tusk shield (850gp cada). furry club (1.000gp cada). winter wolf fur (20gp cada). badger fur (15gp cada). - O preço da furry club e do mammoth whopper estão de acorco com o preço que o Rashid compra, se você não tem completa a The Travelling Trader Quest completa, poderá vender estes itens por preços provavelmente menores do market. Equipamentos recomendados Crown Helmet Knight Armor Knight Legs Fur Boots Dragon Shield Armas do nível 40 já tem um bom dano // Suprimentos 5 strong health potions (apenas emergências). 20 mana potions (apenas emergências). Spells Úteis Exura: apenas quando estiver com a life no amarelo. Utura: apenas em situações críticas (quando você estiver com a vida quase no red). Como chegar lá Só um detalhe: No caminho você verá uns Huskys ​(). Por favor, não mate-os! Se fizer isso, os npc's da cidade só irão falar contigo novamente depois de você pagar uma multa. (1~2k). Eis o mapa da hunt Algumas dicas: - Faça seu caminho pelos cantos, evite se jogar direto no meio. - Sempre que dropar food dos mammoth (e como dropra), não é necessário ficar guardando ela, apenas jogue-a no chão, logo você verá que o local fica repleto de food. - Não esqueça de entrar nos menores caminhos da área, há mammoths por todos os locais. - Além de Mammoths, existem Badgers e Winter Wolfs aos montes, quando você tiver enfrentando um Mammoth + 2 criaturas, mate-as primeiro, pra evitar porrada free. Por fim, vou mostrar o meu lucro caçando 3 horas nos Mammoths. (tirando a orange backpack é óbvio). Lucro: Gold Coins: 9.000 (aproximadamente). 1 Furry Club: 1.000 4 Tusk Shield: 3.400 10 Mammoth Whopper: 3.000 84 Mammoth Tusk: 8.400 36 Thick Fur: 5.400 20 Winter Wolf Fur: 400 35 Badger Fur: 525 Gastos: 1 Strong Mana Potion (só usei uma). 100gp Total: 31.025 gold coins Então, acharam o resultado satisfatório?
    2 pontos
  4. Junior001

    A MELHOR ASSINATURA #100!

    Vamos tentar né
    2 pontos
  5. masdead

    [Show Off] Thiago Carvalho

    Não vou fazer isso pois jungle é uma floresta e florestas são bem cheias de detalhes e variedade de plantas. Eu achei bacana aquele telhado pois é bem diferente mas como ta todo mundo falando que está ruim ( (ainda prefiro o outro)
    2 pontos
  6. dyego2008

    Show Off [ Projeto]

    Galera vim postar mais uma imagem para não deixar o tópico parado e para verem que o projeto continua. A parede no estilo Espartano, a Lamparina, aquele fogo que tentei fazer alguma coisa kkkk, uma tampa de bueiro. O Tópico continua ativo e quero pedir desculpas se ofendi ou magoei alguém no forum xD. OBS: as sprites ainda não estão 100% e se alguém ver erros ou onde tenho que melhorar Por favor, fico grato.
    2 pontos
  7. 2 pontos
  8. RigBy

    Akatsuki System Advance 1.0 + Heart System

    Akatsuki System + Heart System Introdução - tava vendo muitas pessoas precisando desses dois sistema então resolvi criar o meu próprio. - Não ta igual ao do NTOUltimate pois nunca joguei esse servidor. O que tem no Akatsuki system 1.0? - Verifica se sua vocação pode fazer parte da akatsuki - Verificar sua vocação e adiciona outra diferente? - Troca de outfit dependendo da sua vocação - Da bonus de hp e mp - Adicionar o nome [Akatsuki] no seu nick exemplo [Akatsuki] RigBy - Aplica uma storage quando você entra pra akatsuki (com isso da pra você fazer bonusXp) - storage é 85798723243 valor 1 O que tem no Heart System - Ele só te da o coração se você for acima de tal level - adiciona o nome da pessoa no coração Vamos la a script Npc.xml <?xml version="1.0" encoding="UTF-8"?> <npc name="[Akatsuki] Tobi" script="data/npc/scripts/AkatsukiSystem.lua" walkinterval="2000" speed="0" floorchange="0"> <health now="100" max="100"/> <look type="128" head="0" body="0" legs="0" feet="0" addons="0"/> <parameters> <parameter key="message_greet" value="Hello You who joins {akatsuki}?"/> </parameters> </npc> Npc/Script/AkatsukiSystem.lua -- Do not remove the credits -- -- [NPC] Akatsuki System -- -- developed by Rigby -- -- Especially for the Xtibia.com -- 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 local level = 1 -- Level preciso pra entra para akatsuki local itemid = 5943 -- id do coração local quantidade = 6 -- quantos hearts e preciso local bonushp = 300000 -- quanto de bonus de life vai ganha local bonusmp = 30000 -- quanto de bonus de mana vai ganha local config = { --[Vocation] = ( Nova Vocation, New Outfit ) [1] = { 5, 128}, [2] = { 6, 129}, [3] = { 7, 130}, [4] = { 8, 131}, } function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if msgcontains(msg, 'akatsuki') then if getPlayerVocation(cid) ~= config then if getPlayerStorageValue(cid, 85798723243) == -1 then if getPlayerLevel(cid) >= level then selfSay('Are you sure you want to join the Akatsuki?.', cid) talkState[talkUser] = 1 else selfSay('You there and very weak, vain talk to you when you have level '..level..'.', cid) end else selfSay('You already part of the akatsuki!', cid) end else selfSay('Do not need you now!', cid) end end if talkState[talkUser] == 1 and msgcontains(msg, 'yes') then selfSay('To prove their loyalty, you have to bring '..quantidade..' {hearts}.', cid) talkState[talkUser] = 2 end if talkState[talkUser] == 2 and msgcontains(msg, 'hearts') then if getPlayerItemCount(cid, 5943) >= 6 then local voc = config[getPlayerVocation(cid)] doPlayerSetVocation(cid, voc[1]) local outfit = {lookType = voc[2]} doCreatureChangeOutfit(cid, outfit) setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+bonushp) setCreatureMaxMana(cid, getCreatureMaxMana(cid)+bonusmp) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doPlayerRemoveItem(cid, 5943, 6) doCreatureAddMana(cid, getCreatureMaxMana(cid)) setPlayerStorageValue(cid,85798723243,1) db.executeQuery("UPDATE `players` SET `name` = '[Akatsuki] "..getCreatureName(cid).."' WHERE `id` = "..getPlayerGUID(cid)..";") addEvent(doRemoveCreature, 5*1000, cid, true) doPlayerSendTextMessage(cid,25,'You will be kicked in 5 seconds to enter the akatsuki!') selfSay('Congratulations now you are part of akatsuki.', cid) talkState[talkUser] = 0 else selfSay('No use to fool me, you do not have '..quantidade..' hearts, goes behind.', cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Heart System Creaturescript/script/heartsystem -- Do not remove the credits -- -- [CREATURESCRIPT] Heart System -- -- developed by Rigby -- -- Especially for the Xtibia.com -- function onKill(cid, target, lastHit) local item = 5943 -- id do coração local level = 300 -- level necessário para tira o coração if isPlayer(cid) and isPlayer(target) then if getPlayerLevel(target) >= level then local add = doPlayerAddItem(cid, item, 1) doItemSetAttribute(add, "description","Esse coração é de "..getPlayerName(target).." que foi morto no level "..getPlayerLevel(target).." por "..getPlayerName(cid)..".") doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Voce Mato " ..getPlayerName(target).. ".") doSendMagicEffect(getPlayerPosition(cid),12) end end return true end Creaturescript.xml Tag <event type="kill" name="HeartSys" event="script" value="heartsystem.lua"/> Podem comenta duvidas, opiniões ou melhoramento para que haja a versão 2.0
    1 ponto
  9. Versão: 0.3.6pl1 TFS Função: Adiciona a velocidade de ataque de acordo com uma determinada skill e/ou arma. Autor: henriqueberro (eu). Aviso: A unidade que usamos aqui é o milissegundo (ms). 1ms = 0,001s 1s = 1000ms Instalação em player.cpp, procure a função: uint32_t Player::getAttackSpeed() e substitua ela inteira por: uint32_t Player::getAttackSpeed() { int32_t weaponAttackSpeed = 0; int32_t minimumAttackSpeed = 500; Item* weapon = getWeapon(); if(weapon && weapon->getAttackSpeed() != 0) weaponAttackSpeed = floor ((int)weapon->getAttackSpeed()); // FORMULA int32_t attackSpeed = vocation->getAttackSpeed() - (getSkill(SKILL_CLUB, SKILL_LEVEL) * 20) - weaponAttackSpeed; // CHECA A VELOCIDADE MÍNIMA if (attackSpeed && attackSpeed < minimumAttackSpeed) return minimumAttackSpeed; return attackSpeed; } Explicando Definimos um mínimo de velocidade caso a formula retorne um valor menor que 500, verificamos se a arma tem modificador de velocidade, ou seja, se a tag 'attackspeed' está definida no items.xml e então calculamos e retornamos o total. O total é definido pela seguinte formula: (Velocidade de Ataque da Vocations.xml ) - ( Skill Club * 20 ) - ( Velocidade de Ataque da Tag 'attackspeed' do Items.xml ) Configurações 500 - O Valor mínimo de velocidade de ataque, SKILL_CLUB - A skill que vai modificar a velocidade de ataque. 20 - O multiplicador, como default está definida 0,02 segundos a menos por skill. Como definir a tag no items.xml Embaixo do item desejado adicione a seguinte tag: <attribute key="attackspeed" value="X"/> Espero que ajude alguém e qualquer problema estou a disposição, me corrija se estiver errado pois não testei, apenas desenvolvi a lógica e fiz o teste de compilação, o código inteiro é de minha autoria e livre para modificações e uso, abraços.
    1 ponto
  10. caotic

    onDropLoot(cid, item)

    Ola galera xtibianaaa. Event droploot acontece quando um monstro ou player dropa 1 item. Vamos la: Vá em creatureevent.cpp e procure: bool CreatureEvents::playerLogin(Player* player) { //fire global event if is registered bool result = true; for(CreatureEventList::iterator it = m_creatureEvents.begin(); it != m_creatureEvents.end(); ++it) { if(it->second->getEventType() == CREATURE_EVENT_LOGIN && !it->second->executeLogin(player) && result) result = false; } return result; } Logo em seguida coloque: bool CreatureEvents::dropLoot(Creature* creature, Item* item) { bool result = true; for(CreatureEventList::iterator it = m_creatureEvents.begin(); it != m_creatureEvents.end(); ++it) { if(it->second->getEventType() == CREATURE_EVENT_DROPLOOT && !it->second->executeDropLoot(creature, item)) result = false; } return result; } Procure: else if(tmpStr == "preparedeath") m_type = CREATURE_EVENT_PREPAREDEATH; Coloque em seguida: else if(tmpStr == "droploot") m_type = CREATURE_EVENT_DROPLOOT; Logo apos procure: case CREATURE_EVENT_PREPAREDEATH: return "onPrepareDeath"; Coloque abaixo: case CREATURE_EVENT_DROPLOOT: return "onDropLoot"; Procure: case CREATURE_EVENT_PREPAREDEATH: return "cid, deathList"; Coloque embaixo: case CREATURE_EVENT_DROPLOOT: return "cid, item"; Procure: uint32_t CreatureEvent::executeLogout(Player* player, bool forceLogout) { //onLogout(cid, forceLogout) if(m_interface->reserveEnv()) { ScriptEnviroment* env = m_interface->getEnv(); if(m_scripted == EVENT_SCRIPT_BUFFER) { env->setRealPos(player->getPosition()); std::stringstream scriptstream; scriptstream << "local cid = " << env->addThing(player) << std::endl; scriptstream << "local forceLogout = " << (forceLogout ? "true" : "false") << std::endl; scriptstream << m_scriptData; bool result = true; if(m_interface->loadBuffer(scriptstream.str())) { lua_State* L = m_interface->getState(); result = m_interface->getGlobalBool(L, "_result", true); } m_interface->releaseEnv(); return result; } else { #ifdef __DEBUG_LUASCRIPTS__ char desc[35]; sprintf(desc, "%s", player->getName().c_str()); env->setEventDesc(desc); #endif env->setScriptId(m_scriptId, m_interface); env->setRealPos(player->getPosition()); lua_State* L = m_interface->getState(); m_interface->pushFunction(m_scriptId); lua_pushnumber(L, env->addThing(player)); lua_pushboolean(L, forceLogout); bool result = m_interface->callFunction(2); m_interface->releaseEnv(); return result; } } else { std::cout << "[Error - CreatureEvent::executeLogout] Call stack overflow." << std::endl; return 0; } } Coloque logo apos: uint32_t CreatureEvent::executeDropLoot(Creature* creature, Item* item) { //onDropLoot(cid, item) if(m_interface->reserveEnv()) { ScriptEnviroment* env = m_interface->getEnv(); if(m_scripted == EVENT_SCRIPT_BUFFER) { env->setRealPos(creature->getPosition()); std::stringstream scriptstream; scriptstream << "local cid = " << env->addThing(creature) << std::endl; env->streamThing(scriptstream, "item", item, env->addThing(item)); scriptstream << m_scriptData; bool result = true; if(m_interface->loadBuffer(scriptstream.str())) { lua_State* L = m_interface->getState(); result = m_interface->getGlobalBool(L, "_result", true); } m_interface->releaseEnv(); return result; } else { #ifdef __DEBUG_LUASCRIPTS__ char desc[35]; sprintf(desc, "%s", player->getName().c_str()); env->setEventDesc(desc); #endif env->setScriptId(m_scriptId, m_interface); env->setRealPos(creature->getPosition()); lua_State* L = m_interface->getState(); m_interface->pushFunction(m_scriptId); lua_pushnumber(L, env->addThing(creature)); LuaScriptInterface::pushThing(L, item, env->addThing(item)); bool result = m_interface->callFunction(2); m_interface->releaseEnv(); return result; } } else { std::cout << "[Error - CreatureEvent::executeDropLoot] Call stack overflow." << std::endl; return 0; } } Vá em creatureevent.h e procure:CREATURE_EVENT_PREPAREDEATH, Coloque abaixo: CREATURE_EVENT_DROPLOOT Procure: uint32_t executeTarget(Creature* creature, Creature* target); Coloque abaixo: uint32_t executeDropLoot(Creature* creature, Item* item); Vá em player.h na função: void Player::dropLoot(Container* corpse) Troque por esta função: void Player::dropLoot(Container* corpse) { if(!corpse || lootDrop != LOOT_DROP_FULL) return; uint32_t start = g_config.getNumber(ConfigManager::BLESS_REDUCTION_BASE), loss = lossPercent[LOSS_CONTAINERS], bless = getBlessings(); while(bless > 0 && loss > 0) { loss -= start; start -= g_config.getNumber(ConfigManager::BLESS_REDUCTION_DECREAMENT); bless--; } uint32_t itemLoss = (uint32_t)std::floor((5. + loss) * lossPercent[LOSS_ITEMS] / 1000.); for(int32_t i = SLOT_FIRST; i < SLOT_LAST; ++i) { Item* item = inventory[i]; if(!item) continue; Creature* creature = NULL; bool deny = false;item creature = g_game.getCreatureByID(getID()); CreatureEventList droploot = getCreatureEvents(CREATURE_EVENT_DROPLOOT); for(CreatureEventList::iterator it = droploot.begin(); it != droploot.end(); ++it) { if(!(*it)->executeDropLoot(this, item)) deny = true; } if(!deny) { uint32_t rand = random_range(1, 100); if(skull > SKULL_WHITE || (item->getContainer() && rand < loss) || (!item->getContainer() && rand < itemLoss)) { g_game.internalMoveItem(NULL, this, corpse, INDEX_WHEREEVER, item, item->getItemCount(), 0); sendRemoveInventoryItem((slots_t)i, inventory[(slots_t)i]); } } } } Vá em monster.cpp e procure: void MonsterType::dropLoot(Container* corpse) { Item* tmpItem = NULL; for(LootItems::const_iterator it = lootItems.begin(); it != lootItems.end() && !corpse->full(); ++it) { uint32_t owner = corpse->getCorpseOwner(); Creature* creature = g_game.getCreatureByID(owner); if((tmpItem = createLoot(*it)) && g_creatureEvents->dropLoot(creature, tmpItem)) { if(Container* container = tmpItem->getContainer()) { if(createChildLoot(container, (*it))) corpse->__internalAddThing(tmpItem); else delete container; } else corpse->__internalAddThing(tmpItem); } } corpse->__startDecaying(); uint32_t ownerId = corpse->getCorpseOwner(); if(!ownerId) return; Player* owner = g_game.getPlayerByID(ownerId); if(!owner) return; LootMessage_t message = lootMessage; if(message == LOOTMSG_IGNORE) message = (LootMessage_t)g_config.getNumber(ConfigManager::LOOT_MESSAGE); if(message < LOOTMSG_PLAYER) return; std::stringstream ss; ss << "Loot of " << nameDescription << ": " << corpse->getContentDescription() << "."; if(owner->getParty() && message > LOOTMSG_PLAYER) owner->getParty()->broadcastMessage((MessageClasses)g_config.getNumber(ConfigManager::LOOT_MESSAGE_TYPE), ss.str()); else if(message == LOOTMSG_PLAYER || message == LOOTMSG_BOTH) owner->sendTextMessage((MessageClasses)g_config.getNumber(ConfigManager::LOOT_MESSAGE_TYPE), ss.str()); } Evento em uso: function onDropLoot(cid, item) local block = {2221, 1221, 2922} for i=1, #block do if item.itemid == block[i] then return false end end return true end
    1 ponto
  11. Animal Pak

    [WODBO] DBWarrior (Re-up)

    Informações - Novo Mapa; - Novas Vocações; - Novas Magias; - Novos Monstros; - Novos Comandos e Sistemas; - !aol / Transform / Revert / Fusion /!spells/ Reborn 100%; - Novos Itens; - Novos Monstros; - Missões 100%; - Novas Quests; - Servidor 100% estável; - E Mais! Imagens: Download Server e Cliente Mediafire Scan Server e Cliente Virustotal ta uma ##!!, tem 44MB de arquivo, acredito que não seja necessário! Créditos DBWarrior Team ediberto23 BT SmoOkeR
    1 ponto
  12. Conteudo Retirado.
    1 ponto
  13. gabrielbsales

    [PDA] New Ditto System[PXG]

    Bom, esse ditto system: -Copia o pokemon e o balanceia sem necessidade de puxa-lo. -Copias Habilidades... Primeiramente, vá no some functions.lua - Localizado na pasta lib. E adicione isto no final(depois do ultimo end): Bom, essas são as funções de transformar e destransformar. Agora, vá no order.lua - Localizado no actions/scripts. E procure por: -------- TRANSFORM ---------- Apague tudo aqui dentro, até o: -------- LIGHT -------------- Ali dentro, bote: Pronto, ditto ja está tranformando, agora falta o !revert, para isso vá em talkactions/scripts e crie um arquivo(.lua) com nome de dittorevert, e dentro coloque: Agora, no talkactions.xml adicione esta linha: <talkaction words = "!revert;/revert" hide="yes" event = "script" value = "dittorevert.lua"/> Se fizer tudo corretamente, funcionará normalmente. Gif: Créditos: Gabrielbsales(sou op faço tudo solo)
    1 ponto
  14. Tonynh

    A MELHOR ASSINATURA #100!

    É com grande alegria e satisfação que vos trago a CENTÉSIMA EDIÇÃO do concurso cultural (...) Como de costume, funcionará como as demais edições. Entretanto, contaremos com algumas diferenças em relação a premiação e calendário. * Se você é desenvolvedor de um projeto, ou até mesmo já tem o seu servidor online, você não pode ficar de fora dessa. Mais abaixo, tudo será melhor explicado. SUGESTÕES E DÚVIDAS DEVERÃO SER POSTADOS (AQUI) APENAS COMENTÁRIOS ESTÃO LIBERADOS NESTE TÓPICO. LIVRE (Deixe sua imaginação decolar!) 1° Lugar: 3 Pontos de reputação + Gold Award EXCLUSIVA #ADS100 + (KIT Banner+Logo) OU Layout FATIADO (Apenas Layout) TOTALMENTE GRÁTIS! 2° Lugar: 2 Pontos de reputação + Silver Award EXCLUSIVA #ADS100 3° Lugar: 1 Ponto de reputação + Bronze Award EXCLUSIVA #ADS100 OBSERVAÇÕES: 1. A premiação está sendo inteiramente oferecida por mim mesmo (Tonynh). (Awards Exclusivas + KIT (Banner+Logo) ou Layout) 2. Caso o vencedor escolha o Layout, este será feito sob encomenda para você! (Você pode escolher de sites/blogs/portfólios pessoais até a reformulação do site do seu servidor!) 2.2 Na escolha do Layout, será fornecido apenas as imagens fatiadas (Apenas design) 3. Na escolha de um KIT (Banner + Logo) serão oferecidos de 2 a 3 modelos de cada um. Concurso: 30/03/2014 até 13/04/2014 (23:59) Votação: 14/04/2014 até 20/04/2014 (23:59) Resultado: 21/04/2014. AS IMAGENS DEVEM SER POSTADAS NESTE TÓPICO ATÉ A DATA MARCADA. QUE OS JOGOS COMECEM!
    1 ponto
  15. Decidir fazer um narutibia 8.60 (eu ia desenvolver um 9.60 mas ia da muito trabalho pela falta de recurso) para relembrar vários servidores do 7.81 (Extnl, Nso ,Nwo, etc..). Com sistema de org e algum sistemas próprio feito por min. Aqui sera postado todas as noticias do desenvolvimento do projeto Noticias:13/03/2014 Noticias:18/03/2014 Noticias 05/04/2014
    1 ponto
  16. BananaFight

    [Encerrado]Procura-se Spriters

    Bom dia, Estou recrutando spriters para o meu projeto de Digimon. O projeto atualmente se encontra em desenvolvimento, e falta pessoas qualificadas para a função de spriting, Eu preciso de ajuda nessa parte, na criação de monstros, outfits, cenários e itens novos. Se quiser se candidatar a vaga, me mande uma pm. Nome: ? Skype: ? Estilo: Cenário, ou Outfits... Exemplo de sua sprite
    1 ponto
  17. Tonynh

    [Arquivado]O que você procura?

    Saudações XTibianos, Para quem não me conhece, meu nome é Anthony Stephen, e sou o atual moderador da seção de Design e OFF-Topic. (Também fui coordenador de design, e trabalhei na imprensa do fórum) Visando a movimentação e o crescimento das seções, venho através deste tópico indagar o seguinte tema: "O QUE VOCÊ PROCURA?" Apenas reflitam com as perguntas abaixo: (Mas se quiserem respondê-las, sintam-se a vontade) Você se considera um usuário sanguessuga? (Aquele que só entra no fórum em busca de atender as suas necessidades, e não perde alguns segundos nem para agradecer?) Você se considera um usuário que não só busca, mas que também fornece informações? (Aquele que não se preocupa apenas com si mesmo, e sim com o crescimento de toda comunidade OpenTibia, doando tutoriais ou até mesmo resolvendo uma simples dúvida de um colega de fórum) ! Pode não parecer, mas são essas duas perguntas que definem os usuários deste fórum. ! Então, vos lanço mais algumas perguntas: QUAL O SEU OBJETIVO AQUI DENTRO? O QUE FALTA NA SUA SEÇÃO FAVORITA? O QUE SERIA UM CONTEÚDO MAIS ATRATIVO? De antemão, é bom deixar alguns avisos. * Lembre-se que não estou obrigando ninguém a ajudar e contribuir com a comunidade, e sim focando no crescimento e melhoria das seções... E com esse objetivo atingido, todos ganham, não é mesmo? * Lembre-se também que todo o trabalho aqui dentro é de forma voluntária! (...) você faz sua parte?
    1 ponto
  18. Bom dia. Gostaria de uma spell que fizesse o seguinte: Ao utilizar a spell, identifica se ha algum corpse em frente, se tiver ganha HP e some o corpse (de preferencia um efeito legal no corpse). Se nao, o personagem recebe a mensagem "Sorry, not possible'. Tentei pegar o script da animated dead rune, so que a runa funciona with crossairs, entao nao consigo verificar a posiçao em frente ao player para saber. Obrigado! --EDIT: Resolvido: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE) setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 5, 6) function onCastSpell(cid, var) local position = getCreatureLookPosition(cid) position.stackpos = 255 local corpse = getThingFromPos(position) if(corpse.uid > 0 and isCorpse(corpse.uid)) then doRemoveItem(corpse.uid) doCombat(cid, combat, var) doSendMagicEffect(getThingPosition(cid), CONST_ME_MAGIC_BLUE) doSendMagicEffect(position, 65) return true else doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE) doSendMagicEffect(position, CONST_ME_POFF) return false end end
    1 ponto
  19. DuuhCarvalho

    Teleporte por level

    function onStepIn(cid, item, position, fromPosition) local pos1 = {x = 1027, y = 912, z = 5} -- Posicao que sera levado if getPlayerLevel(cid) >= 120 and getPlayerLevel(cid) <= 140 then doTeleportThing(cid, pos1) else doPlayerSendCancel(cid, "Voce nao pode entrar nesse Tp.") doTeleportThing(cid, fromPosition, true) end return true end
    1 ponto
  20. dyego2008

    [ Pedido ] Como retirar isto !

    vai em creaturescripts, deve ter um script: <event type="login" name="entrou" script="entrou.lua"/> <event type="logout" name="saiu" script="saiu.lua"/ basta apagar.
    1 ponto
  21. Maximaah

    A MELHOR ASSINATURA #100!

    torcendo para o alexclusive nao participar.. se nao já perdi.. asodijasi sem tipografia mesmo pq sei lá;; nao consegui encaixar
    1 ponto
  22. kkkkk o padrão é sha1 para websites, jajá te mando a distro.
    1 ponto
  23. Wend ll

    PDA By: Bolz:: Versão [GOD anna]

    Pretendo, mais acho que vou atualizando de Pouco em Pouco, Blz? esse foi o servidor menos bugado que e encontrei se diver bug só falar ai pra eu dar um geito aqui antes que descubra do pior geito.. O servidor tem Autoloot ? se quiser eu passo o sistema de auto loot pra pda que fiz pra ti manda pvd ai te explico como adc e tals Depois falo contigo.. Depois, tou saindo agora..
    1 ponto
  24. function onSay(cid, words, param) local time = X -- tempo em segundos. local storage = X -- storage. if getPlayerStorageValue(cid, storage) - os.time() <= 0 then if doPlayerRemoveItem(cid,2160,10) == TRUE then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce Desbugou!") doSendMagicEffect(getPlayerPosition(cid), 12) setPlayerStorageValue(cid, storage, os.time()+time) addLevel(cid, 1) else doPlayerSendCancel(cid, "Presisa De 10 Gold Para Desbugar!") doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Presisa De 10 Gold Para Desbugar!") doSendMagicEffect(getPlayerPosition(cid), 2) end else doPlayerSendCancel(cid, "Você só poder usar esse script a cada "..time.." Segundos.") end end
    1 ponto
  25. function onUse(cid, item, frompos, item2, topos) local storage = 123 -- storage . if getPlayerStorageValue(cid, storage) <= 0 then doTeleportThing(cid, topos) doSendMagicEffect(topos, 10) else doPlayerSendTextMessage(cid, 22, "Para passar aqui você não deve ter X storage!") end return true end
    1 ponto
  26. dalvorsn

    Table + For + if

    "o else só vai ser executado se o player tiver todas as storages .." claro que não, qualquer if que a condição seja false, vai buscar um elseif ou else, no caso quando qualquer uma das storages for > 0 o else será executado
    1 ponto
  27. dalvorsn

    Table + For + if

    Tu ta dando return, dai o loop para né '-' O restante está correto.
    1 ponto
  28. function onUse(cid, item, frompos, item2, topos) local item1 = 2160 local health = 50 -- % local mana = 50 -- % local h = (getCreatureHealth(cid))*(health)/(100) local m = (getCreatureMana(cid))*(mana)/(100) doCreatureAddHealth(cid, -h) doCreatureAddMana(cid, -m) doTransformItem(item.uid, item1) doCreatureSay(cid, 'HAHAI', TALKTYPE_ORANGE_1) return true end
    1 ponto
  29. EdMignari

    [Ajuda] Item editor

    Quando o erro for "acesso negado", você precisa executar como administrador. Não precisa adicionar _EX para versões maiores que 9.60
    1 ponto
  30. DuuhCarvalho

    Damage Em Ground

    CONDITION_NONE CONDITION_POISON CONDITION_FIRE -- Fire (Fogo) CONDITION_ENERGY CONDITION_LIFEDRAIN CONDITION_HASTE CONDITION_PARALYZE CONDITION_OUTFIT CONDITION_INVISIBLE CONDITION_LIGHT CONDITION_MANASHIELD CONDITION_INFIGHT CONDITION_DRUNK CONDITION_EXHAUSTED CONDITION_FOOD CONDITION_REGENERATION CONDITION_SOUL CONDITION_DROWN CONDITION_MUTED Duvida Sanada ?
    1 ponto
  31. Akira , é que eu esqueci mesmo rsrs.. vlw function onLogin(cid) local storage = 123 local dias = 10 if (not isPremium(cid)) and getPlayerStorageValue(cid, storage) <= 0 then doPlayerAddPremiumDays(cid, dias) doPlayerSendCancel(cid, "Você ganhou "..dias.." Dia(s) de Premium.") setPlayerStorageValue(cid, storage, 1) end return true end
    1 ponto
  32. JonatasLucasf

    A MELHOR ASSINATURA #100!

    não ficou muito bom mais ta aí oque vale é participar para aprender mais
    1 ponto
  33. Tópico movido para Pedidos e dúvidas resolvidos.
    1 ponto
  34. EdMignari

    Object Builder

    Programa Atualizado * Suporte para várias linguas [English, Polish, Portuguese] * Lista de objetos. * Barra de progresso ao import e exportar. * Detecta clientes estendidos. * Teclas de atalho. * Suporte pra todas as assinaturas 8.00 - 10.37 * Exibe o tamanho exato de um objeto. * Correções e melhorias na interface.
    1 ponto
  35. Maenilse

    Distro e Source 8.60

    novo download pronto, basta vc baixar. Download: Distro 8.60
    1 ponto
  36. Ao adicionar o addon faça o script setar uma variavel, logo apos fazer isso coloque para o seu goback ler essa variavel.
    1 ponto
  37. lazarocp

    Novidade: Poketibia 9.60

    .
    1 ponto
  38. beto06

    [Show Off] Thiago Carvalho

    achei que o telhado não combinou
    1 ponto
  39. JG6

    [8.54] Remakes PxG até 07/03

    stylo se vc quiser eu te mando só manda uma pm q eu tenho em png e em obd
    1 ponto
  40. Death System Introdução: Vamos pessoal participar da oms, esse sistema faz com que quando um player mate o outro apareça um ceifeiro vindo pega a alma dele. Vamos la começar a add a script Em creaturescript/script, crie DeathSystem.lua -- Do not remove the credits -- -- [CREATURESCRIPT] Death System -- -- developed by Rigby to help DuuhCarvalho -- -- Especially for the Xtibia.com -- function onDeath(cid, corpse, killer) local pos = getCreaturePosition(cid) local monster = 'ceifeiro' local timer = 3 -- quanto tempo vai demorar pra sumir function removeMonster() for _, pid in ipairs(getCreatureSummons(killer[1])) do doRemoveCreature(pid) end return true end if isPlayer(cid) and isPlayer(killer[1]) then doConvinceCreature(killer[1], doCreateMonster(monster, pos)) doSendAnimatedText(getThingPos(cid), "DEATH!", 125) doSendMagicEffect(getThingPos(cid), 65) addEvent(removeMonster, timer*1000) end return true end Creaturescript.xml tag <event type="death" name="DeathSystem" event="script" value="DeathSystem.lua"/> Login.lua antes do ultimo return true registerCreatureEvent(cid, "DeathSystem") Agora vamos criar o ceifeiro em monster crie um ceifeiro.xml <?xml version="1.0" encoding="UTF-8"?> <monster name="Ceifeiro" nameDescription="a ceifeiro" race="blood" experience="0" speed="0" manacost="220"> <health now="9999999999999" max="9999999999999"/> <look type="300" corpse="5971"/> <targetchange interval="2000" chance="0"/> <strategy attack="100" defense="0"/> <flags> <flag skull="5"/> <flag summonable="1"/> <flag attackable="1"/> <flag hostile="0"/> <flag illusionable="1"/> <flag convinceable="1"/> <flag pushable="1"/> <flag canpushitems="0"/> <flag canpushcreatures="0"/> <flag targetdistance="1"/> <flag staticattack="90"/> <flag runonhealth="8"/> </flags> <defenses armor="1" defense="2"/> <immunities> <immunity physical="0"/> <immunity energy="0"/> <immunity fire="0"/> <immunity poison="0"/> <immunity lifedrain="0"/> <immunity paralyze="0"/> <immunity outfit="0"/> <immunity drunk="0"/> <immunity invisible="0"/> </immunities> <voices interval="2000" chance="100"> <voice sentence="HAHAHAHA"/> </voices> </monster> em monsters.xml adicione essa tag antes do ultimo </monsters> <monster name="Ceifeiro" file="ceifeiro.xml"/> Espero que gostem.
    1 ponto
  41. Deadpool

    PDA By: Bolz:: Versão [GOD anna]

    Outland, Main Quest, Cyber Wolrd, Outlands, Liga Pokémon, acho que é a mesma coisa kkkk', mas vai demorar :v
    1 ponto
  42. Wend ll

    PDA By: Bolz:: Versão [GOD anna]

    @Over Vou Fazer oq você está dizendo, Pode dizer uns Systemas que posso pegar Lá?
    1 ponto
  43. em seu creaturescripits procure por showvoc e adicione isso function onLook(cid, thing, position, lookDistance) if isPlayer(thing.uid) then local type = getPlayerStorageValue(thing.uid, 89745) doPlayerSetSpecialDescription(thing.uid, "\n "..(getPlayerSex(cid) == 0 and "She" or "He").." are "..(type < 0 and "Shinobi" or type == 1 and "Genin" or type == 2 and "Chunin" or type == 3 and "Jounin" or type == 6 and "Akatsuki" or type == 7 and "Hokage" or type == 4 and "Anbu" or type == 5 and "Captain Anbu")) end return true end agr so por npc ou tile pra te adicionar storage ex if (getPlayerStorageValue(cid,89745) > 6) then Akatsuki /\ if (getPlayerStorageValue(cid,89745) > 7) then Hokage Simples Se funcionou Da um Rep ai
    1 ponto
  44. Frenvius

    Fairy Tail Online [FTO]

    Mais um exemplar, ainda não atualizado
    1 ponto
  45. Deadpool

    Troca de mapa

    Simples, primeiro abra seu Config.lua localizado na pasta rais do serve, em seguida, procure por mapName = "nomedomapa onde tem NOME DO MAPA, você coloca o nome que ta no mapa que você que usar, em seguida, pega o mapa que você vai usar, que tem o mesmo nome que você colocou aqui "mapName = " .. e joga na pasta data/world. fim
    1 ponto
  46. Meunometemvinteletra

    {SHOW OFF} RastaLegion

    Nossa, nada a comentar quanto a 2ª foto, está divina. A 3ª foto também está ótima 0 map bugs e uma área totalmente agradável.. Muito bom o ShowOff, Reputado!
    1 ponto
  47. Shoguns

    [Life Thread] Lock Sano

    Vou fazer o meu, vou deixar 24hrs de Bot e vou entrar so pra tirar as Prints é depois quando pegar lvl 100 vou fazer um sorteio do char aki
    1 ponto
  48. Fiquei esses dia sem postar nada porque aindei ocupado e também tava fazendo a script da oms então pra não fica sem posta nada: Noticias:18/03/2014 To começando a fazer konoha: Tentei deixa um pouco parecido com o do Extnl, ainda não ta completa em breve posto mais.
    1 ponto
  49. Tenta usar o UniServ. Alem de ser mais facil, é bem melhor que xampp.
    1 ponto
  50. Desnecessario

    [Dicas] Iniciantes

    Dicas sobre spriting : 1° Dica - 2° Dica - 3° Dica - 4° Dica - 5° Dica - 6° Dica - 7° Dica - 8° Dica - 9° Dica - Créditos : 100% Desnecessario , Breve mais dicas. Avaliem as dicas , comentem e vamo que vamo uhauhauh Podem dar dicas avontade também e se for boa ganha rep e vem pro topico.
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...