Hier volgt een nieuwe update over de ontwikkeling van Russia 1917. November was bijzonder intensief, met vooruitgang op het vlak van de interface, de historische inhoud en de kunstmatige intelligentie.
🌐 Update van de startpagina
De startpagina van het spel is herwerkt:
- De knoppen zijn nu dynamisch, waardoor de interface levendiger aanvoelt.
- Een nieuw menu toont de functies die voor toekomstige versies gepland zijn, zodat bezoekers de ontwikkeling van het project beter kunnen volgen.

⚔️ Toevoeging van de 21 vijandelijke kampen
De bolsjewieken moeten het nu opnemen tegen 21 vijandelijke krachten, wat de complexiteit van de burgeroorlog en de buitenlandse interventies weerspiegelt.
Dit is de volledige lijst:
- De Duitsers
- De Noord-Amerikanen (troepen die in Moermansk en Archangelsk aankwamen)
- De Wit-Russische burgerlijke nationalisten
- De Finse burgerlijke nationalisten
- De Oekraïense burgerlijke nationalisten (los van de Machnovsjtsjina)
- De Britten (die in twee verschillende zones tussenbeide komen: Noord-Rusland en de Kaukasus)
- De Fransen (Franse troepen die in Odessa landden)
- De Japanners (interventie in Chabarovsk)
- Het Tsjechische Legioen (dat in Omsk in opstand kwam en Vladivostok probeerde te bereiken)
- De Poolse burgerlijke nationalisten
- De Witte legers van Denikin
- De Witte legers van Koltsjak
- De Witte legers van Joedenitsj
- De Basmatsji (in opstand in Kazachstan)
- De anarchisten van Kronstadt
- De Machnovsjtsjina, de Oekraïense anarchisten
- De Groenen (boeren die zich verzetten tegen het beleid van het “Oorlogscommunisme”)
- De Balten (de bourgeoisie van Estland, Litouwen en Letland)
- De troepen die trouw bleven aan de regering-Kerenski
Om gameplayredenen beschouwt de computer al deze facties als “Witten”.
Historisch gezien worden hierdoor zeer verschillende bewegingen samengebracht. Zo worden de anarchisten van Kronstadt en de troepen van Koltsjak beide als “Wit” aangeduid en vechten ze niet tegen elkaar. Dat is historisch gezien zeker niet helemaal correct, maar deze vereenvoudiging houdt de gameplay duidelijk en eenvoudig voor de speler.
Er zijn ook illustraties toegevoegd om al deze troepen visueel van elkaar te onderscheiden.

🧩 Interne structuur: hoe verschijnen de troepen?
Om het verschijnen en verdwijnen van eenheden te beheren, hebben we een grote tabel met 85 rijen ontworpen, waarbij elke rij een maand van de burgeroorlog vertegenwoordigt.
Elke rij bevat:
- de nieuwe troepen die in het spel verschijnen,
- de troepen die moeten verdwijnen,
- de bijbehorende historische gebeurtenissen.
Aan het begin van elke maand doorloopt het programma deze tabel om de situatie te laten evolueren.
Maar deze tabel staat niet vast.
Ze verandert dynamisch op basis van de beslissingen van de speler.
✦ Voorbeeld: de onafhankelijkheid van Finland
- Als de speler de Finse onafhankelijkheid erkent, zoals historisch gebeurde, grijpen de Duitsers onmiddellijk in om de Finse burgerlijke krachten te steunen.
- Als de speler weigert, kunnen we aannemen dat de Duitse interventie later zou hebben plaatsgevonden. In dat geval wordt de overeenkomstige rij in de tabel naar een andere datum verplaatst.
Dit systeem maakt het mogelijk om de historische chronologie te veranderen of een nieuwe te creëren, terwijl het eenvoudig en flexibel blijft.
🧠 Verbeteringen aan de “Witte” AI
De AI is nu georganiseerd in vier grote functies, elk met een specifieke rol.
1️⃣ Functie “Beslissing van de maand”
Aan het begin van elke maand controleert de AI in de dynamische tabel:
- welke troepen moeten verschijnen,
- welke troepen moeten worden verwijderd,
- welke gebeurtenissen worden geactiveerd.
2️⃣ Functie “Informatie”
Daarna analyseert de AI de algemene situatie:
- totaal aantal troepen,
- aantal bondgenoten in de buurt,
- aantal vijanden in de buurt,
- gecontroleerde steden,
- nabijgelegen geallieerde steden,
- positie van de dichtstbijzijnde bolsjewistische eenheid,
- dichtstbijzijnde vijandelijke of neutrale stad.
Deze stap creëert een soort “mentale kaart” waarmee de AI’s samenhangende beslissingen kunnen nemen.
3️⃣ Functie “Actie”
Op basis van de verzamelde informatie kiest de AI een strategie:
- een vijandelijke eenheid aanvallen,
- een stad aanvallen,
- of ter plaatse blijven om te verdedigen.
Een soldaat, meestal degene die het dichtst bij het doel staat, krijgt vervolgens een duidelijk bevel.
Nationalistische facties hebben wel een beperkt actiegebied om absurde situaties te vermijden, zoals Japanse troepen in Warschau.
4️⃣ Functie “Troepen creëren”
De AI beoordeelt of ze haar troepenmacht moet versterken.
Vervolgens beslist ze of er al dan niet nieuwe eenheden worden gemaakt, rekening houdend met:
- de krachtsverhouding tussen bondgenoten en vijanden,
- een willekeurig element om het gedrag menselijker te maken.
Door het systeem over verschillende AI’s te verdelen, kan elke functie bovendien op een andere snelheid draaien.
De informatie-AI draait elke seconde om de aanwezigheid van vijanden in realtime bij te werken.
De actie-AI draait minder vaak, omdat ze meer berekeningen vereist en handelt op basis van de context en de doelstellingen.
Zo kan ze bijvoorbeeld afwachten of een eerdere actie heeft gewerkt voordat ze een nieuwe begint.
⚙️ Optimalisatie
De volgende stap is deze berekeningen te vereenvoudigen en te optimaliseren om vertragingen te voorkomen.
Het doel is een evenwicht te vinden tussen:
- reactiesnelheid,
- rekentijd,
- geloofwaardig AI-gedrag.
Als de AI te snel zou reageren, zou ze al haar troepen in de eerste seconde uitsturen, waardoor gevechten veel te moeilijk of juist te gemakkelijk zouden worden.
We werken daarom aan gedrag dat natuurlijker en vooral gevarieerder is.
🤝 Gemeenschap
Er is een speciale Discord opgericht: “Marxist Games – Russia 1917”.
Die zal worden gebruikt om jullie feedback te verzamelen, ideeën voor te stellen, functies te testen en te praten over de geschiedenis van de Revolutie en de burgeroorlog.