Hi everyone! My name is Herwin, and I'm new to the community. I'm not very sure about which forum I should post this topic in, so the "For Beginner" it is.
I'm sorry if the title is too annoying to see. I understand that an MMORPG project is a dangerous topic, but it's not a real MMORPG project, seriously. Just like the title says, it's just a simple MORPG (without 'massive') project. Recently my friends and I decided to make a project to practice. We're looking for some experiences in working as a team, and because we have various interests and skills, we decided to make a small MORPG project. We already have the network guy, programmer, sprite artist, and we can just use a humble *bip* *bub* *bub* *bab* which is generated randomly for the music since none of us is a musician. I'm one of the programmers, and I got the server-side part.
We're aware that an MMORPG is kinda insane to make, especially for a group of students. We're just planning to make a 2D RPG with three maps, simple hunting and leveling system, chat, database, and can be played via Internet with a server that only runs when we're going to play the game. We took MORPG because working on one may give some interesting experiences. For me, it's the network programming. I'm pretty new at it.
For an unknown reason they voted me to be the project leader, so I need to make the planning and assign the jobs for the team. The thing is, I've never done this before. Here's the summary of my current plan :
- I code the server. It will handle the math (counting damages, etc), sharing information about world objects to the players, handle the connection between players, do things with the database, and other server thingy like encryption. I will write the code for accessing the database, count damages, etc.
- While I'm coding the server, the other programmers work with the client. They will handle physics, player input, loading sprites, sending player input to the server, receiving information from the server. The client only acts as an input device, while the serious game process is done in the server.
- The sprite artist works with the the client-side programmers and make sure that the client can load sprites perfectly.
- After the client software is finished, we connect the server and the client.
That's just the summary of my to-do list. Of course there's more, but that's my whole plan in a nutshell. Do you think I miss something? I have no exact idea if my steps is correct. If you have some suggestions or tips for me, please share it.
By the way, I'm planning to have a login server which handles user login and gives a kind of 'ticket' after the player login successfuly. Without this 'ticket' the player won't be permitted to access the world server (announces the world objects) and the server which handles counting like damage, etc (I don't even know what is this called). Is it correct?
Also, what's the best way to handle NPC dialogue? At the moment, I store it in the database.
A bonus question. Do you think 42 tables in the database for such small game is too many? I was just trying to do that normalization thingy, but I have no idea if I either overdone it or underdone it.
I use Python and MySQL. Oh, is it necessary to write the client and server with the same language?
Thank you, and nice to meet you all guys.
Edited by Sky Warden, 11 April 2013 - 08:09 AM.