Gamasutra is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Gamasutra: The Art & Business of Making Gamesspacer
View All     RSS
July 15, 2020
arrowPress Releases







If you enjoy reading this site, you might also want to check out these UBM Tech sites:


 

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

by Michael Marcinkowski on 05/26/20 10:32:00 am

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.

 

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


Related Jobs

Airship Syndicate
Airship Syndicate — Austin, Texas, United States
[07.14.20]

Junior to Mid Programmer
Disbelief
Disbelief — Cambridge, Massachusetts, United States
[07.14.20]

Programmer
Mountaintop Studios
Mountaintop Studios — Los Angeles, California, United States
[07.13.20]

Engine/Systems Engineer (remote)
Mountaintop Studios
Mountaintop Studios — Los Angeles, California, United States
[07.13.20]

Graphics Engineer (remote)





Loading Comments

loader image