How would I use Knit to a create a melee combat system with selectable movesets?

I would say never go head first into a framework as it is very complex speaking as someone who switched from the old AerogameFramework to Knit to using my own framework.

From this experience I would say a framework scales with your technical knowledge. For example a framework like Nevermore has too many utility modules that you probably won’t use yet… Probably the reason why #resources:community-resources has a lot of frameworks.

Instead I recommend starting with the base principles as Knit follows OOP principles with it’s singleton classes (Services, Controllers) so rather than following a framework you should follow a programming model instead.

To do this just head straight into it and get your hands dirty.

Start with a very dirty single script:

Then componentalize it. Put the inputs into a single function, realize you can separate the multiple Update functions a lot more.

Here is another example with someone elses ability script simply just separating one long script into components and functions that can easily be moved around, copy pasted, and reorganized.

In Knit the local script handling input would be called “InputController”. Then there will another for the server known as “AbilityService”.

Edit: I am looking into this example years later you only realize that animations will also be loaded a lot in that character added function, that’s another module or controller named “AnimationController” right there.

To be honest the main draw of Knit is to knit and provide networking between the client and server but you can just use this module to just handle it just as easily.

2 Likes