Table of Contents

The Linux version

The Linux version (LORDFPL.ZIP) is a native door: a 64-bit Linux program that talks to the caller on standard input and output. It needs no dosemu2 to run, only to run DOS IGMs from Other Places. It uses the same data files as lord.js (player.bin, state.bin, lord.ini, lordtxt.lrd and the other .lrd screens), so an existing lord.js game directory can be used as it is. The programs are statically linked, so they run on any x86-64 Linux.

A new game

  1. Make the game directory and unzip the zip into it. The zip keeps the programs executable; check with ls -l lord lordcfg.
    mkdir /sbbs/xtrn/lordfp
    cd /sbbs/xtrn/lordfp
    unzip /path/to/LORDFPL.ZIP
    chmod 755 lord lordcfg     # only if unzip dropped the permissions
  2. Run the setup program from a shell: ./lordcfg. The first run writes lord.ini. Option 1 covers the game options, and option 8 shows the Synchronet settings.
  3. Try it locally: ./lord -l plays on your terminal, as $USER or the name given with -u.
  4. Add the door in SCFG:

^ Setting ^ Value ^

Name LORD - Legend of the Red Dragon
Start-up Directory ../xtrn/lordfp
Command Line /sbbs/xtrn/lordfp/lord -d %n -r %r
Multiple Concurrent Users Yes
I/O Method Standard (stdio), input echo off
Native Executable/Script Yes
Use Shell or New Context No
BBS Drop File Type DOOR32.SYS or GAP DOOR.SYS (any type the game reads works)
Place Drop File In Node Directory

-d %n gives the node directory, and the game finds the drop file there. -r %r passes the caller's screen rows.

Taking over a lord.js game

Skip this for a new install. Point the Linux version at an existing lord.js game directory with -p, or copy lord and lordcfg into it. Players are matched to BBS users by the real name in the drop file, as lord.js does, so they carry on with their characters.

DOS IGMs from Linux

The Linux version starts DOS IGMs under dosemu2 itself, with the caller attached. It doesn't go through Synchronet's external.bat, so the global EMUSETUP.BAT is not used. The settings are in the [IGM] section of lord.ini:

[IGM]
DOSGameDir=   E:\LORDFP\
PreCommands=  fossil.com >NUL
Setting What it does
DOSGameDir The game directory as DOS sees it. Blank means worked out from /sbbs/xtrn (symlinks followed).
PreCommands DOS commands run before each IGM, separated by ;. Set it to fossil.com >NUL so IGMs that need a FOSSIL driver work.
DOSemuCommand How dosemu2 is started. The default matches the Synchronet setup in dosemu2 for Synchronet, so it normally isn't in the file. %d is the node directory, %b the batch file's DOS path and %n the node.

For each IGM visit the game writes the LORD 4.06 files IGMs expect and reads back what the IGM changed (see In-Game Modules). MAINT.BAT runs the same way, once a day at the first login after the daily maintenance; its output is hidden from the caller, and it adds a few seconds to that first login. Logs: error.log in the game directory and igmnode<n>/dosemu_igm.log.

The files

File What it is
lord The game.
lordcfg The setup program (like LORD's LORDCFG.EXE).
lord.ini Options; created by lordcfg if missing (see Game options (lord.ini)).
*.lrd, mlooks.txt, flooks.txt Text and screens (from LORD / lord.js).
LORDTXT.DAT LORD 4.06's stock screens. When it is in the game directory its screens are used in place of lordtxt.lrd's (the plain 4.06 bank, Inn, Turgon's, town …); lordtxt.lrd still gives the ones 4.06 doesn't have. Delete or rename it for lord.js's ANSI screens.
LORD.LDY, EVENTS.LDY LORD 4.06's forest event scripts (see LADY scripts); delete LORD.LDY for the game's built-in versions.
3RDPARTY.DAT The Other Places (IGM) list, empty to start with.
LORDC406.EXE LORD 4.06's LORDCFG, for registering 4.06 (lordcfg's G).

The rest of LORD 4.06's distribution is included as it came, for its docs (LORD.DOC, LADY.DOC, LORDSTRC.PAS for IGM authors) and for DOS IGMs that look for its files. This game doesn't read them, so they can be deleted if not wanted.