Creating no-recoil for guns

Started by Dude, March 19, 2011, 02:42:19 AM

Previous topic - Next topic

Dude

Having been low on time to do much in the way of code creating, I've decided to embark on a little mission.

so I've picked a game, picked a target and now going to make as many codes as I can for everything related to it.
I've picked Call of Duty and decided to work on the guns.

I'm working on creating no-recoil, no idle sway, infinite ammo (no-reload kind and reserve ammo), max ammo, weapon damage, weapon range, ADS speed, ADS zoom, no-recoil from hip fire, give weapon, blah blah blah....
...just all the things I can think of and then I'm going to tick them off one at a time.

but I've hit a snag and it's starting to CONSUME ME and I refuse to go to the next one until I get this figured!

I know I'm a little rusty, but damn...I cannot get the damn no-recoil code.

Here is what I've been trying:
I aim down the sights and don't move.
Search for 32bit 00000000
Fire weapon and pause the game, checking to make sure the gun has recoiled away from the center, say to the left.
Search for "greater than"
step frame twice
search for "less than"
repeat until gun is almost centered again
run game and do equal search, looking for 00000000
fire weapon and pause at the same time again, making sure the gun has recoiled to the left again.
search for greater than....step fram twice...etc...until I get a managable number of results.

Then I check the memory viewer for each one and auto-update, watching the memory as I fire to see if that address and any around it match the recoil, etc.

I then used a 32bit write codetype "04XXXXXX" and sent the code to the game...and it DOESNT work :s

I must have gotten sooo damn rusty...
Is there any better method to find no-recoil that might also apply across other shooting games?

dcx2

Using an 04 code will over-write the "sway" when the code handler runs.

Then the game runs, and recalculates the right sway, over-writing what the code handler wrote.

Use a write breakpoint to find the ASM which is setting your sway.  Find some instruction before it and load the sway value with a 0.

Dude

Quote from: dcx2 on March 19, 2011, 03:28:24 AM
Using an 04 code will over-write the "sway" when the code handler runs.

Then the game runs, and recalculates the right sway, over-writing what the code handler wrote.

Use a write breakpoint to find the ASM which is setting your sway.  Find some instruction before it and load the sway value with a 0.

Ahhhh, that would explain it...
I am right in assuming that the ASM instruction will calculate both the X and Y "sway" values?
It should, in theory, not affect anything else.  Hey, may even take care of my Idle-Sway and hip-fire "recoil".

Once again, thanks for your insight, dcx2.

Anarion

#3
umm...I don't think that you should search for 00000000 when aiming down sights. It doesn't make sense, to me, that when aiming down sights the value of the address you want would be at 00000000. Instead, search for an unknown value.
Anyways, I'd try it this way

Aim down sights
Unknown search.
Shoot
-As the gun recoils, quickly pause the game. or pause the game, shoot, and click "next frame" as the gun is recoiling.
Not equal. search.
Run/Resume GDN or Wiird.
When the gun is in ads position again
do another "Not equal" search.
Now make an "equal" search.
Shoot.
repeat from -
I'm not here much. If you have a problem with any of my codes, let me know through my youtube account and I'll help you.
¦}

dcx2

At least in Resident Evil 4, sniper rifle sway was a floating point value added to your aim.  So if you were dead on, the sway value would be 0.

Problem is, the sway value could be some very tiny value that's non-zero.  Like 1e-9.  So you actually have a range of values that you want to look for.  The range is usually referred to as epsilon.  If you decide your epsilon is, say, 0.001, then you would make two search conditions (use the Search Group box on the search tab).  The first would be all floats less than your epsilon.  The second would be all floats greater than your negative epsilon.  Also, make sure the Data Type dropdown is set to single, so that the values are cast to float before being compared.  If you use 32-bit, the comparison will happen incorrectly.

James0x57

dcx2, he's asking to hack Call of Duty. (online game)

ps: a no-recoil code is super easy to hack once you figure out the laughably brainless method. But from my experience, it usually works online, so I will not tolerate online hackers PMing for the trick! HA HA!


Dude

Hurts to think that people would assume that I am that kind of person :(

Please look at my posting history to see what my view is regarding online cheating.

I had assumed that the offline campaign for COD: Black Ops was completely seperate from the online side so it would be ok.
I don't think I've ever given out a code...I only try to make codes for games that I've completed already and pretty much all codes are already made by that time.  I do it for my own entertainment and learning.

Like I said, I've had very little time to do this kind of thing and I've been missing it.  That's why I've decided to choose an aspect of a game and try to do as much as I could for it.

I think I remember sending dcx2 a PM in the past about something that I wasn't sure of, but was hesitant to pursue it due to it's potential of online use...and I made it clear about that...

I'm sorry if I've inadvertantly walked the boundary line of something we equally frown upon :(
Project abandoned.  Not like I had the time, anyway.