[REQUEST] Orcs Must Die! 2
-migrated-
[REQUEST] Orcs Must Die! 2 Posted on: 07/31/2012 2:48am
Quote Post
Requesting a CE table for Coins aka Spell Points. (used to build defenses)
That's not a static address, but Skulls is.
Both are regular 4 byte.
Coins address changes whenever you switch or reload a map.

Search your starting amount, build one thing, scan next amount,
it's the last address shown. (not green)


After I attach the debugger for memory view to make a reusable cheat for coins,
when the value is modified the game immediately crashes to desktop,
I don't know the cause or how to prevent that.
Same thing happens in the prequel game.

I'm not proficient with Pointers, wanting to try that,
but so far as I know it requires the debugger, which crashes the game here?
Re: [REQUEST] Orcs Must Die! 2 Posted on: 07/31/2012 3:05am
Quote Post
Hard to do much since I don't want to buy the game. Have you tried a pointer scan? It's pretty intuitive and I think easier than finding a pointer through the debugger (usually).  Also the game might not use pointers. Find out what language its written in and look up pointers on wikipedia to see if the language supports pointers. Hope it helps.
Re: [REQUEST] Orcs Must Die! 2 Posted on: 07/31/2012 3:12am
Quote Post
Hard to do much since I don't want to buy the game. Have you tried a pointer scan? It's pretty intuitive and I think easier than finding a pointer through the debugger (usually).  Also the game might not use pointers. Find out what language its written in and look up pointers on wikipedia to see if the language supports pointers. Hope it helps.

I just followed the built-in CE guide for that but it only goes up to the point of filling the address list.
How do I narrow down the right address and what to do after?
I haven't found a guide that doesn't require the debugger.

Currently I have over 700 pointers saved in the list that match the coins value.
I've rescanned after restarting maps and the game alternately.
Re: [REQUEST] Orcs Must Die! 2 Posted on: 07/31/2012 3:59am
Quote Post
1.  Do your first search for the value get it down to one address
2.  Right click on address choose pointer scan
3.  Restart the game
4.  Search for the value again note the address
5.  Go back to the pointer scan, or open the save if you closed it.
6.  In the pointer scan window click the pointer scan drop down, click rescan memory
7.  Enter the new address in the text box and click ok
8. If you get 1 result that's most likely the pointer, if you get a few repeat with the narrowed list, if you get none you can a) retry maybe you made a mistake somewhere b) pointer scan can't find that pointer for an unknown reason c) the game or value doesn't use pointers

My guess would be you fall into c because I'm guessing gold resets every level I could be wrong though. A possible way around this would be to see if you can find an address and pointer for the starting gold, if you can you might be able to start yourself with all the gold you'll ever need. Hopefully that helps, if you can't find anything you've always just search it every time which sucks but is effective. You might also see if there is a pattern in the addresses, for example each level it goes up by 4 bytes or rotates between a few addresses. That'll make your life a little easier if you find it
Re: [REQUEST] Orcs Must Die! 2 Posted on: 07/31/2012 4:48pm
Quote Post

My guess would be you fall into c because I'm guessing gold resets every level I could be wrong though. A possible way around this would be to see if you can find an address and pointer for the starting gold, if you can you might be able to start yourself with all the gold you'll ever need.

I'mma try this, makes sense, thanks.   (broken image removed)
edit- Nope, looks like the starting-funds address is completely different for every map/stage,
like in the previous game. No pointers there.

I still have over 600 addresses from scanning for my current value,
I don't know how to find the right one.

Though again, is there a guide on actually using the pointer after finding it, without debugger?
I'm starting to think that's the only way it's useful, so I won't be able to do squat here as previously explained. (crash!)

Would be nice is someone else took at look at this game.
It has a demo on Steam, the debugger-induced crashing might be the same.

EDIT-

News:
Using Memory Viewer doesn't crash me, only Debugger to "Find Out What Writes To" does.

The 4 byte address OrcsMustDie2.exe+7960BC Is persistent across all sessions and maps, and always matches the dynamic coins/funds address. However editing this one directly does nothing.

Can someone make a CE table with a script that searches for and edits the value of the real money address by reading the persistent one? Perhaps lock the value at just 5000.

What I'm seeing with my newb perspective... hope this helps:

"Real" (temporary yet editable) address:
47BDE5D4
mov al,36

"Fake" address: (persistent, this always reads the "real" one, editing does nothing)
"OrcsMustDie2.exe+7960BC"
loop 00B960C2

"7960BC"
adc edi,edi

Edit- OH so green addresses are static. Herp, makes sense then.
I don't yet know what to do with this.
Doesn't look like a Pointer and without Debugger I can't see the offset.

Tried Debugger on the static address also.
Game CTD the instant either address changes. "Nope!"
Re: [REQUEST] Orcs Must Die! 2 Posted on: 08/01/2012 1:09am
Quote Post
As far as I have noticed from OMD1, the value could be saved in the mapfile and thus uneditable before you launch the map as the value is always loaded from file into memory.



Wysiwyg editors are utter shit.

Re: [REQUEST] Orcs Must Die! 2 Posted on: 08/01/2012 1:16am
Quote Post
As far as I have noticed from OMD1, the value could be saved in the mapfile and thus uneditable before you launch the map as the value is always loaded from file into memory.

That's the starting amount values. How about the current value and the static one in above post?

Looks like the static one is used for scores.