Plug-ins and the SDK
A plug-in adds a feature to ProBoard without changing ProBoard itself: a game, a chat client, a custom logon screen, a connection to a door network. v4 ships with several (see Plug-ins) and you can write your own.
What a plug-in is
A plug-in is an ordinary Windows DLL with the extension .P3X. ProBoard.exe loads it when a menu command asks for it, calls one entry point and gives it a table of functions to talk to the board: screen and keyboard, raw caller input and output, the current user, message areas, file transfers and so on. When the plug-in returns, the caller is back at the menu.
This replaces the old 16-bit PEX programs. Old .PEX files do not run on v4. The plug-ins that shipped with ProBoard have been rebuilt as .P3X and are installed for you.
Running a plug-in
- Put the
.P3Xfile in thePEXfolder. - In the Menu Editor, add a command with function 60 (Load a ProBoard SDK file).
- Start the menu data with
/I, then the plug-in's name and any arguments, for example/I SAMPLEPLUGIN hello worldor/I BBSLINK <game>.
Some plug-ins are not on a menu. The login screens (AntiBot and PBMatrix) run during logon. See The Matrix logon.
The rule about bitness and versions
- Win32 and x64 do not mix. A Win32 ProBoard loads only Win32 plug-ins, and an x64 ProBoard only x64 plug-ins. Keep one kind in a
PEXfolder. - A plug-in is checked against the host's version. The plug-in interface has a version number (it is currently 5). When it changes, plug-ins built against an older version refuse to run, with no crash, until they are rebuilt. After an update that changes it, rebuild every plug-in you built yourself.
For developers
See Writing a plug-in.