Pokemon Center | 口袋中心 以口袋妖怪为主题并带有其他动漫游戏的讨论

 找回密码
 加入口袋中心
搜索
查看: 375|回复: 29

DNS - Day, Night and Seasons的Seasons-Header-Eidtor谁会用?

[复制链接]

94

回帖

188

现金

2

勋章券

手举徽章的兴奋

Rank: 6Rank: 6

积分
356

时光印记Lv.1

发表于 2024-11-17 10:07:48 | 显示全部楼层 |阅读模式
本帖最后由 leoxxx 于 2024-11-22 22:12 编辑

https://www.hackromtools.info/dns-day-night-and-seasons/
这个是别人转存的。
原作者的网站是:https://www.memoryresources.de/
已经无法访问。
Seasons这块没有相关说明。
直接插入Seasons不起效,必须编辑头。

https://web.archive.org/web/2013 ... esources.de/DNS.php
找到了相关说明

https://web.archive.org/web/2018 ... rces.de/DNS/DNS.zip
可下载到软件的链接

DNS.zip (412.1 KB, 下载次数: 6)
说明保存为本地网页。

机翻为英语
0.png

If you start the header editor under Tools and you have installed the Seasons system, it will directly load the header used by the Seasons system. If no header is found, or you want another header, you can continue at point 2. Otherwise, directly at point 3.

Enter the offset of the header in field (1). Now click on Load(2) if there is already a header at this point. But if I want to create a new header at this point, you can click on "Create new one"(3). Now a new header is created.

Now that the header has been loaded, you can edit it. At the beginning it should still be empty, so you have to add a new set consisting of the 4 seasons via Add new Set (5). You can then select this via the box with the number (4).

Once you have selected a set, you can edit it using the 4 fields (6). The top one must always be filled with the offset of the normal tileset (tileset part1 or 2 doesn't matter) (you can find out e.g. in the professional header view of the AM).
The other 3 contain either the offset of the tileset to be loaded, or 0 for the offset of the normal tileset.

Once you have edited everything the way you want it, all you have to do is save it. Click on "Write Season-Header to ROM" (7). If you want to know in advance how much space is needed: this is shown via the offset (8).

这个所谓教程还是没有说明怎么用。原文下面有个人评论说这个对新手或有点相关知识的人来说还是难以上手。
What I think, however, is that the Season Editor is far too complicated and not every newbie or newcomer can use it. Even somewhat experienced people would also have difficulty understanding the program at all, but that's the only minus point, otherwise the tool is 1A. If not the best D&N;!

不知道本论坛里是否有了解这个功能的人。望指点一下。



刚试下来结果发现先写入一次报错后,再LOAD一下SET那里数字可以点了,8那里变成了0x14。四个SEASON这里全填1再写入提示成功,但运行ROM没啥变化。不知道四季应该怎么填。
(you can find out e.g. in the professional header view of the AM).

AM指的是Advance Map?
使用说明:
https://www.pokecommunity.com/th ... map-headers.164353/
https://www.pokecommunity.com/th ... ap-tutorial.161616/
https://www.hackromtools.info/advance-map/

下载:http://amneu.no-ip.info/
这个站点很奇怪,缓存可以看到页面,但是直接输入这个链接就下载了。

http://ampage.no-ip.info/
这个可以正常浏览
看了一下,AM里就有个SEASON EDITOR。tileset part1和2在AM中找到了,但填上去没用。


暂时放弃。tileset完全搞不懂。






先用DNS插入SEASONS,然后用自带的Season-Head-Edtior写入tileset,也可以用AM写入。两个写入略有区别。

Season-Head-Edtior:只能添加,不能删除。空头默认插入F00900(可自定义),添加tileset偏移时有多处BUG。须先Write一次报错,之后Load,上面的offset会变成0x14。
四季的头可以随意填。Write前须add new set一次,不然写入虽然提示成功,但实际上写入的都是0。第一次写入数据时必须有两组SET,写入SET1时记得ADD后切换一下,从SET1切到SET2,再切回来。不然数据会添加到最新一组里去。以后用这个工具添加或编辑时也是如此,需要注意。之后用AM更改(仅更改)或删除现有的数据,插入的位置不会变,添加会变更为9D00F0。


再用AM添加位置会变成9D0114。9D00F0数据有残留。基本情况同上,我就不上图了。

AM:添加时是选项式的,且可以删除 (或许应该叫屏蔽)。0为tileset part1。四季的偏移会自动填充,之后只能编辑除Normal之外的三季。下面数字和上面的编移是对应的,更改任意一下项会一起变,我建议是直接改数字,以免填写无效的偏移。无效的偏移在保存时会报错。另外,还可以新建tileset。这个功能我试了几次没保存成功。点击不管你有没有干过啥都会要你保存,提示成功,但点关闭就开始报错,之后出现无法关闭窗口的问题,只能任务管理器结束。用AM保存后,用DNS插入的空头季节位置会有变化,变更为9D00F0。如果删除(屏蔽)所有已添加数据,再重新添加,则变更为新位置。(自动向后找空写入)


11111.png
未插入空头前

01.png
插入空头后

F00700处开始也有变化,就不上图了。




1.png
上图是插入空头后用DNS的Season-Head-Edtior写入两组tileset的变化。

2.png
用AM更改后的变化。DNS查看插入位置仍为F00900。

3.png
用AM删除一组后的变化。位置不变。

4.png
用AM删除所有组(数据还在,屏蔽?)。位置不变。

5.png 6.png
用AM再添加两组,位置有变动。F00900数据有残留。



7.png
直接用AM在插入空头后添加了两组数据,位置更为9D00F0。F00900处的标记被清除(这里的图我直接引用未插入前的图)。

8.png
删除所有后再重新添加,位置变更为9D0114。9D00F0处的数据有残留。

总之,不要随意添加或删除(屏蔽),可以直接更改现有数据,以免出现废弃数据残留。
回复

使用道具 举报

94

回帖

188

现金

2

勋章券

手举徽章的兴奋

Rank: 6Rank: 6

积分
356

时光印记Lv.1

 楼主| 发表于 2024-11-20 18:24:03 | 显示全部楼层
本帖最后由 leoxxx 于 2024-11-20 21:17 编辑

我现在大概知道怎么用了,已经能触发季节了,需要结合AM(Advance Map)一起使用。但是由于我调用了错误的tileset(图块集),造成地图错乱。我现在不太懂tileset怎么做,不知道论坛里有谁懂的?
1.png
3.gif
@海のLUGIA
@jiangzhengwenjz
请问,你们懂tileset吗?
回复 支持 反对

使用道具 举报

3370

回帖

531

现金

485

勋章券

超级版主

Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26

积分
22154
QQ

时光印记Lv.3挥金如土勋章水中王者勋章Lv3Omega红宝石发售确认纪念章Alpha蓝宝石发售确认纪念章金银好CP-Ho-oh/LUGIA【里】金银好CP-Ho-oh/LUGIA【真·正常向】异化型LUGIA【M超梦版】

发表于 2024-11-21 02:56:07 | 显示全部楼层
leoxxx 发表于 2024-11-20 18:24
我现在大概知道怎么用了,已经能触发季节了,需要结合AM(Advance Map)一起使用。但是由于我调用了错误的t ...

帮你@RX3E

点评

谢谢  发表于 2024-11-21 08:40
回复 支持 反对

使用道具 举报

193

回帖

9246

现金

7

勋章券

踏入阳光的成就

Rank: 14Rank: 14Rank: 14Rank: 14

积分
3260

时光印记Lv.1水中王者勋章Lv1

发表于 2024-11-21 13:34:29 | 显示全部楼层
本帖最后由 RX3E 于 2024-11-21 13:40 编辑

做这个我觉得可以直接先把原本的tileset数据复制一份过去,然后再修改。既然是同一tileset的四季,这样操作当然最简单。tileset数据分两部分,一部分就是具体的tileset,包含各个tile具体使用图片的信息、行为字节这些,另一部分就是tiles图片了。不同季节的tileset组应该都各自有对应的指针。分别把原tileset的数据copy下来再repoint新tileset的就好(当然图片可以按需要换),可以找一下原版tileset的指针,到那个指针对应的位置那,复制全部对应部分到新地址(我记得tileset好像有两张表,一张地图块的一张行为字节的,分别处理就行),然后把新的tileset组的对应指针换成这个新地址的,tiles也是一样,不过更简单些,直接导入图片repoint就行。
回复 支持 反对

使用道具 举报

94

回帖

188

现金

2

勋章券

手举徽章的兴奋

Rank: 6Rank: 6

积分
356

时光印记Lv.1

 楼主| 发表于 2024-11-21 13:39:08 | 显示全部楼层
本帖最后由 leoxxx 于 2024-11-21 13:41 编辑
RX3E 发表于 2024-11-21 13:34
做这个我觉得可以直接先把原本的tileset数据复制一份过去,然后再修改。既然是同一tileset的四季,这样操作 ...


意是先导出全部tileset,然后改色?那我是不是要复制+3套?
指针我知道,就是上文说的的offest。一个地图有两个part,你也说到了这点。
关于指针重定向我也是完全不懂。上面错误的图块就是调用了其它地图的offset引起的。
回复 支持 反对

使用道具 举报

193

回帖

9246

现金

7

勋章券

踏入阳光的成就

Rank: 14Rank: 14Rank: 14Rank: 14

积分
3260

时光印记Lv.1水中王者勋章Lv1

发表于 2024-11-21 13:42:27 | 显示全部楼层
leoxxx 发表于 2024-11-21 13:39
意是先导出全部tileset,然后改色?
指针我知道,就是上文说的的offest。一个地图有两个part,你也说 ...


对,调色板也有对应指针的,刚才差点忘说了。另外,tileset数据我记得也分两个部分,一部分是地图块的图像分布,一部分是行为字节。似乎都分别有对应指针。都统统先复制原版的再在那个基础上改最简单。
回复 支持 反对

使用道具 举报

94

回帖

188

现金

2

勋章券

手举徽章的兴奋

Rank: 6Rank: 6

积分
356

时光印记Lv.1

 楼主| 发表于 2024-11-21 13:43:56 | 显示全部楼层
RX3E 发表于 2024-11-21 13:42
对,调色板也有对应指针的,刚才差点忘说了。另外,tileset数据我记得也分两个部分,一部分是地图块的 ...

但是不知道为什么,我用AM新建tileset就会报错。好像提示是指针不对。
回复 支持 反对

使用道具 举报

193

回帖

9246

现金

7

勋章券

踏入阳光的成就

Rank: 14Rank: 14Rank: 14Rank: 14

积分
3260

时光印记Lv.1水中王者勋章Lv1

发表于 2024-11-21 13:45:51 | 显示全部楼层
leoxxx 发表于 2024-11-21 13:43
但是不知道为什么,我用AM新建tileset就会报错。好像提示是指针不对。

季节系统不是导入之后就直接给新建了对应指针组吗?我也不太清楚它具体的原理,但应该是已经有数据了吧。已经有了的话直接对着那个部分repoint就行?
回复 支持 反对

使用道具 举报

94

回帖

188

现金

2

勋章券

手举徽章的兴奋

Rank: 6Rank: 6

积分
356

时光印记Lv.1

 楼主| 发表于 2024-11-21 13:47:58 | 显示全部楼层
RX3E 发表于 2024-11-21 13:45
季节系统不是导入之后就直接给新建了对应指针组吗?我也不太清楚它具体的原理,但应该是已经有数据了吧。 ...


并没有,他需要你手动填offset,仅给你插了个空头。之后全要自己填。上是我研究了好久才发现怎么变化的。
回复 支持 反对

使用道具 举报

193

回帖

9246

现金

7

勋章券

踏入阳光的成就

Rank: 14Rank: 14Rank: 14Rank: 14

积分
3260

时光印记Lv.1水中王者勋章Lv1

发表于 2024-11-21 13:51:24 | 显示全部楼层
leoxxx 发表于 2024-11-21 13:47
并没有,他需要你手动填offset,仅给你插了个空头。之后全要自己填。上是我研究了好久才发现怎么变化的 ...

那就也直接对应原版的复制一下?offset和原版应该都是一个格式的。直接按着原来的做是不是容易一些?我记得季节是不用新建实质的tileset组的,都是几个tileset组对应同一个总tileset组的。
回复 支持 反对

使用道具 举报

94

回帖

188

现金

2

勋章券

手举徽章的兴奋

Rank: 6Rank: 6

积分
356

时光印记Lv.1

 楼主| 发表于 2024-11-21 13:54:10 | 显示全部楼层
本帖最后由 leoxxx 于 2024-11-21 13:59 编辑
RX3E 发表于 2024-11-21 13:51
那就也直接对应原版的复制一下?offset和原版应该都是一个格式的。直接按着原来的做是不是容易一些?我记 ...


直接改原有的tileset?
然后重定向针指?
请恕我钝顿,这块我是一窍不通。
四季如果全填tileset part1 - 0 这个offset就是没变化,至少我测试下来是这样的。变化的是填1-74(手动试一下来的上限,再上去就报错了)。也就是这个ROM有75个指针对应图块集(不知道有没有理解错误)。
回复 支持 反对

使用道具 举报

193

回帖

9246

现金

7

勋章券

踏入阳光的成就

Rank: 14Rank: 14Rank: 14Rank: 14

积分
3260

时光印记Lv.1水中王者勋章Lv1

发表于 2024-11-21 14:01:13 | 显示全部楼层
leoxxx 发表于 2024-11-21 13:54
直接改原有的tileset?
然后重定向针指?

不是修改原有的,是把原有的复制几份,然后分别通过改指针把几份复制的数据分配给不同季节。这样可以分别修改。
回复 支持 反对

使用道具 举报

94

回帖

188

现金

2

勋章券

手举徽章的兴奋

Rank: 6Rank: 6

积分
356

时光印记Lv.1

 楼主| 发表于 2024-11-21 14:03:04 | 显示全部楼层
RX3E 发表于 2024-11-21 14:01
不是修改原有的,是把原有的复制几份,然后分别通过改指针把几份复制的数据分配给不同季节。这样可以分别 ...


能不能说一下通过哪个工具来操作,我现在用的是AM。最好的详细点,谢谢。
回复 支持 反对

使用道具 举报

193

回帖

9246

现金

7

勋章券

踏入阳光的成就

Rank: 14Rank: 14Rank: 14Rank: 14

积分
3260

时光印记Lv.1水中王者勋章Lv1

发表于 2024-11-21 14:06:26 | 显示全部楼层
leoxxx 发表于 2024-11-21 14:03
能不能说一下通过哪个工具来操作,我现在用的是AM。

保险起见可以用hex editor类型的直接写入数据,am做不了这种。比如说你找到了一个tileset数据对应的指针组这些数据,把它在hex editor里copy下来(要保证复制完整),再直接复制到新地址,复制几份再找到四季各个tileset对应的指针,把它们都repoint到这些新复制的数据。这些指针组里一般包含tileset,行为字节、图片和调色板的指针,也分别copy了repoint就行。
回复 支持 反对

使用道具 举报

94

回帖

188

现金

2

勋章券

手举徽章的兴奋

Rank: 6Rank: 6

积分
356

时光印记Lv.1

 楼主| 发表于 2024-11-21 14:10:39 | 显示全部楼层
RX3E 发表于 2024-11-21 14:06
保险起见可以用hex editor类型的直接写入数据,am做不了这种。比如说你找到了一个tileset数据对应的指针 ...

我先去尝试一下看看。

点评

如果已经导入季节系统,应该已经至少有一个对应的正常季节指针组的指针了,到那个指针对应的地方复制数据最好。  发表于 2024-11-21 14:13
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入口袋中心

本版积分规则

手机版|Archiver|Pokemon Center

GMT+8, 2024-12-8 04:17 , Processed in 0.131229 second(s), 58 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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