Luanti Clients... ON AN ESP32!
Note: While even old WROOM-boards can handle can handle small minetest-game servers, I recommend you use an ESP32-S3. This essentially becomes a requirement once you wish to connect to Mineclonia servers.
This project is in a VERY early stage of development! Some, if not most portions of the code are extremly ugly and need a revamp (i.e. I made a mistake while parsing the SRP_S_B bytes and hardcoded size s to temporaily make this work).
- Install ESP-IDF on your system. Refer to Espressif's manual.
- Open a shell in which you can execute
idf.py
in whatever directory you cloned this repository into - run
idf.py build
- (to flash, run
idf.py flash
afterwards)
- Connect your esp32 to your network
- Make an instance of the
LuantiClient
struct and overwrite it completly with 0. - Setting the fields you want/need:
- Run LuantiClient_connect
- Run LuantiClient_tick as often as possible while your ESP32 is connected to the Luanti-Server
I recommend you look at the example provided.
- Espressif for providing the public domain wifi code
- est31 and Tom Cocagne for implementing a minimal version of SRP, a tiny adjustment had been made to make this run on an ESP-32 (it tries to use /dev/urandom for filling a buffer if not on Windows)
- chfast for their minimal implementation of GMP (dependency of the SRP-libary)