mud_sanc 板


LINE

tmi2_mudlib_v3_改 2014/06/30 版 https://drive.google.com/file/d/19GeXBEqi6uY_KR_K61Gb-giaq6d9dte_ 最近有人写信跟我要这个,就顺手把它放在网路硬碟上,大家 有兴趣的话可以下载。 修改日志如下,顺便在 mud_sanc 板留个文字纪录。 // Laechan@Sanc built in 2014/05/26 201405 26 bin 目录下建立启动 mud 捷径、以及建立方式的图片说明 /cmds 目录下所有档案的换行符号更换 /include 目录下所有档案的换行符号更换 /include/mudlib.h 增加 include "ansi.h" /include/ansi.h 增加 HIP 定义栏(=HIK) ===================初期取得 admin 权限的过程=================== (关键在一开始有 AUTO_WIZHOOD 时所增设的 wizard 参数) /adm/etc/groups 换行符号更换、增加 "laechan" 为 admin 然後才创角色 "laechan", 登入後 save 然後 quit mudos 关闭再重新启动, login "laechan" 下指令 groups 确认 "laechan" 已属於 admin 群组後 quit 编辑 /data/std/user/l/laechan.o,在 PATH 栏新增 /cmds/adm login "laechan", 执行 /cmds/adm 目录下的指令确认可使用 ===================初期取得 admin 权限的方法=================== 亦可参阅 如何取得admin权限.txt 档 27 将 /include/config.h 里的 AUTO_WIZHOOD abort 掉 (从这时起创的新角色就全部不带 wizard 及巫师相关权限) PS.要开放 mud 前务必移除这种暂行的做法,改以正规的做法去做 建立 /d/area 目录,做为日後存放区域使用 └例如 /d/area/lodoss 代表 "lodoss" 这个区域 或是 /d/area/main 代表 "主大陆" (其子目录为该大陆下的各区域) 或是 /d/area/laechan 代表 "laechan" 这个 wiz 的区域目录 或是 /d/area/room/lodoss 代表 "lodoss" 这个区域的 "房间" 目录 PS.开发初期就要规划好要采取什麽样的区域目录树状配置 /d 目录下所有档案的换行符号更换 /adm 目录下所有档案的换行符号更换 /std 目录下所有档案的换行符号更换 /ftp 目录下所有档案的换行符号更换 /obj 目录下所有档案的换行符号更换 /www 目录下所有档案的换行符号更换 /student 目录下所有档案的换行符号更换 PS.剩下对 mudos 原始档本身的换行符号更换 从死亡状态(ghost)变回一般状态的方法: 下指令 revive。 新增 /adm/daemons/chinesed.c,并加进 /adm/etc/preload 内 /adm/simul_efun/chinese.c,并加进 /adm/obj/simul_efun.c 内 /cmds/adm/_chinese.c,update 後做 rehash /cmds/adm 新增 /cmds/wiz/_running.c,update 後做 rehash /cmds/wiz 并新增 /open/tmp 目录用来存放 running 的暂存档 PS.有了 running 就可用来测试新增的 simul_efun =================以 running 测试 chinese 相关================= > running To end message type ".". To abort, type ~q. To view help, type ~h. __________________________________________________________________ write(chinese_number(123456789)+"\n"+ to_chinese("male")+"\n"+ (running code 区) skill_name("barefist")+"\n"); . <= 编辑结束 ========== 程式执行区 ========== 一亿两千三百四十五万六千七百八十九 男性 (三个 simul_efun 皆正确执行) 空手搏斗 ========== 程式执行区 ========== =================以 running 测试 chinese 相关================= /adm/daemons/logind.c、/adm/daemons/newuserd.c 初步中文化 /include/login.h 初步中文化 /adm/news/welcome、/adm/news/nplayer_intro 初步中文化 /adm/news/nplayer_news、/adm/news/news 初步中文化 28 新增 sanc 的 /cmds/std/_gps.c PS.补入後 update _gps.c 并下 rehash /cmds/std 指令,即可使用 gps 更动 /adm/etc/global_aliases 加进 map = gps PS.更动後 update /adm/daemons/ga_server.c,即可使用 map 新增 sanc 的 /cmds/wiz/_runmap.c (尚有问题) 更动 /include/mudlib.h 增加 #define DOOR_NOT_EXIST 定义 更动 /cmds/std/_go.c 修正 mapping tmp 的宣告错误,并增加上述定义 的作用范围 更动 /cmds/std/_look.c 增加上述定义的作用范围、做初步中文化 新增 sanc 的 /std/npc.c,所有 npc 皆 clone 自这个档案 新增 /adm/daemons/recordd.c,初期用以支援储存 npc 资料 └修改 /adm/etc/preload 增加预载 └修改 /include/daemons.h 增加 #define RECORD_D 定义项 新增 /cmds/wiz/_npc.c,初期用来管理现有的 npc 资料 修改 /std/room.c 增加 set_npcs 函数,用来生成 npc /d/area/wiz.c 有 npc 设定范例 新增 sanc 的 /d/area/wiz.c 房间(wiz 初始登入房间) 新增 sanc 的 /d/area/newbie/ 区域(新手村, 玩家初始登入房间) 修改 /include/daemons.h,改动 START 内容及新增 WIZ_START 修改 /std/user.c,区隔 wiz 与 ppl 的登入房间 修改 /adm/etc/global_aliases 增加 dep = deposit、wit = withdraw 新增 sanc 的 /d/area/shadow/1/ 区域(影子传说区域, 暂不生怪) 新增 sanc 的 /d/area/sisdic/ 区域(西斯迪克港) 新增 sanc 的 /d/area/whitetile/ 区域(白瓦镇) PS.这个区域包含旧型态与新型态(132.c 起)两部份 29 重写该 mud 专属的 /adm/daemons/chinesed.c 的 chinese_number 函数 修改 /adm/simul_efun/format_string.c 新增 substr 函数 PS.新增後 update /adm/simul_efun/format_string.c 再 update /adm/obj/simul_efun.c 即可使用新的全域函数(或重启 mud 亦可) 修改 /adm/etc/access,将 /d/area 设为 (all)[rw] PS./d/area/adm/d_master.c 可对 /d/area 目录做存取限制 /d/area/whitetile/adm/d_master.c 可对 /d/area/whitetile 做存 取限制 建立 /open/cmds 目录及相关各子目录 修改 /cmds/wiz/_running.c 使其存取 /open/cmds/running 目录 修改 /cmds/wiz/_runmap.c 使其存取 /open/cmds/runmap 目录 新增 /cmds/std/_note.c 指令并使其存取 /open/cmds/note 目录,储存 档设定为 /data/note.o PS.这样就有公告指令可使用 新增 /cmds/std/_view.c 指令并采用 sanc style 修改 /include/commands.h 新增 CMD_VIEW = /cmds/std/_view 定义 PS.这样就有物件资料观看指令可使用 重写 /std/shop.c、storeroom.c、eq_shop.c、wp_shop.c 修改 /include/mudlib.h 增加 SHOP、EQ_SHOP、WP_SHOP 等定义 PS.这样就有基本的商店及指令 list/buy/sell/id 可使用 新增 /cmds/std/_run.c 指令 修改 /include/mudlib.h 新增 GMONSTER = /std/monster.c 定义、新增 SMONSTER = /std/monster.c 定义 PS.这只是暂时的,实际上它们在 sanc 并非都指向 monster.c 30 搜寻 lib/ 目录下所有包含 hit_points、spell_points、max_hp、max_sp 这四个关键字的档案,取代为 hp、sp、hp_src 及 sp_src。 修改 /adm/daemons/newuserd.c 将设定 hp_src 及 sp_src 的部份取消 MASTER_ONLY、LOCKED 的设定方式。 PS.上限值是可能变动的(比方被施以辅助法术後),基本上它们本身也是动 态数值,只是更动频率没有 hp、sp 那麽频繁。 将 /data/std 下的所有使用者档案除了 "laechan" 外其它均 abort 掉, 改为 .tmp 或是 .o~ 修改 /adm/etc/groups 将 root 设定为 "laechan" 并取消其它帐号 PS.架站者可将 "laechan" 改为自己想使用的 id 新增 /cmds/std/_chat.c 及 /cmds/std/_chatlog.c 两个指令 修改 /include/commands.h 新增 CMD_CHAT = /cmds/std/_chat 定义 PS.这样至少就有基本的 chat 频道可用 拷贝 /cmds/file/_cd.c、_ls.c、_more.c、_goto.c 到 /cmds/std 目录 PS.这样未正式开站前可让不具 wiz 身份的玩家至少可下这四个指令 新增 /cmds/std/_recall.c,让 wiz 及玩家能 recall 回登入点 修改 /adm/etc/global_aliases 档,让 / = recall (sanc style) 31 搜寻 lib/ 下所有的 ob_data 及 tmp_ob_data "变数",更改为 data 及 temp_data。函数 query_ob_data 及 query_temp_ob_data 则不变。 下载 sanc 的 /doc/emote 目录到 tmi2_v3_改 修改 /cmds/std/_chat.c 让它能简易读取 /doc/emote 下的 semote 修改 /adm/etc/global_aliases 新增 ch = chat 及 chat* = chat *$* PS.这样至少就能 chat *smile 及 chat* smile 了 修改 /cmds/std/_ls.c,让它具有 sanc style。 └原始档 /cmds/file/_ls.c 则不更动,wiz 会先执行到 /cmds/std 的 (依照 data me 所看到的 PATH 先後顺序) 201406 01 修改 /std/attack.c 的 receive_damage 函数,暂时将扣 hp abort └这样就能持续测试战斗系统而不会死亡 修改 /cmds/std/_look.c,更多中文化及去掉复数的 "s" └修改到这里,基本的房间观看就没问题了 修改 /adm/etc/global_aliases,增加 k = kill $* 的定义 修改 /std/user.c、/std/body/attack.c、/cmds/std/_kill.c,更多战 斗讯息方面的中文化 └确认 TMI-2 的基本战斗流程是没问题的,但是 kill_ob 会被呼叫三次 02 打薄 /tmi2_fluffos_v3_改 目录下的一些图档让它们档案size小一点 修改 /adm/simul_efun/format_time.c 的 format_time 函数,中文化 并新增 Ctime 函数(sanc style) 重写 /cmds/std/_who.c,采用 sanc style PS.这样至少几十~一百出头的玩家在线时一页显示没问题了(也有做分页) 修改 /cmds/std/_note.c 加入日期 修改 /cmds/std/_chat.c 将 emote 部份函数化 修改 /cmds/std/_who.c,修正部份 bug 05 新增 /include/myfarm.h └下载自 sanc /u/l/laechan/skycastle/room/skyfarm.h 新增 /adm/daemons/myhomed.c,管理 myhome 修改 /include/daemons.h 新增 MYHOME_D = myhomed.c 的定义 修改 /cmds/std/_look.c,辨识 /x/x/xxx 与 /x/x/xx#编号 的不同 新增 /include/myhome.h、/cmds/std/_myhome.c 及 /std/myhome.c └玩家的自宅系统 新增 /std/myfarm.c,附属於 myhome 的小型仿开○农场系统 PS.这样至少就有玩家住宅及附属的农场系统可玩 新增 /std/boat.c、/d/area/times_check.c,下载自 sanc └times_check.c 暂放 /d/area 目录 修改 /include/mudlib.h,新增 BOAT、TIMES_CHECK_OB 等定义 修改 /adm/etc/preload,新增 /d/area/times_check 的 preload 修改 /adm/etc/global_aliases,新增 o = go out 新增 /d/area/test 目录 新增 /d/area/test/boat.c、port1.c、port2.c,测试 boat 是否正常 boat 只需人工 start 过一次,之後就可靠 times_check 执行定期航线 PS.这样至少就有定期航班型交通工具可以使用 指令初步中文化、部份讯息不显示 /cmds/std/_go.c 06 搜寻 lib 目录下所有包含 "wielded"、"equipped" 的字串,全部改成 "wear" 字串。 └/std/monster.c、/std/weapon.c、/cmds/std/_inventory.c、 /cmds/ghost/_look.c、/cmds/std/_look.c、/cmds/std/_steal.c、 /cmds/std/_unwield.c、/std/armor.c、/cmds/std/_unequip.c 修改 /std/armor.c、/std/weapon.c,新增 wear_ob 及 remove_ob 函数 新增 /cmds/std/_wear.c、/cmds/std/_remove.c 将 /cmds/std/_equip.c、/cmds/std/_wield.c、/cmds/std/_unequip.c 、/cmds/std/_unwield.c,四个指令去掉 .c 改为 .tmi2 修改 /adm/etc/global_aliases └新增 equip = wear $*、新增 wield = wear $* 新增 unequip = remove $*、新增 unwield = remove $* PS.这样就能使用单一的 wear 指令穿脱防具,且旧指令格式依旧可使用 新增 /adm/daemons/channeld.c,拷贝自 /cmds/std/_chat.c 稍作修改 修改 /include/daemons.h,新增 CHANNEL_D 等於上述档案的定义 修改 /std/user.c 将 chat、rumor、chatlog 指令加进 channeld.c 的 指令判断范围 搬移 /cmds/std/_chat.c 为 /cmds/std/chat.20140606 /cmds/std/_chatlog.c 为 /cmds/std/chatlog.20140606 PS.这样公频就正式纳入 CHANNEL_D 的纳管范围并开放两个基本的公频 分别是 chat 及 rumor,未来还可加入国家、家族、职业等公频 09 删除 Win32 目录下的 driver.exe (因为已拷贝一份至 bin 目录下) └若 driver.exe 不小心遗失,只需下载 tmi2_v3_改 压缩档即可取得 搜寻 lib 目录下所有关於 "Dexterity"、"Strength"、"Intelligence" 、"Constitution" 等关键字,改为 "dex","str","int","con"。 修改 /include/stats.h 档,定义共多少属性、读取名称及显示顺序 └该读取名称并不一定是玩家实际资料栏位名称, 例如 "dex" 并不一定 是指玩家资料栏位的 "stat/dex",但一定是属性读取函数所使用的名 称如 ppl->query_stat("dex") 修改 /adm/daemons/newuserd.c,初始属性的名称设定变更及 agi、mag 的追加设定 └但日後应呼叫 complete_setup 做设定 mud 重新启动。 搬移 /data/std/user/l/laechan.o 为 laechan.o~ 搬移 /data/std/connection/l/laechan.o 为 laechan.o~ 重创 laechan 角色,save quit 後修改 wiz 相关参数 1.PATH 修改为 laechan.o~ 的 PATH 资料 2.wizard 设定为 1 3.复制 laechan.o~ 的 alias 栏位的相关资讯到 laechan.o 3.connection 下的 laechan.o 增加 wizard 1 的设定 再重新登入 laechan, laechan 即具有原本的 admin 权限 PS.这样就能让 tmi2_v3_改 创新角色时即具有基本的六个属性。 新增 /adm/simul_efun/attack.c,战斗相关的全域读取函数集合区 修改 /adm/obj/simul_efun.c,新增 include attack.c └修改重要系统档案後最好重启 mud 确认是可 work 的 修改 /std/body/attack.c,新增各种 query/set/add/del 函数 修改 /std/body/attack.c,重写 kill_ob 函数 废止 /std/user.c、/std/monster.c 的 continue_attack 函数 修改 /std/body/attack.c,重写 int continue_attack() 函数 └宣告为 int 是因为有可能做物件的 remove 动作 mud 重新启动,确认 user.c 的载入无问题 修改 /adm/simul_efun/attack.c,新增 normal_attack 函数、 新增 damage_str 函数 修改 /adm/simul_efun/tell_room.c,新增 show 函数 └各种 tell env 的相关函数都应写在 tell_room.c 内 修改 /adm/obj/simul_efun.c,搬移 tell_room.c 的位置 └这样 attack.c 才能呼叫写在 tell_room.c 的 show 函数 mud 重新启动,确认 user.c 的载入无问题 PS.这样新写的战斗系统就具有基本雏形 11 新增 /include/vobj.h,虚拟物品系统相关定义档 新增 /adm/daemons/vobjd.c,虚拟物品及怪物掉落物资料管理档 新增 /cmds/wiz/_vobj.c,虚拟物品及怪物掉落物设定及管理指令 修改 /adm/etc/preload,新增载入 /adm/daemons/vobjd.c 修改 /include/daemons.h,新增 VOBJ_D = vobjd.c 的定义 PS.这样就有虚拟物品系统及怪物掉落物系统 新增 /cmds/std/_ob.c,直接下载 sanc 现用的并稍做修改 新增 /std/vobj.c,做为虚拟物品做 ob view 时的借壳物件 PS.这样玩家就有 ob 指令及相关功能语法可使用 12 修改 /adm/simul_efun/format_string.c,新增两个处理 ansi 颜 色的全域函数: get_ansi_color 及 no_ansi_color PS.这样就能针对有带 $XXX$ 这类 ansi color 的字串做一些处理 新增 /include/simul_intermud.h,定义一些 intermud 的东西 将 /include/net/ 目录替换为 sanc 现用的 /include/net 目录 └旧目录更名为 /include/net.tmi2 修改 /std/user.c,新增 tmi2 频道指令 修改 /adm/daemons/channeld.c,新增 intermud channel 的一些 设定,使 tmi2 频道指令可发送远端讯息 修改 /adm/daemons/logind.c,新增 intermud channel 的一些设 定,使远端的 tmi2 频道讯息可被 mud 接收 PS.这样就有基本的远端通讯频道 tmi2 可使用 注册远端通讯可 mail 给 [email protected] 提出申请 将 /cmds/file/_cd.c、_ls.c、_more.c 副档名改为 .tmi2 将 /cmds/std/_cd.c、_ls.c、_more.c 搬移到 /cmds/file 目录 新增 /cmds/std/_cd.c、_ls.c、_more.c,内容指向 /cmds/file 目录下的这三个指令 └指令 goto 亦比照办理(/cmds/wiz/_goto.c) 修改 /cmds/std/_wear.c,修正 cant_wear 函数的判断错误段落 修改 /std/body/attack.c,修正当自己与战斗对象不在同一房间 时,战斗不会中止的问题 修改 /adm/daemons/newuserd.c,新增新玩家的等级与经验值初始 化设定。 修改 /std/monster.c 的 die 函数,打死怪物时会触发 vobjd.c 的 exec_mob_drop 函数。 PS.这样就能设定及看到打死怪物时会得到哪些东西 修改 /cmds/std/_note.c,增加 mud_name 的判别 PS.这样同一 lib 不同 port 的两个 mud 就会看到不一样的 mud name。一般来说最好只有其中一个 mud 做更动公告内容的动作 ,而不要两区都做更动。 新增 /cmds/std/_attack2.c、_config2.c、_score2.c,做为日後 可参考的风格(正式指令是 attack、config、score)。 PS.类似的做法日後会持续采用,非正式指令後面都会有编号,并 且是可执行的,供使用者做为撰写正式指令时的参考 13 备份 /std/user/autoload.c 为 autoload.20140613 重写 /std/user/autoload.c 的两个函数,load_autoload_obj 及 compute_autoload_array。 └想要设定哪些东西不应被储存,就改这个档案(目前全部会储存) 修改 /std/user.c,修改 quit 函数对身上所带物品所做的判断 PS.这样玩家 save 及 quit 时身上的东西应该被储存的就会被储存 ,login 时也会正常载入物品,而且也能做额外 sdata 的设定 修改 /std/body/attack.c,增加更多 query/set/add/del 函数 └varargs object query_wps(int n); └varargs string query_wp_types(int n); 当 n 给乱数 1~2 时,如果玩家只拿一把武器,有可能会传回 "barefist" └将 query_attack_msg() 函数搬到 user.c 并建立函数雏形 修改 /std/monster.c,另外建立 query_attack_msg 函数 修改 /adm/etc/global_aliases,新增 rem = remove $* 定义 14 在 tmi2_fluffos_v3_改 目录下建立 说明文件document 目录,并 建立 系统/ 与 指令/ 等目录,做为日後存放相关说明文件之用。 增加[系统]目录内 虚拟物品系统 的说明文件。 15 增加[系统]目录内 怪物掉落物系统 的说明文件。 16 新增 /adm/daemons/runnumd.c,数字图防机系统 新增 /include/runnum.h,数字图防机系统相关定义档 修改 /adm/etc/preload,增加 /adm/daemons/runnumd 修改 /include/daemons.h,增加 RUNNUM_D = runnumd.c 的定义 修改 /std/user.c,修改 cmd_hook 函数增加数字图防机的模拟段 ,该段落以 #ifdef ... #endif 包住 修改 /adm/daemons/logind.c,修改 get_name 函数增加数字图防 机的模拟段,该段落亦以 #ifdef ... #endif 包住 PS.这样就有基本的防机程式可使用 修改 /adm/daemons/channeld.c,增加 chat *xxx 目标1;目标2、 以及 chat *xxx 目标:要接的话 两种公频语法,以及脏话过滤 PS.这样 semote 里的 $T、$M 及 $W 以及 .mod 设定就有作用 修改 /std/user/tsh.c 的 process_input 函数,让 alias 的指 令能被储存在 history 里头(传统是储存完整指令而非 alias), 并让 !指令 的语法同样能适用在 alias 指令。 PS.这样使用者在 !指令 时就不用给完整指令 修改 /std/user.c 的 cmd_hook 函数,增加呼叫 channeld.c 的 find_emote 函数判断 修改 /adm/daemons/channeld.c,新增 find_emote 函数,并加入 几个相关定义於档头 PS.这样玩家下 semote 指令时就会有作用 (比 sanc 功能还强) 将 /cmds/std/_semote.c 更名为 /cmds/std/semote.tmi2 新增 /cmds/std/_semote.c 新增 /cmds/std/_semote_search.c,直接下载 sanc 使用的 修改 /adm/etc/global_aliases,新增 query_semote = semote_search $* 的定义 PS.这样就有基本的 semote 指令与相关查询指令可使用 17 将 /cmds/std/_help.c 更名为 help.c 新增 /cmds/std/_help.c,当使用者使用该指令不接字串时,会执行新的 功能;有接字串时,就呼叫 /cmds/std/help.c 执行原先 help 的功能。 PS.这样就有树状式 help 指令可使用 新增 /cmds/wiz/_drawmap.c 指令,让使用者可画 x-x 地图。 新增 /cmds/wiz/_makearea.c 指令,让使用者可产生及读入 x-x 地图, 并可将 x-x 地图存成数字编号地图。 新增 /cmds/wiz/_trans.c 指令,让使用者可依数字地图与脚本档的内容 ,依数字地图的各房间档名与路线配置产生出相对映的房间物件。 18 新增 /d/area/00 目录,存放新型态区域所需的各范例档,包含 area_room.c、area_room.h、map图、script档 新增 /d/area/01/01 目录,做为示范区域 修改 /include/mudlib.h,新增几个与区域相关的定义 新增 /cmds/wiz/_trans.c 指令,可将数字地图转成实际存在的房间 PS.这样就能在 tmi2_v3_改 实作新型态区域 19 新增 /std/gmonster.c,群式怪物继承档,部份显示与讯息 sanc style 修改 /std/body/attack.c,改良一些新增 function 的写法 修改 /std/mudlib.h,新增 GMONSTER = /std/gmonster.c 的定义 PS.这样至少就有群式怪物可用,而且 sanc 的群式怪物在 tmi2_v3_改 也能正常载入 修改 /std/user/history.c、/std/user/tsh.c,修正 数字 指令,以及 数字 !指令,以及 !指令 的使用 bug。 修改 /std/user.c 的 quit 函数,掉换 save_data 的位置 修改 /std/user.c 的 complete_setup 函数,建立数值初始化区 PS.这样装备武防的状态不正常离线时,重新登入就会做部份数值初始化 修改 /adm/simul_efun/base_name.c,增加 explode_base_name 函数, 可将一 base_name 的档名的最後一个 "/" 改成 "*" PS.这样就可用 strsrch 去找出 * 的位置, * 之前就是 path, * 之後就 是 file,explode(str,"*") 就得到 ({path,file}) 20 修改 /adm/simul_efun/adminp.c,新增 int wiz_lv(string id) 函数 修改 /adm/daemons/logind.c,将 ppl 区与 wiz 分隔的判断式 adminp 改成以 wiz_lv 去判断并实测 ok PS.这样就有一个可用 使用者id 来做是否为 wiz 的判断用函数 wiz_lv 修改 /cmds/std/_help.c,增加虚拟目录的功能 21 修改 /cmds/wiz/_tran.c,简化 SET_ROOM_FILE 整合到 ROOM_EXITS, 并追加 set "room_end" 栏位 修改 /cmds/object/_update.c,新增 -n 起始编号-结束编号 语法,及 -p 对目录下全部 .c 档 update 的语法 > update -n 001-100 > update -p 22 新增 /adm/daemons/mapd.c,地图管理系统 修改 /adm/etc/preload,新增 mapd.c 修改 /include/daemons.h,新增 MAP_D = /adm/daemons/mapd.c 定义 新增 /cmds/std/_map.c,修改秀图结果以及新增 wiz 指令区 └取消 map = gps $* 的 alias 指令,_gps.c 暂时保留 新增 /cmds/wiz/_name.c,区域取名指令 └其衍生为怪物命名指令,做法类似 修改 /cmds/wiz/_trans.c,进一步修正 修改 /std/user.c,增加 map_records 函数,用来读取及纪录玩家走过 的地图 PS.这样就有 x-x 地图观看指令以及区域命名指令可使用,并可依据玩 家地图的纪录状况,决定要显示地图到什麽程度,并可做地图 share 23 新增 /cmds/std/_betla.c,线上 betla PS.这样就能做 betla 新增 /cmds/std/_who2.c,仿卡○米亚的 who,做为使用者写 who 的参 考。 新增 /cmds/std/_guild2.c,sanc 现用的 guild 指令,做为使用者撰写 guild 列表指令的参考。 新增 /d/area/redant 目录,下载 sanc 的新型态区域「炙蚁地狱」设定 PS.这个区域亦可做为新式区域的示范区域 变更 /d/area/00 目录下的 area_room.c 的内容(参考 /d/area/01/01) └将来还可能再变更,因为功能会越来越齐 修改 /adm/etc/groups 档,将 mudadm 加入 (root) 群组 修改 /adm/etc/groups 档,将 laechan 降为 (admin) 群组 └这里即示范了如何新增与移除 admin,只要改这个档再重开 mud 即可 修改 /adm/daemons/logind.c,将 mudadm 设为只允许 127.0.0.1 登入 修改 /include/config.h,将 #define AUTO_WIZHOOD abort 掉 新增 "mudadm" 使用者,密码 "mudadm",新增完之後 save 存档离开, 然後关掉 mud 再重新启动 mud,再登入 mudadm,它就有管理者权限 PS.这样使用者至少有 mudadm 这个有管理者权限的帐号可使用 24~29 新增 /cmds/std/_quest.c 指令,任务进行及管理指令 新增 /include/quest.h,任务系统相关定义档 修改 /adm/daemons/recordd.c,新增储存 record_data["quest_npc"]资料 以及 record_quest、query_record_quest、quest_check 三个函数。 新增 /d/quest 目录,存放任务脚本 新增 /d/quest/quest_ob.c,任务脚本物件继承档 新增 /d/quest/data 目录,存放玩家任务资料存取物件 新增 /d/quest/data/quest_data.c,玩家任务资料主存取档 新增 /d/quest/data/sample.c,各字头玩家任务资料共通继承档 在说明文件资料夹内新增任务系统的说明 PS.这样就有基本的脚本式任务系统可使用 在 tmi2_v3_改 目录下新增 sanc.rar 压缩档,里面放了一些 sanc 可释出 的资料,有兴趣的使用者可解开该压缩档自行观看浏览。尚有部份资料需要 花时间挑选才能释出,所以这个资料夹内的内容也会再扩充。 待修改备忘: /adm/daemons/systemd.c、/data/system.o、/adm/simul_efun/system.c、 /cmds/adm/_system.c 四位一体 newuserd.c 补上 complete_setup 相关 newuserd.c 把真实姓名的部份改为输入中文昵称及使用 chi_name └即 set_name 函数 要确认 newuserd.c 是否呼叫 user.c 的 complete_setup, 以及 玩家每次 login 时是否也呼叫 complete_setup 补上 /adm/simul_efun/new_and_count.c 穿脱武防加上属性、抗性等加扣设计 陆续充实 view 的内容 makewiz、dewiz 及 wiz 设定的正规化 定时公告处理系统 who -l user.c 的 channel 判断将来可改用 member_array 持续思考从 continue_attack 到实际攻击应该将相关函数写在哪 armor 及 weapon 的部份读取函数化 新增 /adm/daemons/checkd.c 相关 check 都写在这里 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.33.66.104 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/mud_sanc/M.1636880704.A.187.html
1F:推 Hsins : 不放到 GitHub 上吗? 11/15 21:11
档案太分散了,而且我只打算使用 gist,我比较有兴趣写单档。 ※ 编辑: laechan (114.33.66.104 台湾), 11/16/2021 00:16:15







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Gossiping站内搜寻

TOP