176 lines
4.2 KiB
Markdown
176 lines
4.2 KiB
Markdown
# Synchronet BBS - Legend of the Red Dragon
|
|
|
|
This is a Synchronet BBS instance configured to host Legend of the Red Dragon (LORD) and other classic BBS door games.
|
|
|
|
## Features
|
|
|
|
- **Web-based terminal access** via fTelnet (your friends can play in a browser!)
|
|
- **Classic telnet access** on port 23
|
|
- **SSH access** on port 2222
|
|
- **LORD (Legend of the Red Dragon)** - JavaScript port included with Synchronet
|
|
- Additional door games available through Synchronet's xtrn system
|
|
|
|
## Initial Setup
|
|
|
|
### 1. First Run - Initialize Configuration
|
|
|
|
```bash
|
|
cd /home/poprhythm/docker-infrastructure/synchronet
|
|
docker compose up -d
|
|
# Wait a few seconds for initialization
|
|
docker compose down
|
|
sudo chmod -R a+rwX /srv/synchronet
|
|
```
|
|
|
|
### 2. Run Configuration Program
|
|
|
|
Configure your BBS name, sysop info, and enable LORD:
|
|
|
|
```bash
|
|
docker exec -it synchronet scfg
|
|
```
|
|
|
|
In the configuration menu:
|
|
- Navigate to **System** → Set your BBS name and sysop information
|
|
- Navigate to **External Programs** → **Online Programs (Doors)** → **Available Online Programs**
|
|
- Look for LORD or add it if not already configured
|
|
- Save and exit (ESC to go back, then save when prompted)
|
|
|
|
### 3. Enable LORD Door Game
|
|
|
|
LORD comes with Synchronet as a JavaScript implementation. To enable it:
|
|
|
|
```bash
|
|
# Connect to the container
|
|
docker exec -it synchronet bash
|
|
|
|
# Run the install script for LORD
|
|
cd /sbbs
|
|
./exec/jsexec /sbbs/xtrn/install-xtrn.js lord
|
|
|
|
# Exit the container
|
|
exit
|
|
```
|
|
|
|
Alternatively, you can manually configure LORD through scfg:
|
|
- **External Programs** → **Online Programs** → **Main** section
|
|
- Add new program with:
|
|
- **Name**: Legend of the Red Dragon
|
|
- **Internal Code**: LORD
|
|
- **Start-up Directory**: ../xtrn/lord
|
|
- **Command Line**: ?lord.js
|
|
|
|
### 4. Restart the BBS
|
|
|
|
```bash
|
|
docker compose restart
|
|
```
|
|
|
|
## Access Methods
|
|
|
|
### Web Browser (Recommended!)
|
|
|
|
The BBS includes a **web-based terminal** (ttyd) with:
|
|
- Full ANSI color support
|
|
- 56k modem speed simulation for nostalgia
|
|
- Adjustable font size (Ctrl+/Ctrl-/Ctrl+0)
|
|
- Works on any device with a browser
|
|
|
|
Access at: **https://bbs.popcyclical.com** (or your configured domain)
|
|
|
|
### Direct Telnet
|
|
|
|
```bash
|
|
telnet bbs.popcyclical.com 23
|
|
```
|
|
|
|
### SSH
|
|
|
|
```bash
|
|
ssh -p 2222 new@bbs.popcyclical.com
|
|
```
|
|
|
|
## nginx-proxy-manager Configuration
|
|
|
|
Configure in NPM web interface:
|
|
|
|
**Proxy Host for Web Terminal**:
|
|
- Domain: `bbs.popcyclical.com` (or your choice)
|
|
- Forward Hostname/IP: `synchronet-web-terminal`
|
|
- Forward Port: `7681`
|
|
- Enable **WebSocket Support** ✓
|
|
- Enable SSL certificate
|
|
|
|
## Customization
|
|
|
|
### ORMG Branding
|
|
|
|
Custom ANSI art files are included in `customization/` directory:
|
|
|
|
- **answer.ans** - Custom welcome screen with "ORMG" branding instead of "Synchronet"
|
|
- **synch.ans.original** - Backup of original Synchronet ANSI art
|
|
|
|
To apply the ORMG branding:
|
|
```bash
|
|
cp customization/answer.ans /srv/synchronet/ctrl/
|
|
docker restart synchronet
|
|
```
|
|
|
|
To revert to original:
|
|
```bash
|
|
rm /srv/synchronet/ctrl/answer.ans
|
|
docker restart synchronet
|
|
```
|
|
|
|
## File Locations
|
|
|
|
- **Config**: `/srv/synchronet/ctrl/`
|
|
- **Door games**: `/srv/synchronet/xtrn/`
|
|
- **Web files**: `/srv/synchronet/web/`
|
|
- **User data**: `/srv/synchronet/data/`
|
|
- **Custom ANSI**: `/srv/synchronet/ctrl/answer.ans` (welcome screen)
|
|
|
|
## Troubleshooting
|
|
|
|
### Check logs
|
|
|
|
```bash
|
|
docker compose logs -f
|
|
```
|
|
|
|
### Access container shell
|
|
|
|
```bash
|
|
docker exec -it synchronet bash
|
|
```
|
|
|
|
### Reset permissions
|
|
|
|
```bash
|
|
sudo chmod -R a+rwX /srv/synchronet
|
|
```
|
|
|
|
### LORD not appearing
|
|
|
|
1. Check that LORD is enabled in scfg under External Programs
|
|
2. Verify the command line is set correctly
|
|
3. Check `/srv/synchronet/xtrn/lord/` exists and has the game files
|
|
|
|
## Additional Door Games
|
|
|
|
Synchronet includes many door games and can run DOS doors through DOSEMU. Popular ones included:
|
|
- **LORD** (Legend of the Red Dragon)
|
|
- **TradeWars 2002**
|
|
- **BRE (Barren Realms Elite)**
|
|
- **Usurper**
|
|
|
|
Install additional doors through scfg or the install-xtrn.js script.
|
|
|
|
## Sources & Documentation
|
|
|
|
- [Synchronet Docker GitHub](https://github.com/bbs-io/synchronet-docker)
|
|
- [Synchronet Wiki - Door Installation](http://wiki.synchro.net/howto:door:index)
|
|
- [Synchronet Wiki - LORD Setup](http://wiki.synchro.net/howto:door:lord)
|
|
- [fTelnet Web Terminal](https://www.ftelnet.ca/)
|
|
- [LORD Online](https://lord.stabs.org/)
|