阿荣社区采集员3 发表于 2025-1-6 09:50:35

过去开魔盒的姿势弱爆了,看我的

不管是公益服还是圈钱服,开盒子是玩家获得较为稀有道具的主要方式之一,也是这个游戏的主要玩法之一。
但是对于腐竹和pvf修改来说 台服的魔盒有很多限制比如
1.只提供了6个指定ID道具作为魔盒 应该是写死在exe里的


2.奖池的控制 不管是获得概率 还是道具的增删 都需要重新部署一次pvf才行
3.手动开启繁琐,开个盒子而已没必要每次都要问我要不要开把?
4.某些玩家开挂,但是他开盒子竟然运气也很好 气煞我也

阿荣社区机器人 发表于 2025-1-6 09:51:22

继续

阿荣社区采集员 发表于 2025-1-6 09:51:36

前排

阿荣社区采集员3 发表于 2025-1-6 09:52:18

所以我考虑用frida实现一个模拟开盒
解决这4个问题
1.frida只要是消耗品都可以触发开盒,没有这么多限制


2.奖池控制,我可以随意的控制奖池里道具的增删、爆率、数量以及是否播报,并且这一切都可以搭配frida热重载实现动态控制 在需求只有修改魔盒的情况下,实现了pvf的热更新不是吗


3.右键点击直接开启 没有繁琐的提示
4.开挂?对腐竹出言不逊?我给你上个debuff

阿荣社区采集员3 发表于 2025-1-6 09:52:55

什么玩家又抱怨强烈气息不够用了,魔盒出货率太低了?那我们把3326调高一点 数量调大一点


使劲锻造吧

xiaomi 发表于 2025-1-6 09:53:44

继续

阿荣社区采集员3 发表于 2025-1-6 09:53:53

原版魔盒的逻辑也不能少
没有魔锤 NO背包爆满 NO




这里的背包不足hook是吴克大佬提供的

阿荣社区采集员3 发表于 2025-1-6 09:54:41

来了喜闻乐见的实现环节
只讲逻辑因为太简单了
使用游戏捕获事件hook   0x854f990
这个一键端里的frida里都会带
1.在角色使用道具触发事件里 将自己定义的魔盒道具添加进去 实现使用魔盒触发回调
2.回调里判断背包是否爆满,这里我以为有专门的hook可以判断,最后借鉴了群友的思路 遍历判断背包是不是被塞满 加了一点偏移值,因为我的魔盒有3个奖品 所以我的偏移量是3意思就是如果背包空格子小于等于3的时候,就会提示背包已满,装备栏消耗品材料栏都是分开的。
3.抽奖逻辑,借鉴了轮盘游戏的抽奖逻辑。想象一个圆形的轮盘,它被100个不同大小的扇形填满,奖池里奖励的概率 其实就是扇形大小,然后用生成的随机数去判断轮盘指针的落点,几率小的道具它的扇形区域就小,指针落在它上面的概率就小,具体实现可以百度一下轮盘游戏的代码写法
4.抽到的奖励通过开盒hook发给玩家 同样是吴克大佬提供的

阿荣社区采集员2 发表于 2025-1-6 09:55:34

尽量别用日志写入事件,用烟花事件,这样能在物品扣除之前就执行,能直接读取物品格子本身

Dveridow 发表于 2025-1-6 09:55:56

虽然不明白,但是挺厉害的样子

阿荣社区采集员1 发表于 2025-1-6 09:56:15

盒子还有挂?卡道具?

阿荣社区采集员1 发表于 2025-1-6 09:56:41

牛皮

阿荣社区采集员3 发表于 2025-1-6 09:56:58

厉害

xiaomi 发表于 2025-1-6 09:57:12

能看一下成品吗 大佬

阿荣社区采集员 发表于 2025-1-6 09:57:46

给力
页: [1]
查看完整版本: 过去开魔盒的姿势弱爆了,看我的