Skip to content

Commit 78853b5

Browse files
committed
Create issue for debugger capabilities and pointerscan functionality
1 parent 4c96714 commit 78853b5

File tree

1 file changed

+68
-0
lines changed

1 file changed

+68
-0
lines changed

issues/1.md

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
## Summary
2+
3+
Request to implement debugger capabilities and pointerscan (pointer scanning) functionality into the ce-mcp project to expand reverse engineering and debugging features.
4+
5+
### Current Scanning Capabilities
6+
7+
The project currently supports:
8+
- **AOB (Array of Bytes) scanning** via `AOBScanTool.cs`
9+
- **Memory value scanning** via `MemScanTool.cs`
10+
- **Disassembly** via `DisassembleTool.cs`
11+
- **Memory read/write operations**
12+
13+
### Proposed Features
14+
15+
#### 1. Debugger Capabilities
16+
Add full debugging support including:
17+
- Set/remove **breakpoints** (software and hardware)
18+
- **Step-through execution** (step over, step into, step out)
19+
- **Register inspection and modification**
20+
- **Call stack viewing**
21+
- **Exception handling** and exception breakpoints
22+
- **Attach/detach** from running processes for debugging
23+
- **Continue/pause execution** control
24+
25+
#### 2. Pointer Scanner (Pointerscan)
26+
Implement pointer chain scanning:
27+
- **Multi-level pointer chain discovery** (e.g., base + offset1 -> offset2 -> target address)
28+
- **Pointer map generation** for finding static pointers to dynamic addresses
29+
- **Pointer rescanning** to validate pointer chains across game restarts
30+
- **Maximum offset configuration** and depth limiting
31+
- **Export/import pointer scan results**
32+
33+
### Implementation Considerations
34+
35+
Following the existing architecture pattern:
36+
37+
```c#
38+
// Example structure for new tools
39+
src/Tools/DebuggerTool.cs // Breakpoints, stepping, register access
40+
src/Tools/PointerScanTool.cs // Pointer chain scanning
41+
```
42+
43+
Register endpoints in `ApiServer.cs`:
44+
```c#
45+
Tools.DebuggerTool.MapDebuggerApi(app);
46+
Tools.PointerScanTool.MapPointerScanApi(app);
47+
```
48+
49+
Leverage Cheat Engine's Lua API documented in `celua.txt` for:
50+
- `debug_*` functions for debugger operations
51+
- Pointer scanner classes/functions
52+
53+
### Related Code References
54+
55+
- **Memory Scanner**: https://github.com/hedgehogform/ce-mcp/blob/4c9671460e613c7ad734fcf89ac419506f477fcc/src/Tools/MemScanTool.cs
56+
- **AOB Scanner**: https://github.com/hedgehogform/ce-mcp/blob/4c9671460e613c7ad734fcf89ac419506f477fcc/src/Tools/AOBScanTool.cs
57+
- **API Registration**: https://github.com/hedgehogform/ce-mcp/blob/4c9671460e613c7ad734fcf89ac419506f477fcc/src/ApiServer.cs#L46-L70
58+
- **Architecture Docs**: https://github.com/hedgehogform/ce-mcp/blob/4c9671460e613c7ad734fcf89ac419506f477fcc/CLAUDE.md#L35-L70
59+
60+
## Expected Outcome
61+
- Users can set breakpoints and step through code execution
62+
- Users can inspect and modify registers during debugging
63+
- Users can discover and validate pointer chains to game/application data
64+
- Full REST API endpoints exposed for debugger and pointerscan operations
65+
- Documentation added to OpenAPI schema at `/scalar/v1`
66+
67+
## Additional Context
68+
Consider following the existing tool patterns with proper error handling and Lua stack management as documented in CLAUDE.md.

0 commit comments

Comments
 (0)