resolve_pointer_chain
Walk a multi-level pointer chain to its final address to find where a value lives in a running process. Combine a base address with ordered offsets to follow Cheat Engine-style recipes.
Instructions
Walk a known multi-level pointer chain to its final address.
Replays the recipe a Cheat Engine table records —
"game.exe"+0x10F4F4 -> [+0x0] -> [+0x158] — which is the form that
survives a restart. Combine with process_info's module
base_address to build base_address for the current run.
:param base_address: where the chain starts, hex. Usually
module_base + static_offset.
:param offsets: the chain's offsets in order, as hex strings
(["0x0", "0x158"]). Negative offsets are allowed
("-0x8") — walking backwards through a struct is ordinary in a
published recipe. The last one is added without a final
dereference, so the result is the address the value lives at — read
it with read_value. Pass an empty list to dereference
base_address once.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"session_id": "<session_id>",
"base_address": "<base_address>"
},
"name": "resolve_pointer_chain"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| offsets | No | ||
| session_id | Yes | ||
| base_address | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |