你玩过步步高电子词典上的伏魔记吗?我高中时玩过,且一直难以忘情。大学时学习了C和Win32,所以就自己做了个Win32版本的伏魔记(但只有简单的一个地图,地图上有个柳清风,可以上下左右走动,完了)。附上一个简单截图:

win32_fmj

(我能附上截图,是因为有保留有源代码:代码在 https://gitee.com/valuetodays/ellen/tree/master/py-c-vc-walker/rearrange-on-20180804/c-all/c-when-college/fmj,其中的fmj_1st.zip就是。

在2015年有个冲动自己使用C语言实现java的String类(ADT,abstract data type),只写了一小部分,最终没有坚持下来。自己实现String类的原因是想使用c写一个伏魔记,后来为了省事就使用了java,最早时该项目名叫scriptParser(后来学习maven,就把scriptParser整理成maven版的了,即scriptParser-mvn,但是scriptParser在github上已经找不到了),托管在github上,我的网络是每月50元、可是只有1M的网(真想说句f**k),使用git push老是失败,我就改用了现在的码云gitee.com,当时域名还是git.oschina.net呢。

代码转过来时名称还是script-parser,项目如其名,只是为了解析类似步步高伏魔记的脚本文件,当时做的是cui(console-user-interface)模式(即在控制台用户界面)的,后来整理成了gui(graphical-user-interface)模式(即图形用户界面),相应地,script-parser也就改名成了rpg,因为使用maven,想到项目名要使用rpg-in-one,但不知怎么就使用了rpg-one这个有点难以理解的名称(以后再改吧),下面附上一段伏魔记经典片段

@开始游戏
SHOWGUT 1 0 "引:                 天地玄黄,宇宙洪荒  自古道魔不两立,    世虽以道为正,道魔  之争却从未休止。    究其因,何以道正而  魔始未灭,          属正邪者,心也!    正所谓:             道非道,魔非魔      善恶在人心!                            江湖中有耳朵的人,绝无一人没有听见过“无机道长”这人的名字,江湖中有眼睛的人,也绝无一人不想瞧瞧“无机道长”绝世风采和他的绝代神功。        只因为任何人都知道,世上绝没有一个少女能抵挡“无机道长”的微微一笑,也绝没有一个英雄能抵挡“无机道长”的轻轻一剑!      任何人都相信,“无机道长”的剑非但能在百万军中取主帅之首级,也能将一根头发分成两根,而他的笑,却可令少女的心碎。        3月28日晚,无机和 当时危害人间的大魔头——赤血天魔依约在三清山的伏魔洞前进行生死决斗。              决斗后,无机负伤而归,赤血天魔不知所终。决斗结果无人知晓。  二十年后……                                                                                      "
loadmap 1 2 15 0   
MOVIE 1 2 0 0 2
CREATEACTOR 1 4 3
NPCSTEP 0 0 1
say 1 "小蝴蝶,不要跑……"
NPCSTEP 0 1 1
say 1 "小蝴蝶,不要跑……"
NPCSTEP 0 2 1
say 1 "小蝴蝶,快出来……"
NPCSTEP 0 3 1
say 1 "小蝴蝶……,哪去了??"
CREATENPC 1 2 17 6
MOVE 1 17 3
MOVE 1 18 3
say 0 "师兄,原来你在这啊,师父找不到你,正在无机阁大发雷霆呢,你快点到无机阁见师傅吧。"
say 1 "好,你先走,我就去。"
MOVE 1 17 3
MOVE 1 17 6
DELETENPC 1
NPCSTEP 0 0 1
NPCSTEP 0 1 1
NPCSTEP 0 2 1
NPCSTEP 0 3 1
say 1 "咦,我的小蝴蝶哪去了??"
say 1 "还是先去见师父吧。"
setevent 1
SETMONEY 500

再来一段script-parser能解析的脚本:

attr 1 1
scenename '百草地'
monsters 51
battleImage "001-Grassland01.jpg"

createtransfer 201 0 4
createtransfer 201 0 3

playbgm
emotion 0 5
say 1 '柳清风' LEFT '小蝴蝶,不要跑……'
npcstep 0 UP 1
@animation 3 50 100
say 1 '柳清风' RIGHT '小蝴蝶,不要跑……'
npcstep 0 LEFT 1
say 1 '柳清风' LEFT '小蝴蝶,快出来……'
npcstep 0 RIGHT 1
say 1 '柳清风' LEFT '小蝴蝶,不要跑……'
npcstep 0 DOWN 1
say 1 '柳清风' LEFT '小蝴蝶……,哪去了??'
npcstep 0 UP 1

其实大同小异。