[ / / / / / / / / / / / / / ] [ dir / asmr / bbbb / general / htg / lewd / mde / rwby / strek ][Options][ watchlist ]

/tech/ - Technology

You can now write text to your AI-generated image at https://aiproto.com It is currently free to use for Proto members.
Name
Email
Subject
Comment *
File
Select/drop/paste files here
* = required field[▶ Show post options & limits]
Confused? See the FAQ.
Expand all images

[–]

 No.796213>>796421 >>796857 [Watch Thread][Show All Posts]

>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.

>What will I be able to do if I learn this?

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

>Books

Game Hacking: Developing Autonomous Bots for Online Games <- read this if you want to jump into game hacking

https://www.nostarch.com/gamehacking

Gray Hat Python <- read this if you want to know how hacking tools work and how to build them

https://www.nostarch.com/ghpython.htm

Reversing: Secrets of Reverse Engineering <- read this if you want a detailed understanding of reverse engineering

>Tools

>Memory scanners

http://www.cheatengine.org/

>Debuggers

https://www.immunityinc.com/products/debugger/

http://www.ollydbg.de/

https://www.sourceware.org/gdb/

>Automation software

https://www.autoitscript.com/site/autoit/

https://autohotkey.com/

note most programming languages have at least one library that does GUI automation.

>Discord

https://discord.gg/w7PZXUw

>Tips

Play around with games that are <100MB as they don't require long memory scans and have a shorter turn around time if you fail.

Play around with this stuff for a good month in order to create natural intuition. Game hacking is 90% trial and failure.

Don't cheat online games if you're new to this stuff.

 No.796240


 No.796252>>796264 >>796328 >>796424

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


 No.796253

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


 No.796264

>>796252

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


 No.796328>>796417 >>796420 >>796444 >>796479 >>796557

>>796252

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


 No.796334

death to all with anime avatars


 No.796417>>796458

>>796328

>linked list

>superior to anything

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


 No.796420>>796458

>>796328

>linked list is ... superior to an array

Please leave and don't come back.


 No.796421

>>796213 (OP)

>what do i need to know before getting started

>bunch of autistic shit

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


 No.796424

>>796252

This.

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


 No.796438>>796439

How do anticheat systems work?


 No.796439>>796440 >>796444 >>802383


 No.796440>>796442 >>796450

>>796439

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


 No.796442>>796443

>>796440

yes. dont play on public servers


 No.796443

>>796442

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


 No.796444>>796458

>>796328

>linked list is or why its superior to an array

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

>>796439

>https://www.reddit.com/r/arma/comments/2750n0/battleye_is_sending_files_from_your_hard_drive_to/

video games were a mistake


 No.796450

>>796440

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


 No.796458>>796459 >>796474 >>796477 >>805274

>>796417

>>796420

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.

>>796444

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


 No.796459>>796467

>>796458

>linked lists are better for this special edge case

let me quote the original statement:

>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.

kys


 No.796467>>796472

>>796459

>Inserting and deleting of data is an edge case

>I sage to show disagreement with posts


 No.796472


 No.796474>>796479 >>796777

>>796458

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.


 No.796477


 No.796479>>796482

>>796328

>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.

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"

>ego

literally every book is only written for ego/money/resume

>linked list is or why its superior to an array.

is this bait?

>>796474

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


 No.796482>>796523 >>796777

>>796479

>linked lists have tons of use cases

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


 No.796497>>796523

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.


 No.796523>>796526

>>796482

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.

>>796497

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.


 No.796526>>796531

>>796523

i didnt mention the stl, vectors, or arrays. your post is invalid.

try formulating an actual argument next time, ok??????


 No.796531>>796535 >>796536

>>796526

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.


 No.796535>>796549


 No.796536>>796543 >>796544 >>796549

>>796531

>Case closed

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.


 No.796543>>796556 >>796569

>>796536

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


 No.796544

>>796536

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


 No.796549>>796554 >>796556 >>796557 >>796569 >>796954

>>796535

>muh insertion/deletion

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 <100 elements that is running on a computer that can handle a game that probably uses a million times more resources.

>>796536

>cache misses

>paging

>data locality

we're not building a kernel, in fact I think the only reason you brought up those topics is to peacock your knowledge of low level programming details. I cant blame you, I often do this also but I don't do it in such a confrontational manner.

If you're not trying to peacock, I think that you are wasting your efforts looking at low level details when it is better to try to solve your issue with high level abstractions and optimise later if needed.

>the constant overhead of having to look up a pointer

would it trigger you if I recommend people write their bots in memory safe languages such as C#? are you going to cry about the garbage collector next?


 No.796554

>>796549

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


 No.796556

>>796543

>generally

>>796549

><100 elements

>cache misses, paging, data locality dont matter

holy shit are you retarded? if you dont care about performance than use whatever.


 No.796557>>796558

>>796328

<don't even know what a linked list is or why its superior to an array

lol'd.

>Memory overhead due next pointer and heap metadata

>Heap allocation for every single insertion

>Continual pointer indirection to non-contiguous locations in memory

This kills the cache.

<b..but muh constant-time insertions and deletions

Not worth it most of the time. Especially not worth it if you have to iterate to a position (O(n) time) before you do the insertion. And if you don't care about insertion order, there are better solutions.

>>796549

>game

Maybe you want something like this instead (assuming you care about performance):

http://www.plflib.org/colony.htm


 No.796558>>796563

>>796557

>we are talking about a data structure of <100 elements

he doesnt care about performance


 No.796559>>796560

autism


 No.796560

>>796559

not an argument


 No.796563

>>796558

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.


 No.796569

>>796543

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

>>796549

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


 No.796570>>796580

ITT no one has ever heard of a hash table


 No.796580>>796584

>>796570

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


 No.796584>>796585 >>796586

>>796580

>hash tables aren't array based


 No.796585

>>796584

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.


 No.796586>>796588

>>796584

They are, that's why I said

>some other array-based container.

Unlike plain arrays, though, they also

>have access overhead from the hashing function

>need an extra mechanism to deal with collisions

>are slower to iterate through


 No.796588>>796590

>>796586

ye i fucked up :( im sorry fam


 No.796590

>>796588

no prob :^)


 No.796597>>796604 >>796854 >>796861

>video game hacking

>everyone sperging over linked lists

fuck off autismos

honest question here,

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


 No.796604

>>796597

DUDE

RUST

LMAO


 No.796721

thanks for killing the thread guys


 No.796777

>>796482

>>796474

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.


 No.796854>>796861

>>796597

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++.


 No.796857>>796921

>>796213 (OP)

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


 No.796861

>>796597

>>796854

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 https://github.com/kmcallister/syscall.rs


 No.796921

>>796857

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


 No.796954

>>796549

>first reply

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


 No.796955>>797117

>The CompSci O(n) bullshit makes sense on paper, but you have to work with real hardware.

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


 No.797117

>>796955

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.


 No.797121

>google for game hacks written in rust

>all results are hacks for the game rust written in c++


 No.797297

bump


 No.797352>>798611

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


 No.798611>>800879

>>797352

>Hey Jim, we need a login page by tomorrow!

>Sure thing boss, it will be in a few weeks

>Hey Jim, where is that page you promised?

>WHAT THE FUCK DID YOU SAY TO ME YOU LITTLE BITCH? DO YOU KNOW HOW HARD IT IS TO BUILD A WEB SERVER FROM SCRATCH? DO YOU HONESTLY WANT ME TO USE THE POS THE IS NODE OR APACHE? WE NEED TO CUSTOM BUILD A WEB SERVER FROM SCRATCH IN ASSEMBLY SO THAT IT UTILIZES OUR PROCESSORS 100% AND DO YOU HONESTLY EXPECT ME TO USE A BLOATED LANGUAGE LIKE JAVA OR C#? I EVEN CONSIDER C++ TO BE A BLOATED POS. NO WE WILL BE USING C WITH INLINE ASSEMBLY TO MAXIMIZE OUR SPEED AND DO YOU EXPECT ME TO USE THE OUT OF DATE TCP STANDARD? WE NEED TO CREATE A NEW STANDARD THAT FULLY UTILIZES OUR USE CASE WITH NO WASTED TIME DOING REDUNDANT VALIDATION. EVERYTHING NEEDS TO BE BUILT FROM SCRATCH, WE CANNOT AFFORD TO WASTE A SINGLE CLOCK CYCLE!!!!

>Jim was later fired and replaced with Raja who coded the entire login page in a single day using ASP.NET™ and Microsoft server™ with Azure™

>Since westerners don't know all Microsoft technologies inside out, the company was forced to hire Rajas friends from MIT(Mumbai Institute of technology)


 No.800546>>800556

File (hide): c0e505c9f7bd500⋯.jpg (77.33 KB, 640x610, 64:61, 1456067273823.jpg) (h) (u)

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

Where/how do you sell hacks?


 No.800556>>800633

>>800546

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.


 No.800560>>800922

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?


 No.800633

>>800556

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


 No.800879

>>798611

>caring about corporate necessities

Real programmers don't need to be employed.


 No.800922>>801000

>>800560

romhacking is not the same as writing cheats for games


 No.801000>>801021

>>800922

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


 No.801021

>>801000

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


 No.802383

>>796439

>BE

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

http://dev.cra0kalo.com

http://longpoke.github.io


 No.803286>>803466 >>803479

File (hide): 261add631e438ca⋯.jpg (1.3 MB, 1800x1273, 1800:1273, jo-san-aristocracyleftv7.jpg) (h) (u)

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.


 No.803466

>>803286

You can use cheat engine for that iirc.

Or literally any debugging program.


 No.803479>>804113

>>803286

cat /proc/$(pgrep name)/maps


 No.804113

>>803479

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


 No.805274>>805562

>>796458

>muh linked lists always superior to arrays le epic troll ;)))))))))))

>zero understanding of caching effects

confirmed streetshitter tbh

>>>/india/


 No.805275

>this is how I create my minions and start my empire

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


 No.805562

>>805274

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!




[Return][Go to top][Catalog][Screencap][Nerve Center][Cancer][Update] ( Scroll to new posts) ( Auto) 5
80 replies | 4 images | Page ?
[Post a Reply]
[ / / / / / / / / / / / / / ] [ dir / asmr / bbbb / general / htg / lewd / mde / rwby / strek ][ watchlist ]