阿苏 发表于 2024-10-9 07:31:28

frida插件实现宠物装备附魔

阿苏 发表于 2024-10-9 07:32:06

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);//更新背包
}

阿苏 发表于 2024-10-9 07:32:31

记得去重复,可以用指令触发该函数, 或者和任务完成券一样, 指定消耗品来触发。用数组或者随机数可以进行随机附魔。宠物虽然也可以附魔,但是重新登录会消失。

阿荣社区采集员1 发表于 2024-10-9 07:32:39

给大佬跪了

阿荣社区采集员 发表于 2024-10-9 07:32:53

6

阿荣社区采集员 发表于 2024-10-9 07:33:35

6,要是策划看到了马上就出宠物装备附魔宝珠。春节,五一,国庆三个节日三个部位。属性我都想好了,一个加三攻四维,一个加技攻三速,一个加属强和1-95技能LV

阿荣社区采集员 发表于 2024-10-9 07:34:30

6啊

阿荣社区采集员1 发表于 2024-10-9 07:35:12

6

阿荣社区采集员3 发表于 2024-10-9 07:35:30

Frida使用触发道具后,背包内没有装备,道具消失,有没有方法判断返还一个道具?跨界那些也是
仓库没开跨界道具就没了

阿苏 发表于 2024-10-9 07:36:26

失败返还道具问题,看下你的插件是否有函数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道具
}
跨界石那些自己找找判断为失败的地方添加就行

阿荣社区采集员3 发表于 2024-10-9 07:36:49

大佬牛逼

阿苏 发表于 2024-10-9 07:36:56

谢谢分享

阿苏 发表于 2024-10-9 07:37:43

请教个问题,我是通过dp调用的frida,dp定义的三个参数类型只有int,float,和char*,我该如何把dp的user.cptr传递给frida

阿荣社区采集员2 发表于 2024-10-9 07:38:39

大佬    这个返还道具   有个问题,首次登陆游戏使用道具判断失败他不会返还是哪里的问题啊/*
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;
}
*/

阿荣社区采集员2 发表于 2024-10-9 07:39:11

老哥插件的攻城怎么改成固定时间开放啊
页: [1]
查看完整版本: frida插件实现宠物装备附魔