Midgarts Client is an attempt to write a modern client implementation of the old classic Ragnarök Online game.
Current Screenshots:
- Introduction (coming soon)
- TODO
- Dependencies
- Building & Running
- Tools
- Examples
Please have a look at the open milestones:
Milestone | Description |
---|---|
Character Graphics | Everything related to rendering character sprites, including character attachments, sprite animations and such. |
World Graphics | Everything related to world graphics, including 3D objects, terrain, water and lights. |
-
CentOS/Fedora-like Linux Distros:
SDL2{,_image,_mixer,_ttf,_gfx}-devel alsa-lib-devel libX11-devel libXcursor-devel libXrandr-devel libXinerama-devel mesa-libGL-devel libXi-devel libXxf86vm-devel
-
Arch Linux:
pacman -S sdl2{,_image,_mixer,_ttf,_gfx}
-
MacOS:
brew install sdl2{,_image,_mixer,_ttf,_gfx} pkg-config
- Generate and env file by copying the distributed (.env.dist) file:
cp .env.dist .env
- Make sure to alter the
GRF_FILE_PATH
variable on the.env
file:
GRF_FILE_PATH=/path/to/data.grf
- Build the main binary by running:
go build -o midgarts ./cmd/sdlclient/main.go
- Run the binary:
./midgarts
Latest screenshots:
grfFilef, err := grf.Load("data.grf")
grfEntry, err := f.GetEntry("data\sprite\ork_warrior.spr")
sprFile, err := spr.Load(e.Data)
outputFile, err := os.Create("out/test.png")
if err != nil {
log.Fatal(err)
}
defer outputFile.Close()
if err = png.Encode(outputFile, img); err != nil {
log.Fatal(err)
}