Mod Manager for Stardew Valley
Toen de multiplayer versie van dit game beschikbaar kwam en mijn oudste om medespelers vroeg leek me dit een leuke gelegenheid om wat (online) samen te doen. Dat viel wat tegen maar toen ik vervolgens het spel nader ging leren kennen ontdekte ik dat ik het leuk genoeg vond om zelf te gaan spelen alleen mods (door spelers gemaakte modificaties), daar begon ik voorlopig nog niet aan.
Na een aantal jaren had ik de standaard versie van het spel toch wel gezien en ben ik toch eens voorzichtig naar mods gaan kijken. Eén van de zaken die ik tegenkwam was een mod manager, geschreven in... Python, dus daar moest ik gelijk van weten hoe dat ding in elkaar zat. Andere zaken waren in c# of mono of zoiets geschreven en gecompileerd maar hier zat ook source bij dus dat was mogelijk.
Ik vond hem al gauw te bewerkelijk (of gewoon teveel "anders dan ik het zou doen") maar het gaf me wel het idee om het gebruiken van mods wat te automatiseren.
Het scherm toont de mods die apart te activeren zijn.
Met vinkjes kun je aangeven welke er actief moeten worden of blijven en alle wijzigingen kun je in één keer doorvoeren.
Veel mods maken weer gebruik van andere mods om het lower-level werk te doen en die apart activeren doet niet zoveel, dus die staan er niet altijd bij. De relaties heb ik vastliggen in een configuratiebestand zodat die "library-mods" als het nodig is meegeactiveerd worden.
Dat bestand kan vanuit hier ook handmatig aangepast worden (oorspronkelijk was dat zelfs de enige manier) en het leek me wel nuttig om ook te kunnen controleren of je geen typefouten e.d,. maakt. Nieuwe entries kunnen inmiddels ook in een dialoog worden opgevoerd, om het proces wat te vergemakkelijken.
Ik heb ook iets toegevoegd om de manier waarop de mods getoond worden wat te kunnen reorganiseren zodat je ze desgewenst wat kunt groeperen.
Een toevoeging die ik ook heel nuttig ben gaan vinden is het vanuit deze applicatie kunnen bijwerken van nieuwe versies van mods. Daarvoor moet de directory waarin deze gedownload worden aan het programma bekend zijn (en niet veranderen) waarna je daarheen kunt gaan en de te installeren programma's selecteren. Ze worden geïnstalleerd zoals ze op dat moment zijn dus een nieuwe versie van een inactieve mod blijft inactief.
source: https://github.com/albertvisser/sdvmm/
documentatie: /docs/sdvmm/