Mybb Plugin Walkthrough - Intro
I plan on, over the course of the next few posts, going into a tutorial of sorts in how I go about creating plugins for the Mybb forum system. All are informal (ie not released on the mybb website heh) so do take them with a grain of salt when it comes to official caliber. Still, I think it would be fun and helpful to take a walk through how even to begin approaching altering the functionality to better suit your forum’s needs. I have a blast doing it!
For an example, I’m going to use the monster of a plugin for a writing hobby site. It's a system that accomplished a few things
Allows managing of character groups and their assigned forums
Allows easy tracking of characters' threads
Allows admins to vet applicants for writing quality
Allows character activity to be tracked
There were a few other minor additions, but these were the major. Suppose we have character packs, each with a group of members. Each pack has a forum that is their own dedicated writing space as well as a Members-only forum only they can see. With all of the permission setting, forum creation, etc... the process of managing this site gets intense.
First question - what do we want to solve? In group managing, it's fairly simple: when a group is created, I want to be able to hit a single submit button and have everything created with minimal effort. Same in group disbanding. In addition, when promoting leaders, I want them to be forum moderators, a part of the Mod usergroup, and usergroup leaders. (In the Mybb system these are three very different things, and some are a pain to set up).
Plugins are powerful. Once you know what shortcuts you want, you can find ways to make it happen. The sky is the limit!
In this tutorial, I expect to go over the following:
Plugin File Structure
Finding the right hooks
Hook Usage
Using Templates
Though, disclaimer: this list is subject to change ;)
For the curious, the plugin I'll be exploring is here - https://github.com/megan-starr9/RPGSuite. Not a particularly polished piece, but definitely complex enough to illustrate some interesting concepts!














