Staredit Network > Forums > SC1 UMS Mapmaking Assistance > Topic: EUD Question: Finding a programs memory?
EUD Question: Finding a programs memory?
Apr 25 2009, 12:53 am
By: Oo.DaMeiN.oO
Pages: 1 2 3 >
 

Apr 25 2009, 12:53 am Oo.DaMeiN.oO Post #1



I've used EUD's that people have located having a hack injected, then searching for it and inputting this into the DC's.

IE; Say someone is MH'ing, how would you find the exact EUD condition for that?

I know this is probably asked in another topic, but I couldn't find an exact match to my request.

So.. what program searches the memory location/what kind of knowledge will I need to find the exact one?

Thanks :)



None.

Apr 25 2009, 1:01 am Falkoner Post #2



I personally prefer to use Cheat Engine to search the memory, so there's your program, I think to detect the map hack, you basically scan all variables, and then scan for ones with any changes after the hack is loaded, and many of the changed ones will be from the hack, although many will also just be normal.



None.

Apr 25 2009, 1:44 am Oo.DaMeiN.oO Post #3



What exactly would cause the "normal" changes if nothing save loading a hack has changed?

Does elapsed time or something count?



None.

Apr 25 2009, 2:09 am Falkoner Post #4



Yeah, elapsed time, units fidgeting would cause changes, there's all sorts of things.



None.

Apr 25 2009, 2:14 am Oo.DaMeiN.oO Post #5



Okay, thanks. I'll give it a try :)

*** EDIT ***

Okay, I was looking at the memory of the game, and each time I tried to copy all the memories to check on the next test if they changed, I could not because they kept changing.

Is there a way to say.. freeze it so I can have time to check if something has changed?

What's the easiest way to do this? :D

Post has been edited 1 time(s), last time on Apr 25 2009, 2:25 am by Oo.DaMeiN.oO.



None.

Apr 25 2009, 3:24 am rockz Post #6

ᴄʜᴇᴇsᴇ ɪᴛ!

well, for one, you can treat it exactly like a game you would use a cheat engine in. Toggle something, and see if it changes predictable values. Typically 0 is off, 1 is on. I don't care enough to bother, since cheaters suck and ruin the game anyway.

It'd be awesome if you could find a location in memory which zyn CAN'T change. Unless you're into assembly, there's little you can do to "pause" a process.



"Parliamentary inquiry, Mr. Chairman - do we have to call the Gentleman a gentleman if he's not one?"

Apr 25 2009, 3:25 am Oo.DaMeiN.oO Post #7



Hmm, that made no sense to me ^^;

Fairly new to the EUD's :(



None.

Apr 25 2009, 4:08 am A_of-s_t Post #8

aka idmontie

Zyn can't change a lot of things. He can only change things client side and he can only send things into client side functions. In retrospect, he is very limited.



Personal GitHub
Starcraft GitHub Organization - Feel free to request member status!
TwitchTV

Apr 25 2009, 10:05 pm Oo.DaMeiN.oO Post #9



Hmmm, no further clarification?

Eh, guess I'll just see if I can grunt out all the locations.



None.

Apr 25 2009, 10:12 pm Pigy_G Post #10



Can't you detect the onscreen text display of a hack? E.g "Map Hack On" detect that phrase with EUDs? I've heard rumors of this but have not tested.



None.

Apr 26 2009, 12:29 am Oo.DaMeiN.oO Post #11



Yeah, they can do that.

*** EDIT ***

Okay, I have found the Address thats being changed by the MH, but I can't seem to figure out what to do from there :/

So say I have a address of 098F7710, what do I do with that? Thanks.

*** EDIT ***

I have converted the address via EUDTrig, and now I need to know how to input that via SCMDraft 2

What player to use, what UnitID?

Post has been edited 3 time(s), last time on Apr 26 2009, 1:10 am by Oo.DaMeiN.oO.



None.

Apr 26 2009, 1:05 am rockz Post #12

ᴄʜᴇᴇsᴇ ɪᴛ!

You can detect any of these:
Collapsable Box


Is that address constant between maps, or is it variable? If it is variable, EUDs won't work.

If it's not, 098F7710 is the location you're trying to read. 098F7710 = P*4 + UID*48 + Death table start. 0058a364 is the death table start, P and UID are numbers you can come up with.
936d3ac = P*4 + UID*48
UID=0
P=38647019
Now, this will read a 4 byte value, and you're trying to read probably the first byte. If there are other numbers past 098f7710, like in 98f7711-98f7713, you'll have to account for them.

Post has been edited 1 time(s), last time on Apr 26 2009, 1:13 am by Zachary Taylor.



"Parliamentary inquiry, Mr. Chairman - do we have to call the Gentleman a gentleman if he's not one?"

Apr 26 2009, 1:11 am Oo.DaMeiN.oO Post #13



Yeah, I have detected the toggling of the MH, just need to know how to convert that to put into the map :P

*** EDIT ***

Okay, I have somewhat understood you.

This is the exact thing I get when I convert it in EUDTrig ( And yes, its constant in all maps )

Player Number: 38647019
Unit ID: 0

So with that being said, what do I input into SCMDraft? I know the 38647019 goes into the # of deaths.

Also, how do you find out when the value has been changed?

I mean, I can find the address at 0, 1 and 2. What's going to stop the trigger running if its at 0 instead of 1 when I want it to?

Post has been edited 2 time(s), last time on Apr 26 2009, 1:23 am by Oo.DaMeiN.oO.



None.

Apr 26 2009, 2:35 am rockz Post #14

ᴄʜᴇᴇsᴇ ɪᴛ!

Lol, no.

Player 38647019 has suffered exactly 1 deaths of UID:0 (terran marine)

The number you are reading is the number of deaths. The player number and the unit is the address of the number you are reading. You'll need to save the triggers in EUDTrig or use starforge to import the extended player, since scmdraft can't handle extended players.



"Parliamentary inquiry, Mr. Chairman - do we have to call the Gentleman a gentleman if he's not one?"

Apr 26 2009, 2:45 am Oo.DaMeiN.oO Post #15



I was under the impression SCMDraft did allow it now in the new release? It says it does.



None.

Apr 26 2009, 4:19 am rockz Post #16

ᴄʜᴇᴇsᴇ ɪᴛ!

If you can type in 38647019 in the player spot, then yes. If you can't, then no.



"Parliamentary inquiry, Mr. Chairman - do we have to call the Gentleman a gentleman if he's not one?"

Apr 26 2009, 4:39 am Pyro682 Post #17



OK, I read ALL of that, but I didn't understand most of it.

Can you tell me what the End trigger was?

Lets just say that we just want the map to Display "There is a hacker" or something to all players, if the condition is true.
What would the conditions be written out as?



None.

Apr 26 2009, 5:06 am rockz Post #18

ᴄʜᴇᴇsᴇ ɪᴛ!

the most you can do is desync.
Quote
Player 38647019 has suffered exactly 1 deaths of UID:0 (terran marine)
is the condition. The action can be anything server side, like set deaths, or whatever. Nothing client side, although you could annoy the fuck out of them with some spam texts, music wavs, and random leaderboards.

The way EUDs work is by reading memory at a certain address. If the condition is not false, the actions run. However, it's quite possible that one player can have the condition be true, but another it's false. When that happens the trigger ONLY runs for the true player. That's what makes it possible to desync. When two players don't have similar programs running, starcraft drops them instantly. If the trigger that ran for only one player set deaths of terran marine to some number, it would only set deaths for that player's copy of starcraft, and he would drop.



"Parliamentary inquiry, Mr. Chairman - do we have to call the Gentleman a gentleman if he's not one?"

Apr 26 2009, 5:24 am Pyro682 Post #19



So, Basically, This would cause a Desync?
:hurr:

Quote
Set Deaths for Player 38647019: Add 3 deaths of UID:0
And the Current player that the trigger is for the player to be De-synched?

Post has been edited 1 time(s), last time on Apr 26 2009, 8:15 am by Pyro682.



None.

Apr 26 2009, 9:49 am NudeRaider Post #20

We can't explain the universe, just describe it; and we don't know whether our theories are true, we just know they're not wrong. >Harald Lesch

Only actions cause a desynch. The condition you quoted is for detecting the hacker.
However actions like display text, move screen and the like are not shared with other players, so starcraft doesn't detect a data discrepancy and nothing happens. You'll have to do an action like set dc, create unit and the like which is critical for the consistent running of the map, thus shared with other players.
So the hacker owns a unit the other's don't and will get dropped.
Only the greatest group with matching memory will be able to continue to play.




Options
Pages: 1 2 3 >
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[10:53 pm]
Oh_Man -- https://youtu.be/MHOZptE-_-c are yall seeing this map? it's insane
[2024-5-04. : 1:05 am]
Vrael -- I won't stand for people going around saying things like im not a total madman
[2024-5-04. : 1:05 am]
Vrael -- that's better
[2024-5-04. : 12:39 am]
NudeRaider -- can confirm, Vrael is a total madman
[2024-5-03. : 10:18 pm]
Vrael -- who says I'm not a total madman?
[2024-5-03. : 2:26 pm]
UndeadStar -- Vrael, since the ad messages get removed, you look like a total madman for someone that come late
[2024-5-02. : 1:19 pm]
Vrael -- IM GONNA MANUFACTURE SOME SPORTBALL EQUIPMENT WHERE THE SUN DONT SHINE BOY
[2024-5-02. : 1:35 am]
Ultraviolet -- Vrael
Vrael shouted: NEED SOME SPORTBALL> WE GOT YOUR SPORTBALL EQUIPMENT MANUFACTURING
Gonna put deez sportballs in your mouth
[2024-5-01. : 1:24 pm]
Vrael -- NEED SOME SPORTBALL> WE GOT YOUR SPORTBALL EQUIPMENT MANUFACTURING
[2024-4-30. : 5:08 pm]
Oh_Man -- https://youtu.be/lGxUOgfmUCQ
Please log in to shout.


Members Online: C(a)HeK