地方网

搜索

[魔域服务端] 中国GM门户发布魔域源代码

[复制链接]
admin 发表于 2008-8-21 13:02:39 | 显示全部楼层 |阅读模式
软件简介:
争霸网络 中国GM门户站 为感谢各位GM门的支持
特此 站长:单身仔仔
把魔域 的源代码 发布出来给所有喜欢魔域
的各位GM研究使用.在研究使用过程中
本站不会提供技术咨询自行研究
内部有相关说明文件.希望制作出的各家特色后
发布www.20921.com/bbs中国GM门户 共享使用
更希望那些卖端的请不要那么自信的卖出高价格
给GM门经济上增加难度。祝GM们2008新春快乐
中国GM门户站 是中国最具有权威性.的GM门户站
地址:www.20921.com
GM门户 GM资源 以及游戏源代码的起源地!

// AI框架说明
// ,2007.8.3
。暂不支持AGENT切屏

。模式规划:
。0_dead// 死亡模式
。1_idle// 休闲模式
。0_wait// 休闲模式中,又细分为等待组队模式
。1_follow//和组队跟随模式
。2_fight// 战斗模式:分析战况,选择目标,同时跟随队长
。3_attack// 攻击模式:补血、发攻击命令、脱离危险

。事件
。死亡事件:接到死亡消息时,改变模式为Dead
。组队事件:接收到组队成功消息,增加TeamOK,增加IsMyLeader
。队伍解散事件:删除TeamOK
。---
。装满药品消息:增加ItemFull,增加HaveItem
。物品删除消息:如果药品少于2个时,增加NeedBuyItem
。物品删除消息:如果药品没有了,删除HaveItem
。---
。移动消息:和药店距离少于8时,增加NearShop,否则删除NearShop
。CPlayer消息:有队长标志,增加IsLeader
。CPlayer消息:是怪物,增加IsEvil
。CPlayer消息:是玩家且装备好,增加IsCoolMan
。---
。CPlayer消息:是自己的队长,增加IsMyLeader
。移动消息:清除并重新添加所有的IsLookTarget
。移动消息:清除并重新添加所有的IsCloseTarget
。失血消息:如果血够少,增加NeedCure
。被攻击消息:增加AttackMe(10),增加IsEvil(20),如果人数超过3人则增加Dangerous(10)
。收到队长坐标:如果太远,就增加MyLeaderAway

。动作
。RandomMove:随机选择可达点,设置移动目标点。
。BuyAllItem:发MSG_ACTION消息,要求装满药。
。AnalyseTalk:如果串中有药,增加TalkAboutItem
。TalkTo:发送MSG_TALK消息给对方。
。TeamAcceptInvite:发送组队申请。
。TeamAllyJoin:发送组队申请。
。CheckMyLeaderAway:检查队长是不是走开了,如走开了就发QUERY消息。
。ChangeMap:如果距离近,就跑过去,远了就CHGMAP。
。FastToLookPos:连续跳向能看到指定坐标的地方。
。LeavePos:和该坐标保持一定距离,否则会跳开或跑开。
。备忘:
。目前通过EVENT和ACTION来维护FACT_SET,允许同类FACT有多少个同时存在于库中。
。动作的调度按类似WIN的进程调度模式,高优先级先执行,低优先级的时间长了优先级会自动提高。
。匹配符号时,系统函数-游戏函数-fact库的顺序可优化CPU效率,但灵活性稍差。

。规则编写说明:
。规则中的符号的风格为大写字母打头的单词的组合。例如 RuleStyle 。(风格:是指不强求,只是建议如此。下同)
。符号后都可能有用圆括号包围的参数表。例如:RuleStyle(TYPE)。
。符号分为两类,一类是FACT,另一类是系统函数。(系统函数类相当于C的关键字,FACT的符号名不能和系统函数类的名相同。)
。系统函数不能放在RESULT部分,只能在CONDITION部分。
。系统函数都是小写风格,以区别于符号。例如:less(SMALL,BIG)。
。RESULT的参数表中的参数。用括起来的是KEY参数。KEY参数和圆括号中的参加合并为完整的参数表。例如:TalkToTargetROLE(你好。)
。通过RESULT添加FACT时,KEY值相同的FACT会被冲掉。
。通过RESULT添加FACT时,如果没有KEY列表,符号相同的FACT只允许存在一个。
。参数表中的参数分为两大类。一类是直接量,如1234,或者string,类型分为INT类型和STRING类型。另一类是哑变量。
。INT类型的直接量,只接收数字串。数字串后面允许紧接符号,但符号会被忽略。(后接符号的目的是提供数字的可读性,有点象enum)
。STRING类型的直接量,必须用双引号()括起来。
。哑变量会在运行期被替换成相应的值。哑变量的风格是全部大写的符号串。例如:ROLE、DATA。
。INT类型的哑变量和STRING类型的哑变量不能混合使用。也就是说,一个哑变量只能是一种类型,不能即是INT又是STRING。
。变量(_)表示不需要匹配的变量。
。条件列表中的FACT分为三类。一类是存放在FACT_SET中的FACT,另一类是可调用的游戏核心函数,还有就是系统自带的函数。
。目前MODE部分不支持为空。
。目前暂不支持游戏函数和系统函数的多重匹配。
。目前暂不支持游戏函数和系统函数是的(_)符号。
。相关连的FACT的优先级最好和RULE的优先级相同,否则要么不能触发,要么会触发多次。
。符号检查顺序是:先看是否系统函数,再看是否游戏函数,最后在fact库中查找。
。系统限制:
。整数的范围是-20亿到+20亿。
。规则文本长度不超过1024。(可修改)
。规则设计方法:
。符号从设计逻辑上大体可分为两类,一类是由EVENT提交的,一类是规则运算时添加的。
。建议EVENT提交的符号由EVENT维护,规则运算产生的符号由规则运算来维护。交叉维护容易出错。
。需要互斥的FACT,都做成同一个FACT,后面带KEY变量。
下载地址:
2008-8-21 13:02 上传
下载权限:
版本vip会员
本地下载 检测资源   提取码: 需要终身vip或更高权限
免费资源区资源无需vip就可以下载!其他资源需要开通vip下载,点击→开通VIP!
回复

使用道具 举报

全部回复0 显示全部楼层

发表回复

您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

联系客服 关注微信 下载APP 返回顶部 返回列表