Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 01/26/16 em %
-
Basica Sala De Quests
Caronte e um outro reagiu a Dennyz Dias por um tópico no fórum
Eaew Galera Xtibiana !!! Hoje Venho traser um pequeno trabalho feito por mim é uma pequena sala de Quests! espero que gostem ! :biggrin: Como é meu primeiro trabalho Deixem nos comentarios oque acharão! Fis no RME 10.80 mais versao é 8.60 ! Scan ! https://www.virustotal.com/pt/file/8198aa759e260bd38f7522f6e9afd081615a688400c25bb3fb03f440782349ca/analysis/1453838455/ Download !! TPS Quests.rar2 pontos -
Compilando OTServer em Linux (Testado em Debian7 e Ubuntu14.04) Olá XTibia! Venho trazendo um tutorial muito útil para aqueles que não faz a mínima ideia de como compilar um OT de uma forma simples! Funciona somente com sources de TFS 1.x Primeiro de tudo, você tem que ter a Source e o OT que deseja compilar. Então 'LETS GO'! Programas para instalar PuTTY para conectar via SSH. (aqui) FilleZila Client para ter acesso aos arquivos da máquina. (aqui) Começando Ao instalar os programas, abra o Fillezila. Em Host, Nome de Usuário, Senha, Port (padrão 22), coloque oque te passaram pelo email quando comprou o Dedicado Ao logar, volte uma pasta, renomeie a pasta do seu ot para "otserv" e coloque a pasta "sources" dentro da pasta do seu ot, e mova para o Fillezila, ficando em /otserv Ao mover basta compilar, configurar e deixar online. Abrindo o PuTTYAgora você precisará usar o PuTTY. Abra ele e siga as imagens abaixo: ---- ---- ---- ----- Instalando arquivos necessáriosBom, depois que o Shell estiver aberto, vamos instalar os arquivos necessários para compilar, incluindo Apache e MySQL. Com o Shell aberto execute este comando para atualizar o sistema: apt-get update (OBS: NUNCA USE #apt-get upgrade) Logo depois execute: apt-get install cmake build-essential liblua5.2-dev libgmp3-dev libmysqlclient-dev libboost-system-dev apache2 php5 libapache2-mod-php5 php5-mysql mysql-server phpmyadmin Após carregar tudo, irá pedir abrir duas telas com caixas de seleção, a primeira você marque "apache2" e dê enter, na segunda você seleciona "yes", e coloque a senha do MYSQL. Compilando seu OTServChegou a hora do tão esperando momento! Para compilar seu otserv navegue até a pasta das sources, executa o comando de compilar, e mova o arquivo "tfs" para a pasta do seu OT. Seguindo estes comandos: cd otserv/sources mkdir build cd build cmake .. make mv tfs /otserv Pronto, OT compilado, fácil né? Para abrir certifique que seu config.lua está de acordo com a sua necessidade. Deixando seu OTServ onlineDepois de compilar, configurar o seu OTServ do jeito que você quiser, é hora de deixar seu OT online! Para deixar o OT online, você precisa ir para pasta do seu otserv e executar o comando #./tfs Siga os comandos: cd /otserv ./tfs Pronto! Só esperar carregar e SERVER ON! Outros e dicasA pasta para colocar seu site fica em /var/www Se quiser deixar seu servidor online e com o PuTTY fechado, antes de abrir execute este comando apt-get install screen Logo depois, use este comando, depois só abrir o servidor normalmente! screen -S tibia (OBS: o -S dessa palavra tem diferença, se você colocar o -S minúsculo (-s), haverá diferença de comando. Se quiser fechar o servidor, só digitar este comando de depois apertar CTRL+C. screen -x Então galera, o tutorial foi esse! Eu também achava que era MUITO complicado, mas é só isso! Se você gostou não esqueça de reputar, e até mais! (Créditos pelas imagens: Natanael Beckman)2 pontos
-
Pegar lvl 8 e já ir direto teleportado pra pos e falar hi
luccagomes e um outro reagiu a Night Wolf por uma questão
relaxa amigão, faz sem medo de errar que eu te corrijo qlqer coisa.. você ainda é o mais eficiente aqui desse site :lolz:2 pontos -
[NTO] Base NTO Foxter
Linzinho reagiu a LucaSAyreeS por um tópico no fórum
PS: Utilizar a Distro chamada Servidor, ou OTRestarter [+] Informações: - Sistema de Crítico. - Combos e Magias Novas. - Sprites de Personagens Novas. - Elemental System. - Mapa bom, com lugares novos. - Combos 90% concluídos, faltando só de alguns personagens. - Guild War System. - Sala de Quests. - Sistema de Recompensa. - Sistema de Points. - Personagens totalmente equilibrados. - Nova sala de eventos. [+] Desvantagens: - Muitos erros de distro, mas nada que afete o server. - Client com limite de sprites. [+] Imagens: [+] Downloads: http://www.4shared.com/rar/KAd6YH_cba/NTOFox.html? [+] Scan: https://www.virustotal.com/pt/file/657a18976eb2b747a0356fdd306cbc56b3677f81ed83d6698f89d86c06f63664/analysis/1453246178/ [+] Créditos: Eu pelas modificações. Aos que trabalham nessa base antes de mim.1 ponto -
[TFS 0.3.6] Player::canWalkthrough
Scizorgame reagiu a Lordbaxx por um tópico no fórum
Bom muita gente procura esse código, e ao olhar na internet só vi disponível em um fórum porém incompleto então decidi pegar o código e postá-lo com oque faltava. Esse código é utilizado para que um player passe por outro player evitando tantas reclamações por "trapar" caminho ou algo parecido, vamos lá! Ah mais uma coisa, para funcionar é preciso que o servidor esteja em NON-PVP. OBS: Testado em tfs 0.3.6 somente! Player.cpp procure por: bool Player::canWalkthrough(const Creature* creature) const Substitua todo o código por: bool Player::canWalkthrough(const Creature* creature) const { if(creature == this || hasCustomFlag(PlayerCustomFlag_CanWalkthrough) || creature->isWalkable() || (creature->getMaster() && creature->getMaster() != this && canWalkthrough(creature->getMaster()))) return true; const Player* player = creature->getPlayer(); if(!player) return false; if((((g_game.getWorldType() == WORLD_TYPE_NO_PVP && player->getVocation()->isAttackable()) || player->getTile()->hasFlag(TILESTATE_PROTECTIONZONE) || (player->getVocation()->isAttackable() && player->getLevel() < (uint32_t)g_config.getNumber(ConfigManager::PROTECTION_LEVEL))) && player->getTile()->ground) && (!player->hasCustomFlag(PlayerCustomFlag_GamemasterPrivileges) || player->getAccess() <= getAccess())) return true; return (player->isGhost() && getGhostAccess() < player->getGhostAccess()) || (isGhost() && getGhostAccess() > player->getGhostAccess()); } Depois vá em const.h e procure por: PlayerCustomFlag_CanWearAllAddons, //2^23 = 8388608 E em baixo coloque: PlayerCustomFlag_IsWalkable, //2^24 = 16777216 PlayerCustomFlag_CanWalkthrough, //2^25 = 33554433 Provavelmente em muitas sources do tfs 0.3.6, dê não exatamente um erro mais um aviso no player.cpp na função: void Player::updateInventoryWeight() Se o aviso ocorrer substitua a função citada acima por essa: void Player::updateInventoryWeight() { inventoryWeight = 0.00; if(!hasFlag(PlayerFlag_HasInfiniteCapacity)){ for(int i = SLOT_FIRST; i < SLOT_LAST; ++i){ Item* item = getInventoryItem((slots_t)i); if(item){ inventoryWeight += item->getWeight(); } } } } Só utilize o código acima se ocorrer o "warning/aviso" sobre a função. Abraço. Os créditos ficam até o momento só ao Bruno Minervino e a fireelement. Qualquer outro envolvido será creditado.1 ponto -
[Client] Pokémon DUB
andrefelphes reagiu a Bluester por um tópico no fórum
Olá mais uma vez XTibianos, dessa vez, venho trazer à vocês um presentinho de natal que muitos me pediram... Trago o Client do Pokémon DUB ( Sim, aquele projeto que parou de repente ). Bom, não tenho muito o que dizer, aqui está um print: ( breve postarei mais, to sem tempo ) Além desses módulos que contém na imagem, tem uma interface bem bonita e também tem vários outros módulos que o pessoal já deve ter visto, só que a maioria necessita de OPCodes e um conhecimento em Clients para ativar. Link de Download: Bom, é só isso, até mais pessoal ! Créditos: Eu; Overllord; Jeff ( PDUB ).1 ponto -
PokexGeneration
raulcdj reagiu a JulynaMiiy por um tópico no fórum
• Menu: ├ Informações; ├ Ediçoes; ├ Prints; ├ Download; └ Creditos. • Informações; • Edições; • PrintScreen; • Download; • Créditos; - Brun123. - Slicer. - ZerefShirou. - Zipter98. - StyloMaldoso. - JulynaMiiy. - Murluka.1 ponto -
Boa noite galera Como levantei no tópico: http://www.xtibia.com/forum/topic/238784-monstros-se-matando/monstros selvagens são todos tratados como amigos e, portanto, não é possível setar target neles com funções de target normal. Além disso, o callBack onTarget() não funciona para monstros. Desde então estou em busca de uma forma de fazer monstros lutarem entre si sem mexer na source e, com algumas sugestões do Lobo @Night Wolf eu consegui chegar a algo bem satisfatório para o que eu precisava. Portanto, compartilho com você a base do sistema (fiz outras coisas para o meu objetivo que acho bobeira postar aqui, mas a base do sistema de luta está aqui). Então vamos lá. Primeiramente, esse sistema é baseado em dois eventos: onThink (que repete de x em x segundos) e onAttack(para evitar que o monstro ataque players quando estiver atacando monstros. Vá em creaturescripts e crie as seguintes tags em creaturescripts.xml: <event type="think" name="monsters" event="script" value="monsters.lua"/> <event type="attack" name="monstersatt" event="script" value="monsters.lua"/> Feito isso, vá na pasta lib (data/lib) e crie um arquivo chamado monsterslib.lua. La dentro coloque: Feito isso, agora crie um arquivo chamado monsters.lua dentro de creaturescripts/scripts, e cole isso dentro Pronto é isso, você tem um pequeno framework configurável para fazer seus monstros se matarem. Para implementar o script no monstro basta ir no arquivo .xml dos monstros que deseja incluir esse sistema e colocar, logo após as defense, a tag: <script> <event name="minionatt"/> <event name="minion"/> </script> Abaixo um exemplo de utilização do framework, simulando uma luta de "raças" entre dwarfs e orcs de diferentes tipos: O código está bem auto explicativo. Qualquer dúvida me avisem. Espero que gostem. Abraços,1 ponto
-
Otpokemon {Open Source} v2.0 [REUPLOAD]
robsonsiilva reagiu a JairKevick por um tópico no fórum
• Menu: ├ Informações; ├ Ediçoes; ├ Erros; ├ Prints; ├ Preview; ├ Source; ├ Download; ├ Scan; ├ Creditos └ Desculpas. • Informações • •Senha do god: kevick/123mudar. --- Versão 1.0 --- • Boat System 100%, com a seguinte rota: De Pallet town a cinnabat city. • Perfect icon system 95%. 110 icons -- Removido tinha muitos bug, e influenciava a nurse a não hela alguns pokemon, quem sabe eu coloco na proxima versão 2.1 • Life do jogador aumenta quando come comidas ou sucos. --- Versão 1.1 --- • Passivas - "Psyduck" e "Golduck" - "Pikachu", "Raichu", "Shiny Raichu" > Electric charges - "Alakazam", "Tentacruel", "Gengar" - Blast mind e Scary face - "Scyther", "Scizor", "Shiny Scyther", "Hitmontop", "Shiny Hitmontop", "Pineco", "Forretress" > Counter helix • Dark Eye funcionando perfeitamente. • Shiny(Monstros ajeitados) •nenhum xD • Shinys aparecem aleatoriamente, pelo mapa. Por centagem de dar um: 2% de chance • Ditto system funcionando 100%. • !cd aprimorado, ele informa quanto tempo falta para dar Teleport com pokemons psychicos. • Ditto não pode transformar-se em pokemons de GINASIOS e o player tem que ter o level do pokemon que quer transformar. • Bug, quando morria a pokebola ficava em use. <:- Retirado -:> • Nova arvore colada no jogo, caminho (RAW/OTHERS) ou 12198, bonitinha. • Novo potion adicionado, só players, com level 10 ou mais, podem usar. --- Versão 1.2 --- • "Spray level up" adicionado, ele upa um level do player, não importando qual. --- Versão 2.0--- • removido todos os bug do jogo 90% sem bug 1 geração 100% • moves refeitos agora estao todos 100% -- primeira geração • 2 geração não testada • erro no fly concertado, quando o player dava order em cima do fly dava bug no distro -- fixed • Colocado barra de Pokebar no servidor OTC BPO necessario configurar • Erro no pvp fuchsia dava debug e erro no Distro fixed • Boost System tava com uns problema mais agora esta funcionando por enquanto • Nurse helando todos os pokemons em todas as Balls • Tile para entra na central de trocas arrumado Dava debug • Debug ao entra no ginazio arrumado • Removida ilha de gelo é muito grande , removendo ela melhora o desempenho do servidor , carai o bagui era um continente • Adicionado algumas areas premium account • Removido icon system Tinha muito bug , e bugava os pokemons iniciais • iniciais, Charmander,Squirtle e Bulbasaur -- sem bug • Npc Carlos compra iniciais por 25 Dollars • Pokemons passivos Não atacam o Player B para nossa alegria XD funcionava assim quando o player A atacava um pokemon o pokemon ia atacar o player B e C • Adicionado CORRER Agora o player pode correr, esse não é acumulativo exemplo se o player falasse correr 2x seguida a speed dobrava agora não dobra mais • Gate of expertise não funcionava o player bugava e nao passava pela porta, agora esta arrumado basta por action 1025,1050,1055~~~~ para player lvl 25,50,55 passar • Todas as houses foram reconfiguradas e foram refeitas, avia house que items desapareciam agora estão todas 100% para uso • Box não funcionava Dava debug, eo pokemon vinha bugado, Agora Fixed xD • Debug na praia de Cerulean -fixed • Nurse Agora heala os pokemons Shiny! • Avia muitos lugares com Debug Decidir colocar OTC • Gengar, Gastly e Haunter não ficavam invisivel • Bug no stun spore sleep powder, e posion powder, arrumados por enquanto esta em observação • Bug de cowndown , as vezes dava bug e o player podiam usar quantas vezes quiser o mesmo move - fixed • Iniciais agora estão funcionando corretamente • Stones de evolução estavam bugadas nada grave mais concertado • IP 127.0.0.1 Client a mesma coisa (client peguei de outro serve :b) •Order 100%. • As ID town foram arrumadas • Fly/ride/Teleport para premium • Comando /additem do god, ele pode dar items para tosos os players online Exemplo: /additem 2160, 10 • Erros Do Distro • Na distro nenhum por enquanto Crash -- 1x motivo nunca de reload em movements huehue • Bugs• --mecher no lick move 1 - nao fixo lick nao deixa o inimigo lento e não pode dar muito dano -- Falta OPCODE nas Source -- meganium -- maior parte dos bug estao no move 7 -- Algumas spells de pokemoins estao trocadas -- nao mechi em pokemons da segunda geração -- não mechi nos shinys -- Debug em algumas skills Eletricas -- Nurse as vezes nao hela pokemon e da erro na distro -- Shinys estão desconfigurado [23/07/2014 17:19:44] [Error - Spell Interface] [23/07/2014 17:19:44] In a timer event called from: [23/07/2014 17:19:44] data/spells/scripts/poke/nightshade.lua:onCastSpell [23/07/2014 17:19:44] Description: [23/07/2014 17:19:44] (luaDoCombat) Creature not found • PrintScreen • • Preview • Versão 2.1 Remoção de mais bugs Remakes de pokemons novas Outfit Refazer as cidades com os novos items ilha de gelo Free player vip com 25% de exp Chat VIP readicionar drop em todos os pokemons. Configurar chance dos drops additem que falta no loot mais npc de quest mais quest add quest de Boxs substituir alguns respawn e colocar pokemon da segundageração com remake Novas cidades e o que aparecer a mais na cabeça • Sources BUGs Corrigidos • ~Otpokemon v2.0 TFS 0.3.6 •Removido bug de clonagem com o elfbot •Resolvido alguns bug de crash agora a chance de crash sera reduzida •resolvido bug que o pokemon desaparecia ao se distanciar do player, •resolvido bug nas source do npc que fazia dar lag erros loucos no Distro • Outros • Catch 100% Fly 100% Flash 100% Surf 100% Ride 100% Rock Smash 100% Cut 100% Teleport 100% (!h pra ver os lugares e !h nomedacidade para ir ate a cidade) Control Mind 99.9% Order 100% Catch 100% Goback 100% Portrait 100% Pokedex 100% m1~m12 100% Hold position 100%(para o pokemon fikar parado vc diz .h pra ele se mover dnovo vc diz .h =D) !lg para mudar a linguagem (English-Português) Talkactions 100% NIck System 100% Efeito ao upar level • Download's • Server+Source OtClient OldClient • PATCH'S: • CREDITOS: Valakinhas pela dash v6 open source usada como base Kevick- editar mapa, adicionar sistemas e remakes e refazer o mapa1 ponto -
Só pra mostrar um pouco desta minha tentativa de mexer com o "todo poderoso" otclient. Por saber as diversas utilidades e possibilidades que ele contém venho tentando desvendar e criar novidades utilizando os seus módulos e sources. - Versão utilizada 0.6.7 Por agora irei mostrar somente a tela de login ainda estou trabalhando em algumas utilidades in-game. Em breve trago mais imagens e novas utilidades implementadas. Uma última modificação no background e na posição do login screen. Provavelmente o botão de "Entrar" sofrerá alteração. :happy: TAASK! Ainda em alfa porém já sendo finalizada. - Fixado modo de adquirir a task - Npc que dá acesso inicial para cada task feito - Nova storage para evitar conflito - Contagem feita corretamente - Finalmente!! - Adicionada uma descrição para cada pokemon LOG DAS PRÓXIMAS ATUALIZAÇÕES # Imagem em gif dos pokemons # Premiação da quest # Imagem do minimap mostrando onde encontrar o npc que dará início á task # Nova interface Atenciosamente, Douglas! @UP ^^1 ponto
-
Ah, entendi. Deixa assim: login.lua: creaturescripts.xml: Tópico movido para dúvidas / pedidos resolvidos.1 ponto
-
@, que nada. ^^ sauhsauhsa Tópico movido para dúvidas / pedidos resolvidos.1 ponto
-
Adicionando Itens Rme
SamueLGuedes reagiu a Sirarcken por uma questão
Obrigado Samuel e obrigado felzan.1 ponto -
Adicionando Itens Rme
Sirarcken reagiu a SamueLGuedes por uma questão
Creio que esses tutoriais possam te ajudar: RME #1, RME #2.1 ponto -
1 ponto
-
Ok. Dei uma "tradução" pra versão 1.1. Não to com acesso às funções do 1.2 no momento... Mas vou dar uma pesquisada. Contudo, vê se assim já dá certo: local pointObj = 2160 --id do item "points" function getAccountPoints(cid) local res = db.getResult('SELECT `premium_points` FROM `accounts` WHERE id='..player:getAccountId(cid)..'') if(res:getID() == -1) then return false end local ret = res:getDataInt("premium_points") res:free() return tonumber(ret) end function onSay(cid, words, param) if param ~= "" then if tonumber(param) <= getAccountPoints(cid) then doPlayerAddItem(cid, pointObj, param) db.executeQuery('UPDATE `accounts` SET `premium_points`='..getAccountPoints(cid) - param..' WHERE id='.. player:getAccountId(cid)..'') newPoints = getAccountPoints(cid) doPlayerSendTextMessage(cid, 22, 'Você ainda possui '..newPoints..' premium points em sua conta.') else doPlayerSendCancel(cid, "Você não tem tantos premium points assim.") end else doPlayerSendCancel(cid, "Você precisa especificar um valor.") end return true end1 ponto
-
Pegar lvl 8 e já ir direto teleportado pra pos e falar hi
luccagomes reagiu a Danihcv por uma questão
@@Night Wolf, só li verdades verdadeiras. Ainda to desenferrujando... Quase um ano sem mexer nessas desgraça.1 ponto -
Pegar lvl 8 e já ir direto teleportado pra pos e falar hi
luccagomes reagiu a Night Wolf por uma questão
Primeiro de tudo: O callback correto é onAdvance(cid, skill, oldLevel, newLevel) Segundo: getLevel(cid) == 8 Isso aqui vai dar erro porque em 0.4 não existe getLevel... mas não precisa usar função pra pegar o level, vc tá avançando e um dos parametros é o level novo. Fica assim: local pos = {x=100, y=100, z=7} local msg = "Parabéns! Você alcançou o level 8. Fale com o NPC para prosseguir sua caminhada" --vc pode editar essa mensagem, só precisa deixar ela dentro das aspas duplas! local stor = 27182 function onAdvance(cid, skill, oldLevel, newLevel) if (newLevel == 8 and skill == SKILL__LEVEL and oldLevel < newLevel) and getPlayerStorageValue(cid, stor) < 1 then doTeleportThing(cid, pos) doPlayerSendTextMessage(cid, 18, msg) setPlayerStorageValue(cid, stor, 1) end return true end Essa segunda checagem é pra garantir que o player não morra em main, upe e seja enviado novamente pra posição do oracle (por ex); As primeiras são pra garantir integridade -> tem que ser nv 8, tem q ser a skill level (onAdvance serve pra todas as skills) e o nível anterior tem que ser menor que o novo (tem casos em q morrer ativa o callback onAdvance, n sei pq e só acontece em algumas sources)1 ponto -
Pegar lvl 8 e já ir direto teleportado pra pos e falar hi
luccagomes reagiu a Danihcv por uma questão
Vá em data\creaturescripts e adicione essa tag ao arquivo creaturescripts.xml: <event type="advance" name="Advance8NPC" event="script" value="advance8npc.lua"/> Agora vá em data\creaturescripts\scritps e crie um arquivo chamado advance8npc.lua e coloque isso dentro: local pos = {x=100, y=100, z=7} local msg = "Parabéns! Você alcançou o level 8. Fale com o NPC para prosseguir sua caminhada" --vc pode editar essa mensagem, só precisa deixar ela dentro das aspas duplas! function onAdvance(cid, position) if getLevel(cid) == 8 then doTeleportThing(cid, pos) doPlayerSendTextMessage(cid, 18, msg) end return true end Agora vá em data\creaturescripts\scritps abra o arquivo login.lua e adicione isso antes do ultimo return true: registerCreatureEvent(cid, "Advance8NPC")1 ponto -
Olá, xTibianos. Hoje lhes trago uma lista com todas as funções (teoricamente) presentes no TFS 1.0. Pode ser que ainda estejam faltando algumas funções, pois não tive tempo para conferir, apenas trouxe o conteúdo para cá. All functions, source and lua made - Todas as funções da source e feitas em lua (\lib) //do* doAddCondition(cid, condition) doAddContainerItem(uid, itemid, <optional> count/subtype) doAddContainerItemEx(uid, virtualId) doAddMapMark(cid, pos, type, description) doAreaCombatCondition(cid, pos, area, condition, effect) doAreaCombatDispel(cid, pos, area, type, effect) doAreaCombatHealth(cid, type, pos, area, min, max, effect) doAreaCombatMana(cid, pos, area, min, max, effect) doChallengeCreature(cid, target) doChangeSpeed(cid, delta) doChangeTypeItem(uid, newtype) doCombat(cid, combat, param) doConvinceCreature(cid, target) doCreateItem(itemid, type/count, pos) doCreateItemEx(itemid, <optional> count/subtype) doCreateNpc(name, pos) doCreateTeleport(itemid, topos, createpos) doCreatureAddHealth(cid, health) doCreatureChangeOutfit(cid, outfit) doCreatureSay(cid, text, type, ...) doCreatureSayWithRadius(cid, text, type, radiusx, radiusy, position) doCreatureSetLookDir(cid, direction) doDecayItem(uid) doForceSummonCreature(name, pos) doMonsterChangeTarget(cid) doMoveCreature(cid, direction) doPlayerAddBlessing(cid, blessing) doPlayerAddExp(cid, exp, useMult, ...) doPlayerAddItem(cid, itemid, <optional: default: 1> count, <optional: default: 1> canDropOnMap, <optional: default: 1>subtype) doPlayerAddItem(uid, itemid, <optional: default: 1> count/subtype) doPlayerAddItemEx(cid, uid, ...) doPlayerAddMana(cid, mana, ...) doPlayerAddManaSpent(cid, mana) doPlayerAddMoney(cid, money) doPlayerAddMount(cid, mountId) doPlayerAddOutfit(cid, lookType, addons) doPlayerAddPremiumDays(cid, days) doPlayerAddSkillTry(cid, skillid, n) doPlayerAddSoul(cid, soul) doPlayerFeed(cid, food) doPlayerJoinParty(cid, leaderId) doPlayerPopupFYI(cid, message) doPlayerRemOutfit(cid, lookType, addons) doPlayerRemoveItem(cid, itemid, count, <optional> subtype, <optional> ignoreEquipped) doPlayerRemoveMoney(cid, money) doPlayerRemoveMount(cid, mountId) doPlayerRemovePremiumDays(cid, days) doPlayerSendCancel(cid, text) doPlayerSendTextMessage(cid, type, text, ...) doPlayerSetBalance(cid, balance) doPlayerSetGuildLevel(cid, level) doPlayerSetGuildNick(cid, nick) doPlayerSetOfflineTrainingSkill(cid, skill) doPlayerSetSex(cid, sex) doPlayerSetTown(cid, town) doPlayerSetVocation(cid, vocation) doRelocate(pos, posTo) doRemoveCondition(cid, type[, subId]) doRemoveCreature(cid) doRemoveItem(uid, ...) doSendDistanceShoot(fromPos, toPos, distanceEffect, ...) doSendMagicEffect(pos, magicEffect, ...) doSendTutorial(cid, tutorialId) doSetCreatureDropLoot(cid, doDrop) doSetCreatureLight(cid, lightLevel, lightColor, time) doSetCreatureOutfit(cid, outfit, time) doSetItemActionId(uid, actionId) doSetItemOutfit(cid, item, time) doSetItemSpecialDescription(uid, desc) doSetItemText(uid, text) doSetMonsterOutfit(cid, name, time) doSetMonsterTarget(cid, target) doShowTextDialog(cid, itemId, text) doSummonCreature(name, pos) doTargetCombatCondition(cid, target, condition, effect) doTargetCombatDispel(cid, target, type, effect) doTargetCombatHealth(cid, target, type, min, max, effect) doTargetCombatMana(cid, target, min, max, effect) doTeleportThing(uid, dest, pushMovement) doTileAddItemEx(pos, uid) doTransformItem(uid, newItemId, ...) //get* getAccountNumberByPlayerName(name) getBlessingsCost(level) getConfigInfo(info) getContainerCap(uid) getContainerCapById(itemId) getContainerItem(uid, slot) getContainerSize(uid) getCreatureBaseSpeed(cid) getCreatureCondition(cid, condition[, subId]) getCreatureHealth(cid) getCreatureMaster(cid) getCreatureMaxHealth(cid) getCreatureName(cid) getCreatureOutfit(cid) getCreaturePosition(cid) getCreatureSpeed(cid) getCreatureSummons(cid) getCreatureTarget(cid) getDepotId(uid) getDistanceBetween(firstPosition, secondPosition) getFluidSourceType(itemId) getGlobalStorageValue(key) getGuildId(guildName) getHouseAccessList(id, listId) getHouseByPlayerGUID(playerGUID) getHouseEntry(houseId) getHouseName(houseId) getHouseOwner(houseId) getHouseRent(id) getHouseTilesSize(houseId) getHouseTown(houseId) getInstantSpellInfoByName(cid, name) getInstantSpellWords(name) getIPByPlayerName(name) getItemDescriptions(itemId) getItemIdByName(name) getItemName(itemId) getItemRWInfo(uid) getItemWeight(itemId, ...) getItemWeightByUID(uid, ...) getMonsterFriendList(cid) getMonsterTargetList(cid) getOnlinePlayers() getPartyMembers(cid) getPlayerAccess(cid) getPlayerAccountType(cid) getPlayerBalance(cid) getPlayerBlessing(cid, blessing) getPlayerByName(name) getPlayerDepotItems(cid, depotId) getPlayerFlagValue(cid, flag) getPlayerFood(cid) getPlayerFreeCap(cid) getPlayerGroupId(cid) getPlayerGUID(cid) getPlayerGUIDByName(name) getPlayerGuildId(cid) getPlayerGuildLevel(cid) getPlayerGuildName(cid) getPlayerGuildNick(cid) getPlayerGuildRank(cid) getPlayerInstantSpellCount(cid) getPlayerInstantSpellInfo(cid, index) getPlayerIp(cid) getPlayerItemById(cid, deepSearch, itemId, ...) getPlayerItemCount(cid, itemId, ...) getPlayerLastLoginSaved(cid) getPlayerLearnedInstantSpell(cid, name) getPlayerLevel(cid) getPlayerLight(cid) getPlayerLookDir(cid) getPlayerLossPercent(cid) getPlayerMagLevel(cid) getPlayerMana(cid) getPlayerMasterPos(cid) getPlayerMaxMana(cid) getPlayerMoney(cid) getPlayerMount(cid, mountId) getPlayerName(cid) getPlayerParty(cid) getPlayerPosition(cid) getPlayerPremiumDays(cid) getPlayersByAccountNumber(accountNumber) getPlayersByIPAddress(ip, mask) getPlayerSex(cid) getPlayerSkill(cid, skillId) getPlayerSkullType(cid) getPlayerSlotItem(cid, slot) getPlayerSoul(cid) getPlayerStorageValue(cid, key) getPlayerTown(cid) getPlayerVocation(cid) getPromotedVocation(vocationId) getPvpBlessingCost(level) getSpectators(centerPos, rangex, rangey, multifloor, onlyPlayers) getThing(uid) getThingfromPos(pos) getThingPos(uid) getTibianTime() getTileHouseInfo(pos) getTileInfo(position) getTileItemById(position, itemId, ...) getTileItemByType(position, itemType) getTilePzInfo(position) getTileThingByPos(position) getTileThingByTopOrder(position, topOrder) getTopCreature(position) getTownId(townName) getTownName(townId) getTownTemplePosition(townId) getWaypointPosition(name) getWorldCreatures(type) getWorldLight() getWorldTime() getWorldUpTime() //set* setCombatArea(combat, area) setCombatCallBack(combat, key, function_name) setCombatCondition(combat, condition) setCombatFormula(combat, type, mina, minb, maxa, maxb) setCombatParam(combat, key, value) setConditionFormula(combat, mina, minb, maxa, maxb) setConditionParam(condition, key, value) setGlobalStorageValue(key, value) setHouseAccessList(id, listId, listText) setHouseOwner(id, guid) setPlayerGroupId(cid, groupId) setPlayerStorageValue(cid, key, value) //is* isContainer(uid) isCorpse(uid) isCreature(cid) isDepot(uid) isDruid(cid) isInArray(array, value) isInRange(pos, fromPos, toPos) isInWar(cid, target) isItem(uid) isItemContainer(itemId) isItemDoor(itemId) isItemFluidContainer(itemId) isItemMovable(itemId) isItemRune(itemId) isItemStackable(itemId) isKnight(cid) isMonster(cid) isMovable(uid) isNpc(cid) isNumber(str) isPaladin(cid) isPlayer(cid) isPlayerGhost(cid) isPlayerPzLocked(cid) isPremium(cid) isSightClear(fromPos, toPos, floorCheck) isSorcerer(cid) isSummon(cid) isValidUID(uid) mayNotMove(cid, value) numberToVariant(number) positionToVariant(pos) variantToNumber(var) variantToPosition(var) variantToString(var) pushThing(thing) queryTileAddThing(thing, position, ...) saveServer() sendChannelMessage(channelId, type, message) sendGuildChannelMessage(guildId, type, message) stopEvent(eventid) string.split(str, sep) stringToVariant(string) targetPositionToVariant(pos) unregisterCreatureEvent(cid, name) hasProperty(uid, prop) addDamageCondition(condition, rounds, time, value) addEvent(callback, delay, ...) addOutfitCondition(condition, lookTypeEx, lookType, lookHead, lookBody, lookLegs, lookFeet) broadcastMessage(message, type) canPlayerLearnInstantSpell(cid, name) canPlayerWearOutfit(cid, lookType, addons) cleanMap() createCombatArea( {area}, <optional> {extArea} ) createCombatObject() createConditionObject(type) debugPrint(text) Player.feed(self, food) Player.isUsingOtClient(self) Player.sendCancelMessage(self, message) Player.sendExtendedOpcode(self, opcode, buffer) playerLearnInstantSpell(cid, name) Position.getNextPosition(self, direction, steps) Game.convertIpToString(ip) Game.getStorageValue(key) Game.setStorageValue(key, value) Creature.getClosestFreePosition(self, position, extended) registerClass(className, baseClass, newFunction) registerCreatureEvent(cid, name) registerEnum(value) registerEnumIn(tableName, value) registerGlobalMethod(functionName, function) registerGlobalVariable(name, value) registerMetaMethod(className, functionName, function) registerMethod(className, functionName, function) registerTable(tableName) registerVariable(tableName, name, value) Créditos Zonnebloem1 ponto
-
[Arquivado]Quem é você, player? Ganhe 05 REP + Conquista!
Administrador reagiu a FlamesAdmin por um tópico no fórum
Preenchido. AdminGabriel1 ponto -
[Arquivado]Quem é você, player? Ganhe 05 REP + Conquista!
Administrador reagiu a Marco Oliveira por um tópico no fórum
Preenchido, utilizei o mesmo nome do fórum! Marco Oliveira.1 ponto -
[Arquivado]Quem é você, player? Ganhe 05 REP + Conquista!
Administrador reagiu a Lordbaxx por um tópico no fórum
Preenchi com o Nickname "Lordbaxx" (o mesmo do fórum) rs. Bom evento, parabéns por trazê-lo ao fórum. O fórum está me reconquistando!!1 ponto -
[Arquivado]Quem é você, player? Ganhe 05 REP + Conquista!
Administrador reagiu a lokoga por um tópico no fórum
Ué não mostrou pra por nick '-' aff não coloquei e-mail tbm T-T aaaaa Manin se for pra saber eu flei uma frase bem grande nos otservers que eu nunca jogaria. Manin fiz um outro com o nickname Lokoga (mesmo do fórum) (agora eu achei huehueuhue). Está praticamente com as mesma frase (talvez mais curta). Teria como desconsiderar o primeiro pf? Muito obrigado ^^.1 ponto -
[Arquivado]Quem é você, player? Ganhe 05 REP + Conquista!
Administrador reagiu a Danihcv por um tópico no fórum
Usei o nick Danihcv1 ponto -
[Arquivado]Quem é você, player? Ganhe 05 REP + Conquista!
Administrador reagiu a NatsuRush por um tópico no fórum
Respondido, Natsu Rush.1 ponto -
[Arquivado]Quem é você, player? Ganhe 05 REP + Conquista!
Administrador reagiu a SamueLGuedes por um tópico no fórum
Preenchido Uu.1 ponto -
[Arquivado]Quem é você, player? Ganhe 05 REP + Conquista!
Administrador reagiu a LekoDS por um tópico no fórum
Esqueci de por meu nick :X - corrigir lá pra mim. E-mail: lekob****s@outlook.com1 ponto -
[Arquivado]Quem é você, player? Ganhe 05 REP + Conquista!
Administrador reagiu a Benny por um tópico no fórum
feito, Benny o God Ou o Deus, algo assim1 ponto -
[Encerrado]UntraxBR - A nova era. Junte-se a nos!
Eden UntraxBR reagiu a Lumus por um tópico no fórum
Após um bom tempo sem atualizações por diversos motivos, estamos de volta! A todo vapor novamente, na versão mais atualizada, a 10.90! Nossa equipe conta com um novo membro, o @@Huggies, seja bem vindo! Para matar a saudade, uma nova área, o que haverá nessas portas? Em breve!1 ponto -
[TFS 0.3.6] Player::canWalkthrough
Storm Night reagiu a Lordbaxx por um tópico no fórum
Dá pra você utilizar a tag walkStack no id do tile no items.xml.. Exemplo: <attribute key="walkStack" value="0" /> Mas antes você precisa modificar mais algumas coisas nas sources: items.cpp procure: moveable = true; Troque por: moveable = walkStack = true; ainda em items.cpp procure: else if(tmpStrValue == "transformto") { if(readXMLInteger(itemAttributesNode, "value", intValue)) it.transformToFree = intValue; } Logo embaixo coloque: else if(tmpStrValue == "walkstack") { if(readXMLInteger(itemAttributesNode, "value", intValue)) it.walkStack = (intValue != 0); } items.h procure: lookThrough, troque por: lookThrough, walkStack, Na função canWalkThrough no player.cpp troque por: bool Player::canWalkthrough(const Creature* creature) const { if(creature == this || hasCustomFlag(PlayerCustomFlag_CanWalkthrough) || creature->isWalkable() || (creature->getMaster() && creature->getMaster() != this && canWalkthrough(creature->getMaster()))) return true; const Player* player = creature->getPlayer(); if(!player) return false; if((((g_game.getWorldType() == WORLD_TYPE_NO_PVP && player->getVocation()->isAttackable()) || player->getTile()->hasFlag(TILESTATE_PROTECTIONZONE) || (player->getVocation()->isAttackable() && player->getLevel() < (uint32_t)g_config.getNumber(ConfigManager::PROTECTION_LEVEL))) && player->getTile()->ground && Item::items[player->getTile()->ground->getID()].walkStack) && (!player->hasCustomFlag(PlayerCustomFlag_GamemasterPrivileges) || player->getAccess() <= getAccess())) return true; return (player->isGhost() && getGhostAccess() < player->getGhostAccess()) || (isGhost() && getGhostAccess() > player->getGhostAccess()); }1 ponto -
Aumentando o Limite de Sprites
samlecter reagiu a jeanflamengo por um tópico no fórum
nao teria como vc explicar para noixx como que faz para tirar o limite de effects do server tbm?1 ponto -
Acho que pra alterar a quantidade efeitos tem que mudar algo no servidor, mas vou estudar como funciona e procurar uma solução. Não. Só precisa fazer o que foi dito no tutorial.1 ponto
-
Aumentando o Limite de Sprites
samlecter reagiu a homersapiens por um tópico no fórum
Muito bom! Reputado @EdMignari , poderia tentar achar um jeito para os efeitos, rs quem sabe da pra aumentar um pouco. xD e se possível, tem como adicionar a versão do spr/dat pxg no object builder?1 ponto