MENU

【歪门邪道】怪物猎人崛起素材无中生有 & Cheat Engine初探

January 19, 2022 • 瞎折腾

以前经常使用Cheat Engine的数值修改功能来修改单机游戏的金钱、素材数量。但对于怪猎这种需要重复刷素材的,这种方法只能修改已有的素材,对于尚未获得素材还是无能为力。并且这一作与上一作的世界/冰原不同,道具箱的内存地址不再连续,并且数据结构也变复杂了,每个物品占用96字节,但我只知道前8字节的意义,因此使用代码生成道具箱变得不太可能(我在世界/冰原中就是这样操作的)。经过一番搜索,终于能够使用Auto Assembler和Lua脚本进行自动化加物品了。本文记述其过程。

关于Cheat Engine的介绍这里就不多赘述了,它是一个非常好用的内存修改器和注入器。在怪物猎人世界/冰原中,一开始通过搜索道具箱中素材的数量,发现这个数量的地址是有规律的。经过一番简单的搜索,配合GitHub上大神反解出来的物品数据结构,我可以轻易的生成我想要的道具箱,然后将其输出成16进制的内存地址,再使用CE覆盖进游戏内存,这样便实现了任意素材的无中生有。但是到了崛起,我发现道具箱的内存分布是不连续的,除非挂调试器找指针,否则很难迅速的定位内存地址。而卡普空虽然反作弊不行,可反调试器还挺在行,只要一挂载调试器,游戏就崩溃。所以通过内存无中生有大概就很困难了,只能曲线救国。

无中生有

经过一翻搜索,我搜到了simpson1029制作的Cheat Table,这个Cheat Table利用CE实现了任意物品的无中生有,但这个东西本身需要你加入某个Discord服务器,我对于这种捆绑销售一向很反感,遂抄起Notepad++看源码。最终找到了能够追加单一物品的核心代码(Auto Assembler):

// Origin: https://fearlessrevolution.com/viewtopic.php?t=18814

alloc(itemgib,256,MonsterHunterRise.exe)
registersymbol(itemgib)
registersymbol(quantity)
registersymbol(itemid)
label(s1)

itemgib:
sub rsp,28
mov rcx,[MonsterHunterRise.exe+C092DC0]
mov rdx,FFFFFFFF
call MonsterHunterRise.exe+2B7B8A0
mov rbx,rax //vtable
mov rcx,rax
mov rax,[MonsterHunterRise.exe+C097B80]
mov rsi,[rax+78] //base item
mov rdx,rsi
mov eax,[itemid]
lea rbp,[rax+4100000]
cmp eax,4100000
cmovae ebp,eax
mov r8,rbp //ID
call MonsterHunterRise.exe+19BF690
test rax,rax
jne s1
mov rcx,rbx
mov rdx,rsi
mov r8d,ebp
call MonsterHunterRise.exe+19BF290
s1:
//mov rcx,rbx, rcx not used in 7F0
mov rdx,rax
mov r8d,ebp //ID
mov r9d,[quantity]//quantity
call MonsterHunterRise.exe+29577F0
add rsp,28
ret

quantity:
dd 3
itemid:
dd 6

这里定义了两个4字节变量:quantityitemid,分别代表待增加的物品数量与ID。其中这部分代码:

mov eax,[itemid]
lea rbp,[rax+4100000]
cmp eax,4100000
cmovae ebp,eax
mov r8,rbp //ID

使得itemid既可以是Raw ID,也可以是Sub-Category Mask ID。例如恢复药的Raw ID是0x04100006,而其Sub-Category Mask ID是6。这里的Sub-Category一共有四个,分别是:

  • 0x04000000 I_Unclassified
  • 0x04100000 I_Normal
  • 0x04200000 I_EnviromentCreature
  • 0x04300000 I_Max

目前游戏中可以放进道具箱的物品都位于I_Normal中,也就是0x04100000起的部分。

至于这段脚本的原理,似乎是通过反编译看游戏中负责添加物品的代码,然后直接调用那部分代码来帮我们添加我们想要的物品,而不必考虑如何模仿游戏的内存。使用时仅需要使用Auto Assembler将这段代码注入到游戏进程中,然后创建一个Thread即可,线程入口是itemgib的地址,不需要额外参数。

自动化添加物品

现在可以针对单一物品无中生有了,但我总不能对每个想要的物品都操作一遍吧?这游戏素材成百上千,挨个弄岂不烦死?好在CE还提供了一个Lua引擎,用于以一种更高阶的视角编程实现自动化(这种高阶是对于汇编来说的)。经过一番现学现卖,我写出了如下Lua脚本:

local itemIdList = {2,3,4,5,6,7,8,9}
local amount = 50

local scriptStr = [[
  createThreadAndWait(itemgib)
]]

local checkOk, errMsg = autoAssembleCheck(scriptStr)
if not checkOk then
 print('The auto assembler script failed.')
 print(errMsg)
 return
else
 print('The auto assembler script passed.')
end

local itemIdAddr = getAddress('itemid')
local quantityAddr = getAddress('quantity')
writeInteger(quantityAddr, amount)
print('Each item give ', readInteger(quantityAddr))

for i = 1, #itemIdList do
  writeInteger(itemIdAddr, itemIdList[i])
  print('Adding item, id: ', readInteger(itemIdAddr))
  if not autoAssemble(scriptStr) then
    print('There was an error with the auto assembler script.')
    break
  end
end

在这段脚本中可以修改两个变量:itemIdListamount,第一个变量就如他的名字,是想要获得物品的id列表,第二个是数量。随后定义了一段Auto Assembler脚本,它的作用就是调用并等待我们刚刚注入的itemgib,注意这个调用并等待只能在CE 7.4中正常工作,更早期的版本会有一个Bug,直观表现就是不报错但也不执行。之后就是一些检查、编译等基本操作了,最后一个循环遍历ID列表,对每个ID都调用一下itemgib

这样一来,只要我们注入好代码,使用Lua即可自动化获取我们想要的物品id,现在只剩下一个问题了:如何或许我们想要的ID列表呢?

爬取物品ID

感谢开源社区的贡献,我在GitHub上找到了一份基于NS版本的物品清单,目前使用上来说并没有什么大问题。为了配合前面的Lua代码,我简单的写了一段Kotlin代码来生成前面的itemIdList

package info.skyblond

import okhttp3.OkHttpClient
import okhttp3.Request
import org.jsoup.Jsoup
import org.jsoup.nodes.Document
import java.net.InetSocketAddress
import java.net.Proxy

object MHR {
    private val client = OkHttpClient.Builder()
        .proxy(Proxy(Proxy.Type.SOCKS, InetSocketAddress("127.0.0.1", 1080)))
        .build()

    private fun doGet(url: String): Document {
        val request: Request = Request.Builder()
            .url(url)
            .build()

        return client.newCall(request).execute().use { response ->
            val str = response.body!!.string()
            Jsoup.parse(str)
        }
    }

    @JvmStatic
    fun main(args: Array<String>) {
        val doc = doGet("https://github.com/mhvuze/MonsterHunterRiseModding/wiki/Item-IDs")
        val itemList = doc.getElementsByTag("table")[0]
            .getElementsByTag("tbody")[0] // skip thead
            .getElementsByTag("tr")
            .map { row ->
                // [0]: raw ID
                // [1]: Hex ID
                // [2]: SubCategory Mask ID
                // [3]: Inner Enum Name
                // [4]: Name
                // [5]: Item type
                // [6]: Item Group
                row.getElementsByTag("td").map { it.text().trim() }
            }

        println("Item types: ")
        itemList.map { it[5] }.distinct().forEach { println(it) }

        val validTypes = listOf(
            "Consume", "Material", "Bullet", "Bottle", "OffcutsMaterial"
        )

        println("Item list: ")
        itemList
            // item type is not empty
            .filter { it[5] in validTypes }
            // name is not blank
            .filter { it[4].isNotBlank() }
            // name is not rejected
            .filter { !it[4].contains("#Rejected#") }
            .forEach { println(it[2] + ", -- " + it[4] + "(${it[5]})") }
    }
}

这段代码会通过socks://127.0.0.1:1080代理连接https://github.com/mhvuze/MonsterHunterRiseModding/wiki/Item-IDs,然后将内容解析成Jsoup表示的Document,这样在处理HTML时会方便一些。这段代码依赖如下:

    implementation 'com.squareup.okhttp3:okhttp:4.9.3'
    implementation 'org.jsoup:jsoup:1.14.3'

这里只选择了消耗品、素材、弹药、瓶和余料,并对物品做了一些过滤,主要是过滤掉没有定义的无效物品,避免污染物品栏。最终输出如下:

Item types: 

Tool
Consume
Material
Bullet
Bottle
PayOff
OffcutsMaterial
CarryPayOff
Antique
Item list: 
2, -- Barrel Bomb(Consume)
3, -- Large Barrel Bomb(Consume)
4, -- Shock Trap(Consume)
5, -- Max Potion(Consume)
6, -- Potion(Consume)
7, -- Mega Potion(Consume)
8, -- Well-done Steak(Consume)
9, -- Lifepowder(Consume)
13, -- Antidote(Consume)
14, -- Cleanser(Consume)
15, -- Deodorant(Consume)
23, -- Empty Phial(Material)
24, -- Small Barrel(Material)
25, -- Large Barrel(Material)
26, -- Trap Tool(Material)
27, -- Powercharm(Material)
28, -- Armorcharm(Material)
29, -- Normal Ammo 1(Bullet)
30, -- Normal Ammo 2(Bullet)
31, -- Normal Ammo 3(Bullet)
32, -- Pierce Ammo 1(Bullet)
33, -- Pierce Ammo 2(Bullet)
34, -- Pierce Ammo 3(Bullet)
35, -- Spread Ammo 1(Bullet)
36, -- Spread Ammo 2(Bullet)
37, -- Spread Ammo 3(Bullet)
38, -- Sticky Ammo 1(Bullet)
39, -- Sticky Ammo 2(Bullet)
40, -- Cluster Bomb 1(Bullet)
41, -- Cluster Bomb 2(Bullet)
42, -- Poison Ammo 1(Bullet)
43, -- Poison Ammo 2(Bullet)
44, -- Paralysis Ammo 1(Bullet)
45, -- Paralysis Ammo 2(Bullet)
46, -- Sleep Ammo 1(Bullet)
47, -- Sleep Ammo 2(Bullet)
48, -- Exhaust Ammo 1(Bullet)
49, -- Exhaust Ammo 2(Bullet)
50, -- Recover Ammo 1(Bullet)
51, -- Flaming Ammo(Bullet)
52, -- Water Ammo(Bullet)
53, -- Thunder Ammo(Bullet)
54, -- Freeze Ammo(Bullet)
55, -- Slicing Ammo(Bullet)
56, -- Wyvern Ammo(Bullet)
57, -- Tranq Ammo(Bullet)
58, -- Power Coating(Bottle)
60, -- Poison Coating(Bottle)
61, -- Para Coating(Bottle)
62, -- Sleep Coating(Bottle)
63, -- Blast Coating(Bottle)
64, -- Close-range Coating(Bottle)
65, -- Exhaust Coating(Bottle)
91, -- Lottery Ticket(Material)
92, -- Rathian Scale(Material)
93, -- Rathian Shell(Material)
94, -- Rathian Webbing(Material)
95, -- Rathian Spike(Material)
96, -- Rathian Plate(Material)
97, -- Rathalos Scale(Material)
98, -- Rathalos Shell(Material)
99, -- Rathalos Webbing(Material)
100, -- Rathalos Plate(Material)
101, -- Rath Marrow(Material)
102, -- Flame Sac(Material)
103, -- Zinogre Shell(Material)
104, -- Zinogre Shockfur(Material)
105, -- Zinogre Claw(Material)
106, -- Zinogre Shocker(Material)
107, -- Zinogre Plate(Material)
108, -- Mizutsune Scale(Material)
109, -- Mizutsune Purplefur(Material)
110, -- Mizutsune Claw(Material)
111, -- Bubblefoam(Material)
112, -- Mizutsune Plate(Material)
113, -- Aknosom Scale(Material)
114, -- Aknosom Feather(Material)
115, -- Aknosom Crest(Material)
116, -- Tetranadon Hide(Material)
117, -- Tetra Carapace(Material)
118, -- Tetranadon Beak(Material)
119, -- Almudron Scale(Material)
120, -- Almudron Shell(Material)
121, -- Almudron Claw(Material)
122, -- Raw Meat(Consume)
123, -- Pitfall Trap(Consume)
124, -- Dango Ticket(Material)
125, -- Honey(Material)
126, -- Blue Mushroom(Material)
127, -- Godbug(Material)
128, -- Herb(Material)
129, -- Nulberry(Consume)
130, -- Latchberry(Material)
131, -- Iron Ore(Material)
132, -- Earth Crystal(Material)
133, -- Machalite Ore(Material)
134, -- Dragonite Ore(Material)
137, -- Energy Drink(Consume)
138, -- Shrapnel Ammo 1(Bullet)
139, -- Shrapnel Ammo 2(Bullet)
140, -- Shrapnel Ammo 3(Bullet)
141, -- Anjanath Pelt(Material)
142, -- Anjanath Scale(Material)
143, -- Anjanath Fang(Material)
144, -- Anjanath Nosebone(Material)
145, -- Anjanath Tail(Material)
146, -- Anjanath Plate(Material)
149, -- Armor Sphere(Material)
150, -- Armor Sphere+(Material)
151, -- Advanced Armor Sphere(Material)
152, -- Sticky Ammo 3(Bullet)
153, -- Cluster Bomb 3(Bullet)
154, -- Recover Ammo 2(Bullet)
155, -- Demon Ammo(Bullet)
156, -- Armor Ammo(Bullet)
157, -- Piercing Fire Ammo(Bullet)
158, -- Piercing Water Ammo(Bullet)
159, -- Piercing Ice Ammo(Bullet)
160, -- Piercing Thunder Ammo(Bullet)
161, -- Dragon Ammo(Bullet)
162, -- Piercing Dragon Ammo(Bullet)
163, -- Flash Bomb(Consume)
165, -- Aknosom Beak(Material)
166, -- Tetranadon Disc(Material)
167, -- Somnacanth Scale(Material)
168, -- Somnacanth Shell(Material)
169, -- Somnacanth Claw(Material)
170, -- Somnacanth Fin(Material)
171, -- Somnacanth Dust(Material)
172, -- Magnamalo Scale(Material)
173, -- Magnamalo Shell(Material)
174, -- Magnamalo Blade(Material)
175, -- Magnamalo Tail(Material)
176, -- Magnamalo Horn(Material)
177, -- Magnamalo Scute(Material)
178, -- Magna Ghostprism(Material)
179, -- Magnamalo Plate(Material)
180, -- Golden Muck(Material)
181, -- Almudron Fin(Material)
182, -- Almudron Tail(Material)
183, -- Almudron Whisker(Material)
184, -- Almudron Plate(Material)
185, -- Goss Harag Fur(Material)
186, -- Goss Harag Hide(Material)
187, -- Goss Harag Brace(Material)
188, -- Goss Harag Horn(Material)
189, -- Goss Harag Claw(Material)
190, -- Block of Ice(Material)
191, -- Goss Harag Bile(Material)
217, -- Arzuros Pelt(Material)
218, -- Arzuros Pelt+(Material)
219, -- Arzuros Shell(Material)
220, -- Arzuros Carapace(Material)
221, -- Arzuros Brace(Material)
222, -- Arzuros Brace+(Material)
223, -- Great Baggi Hide(Material)
224, -- Great Baggi Hide+(Material)
225, -- Great Baggi Claw(Material)
226, -- Great Baggi Claw+(Material)
227, -- Lagombi Pelt(Material)
228, -- Lagombi Pelt+(Material)
229, -- Lagombi Ear(Material)
230, -- Lagombi Ear+(Material)
231, -- Lagombi Plastron(Material)
232, -- Lagombi Plastron+(Material)
233, -- Lagombi Iceclaw(Material)
234, -- Lagombi Frozenclaw(Material)
235, -- Flabby Hide(Material)
236, -- Pearl Hide(Material)
237, -- Pale Extract(Material)
238, -- Pale Bone(Material)
239, -- Pale Steak(Material)
240, -- Barroth Shell(Material)
241, -- Barroth Carapace(Material)
242, -- Barroth Ridge(Material)
243, -- Barroth Ridge+(Material)
244, -- Barroth Claw(Material)
245, -- Barroth Claw+(Material)
246, -- Barroth Scalp(Material)
247, -- Barroth Tail(Material)
248, -- Fertile Mud(Material)
249, -- Great Wroggi Hide(Material)
250, -- Great Wroggi Hide+(Material)
251, -- Great Wroggi Brace(Material)
252, -- Great Wroggi Brace+(Material)
253, -- King's Beak(Material)
254, -- Spongy Hide(Material)
255, -- Spongy Hide+(Material)
256, -- Royal Ludroth Scale(Material)
257, -- Royal Ludroth Scale+(Material)
258, -- Royal Ludroth Claw(Material)
259, -- Royal Ludroth Claw+(Material)
260, -- Royal Ludroth Crest(Material)
261, -- Royal Ludroth Crest+(Material)
262, -- Royal Ludroth Tail(Material)
263, -- Barioth Shell(Material)
264, -- Barioth Carapace(Material)
265, -- Barioth Pelt(Material)
266, -- Barioth Pelt+(Material)
267, -- Barioth Claw(Material)
268, -- Barioth Claw+(Material)
269, -- Barioth Spike(Material)
270, -- Barioth Tail(Material)
271, -- Amber Fang(Material)
272, -- Amber Fang+(Material)
273, -- Volvidon Shell(Material)
274, -- Volvidon Carapace(Material)
275, -- Volvidon Claw(Material)
276, -- Volvidon Claw+(Material)
277, -- Volvidon Rickrack(Material)
278, -- Basarios Shell(Material)
279, -- Basarios Carapace(Material)
280, -- Basarios Wing(Material)
281, -- Basarios Tears(Material)
282, -- Nargacuga Scale(Material)
283, -- Nargacuga Scale+(Material)
284, -- Nargacuga Blackfur(Material)
285, -- Nargacuga Pelt+(Material)
286, -- Nargacuga Tail(Material)
287, -- Narga Tailspike(Material)
288, -- Nargacuga Cutwing(Material)
289, -- Narga Razor(Material)
290, -- Nargacuga Fang(Material)
291, -- Nargacuga Fang+(Material)
292, -- Nargacuga Marrow(Material)
293, -- Narga Medulla(Material)
294, -- Rathian Scale+(Material)
295, -- Rathian Carapace(Material)
296, -- Rathian Spike+(Material)
297, -- Rathian Ruby(Material)
298, -- Zinogre Carapace(Material)
299, -- Zinogre Electrofur(Material)
300, -- Zinogre Horn+(Material)
301, -- Zinogre Claw+(Material)
302, -- Zinogre Shocker+(Material)
303, -- Zinogre Jasper(Material)
304, -- Mizutsune Scale+(Material)
305, -- Mizutsune Purplefur+(Material)
306, -- Mizutsune Claw+(Material)
307, -- Mizutsune Fin+(Material)
308, -- Bubblefoam+(Material)
309, -- Mizutsune Water Orb(Material)
310, -- Rathalos Scale+(Material)
311, -- Rathalos Carapace(Material)
312, -- Rathalos Wing(Material)
313, -- Rathalos Ruby(Material)
314, -- Twisted Horn(Material)
315, -- Majestic Horn(Material)
316, -- Diablos Shell(Material)
317, -- Diablos Carapace(Material)
318, -- Diablos Ridge(Material)
319, -- Diablos Ridge+(Material)
320, -- Diablos Tailcase(Material)
321, -- Diablos Fang(Material)
322, -- Diablos Marrow(Material)
323, -- Diablos Medulla(Material)
324, -- Tigrex Scale(Material)
325, -- Tigrex Scale+(Material)
326, -- Tigrex Shell(Material)
327, -- Tigrex Carapace(Material)
328, -- Tigrex Tail(Material)
329, -- Tigrex Claw(Material)
330, -- Tigrex Claw+(Material)
331, -- Tigrex Fang(Material)
332, -- Tigrex Fang+(Material)
333, -- Tigrex Scalp(Material)
334, -- Tigrex Maw(Material)
335, -- Rajang Horn+(Material)
336, -- Rajang Fang+(Material)
337, -- Rajang Blackfur(Material)
338, -- Rajang Claw+(Material)
339, -- Rajang Tail(Material)
340, -- Gold Rajang Pelt(Material)
341, -- Chameleos Hide+(Material)
342, -- Chameleos Spike(Material)
343, -- Chameleos Claw+(Material)
345, -- Chameleos Tail(Material)
346, -- Chameleos Gem(Material)
347, -- Daora Carapace(Material)
348, -- Daora Dragon Scale+(Material)
349, -- Daora Webbing(Material)
350, -- Daora Horn+(Material)
351, -- Daora Tail(Material)
352, -- Daora Claw+(Material)
353, -- Daora Gem(Material)
354, -- Teostra Carapace(Material)
355, -- Teostra Mane(Material)
356, -- Teostra Tail(Material)
357, -- Teostra Horn+(Material)
358, -- Fire Dragon Scale+(Material)
359, -- Teostra Claw+(Material)
360, -- Teostra Webbing(Material)
361, -- Teostra Powder(Material)
362, -- Teostra Gem(Material)
363, -- Kelbi Horn(Material)
365, -- Anteka Antler(Material)
366, -- Rhenoplos Shell(Material)
367, -- Rhenoplos Carapace(Material)
368, -- Rhenoplos Scalp(Material)
369, -- Slagtoth Hide(Material)
370, -- Slagtoth Hide+(Material)
371, -- Gargwa Feather(Material)
372, -- Bnahabra Shell(Material)
373, -- Bnahabra Carapace(Material)
374, -- Bnahabra Wing(Material)
375, -- Bnahabra Stinger(Material)
376, -- Altaroth Jaw(Material)
377, -- Altaroth Stomach(Material)
378, -- Quality Stomach(Material)
379, -- Bullfango Pelt(Material)
380, -- Bullfango Pelt+(Material)
381, -- Bullfango Head(Material)
382, -- Gajau Skin(Material)
383, -- Gajau Whisker(Material)
384, -- Gajau Scale(Material)
385, -- Gajau Whisker+(Material)
386, -- Jaggi Scale(Material)
387, -- Jaggi Scale+(Material)
388, -- Jaggi Hide(Material)
389, -- Baggi Hide(Material)
390, -- Baggi Scale(Material)
391, -- Baggi Scale+(Material)
392, -- Wroggi Scale(Material)
393, -- Wroggi Scale+(Material)
394, -- Wroggi Hide(Material)
396, -- Kestodon Shell(Material)
397, -- Kestodon Scalp(Material)
398, -- Kestodon Carapace(Material)
399, -- Hydro Hide(Material)
400, -- Hydro Hide+(Material)
401, -- Immature Sponge(Material)
402, -- Uroktor Scale(Material)
403, -- Uroktor Scale+(Material)
404, -- Big Fin(Material)
405, -- Quality Fin(Material)
406, -- Meaty Hide(Material)
407, -- Meaty Hide+(Material)
408, -- Sharqskin Scale(Material)
409, -- Remobra Hide(Material)
410, -- Remobra Hide+(Material)
411, -- Striped Hide(Material)
412, -- Remobra Head(Material)
413, -- Jagras Scale(Material)
414, -- Jagras Hide(Material)
415, -- Jagras Scale+(Material)
416, -- Jagras Hide+(Material)
417, -- Monster Bone S(Material)
418, -- Monster Bone M(Material)
419, -- Monster Bone L(Material)
420, -- Monster Bone+(Material)
421, -- Monster Keenbone(Material)
422, -- Monster Hardbone(Material)
423, -- Elder Dragon Bone(Material)
424, -- Jumbo Bone(Material)
425, -- Stoutbone(Material)
426, -- Bird Wyvern Gem(Material)
427, -- Wyvern Gem(Material)
431, -- Sharp Claw(Material)
432, -- Sharp Fang(Material)
433, -- Piercing Claw(Material)
434, -- Warm Pelt(Material)
435, -- High-quality Pelt(Material)
436, -- Elder Dragon Blood(Material)
437, -- Screamer Sac(Material)
438, -- Poison Sac(Material)
439, -- Toxin Sac(Material)
440, -- Paralysis Sac(Material)
441, -- Omniplegia Sac(Material)
442, -- Sleep Sac(Material)
443, -- Coma Sac(Material)
445, -- Inferno Sac(Material)
446, -- Electro Sac(Material)
447, -- Thunder Sac(Material)
448, -- Frost Sac(Material)
449, -- Freezer Sac(Material)
450, -- Aqua Sac(Material)
451, -- Torrent Sac(Material)
452, -- Monster Fluid(Material)
453, -- Monster Broth(Material)
454, -- Dash Extract(Material)
455, -- Pawprint Stamp(Material)
456, -- Felyne Fur Ruby(Material)
457, -- Rath Wingtalon(Material)
458, -- Rath Medulla(Material)
459, -- Zinogre Horn(Material)
460, -- Zinogre Tail(Material)
461, -- Fulgurbug(Material)
462, -- Mizutsune Fin(Material)
463, -- Mizutsune Tail(Material)
464, -- Rathalos Tail(Material)
465, -- Rare Steak(Consume)
466, -- Burnt Meat(Consume)
467, -- Ancient Potion(Consume)
468, -- Dust of Life(Consume)
469, -- Gourmet Fish(Consume)
470, -- Sushifish(Consume)
471, -- Immunizer(Consume)
472, -- Ration(Consume)
473, -- Dash Juice(Consume)
474, -- Antidote Herb(Material)
475, -- Herbal Medicine(Consume)
476, -- Herbal Powder(Consume)
477, -- Demondrug(Consume)
478, -- Mega Demondrug(Consume)
479, -- Might Seed(Consume)
480, -- Demon Powder(Consume)
481, -- Powertalon(Material)
482, -- Armorskin(Consume)
483, -- Mega Armorskin(Consume)
484, -- Adamant Seed(Consume)
485, -- Hardshell Powder(Consume)
486, -- Armortalon(Material)
487, -- Mega Barrel Bomb(Consume)
488, -- Poisoned Meat(Consume)
489, -- Tinged Meat(Consume)
490, -- Drugged Meat(Consume)
491, -- Farcaster(Consume)
492, -- Poison Smoke Bomb(Consume)
493, -- Sonic Bomb(Consume)
494, -- Tranq Bomb(Consume)
495, -- Poison Kunai(Consume)
496, -- Sleep Kunai(Consume)
497, -- Paralysis Kunai(Consume)
499, -- Whetfish(Consume)
500, -- EZ Ration(Consume)
501, -- First-aid Med(Consume)
502, -- First-aid Med+(Consume)
503, -- EZ Max Potion(Consume)
504, -- EZ Lifepowder(Consume)
505, -- EZ Dust of Life(Consume)
506, -- EZ Herbal Powder(Consume)
507, -- EZ Demon Powder(Consume)
508, -- EZ Hardshell Powder(Consume)
509, -- EZ Shock Trap(Consume)
510, -- EZ Pitfall Trap(Consume)
511, -- EZ Large Barrel Bomb(Consume)
512, -- EZ Sonic Bomb(Consume)
513, -- EZ Flash Bomb(Consume)
514, -- EZ Farcaster(Consume)
515, -- EZ Tranq Bomb(Consume)
518, -- Great Izuchi Pelt(Material)
519, -- Great Izuchi Hide(Material)
520, -- Great Izuchi Tail(Material)
521, -- Great Izuchi Pelt+(Material)
522, -- Great Izuchi Hide+(Material)
523, -- Great Izuchi Tail+(Material)
524, -- Izuchi Pelt(Material)
525, -- Izuchi Tail(Material)
526, -- Izuchi Pelt+(Material)
527, -- Aknosom Scale+(Material)
528, -- Aknosom Feather+(Material)
529, -- Aknosom Crest+(Material)
531, -- Tetranadon Hide+(Material)
532, -- Tetra Carapace+(Material)
533, -- Tetranadon Disc+(Material)
534, -- Tetranadon Beak+(Material)
535, -- Bishaten Fur(Material)
536, -- Bishaten Horn(Material)
537, -- Bishaten Feather(Material)
538, -- Bisha Tailcase(Material)
539, -- Bishaten Talon(Material)
540, -- Poisonfruit(Consume)
541, -- Parafruit(Consume)
542, -- Flashfruit(Consume)
543, -- Bishaten Fur+(Material)
544, -- Bishaten Horn+(Material)
545, -- Bishaten Feather+(Material)
546, -- Bishaten Tailcase+(Material)
547, -- Bishaten Talon+(Material)
548, -- Somnacanth Scale+(Material)
549, -- Somnacanth Shell+(Material)
550, -- Somnacanth Claw+(Material)
551, -- Somnacanth Fin+(Material)
552, -- Somnacanth Sedative(Material)
553, -- Magnamalo Scale+(Material)
554, -- Magnamalo Shell+(Material)
555, -- Magnamalo Blade+(Material)
556, -- Magnamalo Horn+(Material)
557, -- Magnamalo Scute+(Material)
558, -- Purple Magna Orb(Material)
559, -- Magna Soulprism(Material)
560, -- Almudron Scale+(Material)
561, -- Almudron Shell+(Material)
562, -- Almudron Claw+(Material)
563, -- Almudron Fin+(Material)
564, -- Almudron Whisker+(Material)
565, -- Golden Almudron Orb(Material)
566, -- Golden Sludge(Material)
567, -- Goss Harag Fur+(Material)
568, -- Goss Harag Hide+(Material)
569, -- Goss Harag Brace+(Material)
570, -- Goss Harag Horn+(Material)
571, -- Goss Harag Claw+(Material)
572, -- Block of Ice+(Material)
573, -- Rakna-Kadaki Carapace(Material)
574, -- Rakna-Kadaki Silk(Material)
575, -- Rakna-Kadaki Glowgut(Material)
576, -- Rakna-Kadaki Sharpclaw(Material)
577, -- Rakna-Kadaki Spike(Material)
578, -- Ibushi Carapace(Material)
579, -- Ibushi Hide+(Material)
580, -- Ibushi Horn+(Material)
581, -- Ibushi Claw+(Material)
582, -- Ibushi Windsac(Material)
583, -- Ibushi Bluespike(Material)
584, -- Wind Serpent Orb(Material)
585, -- Narwa Carapace(Material)
586, -- Narwa Hide+(Material)
587, -- Narwa Horn+(Material)
588, -- Narwa Claw+(Material)
589, -- Narwa Sparksac(Material)
590, -- Narwa Tentacle(Material)
591, -- Thunder Serpent Orb(Material)
592, -- Scale of Origin(Material)
593, -- Horn of Origin(Material)
594, -- Orb of Origin(Material)
595, -- Shimmering Scale(Material)
596, -- Gleaming Shell(Material)
597, -- Valstrax Claw+(Material)
598, -- Valstrax Tail(Material)
599, -- Rouge Spikewing(Material)
600, -- Valstrax Spineshell(Material)
601, -- Red Dragon Orb(Material)
602, -- Crimson Liquid(Material)
603, -- Apex Beastclaw(Material)
604, -- Apex Bubblefoam(Material)
605, -- Apex Blaze Sac(Material)
606, -- Apex Curlhorn(Material)
607, -- Apex Shockshell(Material)
608, -- Apex Venom Spike(Material)
609, -- Bombadgy Igniter(Material)
610, -- Rachnoid Silk(Material)
611, -- Rachnoid Silk+(Material)
612, -- Tobi-Kadachi Scale(Material)
613, -- Tobi-Kadachi Scale+(Material)
614, -- Tobi-Kadachi Pelt(Material)
615, -- Tobi-Kadachi Pelt+(Material)
616, -- Tobi-Kadachi Membrane(Material)
617, -- Tobi-Kadachi Claw(Material)
618, -- Tobi-Kadachi Claw+(Material)
619, -- Tobi-Kadachi Electrode(Material)
620, -- Tobi-Kadachi Electrode+(Material)
621, -- Jyuratodus Scale+(Material)
622, -- Jyuratodus Carapace(Material)
623, -- Jyuratodus Fang+(Material)
624, -- Jyuratodus Fin+(Material)
625, -- Chameleos Wing(Material)
626, -- Suspicious Fang(Material)
627, -- Suspicious Fang+(Material)
628, -- Kulu-Ya-Ku Scale(Material)
629, -- Kulu-Ya-Ku Scale+(Material)
630, -- Kulu-Ya-Ku Hide(Material)
631, -- Kulu-Ya-Ku Hide+(Material)
632, -- Kulu-Ya-Ku Beak(Material)
633, -- Kulu-Ya-Ku Beak+(Material)
634, -- Kulu-Ya-Ku Plume(Material)
635, -- Kulu-Ya-Ku Plume+(Material)
636, -- Pukei-Pukei Scale(Material)
637, -- Pukei-Pukei Scale+(Material)
638, -- Pukei-Pukei Shell(Material)
639, -- Pukei-Pukei Carapace(Material)
640, -- Pukei-Pukei Quill(Material)
641, -- Pukei-Pukei Wing(Material)
642, -- Pukei-Pukei Sac(Material)
643, -- Pukei-Pukei Sac+(Material)
644, -- Pukei-Pukei Tail(Material)
645, -- Anjanath Scale+(Material)
646, -- Anjanath Pelt+(Material)
647, -- Anjanath Fang+(Material)
648, -- Anjanath Nosebone+(Material)
649, -- Anjanath Gem(Material)
650, -- Bazelgeuse Scale+(Material)
651, -- Bazelgeuse Carapace(Material)
652, -- Bazelgeuse Tail(Material)
653, -- Bazelgeuse Fuse(Material)
654, -- Bazelgeuse Talon(Material)
655, -- Bazelgeuse Wing(Material)
656, -- Bazelgeuse Gem(Material)
657, -- Colossal Bone(Material)
658, -- Great Stoutbone(Material)
659, -- Rich Mud(Material)
660, -- Rathian Scrap(OffcutsMaterial)
661, -- Rathian Scrap+(OffcutsMaterial)
662, -- Rathalos Scrap(OffcutsMaterial)
663, -- Rathalos Scrap+(OffcutsMaterial)
664, -- Zinogre Scrap(OffcutsMaterial)
665, -- Zinogre Scrap+(OffcutsMaterial)
666, -- Arzuros Scrap(OffcutsMaterial)
667, -- Arzuros Scrap+(OffcutsMaterial)
668, -- Baggi Scrap(OffcutsMaterial)
669, -- Baggi Scrap+(OffcutsMaterial)
670, -- Lagombi Scrap(OffcutsMaterial)
671, -- Lagombi Scrap+(OffcutsMaterial)
672, -- Barroth Scrap(OffcutsMaterial)
673, -- Barroth Scrap+(OffcutsMaterial)
674, -- Wroggi Scrap(OffcutsMaterial)
675, -- Wroggi Scrap+(OffcutsMaterial)
676, -- Royal Ludroth Scrap(OffcutsMaterial)
677, -- Royal Ludroth Scrap+(OffcutsMaterial)
678, -- Barioth Scrap(OffcutsMaterial)
679, -- Barioth Scrap+(OffcutsMaterial)
680, -- Volvidon Scrap(OffcutsMaterial)
681, -- Volvidon Scrap+(OffcutsMaterial)
682, -- Basarios Scrap(OffcutsMaterial)
683, -- Basarios Scrap+(OffcutsMaterial)
684, -- Nargacuga Scrap(OffcutsMaterial)
685, -- Nargacuga Scrap+(OffcutsMaterial)
686, -- Nitroshroom(Material)
687, -- Parashroom(Material)
688, -- Toadstool(Material)
689, -- Exciteshroom(Material)
690, -- Mandragora(Material)
691, -- Icium(Material)
692, -- Gracium(Material)
693, -- Lightcrystal(Material)
694, -- Novacrystal(Material)
695, -- Firestone(Material)
696, -- Firecell Stone(Material)
697, -- Carbalite Ore(Material)
698, -- Fucium Ore(Material)
699, -- Bitterbug(Material)
700, -- Flashbug(Material)
701, -- Thunderbug(Material)
702, -- Fire Herb(Material)
703, -- Ivy(Material)
704, -- Sleep Herb(Material)
705, -- Snow Herb(Material)
706, -- Flowfern(Material)
707, -- Sunscorned Grass(Material)
708, -- Gloamgrass Bud(Material)
709, -- Felvine(Material)
710, -- Smokenut(Material)
711, -- Dragonfell Berry(Material)
712, -- Huskberry(Material)
713, -- Needleberry(Material)
714, -- Bomberry(Material)
715, -- Blastnut(Material)
716, -- Dragonstrike Nut(Material)
717, -- Slashberry(Material)
718, -- Sturdy Bone(Material)
719, -- Twisted Remains(Material)
720, -- Dragonhusk Shard(Material)
721, -- Eroded Skeleton(Material)
722, -- Quality Bone(Material)
723, -- Dragonbone Relic(Material)
724, -- Twisted Rockbone(Material)
725, -- Eroded Husk(Material)
726, -- Spider Web(Material)
727, -- Gunpowder(Material)
728, -- Barrel Lid(Material)
782, -- Great Whetfish(Consume)
783, -- Combustuna(Material)
784, -- Big Combustuna(Material)
785, -- Flamefin(Material)
786, -- Great Flamefin(Material)
787, -- Scatterfish(Material)
788, -- Goldenfry(Material)
789, -- Speartuna(Material)
797, -- Fire Barrel Bomb(Consume)
798, -- Exploding Kunai(Consume)
807, -- Humble Scrap(OffcutsMaterial)
808, -- Humble Scrap+(OffcutsMaterial)
813, -- Ore Scrap(OffcutsMaterial)
814, -- Ore Scrap+(OffcutsMaterial)
815, -- Insect Scrap(OffcutsMaterial)
816, -- Insect Scrap+(OffcutsMaterial)
817, -- Bone Scrap(OffcutsMaterial)
818, -- Bone Scrap+(OffcutsMaterial)
819, -- Fur Scrap(OffcutsMaterial)
820, -- Fur Scrap+(OffcutsMaterial)
821, -- Slagtoth Scrap(OffcutsMaterial)
822, -- Slagtoth Scrap+(OffcutsMaterial)
823, -- Jaggi Scrap(OffcutsMaterial)
824, -- Jaggi Scrap+(OffcutsMaterial)
825, -- Bnahabra Scrap(OffcutsMaterial)
826, -- Bnahabra Scrap+(OffcutsMaterial)
827, -- Rhenoplos Scrap(OffcutsMaterial)
828, -- Rhenoplos Scrap+(OffcutsMaterial)
829, -- Izuchi Scrap(OffcutsMaterial)
830, -- Izuchi Scrap+(OffcutsMaterial)
831, -- Tetranadon Scrap(OffcutsMaterial)
832, -- Tetranadon Scrap+(OffcutsMaterial)
833, -- Khezu Scrap(OffcutsMaterial)
834, -- Khezu Scrap+(OffcutsMaterial)
835, -- Kulu-Ya-Ku Scrap(OffcutsMaterial)
836, -- Kulu-Ya-Ku Scrap+(OffcutsMaterial)
837, -- Aknosom Scrap(OffcutsMaterial)
838, -- Aknosom Scrap+(OffcutsMaterial)
839, -- Somnacanth Scrap(OffcutsMaterial)
840, -- Somnacanth Scrap+(OffcutsMaterial)
841, -- Pukei Scrap(OffcutsMaterial)
842, -- Pukei Scrap+(OffcutsMaterial)
843, -- Kadachi Scrap(OffcutsMaterial)
844, -- Kadachi Scrap+(OffcutsMaterial)
845, -- Bishaten Scrap(OffcutsMaterial)
846, -- Bishaten Scrap+(OffcutsMaterial)
847, -- Anjanath Scrap(OffcutsMaterial)
848, -- Anjanath Scrap+(OffcutsMaterial)
849, -- Mizutsune Scrap(OffcutsMaterial)
850, -- Mizutsune Scrap+(OffcutsMaterial)
851, -- Magnamalo Scrap(OffcutsMaterial)
852, -- Magnamalo Scrap+(OffcutsMaterial)
853, -- Goss Harag Scrap(OffcutsMaterial)
854, -- Goss Harag Scrap+(OffcutsMaterial)
855, -- Diablos Scrap(OffcutsMaterial)
856, -- Diablos Scrap+(OffcutsMaterial)
857, -- Tigrex Scrap(OffcutsMaterial)
858, -- Tigrex Scrap+(OffcutsMaterial)
859, -- Almudron Scrap(OffcutsMaterial)
860, -- Almudron Scrap+(OffcutsMaterial)
861, -- Jyura Scrap+(OffcutsMaterial)
862, -- Ibushi Scrap+(OffcutsMaterial)
863, -- Rajang Scrap+(OffcutsMaterial)
864, -- Rakna-Kadaki Scrap+(OffcutsMaterial)
865, -- Narwa Scrap+(OffcutsMaterial)
866, -- Bazel Scrap+(OffcutsMaterial)
867, -- Chameleos Scrap+(OffcutsMaterial)
868, -- Kushala Daora Scrap+(OffcutsMaterial)
869, -- Teostra Scrap+(OffcutsMaterial)
870, -- Valstrax Scrap+(OffcutsMaterial)
871, -- Popfish(Material)
872, -- Ballista Shot(Bullet)
873, -- Crag Shot(Bullet)
874, -- Retreat Shot(Bullet)
875, -- Cannon Ammo(Bullet)
877, -- C. Thunder Ammo(Bullet)
878, -- Flaming Shot(Bullet)
879, -- Flaming Beam(Bullet)
881, -- Q. Rapid Shot(Bullet)
882, -- Q. Cluster Shot(Bullet)
883, -- Silkbind Shot(Bullet)
887, -- Mountshrooms(Material)
888, -- Shadeshrooms(Material)
889, -- Stargazer Flower(Material)
890, -- Stargazer Bloom(Material)
891, -- Sinister Cloth(Material)
892, -- Sinister Darkcloth(Material)
893, -- Bumblepumpkin(Material)
894, -- Omegapumpkin(Material)
895, -- Cutejelly(Material)
896, -- Gothjelly(Material)
897, -- Dreamshell(Material)
898, -- Toxic Kumori(Material)
899, -- Butterfly Beetle(Material)
900, -- Blossom Cricket(Material)
901, -- Dosbiscus(Material)
902, -- Armored Bream(Material)
903, -- Springnight Carp(Material)
904, -- Beast Gem(Material)
905, -- Acute Fang(Material)
983, -- EZ Meat Bait(Consume)
984, -- Catalyst(Material)
985, -- Net(Material)
986, -- Gunpowder Lv2(Material)
987, -- Gunpowder Lv3(Material)
988, -- Steel Egg(Material)
989, -- Silver Egg(Material)
990, -- Golden Egg(Material)
991, -- Commendation(Material)
992, -- High Commendation(Material)
993, -- Blazenut(Material)
994, -- Flamenut(Material)
1014, -- Outfit Voucher(Material)
1016, -- Buddy Ticket(Material)
1017, -- Kamura Ticket(Material)
1018, -- Guild Ticket(Material)
1019, -- Defender Ticket 1(Material)
1020, -- Defender Ticket 2(Material)
1021, -- Defender Ticket 3(Material)
1022, -- Defender Ticket 4(Material)
1023, -- Defender Ticket 5(Material)
1024, -- Defender Ticket 6(Material)
1025, -- Defender Ticket 7(Material)
1026, -- Defender Ticket 8(Material)
1027, -- King's Crest(Material)
1028, -- Rath Wingtalon+(Material)
1029, -- Basarios Tail(Material)
1030, -- Basarios Pleura(Material)
1031, -- Basarios Pleura+(Material)
1032, -- Jaggi Hide+(Material)
1033, -- Hard Armor Sphere(Material)
1034, -- Heavy Armor Sphere(Material)
1035, -- Aquaglow Jewel(Material)
1036, -- Bloodrun Jewel(Material)
1037, -- Lazurite Jewel(Material)
1040, -- Jumbofruit(Consume)
1041, -- Lagniapple(Material)
1042, -- Dung(Material)
1043, -- Dung Bomb(Consume)
1044, -- EZ Dung Bomb(Consume)
1045, -- Kulu Coin(Material)
1046, -- Barroth Coin(Material)
1048, -- Nargacuga Coin(Material)
1049, -- Barioth Coin(Material)
1050, -- Rajang Coin(Material)
1053, -- Bazelgeuse Coin(Material)
1054, -- Pinnacle Coin(Material)
1055, -- Hunter King Coin(Material)
1056, -- Ace Hunter Coin(Material)
1059, -- C. Piercing Ammo(Bullet)
1060, -- Gray Seed(Material)
1061, -- Crimson Seed(Material)
1062, -- Great Wirebug(Consume)
1063, -- 2x Ballista Shot(Bullet)
1064, -- 3x Ballista Shot(Bullet)
1066, -- Friend Voucher(Material)
1067, -- Water Barrel Bomb(Consume)
1068, -- Thunder Barrel Bomb(Consume)
1069, -- Ice Barrel Bomb(Consume)
1070, -- Blue Seed(Material)
1071, -- Gold Seed(Material)
1072, -- Silver Seed(Material)
1073, -- 2x Cannon Ammo(Bullet)
1074, -- 2x Cannon Ammo+(Bullet)
1075, -- Defender Ticket 9(Material)
1076, -- Bhernastone(Material)
1077, -- Dundormarin(Material)
1078, -- Loc Lac Ore(Material)
1079, -- Val Habar Quartz(Material)
1080, -- Minegardenite(Material)
1082, -- Wisdom Crystal(Material)
1083, -- Wild Dark Leather(Material)
1084, -- Disguise Device(Material)
1085, -- Shady Crystal(Material)
1086, -- Celestial Scroll(Material)
1088, -- Satsui no Hado(Material)
1089, -- Dog Bolts(Material)
1090, -- Broken Knight Armor(Material)
1092, -- Diving Ticket(Material)
1100, -- Buddy Ring(Material)
1101, -- Hunter Ring(Material)

输出的ItemIdList为了便于调试,一行一个物品ID,每个ID之后用Lua注释以Name(Category)的格式写入了物品信息。

展望

这又不是写论文,展望什么

实现了素材自由之后,我想下一步实现外观自由。自从世界开始,修改外观需要购买付费DLC(回炉重造票),本作崛起也是一样。在世界中,人物外观就是一串字节,在内存中覆盖之后保存游戏即可将修改后的外观写入存档。这样即便存档是每个账号加密,通过修改内存也可以绕过这些措施直接修改。但遗憾的是,目前为止还没有找到崛起中的对应指针。这一代连箱子的内存都变了,卡普空吃一堑长一智,应该不会把存档原封不动的解密放进内存了。

-全文完-


知识共享许可协议
【歪门邪道】怪物猎人崛起素材无中生有 & Cheat Engine初探天空 Blond 采用 知识共享 署名 - 非商业性使用 - 相同方式共享 4.0 国际 许可协议进行许可。
本许可协议授权之外的使用权限可以从 https://skyblond.info/about.html 处获得。

Archives QR Code
QR Code for this page
Tipping QR Code
Leave a Comment

3 Comments
  1. Whale Whale

    大佬,直接用您的脚本会提示The auto assembler script failed. The address in createthreadandwait(itemgib) is not valid ,是不是版本更新后内存地址改了?

    1. @Whale我最近一直没玩怪猎,可能是版本更新了,然后函数的地址变了。

  2. 防水材料加盟 防水材料加盟

    感谢分享 赞一个