Vlither is a client for Slither.io which can run outside the browser. It is written in C and uses Vulkan for rendering all the graphics, thus providing better CPU/GPU utilization and ridiculously fast rendering. A lot of the game-side code (particularly callback.c, oef.c, and redraw.c) is a word-for-word C translation of the original JavaScript client (protocol version 14). I have tested it on Windows (AMD and Intel) and Ubuntu (Intel).
No dependencies are required to run the program. If your GPU supports at least Vulkan 1.0 (no features or extensions are used), you're good to go.
- Download the latest release.
- Enjoy!
Prerequisites
- Premake for generating makefiles
- Vulkan SDK
- Python 3 (for automated shader compilation)
- GCC (mingw-w64 on Windows)
- GDB (mingw-w64 on Windows) if you plan to debug
- Make (mingw-w64 on Windows)
- X11 dependencies (only for Linux, see here)
On Windows, the program is developed using MSYS2 to get access to GCC, GDB, and Make with mingw-w64 tool chain. It has not been tested with MSVC or Cygwin. It will most likely not work with MSVC out of the box due to the use of POSIX Threads API.
Make sure the VULKAN_SDK environment variable is set properly if on Windows.
git clone https://github.com/for-loop9/vlither.git
cd vlither
py scripts/compile_shaders.py
premake5 --file=build.lua gmake2
make -C build/makefiles config=debug
build/bin/appYou may also work on the project with VS Code by opening the .code-workspace file. All the build tasks (configure first, then build) and launch configurations (debug only) have been set. Make sure you have the required extensions installed:
- Supports all 66 skins
- Custom skin
- Server selection
- Zoom
- Low/high quality
- Leaderboard
- Minimap
- Kill count
- Mac
- Android
The following libraries have been used to develop Vlither:
- GLFW - For windowing and handling input.
- Ignite - My own lightweight wrapper (sort of an engine?) over Vulkan for rendering fast 2D graphics.
- Mongoose - For networking.
- Cimgui - A C wrapper for Dear ImGui, a wonderful immediate mode UI library.
- STB Image - For loading images.
- VMA (Vulkan Memory Allocator) - For memory management in Vulkan.
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
This project was made entirely by one person - me. It is tested by me and a few people in the official Slither.io Discord server. Upon coming across any bugs, I fix them. It is possible that you will come across some while using this program. In the off chance that you do, I would really appreciate if you'd let me know by opening up an issue.




