Door Yannick Spinner

Redacteur

Door Unity-rel meer open source in games

Devs over Godot, transparantie en samenwerking

09-07-2024 • 06:00

85

Singlepage-opmaak

Het kan ook volledig opensource?

Vooralsnog bestaat de opensourcegame-industrie hoofdzakelijk uit één populaire engine die vooral bekendheid krijgt door sporadische mainstream hits van projecten die in principe commercieel zijn. In die gevallen is een opensource-engine gebruikt om een closedsourcegame te maken, iets wat mag onder de MIT-licentie. Maar het kan nog meer opensource. Binnen de opensourcecommunity wordt aan enkele zeer populaire projecten gewerkt die volledig opensource zijn. Een goed voorbeeld hiervan is de gerenommeerde management- en towerdefensegame Mindustry, ontwikkeld door Anton Kramskoi, die beter bekend is onder zijn gebruikersnaam Anuke.

Hij creëerde in 2017 voor een ontwikkelaarsevenement, een zogenoemde gamejam, de basis voor Mindustry. "Ik had een plek nodig om de broncode van de game op te slaan en ik was bekend met GitHub. Het opensource publiceren van mijn game was in eerste instantie dus vooral een kwestie van gemak." Hij publiceerde ook andere games op dit codeplatform. Gebruikers kunnen de broncode van het platform downloaden en het spel zelf compileren; de code is beschikbaar onder de GNU Public License v3. Intussen zijn er overigens ook executables beschikbaar via onder meer Itch.io en een retailversie via Steam.

MindustryMindustryMindustry

Bron: Mindustry / Anuke

Mindustry ging op GitHub een eigen leven leiden. "Over de jaren heen heb ik talloze contributies van vrijwilligers ontvangen; de game zou drastisch anders zijn zonder hen", stelt Anuke. Hij zegt dat de meeste bijdragen kleine veranderingen betreffen, waaronder quality-of-lifeverbeteringen en UI-aanpassingen. Soms komen contributors echter met omvangrijke nieuwe ideeën, waaronder volledige overhauls van bestaande gameplaymechanismen. Toch is de ontwikkeling van de game volgens Anuke niet gedreven door de community: "Uiteindelijk neem ik alle beslissingen en schrijf het merendeel van de code." De enige uitzondering hierop, zo geeft hij toe, zijn de vertalingen van het spel.

Een bijkomend voordeel van de opensourceaard van het spel is volgens de ontwikkelaar de toegankelijkheid voor modders. Als iemand een mod wil ontwikkelen, is diegene niet afhankelijk van documentatie, zo redeneert hij. "Modders kunnen naar de broncode kijken om te achterhalen hoe gamefuncties werken en wat voor de invulling van de mod daaraan veranderd zou moeten worden."

Niet levensvatbaar zonder verkoop

Na enkele jaren van transparante ontwikkeling bracht Anuke zijn game in de herfst van 2019 uit op Steam. Het spel is gratis verkrijgbaar, maar voor gamers die de ontwikkelaar willen steunen, Mindustry in hun Steam-bibliotheek willen hebben of via dat platform multiplayer willen spelen, is er een betaalde versie. Ook gemakzucht speelt volgens de ontwikkelaar een rol. Een gebruiker hoeft de betaalde versie namelijk niet zelf te compileren."Een overweldigend groot deel van alle inkomsten van Mindustry heb ik te danken aan de verkoop via Steam."

De ontwikkelaar maakt er geen geheim van hoe belangrijk de Steam-release voor hem is: "Een overweldigend groot deel van alle inkomsten van Mindustry heb ik te danken aan de verkoop via Steam." Hoewel hij geen exacte bedragen noemt, zou het totaal aan donaties 'niet eens in de buurt van het minimumloon' komen. "Ik kan me niet voorstellen dat een opensourcegame ooit voor een realistisch inkomen zou kunnen zorgen zonder een release op Steam of een vergelijkbaar platform."

Gevaren van opensource

Hij stipt ook enkele potentiële nadelen aan van het opensource uitbrengen van een videogame: "Het is moeilijker om code te auditen dan het zelf te schrijven. Soms glipt er een probleem in bijgedragen code door de controle. Als een functie breekt, kan het soms lang duren om de oorzaak in andermans code te vinden." In het verlengde daarvan zegt hij dat het soms sneller is om iets zelf te schrijven dan code van een contributor aan een game toe te voegen.

"Het is moeilijker om code te auditen dan het zelf te schrijven."Een tweede probleem met het publiceren van een opensourcegame is eventueel misbruik van de gamebestanden door derden. In principe kan iedereen de broncode downloaden en zelf een verdienmodel zoals advertenties toevoegen of de game onder een andere naam op een ander platform verkopen. Dit is een van de inherente problemen van opensourcesoftware met relatief restrictieloze licenties, maar dit weerhoudt ontwikkelaars zoals Anuke er niet van om hun games gratis beschikbaar te maken.

Tegelijkertijd is er een andere stroming binnen de opensourcesubcultuur, namelijk die van opensourceclones van bestaande closedsourcegames. Voorbeelden zijn de moderne Escape Velocity-clone Endless Sky, de opensourceversies van Transport Tycoon Deluxe en RollerCoaster Tycoon 2 in de vorm van respectievelijk OpenTTD en OpenRCT2, de recreatie van het oude RuneScape onder de naam RuneLite of de Minecraft-kopie Craft.