Home

Awesome

Freeserf.net

Freeserf.net is an authentic remake of the game The Settlers I by BlueByte.

To avoid copyright issues I won't provide any copyrighted data from the original game like music or graphics. To play the game you will therefore need the original DOS or Amiga data files.

Freeserf.net is a C# port and extension of freeserf.

Build status

Download the game

WindowsLinux
v2.1.1v2.1.1

Builds for other platforms will follow later. Only recent Ubuntu versions are tested for Linux version.

Note: For now you need the DOS data file 'SPAx.PA' to run the game, where x stands for the language shortcut. You can also use the Amiga files (either the disk files "*.adf" or the extracted files like "sounds" and "music" will work). Amiga music and sounds work well but the map tiles are not displayed properly.

You can combine DOS and Amiga data (e.g. music from Amiga and graphics from DOS). See configuration for more information about the Freeserf.net configuration.

For Ubuntu make sure you have installed libgdiplus via command sudo apt-get install libgdiplus.

Audio is provided by BASS. The assemblies are contained in the releases but they are for 64-bit systems only. If you have a 32-bit system you have to download them on your own or from here.

Support development

If you want to support this project or other projects of me you can do so here.

<a href="https://www.patreon.com/bePatron?u=44764566"><img src="https://github.com/Pyrdacor/github-images/blob/main/patreon.svg" width="140" height="28" alt="Become a patron" /></a> <a href="https://github.com/sponsors/Pyrdacor"><img src="https://github.com/Pyrdacor/github-images/blob/main/sponsor.svg" width="70" height="24" alt="Sponsor" /></a> Donate Flattr
Thank you very much!

You may also be interested in my other projects:

Current State

Currently I am working on multiplayer support.

All the code from freeserf was ported or re-implemented. AI logic was added in addition.

The renderer is using Silk.net and netcore 3.1.

Things that are missing are some minor parts of AI logic and tutorial games.

The game is playable for most parts. If you find any bugs please report it in the Issue Tracker. You can also look for open issues there.

Normal Game Mission Ingame Menus Map

Roadmap

Phase 1: Porting (100%) - <span style="color:forestgreen">[Finished]</span>

The first step is to port everything from C++ to C# and ensure that the game runs. There may be some quick&dirty implementations or things that could be done better.

Phase 2: Optimizing (100%) - <span style="color:forestgreen">[Finished]</span>

This includes bug fixing and C#-specific optimizations. Moreover this includes performance and stability optimizations if needed. Also the plan is to make everything cross-plattform as much as possible.

Phase 3: Extending (15%) - <span style="color:lightseagreen">[Active]</span>

This includes:

Future Goal

At the end this should become a stable and performant game that runs on many platforms and can be easily compiled and extended by .NET developers.

I am not sure how far this project will go as my time is very limited. I can not promise anything at this point.

Implementation details

The core is implemented as a .NET Standard 2.1 DLL. The renderer is also a .NET Standard 2.1 DLL and uses Silk.NET for rendering. The sound engine is using BASS and is capable of playing MIDI, MOD and SFX/WAV on Windows and Linux.

The main program is based on netcore 3.1 and should run at least on Windows and Ubuntu.

Contribution

If you need help or want to help developing, just contact me. You can also contact me via Issue Tracker by adding a new issue and tag it as question.

There is a more or less up-to-date list with open issues of several relevances and importances.

Ingame key shortcuts

KeyDescription
DELDemolish active building, road or flag
ESCAbort road building, close ingame windows
TABOpen notification
Ctrl+TABReturn to last map position after notification
Shift+MToggle music
Shift+SToggle sound effects
0Reset game speed to normal
9Maximize game speed
PPause or resume game
+Increase game speed
-Decrease game speed
>Zoom in
<Zoom out
F11Toggle fullscreen mode
Ctrl+FToggle fullscreen mode
F5Quick save
F6Open save dialog
Shift+QOpen quit dialog
Shift+POpen player overview
BToggle possible builds
HGo to your own castle
JJump between players (AIvsAI and spectators only)
MToggle minimap