====== In-Game Modules ====== In-Game Modules (IGMs) are separate DOS programs that add places to LORD's **Other Places** menu (**O** in the town square). All versions of LORD FP run LORD 4.06 IGMs, listed in ''3RDPARTY.DAT'' in the game directory. ^ Version ^ How IGMs run ^ | DOS | As in LORD 4.06: LORD writes ''INFO.'', ''OUT.'' and ''DO.BAT'', then ends with errorlevel 254; ''START.BAT'' calls ''DO.BAT'' and starts ''LORD.EXE'' again, which puts the player back where they were. | | Linux | Under dosemu2, started by the game itself with the caller attached (see [[linux_version#dos_igms_from_linux|DOS IGMs from Linux]]). | | Windows | In DOSBox-X, with a FOSSIL driver (see [[windows#dos_igms_other_places|the Windows version]] and [[lordsrv:igms]]). | ===== 3RDPARTY.DAT ===== Two lines per IGM: the DOS command line (* is replaced by the node number), then the name players see, with LORD colour codes. Lines starting with '';'' are comments. ;-=-=-=-= LORD'S INTERNAL 3RD PARTY SOFTWARE OPTION =-=-=- E:\LORDF\IGMS\VAULT\VAULT.EXE * E:\LORDF\ 1 `0The `@Dragon `0Vault E:\LORDF\IGMS\PAWN\PAWNSHOP.EXE /N* /GE:\LORDF\ `@THE PAWN SHOP `0v3.40 lordcfg's **O** (Other Places) screen adds and removes entries. ''@LADY '' entries run a LADY script event (see [[lady_scripts]]). ===== What the game does for an IGM ===== On Linux and Windows, for each visit the game writes the LORD 4.06 files an IGM expects into the game directory: * ''PLAYER.DAT'' (236-byte LORD 4.06 records), ''INFO.'', ''OUT.'', ''NODE.DAT'', ''TIME.DAT'', ''LASTHERO.DAT'', ''MARRAGE.DAT'', ''LOGNOW.TXT''; * a ''DOOR.SYS'' in the node directory if there is none. It runs the IGM, and then brings back whatever the IGM changed: player stats, the fairy, ''MAIL.DAT'', new Daily Happenings lines, Violet's marriage, and an ''OUT.'' "QUIT" or "stay here" request. Only the fields the IGM changed are brought back, so other players' moves meanwhile aren't lost. An IGM may change ''PLAYER.DAT'', the FAIRY and time lines of ''INFO.'', ''MAIL.DAT'' and ''LOGNOW.TXT'', and put QUIT or its own command line on the second line of ''OUT.'', as described in ''LORDSTRC.PAS''. ===== Installing an IGM ===== - Make a directory for the IGM inside the game directory, for example ''igms/pawn'', and unzip it there. - Run the IGM's install or setup program under ''de'' (Synchronet on Linux) or at the DOS prompt, from the IGM's directory. Most ask for LORD's directory: give the DOS path of **this** game, such as ''E:\LORDF\'' or ''E:\LORDFP\''. - Check ''3RDPARTY.DAT'': the installer usually adds its entry. Remove any older entry for the same IGM. - If the IGM needs daily maintenance, check that ''MAINT.BAT'' runs it exactly once. - Test it: go to Other Places, enter the IGM, and quit back to LORD. **One game per IGM install.** IGMs keep their own configuration naming LORD's directory. If two games share one IGM directory, they share and overwrite its data. Give each game its own copy. ===== MAINT.BAT ===== After LORD's own daily maintenance, the first login of the day runs ''MAINT.BAT'' from the game directory, if there is one, as LORD 4.06 does. IGMs put their upkeep there. On Linux and Windows it gets the same LORD 4.06 files as an IGM, and what it changes is brought back. The day it last ran is kept in ''LORDFPM.DAT'' (DOS). ===== FOSSIL drivers ===== Some IGMs only talk through a FOSSIL driver. Without one they show a blank screen, or LORD shows "HOLD ON.." and nothing after it. * DOS version on Synchronet: the global ''EMUSETUP.BAT'' with ''fossil.com'' (see [[dosemu2#the_fossil_driver|the FOSSIL driver]]). * Linux version: ''PreCommands=fossil.com >NUL'' in ''[IGM]''. * Windows (LORD Server): LSFOSSIL.COM is loaded by default. ===== Example: The Pawn Shop 3.40 ===== - Unzip ''pawn340.zip'' into ''/sbbs/xtrn/lordf/igms/pawn''. - Under ''de'': ''E:'', ''CD \LORDF\IGMS\PAWN'', then ''PSETUP /C''. Press **I** to install, and give ''E:\LORDF\'' as LORD's directory and your BBS name. It writes ''PAWNSHOP.CFG'' and ''PSLIMITS.CFG'', adds its line to ''3RDPARTY.DAT'' and adds ''PSETUP.EXE /M'' to ''MAINT.BAT''. - Check that ''MAINT.BAT'' has ''PSETUP.EXE /M'' only once. - The Pawn Shop needs a FOSSIL driver (above). The Pawn Shop's documentation warns that ''PSETUP /M'' has crashed some older LORD versions at maintenance with a "player.dat is corrupted" message. Watch the first daily maintenance after installing it. ===== IGMs known to work ===== The Dragon Vault, Barak's House, The Pawn Shop 3.40. Over a thousand LORD IGMs are in the **LORDIGM** file area on the Kalgoorlie Retro BBS.