设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2918|回复: 8
打印 上一主题 下一主题

[已经解决] 萌新求助,如何对RM制作的游戏挂hook

[复制链接]

Lv2.观梦者

梦石
0
星屑
635
在线时间
24 小时
注册时间
2020-4-22
帖子
29
跳转到指定楼层
1
发表于 2021-7-2 14:30:50 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
为了实现一些功能,需要在窗口销毁后执行操作
找了好多教程,还是没有找到解决办法,跪求大佬帮助

此前的思路是,自己写一个dll然后使用WIN32包调用,但是貌似dll里面的函数只能被调用,无法加载到内存中
也试过对游戏自带的dll进行注入,反编译再编译回去无法运行通过

有办法实现给游戏进程挂hook吗?如果有,该从什么思路出发

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
41497
在线时间
7590 小时
注册时间
2009-7-6
帖子
13502

开拓者贵宾

7
发表于 2021-7-4 14:14:27 | 只看该作者
代理消息处理函数是个方法,我之前发过一个基于RGS300内建退出函数的hook
https://rpg.blue/thread-398189-1-1.html
楼主或许可以参考一下

点评

谢谢 纯脚本太难了,最后还是靠自己写dll勉强解决了问题  发表于 2021-7-7 15:03

评分

参与人数 1星屑 +50 +1 收起 理由
alexncf125 + 50 + 1 LZ谢谢

查看全部评分

RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
635
在线时间
24 小时
注册时间
2020-4-22
帖子
29
6
 楼主| 发表于 2021-7-3 02:24:33 | 只看该作者
QChan 发表于 2021-7-2 23:19
你可以参考下这个(VX ACE)
https://github.com/Chainsawkitten/RGSSDisableF1AltEnterF12
他有提供一个范例 ...

感谢,非常有用
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
387
在线时间
59 小时
注册时间
2021-6-30
帖子
20
5
发表于 2021-7-3 01:09:25 | 只看该作者
我找到了个现有的脚本,不过作者没开源,应该可以直接用
https://www.whiteflute.org/wfrgss/?mode=view&realmId=1&pageId=37
下载点 「Exit-EX 終了処理スクリプト(VXAce)」をダウンロードする

使用应该是在 Exit-EX.rb 这个脚本的 35 行写自己的代码。

评分

参与人数 1+1 收起 理由
alexncf125 + 1 忘了按赞啦

查看全部评分

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
387
在线时间
59 小时
注册时间
2021-6-30
帖子
20
4
发表于 2021-7-2 23:19:08 | 只看该作者
本帖最后由 QChan 于 2021-7-3 01:11 编辑

你可以参考下这个(VX ACE)
https://github.com/Chainsawkitten/RGSSDisableF1AltEnterF12
他有提供一个范例工程,作用是 Hook 了程序消息处理,屏蔽了一些按键。通过 ruby 调用 dll 进行 hook 的,不过我运行不了他这个范例。
原帖:https://www.rpgmakercentral.com/topic/38925-disable-f1-altenter-and-f12/

也有大佬直接在 ruby 里实现的,不过他帖子已经没了,你可以看这个链接的二楼。(VX)
https://rpg.blue/thread-401601-1-1.html

评分

参与人数 1星屑 +50 收起 理由
alexncf125 + 50 LZ感谢,非常有用

查看全部评分

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
635
在线时间
24 小时
注册时间
2020-4-22
帖子
29
3
 楼主| 发表于 2021-7-2 22:54:51 | 只看该作者
guoxiaomi 发表于 2021-7-2 20:00
ruby有个END关键字是不是可以用上?还有就是貌似点x会调用exit方法?

不存在的
点x直接销毁窗体,和ruby解释器不在一个层面上

点评

SiNova_EndEx v1.00???  发表于 2021-7-3 00:35
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23989
在线时间
3339 小时
注册时间
2011-7-8
帖子
3926

开拓者

2
发表于 2021-7-2 20:00:49 | 只看该作者
ruby有个END关键字是不是可以用上?还有就是貌似点x会调用exit方法?
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-1 13:39

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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