台服dnf吧 关注:123,597贴子:2,048,713

frida插件实现宠物装备附魔

只看楼主收藏回复



IP属地:广东1楼2023-05-20 14:51回复
    var CUserCharacInfo_getCurCharacInvenW = new NativeFunction(ptr(0x80DA28E), 'pointer', ['pointer'], {"abi":"sysv"});
    var CInventory_GetInvenRef = new NativeFunction(ptr(0x84FC1DE), 'pointer', ['pointer', 'int', 'int'], {"abi":"sysv"});
    var Inven_Item_isEmpty = new NativeFunction(ptr(0x811ED66), 'int', ['pointer'], {"abi":"sysv"});
    var CUser_send_itemspace = new NativeFunction(ptr(0x865DB6C), 'int', ['pointer', 'int'], {"abi":"sysv"});
    function CreatureEh(user){
    var CreatureEqu = CUserCharacInfo_getCurCharacInvenW(user);//获取背包
    var CreatureEquZero = CInventory_GetInvenRef(CreatureEqu, 3, 140);//获取宠物栏宠物装备第一个格子
    if(Inven_Item_isEmpty(CreatureEquZero))//检查格子中的部位是否是空的
    {
    api_CUser_SendNotiPacketMessage(user, "附魔失败, 缺少适合条件的装备", 3);
    }else{
    CreatureEquZero.add(13).writeU32(2550098);//附魔的卡片ID(徽章ID同样适用)
    api_CUser_SendNotiPacketMessage(user, "附魔成功。", 3);
    }
    CUser_send_itemspace(user, 7);//更新背包
    }


    IP属地:广东2楼2023-05-20 14:51
    收起回复
      2025-12-25 06:07:48
      广告
      不感兴趣
      开通SVIP免广告
      记得去重复,可以用指令触发该函数, 或者和任务完成券一样, 指定消耗品来触发。用数组或者随机数可以进行随机附魔。宠物虽然也可以附魔,但是重新登录会消失。


      IP属地:广东3楼2023-05-20 14:54
      收起回复
        给大佬跪了


        IP属地:山东来自iPhone客户端4楼2023-05-20 14:55
        回复
          6


          IP属地:广西来自Android客户端5楼2023-05-20 16:22
          回复
            6,要是策划看到了马上就出宠物装备附魔宝珠。春节,五一,国庆三个节日三个部位。属性我都想好了,一个加三攻四维,一个加技攻三速,一个加属强和1-95技能LV


            IP属地:湖北来自Android客户端7楼2023-05-20 18:07
            收起回复
              6啊


              IP属地:河北来自Android客户端8楼2023-05-20 23:37
              回复
                6


                IP属地:河南来自手机贴吧9楼2023-05-21 05:37
                回复
                  2025-12-25 06:01:48
                  广告
                  不感兴趣
                  开通SVIP免广告
                  Frida使用触发道具后,背包内没有装备,道具消失,有没有方法判断返还一个道具?跨界那些也是仓库没开跨界道具就没了


                  IP属地:湖南来自iPhone客户端10楼2023-05-21 14:12
                  收起回复
                    失败返还道具问题,看下你的插件是否有函数api_CUser_AddItem(user, item_id, item_cnt),有的话,在判断为失败的地方附加添加道具代码。比如附魔失败这里:
                    if(Inven_Item_isEmpty(CreatureEquZero))//检查格子中的部位是否是空的
                    {
                    api_CUser_SendNotiPacketMessage(user, "附魔失败, 缺少适合条件的装备", 3);
                    api_CUser_AddItem(user, 3300, 1);//发放1个编号3300道具
                    }
                    跨界石那些自己找找判断为失败的地方添加就行


                    IP属地:广东11楼2023-05-21 14:29
                    收起回复
                      大佬牛逼


                      IP属地:广东12楼2023-05-21 18:33
                      回复
                        谢谢分享


                        IP属地:福建来自iPhone客户端13楼2023-05-21 22:34
                        回复
                          请教个问题,我是通过dp调用的frida,dp定义的三个参数类型只有int,float,和char*,我该如何把dp的user.cptr传递给frida


                          IP属地:广东14楼2023-05-22 01:06
                          收起回复
                            大佬 这个返还道具 有个问题,首次登陆游戏 使用道具判断失败 他不会返还 是哪里的问题啊/*
                            function api_CUser_AddItem(user, item_id, item_cnt)
                            {
                            var item_space = Memory.alloc(4);
                            var slot = CUser_AddItem(user, item_id, item_cnt, 6, item_space, 0)
                            if(slot >= 0)
                            {
                            //通知客户端有游戏道具更新
                            CUser_SendUpdateItemList(user, 1, item_space.readInt(), slot);
                            }
                            return;
                            }
                            */


                            IP属地:四川15楼2023-06-15 23:30
                            收起回复
                              2025-12-25 05:55:48
                              广告
                              不感兴趣
                              开通SVIP免广告
                              老哥 插件的攻城怎么改成固定时间开放啊


                              IP属地:辽宁来自Android客户端16楼2023-06-17 07:06
                              回复