-
Quem Está Navegando 0 membros estão online
Nenhum usuário registrado visualizando esta página.
-
Conteúdo Similar
-
Por
Nazo
Buenas, TK!
Um usuário pediu ajuda em um script, onde queria limitar para a quest ser feita apenas uma vez por IP, mesmo que ainda seja possível mudá-lo, resolvi postar aqui xd
Execute esse código SQL no seu banco de dados MySQL, para a criação da tabela onde ficarão as storages e o IP armazenado do player:
CREATE TABLE player_ip_storage( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, player_id INT NOT NULL, ip CHAR(15) NOT NULL, storage INT NOT NULL ); ALTER TABLE player_ip_storage ADD CONSTRAINT FK_PLAYER_ID FOREIGN KEY (player_id) REFERENCES players(id);
Ou caso seja SQLITE, utilize esse código:
CREATE TABLE player_ip_storage( player_id INT NOT NULL, ip CHAR(15) NOT NULL, storage INT NOT NULL ); ALTER TABLE player_ip_storage ADD CONSTRAINT FK_PLAYER_ID FOREIGN KEY (player_id) REFERENCES players(id);
Crie um arquivo chamado nazo-functions.lua em data/lib e adicione o seguinte conteúdo:
-- by Nazo (tibiaking.com) -- IP Storage System function getIpQuestStatus(cid, storage) storages = db.getResult("SELECT * FROM `player_ip_storage` WHERE `ip` = \"" .. doConvertIntegerToIp(getPlayerIp(cid)) .. "\" and `storage` = "..storage..";") if(storages:getID() ~= -1) then return false end return true end function setIpQuestStatus(cid, storage) db.executeQuery("INSERT INTO player_ip_storage(player_id, ip, storage) VALUES("..getPlayerGUID(cid)..",\""..doConvertIntegerToIp(getPlayerIp(cid)).."\","..storage..")") return true end
Agora, quando você tiver uma quest, adicione na verificação a função getIpQuestStatus na checagem junto, e quando finalizar a quest utilize o setIpQuestStatus, com os parâmetros cid e número da storage, porém a função só armazena que essa storage tem algo no banco de dados, ou seja, a quest já foi feita, você não armazena o valor da storage junto (como a função normal que geralmente adiciona "1" na storage).
Exemplo de quest abaixo:
-- by Nazo (tibiaking.com) config = { storage = 123123, -- storage da quest premio = {2160, 1} -- {itemid, quantia} } function onUse(cid, item, frompos, item2, toPosition) queststatus = getPlayerStorageValue(cid,config.storage) if(queststatus == -1 and getIpQuestStatus(cid, config.storage)) then -- note que eu só adicionei a função, nenhuma comparação, explicarei abaixo do código doPlayerSendTextMessage(cid,22,"Tome seu prêmio.") doPlayerAddItem(cid,config.premio[1],config.premio[2]) setPlayerStorageValue(cid,config.storage,1) setIpQuestStatus(cid,config.storage) -- função que adiciona a storage no banco de dados else doPlayerSendTextMessage(cid,22,"Você já fez esta quest.") end end
Explicação básica do motivo da função não possuir comparação na verificação e ficar como a seguir:
if(getIpQuestStatus(cid, config.storage)) then Quando você faz um if, com uma função dentro sem comparações, ela continuará o bloco de comando apenas se o retorno da mesma for verdadeiro, assim quando você fizer a quest, e tentar novamente, o get retorna falso, e isso cancela a condição e vai para o bloco de comando do "else".
-
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
-
Por gutx
Pessoal, estou com um certo problema,
não consigo criar um outro arquivo exe pelo vapus, por exemplo, para o client que encontrei do ot que quero fazer,
encontrei outra solução que é fazer a edição pelo próprio executável do client (.exe),
mas o que tenho aqui é limite 9,
quero saber se tem como aumentar esse limite,
pois não consigo criar um ip tão pequeno,
se alguém souber como criar um ip desse tamanho, também está ajudando,
Valendo REP!
-
Por TathiiCarvalho
Olá!
Estou com problemas na distro do meu serv, aparece uns erros no Database que não consigo resolver, fora isso, eu tenho meu ip fixo e coloquei ele no config.lua, porém quando vou abrir a distro aparece vários ips o.o e nenhum deles é o que coloquei. No broadcast aparece as propagandas e o save a cada 1 segundo eu exclui os scripts e não adiantou nada o.o e não consigo logar no meu ot e ninguém consegue também.
Config.lua
-- The Forgotten Server Config -- Account manager accountManager = "yes" namelockManager = "no" newPlayerChooseVoc = "yes" newPlayerSpawnPosX = 169 newPlayerSpawnPosY = 52 newPlayerSpawnPosZ = 7 newPlayerTownId = 1 newPlayerLevel = 8 newPlayerMagicLevel = 0 generateAccountNumber = "no" -- Unjustified kills -- NOTE: *Banishment and *BlackSkull variables are >summed up< -- (dailyFragsToRedSkull + dailyFragsToBanishment) with their -- *RedSkull equivalents. -- Auto banishing works only if useBlackSkull set to negative. -- advancedFragList is not advised if you use huge frags -- requirements. redSkullLength = 50 * 62 * 70 * 90 blackSkullLength = 64 * 72 * 80 * 95 dailyFragsToRedSkull = 100 weeklyFragsToRedSkull = 80 monthlyFragsToRedSkull = 90 dailyFragsToBlackSkull = dailyFragsToRedSkull weeklyFragsToBlackSkull = weeklyFragsToRedSkull monthlyFragsToBlackSkull = monthlyFragsToRedSkull dailyFragsToBanishment = dailyFragsToRedSkull weeklyFragsToBanishment = weeklyFragsToRedSkull monthlyFragsToBanishment = monthlyFragsToRedSkull blackSkulledDeathHealth = 40 blackSkulledDeathMana = 0 useBlackSkull = true useFragHandler = true advancedFragList = false -- Banishments -- violationNameReportActionType 1 = just a report, 2 = name lock, 3 = player banishment -- killsBanLength works only if useBlackSkull option is disabled. notationsToBan = 3 warningsToFinalBan = 4 warningsToDeletion = 5 banLength = 7 * 24 * 60 * 60 killsBanLength = 8 * 24 * 60 * 60 finalBanLength = 30 * 24 * 60 * 60 ipBanishmentLength = 1 * 24 * 60 * 60 broadcastBanishments = true maxViolationCommentSize = 200 violationNameReportActionType = 2 autoBanishUnknownBytes = false -- Battle -- NOTE: showHealingDamageForMonsters inheritates from showHealingDamage. -- loginProtectionPeriod is the famous Tibia anti-magebomb system. -- deathLostPercent set to nil enables manual mode. worldType = "open" protectionLevel = 50 pvpTileIgnoreLevelAndVocationProtection = true pzLocked = 20 * 700 huntingDuration = 60 * 1000 criticalHitChance = 7 criticalHitMultiplier = 1 displayCriticalHitNotify = true removeWeaponAmmunition = false removeWeaponCharges = false removeRuneCharges = "no" whiteSkullTime = 5 * 10 * 100 noDamageToSameLookfeet = false showHealingDamage = false showHealingDamageForMonsters = false fieldOwnershipDuration = 5 * 1000 stopAttackingAtExit = false oldConditionAccuracy = false loginProtectionPeriod = 10 * 1000 deathLostPercent = 10 stairhopDelay = 2 * 1000 pushCreatureDelay = 2 * 1000 deathContainerId = 1987 gainExperienceColor = 215 addManaSpentInPvPZone = true squareColor = 0 allowFightback = true -- Connection config worldId = 0 ip = "kings-otserv.servegame.com" bindOnlyConfiguredIpAddress = false loginPort = 7171 gamePort = 7172 adminPort = 7171 statusPort = 7171 loginTries = 10 retryTimeout = 5 * 1000 loginTimeout = 60 * 1000 maxPlayers = 105 motd = "Bem vindo Ao Kings Ot Server" displayOnOrOffAtCharlist = false onePlayerOnlinePerAccount = true allowClones = false serverName = "Kings Ot Server" loginMessage = "Bem Vindo Ao Kings Ot Server, Bom Jogo!" statusTimeout = 5 * 60 * 1000 replaceKickOnLogin = true forceSlowConnectionsToDisconnect = false loginOnlyWithLoginServer = false premiumPlayerSkipWaitList = false -- Database -- NOTE: sqlFile is used only by sqlite database, and sqlKeepAlive by mysql database. -- To disable sqlKeepAlive such as mysqlReadTimeout use 0 value. sqlType = "sqlite" sqlHost = "localhost" sqlPort = 3306 sqlUser = "root" sqlPass = "" sqlDatabase = "theforgottenserver" sqlFile = "forgottenserver.s3db" sqlKeepAlive = 0 mysqlReadTimeout = 10 mysqlWriteTimeout = 10 encryptionType = "sha1" -- Deathlist deathListEnabled = true deathListRequiredTime = 1 * 60 * 1000 deathAssistCount = 19 maxDeathRecords = 5 -- Guilds ingameGuildManagement = true levelToFormGuild = 8 premiumDaysToFormGuild = 0 guildNameMinLength = 4 guildNameMaxLength = 20 -- Highscores highscoreDisplayPlayers = 100 updateHighscoresAfterMinutes = 2 -- Houses buyableAndSellableHouses = true houseNeedPremium = true bedsRequirePremium = true levelToBuyHouse = 100 housesPerAccount = 0 houseRentAsPrice = false housePriceAsRent = false housePriceEachSquare = 10000 houseRentPeriod = "never" houseCleanOld = 0 guildHalls = false -- Item usage timeBetweenActions = 200 timeBetweenExActions = 1000 checkCorpseOwner = true hotkeyAimbotEnabled = true maximumDoorLevel = 10000 -- Map -- NOTE: storeTrash costs more memory, but will perform alot faster cleaning. -- useHouseDataStorage usage may be found at README. mapName = "kings.otbm" mapAuthor = "Baiak Lula" randomizeTiles = true useHouseDataStorage = false storeTrash = true cleanProtectedZones = true mailboxDisabledTowns = "-1" -- Startup -- NOTE: defaultPriority works only on Windows and niceLevel on *nix -- coresUsed are seperated by comma cores ids used by server process, -- default is -1, so it stays untouched (automaticaly assigned by OS). defaultPriority = "high" niceLevel = 5 coresUsed = "-1" optimizeDatabaseAtStartup = true removePremiumOnInit = true confirmOutdatedVersion = false -- Muted buffer maxMessageBuffer = 4 bufferMutedOnSpellFailure = false -- Miscellaneous -- NOTE: promptExceptionTracerErrorBox works only with precompiled support feature, -- called "exception tracer" (__EXCEPTION_TRACER__ flag). -- monsterLootMessage 0 to disable, 1 - only party, 2 - only player, 3 - party or player (like Tibia's) dataDirectory = "data/" allowChangeOutfit = true allowChangeColors = true allowChangeAddons = true disableOutfitsForPrivilegedPlayers = false bankSystem = true saveGlobalStorage = true displaySkillLevelOnAdvance = false spellNameInsteadOfWords = false emoteSpells = true promptExceptionTracerErrorBox = true storePlayerDirection = false monsterLootMessage = 3 monsterLootMessageType = 25 separateViplistPerCharacter = false -- Ghost mode ghostModeInvisibleEffect = false ghostModeSpellEffects = true -- Limits idleWarningTime = 14 * 60 * 1000 idleKickTime = 1000 * 1000 * 10000 expireReportsAfterReads = 1 playerQueryDeepness = 2 maxItemsPerPZTile = 0 maxItemsPerHouseTile = 0 -- Premium-related freePremium = true premiumForPromotion = true -- Blessings -- NOTE: blessingReduction* regards items/containers loss. -- eachBlessReduction is how much each bless reduces the experience/magic/skills loss. blessingOnlyPremium = true blessingReductionBase = 30 blessingReductionDecreament = 5 eachBlessReduction = 8 -- Rates -- NOTE: experienceStages configuration is located in data/XML/stages.xml. -- rateExperienceFromPlayers 0 to disable. experienceStages = "yes" rateExperience = 1000 rateExperienceFromPlayers = 0 rateSkill = 200 rateMagic = 150 rateLoot = 3 rateSpawn = 2 -- Monster rates rateMonsterHealth = 1.0 rateMonsterMana = 1.0 rateMonsterAttack = 1.0 rateMonsterDefense = 1.0 -- Experience from players -- NOTE: min~Threshold* set to 0 will disable the minimum threshold: -- player will gain experience from every lower leveled player. -- max~Threshold* set to 0 will disable the maximum threshold: -- player will gain experience from every higher leveled player. minLevelThresholdForKilledPlayer = 0.9 maxLevelThresholdForKilledPlayer = 1.1 -- Stamina -- NOTE: Stamina is stored in miliseconds, so seconds are multiplied by 1000. -- rateStaminaHits multiplies every hit done a creature, which are later -- multiplied by player attack speed. -- rateStaminaGain is divider of every logged out second, eg: -- 60000 / 3 = 20000 milliseconds, what gives 20 stamina seconds for 1 minute being logged off. -- rateStaminaThresholdGain is divider for the premium stamina. -- staminaRatingLimit* is in minutes. rateStaminaLoss = 1 rateStaminaGain = 3 rateStaminaThresholdGain = 12 staminaRatingLimitTop = 41 * 60 staminaRatingLimitBottom = 14 * 60 rateStaminaAboveNormal = 1.5 rateStaminaUnderNormal = 0.5 staminaThresholdOnlyPremium = true -- Party -- NOTE: experienceShareLevelDifference is float number. -- experienceShareLevelDifference is highestLevel * value experienceShareRadiusX = 30 experienceShareRadiusY = 30 experienceShareRadiusZ = 1 experienceShareLevelDifference = 2 / 3 extraPartyExperienceLimit = 20 extraPartyExperiencePercent = 5 experienceShareActivity = 2 * 60 * 1000 -- Global save -- NOTE: globalSaveHour means like 03:00, not that it will save every 3 hours, -- if you want such a system please check out data/globalevents/globalevents.xml. globalSaveEnabled = false globalSaveHour = 8 shutdownAtGlobalSave = true cleanMapAtGlobalSave = false -- Spawns deSpawnRange = 2 deSpawnRadius = 50 -- Summons maxPlayerSummons = 0 teleportAllSummons = false teleportPlayerSummons = true -- Status ownerName = "[GOD] Carvalho" ownerEmail = "@otland.net" url = "http://otland.net/" location = "Europe" displayGamemastersWithOnlineCommand = false -- Logs -- NOTE: This kind of logging does not work in GUI version. -- For such, please compile the software with __GUI_LOGS__ flag. adminLogsEnabled = false displayPlayersLogging = true prefixChannelLogs = "" runFile = "" outLogName = "" errorLogName = "" truncateLogsOnStartup = false distro.bmp
-
Por ADM Lucas OTBR
Olá senhores,
Estou testando meu servidor com o ip fixo, utilizando o ip gerando no noip.com;
Aí é que está o problema. Quando eu tento entrar com o ip local, beleza, me conecto normalmente.
Assim que tento me conectar com o IP fixo, ele não entra. Com problema de conexão.
Uso internet compartilhada e minhas portas estão desbloqueadas e também já ouvi falar que quem hospeda não consegue entrar no server, algo do tipo. Beleza isso é o básico.
Mas a questão é, estou desencanado e quero colocar online o mais rápido possível, será que quando eu colocar o servidor no host, eu vou conseguir me conectar normalmente?
-
Posts Recomendados
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.