Getting into Coding.....

Brano11

I am omg awesome!
Joined
Mar 17, 2007
Messages
1,758
Reaction score
8
Points
38
Age
35
Location
Ardmore, Ok
Hello all, I have been looking into learning how to code and trying to do some fun stuff with it later down the road. I would mainly want to look into C++ and Java right now. I know this forum has quite a few devs, and wanted to ask yall what type of resources are out there that you know of on getting basic concepts etc for these 2 languages?

Any info would be awesome, there seems to be a TON of info on both, but not sure where to start lol.
 
google, youtube, and searching the mq2 solution are how i learned enough to make mq2bot. im not going to pretend to be good at c++ but that was certainly a quick start from knowing nothing.
 
Personally, I would advise against your choice of Java. While it isn't exactly a dead language yet, it's on the way out. Java is loathed by the majority of the IT field due to it's poor performance, security problems, and general unreliability a lot of time.

C++ is an ok language to learn, it is still completely viable these days as a core language, but isn't exactly the easiest to pick up.

My personal recommendation would be for you to start in Python. It's a great little language that has gained a lot of support and is pretty easy to pick up for newbies. There are lots of resources out there to get you started on it, and it has lots of applications you could use it for. It can work as a simple scripting language, a server side web application, or a system application. Udacity.com has some intro to programming courses that are descent to get started on, and they use Python as their preferred language in the majority of programming courses on there.

That said, the one thing that is going to be universal to any language you work in is logical operation. If you have a strong foundation in logic, you can adapt and code in any language.
 
I second Dev's comments. Skip Java. Start with Python or some simple macros for EQ. It helps a ton to have some pet projects to work on. The hardest part will be shutting off email, facebook, netflix, EQ and spending the 1-2 hrs a day it takes to really learn something new.

One suggestion is hit up a used book store and get one of the dummies guides and reading it. Make sure you actually try to do the examples. Then a couple days later try to do them with out looking at the book.

I know of a two folks who actually started coding by looking over macroquest wiki/manual and writing their own macros. After a couple months they went from tweaking existing macros to writing their own.
 
Just out of curiosity what knowledge is needed to update your own MQ2?
 
As others have stated, it's best to stay away from Java and let it die. Instead, consider picking up HTML5. If you haven't yet, check out edx.org. They have some GREAT classes for programming, from very great sources - and it's all free, and work at your own pace on your own time. There's a couple in particular I can recommend: CS50 from Harvard, and HTML5 from W3C.

Python seems to be a good bet, as others have mentioned. I've only began dabbling in it myself. The only languages I'm decent at yet is PHP/SQL.
 
I know of a two folks who actually started coding by looking over macroquest wiki/manual and writing their own macros. After a couple months they went from tweaking existing macros to writing their own.

This is really what got me started with programming. I've always been interested, but never really knew where to start. MQ2 macros ended up being the perfect place to start for me. You learn a lot of the fundamentals by tweaking and writing them.
 
Just out of curiosity what knowledge is needed to update your own MQ2?

Learning how to reverse engineer eqgame.exe is fairly advanced. Learning Assembly is really what is needed but it's a really niche language that isn't too useful these days. There is so many other things you need to learn like how to read the code in assembly, figuring out how the code works, then how to alter it C++ to get it to do what you want.
 
Righto thanks for the info.

I've been curious to learn how to make something like a data usage meter for my Internet. Something like this - Internode Monthly Usage Meter

What sort of stuff would I need to learn to make something like that?
 
Awesome thanks everyone, I'll look into these resources and check them out. Only reason I need to learn some java is because I have some classes coming up that are based on Java lol.
 
Just out of curiosity what knowledge is needed to update your own MQ2?

That depends on what you mean by "update your own MQ2". The stuff eqMule does is very hard and need a lot of knowledge, and a lot of time to get good at it. To grab the source code from MQ2.com and build your own compile is a much simpler task. There is a FAQ on the site that will walk you through the basics.
 
I learned both assembly and c/c++ from just looking at the mq source code.
If I didn't understand something I googled it or asked one of the other devs.
Both Dkaa and plaz got their share of stupid questions from me until I was proficient enough to start making additions to the core.

So anyway you can learn A LOT of c and c++ just by looking at the mq source isn't that awesome?!! :)

To actually update it on patchdays is a skill that took me years to learn. Good luck.
 
Last edited:
This is something I work on from time to time. I have been watching a lot of lynda videos because I have a free membership through my school. I love the idea of programming my own bots for other games. I am starting with c# and the very basics of programming in General. The RE looks confusing for now so I have stayed away. I don't plan to start any projects before i finish all of the basic programming, object oriented programming, and C# tutorials.

What draws me to programming is not just wanting to make my own bots/hacks but I think its something I would be good at after i learn some languages because I think in detail so much and all possibilities for a situation.

I would love to keep this thread active for when I need some help. I am happy you made a post about this subject because I was just thinking of doing it, knowing all the experienced coders/Re people here.
 
Absolutely dream, I figured this website has some amazing coders, why not get some insight from them!
 
Java Book. Introduction

Hello all, I have been looking into learning how to code and trying to do some fun stuff with it later down the road. I would mainly want to look into C++ and Java right now. I know this forum has quite a few devs, and wanted to ask yall what type of resources are out there that you know of on getting basic concepts etc for these 2 languages?

Any info would be awesome, there seems to be a TON of info on both, but not sure where to start lol.

I have a PDF of a book for you sir. I'm actually in a java class right now.

Hope you find it useful. Every bit of code helps.

And for your C++ needs, try this guy.

https://www.youtube.com/playlist?list=PLF9B0522C7BC3C1C2

Those are his basic tutorials that will get you started on the right path to understanding code. No experience required for either.
 

Attachments

  • Introduction to Java Programming, Comprehensive Version, 10th Edition- Y. Daniel Liang.pdf
    14 MB · Views: 2
Hot damn thank you! I will take a look at those for sure.
 
No problem. I can email sample java files that I've created during my class. I'm only on week 7 and I'm practically able to just show up on test days because of my time here on MMOBugs. I was a little nostalgic today and figured I'd come on here and take a look at things.

Currently I'm working on breaking down the main method into several different methods to do things in a more organized way. Unfortunately my program was honestly extremely simple to make and required no additional methods. However, the teacher said without making at least 1 other method you would get a zero. LOL. Here's that code just for fun.

Code:
/*
 * COSC 1336
 * Homework #4
 */

import java.util.Scanner;

public class Rock {

	public static void main(String[] args) {
		Scanner PlayerInput = new Scanner(System.in);
		int Player = 3; //create and initialize outside of accepted value (for error checking with < && > 
		int Computer = 3; //create and initialize outside of accepted values the play for the computers.
		char PlayAgain = 'y'; //create and initialize the PlayAgain variable to allow the loop to run the first time without input. 
		int ComputerWin = 0; //number of times you lost. 
		int PlayerWin = 0; //number of times you won. 
		int isTie = 0; //number of times you tied. 
		
			// Prompt to let the user input Scissor (1), rock(2), paper (3) .
		while (PlayAgain == 'y') {
			System.out.println(""); //extra line. 
			System.out.print("Please select Paper (1), Rock (2), or Scissors (3): "); //print the request to selection option to screen. 
			Player = PlayerInput.nextInt(); // read user input number
			Computer = (int)(Math.random()*3+1); //generate a choice for the computer. 
			
			// Check user input was within range. 
			while (Player > 3 || Player < 1) {
			  System.out.println("I'm sorry that is not a valid choice, please choose Paper (1) Rock (2) or Scissors (3).");
			  Player = PlayerInput.nextInt();
			}
			String PlayerInputString = ("");
			switch (Player) {
				case 1: PlayerInputString = "Paper (1).";
				break;
				case 2: PlayerInputString = "Rock (2).";
				break;
				case 3: PlayerInputString = "Scissors (3).";
				break;
			}
			System.out.println("You have selected " + PlayerInputString);//Display Users selection. 
			 
			//Create a string to output based on random computer variable
			String ComputerInputString = ("");
			switch (Computer) {
				case 1: ComputerInputString = "Paper (1).";
				break;
				case 2: ComputerInputString = "Rock (2).";
				break;
				case 3: ComputerInputString = "Scissors (3).";
				break;
			}
	
			System.out.println("The computer has selected " + ComputerInputString); //Displays Computer's selection. 

			//See who won. 
			if (Player == Computer) {
				System.out.println("It's a tie!");
				System.out.println("");
				isTie++;
			}
			else if (Player == 1 && Computer != 3) {
				System.out.println("You Win! :-)");
				System.out.println("");
				PlayerWin++;
			}
			else if (Player == 2 && Computer != 1) {
				System.out.println("You Win! :-)");
				System.out.println("");
				PlayerWin++;
			}
			else if (Player == 3 && Computer != 2 ) {
				System.out.println("You Win! :-)");
				System.out.println("");
				PlayerWin++;
			}
			else {
				System.out.println("The computer won! :-(");
				System.out.println("");
				ComputerWin++;
			}
			PlayAgain = PlayAgain();//set the variable PlayAgain based on the results of the PlayAgain() method
		}

		//print the score when you decide you are done playing. 
			System.out.println("\nYou won " + PlayerWin + " times!");
			System.out.println("You lost " + ComputerWin + " times!");
			System.out.println("You tied " + isTie + " times!");
			
		PlayerInput.close(); //close scanner input.

	}
		
	
	//method to see if you want to play again.
	public static char PlayAgain() {
		Scanner PlayerInput = new Scanner(System.in);
		char PlayAgain = 'y';
		System.out.print("Do you want to play again? Yes (y), or No (n): " );
		PlayAgain = PlayerInput.next().charAt(0);
		if (PlayAgain == 'Y') {
			PlayAgain = 'y';
		}
		return PlayAgain;

	}
	
}
 
Also if you are interested in what is called an IDE (Integrated Development Environment) Class has me using Eclipse and I like it. Eclipse Downloads

I just noticed they have an IDE for C++ as well.

Get the java one for developers, not the EE (Enterprise Edition)

Not sure about the other IDE's they have but the developer one for Java is free.
 
Yea ive already downloaded Eclipse to try and see how it compares to some older programs I have used in C and C++.

I will def take a look at your stuff, thanks a ton !!!!!
 
You may want to check out Codeacademy since they just added a Java tutorial. It doesn't do all that much in terms of explaining integration / usage, but it's great for learning the general syntax.

For C++, there are plenty of free resources as mentioned throughout the thread. Coursera, was one I found with a few C++ courses along with the Computer Science courses, and you can work at your own pace.