mud 板


LINE

看板 mud  RSS
网页好读版: http://webptt.com/cn.aspx?n=bbs/mud/M.1402627296.A.1E8.html tmi2_fluffos_v3_改,20140612 版本 http://sanclaechan.myweb.hinet.net/tmi2_fluffos_v3_modify.rar 建议下载并解压缩後目录位置为 D:\tmi2_fluffos_v3_改\ (底下以 tmi2_v3_改 简称) WinXP 使用者,可直接双击 D:\tmi2_fluffos_v3_改\bin\启动 mud 捷径, 即可执行 mud。Win7 或 Win8 使用者,则务必先参考底下这篇: http://webptt.com/cn.aspx?n=bbs/mud/M.1399357070.A.366.html mud 启动成功後,目前确定以 pietty 连线 localhost 5000 (Telnet),可 连线成功: http://imgur.com/IQwusvX.jpg
在 tmi2_fluffos_v3_改\ 目录下会放一些图片及说明文件。 目前连线 telnet://210.61.157.53:5000 可连到以最新版本所架的测试站 ,有公频聊天指令可使用;mail 向 [email protected] 申请 tmi2 频道 互通,则可使用 tmi2 频道进行跨站聊天。 ================================================================== 本次修改范围: 2014/06/10~2014/06/12 一、虚拟物品系统既怪物掉落物系统实装 相关档案: /include/vobj.h /adm/daemons/vobjd.c /std/vobj.c (单纯房间档案) /cmds/wiz/_vobj.c /cmds/std/_ob.c 其它更动: /adm/etc/preload 载入 /adm/daemons/vobjd.c /std/monster.c 的 die 函数增加呼叫 vobjd.c /include/daemons.h 增加 VOBJ_D 定义 vobjd.c 使用 /data/vobj.o 储存档 核心指令有两个,wiz 使用的 vobj 以及共通指令 ob,底下会有相 关 demo。理论上使用者不需知道 vobjd.c 的架构,只需了解上述两 个指令如何使用即可。 vobjd.c 的两个 mapping 资料架构如下 第一层主key 第二层 第三层 vobj_data = ([ "编号标头":([ "编号":([ "name":"物品名称", "value":"物品价格", . . ]), ]), ]); 例如 vobj_data["m"]["m001"]["name"] 即可取得 m001 的名字。 第一层主key 第二层 第三层 mob_drop = ([ "怪物所在目录":([ "怪物档名":([ "编号":掉落率数值, "档名":掉落率数值, . . ]), ]), ]); 例如 mob_drop["/d/area/newbie/mob"]["rabbit1"]["m001"] 就可取得 "/d/area/newbie/mob/rabbit1" 的 m001 物品掉落率数值 mob_drop["/d/area/newbie/mob"]["rabbit1"]["/d/area/newbie/obj/map1"] 就可取得 "/d/area/newbie/mob/rabbit1" 的 map1 这个物品的掉落率数值 从上面可发现 mob_drop 亦可支援实体物品的掉落。 这个系统最大的好处,就是在做虚拟物品的设定或是怪物掉落率的设   定时,都无需动到怪物或是物品档案,比方传统我们设计打死一只怪   物时会掉落实体物品,必须先将该物品 clone 出来 move 到该怪物   上,或是让怪物自订 die 函数来执行物品掉落,往後则只需要将掉   落资讯设定在 mob_drop,怪物一被 call die 就会执行物品掉落判   断。 二、新增 ansi color 的相关函数 写在 /adm/simul_efun/format_string.c (字串处理相关) 包含 get_ansi_color 及 no_ansi_color 两个函数。 比方某字串是 "$HIR$test$NOR$",get_ansi_color 可以将这个字串 转成 HIR"test"NOR,即 test 这样的颜色字串。 而 no_ansi_color 则会将颜色字串消去,上述字串会变成 "test"。 这两个字串我是规划日後有可能频繁读取,所以放进全域函数区。 (sanc 也有类似的东西只是放成 /adm/daemons/color_d.c) 三、模拟的(阳春的) intermud channel 设定实装 相关档案: /include/simul_intermud.h /adm/daemons/channeld.c /adm/daemons/logind.c 相关修改: /std/user.c 的 cmd_hook 函数,增加 "tmi2" 频道 指令。 模拟结果类似底下 http://imgur.com/ExDbzQA.jpg
channeld.c 主要新增几个 socket 相关的函数,并在 channel 函数内新增 "tmi2" 频道指令(使用者可更改此指令名称)。 logind.c 则在 get_name 函数内新增 socket 讯息的接收程式 段落。 四、其它修改 /bin 目录下新增另一个启动 mud 的捷径「启动 wiz」。先执行 「启动 mud」再执行「启动 wiz」即可让自己的 pc 跑两个 mud ,一个预设 port = 5000,一个预设 port = 6000。   两个 mud 跑同一个 /lib,但是 6000 预设只有 wiz 可登入, 相关程式段落可见 /adm/daemons/logind.c 的 get_name 函数。 http://imgur.com/OZ3KXWb.jpg
修正 wear all 时的显示错误。 修正当战斗中下 recall 回到起始点後,战斗不会结束的问题。 (修正与战斗对象不同房间时战斗不会结束的问题) 修改 /adm/daemons/newuserd.c,为新玩家加上初始等级与经验   值的设定。(可搜寻该档案内的 set_levels 字串) 新增 /cmds/std/_attack2.c、_config2.c、_score2.c,做为日 後使用者写指令时的参考(正式指令是 attack、config、score) 类似的做法日後会持续采用,非正式指令後面都会有编号,并且 是可执行的,使用者就可依执行结果做为自己写指令时的参考。 ============================================================ 底下是一些 demo: > vobj -list 虚拟物品名称 编号 单位 种类 价格 携带 交易 贩卖 =============================================================== 兔毛 m001 个 怪掉落 362 99 可 可 兔牙 m002 个 怪掉落 501 99 可 可 =============================================================== > vobj -export vobj -set 兔毛;m001;;;;362;;;;; vobj -set 兔牙;m002;;;;501;;;;; 上面的意思就是说,所有设定的结果会被 -export 汇出来。复制它 们再贴上,就能把资料设定进去,如下.. > rm /data/vobj.o Rm: /data/vobj.o removed. > update /adm/daemons/vobjd.c /adm/daemons/vobjd: Updated and loaded. > vobj -list 虚拟物品名称 编号 单位 种类 价格 携带 交易 贩卖 =============================================================== =============================================================== 这样就没东西了,然後把上面两行复制後贴上: > vobj -set 兔毛;m001;;;;362;;;;; vobj -set 兔牙;m002;;;;501;;;;; 就会出现如下讯息: vobj_data[m][m001]=([ "value" : 362, "name" : "兔毛" ]) 设定 ok. vobj_data[m][m002]=([ "value" : 501, "name" : "兔牙" ]) 设定 ok. > vobj -list 虚拟物品名称 编号 单位 种类 价格 携带 交易 贩卖 =============================================================== 兔毛 m001 个 怪掉落 362 99 可 可 兔牙 m002 个 怪掉落 501 99 可 可 =============================================================== 这样设定就回来了,这就是 -export 的原意。 而因为可以用复制贴上的方式汇入资料,因此使用者也可以自己在记事本 上编辑要汇入的一整串内容,编好後贴上,就能做整批式的汇入。 (删除也是一样) 怪物掉落物的设定亦参照类似的概念 > vobj -mob_drop_list all cd /d/area/newbie/mob vobj -mob_drop rabbit1 set m001 = 5000 vobj -mob_drop rabbit1 set m002 = 5000 vobj -mob_drop rabbit1 set /d/area/newbie/obj/map1 = 5000 将上面的结果,复制贴上於 mud,即可完成大批式的怪物掉落物设定 其它内容可参见 vobj 的指令说明。 ============================================================ ob 指令的部份: > ob 你的物品栏带着 2/99 种物品: ╔════════════╦════════════╦══════════╗ ║ 1.兔毛 ( 56)║ 2.兔牙 ( 53)║          ║ ╠═════╦══════╩════════════╩══════════╣ ║ 指令说明 ║ob ? (指令 i 可以看"身上的物品") ║ ╚═════╩══════════════════════════════╝ 对照身上的资料栏位 > data me vobj : ([ "m002" : 53, "m001" : 56 ]) 亦写有 query_vobjs、set_vobjs、add_vobjs、del_vobjs 等函数。 > ob view m001 兔毛(物品编号: m001) ──────────────────────────── 型态:怪掉落 重量:99 价格:362 贩卖:可 交换:可 一个兔毛,可向收集品商人购买。 ──────────────────────────── 档案路径:/std/vobj。 使用者身上不需带有兔牙,只要知道 m001 这个编号就能 view。 这就是编号的好处,因为当玩家知道能 view m001 时,自然就会 想 view 看看有没有 m002、m003、.... 亦即玩家可因此知道全部的 mXXX 物品的资讯。 > ob view 兔牙 兔牙(物品编号: m002) ──────────────────────────── 型态:怪掉落 重量:99 价格:501 贩卖:可 交换:可 一个兔牙,可向收集品商人购买。 ──────────────────────────── 档案路径:/std/vobj。 ob view 亦支援直接给物品名称的 view 方式。 > ob search 兔牙 线上目前拥有物品 兔牙 的玩家人数: 1 人. 其它内容可参见 ob 的指令说明。 ============================================================ > vobj -mob_drop_list all cd /d/area/newbie/mob vobj -mob_drop rabbit1 set m001 = 5000 vobj -mob_drop rabbit1 set m002 = 5000 vobj -mob_drop rabbit1 set /d/area/newbie/obj/map1 = 5000 上面的 5000 即是 50.00% 的意思,即掉落机率 50%。 > call rabbit;die 小兔兔(Small Rabbit)发出一声惨叫!! 小兔兔(Small Rabbit)慢慢的倒在地上...死了! 你得到了一个兔牙. 你得到了一个新手地图(newbie map). OBJ(小兔兔 /d/area/newbie/mob/rabbit1#24)-> die() = 0 掉落率采串联判断,也就是怪物有可能一次掉落两种物品以上,只 要它被设定会掉两种物品以上。 怪物档不需做任何更动,即可实装掉落效果,就是此系统最大好处 =========================================================== tmi2 远端频道交谈指令,以架在我自己 pc 下的 tmi2_v3_改 与 sanc 的交谈为例 > tmi2 向 sanc 端发送讯息测试 > 【远端】Laechan(TMI-2 Win32)说道: 向 sanc 端发送讯息测试 (From: Laechan's PC) ↑  我这一边发送出去的讯息 【远端】Laechan:进阶法师(Sanctuary)说道: sanc 端有收到讯息 (From: 圣殿主机) ↑ sanc 那边回回来的讯息 > chatlog (10:31) 【远端】Laechan:进阶法师(Sanctuary)说道: sanc 端接收到讯息了 (From: 圣殿主机) (10:31) 【远端】Laechan(TMI-2 Win32)说道: 向 sanc 端发送讯息测试 (From: Laechan's PC) 目前 tmi2_v3_改 的 chatlog 会自动纪录收到的讯息。 tmi2_v3_改 的使用者可向我申请开通 tmi2 频道互连,只要给我底下的资讯 1.tmi2_v3_改 的站台 ip 及使用的 port 2.你想使用的站台名字(没有申请这一项时,From: 那边就会带出 IP 而非名字) 非 tmi2_v3_改 的 mud adm 亦可向我申请,只要你的 mud 有针对 logind 处理档及公频管理档做对映的修改即可,需修改项目就自行 download 最上 面的 tmi2_v3_改 的压缩档,download 下来解压缩後自行参照对映的程式 段落即可。(像 sanc 就是参考 tmi2_v3_改 的相关程式段落做对映修改) PS因为远端讯息的最後都会由 SERVER 端附加 From 的资讯,各站使用者就  可根据这个 From 资讯做进一步的过滤。 其它详见修改日志。 Laechan --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 210.61.157.53
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/mud/M.1402627296.A.1E8.html ※ 编辑: laechan (210.61.157.53), 06/13/2014 10:42:04
1F:→ laechan :稍做修改後更新哩 210.61.157.53 06/13 15:00
2F:推 dannielz :推! 14.216.21.32 06/13 16:11
> k rabbit 你对着小兔兔喝道: 「小王八蛋! 今日不是你死就是我活! 」 ☆☆☆ 战 斗 开 始 ☆☆☆ > 你手握格斗匕首戳向小兔兔,造成巨大的伤害!(340) 小兔兔用兔牙咬向你,但是无关痛痒... 你手握格斗匕首捅向小兔兔,造成巨大的伤害!(340) 小兔兔用身体撞向你,但是无关痛痒... 你手握格斗匕首捅向小兔兔,造成巨大的伤害!(340) 小兔兔用身体撞向你,但是无关痛痒... 越来越有 mud 该有的样子了。目前还是会将一些存取继续函数化。 ※ 编辑: laechan (210.61.157.53), 06/13/2014 17:19:35 ※ 编辑: laechan (122.117.106.224), 06/13/2014 19:16:31
3F:→ laechan :晚上从家里架 mud 测试,确定tmi2可通122.117.106.224 06/13 19:16







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灯, 水草

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

TOP