====== Door networks ====== A door network lets your callers play games hosted on someone else's computer. ProBoard connects the caller to the game through a **plug-in**, so you install no door program and need no drop files or DOSBox. All three plug-ins run inside ''ProBoard.exe'' and relay the caller's connection. They work for Telnet, SSH and RLogin callers, and from a local logon. Copy the plug-in to your ''PEX'' folder (PBInstall does this), use the build that matches your ''ProBoard.exe'' (x64 with x64, Win32 with Win32), and make a menu item with the function **Load a ProBoard SDK File** (function 60) whose data starts with ''/I'' and the plug-in name. ===== BBSLink ===== - Register with BBSLink and note your ''SysCode'', ''AuthCode'' and ''SchemeCode'' from its control panel. - Copy ''BBSLINK.INI.template'' to ''BBSLINK.INI'' in your data folder. Fill in the three codes, and add a line under ''[Games]'' for each game you offer, for example ''LORD=lord''. - Menu item data: ''/I BBSLINK '', where the menu code is the name from your ''[Games]'' list. ===== DoorParty ===== - Install and run **dpc2** (a separate program from echicken) with your own DoorParty credentials. - Copy ''DOORPARTY.INI.template'' to ''DOORPARTY.INI'' in your data folder. Fill in the ''SystemTag'' DoorParty gave you, and a ''Password'' of your choosing. - Menu item data: ''/I DOORPARTY''. No game name is needed; DoorParty shows its own lobby. ===== Skull Crash ===== Skull Crash is a multi-player game run by NuSkooler on Xibalba BBS. Boards reach it through the SCLink gateway: your board proves who it is with a shared secret, the game hands back a one-time ticket for each caller, and the caller is connected to the game. **What you need** - Register with the Skull Crash operator. Give them your board name, the software (ProBoard), your **fixed** public IP addresses (both IPv4 and IPv6 if the machine has both, and both must be registered) and the character set (CP437). You get a **board tag** (2 to 6 characters, A to Z and 0 to 9; your callers appear in the game as ''Name@TAG''), a **secret** (64 hexadecimal characters; treat it like a password) and a **level**. - Allow outbound connections from the board's computer to ''sclink.xibalba.vip'' on port 4443 (sign-in) and port 4514 (encrypted play) or 4513 (plain play, if the operator opened it for you). Nothing inbound is needed. **Set up** - Copy ''SKULL-CRASH.P3X'' to ''PEX'' (PBInstall does this). - Copy ''SKULL-CRASH.INI.template'' to ''Configs\SKULL-CRASH.INI'' and fill in ''Board'' and ''Secret'': [SkullCrash] Board=ABC Secret=0123...(64 hex characters)... Level=tls - Make a menu item with function 60 and the data ''/I SKULL-CRASH'' (the hyphen is part of the name). **Levels.** Each board is issued a minimum level and cannot connect below it; a higher level is always accepted. ''tls'' uses an HTTPS sign-in and an encrypted play connection (strongest, and the default). ''tls-auth'' uses an HTTPS sign-in and a plain play connection (the game text is not encrypted). ''plain'' uses an HTTP sign-in and a plain connection, for boards without TLS support only. The secret itself never crosses the wire at any level. **Testing.** Run these as menu item data: ^ Data ^ What it does ^ | ''/I SKULL-CRASH /SELFTEST'' | Checks the built-in signing code. No configuration or network needed. | | ''/I SKULL-CRASH /TEST'' | Checks the INI file and that the server answers. Nothing is created on the game side. | | ''/I SKULL-CRASH /DIAG'' | A connectivity check for IPv4 and IPv6 with a verdict, without playing. | | ''/I SKULL-CRASH'' | Plays the game. | **Finding a problem.** Everything the plug-in does is written to ''LOGS\SKULL-CRASH.LOG'' (the secret is never written). Main events also go to ''PROBOARD.LOG'' with the prefix //SkullCrash://. What a caller sees: ^ Message ^ Meaning ^ | //Skull Crash is not set up on this board yet.// | The INI file is missing or incomplete. | | //Skull Crash is unreachable right now.// | The game is down, a firewall blocks the ports, the name does not resolve, or there is a certificate problem. | | //Access denied. Tell your sysop.// | Wrong secret, tag or level, or this machine's address is not one registered for your board. | | //Skull Crash is busy.// | Board limits, or too many failures from your address. | | //No new players from this board today.// | The daily cap for new accounts from your board was reached. | | //Connection error. Tell your sysop.// | A malformed request. Run ''/SELFTEST'' and check the log. | If your machine reaches the Internet over both IPv4 and IPv6, **both** addresses must be registered, or the game says //Access denied//. Alternatively set ''IpVersion=4'' (or 6) and ''Http=builtin'' in the INI file so everything uses one address. **Status.** Working at level ''tls-auth''. Level ''tls'' needs port 4514 to be reachable from your machine; if it is not, keep ''tls-auth'' or ask the operator about that port. Skull Crash does not send the caller's IP address to the game. PBTerm hides the game's hidden capability probe and answers the SyncTERM version query itself; other terminals can show a stray line, which the plug-in removes by default (''StripApc=yes'').