Skip to content

Re-implementation of classic "TheSettlers" game series using modern technologies like hardware accelerated graphics and multi-core concurrency.

License

Notifications You must be signed in to change notification settings

skarmux/x-settlers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

X-Settlers

"The Settlers 3/4" re-work. Planned to run on as many platforms as possible, including Android, Raspberry Pi, OSX, GNU/Linux and Windows 10.

  • C Standard: C++17

X-Settlers Topography

Also checkout the OpenS4 Project with more progress in settlers game logic implementation.

Upcoming Features

  • Add perfomance profiling options. (ImGUI)
  • Texture Atlas creation directly from original Settlers 3 GFX files
  • Load S3 graphics and maps directly from s3 install directory
  • Consistent camera dragging behavior, regardless of current zoomlevel
  • Assigning correct texture atlas UV coordinates to each triangle vertex based on field type (grass, rock, sea, etc.)
  • More easily understandable, editable texture assignment. (maybe ID lookup table)
  • Order map into quadtree data structure for fast CPU-side view frustum culling.

Planned Features

  • Generate map texture as LOD mesh replacement at certain camera distance

Table of Contents

Engine Documentation

X-Settlers Documentation

Project Setup

Make sure to include the git submodules when cloning the repository!

> git clone --recurse-submodules https://github.com/Skarmux/X-Settlers
> cd X-Settlers/

Windows

Requirements:

  • Visual Studio 2019
  • CMake 3.19+
  • SDL 2.0 (binaries already included)

Making the Visual Studio solution files.

> cmake . -A x64 -G "Visual Studio 16 2019"

Open the newly created 'X-SETTLERS.sln' solution file in Visual Studio, build and run the project using Visual Studio.

Linux

Requirements:

  • SDL 2.0
  • CMake 3.19+

Generate a Unix Makefile.

> cmake . -A x64 -G "Unix Makefile"
> make

Controls

  • Move camera by right-clicking and dragging the mouse.
  • Zoom in- and out using the scroll wheel

Contributing

At this early stage of development, contributions about certain features of the game- and engine are best brought in at our public discord server:

Settlers IV Modding: https://discord.gg/qXDkvW6

Credits

Maintainer and Core Engine Developer:
Skarmux

Mentor and a helping hand regarding low-level,
C/C++, CMake and other valuable intel:
tehKaiN

Siedler 3 map and gfx decryption ( sied3 ):
Thomas Zeugner (tomsoftware)

Basic core engine setup derived from the awesome
Game Engine Series by Yan Chernikov (TheCherno)

About

Re-implementation of classic "TheSettlers" game series using modern technologies like hardware accelerated graphics and multi-core concurrency.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages