Sponsored By

Soldat source code released and a story of how it all started

Soldat creator reminisces how the game started 18 years ago. Plus an announcement and details about Soldat open source.

Michael Marcinkowski, Blogger

May 26, 2020

3 Min Read
Game Developer logo in a gray background | Game Developer

I still remember the game I started making which was the beginning of Soldat. I was in high school 2000/2001 and in my free time I was coding a game called “Strike of the Dragon”. It was a karate platformer. Something like Karateka by Jordan Mechner but based on ragdoll physics.

 

 

If I’m not mistaken, the first game ever to have ragdolls was Hitman (released in 2000) and the paper written by one of its creators inspired me to do ragdolls in 2D (so I think, Soldat was the first published 2D game ever to have ragdoll physics).

 

 

“Strike of the Dragon” had platformer tile-based maps and when I conceived Soldat in my mind  I knew I wanted to make something like Liero. But bitmap-based maps like Liero were out of the question because of how much memory that would take. Also I wanted the physics to be much smoother. And this is where I remembered Elastomania.

 

 

A game where you drove a motorbike on polygon-based maps. So I learned DirectX 8.0a in like a day and a half and quickly rendered polygons. When I saw those little ragdoll soldiers running on polygons I knew I was onto something big. I followed that intuition and it became reality. The rest is history and now it’s maybe time for you. Because you can join Soldat’s future and take part in its making.


Anyone interested in expanding, improving and fixing Soldat or simply interested in how it was made can now do so with the open source version. I hope this will spawn many amazing creations, mods and even full-conversions. 

The current public version 1.7.1 (the one playable from the homepage and from Steam) is different from the open source version 1.8. The source code for 1.7.1 is available on request for anyone willing to join the official dev team (just email us at [email protected] or contact on Discord). 1.8 is available from gitHub here.

There are two reasons for this double source:

1. To prevent easy to build hacks for the current public version until an anti-hack system is incorporated with the open source version 1.8

2. Soldat 1.8 source code changes have key differences and cannot be easily merged

Soldat 1.8 key differences:

  • Source can be compiled with FreePascal (instead of Delphi 7)

  • Fully cross-platform

  • Uses well known libraries (SDL, OpenAL, GameNetworkingSockets, PhysFS)

  • Old GUI has been removed and needs replacing

  • Config files have been replaced with IdTech style Cvar’s

  • Major refactoring 

In short version 1.8 allows for much more than 1.7.1.1 and we hope to see some amazing creations (like full conversions) built upon this.

More info on how to start developing the game here.

If you feel you can help checkout the To-Do list here.

You can also watch a video as part of my development log series:

<>

And lastly a big thanks for everyone that ever contributed to Soldat, especially for helloer for putting this together and of course all the key contributors (sorted alphabetically):

Peters "daaw" Brede​
Gregor. "Shoozza" A. Cieslak
Nick "EnEsCe" Cooper
Mariano "urraka" Cuatrin
Paweł "helloer" Drzazga
Daniel "Skoskav" Forssten
Justin "splitcoffe" Gascoigne
Joe "jrgp" Gillotti
Chris "ChrisGBK" GreenBank
Michael "tmtgr" Himing
Umut "ExHunter" Karakas
Tomasz "Falcon" Kołosowski
Oliver "Mr" Kuckertz
Tony "zakath" Libell
Jacob "Fryer" Lindberg
Michał "MM" Marcinkowski
Maciek "Mighty" Miłowski
Ryan "FliesLikeABrick" Rawdon
Jason "thestoreybook" Storey
Reko "reko_t" Tiira


And now I’m going back to work on Soldat 2 cya!
and remember to have fun!
MM

Read more about:

Blogs
Daily news, dev blogs, and stories from Game Developer straight to your inbox

You May Also Like