|
楼主 |
发表于 2024-10-21 17:10:17
|
显示全部楼层
关于地图数据的维护
地图数据维护的核心是 不同ID房间之间的关联。
已知房间A,房间B,求两者关系C。
这个C可以是一个指令(east/west之类),可以有条件,符合条件才能进入(比如各门派专属路径),可以是迷宫(A地到B地之间是一个迷宫,包括所有非直接指令,比如武当新人下山可能被拦要去ask song),在计算路径时应该有权重(比如北侠那蜗牛马车)。
个人比较喜欢用MUD远古大神zsz使用的一套地图文件格式,如果你在其他mud用过mapper.exe的话可能也涉及过。我加入路径权重和反向标签额,但基本格式不变,大概是
- 0=中央广场|e:59,enter dong:1927,n:22,s:40,w:1,
- 1=西大街|e:0,n:2,s:5,w:7,
- 2=衙门大门|n·:3,s:1,
- 3=衙门正厅|e:1550,n:4,s:2,w:21,
- 4=内宅|s:3,
- 5=兵营大门|n:1,s·:6,
- 6=兵营|n:5,
- 7=西大街|e:1,n:9,s·:8,w:13,
- 8=扬州武馆|n:7,
- 9=财主大门|n:10,s:7,
- 10=财主大院|n:11,s:9,
- 11=财主后院|s:10,w·:12,n:2914,
- 12=财主西厢|e:11,
- 13=西门|e:7,w:14,n:2880,
- 14=西门大道|e:13,s·:15,w:19,
- 15=武道场|n:14,se:16,sw:18,
- 16=武道场|nw:15,sw:17,
- 17=武道场|ne:16,nw:18,
- 18=武道场|ne:15,se:17,
- 19=关洛道|e:14,w:20,
- 20=函谷关|e:19,s:77,w:244,
- 21=西厅|e:3,
- 22=北大街|e·:26,n:24,s:0,w:23,
- 23=钱庄|e:22,
- 24=北大街|e:27,n:34,s:22,w·:25,
- 25=武庙|e:24,nw:1552,u:1551,w:2900,
- 26=客店|menter0·:2046,s:1553,u·:-1,w:22,
- 27=醉仙楼|e·:28,u:29,w:24,
- 28=马厩|goto beijing:1353,w:27,
- 29=醉仙楼二楼|d:27,e·:30,
- 30=醉仙楼大堂|e:31,n:32,s:33,w:29,
- 31=玫瑰宴厅|w:30,
- 32=芙蓉宴厅|s:30,
- 33=牡丹宴厅|n:30,
- 34=北门|n:35,s:24,w:1558,
- 35=大驿道|n:36,s:34,
- 36=大驿道|n:37,s:35,
- 37=大驿道|e·:38,n:39,s:36,
- 38=小院|w:37,e:-1,
- 39=汉水南岸|sl1>cross:1073,sl1>sl>back:2817,s:37,e:2762,drive>yell boat。:2882,
复制代码
(参考数据,明显不是北侠的地图。)
个人不在地图里记录太多信息,就算北侠版本的地图也就多记一个区域,房间名@区域的格式。
其他文字信息/固定npc由于更新频繁不固定,我是直接做了个在线服务来进行查询的。并且不定期用街景机器人爬一圈,确保信息及时。
这和房间信息的关联是完全不同层次的两块内容,我不太喜欢都放在一起。
|
|