greenfork How do I start developing a new game, what are my very first actions? I want it to appear in the list of all games for a CLI UI 18:26
And what would be the best setup if I would like to also fix any bugs I encounter in the MUGS repositories 18:27
japhb looks at github.com/Raku-MUGS/MUGS/tree/main/docs/howto 21:29
Well shoot, it looks like there's a lot of stubbing in there. :-(
There's a tool for creating the skeleton for new games, genres, and UIs in MUGS-Core: github.com/Raku-MUGS/MUGS-Core/blo...ol.rakumod is the implementation (bin/mugs-tool is the script that launches it) 21:32
On my local system, within my main FOSS project tree, I have a directory MUGS which contains subdirectories from cloning each repo in the MUGS org. 21:33
Generally speaking, you'll want to have consistent versions between MUGS-Core, MUGS-Games, and any MUGS-UI-* that you want to work on. 21:34
So while I'm working on a single release across all of them, if I need to make a change to the core or the games suite, I make the change in MUGS-Core or MUGS-Games and then `zef install . --force` in each updated directory. 21:35
Oh, I should have said: Working on anything above MUGS-Core, I don't want to have to specify a metric ton of include directories, so I just have them `zef install`ed into my Rakudo build, so at most the only `-I` flag I need to use is for the top level UI repo I'm working on. 21:36
All games need a Server, a Client, and one or more UIs. 21:37
Games can share common bits in two ways: By using Genres (which can cascade), or using the Common directory (for data that both Server and Client care about but that is wasted to send over the wire -- like for instance the list of cards in a standard deck). 21:38
Let me know if that helps, or if you still have questions after looking at that stuff. 21:40
(Don't be surprised if you do, the fact that I didn't complete the how to guides last time I was in there means there's still a lot locked in my head. :-P )