This is a simple python file server and dotnet client to check md5 against server files and download if different.
- This is intended for servers to provide an easy way for players to stay up to date with their files, only downloading files the player needs, instead of all of them in a zip.
- This is customizable to your needs; you can change art, text, etc.
- Clone the repo
- Change
resources/background.pngto your own background. 800x450 in size. - Change
resources/icon.coto your own icon. Size isn't too important. - Open
Settings.csand update with your info. - Run in terminal/command prompt/powershell etc:
dotnet build -c Release
- This is cross platform, to build on other platforms use:
- Linux:
dotnet publish -c Release -r linux-x64 - MacOS:
dotnet publish -c Release -r osx-x64May need to be ran on a Mac - Windows:
dotnet publish -c Release -r win-x64 - Each platform needs it's own release.
- The final output will be in
bin/Release/net9.0/win-x64/publish/(These are the only files you need to distribute to players)
- On your server make sure you have python 3.11+ installed
- Run
python3 serv.py - This will create a
files/folder where you will place all files you want the client to be able to check/download. - After placing your files in there, restart the server.
- When you update files, either restart the server or wait one hour. File cache is regenerated every hour.
- After building the project, place the output files in the
samedirectory you'd like the server files to be downloaded to. -
- For example:
/FileUpdaterClient.exe
/map0.mul
/map1.mul
- Run
FileUpdaterClient.exe - This will check your files md5 vs the server's md5 and download any differing or non-existent files.

