扫描二维码关注官方公众号
返回列表
+ 发新帖
查看: 162|回复: 0

[转载发布] 随机装备生成系统 v1.4 [11月30日更新]

[复制链接]
累计送礼:
0 个
累计收礼:
0 个
  • TA的每日心情
    开心
    昨天 18:01
  • 签到天数: 114 天

    连续签到: 4 天

    [LV.6]常住居民II

    2338

    主题

    403

    回帖

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    6
    卡币
    10627
    OK点
    16
    推广点
    0
    同能卷
    0
    积分
    13396

    灌水之王

    发表于 2024-4-19 18:14:56 | 显示全部楼层 |阅读模式
    随机装备生成系统 v1.4





    系统截图:
    疯狂刷装备之后的物品栏


    某钢杖


    经过8次二次合成,普通攻击秒小BOSS,特技秒大BOSS的前后缀超长的剑(注意是金色那把,紫色那把安魂曲是RP武器)


    带“蓄力”状态的力量戒指..配合那把BT剑力量攻击力爆棚,999防御力的BOSS照样打几万




    范例工程下载:
    随机装备生成系统 v1.4



    简介:
    在SailCat的随机武器生成系统的基础上做出来的东东,仿《暗黑破坏神》。可以随机生成武器和防具,加入前缀和后缀。
    由于是在数据库的武器和防具中设定前缀和后缀,所以它们各自所增加的属性可以灵活调整。
    每种前缀和后缀可以设置其品质,不同品质有不同的出现概率。
    由于是每件装备单独对象,所以装备升级等东西比较容易做到。




    详细使用说明见脚本。
    注意看范例工程的数据库是怎么设定的。

    范例工程中也包括两个整合了的脚本:
    柳柳的“得失物品武器防具金钱提示”
    亿万星辰的“装备属性显示”



    冲突可能:
    虽然比SailCat原来的随机武器生成系统小了一点,但是仍然具有很高冲突性。大多数可能出现冲突的地方都在“随机装备生成系统·接入”部分中。

    已知冲突:商店类脚本,得失物品金钱提示,装备类脚本




    脚本分成两个部分,两个部分都要插入到Main之上。之所以分开,是因为一个是冲突很低的核心部分,一个是冲突较高的接入部分。
    因为字数太多,请下载范例工程..这里贴出一部分使用说明
    ==========================================================================
      随机装备生成系统 v1.4
    ==========================================================================

      By 叶子 SailCat

      这个系统是在SailCat的随机武器生成系统的基础上编写而成
      类似《暗黑破坏神》的随机生成装备
      
      4-10-2006 1.0
      -先行体验版
      
      4-11-2006 1.1
      -事件调用失去武器防具时,从最后的一个开始失去
      -修正了生成装备时不会出现同样品质的前缀和后缀的BUG
      -部分参数变动,增加了忽略定量参数
      -避免了某些一时冲动插入本脚本,连数据库都不调一下的行为而导致的错误
      
      4-30-2006 1.2
      -修正Window_Base描绘物品的BUG
      -修正杀死敌人不能获得装备的BUG
      -改写了生成装备ID时的冗余代码
      
      5-19-2006 1.3
      -修正了一个致命BUG
      
      11-29-2006 1.4
      -简化了品质设置
      -增加了装备初始权值的设定
      -删除了检查数据库的代码
      -修正了能否装备判定的BUG

    --------------------------------------------------------------------------
      随机装备生成系统·核心
    --------------------------------------------------------------------------
      本部分是随机装备生成系统的核心,基本不会造成与其它脚本冲突,但缺少“随机装备生
      成系统·接入”的话,不能融合到游戏脚本中。
      
    -----------
      使用前须知
    -----------
      
      -本系统分成两个部分,分别为“随机装备生成系统·核心”和
      “随机装备生成系统·接入”,使用时两个部分都要插入。
      
      -因为本系统对RPG底层数据结构的改动非常大,对RGSS完全不了解者不建议采用本系统。
      
      -强烈推荐下载范例工程,可以有一个更直观的认识。
      
      -虽然比SailCat原来的随机武器生成系统的冲突小了一点,但仍然具有很高的冲突性,
      发生冲突的地方大部分都是在“随机装备生成系统·接入”中。
      
      -请仔细耐心阅读完全部说明,最好能看看范例工程中的数据库是怎样设置的。
      
    -----------
      简要使用步骤
    -----------

    1、插入“随机装备生成系统·核心”和“随机装备生成系统·接入”到Main之上
    (根据喜好还可以使用附带的已整合脚本:“得失物品金钱提示”和“装备属性显示”)

    2、在数据库中的武器和防具部分设置分散数据用装备、前缀和后缀,
    ID请按 Ctrl+F 搜索“■ 随机武器”和“■ 随机防具”,在那里的常量设定里。

    -----------
      深入说明(核心部分)
    -----------
      
      在“随机装备生成系统·接入”中还有一些关于获得和失去武器的说明
      
      1、主要名词解释
      
      1.1 母本:
      
      数据库中原本设定的武器(防具),作为随机生成装备数据的基础
      如果母本的属性里面勾了某个品质(见1.5),它就不会被附加上该种品质的前缀和后缀
      
      1.2 前缀:
      
      数据库中指定ID范围的武器(防具),对随机生成装备的数据进行加成,同时在生成的装
      备名称前面加上前缀名称,在生成的装备的说明后面加上前缀说明。
      
      设定位置:数据库中的武器(防具)中
      
      1.3 后缀
      
      数据库中指定ID范围的武器(防具),对随机生成装备的数据进行加成,同时在生成的装
      备名称前面加上后缀名称,在生成的装备的说明后面加上后缀说明。
      
      设定位置:数据库中的武器(防具)中
      
      1.4 分散数据处理ID
      
      对应数据库中的装备ID,用来作装备数据浮动用。为了避免极品和垃圾相差太远,不建议
      把分散数据处理用装备的数据设置得太夸张。
      
      1.5 品质
      
      每一个前缀和后缀都要选择它的品质,品质决定其出现概率
      
      设定位置:数据库中的系统-属性,同时每一个前缀和后缀都要勾上对应品质
      
      1.6 权值
      
      权值决定了装备的颜色
      生成装备的总权值 = 母本权值 + 所有前缀权值 + 所有后缀权值
      
      权值设置方法(无论母本、前缀、后缀都可设置)
      在装备的说明中加上: \权值[n]
      那么它的权值就为n
      不设置的话,权值默认为0
      范例游戏中有设置权值
      
      1.7 生成一个装备的简要流程(忽略参数和定量):
      
      取得母本(例如事件-获得武器)
      
        |
      
      装备数据的所有数据代入母本数据
      
        |
       
      -开始前缀处理:
      
      按品质概率随机选取一个品质
      
      在属于这个品质的所有前缀中随机取得一个前缀
      
      ·条件分歧:如果前缀没有勾选“no text”属性
      
        装备的名称前插入前缀的名称
       
        装备的说明后加入前缀的说明
      
      ·分歧结束
      
      装备的动画ID = 前缀的动画ID(如果前缀的动画ID不为空)(只有武器才有动画ID)
      
      装备的自动状态ID = 前缀的自动状态ID(如果前缀的自动状态ID不为空)(只用防具才有自动状态ID)
      
      装备的价格 = 其本身 × 前缀的价格 × 0.01
      
      ·条件分歧:如果前缀勾选了“套用基准值”属性
      
        装备的其余各项数字类数据(自动状态ID除外) = 其本身 + 前缀对应数据数字 × 母本基准值 × 0.01
       
        (例外:防具的回避修正忽略基准值,以100代替)
      
      ·除此以外的情况
       
        装备的其余各项数字类数据(自动状态ID除外) = 其本身 × 前缀对应数据数字 × 0.01
      
      ·分歧结束
      
      装备的属性(武器)、防御属性(防具)、附加状态(武器)、解除状态(武器)、
      防御状态(防具) 为其本身与前缀的相同项目的并集(也就是加上前缀的属性、状态等)
      
        |

      -开始后缀处理(除了把名称插在后面之外,其余同前缀)
      
        |
      
      -开始分散数据处理(按照设定的分散数据处理次数重复处理):
      
      按概率从分散数据处理ID中随机选出一个ID,取得数据库中ID对应的分散数据处理用装备
      
      装备的价格 = 其本身 × 分散数据处理用装备的价格 × 0.01
      
      ·条件分歧:如果分散数据处理用装备勾选了“套用基准值”属性
      
        装备的其余各项数字类数据(自动状态ID除外) = 其本身 + 分散数据处理用装备对应数据数字 × 母本基准值 × 0.01
       
        (例外:防具的回避修正忽略基准值,以100代替)
      
      ·除此以外的情况
       
        装备的其余各项数字类数据(自动状态ID除外) = 其本身 × 分散数据处理用装备对应数据数字 × 0.01
      
      ·分歧结束
      
      装备的属性(武器)、防御属性(防具)、附加状态(武器)、解除状态(武器)、
      防御状态(防具) 为其本身与分散数据处理用装备的相同项目的并集
      (也就是加上分散数据处理用装备的属性、状态等)
      
        |
      
      -开始数据取整
      
        |
      
      -装备生成完毕
      
      简单来说,进行加成就是以新数据(前缀或后缀)乘以旧数据(母本)除以100,同时将
      新数据的各项属性和状态套入旧属性。
      
      一般的话,一个没有勾选“套用基准值”属性的前缀或后缀,其各项数字类数据都是100
      或接近于100,作为加成的百分比。如果勾选了“套用基准值”,除了要加成的项目,各
      项数字都是0。
      
      1.8 基准值:
      
      如果前缀(后缀)勾选了“套用基准值”属性的话,用基准值来代替装备的数据进行加成
      
      例如铜剑防御力为0,但有一个前缀是给武器加防御的,如果不套用基准值的话:
      生成后装备防御力 = 铜剑防御力(0) × 前缀防御力(例如30) = 0
      套用了基准值的话:
      生成后装备防御力 = 铜剑防御力(0)+ 铜剑基准值(例如100) × 前缀防御力(30) = 30
      
      装备基准值设置方法(只有母本才需要设置基准值)
      在母本装备的说明中加上: \基准值[n]
      那么它的基准值就为n
      不设置的话,基准值默认为0
      范例游戏的母本设置了基准值
      
      1.9 定量
      
      例如有一个前缀和一个后缀,前缀加自动状态“蓄力”,后缀加自动状态“屏障”
      如果两个都没有设置定量或定量相同的话,生成的装备的自动状态为后缀的“屏障”
      如果前缀设置的定量大于后缀的定量,那么这个装备的自动状态就为“蓄力”
      假设这个母本本身带有自动状态,而它的定量比前后缀的定量都大,那么它附加的自动状
      态就不会改变。
      
      前后缀定量设置方法(无论母本、前缀、后缀都可设置)
      在装备的说明中加上: \定量[n]
      那么它的定量就为n
      不设置的话,定量默认为0
      范例游戏中没有设置定量
      
      1.10 防具的前后缀种类(重要!只有防具才有这个设置)
      
      默认的情况下,防具的前缀和后缀只能附加给相同种类的防具。
      例如某前缀的种类为盾,那么这个前缀就只会在盾中出现。
      如果想让一个前缀(后缀)能适用于不同种类的防具,除了设置几个同名不同种类的前缀
      (后缀)外,还可以为同一个前缀(后缀)增加种类。
      
      前后缀种类设置方法(只有前缀和后缀才有这个设置)
      在前后缀用装备的说明中加上: \种类[n]
      (n的值  0:盾 1:头部防具 2:身体防具 3:装饰品)
      那么它也成为了第n类防具的前缀(后缀)。
      
      这个控制码可以重复输入。
      例如想让一个前缀能适用于所有防具,可以选择其种类为盾,在其说明中加上:
      \种类[1]\种类[2]\种类[3]



    --------------------------------------------------------------------------
      随机装备生成系统·接入
    --------------------------------------------------------------------------
      本部分是随机装备生成系统的接入部分,基本上所有可能冲突的地方都是在这里。
      
    -----------
      使用说明(接入部分)
    -----------

      -获得装备原理(以武器为例):
      
      用事件来获得武器的话,都会生成一把新武器,并不会获得以前已经生成过的武器。如果
      用事件来失去武器,就会搜索母本相同的最新的一把武器,找到后就失去。
      
      如果用脚本:
      获得武器:
      $game_party.gain_weapon(weapon_id, n, new)
      参数:
      new:为true时生成新武器,false时获得旧武器(更换装备时调用这个)
      weapon_id:new为true时为母本ID,new为false时为装备ID(同actor.weapon_id)
      n:n把。每把都会重新计算生成。
      
      失去武器:
      $game_party.lose_weapon(weapon_id, n, serch)
      参数:
      serch:为true时搜索母本相同的武器失去,false时为失去指定ID武器
      weapon_id:serch为true时为母本ID,serch为false时为装备ID(同actor.weapon_id)
      n:n把。
      
      由于获得装备的函数跟原来不同,所以可能会跟商店、仓库类脚本冲突。


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

    本帖子中包含更多资源

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

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

    使用道具 举报

    文明发言,和谐互动
    文明发言,和谐互动
    高级模式
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    幸运抽奖

    社区每日抽奖来袭,快来试试你是欧皇还是非酋~

    立即查看

    聊天机器人
    Loading...

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

    GMT+8, 2025-3-15 00:44 , Processed in 0.120300 second(s), 54 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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