libmem icon indicating copy to clipboard operation
libmem copied to clipboard

Add "pointer scan"-like feature on README (C++)

Open rdbo opened this issue 1 year ago • 7 comments

Add a function to resolve pointer scans. Example:

lm_address_t GetPointers(lm_address_t start, std::vector<lm_address_t> offsets) {
    for (auto offset : offsets) {
        start = *(lm_address_t *)(start + offset);
    }

    return start;
}

rdbo avatar Dec 13 '23 11:12 rdbo

Name suggestions: LM_GetPointerMap LM_GetDeepPointer LM_ReadPointerMap LM_ResolvePointerMap LM_DerefPointerMap LM_AccessPointerMap LM_PointerMap LM_UnwrapPointer LM_MapPointer LM_DeepPointer

rdbo avatar Dec 14 '23 16:12 rdbo

Sketch:

lm_void_t *
LM_DeepPointer(lm_address_t base, lm_address_t *offsets, lm_size_t noffsets);
template <typename T>
T *LM_DeepPointer(lm_address_t base, std::vector<lm_address_t> &offsets);

Usage:

int *player_health = LM_DeepPointer<int>(some_addr, { 0xF0, 0xA0, 0xE0 });

rdbo avatar Dec 14 '23 17:12 rdbo

TODO: Add LM_DeepPointer example on README, it's very attractive to Cheat Engine users

rdbo avatar Dec 15 '23 01:12 rdbo

TODO: Add documentation

rdbo avatar Jan 05 '24 00:01 rdbo

Done

rdbo avatar Jan 08 '24 19:01 rdbo

The README needs to be changed

rdbo avatar Jan 08 '24 19:01 rdbo

First, the C++ Wrapper API should be done: #130

rdbo avatar Jan 08 '24 19:01 rdbo