此存储库包含 Xenia Canary 的游戏补丁。
插件文档可以在这里找到。
非补丁问题属于 Xenia Discord 服务器。
xenia_canary.exe
所在的位置。patches
夹(如果存在)(如果需要则进行备份)。game-patches.zip
并将patches
解压到xenia_canary.exe
所在的目录中。文件夹结构应如下所示: └─── Xenia Canary
| ...
│ xenia_canary.exe
| ...
└─── patches
...
584111F7 - Minecraft (XBLA, TU0).patch.toml
...
apply_patches
设置为true
(默认)。is_enabled
从false
更改为true
。例如,要启用 60 FPS 补丁: [[ patch ]]
name = " 60 FPS "
desc = " Description "
author = " Author "
is_enabled = false
[[ patch . be8 ]]
address = 0 x########
value = 0 x##
[[ patch ]]
name = " 60 FPS "
desc = " Description "
author = " Author "
is_enabled = true
[[ patch . be8 ]]
address = 0 x########
value = 0 x##
如果您在标题栏中看到[Patches Applied]
,则补丁已成功应用。
不要更改现有补丁的哈希值。如果您的游戏版本不同,则需要将补丁移植到该版本。
present_letterbox
必须从true
更改为false
!0x########
将########
替换为十六进制值。 帧速率高于 60 FPS 需要在 Xenia Canary 配置中将 vsync 从 true 更改为 false。
emit_source_annotations = true
设置。这将在反汇编时给出注释。Edit
> Options
> Extra Custom Types
并选中所有这些。Scan Settings
并启用MEM_MAPPED
。全部 | |
---|---|
开始 | 100000000 |
停止 | 200000000 |
/patches
目录中并使用portable.txt
运行它。Title ID - Game Title.patch.toml
并位于/patches
中。4D5307DF - Blue Dragon.patch.toml
。log_level
设置为至少2
(默认);请参阅如何使用定位。xenia.log
中按Ctrl+F搜索Module hash:
i> ######## Module DeviceCdrom0default.xex:
Module Hash: ################
game-patches/patches/454108D8 - 二军第 40 天.patch.toml
95f5180 中的第 3 至 6 行
[[patch.*]] | 信息 | 值(示例) |
---|---|---|
be8 | 十六进制,1 字节 | 0x00 |
be16 | 十六进制,2 字节 | 0x0000 |
be32 | 十六进制,4 字节 | 0x00000000 |
be64 | 十六进制,8 字节 | 0x0000000000000000 |
array | 六角形,任何尺寸 | "0x##*" |
f32 | 浮动,单 | 1.0 |
f64 | 浮子,双 | 1.0 |
string | 字符串,UTF-8 | "string" |
u16string | 字符串,UTF-16 | "string" |
title_name = " Game Title "
title_id = " 1234ABCD " # AB-1234
hash = " ################ " # Module the hash applies to (i.e. default.xex)
# Can be an array if applicable:
hash = [
" ################ " # See above
]
# media_id = "1234ABCD" # Optionally you can add a redump link; Disc (Region): http://redump.org/disc/1234
# Can also be an array if applicable:
# media_id = [
# "1234ABCD" # See above
# ]
# Title ID, hash, and media ID must be uppercase.
[[ patch ]]
name = " Patch name "
author = " Me "
desc = " Patch description " # Description is optional
is_enabled = false # Must be false for PRs
# [[patch.*]]
# For example, be8:
[[ patch . be8 ]]
address = 0x82000000 # Tends to start with 0x8, always 4 bytes
value = 0x00
# Address and value hex must be lowercase.
# string:
[[ patch . string ]]
address = 0x82000000 # Tends to start with 0x8, always 4 bytes
value = " string "
# End of file newline