I am currently creating a 3D MMORPG. However I am caught on a few issues.
The client should be directx, I really have not decided if I want to try and tackle my own 3d engine or not yet, but the question is if I am using DirectX, does that mean I should use directplay? or does it matter at all on any level? The option I would prefer to use is winsock, as it will allow me to use the socket class I built for the server.
I am currently using STL containers for everything that needs them, is this going to cause me heavy overhead in the end? will it be that much worse than if I just used c types and handled memory management for them? Obviously I would prefer to stick with the STL containers but I also dont want to have to have 1gb of memory per-client.
Goes along with the above some too, My current thought has been to just keep active data in memory, (IE. NPC is not loaded from DB until someone is in visible range, his weapon data is not loaded until he pulls it out, and when he puts it away it is dropped from memory) Now I am sure this is going to be too many reads and lag things up bad. I guess what I need here is an idea to make sure the entire game is not loaded to memory all at once(also so DB changes don't mean shutting down the game), while not lagging it to death with crazy DB querys.
The only way I can see around this is keep datasets together(IE. Load the NPC and all he knows and has), then have commands that would allow me to compare and update server caches, then have the clients that have said object loaded to update.
Pitfalls? Better Solutions?
Also it is notable for me to mention that my current thought is to have "client" objects, that are basically a copy of the important things that the client has going, and this client object on the server updates its real Client.
If that makes any sense at all. BTW This client object houses the character object aswell, so all data the client has is passed from the server. This solution to me seems logical but may not be the best solution.
I have two ideas for an MMORPG, I have been building the basic blocks of this without touching the actual design because I honestly can not make up my mind.
I will explain both of them briefly and I guess all I am asking for is maybe your opinion on which one you would prefer or maybe what one you think would be more interesting to see come to life?
#1 - It is a mix of semi-fantasy, ancient myth, ancient and feudal asian history and myth, with some real current day goverments and economies.
Post Cross Bow, pre-gun. I want to capture some of the tones of the death of the samurai. If I had to choose some current influeces that might help describe the feel of it all a few animes and movies should give you a basic idea of the feel I am going for. InuYasha, Naratu, Bleach. Predator, Alien vs Predator, Mad Max. I also want to take all the good ideas from the promises that Dark and Light made, and actually use them the way they should be.
I want it to be nearly the opposite of what WoW is, I want it to be about the journey and not all about what happens after leveling... Infact there is no leveling as I see it as a tool to inspire grind. It will be time dedication with out feeling like you grinded away the afternoon.
Hopefully that gives you some idea of what I want. If not, Think about Elder Scrolls and how alot of the game is more about the journey than the leveling, You pick up the skills you need along the journey.
The death system is the real jewel, I won't go deep into it but a good way to describe it would be "when you die, you must ask yourself if you accomplished everything and if so what will you become once you have passed on.
#2 - The temporal opposite of #1. A futuristic and real feeling space adventure.
I want it to have that sorta un-conquered feel of the the original 3 star wars.
Not all about the ship, but about freedom.
You start with nothing and you are nothing, you build your way to being a single ship or a capital ship filled with your (Corporation, but I am still toying with how to word guilds, and corp sorta makes it sound EVElike) ships.
Alot of this game will be about getting started, and will be much more structured in its "Profession" system, #1 does not have dedicated professions one is free to do as one wants though mastery could take several lifetimes, This game is more about full dedication to a path Pilot, Engineer, etc.
Several "factions" to choose from or ;) my favorite idea a pirate.
Think Star Trek, Star Wars, etc. mix it with x3 with out limits and some Ideas from Star Trek Online. Big ships require crews. Even small ships are going to work better with people to look after navigation and engineering.
Alot of the ideas I have down on paper on this one have to do with small ship design. Tweaking it and adapting technolgy to it. A system that you can design the ship and the hardware or pimp out premade ships and buy or make adapters for other technolgy. 1000s of combinations of ship design with millions of combinations of hardware and software in them.
I am sure these are both rambling accounts of completly non-understandable images, but hopefully you can grasp some of the images of them. Anyways, I am sure you can tell why I ask for opinions on which, because they are obviously very very different animals when it comes to building them.
Anyways thanks in-advanced for any help anyone is willing to give in regauds to my questions and my wish for opinions.
Please do not ask me to explain more than I have, as it should be suffiecent for atleast an opinion to the questions.
I do not mind answering questions in regaurds to my ideas especially if it helps you form an opinion to which one you like more.
On the second design idea I listed alot of combinations possible for ship design, I thought I would clarify that it is only possibly by assembling different pieces onto a ship base. Sorta like asembling several sub asemblies onto an assembly the alter its appearance.
[Edited by - Neuntoter on May 30, 2007 8:37:43 PM]