Ir para conteúdo
  • Cadastre-se

7.x GLOBAL 100% 7.40 Cliente Proprio, Port Hope 7.4, POI, Demon OaK, War System, Shared Exp, Cast System, Anti Clone, Task System.


Posts Recomendados

Poderia fazer um tutorial de como compila para Windows? só acho tutorial de como compila serv 8.6 com umas extensões .dev q nao existem nesse 7.4..  também não sei quais programas usar

Link para o post
Compartilhar em outros sites
  • 2 weeks later...
  • Respostas 191
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

GLOBAL 100% 7.40 >> Information: -7.4 Features: No Protection zone nos barcos e  tapetes. - Spells, vocations e spells formuled baseada em Tibia 7.4. nao tem Hotkleys! -War System.

Download Scan    

desculpe mano eu uso linux nao tem exe e DLL tera que compilar as sources.

Posted Images

Em 04/05/2017 ás 22:50, Qwizer disse:

so uso linux,

 

Linux:

Same as every other OTX:

Libs:

apt-get install subversion autoconf build-essential pkg-config libboost-dev libgmp3-dev libxml2-dev liblua5.1-0-dev libmysqlclient-dev ccache libboost-filesystem-dev libboost-regex-dev libboost-system-dev libboost-thread-dev screen libssl-dev

Compile:

sh ./autogen.sh && ./configure --enable-server-diag --enable-mysql --enable-groundcache --enable-root-permission && make -j 2

Protocol version can be changed in the Makefile.am - $(OPTIONAL_FLAGS), just add -D_MULTIPLATFORM7X where X is 6 or 7.

-D_MULTIPLATFORM77

-D_MULTIPLATFORM76

@Qwizer

./boost/atomic/detail/bitwise_cast.hpp: In instantiation of ‘To boost::atomics::detail::bitwise_cast(const From&) [with To = void*; From = unsigned int]’:
./boost/atomic/detail/atomic_template.hpp:574:100:   required from here
./boost/atomic/detail/bitwise_cast.hpp:39:14: warning: missing initializer for member ‘boost::atomics::detail::bitwise_cast(const From&) [with To = void*; From = unsigned int]::<anonymous struct>::to’ [-Wmissing-field-initializers]

 

Na hora de compilar aparece os seguintes erros, estou fazendo algo de errado?

Se não pedir muito poderia postar a Distro Compilada para x64 ou Ubuntu 14.02.

Editado por denisgusto (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
Em 2017-5-23 ás 18:17, denisgusto disse:

@Qwizer

./boost/atomic/detail/bitwise_cast.hpp: In instantiation of ‘To boost::atomics::detail::bitwise_cast(const From&) [with To = void*; From = unsigned int]’:
./boost/atomic/detail/atomic_template.hpp:574:100:   required from here
./boost/atomic/detail/bitwise_cast.hpp:39:14: warning: missing initializer for member ‘boost::atomics::detail::bitwise_cast(const From&) [with To = void*; From = unsigned int]::<anonymous struct>::to’ [-Wmissing-field-initializers]

 

Na hora de compilar aparece os seguintes erros, estou fazendo algo de errado?

Se não pedir muito poderia postar a Distro Compilada para x64 ou Ubuntu 14.02.

essa versao do ubuntu foi descontinuada e nao tem mais repositorio use versao 14.04 pra cima ou debian 7

Link para o post
Compartilhar em outros sites
Citar

Consegui ligar o server... mudei o ip do client pra 127.0.0.1 e coloquei NULL nos caracteres restantes que tinha no client, vi um tutorial disso no otland e funciona, mas é o seguinte..

 

Criei a conta normal, mas quando eu vou criar um character da erro/warning falando que preciso arrumar no config.php as possíveis vocations de newchar, chequei la e está "Rook Sample", normal la. Chequei a database, o rook sample ta criado normal la, n faço ideia pq n consigo criar.

 

@Sekk Você conseguiu corrigir este problema? Estou na mesma.

No signature.

 

 

 

Link para o post
Compartilhar em outros sites

@Qwizer

 

Você consegue me explicar o seguinte:

 

Quanto utilizo o Client que você disponibilizou neste download, não consigo adicionar novas sprites, pois ao invoca-las in-game, o client crasha.

Resolvi usar um otclient, peguei o .dat e .spr utilizados no cliente fornecido por você, ai o client não crasha ao invocar as novas sprites que inplantei, porém... varias bordas resolvem desaparecer do map... isso faz algum sentido? é o mesmo dat e spr...

 

Spoiler

001.thumb.jpg.4405db858aa6ccb331b1d9155303103e.jpg

 

No signature.

 

 

 

Link para o post
Compartilhar em outros sites
@Qwizer Não é possível utilizar algum client da cip? posso alterar a versão do protocolo?

Você compilou errado, veja o que eu disse ou veja o Github do desenvolvedor.

Captura de tela de 2016-09-04 18:53:17.png

Em Desenvolvimento 

 

Tutoriais:

[PagSeguro] Novo Método de Retorno Automático

Link para o post
Compartilhar em outros sites
29 minutos atrás, Ivens Pontes disse:


Você compilou errado, veja o que eu disse ou veja o Github do desenvolvedor.

n entendi uahsusahs eu compilei e funcionou, quero saber se tem como eu usar o client da cip oficial 7.72 e se pode alterar o protocolo do server pra tipo, 7.7, 7.8 sla

Link para o post
Compartilhar em outros sites
Em 2017-6-3 ás 17:07, Sekk disse:

n entendi uahsusahs eu compilei e funcionou, quero saber se tem como eu usar o client da cip oficial 7.72 e se pode alterar o protocolo do server pra tipo, 7.7, 7.8 sla

tem nao, o dat e spr e custom, se usar oficial vai dar bugs

Link para o post
Compartilhar em outros sites
  • 2 weeks later...
Em 05/06/2017 ás 14:27, Qwizer disse:

tem nao, o dat e spr e custom, se usar oficial vai dar bugs

Tem não o item editor? Você fala que vai postar e nunca posta :(

Link para o post
Compartilhar em outros sites
33 minutos atrás, GHZ disse:

Tem não o item editor? Você fala que vai postar e nunca posta :(

teste ate achar um que funcione.

Link para o post
Compartilhar em outros sites
  • 3 weeks later...

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.


  • Conteúdo Similar

    • Por Pifafa
      Tibinha - YurOts
      Olá hoje trago a vocês meu projeto, tenho como objetivo atingir 50 jogadores (um sonho talvez que quase já se realizou) 
      www.tibinha.online



      Obrigado por ver meu projeto, caso tenha interesse entre nele e converse comigo, estou disponível para tira duvidas e ajudar a todos aqui!
       
    • Por Fearlet
      Tibia Infinity
       
      Olá Tibianos, é com grande satisfação e orgulho que apresento a vocês meu novo projeto consistente em diversas ideias para vários temas de servidores alternativos, com o propósito de ser a primeira equipe a desenvolver servidores, onde o servidor e o player tenham rendas num ciclo econômico a ideia principal é um servidor usando no momento apenas nosso dinheiro real BRL, porém futuramente com o capital em mãos criar nosso token TINF.
       
      No momento estamos a procura de colaboradores, desenvolvedores e patrocinadores corajosos afim de enfrentar aventuras e desafios em nossa equipe, procuramos pessoas que tenham disponibilidade de horário, disponibilidade de contato, prontos para trabalharem dedicadamente aos servidores, pessoas com facilidade de trabalho em equipe, trabalho com metas a serem cumpridas e entregues.
       
       
      Quais projetos iniciados está a caminho ?
      Temos três servidores, em desenvolvimento.

       
      TibiaLands – Este servidor é baseado na fazenda feliz para quem já jogou, ou para quem está no mundos dos NFTs uma das formas de farm é igual ao PVU (Plant vs Undead) que consiste também na plantação, mineração, gastronomia e agropecuária e até a caça de presas.
      Tibia Infinity - Servidor de Tibia alternativo baseado no Tibia 7.4. O jogo tem um verdadeiro mapa global 7.4, com todas as missões daquela época e muito mais. O RPG de Tibia Infity vai além. Na época em que Tibia 7.4 (2005) foi jogado, havia uma magia em torno de itens extremamente raros. Pessoas se reúnem ao redor do mapa tentando resolver mistérios que até hoje não foram resolvidos a nostalgia e o tempo gastos valerão a pena. Não há nenhum item intocável. Mas não será fácil, servidor está sendo 24hrs sendo pensado em como será a economia do jogo, pois sabemos que é dificil, dentro de impostos e má intenções de pessoas que existem hoje em dia.
      PokeInfinity – Servidor alternativo de pokémon onde os players entram para duelarem, com torneios diários, recompensas, tokens, porém com a principal ideia do player pagar para adquirir seu time principal e participar de torneios rankeados, para quem já jogo o torneio global (TG) da pokexgames, será basicamente aqui porém o player irá ter uma renda extra caso ele resolva investir em seu time e pense estrategicamente.

       

       
      Quer saber mais do projeto? entre no nosso Discord.
      Quer ser parte da equipe? Entre no nosso discord e chamem o ADM no pv.
      Lippe#7652
       
      https://discord.gg/53KWSBgYUc

      Alguns spoiler de uns dos projetos
       
       

      OBRIGADO A TODOS PELA ATENÇÃO !!!

       

       
    • Por bkhere
      Atualizações sobre , encontrei um grande amigo aqui no forum , então vamos fechar junto com o novo projeto 
      Atulizado dia 10/09/2021
       
      www.real-age.online
       
       
       
       
       
       
      OLD POST
      salve meus queridos tibiakinganus
      venho apresentar meu projeto vou , dar continuidade num projeto de 8 anos trabalhados e 12 anos retocando , isso mesmo 12 anos , retocando o projeto 
       
      estou precisando de membros na equipe , quem estiver interessado , a base do servidor é 8.60 - porém ele é 95% antibot , e o não tem HOTKEYS usando a base do 7.4 
      Rookgaard full graficos 7.4 + customs 
       
      emfim projeto é top , quem estiver interessado me CHAMA ! estarei postando em breve fotos 
       
      ROOKGAARD BEFORE EDITS

       
      Bridge

       
      Open 

       
      Doublet BEFORE EDIT 

       
      ----
      Segunda EDIÇÃO DOUBLET

       
      Quest

       
       You see a enchanted doublet (Arm:3).
      It weighs 24.00 oz.

       
       
       
       
       
      SEGUNDA EDIÇÃO DO TEMPLO DE ROOK 

      TEST LEVEL 130 - ML 35 
      SD COMUN "ADORI GRAN MORT" pensando ainda se venderemos ela no npc 

       
       
      TEST LEVEL 130 - ML 35 - COM ML MAIOR DANO MAIOR, PORÉM TAMBÉM CONTA LVL
      SD ANTIGA DANO 7.4 "ADORI VITA VIS" NÃO VAI VENDER NO NPC SÓMENTE PLAYERS

       
       
    • Por Akun
      Oiiii Boa Noite !!! , Gostaria de pedir a ajuda de vocês em um poblemas que eu estou tendo,
       
      Adicionei recentemente esse Script Abaixo e consegui instalar tudo direitinho, ta rodando liso.. Mas Gostaria de implementar bonus nesse script
      Exemplo:
      Player Vip: 20% a + de XP
      Player Vip: 1%   a + de ATK SPEED
       
      abaixo todo o Script
       
      [Fonte]
       
      Sistema Vip
       
      1° execute dentro da sua db
      ALTER TABLE `accounts` ADD COLUMN `viplastday` int(10) NOT NULL DEFAULT 0 AFTER `lastday`, ADD COLUMN `vipdays` int(11) NOT NULL DEFAULT 0 AFTER `lastday`;  
       
       
      2º na pasta data/creaturescripts/scripts procure pelo arquivo login.lua e adicione na segunda linha, logo após o function onLogin(player) isso
      player:loadVipData() player:updateVipTime() 3° na pasta data\ crie um arquivo chamado vipsystem.lua e adicione o seguinte
      local config = { -- true = player will be teleported to this position if Vip runs out -- false = player will not be teleported useTeleport = true, expirationPosition = Position(95, 114, 7), -- true = player will received the message you set -- false = player will not receive a message useMessage = true, expirationMessage = 'Your vip days ran out.', expirationMessageType = MESSAGE_STATUS_WARNING } if not VipData then VipData = { } end function Player.onRemoveVip(self) if config.useTeleport then self:teleportTo(config.expirationPosition) config.expirationPosition:sendMagicEffect(CONST_ME_TELEPORT) end if config.useMessage then self:sendTextMessage(config.expirationMessageType, config.expirationMessage) end end function Player.getVipDays(self) return VipData[self:getId()].days end function Player.getLastVipDay(self) return VipData[self:getId()].lastDay end function Player.isVip(self) return self:getVipDays() > 0 end function Player.addInfiniteVip(self) local data = VipData[self:getId()] data.days = 0xFFFF data.lastDay = 0 db.query(string.format('UPDATE `accounts` SET `vipdays` = %i, `viplastday` = %i WHERE `id` = %i;', 0xFFFF, 0, self:getAccountId())) end function Player.addVipDays(self, amount) local data = VipData[self:getId()] local amount = math.min(0xFFFE - data.days, amount) if amount > 0 then if data.days == 0 then local time = os.time() db.query(string.format('UPDATE `accounts` SET `vipdays` = `vipdays` + %i, `viplastday` = %i WHERE `id` = %i;', amount, time, self:getAccountId())) data.lastDay = time else db.query(string.format('UPDATE `accounts` SET `vipdays` = `vipdays` + %i WHERE `id` = %i;', amount, self:getAccountId())) end data.days = data.days + amount end return true end function Player.removeVipDays(self, amount) local data = VipData[self:getId()] if data.days == 0xFFFF then return false end local amount = math.min(data.days, amount) if amount > 0 then db.query(string.format('UPDATE `accounts` SET `vipdays` = `vipdays` - %i WHERE `id` = %i;', amount, self:getAccountId())) data.days = data.days - amount if data.days == 0 then self:onRemoveVip() end end return true end function Player.removeVip(self) local data = VipData[self:getId()] if data.days == 0 then return end data.days = 0 data.lastDay = 0 self:onRemoveVip() db.query(string.format('UPDATE `accounts` SET `vipdays` = 0, `viplastday` = 0 WHERE `id` = %i;', self:getAccountId())) end function Player.loadVipData(self) local resultId = db.storeQuery(string.format('SELECT `vipdays`, `viplastday` FROM `accounts` WHERE `id` = %i;', self:getAccountId())) if resultId then VipData[self:getId()] = { days = result.getDataInt(resultId, 'vipdays'), lastDay = result.getDataInt(resultId, 'viplastday') } result.free(resultId) return true end VipData[self:getId()] = { days = 0, lastDay = 0 } return false end function Player.updateVipTime(self) local save = false local data = VipData[self:getId()] local days, lastDay = data.days, data.lastDay local daysBefore = days if days == 0 or days == 0xFFFF then if lastDay ~= 0 then lastDay = 0 save = true end elseif lastDay == 0 then lastDay = os.time() save = true else local time = os.time() local elapsedDays = math.floor((time - lastDay) / 86400) if elapsedDays > 0 then if elapsedDays >= days then days = 0 lastDay = 0 else days = days - elapsedDays lastDay = time - ((time - lastDay) % 86400) end save = true end end if save then if daysBefore > 0 and days == 0 then self:onRemoveVip() end db.query(string.format('UPDATE `accounts` SET `vipdays` = %i, `viplastday` = %i WHERE `id` = %i;', days, lastDay, self:getAccountId())) data.days = days data.lastDay = lastDay end end  
      4° no arquivo global.lua adicione a seguinte linha
      dofile('data/vipsystem.lua')  
      Talkaction !checkvip para todos os players
       
      1° vá na pasta data/talkactions/scripts e crie um arquivo chamando checkvip.lua e adicione o seguinte
      function onSay(cid, words, param) local player = Player(cid) local days = player:getVipDays() if days == 0 then player:sendCancelMessage('You do not have any vip days.') else player:sendCancelMessage(string.format('You have %s vip day%s left.', (days == 0xFFFF and 'infinite amount of' or days), (days == 1 and '' or 's'))) end return false end 2° e em data/talkactions/talkactions.xml adicione
       
      <talkaction words="!checkvip" script="checkvip.lua"/>  
      Talkaction /vip para membros da staff
      - /vip adddays, NomedoPlayer, 5 --> Adiciona 5 dias vip para o Player. - /vip removedays, NomedoPlayer, 5 --> Remove 5 dias vip do Player. - /vip remove, PlayerName --> Remove todos os dias vip do Player. - /vip check, NomedoPlayer --> Checa quantos dias vip o Player tem. - /vip addinfinite, NomedoPlayer --> Adiciona tempo vip infinito para o Player.  
      Tiles VIP
       
      1° em data/movements/movements.xml e adicione
      <movevent event="StepIn" actionid="1500" script="viptiles.lua"/> <movevent event="StepIn" actionid="1501" script="viptiles.lua"/> 2° em data/movements/script crie o arquivo viptiles.lua e adicione o seguinte
      local vipPosition = Position(101, 116, 7) function onStepIn(cid, item, position, fromPosition) local player = Player(cid) if not player then return true end if item.actionid == 1500 then if not player:isVip() then player:teleportTo(fromPosition) fromPosition:sendMagicEffect(CONST_ME_POFF) player:sendCancelMessage('You do not have any vip days.') end elseif item.actionid == 1501 then if player:isVip() then player:teleportTo(vipPosition) player:say('!* VIP *!', TALKTYPE_MONSTER_SAY) vipPosition:sendMagicEffect(CONST_ME_STUN) else player:teleportTo(fromPosition) player:sendCancelMessage('You do not have any vip days.') fromPosition:sendMagicEffect(CONST_ME_POFF) end end return true end Items que adicionam dias VIP
       
      ItemId 10135 adiciona 10 dias vip. ItemId 10134 adiciona 30 dias vip. ItemId 10133 adiciona 90 dias vip.  
       
      1° em data/actions/actions.xml adicione
      <action fromid="10133" toid="10135" script="vipitems.lua"/> 2° e em data/actions/scripts crie um arquivo chamado vipitems.lua e adicione o seguinte
      local vipItems = { -- [itemid] = amount of vip days [10135] = 10, [10134] = 30, [10133] = 90 } function onUse(cid, item, fromPosition, itemEx, toPosition, isHotkey) local player = Player(cid) local days = vipItems[item.itemid] player:addVipDays(days) player:say('!* YAY VIP! *!', TALKTYPE_MONSTER_SAY) player:getPosition():sendMagicEffect(CONST_ME_STUN) player:sendTextMessage(MESSAGE_INFO_DESCR, string.format('You received %s vip days.', days)) Item(item.uid):remove(1) return true end
    • Por renato95souza
      Olá amigos,
       
      Estive em busca de conseguir rodar um servidor do tibia 7.70 com os arquivos originais da CipSoft, mas olhando vários tutoriais na internet eu percebi que todos eles estão incompletos, mal explicados (até com erros de digitação em partes importantes) ou utilizam tecnologias muito antigas e de difícil utilização (exemplo CentOs 3.1), mas calma lá, não estou falando mal deles hein, rsrs. Só acho que vale a pena a criação de um tutorial totalmente revisado para garantir que tudo funcione como proposto.

      Após 2 semanas de estudos, análises e testes, consegui rodar o servidor no Ubuntu Server 16.04 com sucesso, então documentei todo este tutorial para evitar que o conhecimento venha a se perder. Somente para a criação deste tutorial eu levei 3 dias testando e retestando o passo a passo.

      Estou muito feliz de ter conseguido rodar o servidor, o que pode ser simples para alguns, mas me rendeu muitos dias de esforço. Li todas as páginas dos links que estão nos créditos no final deste tutorial e com as dicas de várias pessoas eu finalmente consegui rodar.
       
      Antes de iniciar o passo a passo, é necessário ter instalado no seu Windows os programas:
       
          MySQL Workbench ou Toad MySQL para gerenciamento do banco de dados que será criado no Ubuntu.     Putty - Para acessar remotamente o Ubuntu via SSH.     WinSCP - Para transferir arquivos facilmente entre o Windows e o Ubuntu.     
      Observação: Não ensinarei como utilizar os programas acima, para isto veja tutoriais no Google.
       
      Saliento que: estes procedimentos tem que serem executados no Ubuntu versão 16.04 para ter 100% de sucesso, é possível instalar em outras versões, mas há algumas etapas diferentes.
          
      1- Instale a distribuição Ubuntu Server 16.04 do zero, podendo ser em máquina física ou virtual (Vmware, VirtualBox etc), por motivos óbvios não ensinarei a instalar o Ubuntu, para isto procure tutoriais no Google.
       
      1.a- Durante a instalação do Ubuntu, há uma tela que permite selecionar a instalação do pacote ssh, faça a instalação deste pacote. Caso já tenha terminado a instalação do Ubuntu sem instalar o ssh, rode os seguintes comandos no terminal:
       
      sudo apt-get update sudo apt-get install openssh-server  
      2- Configure um IP estático na sua distribuição Ubuntu, link: https://www.fredericodecastro.com.br/configurando-ip-estatico-no-ubuntu-server-16-04/
       
      2.a- Reinicie o Ubuntu após configurar o IP com o comando:
       
      sudo shutdown -r now  
      3- Com o IP definido no passo 2, acesse o Ubuntu via SSH com o Putty no Windows
       
      3.a- Instale todos os pacotes que iremos precisar durante as configurações, para isso execute cada linha separadamente no terminal do ubuntu:
       
      sudo apt-get update sudo apt-get install cmake build-essential liblua5.2-dev libgmp3-dev libmysqlclient-dev libboost-system-dev libpugixml-dev sudo apt-get install g++ libmysqlclient-dev lib32z1 make mysql-server  
      3.b- Durante a instalação do mysql-server, será solicitado a criação de uma senha para o usuário root (tenham muita atenção nesta parte).
       

       
      4- Há 6 arquivos upados no mediafire para que vocês façam download (links no fim deste tópico), sendo eles:
         
      dennis-libraries.rar, game.rar, loginserver.rar, querymanager.rar, schema_data.rar e tibia-game.tarball.tar     
      4.a- No seu computador Windows em uma pasta da sua escolha, descompacte somente os arquivos dennis-libraries.rar, game.rar, loginserver.rar, querymanager.rar e schema_data.rar.
       
      4.b- Coloque também o arquivo tibia-game.tarball.tar na pasta do passo 4.a, mas não descompacte, ficando desta forma:
       

       
      4.c- Com auxílio do WinSCP, acesse o servidor Ubuntu que acabamos de criar e transfira os 6 arquivos dos passos 4.a e 4.b para /home/seu_usuário_linux, ficando desta forma:
       

       
      5- Agora vamos acessar o MySQL via terminal e iremos criar uma database, um usuário e uma senha para acesso.
         
      sudo mysql -u root -p
      5.a- Insira a senha do usuário root definido na instalação do MySQL (passo 3.b).
       
      5.b- Agora que temos acesso ao ambiente MySQL via linha de comando, insira cada linha separadamente:
       
      CREATE USER 'otserv'@'%' IDENTIFIED BY 'sua_senha'; GRANT ALL ON *.* TO 'otserv'@'%' IDENTIFIED BY 'sua_senha' WITH GRANT OPTION; FLUSH PRIVILEGES; CREATE DATABASE otserv; USE otserv; SOURCE /home/seu_usuario_linux/schema_data.sql; EXIT;  
      5.c- Lembrando que: seu_usuario_linux é o usuário definido na instalação do Ubuntu.
       
      6- Vamos liberar o acesso ao MySQL a partir de outros ips, pois o padrão é somente localhost. No terminal rode os seguintes comandos:
       
      cd /etc/mysql/mysql.conf.d sudo nano mysqld.cnf  
      6.a- Procure por:
       
      bind-address = 127.0.0.1
      6.b- Mude para:
          
      bind-address = 0.0.0.0  
      6.c- Salve e feche o arquivo. No terminal rode o seguinte comando:
          
      sudo service mysql restart
      6.d- Pronto, agora você pode acessar seu banco de dados MySQL a partir de outro pc na rede.
       
      7- Agora vamos mover o arquivo tibia-game.tarball.tar.gz para /home/game e descompactar o arquivo com os comandos abaixo:
          
      cd /home/seu_usuario_linux sudo mkdir /home/game sudo mv tibia-game.tarball.tar.gz /home/game cd /home/game sudo tar -xf tibia-game.tarball.tar.gz    
      7.a- Após executar os comandos, aguarde alguns minutos até que a descompactação seja concluída.
       
      8- Mova as pastas loginserver e querymanager para /home/game com os comandos:
         
      cd /home/seu_usuario_linux sudo mv loginserver querymanager /home/game  
      9- Vamos dar permissões de escrita/leitura para os arquivos em /home/game:
          
      cd /home sudo chmod 777 -R game    
      10- Vamos dar permissões para as libs e move-las para /lib
          
      cd /home/seu_usuario_linux sudo chmod 770 -R dennis-libraries cd dennis-libraries sudo cp *.* /lib  
      11- Agora iremos configurar o QueryManager, no terminal rode os comandos:
         
      sudo su cd /home/game/querymanager sudo nano main.cpp  
      11.a- Procure por "Cz7" sem aspas (atalho para pesquisa no editor nano: CTRL+W).
       
      11.b- Onde há:
         
      "Cz7u89dmyPzHDNEL"
      11.c- Troque por:
          
      "senha_mysql"  
      11.d- "senha_mysql" é a senha que você criou no passo 5.b.
       
      11.e- No arquivo inteiro há 8 resultados com "Cz7u89dmyPzHDNEL", altere todos.
       
      11.f- Ainda no arquivo main.cpp do passo 11, procure por:
          
      htonl(INADDR_LOOPBACK);  
      11.g- Mude para:
        
      inet_addr("ip_ubuntu");  
      11.h- No campo "ip_ubuntu" deve ser inserido o IP definido no passo 2.
       
      11.i- Ainda no arquivo main.cpp do passo 12, procure por:
          
      writeMsg.addByte(213); writeMsg.addByte(163); writeMsg.addByte(67); writeMsg.addByte(173);  
      11.j- No campo entre parênteses deve ser inserido o IP definido no passo 2, se o seu IP for por exemplo 192.168.3.15, ficará desta forma:
       
      writeMsg.addByte(192); writeMsg.addByte(168); writeMsg.addByte(3); writeMsg.addByte(15);  
      11.k- Salve e feche o arquivo.
       
      12- Agora vamos compilar o QueryManager para que o mesmo rode com as configurações feitas no passo 11 inteiro. Rode os seguintes comandos no terminal:
          
      cd /home/game/querymanager sudo make  
      12.a- Aguarde o processo de compilação...
       
      13- Agora vamos alterar algumas configurações no arquivo .tibia:
          
      cd /home/game sudo nano .tibia
      13.a- Logo no topo do arquivo você verá o seguinte:
          
      BINPATH = "/game/bin" MAPPATH = "/game/map" ORIGMAPPATH = "/game/origmap" DATAPATH = "/game/dat" USERPATH = "/game/usr" LOGPATH = "/game/log" SAVEPATH = "/game/save" MONSTERPATH = "/game/mon" NPCPATH = "/game/npc"    
      13.b- Você deverá alterar para:
          
      BINPATH = "/home/game/bin" MAPPATH = "/home/game/map" ORIGMAPPATH = "/home/game/origmap" DATAPATH = "/home/game/dat" USERPATH = "/home/game/usr" LOGPATH = "/home/game/log" SAVEPATH = "/home/game/save" MONSTERPATH = "/home/game/mon" NPCPATH = "/home/game/npc"
      13.c- Ainda no arquivo .tibia, vamos alterar o IP e porta de comunicação com o QueryManager.
       
      13.d- Onde há:
       
      QueryManager = {("127.0.0.1",7173,"nXE?/>j`"),("127.0.0.1",7174,"nXE?/>j`"),("127.0.0.1",7175,"nXE?/>j`"),("127.0.0.1",7176,"nXE?/>j`")}  
      13.e- Altere para:
          
      QueryManager = {("seu_ip",17778,"nXE?/>j`"),("seu_ip",17778,"nXE?/>j`"),("seu_ip",17778,"nXE?/>j`"),("seu_ip",17778,"nXE?/>j`")}  
      13.f- "seu_ip" é o IP que foi definido no passo 2.
       
      13.g- As portas 7173, 7174, 7175 e 7176 devem ser trocadas para 17778.
       
      13.h- Feito isso, salve e feche o arquivo.
       
      14- Vamos criar uma cópia do arquivo .tibia nas pastas /root e /home/seu_usuario_linux:
          
      cd /home/game sudo cp .tibia /root sudo cp .tibia /home/seu_usuario_linux    
      15- Agora iremos configurar o Login Server:
          
      cd /home/game/loginserver/ sudo nano config.lua        
      15.a- No topo do arquivo você verá o seguinte:
          
      -- Connection Config ip = "127.0.0.1"        
      15.b- Troque para:
          
      -- Connection Config ip = "seu_ip"    
      15.c- "seu_ip" é o IP definido no passo 2.
       
      15.d- Onde há:
        
      --version clientVersionMin = 772 clientVersionMax = 772 clientVersionStr = "7.72"    
      15.e- Altere para:
          
      --version clientVersionMin = 770 clientVersionMax = 770 clientVersionStr = "7.70"  
      15.f- Ainda em config.lua, procure por:
         
      -- MySQL mysqlHost = "127.0.0.1" mysqlUser = "root" mysqlPass = "" mysqlDatabase = "otserv" mysqlPort = 3306 mysqlSock = ""
              
      15.g- Altere para:
          
      -- MySQL mysqlHost = "seu_ip" mysqlUser = "otserv" mysqlPass = "sua_senha_mysql" mysqlDatabase = "otserv" mysqlPort = 3306 mysqlSock = ""
      15.h- "seu_ip" é o IP definido no passo 2.
       
      15.i- "sua_senha_mysql" foi definida no passo 5.b quando foi criado o usuário otserv e a database otserv no MySQL.
       
      15.j- Salve e feche o arquivo.
       
      16- Agora vamos editar o arquivo gameserver.xml:
          
      cd /home/game/loginserver/ sudo nano gameservers.xml    
      16.a- Na linha:
          
      <server id="0" name="RealOts" ip="127.0.0.1" port="7172" />
      16.b- Altere para:
          
      <server id="0" name="RealOts" ip="seu_ip" port="7172" />    
      16.c- "seu_ip" é o IP definido no passo 2.
       
      16.d- Em "RealOts" coloque o nome do seu servidor que você quer que apareça no character list.
       
      16.e- Salve e feche o arquivo.
          
      17- Agora iremos compilar o Login Server para que ele funcione com as novas configurações:
             
      cd /home/game/loginserver sudo mkdir build && cd build sudo cmake .. sudo make  
      17.a- Aguarde até que o Login Server seja compilado. Ao terminar, insira os comandos abaixo no terminal:
          
      sudo mv tfls .. cd ..  
      18- Vamos copiar o binário game modificado para a pasta /home/game/bin
          
      cd /home/game/bin mv game "game(vanilla)." cd /home/seu_usuario_linux sudo cp game /home/game/bin
      18.a- Copiado o arquivo, agora vamos conceder as permissões necessárias para o arquivo game:
         
      cd /home/game/bin sudo chmod 777 game
      19- Para rodar o OTServer, temos que abrir 3 arquivos binários: querymanager, tfls e game, para isso abra 3 terminais via Putty e em cada um rode um binário:
          
      Terminal 1:      
      cd /home/game/querymanager ./querymanager  
      Terminal 2:        
      cd /home/game/loginserver ./tfls  
      Terminal 3:    
      cd /home/game/bin sudo ./game  
      19.a- No terminal 3 (que roda o binário game), pode ser que ocorra o erro abaixo:
          
      Initialisierungsfehler: Game-Server is already running, PID file exists. error.log: Initialisierungsfehler: Game-Server is already running, PID file exists.  
      19.b- Para corrigir, rode o comando abaixo:
          
      sudo rm /home/game/save/game.pid  
      19.c- Feito isso, repita os comandos do Terminal 3 no passo 19.
       
      20- Esta é uma dica adicional, se não quiser, pode pular diretamente para o passo 21.
       
      20.a- Podemos criar "atalhos" para execução dos arquivos binários para não precisar ficar navegando nas várias pastas do passo 19 todas vez que formos abrir o OT.
          
      20.b- Atalho do QueryManager:
           
      cd /home/seu_usuario_linux sudo nano querymanager.sh  
      20.c- Preencha com o seguinte conteúdo:
          
      #!/bin/bash cd /home/game/querymanager ./querymanager
      20.d- Salve e feche o arquivo.
          
      20.e- Atalho do Login Server:
         
      cd /home/seu_usuario_linux sudo nano tfls.sh      
      20.f- Preencha com o seguinte conteúdo:
       
      #!/bin/bash cd /home/game/loginserver ./tfls   
      20.g- Salve e feche o arquivo.
          
      20.h- Atalho do binário game:
       
      cd /home/seu_usuario_linux sudo nano game.sh
      20.i- Preencha com o seguinte conteúdo:
           
      #!/bin/bash cd /home/game/bin ./game  
      20.j- Salve e feche o arquivo.
          
      20.k- Desta maneira, basta somente abrir 3 terminais via Putty (normalmente ao logar no Putty ele já entra na pasta do usuário em /home) e então executar:
         
      Terminal 1:    
      sh querymanager.sh    
      Terminal 2:     
      sh tfls.sh  
      Terminal 3:    
      sudo sh game.sh
      21- Com o servidor aberto, podemos entrar in-game, basta selecionar uma conta no banco de dados MySQL. Já adianto a conta abaixo para vocês entrarem:
       
      Login: 856373 Senha: zolo1939  
      21.a- Observação: notem que não instalamos o phpmyadmin para gerenciamento do banco de dados MySQL, eu utilizo o MySQL Workbench ou Toad MySQL no Windows. Se preferirem, podem instalar o phpmyadmin, mas isto fica por conta de vocês.
       
      22- Para dar previlégios de CM, GM ou tutor para uma conta, faça o seguinte:
       
      No banco de dados MySQL, há uma coluna de nome "userlevel" na tabela users, o valor vai de 0 a 255:
         
      0 = Player 1 = Premium 50 = Tutor 100 = GM 255 = CM
      22.a- Basta alterar o valor da coluna "userlevel" da conta desejada, aplicar a alteração e ser feliz ?
       

       
      23- Importante: para entrar in-game é necessário alterar o IP do tibia 7.70 diretamente no HEX do client (temos opção também de editar o arquivo hosts do Windows para direcionar o trafégo do client para o IP do seu servidor), IP changer não funciona pois altera a RSA Key e você não consegue se conectar ao seu servidor. Pesquisem no Google sobre estas duas opções, caso haja muita dúvida/dificuldade sobre isto, comentem neste tópico e farei outro tutorial somente para explicar as 2 opções que comentei.
       
      24- De brinde, deixei também um link para download do arquivo 'Comandos CM-GM.txt', testei todos os comandos e deixei explicado como é a utilização (alguns eu não entendi o funcionamento).
       
      Créditos:
       
      renato95souza / Mitztroke (eu) por ter criado este tutorial e para os usuários da OtLand que forneceram diversos conhecimentos.
       
      https://otland.net/threads/tutorial-running-cipsoft-server-files.244579/
      https://otland.net/threads/7-7-realots-7-7-cipsoft-files-virgin.244562/
      https://otland.net/threads/tutorial-for-running-7-7-cipsoft-server-on-ubuntu.274678/
       
      Arquivos para download:
       
      dennis-libraries.rar https://www.mediafire.com/file/1fmaqpi4e7g6jsq/dennis-libraries.rar/file
      https://www.virustotal.com/gui/file/51e8b37067a6787836755309be0edba0a6def90fe7f41346ec82744d2c960d92/detection
       
      game.rar https://www.mediafire.com/file/8kthr1au2lc2fu0/game.rar/file
      https://www.virustotal.com/gui/file/db3fbc4f6f31701d8ed6c8ad3235fbcc560900e0a6b3c721597d13df593f0d92/detection
       
      loginserver.rar https://www.mediafire.com/file/3r337ypa4f3dj7l/loginserver.rar/file
      https://www.virustotal.com/gui/file/986eef3d686e20d8f691caa84406df18e3ab57ebe4b10ed649a695fc25348da4/detection
       
      querymanager.rar https://www.mediafire.com/file/ubaj5841iyzc4sc/querymanager.rar/file
      https://www.virustotal.com/gui/file/5cc0b2897731ad23da334244cd1ef4bd4b3aafecab304abc7ff463f3a18e1a7f/detection
       
      schema_data.rar https://www.mediafire.com/file/1buiif04y8ovnm7/schema_data.rar/file
      https://www.virustotal.com/gui/file/0af8174cd19557a3d6c7cc4084216ff4067f76d511aaaf3d0a6533a6f89303e9/detection
       
      tibia-game.tarball.tar.gz https://www.mediafire.com/file/qvh4zxnp5s84jt2/tibia-game.tarball.tar.gz/file
      https://www.virustotal.com/gui/file/67b771d1e3b4a6ef48c554b9b8b0db56da39cae6b0de5444f7bf6e71c0b2de8e/detection
       
      Comandos CM-GM.txt https://www.mediafire.com/file/870bhktabqv7j8s/Comandos_CM-GM.txt/file
      https://www.virustotal.com/gui/file/8afa3579e7b2014d188df9c96a07ce7141234190f6626dc6d09b82cf45ce17c2/detection

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo