-
Total de Posts
87 -
Registro em
-
Última visita
-
Dias Ganhos
18
Tipo de Conteúdo
Fóruns
Downloads
Galeria
Perfis
Tudo que gutinha postou
-
Tópico Aprovado! Somos gratos por sua contribuição ❤️ REP+
-
Tópico Aprovado! Somos gratos por sua contribuição ❤️ REP+
- 36 respostas
-
- 1
-
- poketibia pokemon
- poketibia
- (e 4 mais)
-
Nice content
-
Tópico Aprovado! Somos gratos por sua contribuição ❤️ REP+
- 2 respostas
-
- 2
-
- auto updater
- python
-
(e 2 mais)
Tags:
-
Tópico Aprovado! Somos gratos por sua contribuição, com certeza será útil para toda a comunidade! ❤️ REP+
-
TFS 1.x Salvar backpacks abertas e enviar ao logar
gutinha postou um tópico no fórum em TFS 1.X, Compartilhe seu código C++, LUA, PHP e etc
Salve rapaziada, esse tutorial é pra você que odeia ter que ficar abrindo suas bags toda vez ao relogar no client. Bora lá, na source do server 1° Passo 2° Passo 3° Passo 4° Passo 5° Passo Feito isso, basta compilar e testar. Código retirado do github do v8 > [Hidden Content]-
- 21
-
O próprio v8 já tem o auto updater, basta configurar. [Hidden Content]
- 3 respostas
-
- 101
-
QUAL O MELHOR SERVIÇO DE VPS DA ATUALIDADE? (CUSTO/BENEFÍCIO)
gutinha respondeu ao tópico de Luis_Dias em Suporte de Infraestrutura
Atualmente estou usando a ecxon -
Salve rapaziada, vim disponibilizar o Item Editor compilado para sprites 64x64 Download: Github do projeto: [Hidden Content] Créditos ao @ SkullzOTS
-
- 19
-
Salve rapaziada, vim disponibilizar o RME editado pra sprite 64x64. Download: Github do projeto: [Hidden Content] Créditos ao @ SkullzOTS
-
- 21
-
Compilando TSF 0.3.6 com Dev C++ para Windows
gutinha postou um tópico no fórum em Tutoriais de Infraestrutura
Eu sei que isso pode parecer muito antigo, mas é algo que eu gostaria de compartilhar porque demorei muito para resolver alguns detalhes, então vamos lá. Bem, antes que você diga 'Meeh, isso é muito antigo, ninguém liga', eu comecei meu servidor OT há alguns anos para o Tibia 8.60, e naquela época eu só tinha as sources para o TSF 0.3.6. Então, vamos começar com o tutorial Primeiramente, você deve baixar o Dev C++ no seguinte link: clique aqui Instale-o e, quando terminar, vá para a configuração do sistema (não sei exatamente o nome, mas é onde você altera as configurações do computador) e depois vá para 'Sistema' > 'Parâmetros avançados do sistema' > 'Variáveis de ambiente'. Desculpe se escrevi algo diferente, mas acho que você vai entender. Neste local adicione na variável 'PATH' a pasta onde seu Dev C++ está instalado, será algo como C:\Arquivos de Programas (x86)\Dev-Cpp ok? Por precaução, faça isso para as variáveis utilizadas pelo usuário e pelo sistema. Não esqueça de clicar em OK. Aí começa a diversão, você não usará o Dev C++ instalado antes! O que você vai fazer é baixar outro Dev C++, que tenha tudo que você precisa, tem alguns links onde você pode encontrar. Stian's Dev-cpp: Aqui > StiansRepackDev-Cpp_v2.zip Certo, você precisará da source do seu servidor, caso não tenha porque está aqui nesse tutorial? kkkk Bem, com tudo em mãos, agora vamos abrir o Dev C++ do Dev-cpp do Stian! Basta clicar no arquivo 'devcpp.exe'! Então, vamos verificar algumas coisas. Primeiro você vai em Arquivo> Abrir Projeto, e depois procura onde você salvou o The Forgotten Server, e será algum diretório como C:\Users\Your_user\Desktop\cryingdamson 0.3.6 (8.60) V8.2 Source\dev -cpp, e neste arquivo você procura TheForgottenServer-console.dev para finalmente abri-lo em Dev C++. Em Project > Project Options > Parameters: O compilador C++ deve ser: -D__USE_MYSQL__ -D__USE_SQLITE__ -D__ENABLE_SERVER_DIAGNOSTIC__ -D__CONSOLE__ E o Linker deve ser: -O1 -lboost_system -lgmp -llua5.1 -lmysql -lboost_regex -lsqlite3 -lwsock32 -lxml2 -lmysql -lws2_32 -s -lboost_filesystem -lboost_thread Ok, ainda em Project > Project Options > (mas) Diretórios/Arquivos: Em Library Directories você deve adicionar o diretório onde você salvou o Dev-cpp do Stian, algo como C:\Users\Seu_usuário\Desktop\Stian's Dev-cpp\lib e incluir diretórios devem adicionar C:\Users\Your_user\Desktop\Stian's Dev-cpp\include Obs: Esse é o caso do diretório estar na sua área de trabalho, ok? Tenha certeza de onde estará Quase terminando, acredite! Então, o próximo passo é em Tools > Compiler Options > Directories Para binaries, adicione: C:\Users\Your_user\Desktop\Stian's Dev-cpp\bin Para libraries, adicione: C:\Users\Your_user\Desktop\Stian's Dev-cpp\lib Para C includes adicione: C:\Users\Your_user\Desktop\Stian's Dev-cpp\include Para C++ Inclui adição: C:\Users\Your_user\Desktop\Stian's Dev-cpp\include\c++ Feito isso! Certifique-se de que não haja um diretório chamado MinGW em sua pasta C, como C:\MinGW, porque você não conseguirá terminar a compilação, acredite. Bem, acho que é isso, tente compilar e fique feliz com seu próprio servidor OT!- 2 respostas
-
- 44
-
Como por efeito shades/particula no OTC v8?
gutinha respondeu ao tópico de qrcode em OTClient Mehah, V8 e derivados
Se a versão do seu servidor for 1.x, o otcv8 tem um repositório com os commit das features do client. [Hidden Content] Só implementar na source e ativar a feature no client- 5 respostas
-
- 117
-
ANSWERED erro ao ligar servidor no ubuntu 22.04
gutinha respondeu ao tópico de Marcelo Junior em Resolvidos
O problema está no seu script de start, Ele está procurando um diretório que não existe "/home/pedro/desktop/sv/database" Além de outros erros ali em cima -
Efeito no jogador ao andar
gutinha respondeu ao tópico de gutinha em TFS 0.X, Compartilhe seu código C++, LUA, PHP e etc
Com efeito envolta teria q usar aura, já foge do intuito do script, seria outra coisa. -
Opa mano, o erro está dizendo que a versão do seu visual studio é desatualizada a versão que a source está pedindo, tente atualizar o visual studio
-
[Aberto] Base Poke Alaska Servidor+Cliente+Soucer (2023)
gutinha respondeu ao tópico de Zeon em Servidores Poketibia
Tópico Aprovado! Somos gratos por sua contribuição, com certeza será útil para toda a comunidade! ❤️ REP+ -
Sprites do NTO NINDO ( exclusivo )
gutinha respondeu ao tópico de TELASKO em Compartilhe suas sprites
-
Sprites do pokeSHIELD ( exclusivo )
gutinha respondeu ao tópico de TELASKO em Compartilhe suas sprites
-
[Tutorial] Como extender a tela do otclient e otcv8 (TFS 1.x e 0.3.6)
gutinha respondeu ao tópico de gutinha em OTClient Mehah, V8 e derivados
Mano, não foi testado no canary. Então não sei te informar. -
[GlobalEvent] Vip grátis para os top level
gutinha postou um tópico no fórum em TFS 0.X, Compartilhe seu código C++, LUA, PHP e etc
Salve rapaziada, esse script faz com que os 5 top leveis do servidor tenham vip por 1 semana. Ele faz essa checagem em um dia configurável no script. Por exemplo irei usar toda sexta. Testado em 0.3.6-
- 2
-
Salve rapaziada, vou trazer alguns comandos básicos pra bloquear alguns ataques DDos a sua host. É necessário estar usando linux. 1. Use o iptables para configurar o limite de conexões por IP, por segundo/minuto. Exemplo com portas 7000-8000 e 3 regras: máximo de 10 conexões ao mesmo tempo de 1 IP máximo de 40 novas conexões por minuto a partir de 1 IP máximo de 2 novas conexões por segundo de 1 IP Execute no terminal cada comando, respectivamente. sudo iptables -A INPUT -p tcp --syn --dport 7000:8000 -m connlimit --connlimit-above 10 --connlimit-mask 32 -j REJECT --reject-with tcp-reset sudo iptables -A INPUT -p tcp --dport 7000:8000 -m state --state NEW -m hashlimit --hashlimit-mode srcip --hashlimit-above 40/min --hashlimit-burst 40 --hashlimit-name ots_conn_rate_min -j REJECT --reject-with tcp-reset sudo iptables -A INPUT -p tcp --dport 7000:8000 -m state --state NEW -m hashlimit --hashlimit-mode srcip --hashlimit-above 2/sec --hashlimit-burst 2 --hashlimit-name ots_conn_rate_sec -j REJECT --reject-with tcp-reset 2. Se for host da OVH, você pode ir ao painel e configurar o anti-ddos para funcionar em 0 segundos, não em 30. O modo anti-ddos padrão da OVH é: analisar o tráfego de rede em busca de DDoS, se detectado: ativar o anti-ddos (leva de 0 a 120 segundos). Você pode configurá-lo para passar todo o tráfego de rede através do sistema anti-ddos, então ele ativará a proteção em 0 segundos. Conexões em massa com a porta 7171 geralmente bloqueiam a porta 7171 ao atingir o limite padrão do Linux de 1.024 conexões por aplicativo (ex. OTS). Aqui está o tutorial do gesior de como reconfigurá-lo para valores muito altos (está em polonês, mas poucas pessoas fizeram isso com o Google Translate e funcionou): [Hidden Content] Créditos: Gesior
- 2 respostas
-
- 15
-
Manda mensagem lá no discord do tibiaDevs pra gnt combinar
-
Consegue ir anydesk algum dia pra gente testar?
-
[LUA] Como migrar scripts do TFS 0.x para o TFS 1.x
gutinha postou um tópico no fórum em TFS 1.X, Compartilhe seu código C++, LUA, PHP e etc
APRENDA PELO EXEMPLO! Neste tópico postarei o script que migrei do antigo TFS para o TFS 1.1+. Eles não são um sistema pronto para ser executado, então não posso publicá-los em Recursos, mas tenho certeza de que muitas pessoas podem aprender como escrever 'novos scripts LUA' a partir dele. 1. onStatsChange(cid, attacker, type, combat, value) evento em 1.x é dividido em 2 eventos: onHealthChange(creature, attacker, primaryDamage, primaryType, secondaryDamage, secondaryType, origin) onManaChange(creature, attacker, manaChange, origin) No TFS antigo você tinha que usar 'return false' para bloquear os danos, no novo você precisa definir os valores dos danos como 0 - as variáveis LUA estão vinculadas às variáveis C++ As variáveis vinculadas no TFS 1.1+ são: primaryDamage primaryType secondaryDamage secondaryType manaChange Se você modificar o valor de qualquer um deles, isso mudará nos cálculos do TFS C++! Agora você pode não apenas bloquear o dano, mas também reduzi-lo em porcentagem ou valor. 1° exemplo, reduza o dano de mana [e cura, poções?] em 25%: function onManaChange(creature, attacker, manaChange, origin) -- verifica se o atacante é Jogador, 'criatura' é sempre Jogador, pois 'registerEvent' é apenas para jogadores if attacker:isPlayer() then -- alterar manaChange para 75% do valor inicial manaChange = (manaChange * 75) / 100 end return true end 2° exemplo, alguma arena PvP (teletransporte para o templo quando o HP estiver abaixo de 0) e proteção de loot para níveis baixos: --// SCRIPT ANTIGO TFS 0.3.6 local Arena = { frompos = {x=1173,y=1390,z=7}, topos = {x=1250,y=1422,z=7} } local TemploArenas = {x=1429, y=1242, z=7, stackpos=1} function onStatsChange(cid, attacker, type, combat, value) if isInRange(getCreaturePosition(cid), Arena.frompos, Arena.topos) then if type == 1 then if getCreatureHealth(cid) <= value then if isPlayer(cid) then doSendMagicEffect(TemploArenas, 10) doTeleportThing(cid, TemploArenas, true) doCreatureAddHealth(cid, getCreatureMaxHealth(cid), true) if isPlayer(attacker) then doPlayerSetPzLocked(attacker, true) end end return false end end end if isPlayer(cid) and type == 1 and getCreatureHealth(cid) <= value then if getPlayerLevel(cid) <= 100 then if (getCreatureSkullType(cid) ~= SKULL_RED) and (getCreatureSkullType(cid) ~= SKULL_BLACK) then doCreatureSetDropLoot(cid, false) end end end return true end --// SCRIPT NOVO PARA TFS 1.1 local Arena = { frompos = {x=1173,y=1390,z=7}, topos = {x=1250,y=1422,z=7} } local TemploArenas = Position(1429, 1242, 7) --// config as Position object --// acertar na mana não pode matar o jogador, apenas acertar no HP, então não precisamos do evento onManaChange function onHealthChange(creature, attacker, primaryDamage, primaryType, secondaryDamage, secondaryType, origin) local player = Player(creature) if player then --// não nulo = é um jogador, não um monstro/npc if isInRange(player:getPosition(), Arena.frompos, Arena.topos) then if primaryDamage < 0 then --// é ataque, não cura --// se o primário estiver abaixo de 0, o secundário também estará abaixo de 0 local totalDamage = -(primaryDamage + secondaryDamage) --// somar o dano e alterá-lo para um número positivo if player:getHealth() <= totalDamage then --// doSendMagicEffect(TemploArenas, 10) TemploArenas:sendMagicEffect(10) --// doTeleportThing(cid, TemploArenas, true) player:teleportTo(TemploArenas, true) --// doCreatureAddHealth(cid, getCreatureMaxHealth(cid), true) player:addHealth(player:getMaxHealth() - player:getHealth()) local attackerPlayer = Player(attacker) if attackerPlayer then --//doPlayerSetPzLocked(attacker, true --// WTF, não há função para definir o bloqueio PZ no TFS 1.1 (e 1.2)! --// Bug reportado: [Hidden Content] end --// return false - old code to block dmg primaryDamage = 0 secondaryDamage = 0 end end end if primaryDamage < 0 then --// é ataque, não cura local totalDamage = -(primaryDamage + secondaryDamage) --// somar o dano e alterá-lo para um número positivo if player:getHealth() <= totalDamage then if player:getLevel() <= 100 then if player:getSkull() ~= SKULL_RED) and player:getSkull() ~= SKULL_BLACK then --// doCreatureSetDropLoot(cid, false) player:setDropLoot(false) end end end end end return true end Créditos: Gesior.pl -
[A Venda] [Aberto] Base Frenzy Servidor+ Cliente +Source + Site (2023)
gutinha respondeu ao tópico de Zeon em Venda de Servidores/Derivados
Tópico aprovado e movido para a área correta- 8 respostas
-
- base frenzy
- base haze
- (e 1 mais)
- Criar Novo...