This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
fabio:fabio [2020/03/27 07:18] – created jasonp | fabio:fabio [2020/03/29 08:08] (current) – [Game Code Pages] jasonp | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Introduction ====== | ====== Introduction ====== | ||
- | FabIO is a C++ Discord bot using Sleepy Discord (docs at: [[https:// | + | FabIO is a C++ Discord bot using Sleepy Discord (docs at: [[https:// |
Given you have access to this forum, you can program the bot using the guide below. Essentially it is as simple as making a wiki page for your game, and then telling the bot to load the code from that wiki page. | Given you have access to this forum, you can program the bot using the guide below. Essentially it is as simple as making a wiki page for your game, and then telling the bot to load the code from that wiki page. | ||
Line 7: | Line 7: | ||
===== Programming Details ===== | ===== Programming Details ===== | ||
+ | I am not going to list all the programming details here for the bot, but the general overview. If you are working on these scripts I'm sure you'll be in Discord to ask any specific questions you might have. Also, I'm recording a bit here to make sure I remember how things work! | ||
+ | ==== Basic Concepts ==== | ||
+ | |||
+ | The FabIO bot runs LUA scripts at its core. It is just a frame for them, and allows those scripts to be called from Discord and then output an html view that is fed to a local server. In this way the scripts are the ' | ||
+ | |||
+ | * **Games**: These are groups of scripts that are all loaded to support the functions of a game. They also contain embedded themes for the web view, but those can be overridden by an instance easily. So a game is just a bunch of scripts, that give functions to the players. Game's will be able to inherit from other games, so it's possible your game ' | ||
+ | * **Instances**: | ||
+ | |||
+ | ==== Wiki Linkage ==== | ||
+ | |||
+ | The FabIO bot maintains local copies of scripts from games on this wiki. Editing a game page here has no immediate effect. You must tell the bot in DM to $upload < | ||
+ | |||
+ | ==== HTML Output ==== | ||
+ | |||
+ | You can find the output of the bot here: [[http:// | ||
===== Game Code Pages ===== | ===== Game Code Pages ===== | ||
+ | |||
+ | * [[boot]] - This is a common script loaded by all games before anything else starts. Maintained by JasonP. | ||
* [[std-lite]] - A generic all purpose game with support for a lot of very basic stuff. Counters, Dice, Sheets, etc. Maintained by JasonP. | * [[std-lite]] - A generic all purpose game with support for a lot of very basic stuff. Counters, Dice, Sheets, etc. Maintained by JasonP. |