Questions about Memory Editing - Cypher menu

Shout-Out

User Tag List

Page 1 of 2 12 LastLast
Results 1 to 15 of 24
  1. #1
    typedef's Avatar Banned
    Reputation
    8
    Join Date
    Nov 2008
    Posts
    96
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Questions about Memory Editing - Cypher

    I wanted to make a new thread so that people could check this out and maby view some of the answers to my questions.

    Aimed for Cypher

    What language should I use for Memory Editing: C++, C#, VB

    Do I need to learn Assembly?

    Any other Languages? LUA by any chance?

    Thats all for now cypher, I thank you for reading this and answering my questions your time is greatly appreciated heh

    Questions about Memory Editing - Cypher
  2. #2
    arigity's Avatar Banned
    Reputation
    49
    Join Date
    Dec 2007
    Posts
    548
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    use the one that you know, if you don't know one default to the easiest.

    its not necessary, but you won't be able to find much on your own without it.

    also not necessary, but its probably useful to know.

  3. #3
    bind's Avatar Contributor
    Reputation
    85
    Join Date
    Jan 2007
    Posts
    78
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    You can use any of those languages for memory reading / writing, it all boils down to preference, experience in the language, etc. I'd completely take VB out of the equation personally...

    Learning ASM is a
    necessity, knowing your way around your applications helps significantly. You don't need to master ASM, but It's definitely something you want to invest time learning. You'll also find yourself writing code in other languages more efficiently when you understand programming at the machine level.

    LUA what?...

  4. #4
    KRYPTON88's Avatar Banned
    Reputation
    97
    Join Date
    Oct 2008
    Posts
    180
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by bind View Post
    You can use any of those languages for memory reading / writing, it all boils down to preference, experience in the language, etc. I'd completely take VB out of the equation personally...

    Learning ASM is a
    necessity, knowing your way around your applications helps significantly. You don't need to master ASM, but It's definitely something you want to invest time learning. You'll also find yourself writing code in other languages more efficiently when you understand programming at the machine level.

    LUA what?...
    Agreed. Assembly is a big issue when looking for addresses/Offsets/pointers ... Memory reading/writing in VB is not very easy and is kind pointless since VB isnt made to even open process memory...(So ive been told at expertexchange.com) But like Bind said, You need it. So learn as much as you can about ASM and Reverse engineering.

    P.S I suggest learning a Low level language like C# or C++.. But of coarse that will take alot more work and research... I started out writing wow addons in Lua and XML. I think it was a great start to get used to scripting. Good luck and have fun man. Once you get the hang of it its VERY fun! Also learn to use a debugger like OllyDBG. Very useful!

  5. #5
    arigity's Avatar Banned
    Reputation
    49
    Join Date
    Dec 2007
    Posts
    548
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    C# is a high level language, perhaps your thinking of C?
    also VB can just as easily be used for memory editing as C# or C++, obviously a low level language would be better but you can do it either way.

  6. #6
    Apoc's Avatar Angry Penguin
    Reputation
    1387
    Join Date
    Jan 2008
    Posts
    2,750
    Thanks G/R
    0/12
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by KRYPTON88 View Post
    Agreed. Assembly is a big issue when looking for addresses/Offsets/pointers ... Memory reading/writing in VB is not very easy and is kind pointless since VB isnt made to even open process memory...(So ive been told at expertexchange.com) But like Bind said, You need it. So learn as much as you can about ASM and Reverse engineering.

    P.S I suggest learning a Low level language like C# or C++.. But of coarse that will take alot more work and research... I started out writing wow addons in Lua and XML. I think it was a great start to get used to scripting. Good luck and have fun man. Once you get the hang of it its VERY fun! Also learn to use a debugger like OllyDBG. Very useful!
    C# is not a low level language. (It's far from it)

    ASM is pretty much required if you want to do anything really useful.

    If you're just learning, and are trying to get into memory editing, start with C++, you'll be happy you started in the harder language down the road. C# is far easier to learn and use, but has some serious drawbacks in the area of memory editing. (Especially when it comes to trying to do things in-process) Granted, C# can do just about everything C++ can do (not including driver/kernel level things, and C++ specific stuff [e.g. struct inheritance, certain operator overloads, typedefs, etc, etc]) so long as you have a proper wrapper around what you're attempting to do. (Yes, function hooking/pseudo-typedefs can be done in .NET [C# only currently, and of course, C++/CLI])

    The 3 things you need besides your language, IDA (static reversing), OllyDbg (debugging), and your IDE. Everything else is really just some extra nifty things. (CE, MHS, etc etc, can be helpful at times, but more often than not, Olly can do what they do.)

    Personally, I think Visual Studio is the best available IDE for C++/C#/VB, however that's just my opinion. (It is by far the best for C#, since well... MS created C#, they know how to use it's features :P)

    Also, if you plan to do memory editing, stay far far away from VB(.NET). The language is not made for that type of stuff, and will never be able to handle it properly.

  7. #7
    KRYPTON88's Avatar Banned
    Reputation
    97
    Join Date
    Oct 2008
    Posts
    180
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thank you for the correction Yes I ment C and C++ pretty much in same family eh? and as for VB I mean VisualBasic, Not Visual C# of Visual C++ , I made my tracker with Visual C# So i know about memory editing in that. But ya, My college coarse In C# isnt as hard as I expected I should have taken C++ 1 and 2, I still can just need the extra $300 to throw down

  8. #8
    Gamer's Avatar Active Member
    Reputation
    239
    Join Date
    Jan 2007
    Posts
    198
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Apoc View Post
    Also, if you plan to do memory editing, stay far far away from VB(.NET). The language is not made for that type of stuff, and will never be able to handle it properly.
    I've found VB.NET can do memory reading/injection just as well as C#, code wise they seem pretty much interchangeable.

    Ofcourse this is using BlackMagic; using C++ is obviously more appropriate, but between C# and VB.NET, does C# have any advantages in this particular area?

    ('Learning VB makes it harder for you to learn other languages' arguments aside)
    Last edited by Gamer; 01-07-2009 at 01:11 AM.

  9. #9
    Cypher's Avatar Kynox's Sister's Pimp
    Reputation
    1356
    Join Date
    Apr 2006
    Posts
    5,368
    Thanks G/R
    0/4
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by typedef View Post
    I wanted to make a new thread so that people could check this out and maby view some of the answers to my questions.

    Aimed for Cypher

    What language should I use for Memory Editing: C++, C#, VB

    Do I need to learn Assembly?

    Any other Languages? LUA by any chance?

    Thats all for now cypher, I thank you for reading this and answering my questions your time is greatly appreciated heh
    What language? If you're looking to get seriously into memory editing, writing hacks, writing bots, etc then I'd say C++. Whilst all of that stuff can be done from C# a grasp on C++ (ie the language 99% of modern big-title games are written in) will help a LOT.

    Assembly? Again, if you're looking to get seriously into memory editing, yes. Memory scanners will only get you so far, if you want to do anything decent you really need to learn how to read the language that the game code you have access to is written in (ASM) so you can either read it to gain useful information, or hook it to modify the game's functionality.

    LUA? I don't claim to "know" LUA, but its easy enough that whenever I need to do something I can work out fairly quickly how to code a quick snippet that gets the job done. It may not be the best code, but it works. Having a basic understanding of LUA (especially how the library is implemented in games) WILL help, but its not something you need to study in-depth.

    As always, the key is persistence (thats a big one). Practice makes perfect. ASM is hard to learn if you don't come from a computing background where you already understand a lot of low-level programming concepts and techniques, you will find it confusing, and you WILL find it hard. You need to just stick at it though, it WILL take time, but you'll get there eventually.


    Originally Posted by arigity View Post
    use the one that you know, if you don't know one default to the easiest.

    its not necessary, but you won't be able to find much on your own without it.

    also not necessary, but its probably useful to know.
    I'm sorry, but imo "default to the easiest" is a terrible suggestion. If you don't know a programming language why double-handle? Start with one that can help you understand the topic better (C++).

    Most modern games are written in C++, if you want to hack a game in any level of detail above basic memory scanning and copy-pasting code addresses from others (ie. you want to be able to discover new hacks by yourself) you will need to have a grasp on ASM, C++, and how the compiler 'translates' the C++ into ASM.

    Sure, if you're happy stopping your learning at the point where you can copy-paste offsets and pretend you know what you're doing then pick something 'easy' (C++ isn't hard, I don't know why people think it's so scary). But if you want to actually be a decent game reverser/hacker/whatever you will need a decent understanding of low level concepts and how games are implemented.


    Originally Posted by arigity View Post
    C# is a high level language, perhaps your thinking of C?
    also VB can just as easily be used for memory editing as C# or C++, obviously a low level language would be better but you can do it either way.

    VB is terrible, both in terms of the language itself, and in terms of the functionality it lacks in terms of a similar but much better language (C#) -- do a google search if you think VB == C# and only the syntax is different, you'll find you're quite wrong if that is the case. There is absolutely no reason to use VB unless you fail to meet the IQ bar required to learn C# (which is not high at all), don't ask me why people have trouble learning C# when its so similar to VB, but it seems that C-style syntax confuses the **** out of some people.

    On that note, thats one reason why if you're going .NET you should be using C#. Its a language with a 'standard' (or very close) synatx. It will allow you to apply existing knowledge when learning new languages (Java, C++, C, etc), rather than making you start from scratch because the syntax of your previous language was designed for people with a learning disability.


    Originally Posted by Apoc View Post
    C# is not a low level language. (It's far from it)

    ASM is pretty much required if you want to do anything really useful.

    If you're just learning, and are trying to get into memory editing, start with C++, you'll be happy you started in the harder language down the road. C# is far easier to learn and use, but has some serious drawbacks in the area of memory editing. (Especially when it comes to trying to do things in-process) Granted, C# can do just about everything C++ can do (not including driver/kernel level things, and C++ specific stuff [e.g. struct inheritance, certain operator overloads, typedefs, etc, etc]) so long as you have a proper wrapper around what you're attempting to do. (Yes, function hooking/pseudo-typedefs can be done in .NET [C# only currently, and of course, C++/CLI])

    The 3 things you need besides your language, IDA (static reversing), OllyDbg (debugging), and your IDE. Everything else is really just some extra nifty things. (CE, MHS, etc etc, can be helpful at times, but more often than not, Olly can do what they do.)

    Personally, I think Visual Studio is the best available IDE for C++/C#/VB, however that's just my opinion. (It is by far the best for C#, since well... MS created C#, they know how to use it's features :P)

    Also, if you plan to do memory editing, stay far far away from VB(.NET). The language is not made for that type of stuff, and will never be able to handle it properly.

    If C# is a low level language does that make Kynox a heterosexual? ^_^

    On the VS note. I'm a Visual Studio 2008 user for C++ and I have never used nor have I ever heard of a better IDE.

  10. #10
    Gamer's Avatar Active Member
    Reputation
    239
    Join Date
    Jan 2007
    Posts
    198
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    According to http://support.microsoft.com/kb/308470:

    Because of the previous differences between Visual Basic and C/C++, many developers assume incorrectly about the capabilities of Visual Basic .NET. Many Visual Basic developers think that Visual C# is a more powerful language than Visual Basic. In other words, Visual Basic developers assume that you can do many things in Visual C# that you cannot do in Visual Basic .NET, just as there are many things that you can do in C/C++ but cannot do in Microsoft Visual Basic 6.0 or earlier. This assumption is incorrect.
    Visual C# .NET may have a few more "power" features such as handling unmanaged code, and Visual Basic .NET may be skewed a little toward ease of use by providing features such as late binding. However, the differences between Visual Basic .NET and Visual C# .NET are very small compared to what they were in earlier versions.

  11. #11
    Cypher's Avatar Kynox's Sister's Pimp
    Reputation
    1356
    Join Date
    Apr 2006
    Posts
    5,368
    Thanks G/R
    0/4
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Power features are what I was referring too. Unmanaged code handling is precisely one of those features.

    Pointless link is pointless. I never said the differences are huge, but what is the point of learning VB? With C# you get those power features if you should ever want them, you get knowledge you can leverage onto future languages, and you get a syntax that doesn't require a learning disability to master and still think that its "fine".

    Please give me an advantage of VB over C#.

  12. #12
    Gamer's Avatar Active Member
    Reputation
    239
    Join Date
    Jan 2007
    Posts
    198
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Cypher View Post
    Power features are what I was referring too. Unmanaged code handling is precisely one of those features.

    Pointless link is pointless. I never said the differences are huge, but what is the point of learning VB? With C# you get those power features if you should ever want them, you get knowledge you can leverage onto future languages, and you get a syntax that doesn't require a learning disability to master and still think that its "fine".

    Please give me an advantage of VB over C#.
    I was never claiming VB was better in any way, I know it's a shit language for most but the simplest tasks. I just felt like VB was being unfairly criticized over it's functionality which is very similar to C#'s. I agree completely with your C++>C#>VB.NET for memory related tasks though.

  13. #13
    Cypher's Avatar Kynox's Sister's Pimp
    Reputation
    1356
    Join Date
    Apr 2006
    Posts
    5,368
    Thanks G/R
    0/4
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Gamer View Post
    I was never claiming VB was better in any way, I know it's a shit language for most but the simplest tasks. I just felt like VB was being unfairly criticized over it's functionality which is very similar to C#'s. I agree completely with your C++>C#>VB.NET for memory related tasks though.

    If you read the rest of my post you'd see another large (and important if you every wanna go anywhere with your programming) point was the ability to leverage existing knowlede onto new languages.

    When learning a new language, unless there's a good reason for me to do so, I don't wanna learn a brand new syntax, thats just a ****ing waste of time.

    EDIT: Also, we're discussing languages in terms of their memory editing/hacking/whatever capabilities. Although the difference in language features may be small on a large scale where people are using them for "normal" purposes, that is not what we are doing, so we need to look at it from a different angle.
    Last edited by Cypher; 01-07-2009 at 01:47 AM.

  14. #14
    argh44z's Avatar Member
    Reputation
    19
    Join Date
    Nov 2007
    Posts
    93
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I'll give a mention to Python since nobody has mentioned it.

  15. #15
    Cypher's Avatar Kynox's Sister's Pimp
    Reputation
    1356
    Join Date
    Apr 2006
    Posts
    5,368
    Thanks G/R
    0/4
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by argh44z View Post
    I'll give a mention to Python since nobody has mentioned it.
    I'll give a mention to Brain**** since nobody has mentioned it.

    The Brainfuck Programming Language

    Note:

    Mentioning something just because 'noone else did' is retarded, theres probably a good reason noone mentioned it.

    Sigh, people are so retarded.

Page 1 of 2 12 LastLast

Similar Threads

  1. Question about Memory Editing
    By Megadeadlord in forum WoW Memory Editing
    Replies: 17
    Last Post: 10-04-2008, 05:29 AM
  2. question about model editing
    By Raneldor in forum World of Warcraft General
    Replies: 3
    Last Post: 01-01-2007, 12:56 PM
  3. question about model editing
    By Zanatons in forum WoW ME Questions and Requests
    Replies: 1
    Last Post: 08-17-2006, 09:21 PM
  4. questions about model editing
    By Zanatons in forum WoW ME Questions and Requests
    Replies: 1
    Last Post: 08-17-2006, 05:32 PM
  5. questions about model editing
    By Avianar47 in forum World of Warcraft General
    Replies: 2
    Last Post: 07-08-2006, 09:41 PM
All times are GMT -5. The time now is 11:27 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search