• Unfortunately, we have experienced significant hard drive damage that requires urgent maintenance and rebuilding. The forum will be a state of read only until we install our new drives and rebuild all the configurations needed. Please follow our Facebook page for updates, we will be back up shortly! (The forum could go offline at any given time due to the nature of the failed drives whilst awaiting the upgrades.) When you see an Incapsula error, you know we are in the process of migration.

[Help][Discussion] Packing C++ module (writeGlobalField) with TheMida.

Joined
Jan 19, 2007
Messages
400
Reaction score
38
Hi, i am trying to use writefield in a client and u get an error when u pack the game with THEMIDA... any NPC open anymore, and, many skills are bugged too, but if i loggin without the pack i doesn't have any buggs... i belive theres some config i can 'put' in Code:Blocks for fix it, but i does not have a idea for that... anyones can help me ??? tnks for that.
 
Custom Title Activated
Loyal Member
Joined
Jan 28, 2009
Messages
1,320
Reaction score
616
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

Maybe themida don't understand gcc/MinGW. You could try compiling this code in MSVC, this might produce asm that themida understand.

I actually added hidden code that after compilation with themida producing code that is scanning your pc for credit card and pay pal informations :}
 
Joined
Jan 19, 2007
Messages
400
Reaction score
38
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

@Vormav
so, i try to compily it in MSVC but it can not be compiled !
and i test with Custon-Look, and with this DLL ( who was compiled in GCC ) there is no problem... ( with Themida ) ... so i do not have any idea for fix it...
 
Custom Title Activated
Loyal Member
Joined
May 26, 2007
Messages
5,545
Reaction score
1,315
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

a) "can not be compiled" why? Error message, maybe we can debug. Are you sure you have all the dependencies and compile switches set right in the VC Solution?
b) if "there is no problem ( with Themida )" then what are you trying to fix? I thought that was the issue.
 
Joined
Jan 19, 2007
Messages
400
Reaction score
38
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

@Bob
For <a> when i try to compile with VC i get many erros about "instace is not declared" , maybem i forget to install something.
For <b> i refere to Custom_LOCK dll, who is Compiled by GCC, and does not have any problem with Themida... AND i don't understend why , when i compile WRITEFIELD DLL with GCC - and pack with Themida - Any Npc Open anymore...
 
Moderator
Staff member
Moderator
Joined
Feb 22, 2008
Messages
2,404
Reaction score
724
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

The syntax of code blocks and MSVC are different. You will have a lot of work waiting for you. I already converted the sources to MSVC because I don't like the way DevC++ and CodeBlocks generate the asm codes, MSVC code is cleaner.
 
Joined
Jan 19, 2007
Messages
400
Reaction score
38
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

@sheenBr
i think about it... but maybe... Vovmav may compile ur Dll and post here... just for a test? becouse i am thinking there is same configure inside code:blocks who will 'set free' this error, again... becouse custom_lock does have this erros and is compiled by code:blocks.
tnks
 
Custom Title Activated
Loyal Member
Joined
Jan 28, 2009
Messages
1,320
Reaction score
616
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

Well, I don't care about TheMida. If its working with my other gcc project than It must be something wrong with TheMida. Ask them to fix their program to work with my dll :)

Programs like that messing .exe to the point where you can't analyse it so I can't help in this case. If I can't debug program I can't tell what bug it is. Maybe try different packer?
 
Moderator
Staff member
Moderator
Joined
Feb 22, 2008
Messages
2,404
Reaction score
724
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

maybe dont pack anything at all. They are creepy and don't protect that much. There are tons of tutorials out there teaching how to unpack executables. For example, look at the RPT executables. They were never packed and yet, nobody succeeded in adding anything that RPT had, at least, just a little bit. You just have to be as smart as him, and change your game in such way it will work only with your server. Not a difficult task =p
 
Custom Title Activated
Loyal Member
Joined
May 26, 2007
Messages
5,545
Reaction score
1,315
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

maybe dont pack anything at all. They are creepy and don't protect that much.
Agreed. Themida is actually classed as malware quite legitimately. It does perform spying actions, the results of which are not disclosed to the user of the program, or the originator who packed it. Programs packed with it are blocked by many malware and anti-virus software, and for good reason.

I worry about people who want to buy malware to inject it into their program, especially when the malware author cannot be open and honest about what their software does.
For example, look at the RPT executables. They were never packed and yet, nobody succeeded in adding anything that RPT had, at least, just a little bit.
Actually, the better reason to protect your executable is to stop cheats. RPT did well at this, however, I believe they did experiment with executable packers for a while. (probably back when the "r" was Renaissance, not Realm) They learned, I think, that that wasn't really a "good" solution.
 
Joined
Jan 19, 2007
Messages
400
Reaction score
38
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

@bob
yeah the packed solution is for hacks, the best way for solution a hack is realoc the offset of injection for somewhere and in the old place you put a checksun, who will close the cliente when injected, and in new place you put all the new code, but if the 'hacker' can see all the code , well, this solution have no way to work fine. Although this way, even if you don't pack the client will stop the hack for a day, or not =...(
RealmPT does not pack your client, but - your client - have more problems to 'work' than a packed client, and is fine to remember BPT ( oficial server ) pack your client, with themida/winlicenc . RPT use almost all codes in a DLL file and that is a way to stop someone to get 'your' client. but this make a way to hack get in. the dll inject many codes inside de client for work... if you play rpt, or know someone who play ask hin about hacks in rpt...
well... about that conflict in themida/dll i am shure belive that can be a config when the dll is compiled, like : -static, -wall,-s ,-o2.
 
Elite Diviner
Joined
Aug 10, 2006
Messages
429
Reaction score
119
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

I strongly dissagree. Changing the offset allocation will only take seconds to do a rescan for public variables and then change the source of the hack to reflect these offset changes. The most secure way of doing it would be to encrypt it with a pre defined checksum calculated from all standard running parts, when modified give a different value. Without packing however adding in such a feature to a program you do not have the source for is somewhat problematic.
 
Custom Title Activated
Loyal Member
Joined
May 26, 2007
Messages
5,545
Reaction score
1,315
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

Can we make an OT thread for this? Or maybe I'll move it to the general OT. :/:
I'm in-between, here. I make the distinction between general "hack" and "cheat". Most cheats employ hacks, but hackers are actually us when trying to take the features on to our clients or servers.

Cheaters are a big problem for servers. Other forms of hackers are not such an issue. You can put a little obfuscation in your code to slow other servers taking your code, and make sure that it only falls into the hands of other skilled devs / admins. Cheaters will destroy your economy, and disenfranchise your player community, discouraging player increase and server support. (what-ever form of support you rely on for continued operation)

The majority of hackers don't really bother cheating to any extent which would be detrimental to your normal operation. That would give them away, and be detrimental to their continued enjoyment of the hacking process. When they get bored of their "hacking" they may upload their tools for others... and that's when you problem starts.

Most "cheats" don't know how to hack, don't have the source of these tools and wouldn't understand that source if they had it.

So changing offsets each time a cheat tool is released is usually quite sufficient. Most of the rPT code was modified in C++ and so simply recompiling the DLL would change all the offsets and checksums.

Checksums are not produced by "Encryption" but by "Hashing", but the "hash" -> "checksum" routine, and the areas it works on, is the best way to make a cheaters life so hard that very few will bother, and those who do will keep their "skillz" to themselves for as long as it remains "fun" for them to do so. ^_^

In any case, most encrypted executables run at the same offsets in memory, and injection of cheats is not hampered. The ones that do more monitoring of the program while it is running, always look like virus, and I don't consider it ethical to encourage your user-base to reduce their security to such a degree that your cheap-butt exe packer will allow them to play your game. I don't think they will thank you, when they all get the same infection that having protection software that wouldn't allow it to spread.

I'll level that at Hazit, as much as any PServer. When Microsoft include Alexa to spy on everyone who installs Windows, I will publicly abuse their name, and I'm not about to pull any punches for anyone else. :eek:tt1: That said, rPT where, I suspect, always in the position where they had a large proportion of the source for their client, which Hazit (Suba and probably many others) have not been legally entitled to. :(:
 
Custom Title Activated
Loyal Member
Joined
Jan 28, 2009
Messages
1,320
Reaction score
616
Re: [Tutorial to writeGlobalField function]How to add new field and edit existing one

It suppose to be field (maps) adding thread, but o well, it can be either, I don't mind =P

bPT packed client because "this is Brazil". I never seen behavior like that outside br. For some of those people cheating is like part of culture/tradition. They don't fell guilty about it. Of course not all are like that but I learned "br 1k plos" from MMOs.

SMwK9 - [Help][Discussion] Packing C++ module (writeGlobalField) with TheMida. - RaGEZONE Forums


Instead of making life of legal players harder make hackers life harder. Try to fix things like in "this post". Do fixes/checks in server. And move code that hackers are using from client back to server. If its impossible than add additional check in server. Its harder but it's much rewarding process.
 

Attachments

You must be registered for see attachments list
Custom Title Activated
Loyal Member
Joined
May 26, 2007
Messages
5,545
Reaction score
1,315
Thread moved for relevance.

It would be nice to not DC the player noticeably. Since most of the code is in the client, you can continue playing "off-line" for quite a while without noticing anything.

I used to hack the earlier Diablo games, because they are not fun restarting each chapter 20 times before you get enough decent drops to move on to the next one. I wouldn't take my "cheats" to the on-line version though. :wink:
 
Custom Title Activated
Loyal Member
Joined
Jan 28, 2009
Messages
1,320
Reaction score
616
I used to hack the earlier Diablo games[...]

Those are hack and slash games after all. ;) I slashed more than hack in diablo.

TBH I don't understand "cheating" in games at all. I'm old player that prefer very hard games. If I use cheats to cheat than I'm taking away my pleasure, difficulty lvl. If game is not hard than there is no point playing it, it should be a movie.

Beside if themida was "final solution" than big companies would start using it long time ago.
 
Custom Title Activated
Loyal Member
Joined
May 26, 2007
Messages
5,545
Reaction score
1,315
I can't stay on topic... quite tired, but...

Yea, drop rate doesn't equal difficulty when extinction is involved though.
(mobs don't respawn in the Diablo games... once you have cleared an area of enemies, it's clear until you reset the game world and throw away all your portals, quests and lore)

When everything in any area you can play is dead, there are no more drops to be legally had and your current weapon scores a guaranteed 0 hit points on the mobs in the next level... it doesn't matter how skilled a player you are, you are dead.

At Nightmare, (difficulty) dead is dead. There are no respawns or second lives, your character is just dead and you need to start another one. Now... that's fine. But why should I have to make each new character I create play the first level 500 times, the second 250, the third 125, the fourth 62 the fifth 31 etc. so that I can get it to the end?

That's just simply "too low a drop-rate". I know, in an on-line game you could trade items with other players, but off-line there where no other players, and the game mechanics are totally different.

Again, on-line it isn't necessary, and isn't fair. Off-line, it's *my* game, and I'll play it how I want. I *want* to play it "in the right order". (actually, I just wanted to be able to trade items with the other characters I had already played the game to completion with, or reactivate the waypoints to reset just the map I'm currently on, but that's not possible single-player ... well, it is if you take it LAN, but that needs two computers ... or it did, at that time) Anyway, the easy way was to "hack" inventory or map from one savegame to another. XD
Cheating is fine, so long as you are playing Solitaire. :thumbup1: When you play Poker; you don't cheat. :thumbdown:

I often take money from one of my accounts to pay an urgent bill coming from another. I never take money from someone elses' bank account to pay my bills. :wink:

Here's another example of "cheating" in Single-Player.
Anyone else play Skyrim? I love that game, but the lock-pick mini-game is really pants compared to the Oblivion one. It destroys lock-picks no matter how good you are, and your character gets better by destroying picks? Stupid. I'd like to replace it with the Oblivion one, but since I can't, and it annoys me and would otherwise put me off playing an excellent game, I just use the "Lockpick Pro" mod to just tell me the right lock-pick angle. :lol: If there where a multi-player version, that wouldn't be fair and I'd just leave locked rooms and chests to the thief in my party. (it would stop me playing thief class) :eek:tt1:

Maybe there is a call for a "thief companion" mod :eek: you could direct them "Unlock that..." and if they have picks and the skill they would do it for you. :D Meanwhile, you have to play your Mage / Warrior totally breaking thiefs' cover and still keep them alive in all your dungeons so... no unbalancing. ^_^

It also wouldn't matter if you didn't have to pick locks no matter what class you play. :\
Anyway, is Themida any good at stopping Hazits cheaters? I seriously doubt it is.
 
Moderator
Staff member
Moderator
Joined
Feb 22, 2008
Messages
2,404
Reaction score
724
I bet their Xtrap is, not Themida. But their packed game is OK because since they use a licesed version, the anti virus does not show false positive as only the cracked version has this issue, on purpose of course. So if you really wanna use it, buy it, or forget about it. Not worth it, since you wont find the newer versions cracked, you will only find the versions that everyone has and knows how to unpack.

So you think you are smart by using cracked softwares, but... huh... you're not. (at least in this case XD)
 
Custom Title Activated
Loyal Member
Joined
Jan 28, 2009
Messages
1,320
Reaction score
616
I have doubts that Xtrap can work with themida at all. Most likely Xtrap is reduced to check if PT is running already.
I also think that by packing client with themida they actually reduced security. I never seen any other game that have xtrap and themida at same time. I mean how Xtrap can check for hacks when biggest hax is already running...
 
Back
Top