查看: 84|回复: 0

[转载发布] ► 自动战斗 ◄ 更新[13/10/02]

[复制链接]
  • TA的每日心情
    开心
    3 天前
  • 签到天数: 37 天

    连续签到: 3 天

    [LV.5]常住居民I

    2028

    主题

    32

    回帖

    7260

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    0
    卡币
    5184
    OK点
    16
    积分
    7260
    发表于 同元一千年八月七日(秋) | 显示全部楼层 |阅读模式
    终于搞出了个算是比较有意思的东西了。其实写这个的脚本倒挺简单,就是繁琐 + 麻烦。完全自己写的
    有 500 多行,再加上原默认脚本以及其中添加的,一共 1000 多一点。

      这个自动战斗简单的改一下,也可以作为“援助型 NPC“的行动判定。

      也可以反向改成敌人,提高敌人AI。(首先需要定义每个敌人能够使用的物品)


    下面还是先介绍一下:


      自动战斗,顾名思义,就是角色选择“自动战斗”后,无需玩家给角色下达
    指令,角色仍可自己行动。

       该自动战斗有 2 个模式:普通自动战斗 和 AI自动战斗。2 种模式的切换
    使用脚本设置项设置的开关。

       角色在 普通自动战斗 时,只是普通攻击敌人。选择的敌人目标偏向血较少
    者。

       角色在 AI自动战斗 时,判断角色行动类型的流程为:复活同伴 --》 恢复
    同伴(HP和SP)--》攻击。
        如果队伍中有同伴死亡,有很大几率复活同伴(具体多大几率就不透露),
    死亡的同伴个数越多,几率越大。复活同伴的前提条件是有复活类药品或特技。
        跳过复活同伴是恢复同伴,恢复同伴的几率以整体的剩余HP/SP的百分比来
    算,百分比越小,几率越高。单体恢复同伴HP/SP的恢复对象,偏向HP/SP较少
    者。恢复同伴的前提条件是有恢复类药品或特技。
       最后是攻击,攻击判断之前有一定的几率对同伴使用 增益特技。攻击分为
    普通攻击和使用特技,几率以角色的不同而不同,如果是战士类型的角色,普通
    攻击的几率高于使用特技的几率;法师类型的角色则相反。使用特技时有一定的
    几率使用不良状态特技。所有使用特技都是以角色已习得的特技为基础。普通攻
    击和使用单体攻击特技的对象目标,也是偏向血较少者。



    截图看不出效果 —— 无

    脚本太长,且会乱码。为方便新手,只发工程。

    ###########################################
    更新[13/10/02]
    ● 优化自动AI,内容如下:
       
            ■ 恢复:     自动战斗者在恢复同伴时,首先确定恢复对象,根据对象需要恢复的
    #               HP/SP 的多少,来确定使用的物品或特技。需要恢复的对象越多,使用
    #               “己方全体”的物品或特技的几率越大,单个的恢复对象是不会使用
    #               “己方全体”的物品或特技。
    #              
    #                比如确定了某个恢复对象,该对象需要回复 HP 100 ,所能使用的物品
    #               或特技有 3 种:回复 HP 60 ;回复 HP 110 ;回复 HP 220 。那么自动
    #               战斗者会选择 “回复 HP 110” 的这个物品或特技来恢复该对象。
    #
    #
    #   ■ 特技攻击:  如果自动战斗者能够使用“敌全体”特技,并且敌人的数量是 2 个
    #               或以上时,自动战斗者有几率使用“敌全体”特技,敌人数量越多,几
    #               率越大。
    #
    #                  如果是单个攻击对象,首先确定对象,根据该对象剩余的 HP 来选择
    #               特技。在这之前会先判断普通攻击能否打倒该对象,如果能打倒该对象,
    #               就使用普通攻击,而不使用特技了。
    #
    #               比如:例1:攻击对象剩余HP:160 ,自动战斗者可使用的特技有:对该
    #                          对象伤害 HP 180 和 伤害 HP 260 两个特技,但自动战斗者
    #                          对该对象的普通攻击伤害为:HP 200 ,那么自动战斗者会
    #                          选择普通攻击而不使用特技。
    #
    #                     例2:攻击对象剩余HP:2000 ,自动战斗者可使用的特技有:对该
    #                          对象伤害 HP 200 ; 伤害 HP 600 ;伤害 HP 1000 三种,
    #                          那么自动战斗者会选择 伤害 HP 1000 的这个特技来攻击该
    #                          对象。(始终选择伤害最接近攻击对象剩余HP的特技)

    ############################################################

    范例工程:


    最后,发现 BUG 或有更好的建议,请回复!
                 本帖来自P1论坛作者芯☆淡茹水,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=333307  若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    天天去同能,天天有童年!
    回复 论坛版权

    使用道具 举报

    ahome_bigavatar:guest
    ahome_bigavatar:welcomelogin
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

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

    GMT+8, 2024-5-13 14:02 , Processed in 0.065443 second(s), 44 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回复 返回顶部 返回列表