-
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 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 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?
-
Por EddyHavoc
Para editar o IP do Tibia e torna-lo exclusivo para o seu servidor é muito simples!
Utilize o Notepad++ (https://notepad-plus-plus.org/downloads/)
Utilizando o CTRL + F você irá alterar alguns dados do Tibia.exe
Altere os campos descritos acima pelo seu IP.
Repare que cada um tem 17 caracteres. Você precisa manter esta quantidade de caracteres no programa, se não quando salvar, ele será corrompido e não abrirá.
Provavelmente o seu ip tem menos caracteres do que 17, para fazer o preenchimento correto, você deverá inserir Caracteres NULL.
Acesse este tópico para aprender como inserir Caracteres Null:
Efetue também a busca pelos dados abaixo e altere para o seu IP. Note que agora os campos terão 19 caracteres, realize o mesmo procedimento preenchendo a diferença com Caracteres NULL. Caso contrário o arquivo será corrompido.
Após realizar as alterações, atualizando tudo para o seu IP e preenchendo a diferença de caracteres com Caracteres NULL, altere a chave RSA do client.
Esta alteração é para ajustar a chave criptográfica do seu Servidor no Client do Tibia. A chave original não é compatível com a dos OT Servers. Sem esta alteração você não conseguirá se conectar ao servidor.
SEU CLIENTE ESTÁ PRONTO
Se você cometeu algum erro, adicionando ou removendo um caractere a mais o .exe será corrompido.
Créditos:
EddyHavoc
Gesior.pl
-
Por Gabrieltxu
Fala Galera nunca postei algo assim , então essa vai ser a minha 1° vez , então sem mais delongas é um sistema basico para OTC , é um novo tipo de BroadCast , lembrando que a ideia inicial desse sistema não é minha apenas copiei o sistema de um servidor de poketibia pl.
então uma print de como é o sistema
então la vai como instalar esse mod no seu OTC
1° Crie uma pasta escrito mod_broadcast
2° adicione esses scripts dentro da pasta
bc.lua
bc.otmod
bc.otui
e é só isso galera , qual quer coisa comenta aqui , erro , se funcionou , se gostou deixa seu rep+ ai ,
lembrando que esse servidor Opal não vou mais postar , e talves vou fazer um novo video no meu canal de como deixar seu servidor On com net via radio ou compartilhada sem Hamachi , uma surpresa xD
créditos :
Poke-Evo
Gabrieltxu
-
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.