Layers

  1. Framework Abstraction (Makes the engine less-tightly coupled to Love.)
  2. Engine
    1. core (ECS, FSM, Scheduler, Camera, etc…)
    2. abstractions (AbstractGame, AbstractWorld, etc…)
  3. templates (SimpleGame, StatefulGame, SingleScreenWorld, etc…)
  4. jammy (Inventory, Combat, etc…)

Other

  1. Tools
  2. Tool integration

TODO

  1. Switch to a better IDE, one with support for one of the popular Lua documentation tools (LDocs, etc…)
  2. In cat-paw/ put a few comments - what is essential to the understanding of some bit of code, etc…
  3. In docs/ mirror the structure of cat-paw/ but each file will be populated with only comments, fully documenting that