Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 10/20/16 em todas áreas
-
Launcher para OTCliente/Classico com AutoUpdate sem Host
joaquin2455 e 5 outros reagiu a saviomu por um tópico no fórum
=> Bom,o titulo diz tudo né? Esse é um launcher com autoupdate para OTCliente ou para cliente Clássico(CIPSOFT), com o seguinte detalhe, ele utiliza arquivos upados no GitHub, ou seja,não é necessário uma hospedagem e muito menos que seja o cliente postado em seu WebSite. => Foi codado em C# usando o WPF. O vídeo abaixo ensina a configurar tudo passo a passo, bonitinho para que não ocorra erros. Para configurar a execução do cliente, fique atento as seguintes condições: Para Cliente Padrão, o nome do mesmo deve ser -> padrao.exePara OTCliente DX, o nome deve ser -> dx.exePara OTCliente OpenGL, o nome deve ser -> opengl.exe CASO SEU TIBIA.SPR FOR MAIOR QUE 100MB SIGA O TUTO ABAIXO, CASO CONTRARIO APENAS PULE: 1 => Selecione seu arquivo tibia.spr e comprima-o em zip separando ele em partes (Deixe o arquivo comprimido dentro da pasta original onde fica o tibia.spr ein!!!!), como a imagem abaixo. Configurações Extras (Que não estão no vídeo): <!-- LAYOUT -->Background -> Nome da imagem Background do LauncherBtnFechar -> Nome da imagem do Botão FecharBtnMinimizar -> Nome da imagem do Botão MinimizarEsquemaCores -> Muda o esquema de cores do Launcher (Código em Hexadecimal de Cores)<!-- MUSICAS -->->Apenas mude o arquivo dentro de musicas/principal.mp3.->Caso não deseje musica apenas delete a pasta.<!-- CASO SPR MAIOR QUE 100MB -->DirSprite -> Coloque o caminho onde se encontra sua pasta.->Caso esteja na raiz do cliente, deixe em branco.->Caso esteja dentro de alguma pasta coloque da seguinte forma: pasta1/pasta2/pasta3/ => A ultima pasta precisa ter uma / ein. Changelog: -------------01/12/2016------------------*Correção de Erros; e*Adicionada Música na execução do launcher.-------------05/11/2016------------------*Otimização dos Codes (Muito Menos Gambs );*Melhor Gerenciamento do Esquema de Cores;*Arquivo de Configurações mais Clean;*Suporte para o spr maior que 100MB.-------------04/11/2016------------------*Adicionada personalização no arquivo de configurações para o esquema de cores do launcher;*Melhorias de códigos inuteis(gambiarras) que haviam dentro do mesmo.-------------20/10/2016------------------*Adicionado personalização no arquivo de configurações para imagens de background e botões de minimizar e fechar. Créditos: ME -> Por ter feito :SDalvo rsrsrsrnrnrsnrnrnnrnn -> Por ter me ensinado a usar o github bash,serio eu não sabia usar só usava o desktop. Ah e também por mostrar essa api maravilhosa. Senha: www.xtibia.com Link para repositório do launcher. https://github.com/f1nal1ty/LauncherWPFOTC launcher2.zip launcher2.zip6 pontos -
Mapa World of Piece
Peedbew e um outro reagiu a SamueLGuedes por um tópico no fórum
Estarei postando aqui, o mapa do World of Piece Imagens: Download: Mega Créditos: Animal Pak World of Piece Green2 pontos -
[Download] Pokémon Light (Sem level)
cebolaxande reagiu a Luga03 por um tópico no fórum
Contribuição do PokéLight Pessoal, essa é uma old version do servidor PokéLight. Comparada a versão atual ela está bem ruim, mas comparada a 90% dos outros OTs ela está perfeita haha. Está não é uma base que você baixa e deixa online, como ela está meio old, não tem certas configurações como o XML não estão 100% corretos (spells, loot, etc), está faltando spells, as tabelas de pokémon não estão prontas e muitas outras coisas.... Lembrando, está versão NÃO tem level system no pokémon! Sistemas Mapa O mapa não foi liberado ainda, mas possivelmente iremos liberar ele mais para frente. Sprites Nenhuma das sprites exclusivas do PLight será liberada pela equipe. Imagens Downloads: Server e Source: https://mega.nz/#!b98zgZYR!Yxq4gBNP9hGrocSEBuhRA-gNT_q6Vgh1mU-pu811Wcs Client: https://mega.nz/#!P8tzBZST!2KsMzr5jdRVMdcXako2p85uu6-skTfsU_WguECwUR8k Estou sem tempo para fazer scan, caso alguém possa fazer para min, agradeço Links Extras:1 ponto -
Maratona de Projetos - Pokémon Global
Altwidus reagiu a Administrador por um tópico no fórum
POKÉMON GLOBAL Olá Xtibianos, esta é a apresentação 1 do evento Maratona de Projetos. Peço humildemente que leia a apresentação que o projeto preparou e contribua comentando a respeito, saiba que devemos apoiar nossos desenvolvedores BR para que nossa comunidade cresça mais forte, faça sua parte! Lembro que no final das apresentações haverá uma votação, onde os membros avaliaram e escolherão o projeto desenvolvedor vencedor da maratona! Olá pessoal do XTibia. Meu nome é Tony e eu faço parte da UXPrimo Team, junto ao meu primo João P. Araújo. Venho por meio dessa maratona de projetos, apresentar-lhes o nosso xodó Pokémon Global, desenvolvido por nós da UXPrimo Team. Nossa equipe desenvolvedora, conta com vários amigos e contribuidores que estão nos ajudando, e o mais interessante, estão fazendo por amor ao projeto, pois estamos trazendo uma ideia antiga e que conquistou os corações de milhares de jogadores. Nosso projeto, como dito anteriormente, conta comigo (Tony) na programação em geral (Sistemas em LUA, C++ e Desenvolvimento do Cliente), João P. no desenvolvimento do mapa, que por sua vez fez praticamente 90% do mapa atual, Avronex que também contribui com o desenvolvimento do mapa e Lua, nosso amigo KalvinKarl é de suma importância em uma das áreas mais difíceis do projeto, onde consiste em balanceamento de pokémons, configurações, gráficas e desenvolvimento web e por último mas não menos importante, nosso querido amigo Gustavo Batista que também contribui no desenvolvimento gráfico e web tanto no servidor quanto no site. O código fonte do nosso projeto foi totalmente reconstruído a fins de ser utilizado exclusivamente para pokémon, assim retirando todo o código inútil podendo então aumentar o seu desempenho, diminuir o tamanho e o tempo de processamento pela máquina resultado em um jogo com maior estabilidade sem 'freezes', 'lags' e 'bugs'! O Servidor conta com inúmeras inovações, tanto em reconstruções de códigos, quanto de sistemas novos. Irei citar alguns, explica-los e mostrar algumas fotos logo abaixo. Nossos sistemas também conta com os mecanismos maravilhosos do OLDClient, que também proporciona aos nossos jogadores mais estabilidade e leveza pois nosso client pesará em seu download apenas 10MB. Wild Caught Mark - Este sistema tende a marcar todos os pokémons selvagens capturados pelo jogador, utilizando um ícone específico. Este ícone variará de acordo com a pokebola que o jogador utilizou para capturar o pokémon, ou seja, se o jogador captura o pokémon com uma PokeBall, o mesmo ficará marcado abaixo do seu nome com o ícone de uma Pokeball. Party System - Este sistema foi refeito utilizando a ideia de "dois em um", pois utiliza o private channel que por sua vez já traz uma comunicação mais facilitada a todos os membros desta parceria. Seu convite pode ser feito usando também o mecanismo proposto pelo chat. Moves Bar - Este sistema foi feito para aumentar a jogabilidade, assim fazendo com que o jogador tenha o conhecimento de em quanto tempo ele poderá reutilizar o movimento de seu pokémon. Market System - Um sistema que visa a praticidade no comércio de items e pokémons, podendo um jogador, anunciar seus próprios pertences à venda e/ou comprar de outros jogadores que anunciaram. Ainda não foi finalizado. Como anteriormente citado, estamos construindo nosso servidor tendo como base uma ideia antiga e que deixou boas lembranças na memória de cada um que teve sua vivência no jogo. Abaixo mostrarei uma pouquinho do mapa, para não acabar com as surpresas. CONTRIBUIÇÃO DO PROJETO PARA O XTIBIA1 ponto -
Addon System (Fly, ride, surf, look e evolution)
XZero reagiu a Bodak Reborn por um tópico no fórum
Yo boyz! Eu estava procurando um Addon System funcional e vi que todos tinham bugs, então eu peguei um código que achei em outro fórum, corrigi os bugs e fiz para que o sistema funcione com fly, ride, surf, look e que o addon suma quando o pokémon evoluir. Também é possível substituir um addon por outro, sem que o pokémon fique com o addon antigo. São muitos arquivos envolvidos, então, se eu esquecer algo e o sistema não esteja 100%, por favor, me fale. Deixei alguns exemplos no código para caso você esteja com preguiça e queira testar, além de comentar como adicionar novos addons. OBS: Eu testei apenas em PDA PokexCyan (TFS 0.3.6). actions/scripts nome_arquivo.lua local addons = {[14876] = {pokemon = "Shiny Charizard" , looktype = 1950},[12344] = {pokemon = "Pidgeot" , looktype = 205},[13990] = {pokemon = "Pidgeot" , looktype = 201},--[ID do item] = {nome do pokémon, looktype},}local function getOldAddon (looktype) for index, value in pairs (addons) do if value.looktype == looktype then return index end endendfunction onUse(cid, item, fromPosition, itemEx, toPosition) local numero = addons[item.itemid].looktype local pb = itemEx.uid local pk = addons[item.itemid].pokemon if not isPokeball(itemEx.itemid) then doPlayerSendCancel(cid, "Você só poder usar este item em uma poke ball.") return true end if getPlayerSlotItem (cid, 8).uid == pb and (getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1) then doPlayerSendCancel (cid, "Desmonte do seu pokémon e volte-o para a poke ball.") return true end if getItemAttribute(pb, "addon") and getItemAttribute(pb, "addon") == numero then doPlayerSendCancel(cid, "Seu pokémon já está com este addon.") return true end if #getCreatureSummons(cid) > 0 then doPlayerSendCancel(cid, "Por favor, volte o seu pokémon para a poke ball.") return true end if getItemAttribute(pb, "poke") ~= pk then doPlayerSendCancel(cid, "Desculpe, você não pode adicionar este addon neste pokémon.") return true end if getItemAttribute (pb, "addon") and getItemAttribute (pb, "addon") > 1 then doPlayerSendTextMessage(cid, 27, "Você substituiu um "..getItemNameById (getOldAddon (getItemAttribute (pb, "addon"))).." por um "..getItemNameById (item.itemid).."!") else doPlayerSendTextMessage(cid, 27, "Agora seu pokémon usará este "..getItemNameById (item.itemid).."!") end doRemoveItem(item.uid, 1) doSetItemAttribute(pb, "addon", numero) return trueend actions.xml: <action itemid="13989;12344;13990;ID do item; ID do item;" event="script" value="nome_arquivo.lua"/> em actions/order.lua, abaixo de: if not isCreature(pk) then pk = doCreateMonster(pokemon, backupPos) if not isCreature(pk) then doPlayerSendCancel(cid, "You can't stop flying/riding here.") return true end doConvinceCreature(cid, pk) end adicione: local pb = getPlayerSlotItem(cid, 8).uid local flyAdd = flysAddon[getItemAttribute (pb, "addon")] local rideAdd = ridesAddon[getItemAttribute (pb, "addon")] if flyAdd then if getItemAttribute(pb, "addon") > 1 then doSetCreatureOutfit(pk, {lookType = getItemAttribute (pb, "addon")}, -1) end elseif rideAdd then if getItemAttribute(pb, "addon") > 1 then doSetCreatureOutfit(pk, {lookType = getItemAttribute (pb, "addon")}, -1) end end em lib/configuration.lua, será necessário adicionar três tabelas, uma para fly, outra para ride e outra para surf. Nesta tabela, o nome do pokémon não é requirido, o que talvez faça você se perder. Se você achar necessário, comente com "--" o nome do pokémon. Exemplo: [205] = {540}, -- Pidgeot[850] = {210}, -- Dragonair procure por: flys e acima disso adicione: flysAddon = {[205] = {540},[201] = {541},--[número do looktype do addon] = {looktype do addon voando}} procure por: rides e acima disso adicione: ridesAddon = {[556] = {555},--[número do looktype do addon] = {looktype do addon montado}} procure por: rides e acima disso adicione: surfsAddon = {[201] = {541},[552] = {553},--[número do looktype do addon] = {looktype do addon nadando}} em lib/order.lua, procure por: elseif skill == "fly" then e abaixo adicione: local pb = getPlayerSlotItem(cid, 8).uid if getItemAttribute(pb, "addon") < 1 then doSetCreatureOutfit(cid, {lookType = flys[getPokemonName(getCreatureSummons(cid)[1])][1] + 351}, -1) else doSetCreatureOutfit(cid, {lookType = flysAddon[getItemAttribute (pb, "addon")][1]}, -1) end depois, no mesmo arquivo, procure por: elseif skill == "ride" then e abaixo adicione: local pb = getPlayerSlotItem(cid, 8).uid if getItemAttribute(pb, "addon") < 1 then doSetCreatureOutfit(cid, {lookType = rides[getPokemonName(getCreatureSummons(cid)[1])][1] + 351}, -1) else doSetCreatureOutfit(cid, {lookType = ridesAddon[getItemAttribute (pb, "addon")][1]}, -1) end em movements/surf.lua, procure por: if getPlayerStorageValue(cid, 6598754) == 1 or getPlayerStorageValue(cid, 6598755) == 1 then doPlayerSendCancel(cid, "You can't do it while in the PVP Zone!") --alterado v1.7 doTeleportThing(cid, fromPosition, false)return trueend e abaixo adicione: local pb = getPlayerSlotItem(cid, 8).uid if getItemAttribute(pb, "addon") < 1 then doSetCreatureOutfit(cid, {lookType = surfs[getPokemonName(getCreatureSummons(cid)[1])].lookType}, -1)else doSetCreatureOutfit(cid, {lookType = surfsAddon[getItemAttribute(pb, "addon")][1]}, -1)end logo abaixo disso, vocês vão encontrar: (isso não envolve o funcionamento do sistema de addon, mas é um bug que eu achei no meu surf. Todos os pokémon tinham velocidade fixa de 1500.) local speed = 75 + PlayerSpeed + getSpeed(getCreatureSummons(cid)[1]) * 8 * speedRate substitua por: local speed = 75 + PlayerSpeed + surfs[getPokemonName(getCreatureSummons(cid)[1])].speed * 8 * speedRate no mesmo arquivo, procure por: if getItemAttribute(item.uid, "nick") then doCreatureSay(cid, getItemAttribute(item.uid, "nick")..", I'm tired of surfing!", 1) else doCreatureSay(cid, getItemAttribute(item.uid, "poke")..", I'm tired of surfing!", 1) end doSummonMonster(cid, pokemon) local pk = getCreatureSummons(cid)[1] e abaixo adicione: local pb = getPlayerSlotItem(cid, 8).uid if surfsAddon[getItemAttribute(pb, "addon")] then if getItemAttribute(pb, "addon") > 1 then doSetCreatureOutfit(pk, {lookType = getItemAttribute(pb, "addon")}, -1) end end em actions/goback.lua, procure por: doSendMagicEffect(getCreaturePosition(pk), effect) abaixo adicione: local pk = getCreatureSummons(cid)[1] local pb = getPlayerSlotItem(cid, 8).uid local look = getItemAttribute(pb, "addon") if not look then doSetItemAttribute(pb, "addon", 0) end if look and look > 0 then doSetCreatureOutfit(pk, {lookType = look}, -1) end em actions/evolution.lua, procure por: local ball = getPlayerSlotItem(cid, 8).uid há 12 linhas iguais a essa nesse arquivo e embaixo de TODAS elas, adicione: doItemSetAttribute (ball, "addon", 0) em creaturescripts/look.lua, procure por: if getItemAttribute(thing.uid, "gender") == SEX_MALE then table.insert(str, "It is male.") elseif getItemAttribute(thing.uid, "gender") == SEX_FEMALE then table.insert(str, "It is female.") else table.insert(str, "It is genderless.") end se novamente, esse código aparece duas vezes no arquivo. E também, novamente, embaixo dos dois, adicione: if getItemAttribute(thing.uid, "addon") then if flysAddon[getItemAttribute (thing.uid, "addon")] or ridesAddon[getItemAttribute (thing.uid, "addon")] or surfsAddon[getItemAttribute (thing.uid, "addon")] then if getItemAttribute(thing.uid, "addon") > 1 then table.insert(str, " Has the addon "..getItemNameById (getAddonId (getItemAttribute (thing.uid, "addon")))..".") end end end E no começo desse arquivo, adicione: local addons = {[14876] = {pokemon = "Shiny Charizard" , looktype = 1950},[12344] = {pokemon = "Pidgeot" , looktype = 205},[13990] = {pokemon = "Pidgeot" , looktype = 201},--[ID do item] = {nome do pokémon, looktype},}local function getAddonId (looktype) for index, value in pairs (addons) do if value.looktype == looktype then return index end endend a tabela "addons" deve ser a mesma que a do actions/addon.lua. Então, quando você adicionar algo no addon.lua, deverá adicionar também no look.lua. em login.lua, procure por: doSetCreatureOutfit(cid, {lookType = flys[poke][1] + 351}, -1) e substitua por: if getItemAttribute(item.uid, "addon") < 1 then doSetCreatureOutfit(cid, {lookType = flys[poke][1] + 351}, -1) else doSetCreatureOutfit(cid, {lookType = flysAddon[getItemAttribute (item.uid, "addon")][1]}, -1) end procure por: doSetCreatureOutfit(cid, {lookType = surfs[poke].lookType + 351}, -1 substitua por: if getItemAttribute(item.uid, "addon") < 1 then doSetCreatureOutfit(cid, {lookType = surfs[poke].looktype + 351}, -1) else doSetCreatureOutfit(cid, {lookType = surfsAddon[getItemAttribute (item.uid, "addon")][1]}, -1) end procure por: doSetCreatureOutfit(cid, {lookType = rides[poke][1] + 351}, -1) substitua por: if getItemAttribute(item.uid, "addon") < 1 then doSetCreatureOutfit(cid, {lookType = rides[poke][1] + 351}, -1) else doSetCreatureOutfit(cid, {lookType = ridesAddon[getItemAttribute (item.uid, "addon")][1]}, -1) end1 ponto -
Cp door system pxg
VanderleyJun reagiu a Eskylo por um tópico no fórum
Crie um arquivo chamado doors.lua na pasta data\movements\scripts e adicione o seguinte conteúdo: -- CONFIGURAÇÕES --local doors = {18312, 18311, 18310, 18309}local door_pos = {x=1051,y=1032,z=7}-- FIM CONFIGURAÇÕES --local top_left = {x = door_pos.x - 3, y = door_pos.y - 2, z = door_pos.z}local bottom_right = {x = door_pos.x, y = door_pos.y + 2, z = door_pos.z}local function areThereCreaturesInArea(top_left, bottom_right) for x = top_left.x, bottom_right.x do for y = top_left.y, bottom_right.y do if isCreature(getTopCreature({x=x, y=y, z=top_left.z}).uid) then return true end end end return falseendlocal function open(pos, i)if i < #doors then current = doors[i] next_ = doors[i+1] local door = getTileItemById(pos, current) if door.uid > 0 then doTransformItem(door.uid, next_) addEvent(open, 200, pos, i+1) endend endlocal function close_(pos, i)if areThereCreaturesInArea(top_left, bottom_right) then return trueendif i <= #doors and i > 1 then current = doors[i] next_ = doors[i-1] local door = getTileItemById(pos, current) if door.uid > 0 then doTransformItem(door.uid, next_) addEvent(close_, 200, pos, i-1) endend endfunction onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) for i = 1, #doors do local door = getTileItemById(door_pos, doors[i]) if door.uid > 0 then open(door_pos, i) break end end return trueendfunction onStepOut(cid, item, position, lastPosition, fromPosition, toPosition, actor) close_(door_pos, #doors) return trueend No arquivo movements/movements.xml adicione as seguintes linhas <movevent type="StepIn" actionid="12000" event="script" value="doors.lua"/> <movevent type="StepOut" actionid="12000" event="script" value="doors.lua"/> No map editor adicione o action id 12000 aos tiles em volta da porta marcados com X Agora você deve configurar as coordenadas da porta no script de acordo com o seu mapa: local door_pos = {x=1051,y=1032,z=7} (A pos onde fiz o X) E por último configurar os IDS das portas de acordo com o seu servidor: local doors = {18312, 18311, 18310, 18309} Você deve colocar os IDS na ordem da "mais fechada" até a "mais aberta". No meu exemplo a porta totalmente fechada tem id 18312 e a totalmente aberta 18309, mas no seu servidor provavelmente os ids são diferentes. Espero que seja útil Lembrando que você tem que repetir todos os passos para cada porta assim no seu mapa, usando action ids e posições diferentes. Em breve faço uma versão que dê pra configurar todas as portas do mapa em 1 script.1 ponto -
3 Mapas criativos para seu Otserv
110316 reagiu a SamueLGuedes por um tópico no fórum
Há diferentes tipos de otserv, diferentes gráficos e jogabilidades. Mas todo otserv precisa de um mapa criativo e atrativo, para poder cativar seus jogadores. Selecionamos 3 mapas interessantes para utilizar em um projeto, alguns com gráficos próprios e outros não. Confira abaixo: 1 PIRATAS DO CARIBE Este mapa é ótimo para servidores rpg de Tibia, e está bem detalhado. 2 WORLD OF PIECE Um mapa diferenciado para um servidor diferenciado. Você com certeza vai querer conferir este! 3 CONTINENTES RPG Embora falte spawns, este mapa está pronto para ser jogado e notado. É isso ai. Fique ligado nas novidades da nossa comunidade!1 ponto -
1 ponto
-
Sprites [INICIANTE]
Peedbew reagiu a Jakson Souza por um tópico no fórum
Fala Galera, Antes de mais nada já vou avisando... Eu fiz essas sprites brincando, não tenho nem uma experiência com esse tipo de trabalho. :3 Smurf Naruto Deidara Rick Grimes Pikachu Kirito Sem Nome Batman Sem Nome Deidara Mijando1 ponto -
Usei Poké cya transformei para 8.6 e só tem que editar algumas coisas1 ponto
-
Maratona de Projetos - Pokemon Light
samlecter reagiu a KNightmare Proj por um tópico no fórum
ficou muito bom, meus parabéns.1 ponto -
Maratona de Projetos - Attack
nbb147 reagiu a Administrador por um tópico no fórum
ATTACK Olá Xtibianos, esta é a apresentação 4 do evento Maratona de Projetos. Peço humildemente que leia a apresentação que o projeto preparou e contribua comentando a respeito, saiba que devemos apoiar nossos desenvolvedores BR para que nossa comunidade cresça mais forte, faça sua parte! Lembro que no final das apresentações haverá uma votação, onde os membros avaliaram e escolherão o projeto desenvolvedor vencedor da maratona! Bem vindos à intimidade do projeto Attack! (Se você não sabe do se trata o projeto, por favor, clique aqui!) Como está dividido o desenvolvimento do jogo? O jogo está sendo desenvolvido em três etapas: A etapa inicial, alpha, consiste em adaptar o servidor e o cliente, TFS 1.2 e OTClient, respectivamente, ao gênero MOBA. A etapa posterior, beta, consiste em testar as interações das adaptações promovidas e as interações das habilidades de cada personagem, para termos um jogo dinâmico e justo. Por ultimo e mais importante: release. Essa etapa de desenvolvimento se refere a criar conteúdo para a interação da comunidade, como torneios, conquistas e itens. Quem é a equipe? A equipe é composta por mim, MarceLoko e Skulls. Quem faz o que? Sou responsável por viabilizar a plataforma de construção do conteúdo e coordenar as próximas ações e prioridades. Skulls é responsável pelo desenvolvimento do conteúdo. Ferramentas utilizadas: Skype Trello Bitbucket Remere's Map Editor ObjectBuilder Dificuldades do projeto: Falta de disponibilidade de ambas partes, precisamos focar em nossa vida profissional, tendo em vista que lucrar com o jogo não é fator decisivo. Grande distância física entre os membros. Falta de habilidade de desenvolvimento visual. Necessidade de refatoramento de características das plataformas, já que se trata de um gênero diferente de jogo. Descrição de algumas características planejadas: Multi-idiomas Comunicação por voz Dados de partidas antigas e análises estatísticas Partidas ao vivo e replays Fórum e galerias dentro do jogo Jogadores poderão criar seus próprios torneios Servidores de jogo em vários locais do mundo, inclusive no Brasil (todos conectados entre si) (Essa listagem não contém qualquer tipo de ordem de importância, implementação e nem significa que são indispensáveis.) Política de novos desenvolvedores: A equipe no momento não está em busca de qualquer novo membro. Atividades que necessitam de alguma habilidade específica são encomendadas a profissionais. Entretanto, há grande demanda na parte gráfica e de desenvolvimento. Caso algum desenvolvedor demonstre seu valor, o que e o quanto deseja agregar ao projeto, este poderá ser efetivado no quadro de desenvolvedores. Vídeos e fotos Peço desculpas pelo pouco conteúdo visual, como já foi dito, o desenvolvimento visual é uma deficiência. Demonstração da movimentação da câmera do jogador: Demonstração de uma magia Prévia da interface O projeto não possui previsão de lançamento. Terei prazer em responder dúvidas e receber sugestões. CONTRIBUIÇÃO DO PROJETO PARA O XTIBIA1 ponto -
Achei muito legal vc ter contribuído com o server do seu projeto, em outra versão. Muito mesmo. Reputado!1 ponto
-
Muito bom mlk # edit Só lembrando ao pessoal que o github tem um limite referente a tamanho de arquivos, se tu tentar upar arquivos maiores que 100mb ele não permite, ai ate tem outros serviços mas eu creio que nem precise, na maioria dos arquivos de cliente não se passa desse tamanho, e se passar tambem por exemplo no caso do spr, é so quebrar ele em arquivos menores que ta suave1 ponto
-
Boooa cara !! Muito obrigado por ter tirado o sistema de level dos Pokémons. Agora virou a base perfeita Só estou tendo problemas para compilar... Consigo instalar o OpenSSL1 ponto
-
Bom cara, acho que isso que você está tentando fazer é quase impossível... pois parei pare pensar, mesmo se corrigir o NPC... e quanto a todo o restante do servidor? quanta coisa interage com o dinheiro? creio que para fazer o que você quer apenas nas sources, e não sei mexer nisso Boa sorte!1 ponto
-
Eu sei que não tem nada haver com a fala do NPC, no momento estou focado em concertar a relação Preço do item no look x Preço do item COBRADO pelo NPC. Se isso der certo, depois vemos sobre a fala do NPC.1 ponto
-
Maratona de Projetos - Pokemon Light
KNightmare Proj reagiu a samlecter por um tópico no fórum
Boa ideia, vou fazer a sprite do arbusto queimado! Vai ficar mais realista, aquele efeito do ember é para os pokemons de fogo, o Farfetch'd por exemplo, lança o "boomerang" dele p/ cortar a distância EDITED: Fiz aqui a sugestão do @Caronte, olhem como ficou1 ponto -
Última Atualização: 14/03/2014 Aqui serão organizados os tutoriais da área, divididos por nível de conhecimento (básico, intermediário e avançado) e conteúdo (spells, monsters, ...). Também separei tópicos com material de consulta para scripters, as listas organizadas anteriormente e um adicional de alguns scripts de destaque. Recomendações: Para os que querem aprender e editar scripts e estão começando, não usem o bloco de notas, muitas vezes destrói a organização do código e torna o scripting muito mais trabalhoso. Para começar, usem o Notepad++. Outra boa ideia para aprender é sempre exercitar-se lendo e criando códigos. Tente procurar por códigos que você consiga entender na pasta do seu otserver e vá aumentando o nível de dificuldade, tentando reproduzi-los por conta própria, à sua maneira. Além disso, você deve criar códigos do zero para se exercitar devidamente. Leia o segundo tutorial (lógica, algoritmos e organização, por iuniX) e aprenda o que é identação antes mesmo de pensar em aprender o resto. 1. Módulo Geral - Tutoriais focados na linguagem LUA e nas bases do scripting Nível 0 - Tutoriais focados no desenvolvimento da lógica e contato inicial com a linguagem LUA Lua, o que é? - Por iuniX Lógica, algoritmos e organização - Por iuniX Variáveis e Tipos de Dados - Por iuniX Funções e Return - Por apocarai Aulas Iniciais da Escolinha de Scripting - Por Roksas Strings e Numbers em Lua - Por caotic Nível 1 - Tutoriais básicos sobre a linguagem e scripting Introdução e Convenções Léxicas - Por apocarai Tutorial de Action - Por BoppreH (postado aqui por Brabo) Editando o config.lua - Por buster287 Aulas da Escolinha de Scripting - Por Roksas Quer aprender a ser scripter? - Por Sir Picaralhos Tutoriais 1-4 da Enciclopédia da Pasta Data - Por tibiaa4e Como funcionam os scripts - por MaXwEllDeN Como Criar Seu Monstro - Por VitorHugoFerreira Como Adicionar Seu NPC no Mapa - Por megaplis Revisão de Monsters, NPCs e Spells - Por Lucas Rap Estruturas de Controle - Por apocarai Nível 2 - Tutoriais intermediários sobre a linguagem e scripting A Coisa Mais Importante em um Código - Por Skyen A Partir do Tutorial 5 da Enciclopédia da Pasta Data - Por tibiaa4e Tutorial Sobre Arrays (Tables) - Por Tprocheira Matemática e LUA - Por Demonbholder Como Editar Magias - Por MatheusMkalo Tutorial Creaturescripts - Por Jhon992 Utilização de Loops - Por caotic Loopings - Por Demonbholder Editando Itens - Por Fronick Escrevendo em um arquivo - Por SkyDangerous Lib - O Que É e Como Usar - Por caotic Como usar o AddEvent - Por Killua Nível 3 - Tutoriais avançados sobre a linguagem e scripting Tutorial sobre Patterns - por MaXwEllDeN LUA Orientado a Objetos I - Por SkyDangerous LUA Orientado a Objetos II - Por LuckOake Tutorial de Queries para OTServers - Por shutup Utilizando Arquivos XML - Por caotic Queries e SQL para OTServers - Por mim Simulando IF/ELSE com AND/OR - Por River Material de Consulta - Tópicos que podem ser de ajuda quando se está criando códigos (para relembrar como usar aquela funçãozinha que você esqueceu) Algumas Funções do TFS com Explicação - Por tibiaa4e Operadores e Bibliotecas - Por Roksas Mais Funções do TFS sem Explicação - Por sukx Manual LUA - Por Roberto Ierusalimschy et al Biblioteca de Funções LUA (poucas funções, mas bem explicadas) - Por Benefactor Lista de Atributos para Itens - Por Oneshot Lista de Efeitos 8.54 - Por antharaz Algumas Fórmulas Úteis para OTServers - Por Oneshot 2. Módulo Específico - Tutoriais variados separados por assunto Monsters Editando a aparência das criaturas - Por Nickelback Criando seu monstro - Por VictorHugoFerreira NPCs Criando Seu NPC - Por Eventide A Magia dos NPCs - Por tibiaa4e Como Adicionar NPC no seu Mapa - Por Megaplis Spells Criando Magias - Por Kimoszin Criando Magias Para Monstros - Por 139 Entendendo e Configurando a Área das Magias - Por Krhiegen Criando Runas Novas - Por mxlr14 Spells e suas Grandes Funções - Por tibaa4e Actions Criando Quests - Por tibiaa4e Como Fazer um Baú de Quest Simples - Por DarkAlvaro Editando Potions - Por RarTne Actions - Por tibiaa4e Movements Criando Pisos Especiais - Por FoDoX Movements - Por tibiaa4e Itens Criando Armas Especiais - Por theflammer Tornando Munição Infinita - Por TheSleeper Lista de Atributos para XML - Por amoeba13 Como Fazer um Item Se Tornar Stackable - Por notle2012 Criando Wands e Rods - Por Castiello XML Configurando o Quest Log - Por Luiz Vitor Editando Exp Por Stages - Por Schiavinato Tutorial Sobre Outfits - Por Oneshot Configurando as Vocações - Por Flash001 Adicionando Vocações ao Account Manager - Por profelezio Outros Criando Exhaustion Com Storage - Por Roksas Resolvendo o Problema de Anti-Idle - Por cs007 Como Usar LUA Para Editar o Quest Log - Por MaXwEllDeN Como Usar addEvent adequadamente - Por skymagnum Como Adicionar Level Máximo - Por McTyn Tutorial Sobre Storages - Por caotic Como usar o os.date - Por Demonbholder 3. Scripts de destaque Pacote de Actions Simples e Úteis - Por mim NPC Lutador - Por mim Weapon Hit Rank - Por Vodkart NPC Auction - Por Vodkart War Arena - Por MatheusMkalo Castle Guild War - Por DrakyLucas Barco Que Anda Por Uma Rota - Por MatheusMKalo Simple Task v3.0 - Por Vodkart Fly System - Por Mock Character Market System - Por LuckOake Autoloot - Por Mkalo e Vodkart 4. Listas antigas Os Melhores Tutoriais - Por Luckituz X-Find Scripting - Por HenriqueMoura 5. Pedidos de Tutoriais Aqui é a lista de tutoriais pedidos para complementar o acervo do XT. Quem fizer algum deles e este for aprovado, me avise e ganhará 3 rep+. Para pedir um tutorial aqui, basta comentar no tópico especificando o conteúdo. Tutorial detalhado sobre a criação de mods Tutorial sobre mounts Por fim, deixe sua sugestão de tutorial ou sobre o tópico, denuncie links quebrados e, se o conteúdo do fórum te ajudou, procure devolver contribuindo de volta.1 ponto