基本信息

  • 作者:安研色Shiki
  • 联系方式:官群928626681/1029435374;用户群708698754
  • 版本:v1.0.7(8)
  • 发布日期:2022-11-18
  • 最后更新:2022-11-26
  • 简介:好感互动基础框架,包含好感读写、编辑、成长、送礼互动等。

详细介绍

好感度

好感度系统是一项在文本内容、可触发功能等维度差异化区分用户的评价系统,该项用作评分的用户属性在本系统中统一以好感度表述,不等于字面意义的好感,骰主可基于人设将favor_title修改为合适的表述。
好感度属性以&favor_field记入用户配置,以&favor_title显示于文本;默认配置下好感度属性为favor,显示为好感度,以上两个字段可以通过在WebUI添加同名自定义回执的方式覆盖,或在mod/DiceFavor/speech/favor_title.yaml中修改(不推荐)。

  • {strSelfNick}好感 查看好感度
  • {strSelfNick}好感排行 查看所有用户的好感排名
  • {strSelfNick}群内好感排行 群内使用,查看群员的好感度排名

    好感度迁移

    如果你先前已使用过其他好感度关联脚本,且好感度属性不为favor(例:love),可通过指令好感迁移自love将原本记录在其他用户属性的数值迁移至favor;如原先使用的是诸如原样例脚本中以百分数形式记录的好感度,可使用好感百分比迁移自
    无论任何推荐将包括favor_field在内的任何用户属性记录为英文字符。

    好感度应用

  • 差分文本:{grade:user.favor?50=尊敬的&else=这位}用户
  • 回复触发限制:Limit=user_var:favor=50+

纯爱遥控器

这是一组帮助骰主调控对用户好感的指令,以弥补设计失误和漏洞:

  • 叮~强制好感 增加值 对象: 对象的好感+=增加值,无对象默认自身,无增加值默认100
  • 叮~好感成长 对象: 对象好感进行一次成长检定
  • 叮~好感覆写 目标值 对象: 对象的好感重写为目标值
  • 叮~好感擦除 对象: 完全清除对象的好感

送礼系统

送礼

触发词strPresentSpell默认为送{strSelfNick}。指令后接礼物名,如果礼物名记录在Dice目录/selfdata/gift/special_present.json(该文件会在触发送礼后自动生成)中,则调用表中对应的回应和好感变化,否则触发默认回应。

  • 每日送礼上限:Dice目录/selfdata/gift.json中的daily_send_limit项决定,默认为3
  • 送礼好感上限:通过送礼所能达成的好感上限,Dice目录/selfdata/gift.json中的favor_limit项决定,默认为100
  • 默认拒绝:由Dice目录/selfdata/gift.json中的refuse_default项决定,默认不拒绝,拒绝回礼则不计入收礼次数不进行好感成长
  • 默认回应:接受礼物并进行一次好感成长检定,成功+1

索取

触发词strDemandSpell默认为向{strSelfNick}索取
指令后接礼物名,如果为空,则触发{gift_return_default},如果礼物名记录在Dice目录/selfdata/gift/special_return.json(该文件会在触发回礼后自动生成)中,则调用表中对应的回应,否则触发默认回应。

  • 每日回礼上限:Dice目录/selfdata/gift.json中的daily_return_limit项决定,默认为3;
  • 回礼消耗好感:若回礼所设定了cost(默认0),用户获取回礼需消耗好感;
  • 回礼好感门槛:当用户好感低于回礼所设定的favor_floor(默认0)时,索取失败,如果礼物设置了cost_deny项将另外扣除好感;

本框架对礼物没有实体数量概念,因此该指令可扩展为任意互动请求

注意事项

所有文本编辑如果涉及到回复触发词修改,需要.mod reload DiceFavor以使改动生效。
Dice目录/selfdata/gift/special_present.jsonDice目录/selfdata/gift/special_return.json的修改需在重启后生效。

模块内容覆盖

mod内容将被自定义内容覆盖,因此你可以通过编辑自定义回执文本等方式覆盖本mod的预置内容。
多个mod载入时,排序靠后的mod将覆盖前序mod的同名内容,因此在本mod基础上扩展,只需要将扩展mod置于本mod之后即可。


安装说明

  • Dice!2.6.5及以上版本(推荐):对骰娘发送指令.mod get DiceFavor
  • 手动安装:将以下文件放入Dice存档目录/mod/文件夹下解压
DiceFavor-1.0.8.zip
78kB
|-- mod
    |-- DiceFavor.json
    |-- DiceFavor

更新说明

Dice!2.6.5及以上版本(推荐):对骰娘发送指令.mod update DiceFavor

  • v1.0.5(2022-11-19): 修复了DiceFavor/script/gift/reply_send中的变量名错误,新增请求回礼时的好感度检查机制
  • v1.0.6(2022-11-19): 修复了无法正常获取favor的错误,修复今日收礼次数统计不计算当次的错误,新增好感不满足回礼条件时的好感惩罚项
  • v1.0.7(2022-11-20): 修复纯爱遥控器的代码错误,新增refuse_default项控制是否接受不在礼物列表中的礼物
  • v1.0.8(2022-11-26): 修复好感覆写指令录入好感度类型错误的问题
安研色Shiki 将标题更改为 「【功能模块】好感基础框架DiceFavor1.0.5」。

2022-11-19更新v1.0.5: 修复了DiceFavor/script/gift/reply_send中的变量名错误,新增请求回礼时的好感度检查机制

好耶,来试试

.mod get DiceFavor后提示

注入记忆体「DiceFavor」失败×
访问https://raw.sevencdn.com/Dice-Developer-Team/DiceModIndex/main/DiceFavor失败: 访问服务器时出现错误! HTTP状态码: 308

能请教一下308是什么情况吗?
miraiDice从前几月开始就在开启成功后一直报308错误
刷新缓存包失败 Failed to refresh index:Network:访问服务器时出现错误!http状态码:308

版本已经更新至2.6.5,Windows Sever 2012 R2 ×86

    kiri HTTP308错误的原因是访问内容在github上,我们为了保证国内用户的连通使用的是对github的加速代理访问,所以访问错误时返回的是308重定向。
    可供尝试的解决方案:你可以在Dice目录中创建conf/mod/source.list,在其中加入以下三行,然后重启

    https://raw.sevencdn.com/Dice-Developer-Team/DiceModIndex/main/
    https://raw.githubusercontent.com/Dice-Developer-Team/DiceModIndex/main/

      安研色Shiki

      成功注入记忆体「DiceFavor」1.0.6(7)√

      创建后重启成功安装,谢谢shiki!

      miraiDice启动时的软件缓存包刷新这个有类似的办法解决吗?话说刷新软件缓存包是什么?是检查更新?

      “叮好感覆写 目标值 对象”这个指令,
      一直回复 请用户写出好感重置的目标值×
      重写有效数字是多少呢?50 100不行

        kiri 软件缓存包是先前测试中的远程扩展文件仓库,现在用Mod仓库替代了
        指令失效是笔误,已修复,请使用.mod update DiceFavor更新

        安研色Shiki 将标题更改为 「【功能模块】好感基础框架DiceFavor1.0.7」。
        6 天 后

        2022-11-26更新v1.0.8: 修复了好感覆写指令将好感度错误录入为字符串,导致后续脚本运行错误的bug

        4 个月 后

        您好,想要修改送礼所能达成的好感上限,但是发现selfdata下的gift.json显示是这样的,似乎没有favor_limit项,想问问具体是什么问题,以及这种情况如果想要修改上限的话应该怎么操作。

        [未知用户] 手动修改

        {
        "daily_send_limit":3,
        "rcv_total":345
        }

        需要重载生效

          1 个月 后

          请问在Dice目录/selfdata/gift.json中没有找到refuse_default,想要修改默认拒绝的话应该怎么做呢

            8 个月 后

            请问,查询好感度的时候发现单查自己的和查看全部用户好感时显示的好感度不一样是怎么回事啊?

            2 个月 后

            Gullweig yaml里编辑的话,冒号后用 -|

            strHlpMsg: |-
             请使用.dismiss 9376 送{self}退群
             .bot on/off 9376 //群内指令开关