/vghg/ - Video Game Hacking General

>What do I need to know before getting started
x86 assembly is mandatory in order to get anywhere.
Basic understanding of programming.
You must be able to explain functions, structs, conditions and pointers by heart in order to start hacking games
Basic debugging knowledge.

You will be able to cheat in video games, automate game play by making bots and have a greater understanding of software.


Game Hacking: Developing Autonomous Bots for Online Games

Other urls found in this thread:

ghacks.net/2014/02/16/steams-vac-protection-now-scans-ans-transfers-dns-cache/
reddit.com/r/arma/comments/2750n0/battleye_is_sending_files_from_your_hard_drive_to/
networkworld.com/article/2165854/software/esea-gaming-client-hijacks-gpus-for-bitcoin-mining.html
futuretech.blinkenlights.nl/misc/cpumemory.pdf
youtube.com/watch?v=YQs6IC-vgmo
cglab.ca/~abeinges/blah/too-many-lists/book/#an-obligatory-public-service-announcement
github.com/kmcallister/syscall.rs
dev.cra0kalo.com
longpoke.github.io
twitter.com/SFWRedditImages

>>>/bog/
>>>/suicide/

why do you link to books nigger. i got into game hacking by reading a 5 paragraph text file on how to use t-search and make "le code caves". or is this just reddit where we talk about which book to buy all day

and _do_ cheat online if you're new. most games are shit, and most anti cheat does fuck all. just avoid something like counter strike source if you have no idea what you're doing

Some people learn differently. Most tutorials online for example just don't work for me. Probably because ADHD but regardless (not op).

Books help you by teaching you everything from the very basic to the most complicated.

My experience with forum tutorials is that they are extremely shallow and the text is prefixed with a paragraph of the author ego boosting themselves by calling you a pleb and that they are the best people ever.

Its also my experience that these hacking sites are full of plebs that don't even know what a linked list is or why its superior to an array. If you have a basic understanding of graph theory, you could gather basic understanding of how to get your characters X,Y,Z. Monster X, Y, Z and make a bot that people are willing to pay for

death to all with anime avatars

are you trying to bamboozle me????????

Please leave and don't come back.

literally false, if you just want to make a cheat watch youtube videos on how2useCE and youre done

This.
No need for learning all that jazz if all you wanna do is cheat a bit.

How do anticheat systems work?

every anticheat system is literally malware.
ghacks.net/2014/02/16/steams-vac-protection-now-scans-ans-transfers-dns-cache/
reddit.com/r/arma/comments/2750n0/battleye_is_sending_files_from_your_hard_drive_to/
networkworld.com/article/2165854/software/esea-gaming-client-hijacks-gpus-for-bitcoin-mining.html

is it possible to stop cheaters without resorting to something like this?

yes. dont play on public servers

i meant is it possible to make anticheat software that is not malware?

It depends on your use case. Either way, read futuretech.blinkenlights.nl/misc/cpumemory.pdf


>reddit.com/r/arma/comments/2750n0/battleye_is_sending_files_from_your_hard_drive_to/
video games were a mistake

Have an admin of friendly human flesh on your server and ban people.

Linked lists are superior for programs that require a lot of inserting and deleting of data.

I have a puzzle for you my dudes.
You try to allocate memory for 10 arrays that take up 100mb each.
You are running your program on a computer with 2gb of memory.
The program keeps giving you a seg fault and crashing once it eaches 80% mem usage, why is this?

hint how is the memory of an array arranged in memory.

Well its nice to see that there is one person that understands that every data structure has a purpose.

let me quote the original statement:
kys

...

youtube.com/watch?v=YQs6IC-vgmo

with linked lists you wouldn't even be able to fit it into memory because of the pointer overheads.
face it retard: linked lists suck.

cglab.ca/~abeinges/blah/too-many-lists/book/#an-obligatory-public-service-announcement

shallow is a good thing. why do you want to read some faggot's opinion on every detail of how the world works? most of these script kiddie tutorials are complete shit but still vastly better than wasting time reading a full book. also most books are written by sheltered faggots who ignore all kinds of details because they want to be good goys, not to mention you have to put up with them taking a minute every 10 minutes to say "THIS IS FOR EDUCATIONAL PURPOSES ONLY!!1"
literally every book is only written for ego/money/resume
is this bait?

this is also wrong. linked lists have tons of use cases

they literally dont though. you're almost always better off using something else.

Game hacking is what got me into programming and eventually the job. I never been in university, but apparently my code I did in my free time was enough to convince them to hire me.

I was working on private server of a certain mmo game. It was one big executable, some config files in .txt and databases of items, monsters and such, quests were coded in lua. At the beginning people were only editing these things, but soon enough people started playing around with the main executable. They would post the diff file on the forum and I was mystified how a plain text file with some numbers can radically change some feature. When I discovered that these numbers are opcodes and they do stuff everything just clicked. I'd Google a x86 opcode sheet and edit this server myself byte by byte. Then I discovered you can just type assembly code in IDA and it will produce the bytes automatically, that was a big help. But still, I only had few bytes to work with. If I needed some space for my new code I'd replace the assert statements, each was like 20 bytes or so. I thought if there was an assert to happen id figure it out from the coredump. Then I learned how to add a new section to the executable, so I made 1mb rwe section and I had as much space for my code as I needed. Then I learned how to write a library that would be loaded at start and inject into the server. That was a huge help, originally in plain c, later I started using c++, recreating the original classes and structures instead of using offsets everywhere. I still had to do some stuff in assembly and of course understand it will enough to know where to inject my own code. Dirty fucking tricks that shit was. Often I'd inject my little assembly function into the server and that function would call the other function in c++. I had to forward the arguments to it, that's why I couldn't just drop a direct call to the C function (unless my function accepted the same arguments as the one I was replacing). Sometimes my C++ function would return where to jump to and in assembly I'd just have jump eax or push eax ret..... fun times. Now I'm doing "enterprise c++" and it's so boring. But... It's not so bad.

We get it, you're a wizard at the STL library and want to show off your wonderful knowledge of vectors.

The point that is being made is most people don't understand when to use a Linked list data structure over an array but you don't seem to want to grasp this simple concept.


When I was a kid, I started playing video games where I would hack constantly and make people mad, over time I started to delude myself into thinking that I was enjoying video games over hacking, I spent 5 years chasing the "fun" in games until I realised that I did not enjoy following orders set up by a game developer, instead I enjoyed smashing what was and creating my own fun.

i didnt mention the stl, vectors, or arrays. your post is invalid.
try formulating an actual argument next time, ok??????

If you know the size of your array ahead of the time or it doesn't change very Often, array is better. If you insert and remove elements often, linked list is better. Case closed.

did you even read the previous posts???????
youtube.com/watch?v=YQs6IC-vgmo
cglab.ca/~abeinges/blah/too-many-lists/book/#an-obligatory-public-service-announcement

Did I tell you to close the case, you little bitch? Linked lists are generally terrible because of cache misses and data locality. Plus, the constant overhead of having to look up a pointer, even if they happen to be in the same cache, eill take a toll on your computing time.

At least use fucking paging, you disgusting human being.

What if you're on embedded without cache (like me)

You're a very smart man, I too wish to be as intelligent as you

okay lets take a step back.

We are talking about writing a bot for a game.
A bot would need to keep a list of objects, items, map locations.
These lists would need to be resized very often to track the game state.
When a monster spawns, you would want to insert a new node into your list, when it dies you would want to delete that item.
Even If it is a waste of resources, we are talking about a data structure of

why would anyone write anything in c# unless they are forced to?

>

...

>we are talking about a data structure of

autism

not an argument

OK, but if the data structure size is small and bounded, then it doesn't make much sense to care only about big O computational complexity and ignore the lower-order terms.

Unless you have lots of memory to waste, use arrays or sane paging.


If you give no fucks at all about performance, you use a resizable array/vector/ArrayList/map. Linked lists are for toy programs and no sane language would use them by default. Even modern Lisps, the LISt Processor, don't use actual linked lists behind the scenes because it's wasteful

ITT no one has ever heard of a hash table

Perfect if you need to unpredictably access elements using arbitrary keys, but otherwise you're probably better off with some other array-based container.

...

They don't have to be array based. More often than not they will use arrays at some point, but they actually have structures quite more complicated than that.

They are, that's why I said
>some other array-based container.
Unlike plain arrays, though, they also

ye i fucked up :( im sorry fam

no prob :^)

fuck off autismos

honest question here,
can you write game cheats in rust without basically just calling C code all the time?

DUDE
RUST
LMAO

thanks for killing the thread guys

Lists have their uses, kiddos, just not as a data structure all on their own. Much better to use to resolve collisions for a hash table. Vectors (aka dynamic arrays) are much better for the traditional LL job because of CPU caching. The CompSci O(n) bullshit makes sense on paper, but you have to work with real hardware.

Would really like an answer to this.
How does rust handle all the syscalls you need on e.g. windows to read/write memory and such?
I'd imagine you'd basically have so many syscalls in your rust program that you might as well just stick with C++.

You were so close cianigger but the discord gives you away immidiately.

You can expose a safe interface with an unsafe operation inside. No need to call C code to do those things, you can do assembly if needed, like this github.com/kmcallister/syscall.rs

we tried to use Riot but very few people wanted to switch over, admit it you cant fight the tragedy of the commons

this. anyone who insists otherwise has never even wrote real code before. cache locality or even allocation time only comes into play when you need performance. the average LARPer likes to post how he knows better than everyone because he knows linked lists aren't always efficient

aaaand, the next LARPer meme enters the thread. asymptotic complexity matters plenty. there are of course cases where you care about the hard numbers, but without the O you're just another retard LARPer

Not in the way being described ITT. Linked lists aren't as fast as they used to be, not because they've got slower, but because caching helps speed random access up, as long as you get your ducks in a row. Get over it, fag.

...

bump

This thread pretty much confirms that the "Holla Forums can't code meme" is true.

...

What about MONEY. Can you make money off of this shit?

Where/how do you sell hacks?

I got a job working on vidya based on my hacks. But I have no idea about all this math and I just sit around like in one of those nightmares where you're at school in your underwear and forgot there was a test today. I just wanted to replace some models and look at tits, I have no idea what a quaternion is.

I'd really like to mod old Wii and Gamecube games for the sake of fucking around with stats and the likes. I used to just rip the music off of the ISOs with a combination of rather faulty programs but that was about it. Where do I start?

Tell me more! How much do you make, what kind of hacks did you do?

Real programmers don't need to be employed.

romhacking is not the same as writing cheats for games

Not strictly, making cheats is more about finding bugs in the game you can exploit, but if he's changing the code of the game it is game hacking, but when people say rom hacking they mostly change the assets, not the code.... although on old 8 bit systems the line between data and code is rather thin

Most romhackers just insert their shit fanfics into the game. Much hacking very wow

PUBG is shit. it goes in the category of crap games. you can teleport, fly, OPK, and lag switch. as a matter of fact you can simply unplug your ethernet, run up to someone, kill them, plug it back in, and you end up killing them from around the corner. no hacks even needed to cheat in this game
now for shilling good game hacking sites
dev.cra0kalo.com
longpoke.github.io

Are there any programs that display the entire memory map of an arbitrary program running on the machine? For example, something like a machine code monitor but only for the program itself.

You can use cheat engine for that iirc.
Or literally any debugging program.

cat /proc/$(pgrep name)/maps

Thanks I appreciate it. This should serve my purposes well.

confirmed streetshitter tbh
>>>/india/

Stop reading Syngress Stealing The Netwok series my dude
I know you team gamergoys are funny and all but just staph fam, do something to gain reputation, not this shit

Disclaimer: I'm retarted. But if there's one damn thing I ever learned about programming, it's this: there's only two kinds of data structures: contiguous arrays and everything else. "Everything else" is what you should write yourself to best fit the algorithm which you wrote, molding one to the other.

But ain't nobody got time for that, give me my free hash maps!