IntelSDM / RustDMACheat

Small DMA Cheat For Rust
MIT License
182 stars 55 forks source link

TINY TLP? #5

Closed arlohewitt closed 8 months ago

arlohewitt commented 9 months ago

right now my DMA solution is pretty terrible and is only able to run via the TINY TLP algorithm. I am confident in saying i have installed the program correctly on my second pc but i am getting an error "vmmWinInit_TryInitialize: initialization Failed. Unable to locate valid DTB. #2 VmmProc: Unable to auto-identify operating system for PROC file system mount. Specify PageDirectoryBase (DTB/CR3) in -cr3 option if value is known"

i should state that i am able to read memory through my DMA fine (pcileech.exe -probe).

All i am asking for is conformation that running via TINY TLP is the cause of the issue.

a friend who used this told me to add that holding out a Salvaged Shelf with norecoil bool enabled crashes his game no way of testing this on my side, however.

arlohewitt commented 9 months ago

ok, ive done some testing and i was in fact correct. TINY TLP algorythm caused the error that is pasted in to be thrown, not sure why exactly but at least i diagnosed the issue. Incase anyone is in the position i was (DMA device being stuck in TINY TLP), i had a (probably hardware specifc) issue that meant my hardware downgraded the Async Normal algorythm to TINY TLP while my PCI extended capabilities didnt contain Power management, MSI and PCIe caps or was below a certain length.

IntelSDM commented 9 months ago

Being forced into TINY TLP must suck, you're basically limited to 32mb/s. I used some sketchy firmware from scarlet which gave me that exact issue before but just changed firmware to fix it. Yeah, it does crash with certain items, you need to check base projectile and recoil properties aren't null. I will fix it when I am done with this other project I am working on and after I finish redoing my EFT cheat.

arlohewitt commented 9 months ago

yeah, i don't want to sell out and buy custom firmware when i am fully capable of changing the configuration space myself. Ive got some spare time today so i expect ill be able to get around my hardware limitations and emulate a wifi card i have lying around which has enough capabilities to allow Async Normal algorithm.

Any chance you can point me in the right direction on fixing the crashing bugs related to norecoil, could i compare uint32_t itemid = helditem->GetItemID(); with a known table of itemid's or are the ID's dynamic and change on restart?

Or would your way of checking if base projectile and recoil are null be the only method of fixing this? On top of that is it difficult to implement chams externally in rust, i believe in tarkov you can null out a materials shader although i dont have much knowledge to be able to do this for either game.

IntelSDM commented 9 months ago

Yeah firmware is a pisstake, People hogging methods that can increase speed, and others following public information to sell it for 70 euros. It's all very pathetic considering how it all uses an open source project.
To fix the no recoil crashes make a hash map if the itemid is a valid weapon or not, then if the item baseprojectile is null or both recoil fields are null/ the recoil values in the recoil fields are null then in the hash map change the bool to true that the item is not a weapon. Easiest way of going about it and will decrease the number of reads and congestion of the card.