Giter Site home page Giter Site logo

cheatengine-dma's Introduction

CheatEngine-DMA

Cheat Engine Plugin for DMA users ADD MORE STUFF HERE, BRIEF EXPLANATION OF WHAT IT IS IG?

Features

  • Attach to a Process
  • Read Memory
  • Write Memory
  • Search Memory
  • Browse Memory
  • Module Iteration
  • Process Iteration
  • Thread Iteration

Functions not mentioned here may or may not work, I don't have any plans to support the other features unless I personally need them.

Building

You can easily compile this source using Visual Studio, if you use another IDE you'll have to figure it out yourself.

Usage

  1. Add the binary (that you compiled) to the same folder as Cheat Engine.

  2. Open CheatEngine, click on Edit (Top left) click on Plugins -> Add New -> Add the compiled binary & Activate it.

License

See the License file on the root of this repository for more info.

cheatengine-dma's People

Contributors

metick avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

cheatengine-dma's Issues

Missing results when scaning using cheat engine

Hello,
I've compiled this plugin for Cheat Engine and while it's functional, I'm encountering an issue where certain search results are missing compared to standard Cheat Engine scans without plugin.
Screenshot 2024-04-13 102117

With plugin:
Screenshot 2024-04-13 100613

Without plugin:
Screenshot 2024-04-13 100620

These 3 results not showing when using plugin:
Screenshot 2024-04-13 101203

But i can manually add then to cheat table:
Screenshot 2024-04-13 104049

Screenshot 2024-04-13 104108

I would greatly appreciate any insights into why these discrepancies occur and potential solutions.
Thank you for your expertise!

Error 126 loading plugin

I'm unable to load the plugin after building. I do have FTD3XX.dll, leechcore.dll and vmm.dll. Anything else I could be missing? Thank you.

alloc

trying to alloc something via dma. any idea?

Ask function find static address

Hello bro, I saw you say you will not add anymore function you don't use, I just want to ask about find static address, I saw "Pointer scan" & "Find out what access/writes" both of them didn't work, how do you find the static when you use this DMA plugin?

Doesnt work with Cheat Engine 7.5

After building release and dragging the dll into my main Cheat Engine plugin directory, I get an error "The plugin cannot be loaded: 126"

My steps were as follows:

  1. Download files
  2. Build Release
  3. Realize I needed leechcore.lib,vmm.lib, and lua53-64.dll. After adding those 3 files to the directory, I successfully built and constantly get this error. Any help would be appreciated as I'm very excited to get this working.

Can't attach the debugger to the process

Hi, firstly, thank you so much for this amazing tool.

I can scan and find the record easly. But when I want to find out what accesses to the addresses, CE returns nothing. Also when I try to hex address of the value i find nothing. How can I handle to find static address of the values.

Build issues

Struggling to build the solution.

Windows 11 x64.
Visual Studio 2022.

I started out with errors for missing libs, which were resolved by grabbing the latest binaries from https://github.com/ufrisk/MemProcFS/tree/master/includes/lib32

Then there was a missing lua53-64.lib which I grabbed from my local installation of Cheat Engine 7.5.

I dropped that in, and now the errors are as follows:

I've tinkered around with it but as I'm not a particularly seasoned C/C++ dev, I'm struggling a bit with debugging.

image
image

Full output:

1>Done building project "DMALibrary.vcxproj".
2>------ Build started: Project: plugin, Configuration: Release x64 ------
2>main.c
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\leechcore.h(122,11): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\leechcore.h(122,11):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\leechcore.h(489,10): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\leechcore.h(489,10):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\leechcore.h(498,10): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\leechcore.h(498,10):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(392,35): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(392,35):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1454,25): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1454,25):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1464,25): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1464,25):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1471,27): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1471,27):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1480,28): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1480,28):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1489,36): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1489,36):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1505,25): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1505,25):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1515,25): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1515,25):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1524,26): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1524,26):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1532,31): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1532,31):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1539,28): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1539,28):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1548,28): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1548,28):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1559,26): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1559,26):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1568,25): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1568,25):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1576,29): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1576,29):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1585,26): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1585,26):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1594,24): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1594,24):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1603,29): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(1603,29):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(2138,25): warning C4200: nonstandard extension used: zero-sized array in struct/union
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\libs\vmmdll.h(2138,25):
2>This member will be ignored by a defaulted constructor or copy/move assignment operator
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\DMALibrary\Memory\Registry.h(25,2): warning C4996: 'wcstombs': This function or variable may be unsafe. Consider using wcstombs_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
2>(compiling source file 'main.c')
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\plugin\main.c(166,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\plugin\main.c(182,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\plugin\main.c(202,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\plugin\main.c(219,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\plugin\main.c(231,2): warning C4996: 'freopen': This function or variable may be unsafe. Consider using freopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\plugin\main.c(232,2): warning C4996: 'freopen': This function or variable may be unsafe. Consider using freopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\plugin\main.c(233,2): warning C4996: 'freopen': This function or variable may be unsafe. Consider using freopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
2>C:\Users\Stokoe\Desktop\CheatEngine-DMA-Master\plugin\main.c(227,33): warning C4101: 'init4': unreferenced local variable
2>DMALibrary.lib(Memory.obj) : MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance
2>   Creating library x64\Release\plugin.lib and object x64\Release\plugin.exp
2>plugin.exp : warning LNK4070: /OUT:Example-C.dll directive in .EXP differs from output filename 'x64\Release\plugin.dll'; ignoring directive
2>main.obj : error LNK2001: unresolved external symbol VMMDLL_Map_GetVadW
2>main.obj : error LNK2001: unresolved external symbol VMMDLL_Map_GetModuleU
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Map_GetModuleU
2>main.obj : error LNK2001: unresolved external symbol VMMDLL_ProcessGetInformationAll
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_ProcessGetInformationAll
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Close
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Initialize
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Map_GetPhysMem
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_MemFree
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_ConfigGet
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol LcCreate
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol LcCommand
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol LcClose
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_PidGetFromName
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_ProcessGetInformation
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Map_GetModuleFromNameW
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Map_GetEATU
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Map_GetIATU
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Map_GetModuleFromNameU
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_InitializePlugins
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_VfsReadW
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_VfsListU
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_ConfigSet
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_MemReadEx
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_MemWrite
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Scatter_Initialize
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Scatter_CloseHandle
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Scatter_PrepareEx
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Scatter_PrepareWrite
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Scatter_ExecuteRead
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Scatter_Clear
2>DMALibrary.lib(Memory.obj) : error LNK2001: unresolved external symbol VMMDLL_Scatter_Execute
2>x64\Release\plugin.dll : fatal error LNK1120: 30 unresolved externals
2>Done building project "plugin.vcxproj" -- FAILED.
========== Build: 1 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
========== Build completed at 00:59 and took 04.759 seconds ==========

Not all memory being scanned / actual process memory not being scanned

Props to creating this, definently comes in handy when you have have pre-existing offsets of stuff.

The only downside i have seen so far, is that it doesnt properly scan the memory from what it seems, i have tried on a few of my own applications and tried on some games to test on aswell. One thing i have notices when for example scanning for array of bytes, it will get about a quarter of the way through and then it will just skip to the very end. It seems when it starts to scan the physical region it will happen. Here is a quick video of me showing comparing on my dma machine and my main pc comparing the scanning on it.

Video: (If link expires, i will re-upload) https://streamable.com/uf5v8q

aobscanmodule

Hello! First off, love what you've done and has this been extremely helpful.

I am aware you said you would only add support for things you need. However, if you have time when you stop by to update this project again, could you consider adding driver/dll view support? I am attempting to scan/write to a dll that interacts with an exe on the target computer, but am unable to due to the dll not being pulled/recognized.

Thank you!

FPGA://algo=1 not working

I have one of the not so compatible for DMA gigabyte motherboard's that makes me use algo=1 (Tiny Algo) in my other projects for initialization so when I first got an issue I assumed it was that and changed parameters in the attach command of your plugin.
After this change I still get an error and am unable to detect any processes on my target PC only the locally ran one's.
Here is a screenshot of the console
image

To clarify I am able to attach to my DMA card using another software after the error is thrown so it is not in use or disconnected.
It throws an error after the mmap is generated claiming it failed to initialize and then will say it has Initialized and not detect anything on target PC.
image

ERROR: Could not dump memory map

Hello, after I load the plug-in, the plug-in does not run properly. And the process list cannot read the process. Please ask, what is the problem? I am a newbie in c++ใ€‚
ce version 7.5

image
image

Can't add the plugin. "the plugin dll could not be loaded: 126"

I compiled the plugin and tried adding it on CE 4.6 and 4.7, both gives the error "the plugin dll could not be loaded: 126", which when googling, tells me its missing a dependency.
I copied the plugin.dll from the "plugin\x64\Release" folder into the root of CE. CE doesn't tell me more info than that either.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.