Jump to content

Search the Community

Showing results for tags 'otclient'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • xTibia - Notícias e Suporte
    • Regras
    • Noticias
    • Soluções
    • Projetos Patrocinados
    • Tutoriais para Iniciantes
    • Imprensa
  • OTServ
    • Notícias e Debates
    • OTServlist
    • Recursos
    • Suporte
    • Pedidos
    • Downloads
  • OFF-Topic

Categories

There are no results to display.


Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Sou

Found 76 results

  1. Fala ai galera do xtibia estou aqui trazendo mais um module para o otClient. Esses dias atras estavo jogando pokestorm e me deparei com o autoloot e decidi fazer um parecido com o deles e então pensei porque não trazer para a comunidade? Afinal não vejo muitos modulos de autoloot para otClient o unico que vi foi o autoloot da DxP, porem não é muito intuitivo comparado com modulo da pokestorm, bom sem mais enrolação vamos lá. Feito o download do arquivo, coloque-o na pasta do seu otClient em /modules/ e pronto já é possível "utilizar-lo", porem com algumas exceções de algumas configurações básicas que temos que fazer para poder utilizar-lo com algumas eficiências. 1º Na pasta do seu otClient/data/ crie uma pasta chamada items e coloque o seus arquivos items.otb e items.xml. 2º Vai até a pasta do seu otClient/modules/game_things abre o arquivo things.lua e procure a função load(), e coloque o seguinte: g_things.loadOtb ('/items/items.otb') g_things.loadXml('/items/items.xml') Obs: Não se assustem quando entrarem no client para logar, no inicio vai dar uma travada, mas depois de esperar uns segundos ele normaliza, pois o único problema é que o carregamento dos arquivos dos items eles são demorados. Também é preciso fazer umas configurações rápida na parte do servidor para poder funcionar. Copie e cole esse script e coloque na pasta do servidor em mods/ e de o nome de autoloot.xml Ainda na pasta do seu servidor abre o arquivo /data/creaturescripts/scripts/login.lua e coloque o seguinte script dentro da função onLogin: local loot = '' for i = 1, #getPlayerStorageTable(cid, info.Storages[1]) do loot = loot..getItemInfo(getPlayerStorageTable(cid, info.Storages[1])[i]).clientId..'-'..getItemNameById(getPlayerStorageTable(cid, info.Storages[1])[i])..'@' end doSendPlayerExtendedOpcode(cid, 157, loot) Feito todos os passos corretamente, configurado certo, deve ficar assim no game: Bom espero que tenham entendido e gostado, não sou muito de ficar escrevendo tutorial, até uma próxima. Download Créditos
  2. Devatensei

    OTClient

    Otclient Mobile 740,760,772,800,810,854,860,1090,1099 Server Testados carnage76.4vps.eu:7171 "760"🇵🇱 Mdq.pl:7171 "772"🇵🇱 Devlandot.eu:7171 "800"🇲🇫 854"Só achei derivado" Baiak-pelego24hrs.online:7171 "860"🇧🇷 Realots.pl:7171 "1090"🇵🇱 Oceraglobal.servegame.com:7171 "1099"🇧🇷 Link: "Mega" https://mega.nz/file/a8wjiAwS#jHnSng73v5cARI1vI_ohBtn_7AZTHmGchB4LqOM_BO8 Arquivo: gen_signed.apk Tamanho: 190,02MB Instagram.com/deva.tenseisk8
  3. NÃO ESTOU CONSEGUINDO MUDAR MEU IP , PARA QUE O OTCLIENTE LOGO SOMENTE NO MEU OT , GOSTARIA QUE SUMISSE AS CAIXA DE ESCOLHA DE IP E VERSÃO E FICASSE SO PARA O PLAYER COLOCAR LOGIN E SENHA. +REP entergame.LUA EnterGame = { } -- private variables local loadBox local enterGame local motdWindow local motdButton local enterGameButton local clientBox local protocolLogin local motdEnabled = true -- private functions local function onError(protocol, message, errorCode) if loadBox then loadBox:destroy() loadBox = nil end if not errorCode then EnterGame.clearAccountFields() end local errorBox = displayErrorBox(tr('Login Error'), message) connect(errorBox, { onOk = EnterGame.show }) end local function onMotd(protocol, motd) G.motdNumber = tonumber(motd:sub(0, motd:find("\n"))) G.motdMessage = motd:sub(motd:find("\n") + 1, #motd) if motdEnabled then motdButton:show() end end local function onCharacterList(protocol, characters, account, otui) -- Try add server to the server list ServerList.add(G.host, G.port, g_game.getClientVersion()) if enterGame:getChildById('rememberPasswordBox'):isChecked() then local account = g_crypt.encrypt(G.account) local password = g_crypt.encrypt(G.password) g_settings.set('account', account) g_settings.set('password', password) ServerList.setServerAccount(G.host, account) ServerList.setServerPassword(G.host, password) g_settings.set('autologin', enterGame:getChildById('autoLoginBox'):isChecked()) else -- reset server list account/password ServerList.setServerAccount(G.host, '') ServerList.setServerPassword(G.host, '') EnterGame.clearAccountFields() end loadBox:destroy() loadBox = nil for _, characterInfo in pairs(characters) do if characterInfo.previewState and characterInfo.previewState ~= PreviewState.Default then characterInfo.worldName = characterInfo.worldName .. ', Preview' end end CharacterList.create(characters, account, otui) CharacterList.show() if motdEnabled then local lastMotdNumber = g_settings.getNumber("motd") if G.motdNumber and G.motdNumber ~= lastMotdNumber then g_settings.set("motd", motdNumber) motdWindow = displayInfoBox(tr('Message of the day'), G.motdMessage) connect(motdWindow, { onOk = function() CharacterList.show() motdWindow = nil end }) CharacterList.hide() end end end local function onUpdateNeeded(protocol, signature) loadBox:destroy() loadBox = nil if EnterGame.updateFunc then local continueFunc = EnterGame.show local cancelFunc = EnterGame.show EnterGame.updateFunc(signature, continueFunc, cancelFunc) else local errorBox = displayErrorBox(tr('Update needed'), tr('Your client needs updating, try redownloading it.')) connect(errorBox, { onOk = EnterGame.show }) end end -- public functions function EnterGame.init() enterGame = g_ui.displayUI('entergame') enterGameButton = modules.client_topmenu.addLeftButton('enterGameButton', tr('Login') .. ' (Ctrl + G)', '/images/topbuttons/login', EnterGame.openWindow) motdButton = modules.client_topmenu.addLeftButton('motdButton', tr('Message of the day'), '/images/topbuttons/motd', EnterGame.displayMotd) motdButton:hide() g_keyboard.bindKeyDown('Ctrl+G', EnterGame.openWindow) if motdEnabled and G.motdNumber then motdButton:show() end local account = g_settings.get('account') local password = g_settings.get('password') local host = g_settings.get('host') local port = g_settings.get('port') local autologin = g_settings.getBoolean('autologin') local clientVersion = g_settings.getInteger('client-version') if clientVersion == 0 then clientVersion = 1071 end if port == nil or port == 0 then port = 7171 end EnterGame.setAccountName(account) EnterGame.setPassword(password) enterGame:getChildById('serverHostTextEdit'):setText(host) enterGame:getChildById('serverPortTextEdit'):setText(port) enterGame:getChildById('autoLoginBox'):setChecked(autologin) clientBox = enterGame:getChildById('clientComboBox') for _, proto in pairs(g_game.getSupportedClients()) do clientBox:addOption(proto) end clientBox:setCurrentOption(clientVersion) enterGame:hide() if g_app.isRunning() and not g_game.isOnline() then enterGame:show() end end function EnterGame.firstShow() EnterGame.show() local account = g_crypt.decrypt(g_settings.get('account')) local password = g_crypt.decrypt(g_settings.get('password')) local host = g_settings.get('host') local autologin = g_settings.getBoolean('autologin') if #host > 0 and #password > 0 and #account > 0 and autologin then addEvent(function() if not g_settings.getBoolean('autologin') then return end EnterGame.doLogin() end) end end function EnterGame.terminate() g_keyboard.unbindKeyDown('Ctrl+G') enterGame:destroy() enterGame = nil enterGameButton:destroy() enterGameButton = nil clientBox = nil if motdWindow then motdWindow:destroy() motdWindow = nil end if motdButton then motdButton:destroy() motdButton = nil end if loadBox then loadBox:destroy() loadBox = nil end if protocolLogin then protocolLogin:cancelLogin() protocolLogin = nil end EnterGame = nil end function EnterGame.show() if loadBox then return end enterGame:show() enterGame:raise() enterGame:focus() end function EnterGame.hide() enterGame:hide() end function EnterGame.openWindow() if g_game.isOnline() then CharacterList.show() elseif not g_game.isLogging() and not CharacterList.isVisible() then EnterGame.show() end end function EnterGame.setAccountName(account) local account = g_crypt.decrypt(account) enterGame:getChildById('accountNameTextEdit'):setText(account) enterGame:getChildById('accountNameTextEdit'):setCursorPos(-1) enterGame:getChildById('rememberPasswordBox'):setChecked(#account > 0) end function EnterGame.setPassword(password) local password = g_crypt.decrypt(password) enterGame:getChildById('accountPasswordTextEdit'):setText(password) end function EnterGame.clearAccountFields() enterGame:getChildById('accountNameTextEdit'):clearText() enterGame:getChildById('accountPasswordTextEdit'):clearText() enterGame:getChildById('accountNameTextEdit'):focus() g_settings.remove('account') g_settings.remove('password') end function EnterGame.doLogin() G.account = enterGame:getChildById('accountNameTextEdit'):getText() G.password = enterGame:getChildById('accountPasswordTextEdit'):getText() G.host = enterGame:getChildById('serverHostTextEdit'):getText() G.port = tonumber(enterGame:getChildById('serverPortTextEdit'):getText()) local clientVersion = tonumber(clientBox:getText()) EnterGame.hide() if g_game.isOnline() then local errorBox = displayErrorBox(tr('Login Error'), tr('Cannot login while already in game.')) connect(errorBox, { onOk = EnterGame.show }) return end g_settings.set('host', G.host) g_settings.set('port', G.port) g_settings.set('client-version', clientVersion) protocolLogin = ProtocolLogin.create() protocolLogin.onLoginError = onError protocolLogin.onMotd = onMotd protocolLogin.onCharacterList = onCharacterList protocolLogin.onUpdateNeeded = onUpdateNeeded loadBox = displayCancelBox(tr('Please wait'), tr('Connecting to login server...')) connect(loadBox, { onCancel = function(msgbox) loadBox = nil protocolLogin:cancelLogin() EnterGame.show() end }) g_game.setClientVersion(clientVersion) g_game.setProtocolVersion(g_game.getClientProtocolVersion(clientVersion)) g_game.chooseRsa(G.host) if modules.game_things.isLoaded() then protocolLogin:login(G.host, G.port, G.account, G.password) else loadBox:destroy() loadBox = nil EnterGame.show() end end function EnterGame.displayMotd() if not motdWindow then motdWindow = displayInfoBox(tr('Message of the day'), G.motdMessage) motdWindow.onOk = function() motdWindow = nil end end end function EnterGame.setDefaultServer(host, port, protocol) local hostTextEdit = enterGame:getChildById('serverHostTextEdit') local portTextEdit = enterGame:getChildById('serverPortTextEdit') local clientLabel = enterGame:getChildById('clientLabel') local accountTextEdit = enterGame:getChildById('accountNameTextEdit') local passwordTextEdit = enterGame:getChildById('accountPasswordTextEdit') if hostTextEdit:getText() ~= host then hostTextEdit:setText(host) portTextEdit:setText(port) clientBox:setCurrentOption(protocol) accountTextEdit:setText('') passwordTextEdit:setText('') end end function EnterGame.setUniqueServer(host, port, protocol, windowWidth, windowHeight) local hostTextEdit = enterGame:getChildById('serverHostTextEdit') hostTextEdit:setText(host) hostTextEdit:setVisible(false) hostTextEdit:setHeight(0) local portTextEdit = enterGame:getChildById('serverPortTextEdit') portTextEdit:setText(port) portTextEdit:setVisible(false) portTextEdit:setHeight(0) clientBox:setCurrentOption(protocol) clientBox:setVisible(false) clientBox:setHeight(0) local serverLabel = enterGame:getChildById('serverLabel') serverLabel:setVisible(false) serverLabel:setHeight(0) local portLabel = enterGame:getChildById('portLabel') portLabel:setVisible(false) portLabel:setHeight(0) local clientLabel = enterGame:getChildById('clientLabel') clientLabel:setVisible(false) clientLabel:setHeight(0) local serverListButton = enterGame:getChildById('serverListButton') serverListButton:setVisible(false) serverListButton:setHeight(0) serverListButton:setWidth(0) local rememberPasswordBox = enterGame:getChildById('rememberPasswordBox') rememberPasswordBox:setMarginTop(-5) if not windowWidth then windowWidth = 236 end enterGame:setWidth(windowWidth) if not windowHeight then windowHeight = 200 end enterGame:setHeight(windowHeight) end function EnterGame.setServerInfo(message) local label = enterGame:getChildById('serverInfoLabel') label:setText(message) end function EnterGame.disableMotd() motdEnabled = false motdButton:hide() end
  4. [OTClient] Health Player Info OTPokemon Eae galerinha do xtibia, hoje venho trazer mais uma contribuição para a comunidade, um módulo indêntico ao do OtPokemon. Mesmo que seja simples a instalação, tem sempre aquele que não sabe onde deve colocar o módulo, peço então que tenha paciência quanto a esse simples tutorial, aos demais aqueles que já sabem, peço que ao menos leia a Observações do módulo. 1º Faça o download do módulo. 2º Extraia o módulo para a pasta do seu otClient em /modules ficando assim: Feito o passo 1 e 2 creio que já estará funcionando, isto se você fez tudo certinho. •Observações do módulo• Demonstrativo do módulo no jogo.
  5. Eai pessoal, beleza? Trago pra vcs um mod para otclient... Um simples botão que aparece no topo do client, clique e aparecerá uma lista de opções, cada uma com a função de executar uma talkaction [Tudo configurado por você] Vamos lá, para instalar é simples 1. Baixe o arquivo; 2. Extraia para a pasta de seu client; 3. Edite oque quiser; Bom, segue onde editar No arquivo mods/mod_topbutton/mod_topbutton.lua local config = { id = 'modTopButton', --Não pode conter espaços name = 'Top Button', --Nome que aparecerá quando passar o mouse por cima do botão img = 'button', --ícone do botão [no caso, pega a imagem button.png localizada na pasta do mod] options = { --opções que aparecem ao clicar no botão --[texto] = comando, ['Opcao 1'] = '!comando 1', ['Opcao 2'] = '!comando 2', } } Um exemplo de uso é o Checkpoint System v1.1 DOWNLOAD SCAN
  6. Eai galera, blz? Bom, vim trazer pra vcs a versão 1.0 do mod de pokedex que eu desenvolvi mês passado visando aprendizado no mundo de OTC, com o objetivo também de mostrar que o otclient é flexível suficiente para se fazer muitas coisas sem a necessidade das sources nem do servidor e nem do client... Para aqueles que não conhecem, vejam o Show Off desse trabalho. Atualizações: 1. Adicionado um pack com 276 imagens de pokemons (16,1MB); 2. Pokemons shiny tem a exibição da imagem de pokemons normais (para alterar, basta remover a linha 75 do arquivo game_pokedex.lua, na pasta modules/game_pokedex de seu client); 3. Pokedex fecha ao se deslogar do char com ela aberta [créditos a @@Soulviling pela ideia]; Bom, sem mais delongas; Instalação fácil: Passo 1. Faça o download do arquivo RAR (download no final do tópico); Passo 2. Copie a pasta modules pro seu client; Passo 3. "Deseja substituir?" [X]Sim [ ]Não Passo 4. Só vai até o passo 3; Bom, segue uma imagem ATUALIZADA Download e Scan
  7. Boa Noite Galera Blz? - Eu andei pesquisando sobre otclient na net e procurei uma novidade em outro forum que é um OTCLIENT para (ANDROID) !, Ele funciona 100% para celular agora nao sei se funciona para Tablet e etc... - Eu nao sei se voces ja sabem dessa Novidade! - Intao Galera e mesma coisa que o Proprio OTCLIENT que nos usamos se voce esta em duvida veja esse video: - Como Podem ver Realmente funciona no celular , eu nao tenhu um celular bom da ate vergonha de falar mais eu uso galaxy pokety , voltando ao assunto ja imaginou em criar um client exclusivo para seu Servidor ? ai vem as Perguntas , Sera que da pra criar Client de Derivados tambem? Nao Sei , mais vamos descobrir! - Eu testei em um servidor e realmente funcionou , eu ultilizei um programa para simular o android no meu pc chamado (BLUESTACKS) so que nao adianto mt pq eu nao tenhu placa de video e meu pc ta um lixo, intao vamo algumas imagens de eu entrando em um servidor ! obs: o Client que baixei ja foi compilado por um usuario de outro Forum , o client é 10.95: - A Imagem e so para ter uma noçao de como é intao eu estou compartilhando essa Novidade para nos mesmos começar a fazer client para Celular , eu sei que tem varios programadores bons e quem mexa com otclient e tals! - Source OTCLIENT PARA (ANDROID): https://github.com/edubart/otclient/tree/mobile_port - (TUTORIAL) Como Compilar um OTCLIENT Para ANDROID: https://github.com/edubart/otclient/wiki/Compiling-for-Android - (OTCLIENT QUE EU TESTEI NAS IMAGENS ACIMA) DOWNLOAD OTCLIENT 10.95.APK: https://mega.nz/#!sBtXFIQL!KqnAX7rFFcUBYDIRls6zJqZXZmymzOznn-4f-ZKDui4 - Galera se essa informação ja nao é NOVIDADE me avisem que eu altero no topico la , pois faz tempo que nao mexo com otservers! - Se estiver no Local Errado , Peço que movam para o Local Correto , OBG!
  8. Olá jovens, não sei se já existe algum tutorial sobre o assunto aqui no Ékz, mas hoje resolvi fazer esse pequeno tutorial no qual estarei ensinado como remover aquele pequeno quadradinho que costuma ficar no canto inferior direito do OT Client, segue abaixo uma imagem mostrando de qual quadradinho estou falando. Para remover é até que uma coisa que considerei simples depois que descobri, sem mais enrolação vamos começar o tutorial. Vá na pasta do seu OT Client, em seguida vá em modules>client_background, e abra o background.lua e remova as seguintes linhas clientVersionLabel = background:getChildById('clientVersionLabel') clientVersionLabel:setText(g_app.getName() .. ' ' .. g_app.getVersion() .. '\n' .. 'Rev ' .. g_app.getBuildRevision() .. ' ('.. g_app.getBuildCommit() .. ')\n' .. 'Built on ' .. g_app.getBuildDate()) if not g_game.isOnline() then addEvent(function() g_effects.fadeIn(clientVersionLabel, 1500) end) end Antes Depois Espero ter ajudado Abraços. OBS: Se ajudei REP+
  9. Eu que fiz pra um amigo, créditos são meus Não fiz modificações na source, se quiserem pode pegar src e vc14 do edubart no github Download: https://www.dropbox.com/s/hxlekf4c5pmkvpo/OTC TIBIA STYLE.rar?dl=0 Scan: https://www.virustotal.com/gui/file/213f863233fe4f9443a5682f33037d6bfd685e454e0ba9855899224017d81c55/detection Tamanho: 6MB Como usar: 1. TrocarIP: modules/client_entergame/entergame.lua Alterar: EnterGame.setUniqueServer('127.0.0.1', 7171, 772, 270, 210) 127.0.0.1 = IP do SV, 772 = Versão do Client 2. Adicionar sua SPR e DAT Coloque em data/things/versão 3. Alterar Links dos botões na tela inicial client_background/background.lua 4. Alterar funções dos botões do cliente: game_inventory/inventory.lua
  10. Link da imagem em melhor qualidade: https://i.imgur.com/gLm23Bo.png PokeVerse vem com a proposta de não ser só mais um servidor que nasce e morre na mesma semana, estamos dedicados a torna-lo um dos maiores servidores, e para isso precisamos da ajuda de vocês, estamos trabalhando para fazer uma ClosedBeta ainda nesse mes, com previa de lançamento em Abril, nos acompanhe pelo: Facebook, iremos disponibilizar informações e atualizações por lá Facebook: https://www.facebook.com/PokeVerseOnline
  11. Trainer Card Fala galera do Xtibia, vim trazer mais uma contribuição para a comunidade, é um módulo para otclient básico porém legal. Como funciona? O Trainer Card vai mostrar digamos algumas informações do seu personagem, você pode adicionar mais informações a esse card, vai da criatividade de cada um deixar bem funcional. Script do servidor:Crique um arquivo na pasta do seu servidor em data/creaturescript/ e coloque o nome de trainercard.lua Coloque a seguinte tag no arquivo do creaturescripts.xml: <event type="extendedopcode" name="TrainerCard" event="script" value="trainercard.lua"/> Registre o evento no arquivo onLogin.lua onde se encontra na mesma pasta: registerCreatureEvent(cid, "TrainerCard") Módulo otClient: Coloque o módulo na pasta do seu otClient em modules/ Para abrir o módulo pressione a tecla Ctrl+Shift+Q Imagem do módulo: A base que foi utilizada do servidor foi a DarkXPoke. O meu módulo tem mais informações do que o da imagem, porém eu dei uma mexida, o módulo que o Gengo me passou do Trainer Card que eu utilizo está em um nivel totalmente diferente do apresentado nesse tutorial, eu só modifiquei para compartilhar com a galera. Espero que tenham gostado e faça um bom proveito do módulo, use sua criatividade para fazer de um belo sistema funcional. Créditos:
  12. Não sei por que mas no meu client a funçao de usar um item da Hotkey no pokemon não pega..... Se eu colocar pra usar a potion no poke automaticamente ele abre o MultUse e eu tenho que clikar no poke para usar a pot, não está usando automaticamente mesmo com a função ativa Alguém pode me ajudar a resolver Obrigado desde já hotkeys_manager.lua
  13. Boa noite, rapaziada. Alguém saberia resolver esse problema que aparece no terminal do meu otclient? /game_topslot/topslot.lua:79 attempt to index a nill value in function game_topslot/topslot.lua:52 game_topslot.rar Esse erro ocorre quando tento dar Dex em algum pokemon... A vara de pesca funciona normalmente
  14. sirvitor4

    OldClient

    Alguém sabe resolver esse erro? WARNING: message in channel id 10 which is unknown, this is a server bug, relogin if you want to see messages in this channel WARNING: message in channel id 12 which is unknown, this is a server bug, relogin if you want to see messages in this channel WARNING: message in channel id 10 which is unknown, this is a server bug, relogin if you want to see messages in this channel WARNING: message in channel id 10 which is unknown, this is a server bug, relogin if you want to see messages in this channel WARNING: message in channel id 10 which is unknown, this is a server bug, relogin if you want to see messages in this channel console.lua --> Desculpa o post, Resolvi trocando por esse script https://github.com/edubart/otclient/blob/master/modules/game_console/console.lua espero que ajude + gnt
  15. Por favor, qual arquivo e qual linha é necessário editar para que eu possa alterar a posição inicial do console/chat no meu cliente? atualmente ele abre num position desagradável. Dou Rep+
  16. Alguém me ajuda, eu tava tentando estender a tela do cliente faz tempo já né, e me falaram que era em protocolgame.cpp e map.h eu segui um tutorial aqui do fórum umas 50x em sources diferentes kkkk mas não funciona essa poha kk e agora peguei um executável de um cliente extendido já eu só preciso extender a tela na source sabe e eu não consigo de jeito nem um então por favor, seja uma alma caridosa e me ajude kkkkkk pelo amor de cristo eu uso tfs 0.3.6, tenho um projeto de poketibia base lenda pra sourcer do server ficar compatível com a do cliente o map.h precisa estar com esta configuração static const int32_t maxViewportX = 15;//11; //min value: maxClientViewportX + 1 static const int32_t maxViewportY = 15;//11; //min value: maxClientViewportY + 1 static const int32_t maxClientViewportX = 14;//8; static const int32_t maxClientViewportY = 8;//6; fora isso pode fazer oq vcs quiserrem kkkkkk eu peguei a source desse post aqui ó https://www.xtibia.com/forum/topic/248662-pokézr-base-otpokemoncom-2018-serversourcesitenewold-clientlaucher-servidor-completo/ se alguém puder me ajudar pelo cristo pra quem não entendeu eu quero fazer isso aqui ó https://tibiaking.com/forums/topic/95399-aumentando-tela-de-visão-otcliente-em-rev3884-860-04/ em tfs 0.3.6 com aquilo ali no map.h
  17. Boa tarde galera, eu mostrei no meu showoff a tela do meu cliente, que pretendo liberar para a galera, porem, recebi mensagens de como fazer aquilo, e como eu vou postar o cliente com o module, resolvi fazer esse tutorial e liberar o module.. Esse module é para mudar a Game Window, para que não conhece, veja um print: Então, vou liberar o entergame já feito, e também vou ensinar como modificar. *Download no fim do topico*, vamos ao tutorial: Tenha em mente a imagem, e então, veja o tamanho dela, feito isso, va no entergame.lua e procure a linha que seta o IP do seu servidor, va está assim: EnterGame.setUniqueServer("127.0.0.1", 7877, 854, 361, 356) Vou explicar a linha toda para que entendam: 127.0.0.1 = IP do server 7877 = port do servidor, no meu caso ta 7877, porque é a porta Linnux. 854 = Versão do cliente/servidor. 361 = Tamanho da game window 356 = largura da game window em outras palavras, 361 e 356 é onde vamos modificar.. Você pega as dimensões da imagem, e coloca no lugar dos mesmos(361 e 356).. Feito isso, salve o entergame.lua e feche. Agora vamos editar a OTUI.. Abra o Entergame.otui e na primeira linha temos isso: EnterGameWindow < MainWindow !text: tr('Enter Game') size: 236 274 Bom, vamos modificar.. Retire essa linha: !text: tr('Enter Game') Nessa função modifique esse tamanho "236 274" para as dimensões da imagem *no caso seria (361 e 356): Antes: size: 236 274 Agora: size: 361 356 Adicione isto em baixo dessa função acima: image-source: enter.png *enter.png é a imagem que estamos usando para colocar no game window, a mesma que a gente pegou as dimensões e modificamos no entergame.lua*, *ela tem que está dentro da pasta onde se localiza o entergame.lua*. pronto, seu cliente já vai ler sua nova window com imagem. *Terá que mudar os lugares de onde coloca senha e conta* É bem simples, basta ir na OTUI e mudar os margin-top* DOWNLOAD ENTERGAME COM NOVA WINDOW: Download OBS: Deixei uns 3 Entergame dentro, se vocês quiserem usar como base, não me importo.. POR FAVOR, NÃO POSTE ESSE TUTORIAL EM OUTRO FÓRUM SEM OS DEVIDOS CRÉDITOS. FUNCIONA EM QUALQUER VERSÃO DO OTCLIENT. OBS: se vocês não souberem editar o entergame, irá bugar. É melhor baixar o que estou disponizilizando, e então mudar somente as dimensões..
  18. Essa modificação permite que ao passar o mouse sobre um item, apareça uma descrição do item. Não tem como causar lag no servidor nem no cliente, pois carrega as informações dentro do arquivo na TAG itemsList Vai em otclient/modules/game_interface/widgets e abra o arquivo uiitem.lua Procure por function UIItem:onHoverChange(hovered) UIWidget.onHoverChange(self, hovered) Salte uma linha e coloque o código abaixo
  19. Ola prezados, estou com um projeto de otserver old school 7.4, estou usando um old cliente 7.72 porem não estamos satisfeitos com ele, gostaria de um novo cliente proprio pro meu projeto, estou disposto a pagar pelo serviço, interessados favor entrar em contato, segue a lista do que preciso. -Cliente começar com o MAPA FULL aberto. -Cliente obter a opção de caminhar pelas teclas WASD. -Cliente com ABA LATERAL EXTRA, muito limitado para abrir bps, battle, vip,etc. -Opção de sumir players do battle e npcs para facilitar na hora de hunt. -Colocar opção para o player ver seu FPS/PING. -Desenvolver sistema de CAST no cliente. -Colocar o acess acc do cliente direto pro site oficial do ot. -Adicionar o sistema de addons e outfits 8.6 ao cliente.
  20. Olá, comecei meus estudos em Otclient, porem tenho muitas duvidas!. Oque ser isso? variaveis? porque todas nil? @onLoad: init() ? @onUnload: terminate() ? Variaveis com local sem o nil? oque isso muda? porque g_game? g_game.IsOnine ? isso é uma função do otclient? como posso tirar essa função da sourcer? Como se inicia um modulo? com local Nome ou Local Nome = nil? ou só a variavel = nil? todas ela tem que tem function init()? function onGameConnectionError(message, code) ? de onde saiu onGameConnection? sourcer? function CharacterList.terminate() ? if charactersWindow then -- se for charactersWindow entao characterList = nil -- lista de char = nil? charactersWindow:destroy() -- :destroy a lista de char ok! charactersWindow = nil -- nil novamente? end function CharacterList.doLogin() ? de onde tira isso? das funçoes da sourcer?
  21. Boa noite, ainda estou aprendendo a trabalhar com o OTC e gostaria de saber como fazer um certo UIWidget ser visível apenas quando o player entrar no jogo através do .otui. A principio queria fazer algo como: @onGameStart: self:setVisible(true) Fiz um teste com onClick e o widget some ao colocar setVisible(false), porém não sei qual função usar no lugar de onClick para que isso aconteça ao entrar no jogo (onGameStart não funcionou). Como posso fazer isso através do .otui? Ou teria que fazer por lua mesmo?
  22. Bom, vou mostrar a vocês como editar o andar diagonal no otclient da maneira que vocês preferirem... Atualmente, creio que quando você anda diagonalmente, tem um delay até que você possa andar novamente. Vou ensinar tirar esse delay, e deixar a velocidade ao gosto de vocês. Em creature.cpp do server, procure pela linha: if(std::abs(newPos.x - oldPos.x) >= 1 && std::abs(newPos.y - oldPos.y) >= 1) lastStepCost = 3; Esse lastStepCost será a velocidade que o player terá ao andar diagonalmente, em relação a velocidade de quando ele anda em uma direção reta, por exemplo, um player que demora 1 segundo para andar 1 sqm, demoraria 3 segundos para andar diagonalmente. Edite esse valor ao seu gosto! Em creature.cpp do client, procure as linhas que tem isso: getStepDuration(true) E deixe assim: getStepDuration() Agora procure por: float factor = 3; if(g_game.getClientVersion() <= 810) factor = 2; Apague essa parte Logo mais abaixo tem: if(!ignoreDiagonal && (m_lastStepDirection == Otc::NorthWest || m_lastStepDirection == Otc::NorthEast || m_lastStepDirection == Otc::SouthWest || m_lastStepDirection == Otc::SouthEast)) interval *= factor; Em factor, deixe o mesmo valor que você deixou em lastStepCost no servidor. Agora em localplayer.cpp no client, novamente procure por: getStepDuration(true) E troque por: getStepDuration() Pronto, seu personagem andará diagonalmente mais suave, e com a velocidade que você escolheu.
  23. Xtibianoo01

    ERRO OT CLIENT

    COMO MUDA O NOME DO OTCLIENT DA BARRA. JÁ FIZ OS TUTORIAL TUDINHO E DA SEMPRE ESSE ERRO ! +REP
  24. alguém sabe como faz para aparecer a outfit aqui , to usando tibia clássico , não pokemon ! da uma luz ae ! +rep
  25. The Forgotten Tibia Server The Forgotten Tibia Server é um emulador de server MMORPG grátis de código aberto escrito em C++. É uma ramificação do projeto The Forgotten Server 1.3. Para se conectar ao server você precisará do The Forgotten Tibia Client (um cliente customizado feito do OTClient por mim - vc_redist.x86.exe é necessário) que você pode baixar no final dessa página. Traduzirei o resto da página em breve. What makes it different from The Forgotten Server 1.3? (you can see the diff analysis here) There are no vocations: Everyone starts as a normal human being with some points to be distributed among the skills. There is no skill training: It uses a system to advance skills by distributing points. All clubs, swords and axes damage are based on strenght. Distance weapons damage are based on strenght and/or dexterity. Two-handed melee weapons gives critical hit chance and critical hit damage. The more levels you get, less points you receive. Skills (some stats may be working a little different, check images) Magic (+ spell power, + rune power, + mana) Vitality (+ health) Strenght (+ physical damage) Dexterity (+ distance damage, + walk speed, + attack speed) Faith (+ support spells, + rod max damage, + mana) Intelligence (+ attack spells, + wand max damage, + mana) Defence (+ physical defence) Endurance (+ capacity, + health) Custom Systems (values may be different) Dual Wield: The player can use 2 weapons (for example: club and sword, axe and spear, sword and throwing knife). The attack speed will be fixed in 200% but the damage will drop to 75%. Each combat turn the player will use one hand to defend and the other to attack. Two Handed Melee Weapons: All two-handed melee weapons give +25% of critical hit chance and +100% of critical hit amount. Also, they have a chance of giving a bleeding effect to the target. Auto Loot Gold: The money dropped from monsters goes directly to the player. Quiver: Distance weapons are loading ammo from container item in the arrow slot and there is a new container item called "quiver". Wands and Rods varying with skills: Intelligence and faith raises the wands/rods maximum damage. Spells based on Faith and Intelligence: There is no level and vocation requirement for spells. The more you raise faith and intelligence, more spells you get. Screen with one more tile: It was added one more square meter to the screen. Title: After you reach a certain minimum value of magic, strenght or dexterity, you can choose a title to display when people look at your character. Spacebar Attack: When you use that feature from the client with autoloot gold and addons you can almost hunt without your mouse. Things You Need To Know I stopped working on this server suddenly, 4 months ago, to focus on my graduation and study other things like making games on Unity or penetration tests with Linux, also because I think you need a lot of passion and money to spend on publicity to make players enter and stay. The last thing I remember I was developing was a War System that should work integrated with the normal server, so people would play a for-fun server or a serious-rpg-server. You may want to disable the system in data files. I don't remember which files are used for this. I've made a correction recommended by Mark Saman on monster's AI system (this solves the laggy movement from fast monsters), but that change can make the server lag if there is too much players online interacting with monsters). Same as Capture The Flag system, I don't know if it's working perfectly. You may want to disable it in data files and I don't remember which files are used. I don't know if the schema.sql file available in my repository works for this server. I still have to remove passwords and accounts from the one I was using to make it available for public. The map is a mix of Svargrond, Yalahar, YurOTS, The Forgotten Server's official map and many hunting places and quests from global map. There are NPCs for tasks, blessings, bank and mount systems. The OTClient version used for this project is much more outdated then the The Forgotten Server version, one of the known bugs is the non-smoothly-walk-system. I disabled many features from OTClient's interface. Client and server compiled with Microsoft Visual Studio, I don't remember which version but I think client was with 2013 and server with 2015. There is a project folder to open the projects on Microsoft Visual Studio. You will have a lot of work to do if you want to change the spells values, in the client you need to change in 2 files and in the server you need to change in 1 I think. In some places its written "resistance" but in the clients interface its "defence". They are the same thing. Useful Links GitHub Official Repository (with data folder and schema): GustavoContreiras/TheForgottenTibiaServer (https://github.com/GustavoContreiras/TheForgottenTibiaServer) DLLs, .exe, sources: GustavoContreiras/TheForgottenTibiaServer (https://github.com/GustavoContreiras/TheForgottenTibiaServer/releases) Differences TFS 1.3 / TFTS 0.8: The Forgotten Tibia Server. · GustavoContreiras/[email protected] (https://github.com/GustavoContreiras/TheForgottenTibiaServer/commit/ce89322c08799231f9704e65572a2ffa11fc4d2f) GitHub Official Repository of the client: GustavoContreiras/TheForgottenTibiaClient (https://github.com/GustavoContreiras/TheForgottenTibiaClient) Images Interesting Things data/actions/scripts/other/ctf.lua (when click on the flag of capture the flag arena) data/actions/scripts/other/yurez_ship.lua (when click on the wheel of the ship teleports) data/actions/scripts/other/send_cancel.lua (when click, send cancel message) data/actions/scripts/other/fulloutfits.lua (when click, give full outfits) data/creaturescripts/scripts/arena.lua data/creaturescripts/scripts/skillpoints.lua data/creaturescripts/scripts/killtasks.lua data/creaturescripts/scripts/ctf.lua data/globalevents/scripts/ctf.lua data/globalevents/scripts/dailyserversave.lua data/globalevents/scripts/raids.lua data/lib/core/ctf.lua (many lua functions used by ctf system) data/lib/core/skillpoints.lua (many lua functions used by skillpoints systems) data/lib/core/player.lua (many new lua functions) data/movements/scripts/dual_wield.lua (changes players stats when move second weapon to hand) data/movements/scripts/arena.lua (configure enter and exit teleports and set storage for arena) data/spells/spells.xml (intelligence and faith values - changes must be applied on otclient files too) data/talkactions/scripts/skillpoints.lua data/talkactions/scripts/title.lua data/weapons/scripts/bleeding_effect.lua.lua data/npc/scripts/guide.lua data/npc/scripts/bless.lua data/npc/scripts/bank.lua data/npc/scripts/tasks.lua data/npc/scripts/The Oracle.lua Fibula(client+minimap)260918.zip TheForgottenTibiaServer-0.8.zip TheForgottenTibiaServer-x64.exe DLLs.zip DLLs.zip Fibula(client+minimap)260918.zip TheForgottenTibiaServer-0.8.zip TheForgottenTibiaServer-x64.zip
×
×
  • Create New...