info.html · 介绍 · play.html · 游玩 · llms.txt · 下载与本地运行 · ZIP · GitHub
SIMud, an Apache-2.0 English LDMud-style mudlib by Allaryin, Acius, Venger, and Malap. LDMud → FluffOS conversion: catalog login lands in the Temple of All Gods. Walkable temple hall and Oldtown street (further streets closed). The saved world.obj tree is not in the snapshot. Not StickLib or Age of Elements.
README
LDMud → FluffOS conversion. Snapshot of git clone https://github.com/shentino/simud.
Slug simud, number 978, port 40287.
This collection’s copy is a snapshot, not a live mirror.
SIMud, an Apache-2.0 English LDMud-style mudlib by Allaryin, Acius, Venger, and Malap. LDMud → FluffOS conversion: archive master uses set_driver_hook and closures. Strategy A login lands in the Temple of All Gods (Oldtown spawn); the saved world.obj tree is not in the snapshot. Not StickLib or Age of Elements.
Authors: Allaryin, Acius, Venger, Malap (Apache 2.0). Full mud/ tree preserved; interactive play here is the Temple of All Gods start (hall + Oldtown street). Published as playable on that start.
Registration flow
Name (2–16 letters) → new character: password (≥6, twice) → Temple of All Gods. Existing names prompt for password only.
Admin / test account
- name:
fluffos - password:
Mud@2026 - privilege: seeded mortal (level 1). This overlay does not auto-god the first player.
Verified live after Strategy A: create fluffos / Mud@2026 → Temple of All Gods; look / look at altar / north hall / north Oldtown / south ×2 / score / quit; reconnect still the shrine.
Local run
cd libs/simud
~/src/fluffos/build-debug/src/driver config.fluffosGame port: 40287.
python3 scripts/mudclient.py 127.0.0.1 40287 --timeout 25 --idle 0.6 \
--send fluffos --send Mud@2026 \
--send look --send score --send quitNOTES · 移植与修复记录
SIMud (simud) — porting notes
Source: git clone https://github.com/shentino/simud (commit 644b7d4f56bf8d4695442b8efcfd56e0a561fe21, cloned 2026-09-05); mudlib root is mud/. Converted 2026-09-05. Config name SIMud.
Slug simud, number 978, port 40287.
This is an LDMud → FluffOS conversion. Discovery triage normally
drops LDMud-lineage libs; this onboard is an explicit exception in the
same family as questmud / acme (AGENTS.md §7.158).
This collection’s copy is a snapshot, not a live mirror. Do not onboard the same upstream repo again.
0. Layout
Repo root is the mudlib. raw/ is gitignored. Original LDMud master
preserved as /secure/master_ldmud.lpc.
1. Convert (2026-09-05)
convert_lib.sh with UTF-8 source encoding (already UTF-8 English /
German sources). .c → .lpc rename + literal .c" fixups +
static→nosave as usual.
2. FluffOS port (LDMud → FluffOS)
The archive is LDMud 3.x (set_driver_hook, inaugurate_master,
#' / unbound_lambda closures, multi-file or directory simul_efun).
FluffOS has none of those driver hooks. A mechanical dialect rewrite of
the whole tree is not attempted; the original login/command stack is
kept as source and not loaded.
config.fluffos: master /catalog/master, simul /catalog/simul_efun,
global include "/catalog/auto.h", port 40287,
lazy resets : 1.
Catalog overlay (questmud §7.158 cluster):
/catalog/master.lpc—get_root_uid/get_bb_uid,creator_filealways returns string"BACKBONE",valid_readincludesload_object/recompile_object/include/restore_object,valid_overridereturns 1,error_handler→/log/catch/catalog/simul_efun.lpc— thincat/log_file/exists/catalog/login.lpc,/catalog/player.lpc— name/password → Void/catalog/void.lpc,/catalog/workshop.lpc— look/score/quit surface
3. Live-verified (native, port 40287)
Create fluffos / Mud@2026. Lands in The Void; look / score /
north (workshop) / south / quit. Reconnect after cold restart
reloads data/f/fluffos.o.
深度功能测试(§10.7, 2026-09-05)
Catalog overlay only — rooms/races/magic/economy under the mud/ tree
are not loaded. Organic fluffos / Mud@2026 on native 40287: Void
look / score (level 1, hp 20/20) / inventory / north workshop /
south / quit persist. Reconnect: Void look / score / quit.
Shop, combat, guild, death: N/A (needs a real LDMud driver).
Logs this boot (PID started 20:09:43, live fd
libs/simud/log/debug.log): stdout + debug.log clean.
work/log/catch proven live with a one-shot catchprobe
(CAUGHT /catalog/player.lpc *catch-path-probe) then reverted;
play itself left no other catch lines.
6. Full dialect port (Strategy A, 2026-09-06)
Catalog Void/workshop is no longer the live start. User asked for the real SIMud spawn, not a demo skeleton.
The archive spawn is ;ch;oldtown;temple;temple2 ("Temple of All
Gods"). SIMud's world is a saved object tree (/world/world.obj);
that dump is not in the git snapshot. Strategy A reconstructs
the spawn path as FluffOS rooms under /world/start/:
/world/start/temple2— inner shrine (login)/world/start/temple— public hall/world/start/oldtown— street outside
/catalog/login still handles name/password. /catalog/player
enter_world() moves into temple2 (fallback Void if load fails).
Live walk (native 40287, 2026-09-06, organic fluffos /
Mud@2026):
- Lands in Temple of All Gods.
look at altar. - North → temple hall. North → Oldtown street (further streets closed). South ×2 back to the shrine.
scorelevel 1, hp 20/20. Quit persist. Reconnect lands in the shrine again.
This-boot live libs/simud/log/debug.log (fd, PID 1693124
BOOT_MARKER1 simud-temple): start rooms compiled. Catch this
walk: empty after the marker.
Published (wasm_status: playable) after user 2026-09-11:
they can consider playable now. Temple / hall / Oldtown street
is the snapshot start. The rest of Oldtown still lived in
world.obj — do not invent streets. Shop / combat / guild are
not in those rooms.
4. What is not ported yet
Full LDMud world object tree (no world.obj in the snapshot),
guilds, protocol stacks, OSB/MG kernel daemons, shop, combat.
Original /world/room uses LDMud closures ((: $1->… :)).
Next simud slice: more Oldtown if we can reconstruct it from
archive files (not by inventing streets). Published as playable
on the existing start.
<!-- librarian-leftover:634 -->
Leftover 634 (2026-09-10, cheap reconfirm, no boot).
find still has no world.obj. Walkable start is still
the three reconstructed rooms under /world/start/
(temple2 / temple / oldtown). Oldtown is south-only
(“further streets are closed”). Shop / combat / guild
are not in those rooms. Do not invent Oldtown. Do not
flip. aoh is already playable (29d73abf400).
<!-- librarian-leftover:635 -->
Leftover 635 (2026-09-10, persist only, no boot).
Same tree as leftover 634 (f0975b36b09): no
world.obj; start still temple2 / temple /
oldtown. Do not invent Oldtown. Do not flip.
<!-- librarian-leftover:636 -->
Leftover 636 (2026-09-11, persist only, no boot).
Same tree as leftover 635 (1ddf6f10123): no
world.obj. Do not invent Oldtown. Do not flip.
<!-- librarian-leftover:637 -->
Leftover 637 (2026-09-11, persist only, no boot).
Same tree as leftover 636 (d60cd9919c7): no
world.obj. Do not invent Oldtown. Do not flip.
<!-- librarian-leftover:638 -->
Leftover 638 (2026-09-11, persist only, no boot).
Same tree as leftover 637 (3dcd14f5af3): no
world.obj. Do not invent Oldtown. Do not flip.
<!-- librarian-leftover:639 -->
Leftover 639 (2026-09-11, persist only, no boot).
Same tree as leftover 638 (b7106c81e28): no
world.obj. Do not invent Oldtown. Do not flip.
<!-- librarian-leftover:640 -->
Leftover 640 (2026-09-11, persist only, no boot).
Same tree as leftover 639 (16876edf6d8): no
world.obj. Do not invent Oldtown. Do not flip.
<!-- librarian-leftover:641 -->
Leftover 641 (2026-09-11, persist only, no boot).
Same tree as leftover 640 (f89c13266ea): no
world.obj. Do not invent Oldtown. Do not flip.
<!-- librarian-leftover:642 -->
Leftover 642 (2026-09-11, persist only, no boot).
Same tree as leftover 641 (25e2370fa27): no
world.obj. Do not invent Oldtown. Do not flip.
<!-- librarian-leftover:643 -->
Leftover 643 (2026-09-11, persist only, no boot).
Same tree as leftover 642 (7860bad89b1): no
world.obj. Do not invent Oldtown. Do not flip.
<!-- librarian-leftover:644 -->
Leftover 644 (2026-09-11). User: they can consider
playable now. Flipped wasm_status to playable on
existing temple / hall / Oldtown evidence. Do not
invent Oldtown. world.obj is still missing.
<!-- librarian-leftover:645 -->
Leftover 645 (2026-09-11, persist only, no boot).
Already playable (546d780ee87). Same tree: no
world.obj. Do not invent Oldtown. Do not flip
again.
<!-- librarian-leftover:646 -->
Leftover 646 (2026-09-11, persist only, no boot).
Already playable (546d780ee87). Same tree as
leftover 645 (bfcd764dde2): no world.obj. Do
not invent Oldtown. Do not flip again.
<!-- librarian-leftover:647 -->
Leftover 647 (2026-09-11). User: source-complete
is done; do not invent. Start rooms still have no
extra archive objects; rest of Oldtown lived in
world.obj. Do not invent streets.