搜索附件  
同能RPG制作大师 附件中心 同能RM技术讨论区 RPG Maker XP 讨论区 这样的AI没问题? 事件自战...: d3.jpg

这样的AI没问题? 事件自战...: d3.jpg

 

这样的AI没问题? 事件自战...:
先说一下所谓的"灵感",是几个月前玩的“杀戮之心EXA”,突发奇想,就做了个这个鸡肋到不行的
游戏(姑且也算....),Bug不少...

因为技术原因和时间原因,还有许多没有弄好(比如这个版本的事件几乎没有区别,
打算:比如带的子弹允许多一点,血就少一点,移动速度慢一点),所以请大家帮忙优化和完美这个系统


当然,这个有两个版本,”标准版“以及”附加版“

不过,我”故意“留了个”设定BUG“,运用这个BUG,比较容易赢,不过怎么运用BUG在”附加版“上的事件上有

翠花,上截图!
标准版

附加版


这个游戏是给“事件”赋予“生命”,让它们互相搏斗,只用原脚本和事件几乎不能完成,
所以动手加了几个小方法

在这,基本命令有“射击” “攻击” “防御”
标准版全方法如下:
  1. #==============================================================================# ■ Game_AI#------------------------------------------------------------------------------#  该版本的 AI 模块,AI只是噱头而已,哈哈#===============================================================================begin方法诠释  注:有些方法 我填的是 @event_id  这是己事件的ID,是在事件脚本上填的  如在“设置事件移动路线”的脚本栏用,请使用 @id  Scene_Map    $scene.defend(@event_id)  命令自身进行防御    $scene.event_shoot(@event_id,angle,show_text=true)  命令自身进行射击  angle 方向 单位:度   show_text 是否显示攻击信息    $scene.text_show(text,@event_id)  显示文章text(比如说些废话)    $scene.event_atk(@event_id,show_text=true)  命令自身向正前方进行物理攻击  show_text 是否显示攻击信息    Game_Character  # 在“设置事件移动路线”的脚本栏用,已把“跳跃”和谐了    turn_to(direction)  朝向direction方向    tomove(x,y)  自动移动 By OCTSJimmy  寻路算法 By whbm  在x,y坐标是可通行的情况下,向x,y移动    jump_new(direction,foot)  foot在1,2之间  在目标坐标是可通行情况下,朝direction方向跳跃foot步    Game_AI  ※ 标准版    Game_AI.check_self_hp(@event_id)  返回自身HP    Game_AI.check_near_event(@event_id)  返回离自身事件最近敌人编号(返回值范围 1,2,3)  Game_AI.check_self_ammo(@event_id)  返回自身所剩弹药数    Game_AI.check_event_screen_xy(which,who)  返回目标事件屏幕坐标  which : 阵营   0:甲方  1:乙方  who   : 编号   范围     1,2,3    Game_AI.check_enemy(@event_id,direction=0)  检查四方向直线上是否有敌人  direction 不填时(或填0) 是检查面向直线上  direction : 上 下 左 右 : 8 2 4 6 (参考小键盘)  返回值 true 或 false    Game_AI.check_enemy_forward(@event_id,direction=0)  检查四方向身前是否有敌人  direction 不填时(或填0) 是检查面前 填-1时,是任何1面(身前)有敌人            就返回朝向(2486),没有时返回0  direction : 上 下 左 右 : 8 2 4 6 (参考小键盘)  返回值 true 或 false    Game_AI.check_friend(@event_id[,direction])  检查四方向直线上是否有同伴  参考 check_enemy    Game_AI.check_fire(which,who)  检查屏幕上指定目标发射子弹的残留数(目前屏幕上有多少子弹是XX发射的)  which : 阵营   0:甲方  1:乙方  who   : 编号   范围     1,2,3  返回子弹数目 返回值大于等于0    Game_AI.check_atk(which,who)  检查指定目标是否正在攻击  which : 阵营   0:甲方  1:乙方  who   : 编号   范围     1,2,3  返回子弹数目 返回值大于等于0    Game_AI.check_event_id(which,who)  返回指定目标的事件编号 用于捕捉x,y坐标 如 $game_map.events[id].x  which : 阵营   0:甲方  1:乙方  who   : 编号   范围     1,2,3    Game_AI.check_event_angle(@event_id,enemy,who)  返回目标事件与己事件角度  一般用于事件射击($scene.event_shoot)  enemy : 敌人  0 : 自己  1 : 敌人  who   : 编号    1,2,3    Game_AI.move_possible?(@event_id,direction,foot)  检查自事件周围是否可通行  direction 方向 8方向8246 7913  foot 距离  如Game_AI.move_possible?(@event_id,7,2)就是返回自身事件左上2格是否  可通行,一般用于是否可跳跃    Game_AI.check_event_defend(@event_id,enemy,who)  检查目标事件是否正在防御  enemy : 0:己  1:敌  who   :   编号    Game_AI.check_event_hp(@event_id,enemy,who)  检查目标事件HP  enemy : 0:己  1:敌  who   : 编号                返回目标事件HP    ※ 附加版   略=end 复制代码
复制代码

在地图上,有双方各3个事件,在事件名称为"甲1XX"“甲2XX"甲3XX"”乙1XX“"乙2XX""乙3XX"
其中XX是你决定的名字

在事件第一页上要总共等待100帧,然后A开关打开(随便什么)执行你的事件

附加版较标准而言只是多了几个比较实用的方法(真的只有几个...)
比如:检查距离敌目标事件之间有没有同伴,   以防误伤(本来 返回目标事件与己事件角度 是附加版里面的...)

到了这,这么设计”AI“呢?我给一个智商很低”例子“

这样的AI没问题? 废话,智商很低...
怎么设计出智商较高的AI,这就要看你了!!

注意:游戏里面不要”作弊“,比如给自己无偿加血
好像没什么了
附:标准版

   附加版



             本帖来自P1论坛作者沙漠点灰,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=169132  若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
这样的AI没问题? 事件自战...: d3.jpg
Loading...

QQ|Archiver|手机版|小黑屋|同能RPG制作大师 ( 沪ICP备12027754号-3 )

GMT+8, 2024-11-24 04:35 , Processed in 0.072186 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

返回顶部