
forkz
Membro
-
Registro em
-
Última visita
Histórico de Curtidas
-
forkz deu reputação a marcoshps11 em Configurando Docker no windows, adeus VMNeste tutorial, irei ensinar configurar o Docker no windows e rodar seu otserver
- Diferença entre Docker x Máquina virtual:
Docker e Máquinas Virtuais (VMs) ambas são fundamentais usadas para isolar recursos em um sistema de computação, mas funcionam de maneiras muito diferentes.
VMs são ambientes de computação completos, incluindo um sistema operacional (SO) completo, que simulam o hardware de um computador físico. Isso significa que cada VM é um sistema autônomo e independente. Já o Docker, usa a tecnologia de contêineres. Os contêineres compartilham o mesmo sistema operacional do host, mas mantêm seu próprio espaço de processo, arquivos e rede. Isso significa que eles são muito mais leves do que as VMs, pois não precisam de um SO completo, e podem ser iniciados e parados muito mais rapidamente.
- Vantagens em utilizar o Docker
O Docker oferece várias vantagens significativas:
Eficiência de recursos: Como os contêineres Docker compartilham o SO do host, eles são mais leves e usam menos recursos do que as VMs. Portabilidade: O Docker permite que você "construa uma vez, execute em qualquer lugar". Uma vez criado um contêiner Docker, ele pode ser executado em qualquer sistema que suporte o Docker, independentemente das configurações subjacentes. Isolamento: Cada contêiner Docker é isolado do resto do sistema, o que ajuda a evitar conflitos entre diferentes aplicações e versões de software. Integração e entrega contínua: O Docker se integra bem com ferramentas de CI/CD (Integração Contínua / Entrega Contínua), permitindo a automatização de testes e implantação de aplicações. Escalabilidade e Orquestração: O Docker facilita a escalabilidade de aplicações, permitindo que múltiplos contêineres sejam implantados facilmente. Além disso, com ferramentas como Docker Swarm e Kubernetes, a orquestração de contêineres se torna eficiente e gerenciável
Colocando a mão na massa
Este tutorial será dividido nas seguintes etapas:
Preparação do Windows Instalando o Docker Instalando imagens mariadb e phpmyadmin Realizando a build da imagem TFS
1º PASSO: Preparando o Windows com o subsistema Linux.
AVISO: Essa Etapa será necessária somente caso ainda não possua o subsistema Linux ativado em seu windows
Os comandos a seguir, serão todos utilizando o POWERSHELL do windows, na barra de pesquisa digite POWERSHELL e execute como administrador.
Com o POWERSHELL aberto, execute os seguintes comandos:
Habilitando subsistema Linux:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
Habilitando recurso de máquina virtual: dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Baixe e instale Kernel do Linux:
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
Após essa etapa, será necessário reiniciar o computador para atualização, após reiniciar, abra novamente o PowerShell
Definindo o WSL 2 como padrão: wsl --set-default-version 2
Após esses passos, basta entrar na Microsoft Store e instalar o sistema Ubuntu:
Após a instalação, abra o Ubuntu, como será a primeira vez, irá solicitar para que digite um nome de usuário e uma senha.
Etapa 1 concluída.
Fonte: https://learn.microsoft.com/pt-br/windows/wsl/install-manual
2º PASSO: Instalando Docker.
este é um passo simples, apenas entre no site oficial do Docker, baixe e instale o Docker Desktop
https://www.docker.com/
Etapa 2 concluída.
3º PASSO: Instalando imagens MariaDB e phpMyAdmin
Assim como no passo 1, execute novamente o PowerShell como administrador e siga os seguintes passos:
Primeiro vamos baixar as imagens necessárias, execute os seguintes comandos: docker pull mariadb
docker pull phpmyadmin/phpmyadmin
Agora iremos criar uma "Rede" para que o docker se comunique entre os containers que iremos utilizar. Execute o seguinte comando:
docker network create mynetwork
mynetwork é o nome que defini neste caso, você pode utilizar o nome que achar melhor, porém lembre-se desse nome que iremos utilizar nos próximos passos.
Agora iremos iniciar essas imagens, utilizando os seguintes comandos:
docker run --name mariadb --network=mynetwork -e MYSQL_ROOT_PASSWORD=your_password -d mariadb
your_password = altere pela senha que deseja utilizar no mysql
mynetwork = é o nome que criamos no passo anterior
docker run --name myadmin --network=mynetwork --link mariadb:db -d -p 8080:80 phpmyadmin/phpmyadmin
Lembrando novamente, mynetwork é o nome criado anteriormente
Após esses passos, será possível ver seu container rodando no Docker Desktop:
Etapa 3 concluída.
4º PASSO: Gerando Imagem do TFS e configurações necessárias:
Baixe a TFS, nesse exemplo será o repositório oficial https://github.com/otland/forgottenserver Extraia os arquivos após baixar com o container mariadb e phpmyadmin rodando, acesse http://localhost:8080/ com o login root, e a senha que criou no passo 3, crie uma nova base de dados e importe o arquivo schema.sql do servidor edite o arquivo config.lua.dist
-- MySQL
mysqlHost = "mariadb"
mysqlUser = "root"
mysqlPass = "SUA SENHA CRIADO NO PASSO 3"
mysqlDatabase = "NOME DA DATABASE"
mysqlPort = 3306
mysqlSock = ""
mariadb é o nome do container que estamos rodando o mysql
** Caso queira utilizar todo potencial do seu computador na hora de buildar a TFS, no arquivo Dockerfile, edite a linha 18:
RUN cmake --preset default && cmake --build --config RelWithDebInfo --preset default para
RUN cmake --preset default && cmake --build --config RelWithDebInfo --preset default -- -j 16
onde 16 é o numero de processadores lógicos que deseja ser utilizados, não é necessário utilizar 100% porém quanto mais melhor, porém caso utilize mais do que está disponível poderá travar, então utilize a quantidade mostrada pra menos.
no gerenciador de tarefas aba desempenho, é possível visualizar a quantidade de núcleos e processadores lógicos do seu CPU
Após isso, entre no Power Shell e execute o comando:
docker build -t server .
onde "server" é o nome da imagem que será gerada
Após isso, é só iniciar o servidor com o seguinte comando
docker run --name server --network=mynetwork -p 7171:7171 -p 7172:7172 -d server
lembrando que mynetwork é o nome que geramos no passo 3, e o ultimo parametro é nome da imagem que geramos anteriormente.
Você poderá ver seu sevidor ronando no Docker Desktop:
caso queira parar algum servidor ou iniciar novamente, é só clicar no botão de ação:
Caso precise fazer alguma alteração no server, basta utilizar os comandos de build e run citados anteriormente.
Lembrando que isso é um tutorial básico para rodar o servidor na máquina local, qualquer dúvida ou sugestão, deixe comentário.
-
forkz deu reputação a asgary15 em tfs 1.5 modules with otclient serverside and client sideCrafting.zipTasks.zipTasks.rar
credits : oen44
-
forkz recebeu reputação de Underewar em [ABERTURA OFICIAL] ETERNAL GLOBAL - CRIE JA SUA CONTA!Parabéns pelo projeto!
-
forkz deu reputação a Underewar em [ABERTURA OFICIAL] ETERNAL GLOBAL - CRIE JA SUA CONTA!https://www.eternalglobal.online/
Server Features
Protocol 8.60 and 12.30 Features (working 100%) Bestiary -> Janela Em Contrução para Client 8.60 ja funcional no servidor. Charm -> Janela Em Contrução para Client 8.60 ja funcional no servidor. Store -> Janela Em construção para CLIENT 8.60 Quickloot -> Janela Em Contrução para Client 8.60 ja funcional no servidor. Cast system Wrap system Custom spawns loading syste WarSystem RaidSystem Offline Trainers Sala de Trainers Stamina Refil Itens Donate Boosted Boss Boosted Creature 5 Eventos Automaticos.
12x Updates
NEW ITEMS
Umbral Items ,Cobra Items,Falcon Items,Warzone Items,Gnome Item
NEW AREAS
Issavi
Roshamuul
Oramond
Cobras
Falcons
Warzone 1,2,3
Warzones 4,5,6
-
forkz deu reputação a FeeTads em Correções gesior/myacc + configurações + proteções (ddos?)Salve rapaziada do TK e da comunidade de tibia Otserv.
Recentemente alguns invejosos estão atacando servidores (DDoS), bugando o guilds de varios sites (tirando o lider e membros), assim buga a guild e muita coisa no OT.
Eles vão até o teu servidor e se passam por "adm do deletebra", já ouvi a uns tempos algumas pessoas falando disso, mas como eu tinha contato isso caiu por terra facilmente, um deles foi o ADM brendo, dono do antigo strongerFusion, onde ele me contou toda essa história, essa foi a primeira vez que me foi relatado sobre isso, hoje vejo que está parecendo ser mais frequente.
Caso qualquer pessoa entre no seu OT se passando pelo ADM do deletebra, favor entrar em contato comigo via discord: FeeTads#0246 Te ajudarei a resolver problemas que eles exploram sem cobrar nada por isso, para provar que não necessito atacar outros OT's para ter algum publico. Já tenho em mente quem pode ser essas pessoas, caso alguém tenha numero de telefone, nome real, ou alguma informação a mais dessas pessoas atacando e se passando por mim ou meu sócio, favor enviar no discord, irei atrás de resolver isso.
Vou deixar aqui alguns tutoriais de coisas básicas para você conseguir proteger o seu site desses SQL injections, e mais algumas coisinhas, caso futuramente eu resolva outros bugs explorados, vou postar aqui as correções.
Configurando CloudFlare (SSL) E subDominio (sv.seuIP)
Após isso para que a pessoa não entre no site pelo (sv.seudominio.com.br)
abra o index.php da pasta raiz (está dentro da pasta html)
if($_SERVER['HTTP_HOST'] == 'sv.seuDominio.com.br') { header("Location: https://seuDominio.com.br"); } if($_SERVER['HTTP_HOST'] == 'IP NUMÉRICO') { header("Location: https://seuDominio.com.br"); }
Isso fará que quando a pessoa tente entrar no seu site usando meios não seguros (DNS only) ele redirecione pro seguro > proxiado pela cloudflare
_________________________________________________________________________________________________________________________________________
CORREÇÃO GUILDS.PHP / INJECTION SQL TIRANDO LIDER DA GUILD
PROTEÇÕES PARA DIMINUIR EFEITOS DE DDoS
Espero que isso ajude a muitos, a se prevenir de pessoas que tentam atacar OT's se passando por outros, ou até que vão la pedir pontos para jogar se não eles irão atacar, se prevenir de pessoas mal intencionadas.
PS: Caso você tenha no seu site a pagine "house" e "tickets" recomendo retirar do seu site, pois há maneira de injetar SQL por esses arquivos.
Vou postar em breve o tickets arrumado.
Boa sorte rapaziada, se cuidem, e caso alguém faça isso, por favor entre em contato comigo.
-
forkz deu reputação a Bruno Rezende em (Resolvido)Bug ataque player x player de Skull passa para YellowAlguem tem a solução desse bug? Não consigo encontrar em lugar nenhum.
-
forkz recebeu reputação de FeeTads em GameShop in-game OTClientv8 / Downgrade Nekiro TFS 1.5 V7.72Olá Tibiakings,
Source:
https://github.com/OTCv8/forgottenserver/commit/2839d4d7a8ad3597eff6c786f4ceb9b1b4b4456b#diff-e26c2fbabf42953e9a2f3e4c5749d0699804da9406cb340cc393afd3b7be4955
Datapack:
creaturescripts/creaturescripts.xml
<event type="extendedopcode" name="GameStore" script="game_store.lua" />
creaturescripts/scripts/login.lua
player:registerEvent("GameStore")
creaturescripts/scripts/game_store.lua
https://github.com/OTCv8/otcv8-tools/blob/main/server/shop/shop.lua
lib/lib.lua
dofile('data/lib/core/json.lua')
lib/core/json.lua
https://github.com/OTCv8/otcv8-tools/blob/main/server/json.lua
OTClientv8:
otclient/modules/game_features/features.lua
if(version >= 770) then g_game.enableFeature(GameLooktypeU16) g_game.enableFeature(GameMessageStatements) g_game.enableFeature(GameLoginPacketEncryption) g_game.enableFeature(GameExtendedOpcode) end
Database:
CREATE TABLE `shop_history` ( `id` int(11) NOT NULL, `account` int(11) NOT NULL, `player` int(11) NOT NULL, `date` datetime NOT NULL, `title` varchar(100) NOT NULL, `cost` int(11) NOT NULL, `details` varchar(500) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; ALTER TABLE `shop_history` ADD PRIMARY KEY (`id`); ALTER TABLE `shop_history` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
-
forkz deu reputação a Underewar em GameShop in-game OTClientv8 / Downgrade Nekiro TFS 1.5 V7.72Òtimo, obrigado por contribuir!
-
forkz recebeu reputação de Underewar em GameShop in-game OTClientv8 / Downgrade Nekiro TFS 1.5 V7.72Olá Tibiakings,
Source:
https://github.com/OTCv8/forgottenserver/commit/2839d4d7a8ad3597eff6c786f4ceb9b1b4b4456b#diff-e26c2fbabf42953e9a2f3e4c5749d0699804da9406cb340cc393afd3b7be4955
Datapack:
creaturescripts/creaturescripts.xml
<event type="extendedopcode" name="GameStore" script="game_store.lua" />
creaturescripts/scripts/login.lua
player:registerEvent("GameStore")
creaturescripts/scripts/game_store.lua
https://github.com/OTCv8/otcv8-tools/blob/main/server/shop/shop.lua
lib/lib.lua
dofile('data/lib/core/json.lua')
lib/core/json.lua
https://github.com/OTCv8/otcv8-tools/blob/main/server/json.lua
OTClientv8:
otclient/modules/game_features/features.lua
if(version >= 770) then g_game.enableFeature(GameLooktypeU16) g_game.enableFeature(GameMessageStatements) g_game.enableFeature(GameLoginPacketEncryption) g_game.enableFeature(GameExtendedOpcode) end
Database:
CREATE TABLE `shop_history` ( `id` int(11) NOT NULL, `account` int(11) NOT NULL, `player` int(11) NOT NULL, `date` datetime NOT NULL, `title` varchar(100) NOT NULL, `cost` int(11) NOT NULL, `details` varchar(500) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; ALTER TABLE `shop_history` ADD PRIMARY KEY (`id`); ALTER TABLE `shop_history` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
-
forkz recebeu reputação de Nolangg em TibiaKing OTX 2 + Cast System E Guild WarsEsse erro é em relação aos items que estão agrupados com "-".
Exemplo:
<item id="351-353" name="dirt floor"/>
Como tem que ser:
<item fromid="351" toid="353" name="dirt floor" />
Para usar sem o erro, terá que fazer alteração em todos os items que tem "-" para "toid".
Outra solução é usar o RME da OTAcademy, que não tem esses "bug".
-
forkz deu reputação a Elpeto em Sprites do rotsOi, não sei se estou na area correta mas, essas spr ja vazaram a um bom tempo, Tem gente querendo vender, sendo que vazou, nao acho certo, resolvi disponibilizar pra voces https://www.mediafire.com/file/i8da4kzq2hgzmuv/R_O__T_S_GRAFIKA.rar/file scan: https://www.virustotal.com/gui/file-analysis/ZTlhOGExZTk4Y2JlNjdhNzczYjQyMzM1NWEwYWRkOWY6MTY1MjMxNzI1NQ==