dice-wire#
A framework written in Lua to create TTRPG games for Advanced 5th Edition, Pathfinder 2nd Edition, and more.
All content included in this repository is accessed through the Open RPG Creative (ORC) License. Any mechanical content created using this framework is required to be licensed back to the community through the ORC License. For more information about the ORC license, please see here.
System Updates#
Pathfinder 2E Updates#
At time of writing, this repository will only include character creation options present in the Player Core. Player Core 2 content will be added once that is finished.
OGL 5th Edition (O5E) Updates#
At time of writing, the SRD 5.2 has been published. I have not looked it over, but I will be including it once I finish with Pathfinder 2nd Edition.
Advanced 5th Edition (A5E) Updates#
At time of writing, I have not begun any efforts to add A5E into the framework. Once O5E has been finished and integrated, I will begin to integrate A5E as accessed through the ORC license (see above).
Starfinder 2E Updates#
At time of writing, Starfinder 2E is still in its playtest phase. Once the game is fully released, I will look at integrating it into this framework.
Other Systems#
With the way this framework is being developed, I intend to make this as modular as possible. Thus all one must do is create a "mod" of sorts to add in the data and code needed for any other system. If you would like to have me add them officially, I can do an audit of your code and data and add it as a submodule of this repository. If the schema is too limiting for a system you'd like to add, please let me know by either submitting a pull request or by sending me a DM on BlueSky.
Usage#
You can, of course, just use this as a usual Lua program. The code assumes you load the class file, call it, and assign the resulting function returned to a global variable class. You can then load the hooks file, along with any other libraries you'd like (i.e. the different systems). Due to the nature of this framework, I will not be writing code to load a system's code, but it shouldn't be too difficult to do so.
After loading everything, call the following code:
Hooks:emit("init")
This will call every function callback under the init event.