5 Replies - 770 Views - Last Post: 08 August 2012 - 11:00 AM Rate Topic: -----

#1 Swanny  Icon User is offline

  • New D.I.C Head

Reputation: 3
  • View blog
  • Posts: 33
  • Joined: 06-August 12

How many different types of programming go into MMO games?

Posted 06 August 2012 - 10:52 PM

Hey all! This is my first post here and to start off I just want to satisfy my curiosity about this topic...

I've started learning Java and have found it really awesome so far. I did some python in uni as well but I think I'd rather start off with the more complex one...

Anyway, to the actual question...

I want to know how many different programming elements you'd need to incorporate to create a simple game that fits the below description...

-Server program runs and loads the world from the database and runs every object on a map on its own.
-Client boots a lobby, can either create a new account or login to an existing account stored on the database.
-If using an existing account for example, the server returns all the info the client needs to load the game world and their account.
-Server processes client input and returns object data for the client to render independently.
-The game is just a simple point-and-click 3D game where players can run around on a blank plane as primitive sprites and interact with each other through chat.

Would this game if it were primarily coded in Java need to incorporate elements of all Java, Java 3D, MySQL, and .NET? Is there anything missing? Such as extra languages I might need to achieve this functionality, or extra programs that I might need to construct this aside from a JAVA IDE and a 3D program such as Blender?

Thanks for any feedback to my nooby questions :)

Is This A Good Question/Topic? 0
  • +

Replies To: How many different types of programming go into MMO games?

#2 janne_panne  Icon User is offline

  • WinRT Dev
  • member icon

Reputation: 429
  • View blog
  • Posts: 1,047
  • Joined: 09-June 09

Re: How many different types of programming go into MMO games?

Posted 07 August 2012 - 04:43 AM

If you are going to make that thing you told us about, how about making it a console application first?

You could have a console application with 20x20 space where users can move their own player and there would be some npcs moving also, which are handled completely server side.

That way you would get the basic idea what it requires to write the application you described. This could be a prototype and would be quite fast to make as you wouldn't need 3D or 2D graphics. For this you would only need Java, MySQL and the language you want to use to create the server, which could be Java if that's what you prefer.

But if want to go straight to the 3D thing, I don't think you are missing anything. I'm just wondering where you need .NET, unless that's your language for the server.
Was This Post Helpful? 0
  • +
  • -

#3 BBeck  Icon User is offline

  • Here to help.
  • member icon


Reputation: 581
  • View blog
  • Posts: 1,292
  • Joined: 24-April 12

Re: How many different types of programming go into MMO games?

Posted 07 August 2012 - 06:42 AM

Janne_Panne pretty much said what should be said about this. But I might say this. Java can probably do most of what you want to do there, except that you'll need to know the SQL language to write stored procedures in your database to handle all the database side stuff. And you'll obviously need to know how to setup a database.

Client and server software are very different and require a different level of knowledge. Your client could probably be a Java app in a web-browser, where your server should probably be doing almost all of the work and be a service running on a server somewhere. So, the server is really the hard part. But the database will be very different from writing Java code.
Was This Post Helpful? 0
  • +
  • -

#4 Swanny  Icon User is offline

  • New D.I.C Head

Reputation: 3
  • View blog
  • Posts: 33
  • Joined: 06-August 12

Re: How many different types of programming go into MMO games?

Posted 07 August 2012 - 02:45 PM

Oh yeah come to think of it I don't know why I added .NET in there when I already had MySQL :I

And that does sound like a good idea, Janne. But how would the client display the positions of players and NPCs on a grid if there were no graphics at all? By just returning the game map as a text grid?

The MySQL coding seems pretty simple from what I've seen of it so far... The basics anyway, but I'm sure I'll get it as I learn. Like I don't know exactly how a database interacts with a server at the moment either. I'm guessing they'd run as two separate applications just talking to each other whenever the server requested it?

Meh I'm more than willing to follow the learning curve anyway. I want to be able to make a calculator first, then a chess game, then a chat program, THEN make a simple database, then get more into 2D graphics by making a platform game, then make a 2D point-and-click game with server/client and database, then do the same but 3D and then work from there :)

I just wanted to know what I was getting myself into :)
Was This Post Helpful? 0
  • +
  • -

#5 BBeck  Icon User is offline

  • Here to help.
  • member icon


Reputation: 581
  • View blog
  • Posts: 1,292
  • Joined: 24-April 12

Re: How many different types of programming go into MMO games?

Posted 08 August 2012 - 11:00 AM

I think you are right about just returning the data as a "grid" of text.

With your database, the server would communicate with the database the same way a client would communicate, but it might be more automated rather than having a user directly interacting with the database. You would use some "driver" like ODBC to connect to the database, just like a client would.

So, the client might tell the server "My character wants to move to this spot. The server sends a query to the database requesting information on what's in that spot via an ODBC call (or whatever driver you're using). The database sends back the information that the server requests which indicates that this is a monster spawn point. The server knows that this type of spawn point has a 10% chance of spawning a monster. The server randomly determines that a monster has been encountered. The server requests the statistics for the monster from the database and builds the "monster" in memory for the player to encounter. The server sends a message to the client that says "draw an ogre on the screen in this location". The client already knows how to draw ogres and so draws it on the screen."
Was This Post Helpful? 0
  • +
  • -

#6 BBeck  Icon User is offline

  • Here to help.
  • member icon


Reputation: 581
  • View blog
  • Posts: 1,292
  • Joined: 24-April 12

Re: How many different types of programming go into MMO games?

Posted 08 August 2012 - 11:00 AM

I think you are right about just returning the data as a "grid" of text.

With your database, the server would communicate with the database the same way a client would communicate, but it might be more automated rather than having a user directly interacting with the database. You would use some "driver" like ODBC to connect to the database, just like a client would.

So, the client might tell the server "My character wants to move to this spot. The server sends a query to the database requesting information on what's in that spot via an ODBC call (or whatever driver you're using). The database sends back the information that the server requests which indicates that this is a monster spawn point. The server knows that this type of spawn point has a 10% chance of spawning a monster. The server randomly determines that a monster has been encountered. The server requests the statistics for the monster from the database and builds the "monster" in memory for the player to encounter. The server sends a message to the client that says "draw an ogre on the screen in this location". The client already knows how to draw ogres and so draws it on the screen."
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1