jc_xxxxx 发表于 2025-3-10 15:16:27

请问ra全能模拟器的金手指如何输入啊?

本帖最后由 jc_xxxxx 于 2025-3-10 15:22 编辑

这是我写的 cht
cheat0_address = "0"
cheat0_address_bit_position = "0"
cheat0_big_endian = "false"
cheat0_cheat_type = "1"
cheat0_code = "10ce68:0098+10ce6a:967f"
cheat0_desc = "money"
cheat0_enable = "true"
cheat0_handler = "0"
cheat0_memory_search_size = "3"
cheat0_repeat_add_to_address = "1"
cheat0_repeat_add_to_value = "0"
cheat0_repeat_count = "1"
cheat0_rumble_port = "0"
cheat0_rumble_primary_duration = "0"
cheat0_rumble_primary_strength = "0"
cheat0_rumble_secondary_duration = "0"
cheat0_rumble_secondary_strength = "0"
cheat0_rumble_type = "0"
cheat0_rumble_value = "0"
cheat0_value = "0"
cheats = "1"

关键是这一行如何填?
我填的是:cheat0_code = "10ce68:0098+10ce6a:967f"

这是原代码(付图片) Infinite Money 代码 10CE68 0098
10CE6A 967F




leoxxx 发表于 2025-3-10 15:45:44

本帖最后由 leoxxx 于 2025-3-10 16:46 编辑

https://docs.libretro.com/guides/cheat-codes/
cheat0_cheat_type = "1"
更正
cheat0_handler = "1"

[*]Emulator Handled are codes that are sent to the emulator/core and it is up to the emulator/core to apply them. 0
[*]RetroArch Handled are codes that RetroArch itself handles by directly scanning/manipulating the emulator/core memory area. 1

这项如果是1,那就不能用这种格式。1是指用REATORACH的格式。REATORACH的CHEAT格式太烂,用的都是十进制的。值和地址都分开的。cheat0_rumble_value = "",这里填值。cheat0_address = "",这里填地址址。你现在用的这种就算转成十进制也不一定能用,可能还有偏移。(还有其它问题我就不细说了,以前在PPX上分析并说明过这个格式。)你可以尝试把handler改成0,看看有没有效果。如果CORE本身不支持这种CHEAT CODE的格式(原模拟器可能支持而到了RETROARCH把这个功能给阉了),那只有放弃。

Alifu1227 发表于 2025-3-10 15:48:59

进来支持一下

jc_xxxxx 发表于 2025-3-10 15:59:39

leoxxx 发表于 2025-3-10 15:45
https://docs.libretro.com/guides/cheat-codes/




试了,还是无效!

leoxxx 发表于 2025-3-10 16:00:42

本帖最后由 leoxxx 于 2025-3-10 16:59 编辑

jc_xxxxx 发表于 2025-3-10 15:59
试了,还是无效!
劝退。自己找第三方修改器。

cheat0_handler = "0"
另位我上面有个地方我说错了,应该是这里。你这个0就是CORE处理。

https://www.bilibili.com/opus/851258824417345584
每项的具体作用自行参考。TYPE那项我不确定这里面写的对不对。一般这项不动。

https://www.youtube.com/watch?v=ckGcBQQyppU
这里还有一个参考视频,可以自行尝试。

https://github.com/libretro/RetroArch/blob/master/cheat_manager.c

switch (cheat_st->cheats.cheat_type)
      {
         case CHEAT_TYPE_SET_TO_VALUE:
            set_value = true;
            value_to_set = cheat_st->cheats.value;
            break;
         case CHEAT_TYPE_INCREASE_VALUE:
            set_value = true;
            value_to_set = curr_val + cheat_st->cheats.value;
            break;
         case CHEAT_TYPE_DECREASE_VALUE:
            set_value = true;
            value_to_set = curr_val - cheat_st->cheats.value;
            break;
         case CHEAT_TYPE_RUN_NEXT_IF_EQ:
            if (!(curr_val == cheat_st->cheats.value))
               run_cheat = false;
            break;
         case CHEAT_TYPE_RUN_NEXT_IF_NEQ:
            if (!(curr_val != cheat_st->cheats.value))
               run_cheat = false;
            break;
         case CHEAT_TYPE_RUN_NEXT_IF_LT:
            if (!(cheat_st->cheats.value < curr_val))
               run_cheat = false;
            break;
         case CHEAT_TYPE_RUN_NEXT_IF_GT:
            if (!(cheat_st->cheats.value > curr_val))
               run_cheat = false;
            break;
      }看了一下原代码,功能大概和B站那个说的差不多。(我看不懂原代码,只知道大概是干了点啥)

爱唱歌的汤姆猫 发表于 2025-3-10 16:58:07

楼上正解,我就顺便路过看看。

地平线下沉 发表于 2025-3-10 17:53:01

进来看看

RenDanny 发表于 2025-3-10 19:20:51

进来看看

wait 发表于 2025-3-10 22:46:06

进来学习一下!

cse3221 发表于 2025-3-10 23:29:28

我這樣弄金錢無限可以用


cheat0_address = "1101416"

cheat0_address_bit_position = "0"
cheat0_big_endian = "false"
cheat0_cheat_type = "1"
cheat0_code = ""
cheat0_desc = "金錢無限"
cheat0_enable = "true"
cheat0_handler = "1"
cheat0_memory_search_size = "5"
cheat0_repeat_add_to_address = "1"
cheat0_repeat_add_to_value = "0"
cheat0_repeat_count = "1"
cheat0_rumble_port = "0"
cheat0_rumble_primary_duration = "0"
cheat0_rumble_primary_strength = "0"
cheat0_rumble_secondary_duration = "0"
cheat0_rumble_secondary_strength = "0"
cheat0_rumble_type = "0"
cheat0_rumble_value = "0"
cheat0_value = "2140575744"
cheats = "1"





页: [1] 2
查看完整版本: 请问ra全能模拟器的金手指如何输入啊?