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

Project1

 找回密码
 注册会员
搜索
123
返回列表 发新帖
楼主: guoxiaomi
打印 上一主题 下一主题

[原创发布] 【RGM】RGModern 1.0.4 - RMXP新runtime

[复制链接]

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

21
 楼主| 发表于 2023-6-6 02:08:39 | 显示全部楼层
本帖最后由 guoxiaomi 于 2023-6-6 02:18 编辑
RTCanwind 发表于 2023-5-30 01:49
感谢~~
单独运行确实是到Animations.rxdata这步,不过在工程里运行时还有一些脚本报错,如
- 013_Pictur ...


做了大概13处修改了吧,大的bug没有了,可以正常进入到游戏里。


其实有很多功能是RGM自带的,Pokemon Essentials自己又实现了一遍,就很蛋疼,如果能请Pokemon Essentials的作者专门用RGM重制一遍就完美了,生态+1。

当然借此我也找到了RGM的几处bug,下个版本1.0.4会修复,附件里的Game.exe是已经修复的版本。

具体的改动可以查阅fix.log。然后建议你把PBS文件夹里的文本文件都用记事本重新保存一下,选择编码为utf-8。
附件(1个月后会删除):
https://7niu.gxmatmars.com/p1/RG ... %20-%20modified.zip

度盘链接: https://pan.baidu.com/s/1V75OpCKKX8KrBgeZyAEouw?pwd=3x59 提取码: 3x59 复制这段内容后打开百度网盘手机App,操作更方便哦

目前没搞定的地方是无法点击X关闭程序,以及无法正确修改窗口大小,这个我找机会再看看代码吧。

可能有人只关心fix.log
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

22
 楼主| 发表于 2023-6-8 00:41:35 | 显示全部楼层
本帖最后由 guoxiaomi 于 2023-6-8 01:42 编辑

1.0.4已更新,以下是本次更新日志:

## 1.0.4 - 2023-06-07
### 修复
- Tone#new和Tone#set现在可以省略第4个参数gray,默认值是0。
- Finder#find现在会检查路径是否为文件夹,并且不会返回对应于文件夹的路径。
- 修复了Font#exist?未生效的BUG。

### 优化
- 允许Graphics#transition使用小于或等于0的duration。
- 现在可以在中文工程路径下读取中文文件名的素材。
- 现在可以读取加密包中的中文素材,不过加密包必须使用`7z a -tzip Graphics.zip Graphics -scsUTF-8 -p123`指令制作,否则文件名不会以UTF-8的格式保存。
- 范例里的箱子事件现在会读取加密包中的中文文件名素材“加菲猫.jpg”。

### 新增
- Graphics.zip已更新。如果使用RGM小助手,请删掉misc.7z然后更新RGModern。
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

23
 楼主| 发表于 2023-6-8 22:16:09 | 显示全部楼层
本帖最后由 guoxiaomi 于 2023-6-8 22:50 编辑
RTCanwind 发表于 2023-6-8 02:42
试了一下佬改的版本,记录一下遇到的问题
1.Message: undefined method `exists?' for File:Class
File似 ...


1. File的exists?方法在ruby3.2移除了,你要改成exist?(去掉s)
2. 这个可能是src_rect设置超过了Bitmap大小,RGM会强行把Bitmap缩放到这么大,而RGSS则会使用透明像素填满剩下的区域。需要检查一下对话文本里Sprite#src_rect的设置。
3. 既然有错误日志,那还得排查具体的报错。

===
2已经确认是这个问题,用附件替换Data\Scripts\009_Objects and windows\004_SpriteWindow.rb文件。其实只改动了一行,但是solargraph会自动format。
004_SpriteWindow.rb (27.92 KB, 下载次数: 1)

全局搜索.src_rect.set发现003_Window.rb里也有一处类似的写法。不过这个似乎没有影响到对话文本,所以就没改。
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

24
 楼主| 发表于 2023-6-9 01:24:32 | 显示全部楼层
本帖最后由 guoxiaomi 于 2023-6-9 01:30 编辑
RTCanwind 发表于 2023-6-8 23:48
感谢
补上之前的一个具体报错
2023-06-08 02:01:29 +0800


这个argument error是我主动抛出的,因为width和height有一个被设置了小于0的值。你可以查看builtin.rb的183行就能看到是我主动报错的。

在005_SpriteWindow_text的1114行把可能小于0的rect.width-16改成[rect.width-16, 0].max就行。

比起原版RGSS,RGM对数据有更严格的要求。主要是为了避免在C++层出现更难排查的错误,所以在ruby层有各种范围和类型检查。根据常识,Rect的宽和高小于0是没有意义的,所以给报错了。
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

25
 楼主| 发表于 2023-6-9 13:58:00 | 显示全部楼层
本帖最后由 guoxiaomi 于 2023-6-10 12:03 编辑
RTCanwind 发表于 2023-6-9 08:08
[2023-06-09 08:04:10 +0800]

Exception: RuntimeError


音乐和音效对素材的要求不一样。音乐(BGM和ME)支持mp3,wav,ogg和mid,音效(BGS和SE)只支持wav和ogg。所以Finder里只尝试匹配这几个后缀。你这里SE使用了mp3格式,你可以加上后缀,但我不确定能不能正常播放。

以下脚本会让Finder查找BGS和SE时匹配mp3格式,你可以查看finder.rb的相关内容
  1. Finder::Suffix[:sound] << ".mp3"
复制代码


无errorlog闪退,你参考一下本贴50和51楼的处理,用cmd运行Game.exe,给我最后的日志信息我好定位错误。
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

26
 楼主| 发表于 2023-6-10 12:30:40 | 显示全部楼层
mkl7788 发表于 2023-6-10 11:13
我将rmxp 更换 rgss3 引擎,能正常使用RGD。
然后使用RGM 打包data文件,打开game.exe闪退  工程里测试也一 ...

对VA的支持可能不会很快。 不过我猜你跑的是这个?https://rpg.blue/thread-363284-1-1.html

只要把第一个脚本去掉,并且定义几个常量,看上去rgm就可以跑起来了。
  1. $Screen_X = Graphics.width
  2. $Screen_Y = Graphics.height
  3. $Map_X=$Screen_X/32
  4. $Map_Y=$Screen_Y/32
  5. $Screen_X_2=$Screen_X/2
  6. $Screen_Y_2=$Screen_Y/2
复制代码

点评

对 我用的就是这个  发表于 2023-6-10 12:39
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

27
 楼主| 发表于 2023-6-15 20:31:47 | 显示全部楼层
计划闭关1~2个月以重写核心模块,使用全新的数据管理和协作模式。
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

28
 楼主| 发表于 2023-6-16 19:34:20 | 显示全部楼层
本帖最后由 guoxiaomi 于 2023-6-18 16:32 编辑
765111039 发表于 2023-6-16 18:50
郭大,我这里发现个问题,我加了几首BGM,是MP3格式的,然后我在一个地图用了默认的那些MID格式的,然后进 ...


偶尔也会有mp3放不出来的情况,但我还没查出问题在哪。

我在范例的音乐测试事件里也提到了这个问题,好像在播放mp3音乐前先使用Audio.bgm_stop或者Audio.bgm_fade关掉音乐,再播放就没问题。

试一下在Game_System中打个补丁吧,bgm_play之前先stop。
补充:Game_System中有4处volume,在后面添加上 * 128 / 100 将音量扩大就行,参见下面的代码。
  1.   #--------------------------------------------------------------------------
  2.   # ● 演奏 BGM
  3.   #     bgm : 演奏的 BGM
  4.   #--------------------------------------------------------------------------
  5.   def bgm_play(bgm)
  6.     @playing_bgm = bgm
  7.     if bgm != nil and bgm.name != ""
  8.       Audio.bgm_stop # 在播放之前停止BGM
  9.       Audio.bgm_play("Audio/BGM/" + bgm.name, bgm.volume * 128 / 100, bgm.pitch) # 扩大音量到原来的1.28倍
  10.     else
  11.       Audio.bgm_stop
  12.     end
  13.     Graphics.frame_reset
  14.   end
复制代码


点评

可能小助手更新失败了?  发表于 2023-7-16 15:26
好的,不过郭大我想问下,小助手更新的话直接点小助手那的更新就可以了吧 不用上网站去下载新的吧?我点小助手更新之后,还是不能有中文路径  发表于 2023-6-18 17:37
rgm同时调小了所有的声音,只有原来的80%。如果你想完全一样,晚上我看看改哪里方便  发表于 2023-6-17 14:56
不是 我的意思是编辑器的声音测试那里听的话音量会比较大,但是进游戏了又变小,这样很不利制作,有没有办法弄同步呢  发表于 2023-6-17 11:36
因为rgm的最大音量是128,设成100其实相当于原来的80了。。。  发表于 2023-6-16 23:01
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

29
 楼主| 发表于 2023-7-24 23:01:03 | 显示全部楼层
aoaoxlxlqq 发表于 2023-7-16 19:27
大佬这是出关了吗,辛苦了

问题可能就出在d3d9吧,一直用的9,后来我改11就再没触发了,但是set_pixel也没 ...

1. 音效应该可以多放,最多支持8声道的。
2. d3d11其实是有set_pixel的,只是没有get_pixel。
3. midi的音效库可以自己下载,去config.ini里设置,不过建议弃用midi,这已经是旧时代的技术了
4. 地图平铺是feature,rmxp也是平铺的,取消平铺可以设置@[email protected]_y=false
5. 48x48做不了主要是自动元件和tileset的格式限制比较死,但是并非绝对做不了,需要想一个好方案

音乐的事情我记下来了,不过按照目前的进度我估计9月才能继续修bug
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-4 00:26

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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