mrdev/lugo4php

Cliente PHP para Lugo Bots

dev-main 2024-09-28 15:45 UTC

This package is auto-updated.

Last update: 2025-07-28 17:33:04 UTC


README

Lugo 4 PHP

Cliente em PHP para criar Lugo Bots

PRs welcome! contributors last update forks stars open issues license

Alt text


🌟 Sobre o projeto

Lugo4PHP é um pacote feito em PHP criado para conectar um bot com servidor do Lugo Bots, escondendo a complexidade da conexão gRPC e disponibilizando várias classes e métodos que auxiliam um desenvolvedor a criar seu próprio bot.

🎯 Features

  • Conectar ao game server do Lugo Bots.
  • Classe env para capturar as variáveis e validar.
  • Wrapper de classes do game para uma tipagem mais forte.
  • Vários métodos comumente usadas já embutido no Point e no Vector2D, por exemplo add(), scale(), subtract(), divide() e outros...
  • Vários métodos comumente usadas já embutido no Player e Ball, por exemplo $ball->distanceToPoint($point), $ball->directionToPlayer($player) e outros...
  • Vários métodos de atalho para um acesso mais rápido e claro, por exemplo $inspector->getBallDirection() em vez de $inspector->getBall()->getVelocity()->getDirection().
  • Vários métodos alternativos para gerar uma ordem, por exemplo $inspector->makeOrderLookAtDirection($direction), $inspector->makeOrderMoveToRegion($region), $inspector->makeOrderKickToPlayer($player) e outros...
  • Vários métodos com duplicados, podendo optar por um que lança uma exceção ou um retorno nulo, por exemplo $inspector->getMyPlayer(10) (lança um erro caso o jogador não exista) e $inspector->tryGetMyPlayer(10) (retorna null caso o jogador não exista).
  • 94% do código coberto por testes automatizados, facilitando o incremento de novas funcionalidades, com uma change muito menor de quebrar as já existentes.
  • Totalmente documentada, para uma busca rápida, acesse: Lugo4php Docs.

⚡ Como usar

Veja o the-dummies-php, um bot criado usando esse pacote


🔧 Desenvolvimento

Clone o projeto

  git clone https://github.com/mauriciorobertodev/lugo4php.git

Entre na pasta do projeto

  cd lugo4php

Instale as dependências

  composer install

Rode um jogo de teste usando o BotTester

  docker compose -f ./example/bot/docker-compose.yml up --remove-orphans

👋 Contribuindo

Contribuições são sempre bem vindas!

  1. Faça o fork do projeto (https://github.com/mauriciorobertodev/lugo4php/fork)
  2. Crie uma branch para sua modificação (git checkout -b meu-novo-recurso)
  3. Faça o commit (git commit -am 'Adicionando um novo recurso...')
  4. Push (git push origin meu-novo-recurso)
  5. Crie um novo Pull Request



🔒 License

Licença MIT (MIT). Consulte o arquivo de licença para obter mais informações.


🔗 Links úteis

Portfolio: mauricioroberto.com/

Link do projeto: https://github.com/mauriciorobertodev/lugo4php

Link da documentação: https://lugo4php.mauricioroberto.com

Link do the-dummies-php: https://github.com/mauriciorobertodev/the-dummies-php


💎 Créditos/Reconhecimento


🔬 Referências