Pitch: Criei um servidor de Palworld na AWS controlado pelo Discord
Quem já tentou manter um servidor dedicado de Palworld sabe que existe um problema: a máquina continua ligada e gerando custos mesmo quando ninguém está jogando.
Para resolver isso, criei o Palworld Cloud Server, um projeto open source que provisiona um servidor dedicado na AWS e permite controlá-lo diretamente pelo Discord.
Como funciona?
Os jogadores autorizados podem utilizar comandos como:
/palworld ligar
/palworld status
/palworld desligar
/palworld configurar
/palworld ajuda
Ao utilizar /palworld ligar, uma instância EC2 é iniciada e o Palworld Dedicated Server é preparado. Quando estiver disponível, o endereço público do servidor é enviado no Discord.
Quando o servidor fica vazio por 20 minutos, por padrão, o projeto:
salva o mundo;
cria um backup;
encerra o Palworld;
desliga a instância EC2.
Assim, você evita pagar por uma máquina ligada durante várias horas sem jogadores.
Por que utilizar?
Além da economia com o desligamento automático, o projeto oferece:
infraestrutura reproduzível com Terraform;
configuração do servidor pelo próprio Discord;
instalação automática do Palworld com SteamCMD;
backups locais e suporte opcional ao S3;
acesso administrativo pelo AWS Session Manager;
senhas armazenadas no AWS Parameter Store;
SSH, RCON e API administrativa fechados por padrão;
testes e validações automatizadas com GitHub Actions.
Também não existe um bot ou servidor web funcionando permanentemente. Os comandos do Discord são processados por uma AWS Lambda sob demanda.
Como começar?
Você precisará de:
uma conta AWS;
uma aplicação no Discord;
Terraform;
AWS CLI;
Python 3.12.
Depois, basta clonar o repositório, configurar os arquivos .env e terraform.tfvars, validar o projeto e executar o deploy:
git clone https://github.com/SchunckLeonardo/palworld-server
cd palworld-server
cp terraform/terraform.tfvars.example terraform/terraform.tfvars
cp .env.example .env
./palworld settings
make validate
./scripts/deploy.sh plan
./scripts/deploy.sh apply
O repositório possui um guia completo de instalação e configuração:
https://github.com/SchunckLeonardo/palworld-server
O projeto cria recursos que podem gerar cobranças na AWS. A proposta não é tornar o servidor gratuito, mas reduzir o desperdício fazendo com que a principal infraestrutura seja utilizada somente quando alguém estiver jogando.
Feedbacks, sugestões e contribuições são muito bem-vindos!