(12:15:34 PM) NightBlade: what you up to?
(12:15:43 PM) -=[kc]=-: planning mmo
(12:16:09 PM) NightBlade: yeah redisigning them is tough
(12:23:17 PM) NightBlade: are you still planning on 2D?
(12:24:34 PM) -=[kc]=-: no full 3D
(12:24:54 PM) NightBlade: well good luck man
(12:25:05 PM) NightBlade: your jumping in over your head
(12:25:42 PM) -=[kc]=-: you have to start somewhere
(12:25:54 PM) NightBlade: yeah, most people start with 2d
(12:26:15 PM) NightBlade: because theres a lot of things to keep track of in a game
(12:26:16 PM) -=[kc]=-: I did
(12:26:24 PM) NightBlade: i meant a full one
(12:26:28 PM) -=[kc]=-: it was working, just not going anywhere
(12:26:46 PM) NightBlade: and 3D adds a dimension of complexity to EVERYTHING you need to keep track of
(12:26:57 PM) NightBlade: one piece of advice
(12:27:01 PM) NightBlade: keep it organized
(12:27:02 PM) -=[kc]=-: I plan on writing the server completely
(12:27:09 PM) -=[kc]=-: then writing the client
(12:27:14 PM) NightBlade: servers are simple
(12:27:25 PM) NightBlade: and theres 1 problem doing it that way, well 2 really
(12:27:39 PM) -=[kc]=-: I plan on useing a CLI client to test it
(12:27:46 PM) NightBlade: 1 is the time it takes to start the server and connect each time you connect
(12:28:35 PM) NightBlade: 2 is changing the server every time
(12:29:27 PM) NightBlade: this time i JUST built my server
(12:29:39 PM) NightBlade: and my client can run on its own
(12:29:45 PM) NightBlade: i'd suggest that so you can test
(12:30:16 PM) -=[kc]=-: what do you mean you JUST Built your server
(12:30:33 PM) NightBlade: i'll have to give you a run thru of all i've done
(12:30:40 PM) NightBlade: i first built a VB 2D engine
(12:30:55 PM) NightBlade: that was like a super nintendo Final Fantasy
(12:31:09 PM) NightBlade: then i started building my 3D engine
(12:31:16 PM) NightBlade: i dabbled with C++ servers
(12:32:06 PM) NightBlade: and now 3.5 years later after i developed my terrain, day/night cycle, model loaders, monsters, weapons, stats
(12:32:13 PM) NightBlade: i finally made a server
(12:32:25 PM) NightBlade: so that with the framework of leveling and interacting
(12:32:35 PM) NightBlade: now the server can relay that to other players
(12:32:38 PM) NightBlade: what im saying
(12:32:59 PM) NightBlade: is that its pointless to make a server that can do virtually nothing
(12:33:16 PM) NightBlade: and then changing it every time you make a build to test it
(12:33:32 PM) -=[kc]=-: huh?
(12:33:36 PM) NightBlade: basically i setup my server to save the character files once i felt they had new information
(12:33:38 PM) -=[kc]=-: ther server wont do nothing
(12:33:42 PM) -=[kc]=-: it will do *alot*
(12:33:53 PM) NightBlade: well, your server is empty right now
(12:33:54 PM) -=[kc]=-: the client should do nothing ;
(12:34:21 PM) NightBlade: all the server does is check things (equate ==) and relay messages
(12:34:26 PM) NightBlade: conceptually its simple
(12:34:32 PM) NightBlade: it does hold all the power though
(12:34:36 PM) NightBlade: its the referee
(12:34:37 PM) -=[kc]=-: the server does all the game logic
(12:34:49 PM) NightBlade: but the client performs all the graphic calculations
(12:34:57 PM) NightBlade: and thats 100,000 times more work
(12:35:13 PM) -=[kc]=-: thats why I'm writing the server first
(12:35:20 PM) NightBlade: and if you need to re-code your server 100,000 times theres not much time to work on the client
(12:35:23 PM) -=[kc]=-: to define exactly what the client has to do
(12:35:44 PM) -=[kc]=-: why would you have to recode your server. The graphics should be completey seperate from the server. ;p
(12:35:46 PM) NightBlade: ok, you want a referee to make calls when the rules of the game aren't known yet
(12:35:55 PM) NightBlade: im trying to help you here
(12:35:58 PM) NightBlade: and you don't believe me
(12:36:08 PM) NightBlade: if you WANT to spend more time than you have to
(12:36:19 PM) NightBlade: and likely get frustrated and drop the project forever
(12:36:23 PM) NightBlade: im not going to stop you
(12:36:30 PM) -=[kc]=-: no, your just thingking about it wrong
(12:36:32 PM) -=[kc]=-: the server makes the rules
(12:36:36 PM) -=[kc]=-: the clients are just teh players
(12:36:45 PM) NightBlade: im trying to help you from falling into the same pits that delayed my game by years
(12:36:49 PM) NightBlade: ok man
(12:36:59 PM) NightBlade: work on it for 2 months and get back to me on that ;)
(12:37:28 PM) NightBlade: let me give you an example
(12:37:37 PM) NightBlade: say you have the server wait for a save message
(12:37:55 PM) NightBlade: the first version has hp,mp,level,xp
(12:38:09 PM) NightBlade: so you write a reader and writer on the server for the files
(12:38:20 PM) NightBlade: now you realize you need a value for max hp and mp
(12:38:23 PM) NightBlade: now you recode it
(12:38:30 PM) -=[kc]=-: heres where I stop you
(12:38:33 PM) -=[kc]=-: see...I"m planning
(12:38:35 PM) NightBlade: hp,hpmax,mp,mpmax,level,xp
(12:38:38 PM) -=[kc]=-: planning the whole bloody thing
(12:38:41 PM) -=[kc]=-: for exactly that reason
(12:38:43 PM) NightBlade: now it needs items
(12:38:46 PM) NightBlade: equipment
(12:38:49 PM) NightBlade: property
(12:38:52 PM) NightBlade: etc etc
(12:38:58 PM) -=[kc]=-: so why recode it all those times, thats just silly
(12:39:03 PM) NightBlade: he he he
(12:39:07 PM) -=[kc]=-: you should be making a huge document dfeining everything
(12:39:07 PM) NightBlade: wow
(12:39:13 PM) NightBlade: if you CAN do that
(12:39:18 PM) -=[kc]=-: code it to your spec
(12:39:20 PM) NightBlade: i'll be very impressed
(12:39:21 PM) -=[kc]=-: done
(12:39:23 PM) -=[kc]=-: now the client
(12:39:27 PM) -=[kc]=-: thats what I intend to do :p
(12:39:31 PM) NightBlade: *laughs out loud*
(12:39:38 PM) NightBlade: all i can say is good luck
(12:39:45 PM) -=[kc]=-: plus, adding some features to a file saver/loader is not extremely hard
(12:40:13 PM) NightBlade: yeah but changing your game framework, filesave and load functions, and message code is
(12:40:19 PM) NightBlade: thats 3 to 1
(12:40:28 PM) NightBlade: so for every 1 change you need to make 3
(12:40:36 PM) NightBlade: thats what im trying to say
(12:40:40 PM) NightBlade: im trying to save you time
(12:40:42 PM) -=[kc]=-: ...not if you plan
(12:40:49 PM) -=[kc]=-: I am saving tonnes of time by planning
(12:41:02 PM) NightBlade: ok, if your concept (not yours just in general) is PAINFULLY simple
(12:41:09 PM) NightBlade: and the scope of the project is small
(12:41:17 PM) NightBlade: then yes, you can do it in one pass
(12:41:30 PM) -=[kc]=-: I'm not talking vague planning
(12:41:42 PM) -=[kc]=-: I'm talking *exactly* how combat will work, exactly what stats and skills I will have
(12:41:46 PM) NightBlade: you seem to know everything... even what you don't know :)
(12:41:46 PM) -=[kc]=-: and yes, there is going to be changes
(12:42:36 PM) -=[kc]=-: but if I code the server properly, to be extensible, it will be painless to add a new skill or feature
(12:43:08 PM) NightBlade: for every situation your planning for, im telling you that you're going to run into a lot more things that you never thought would be an issue, or you will find that you simply cant do it how you thought, or in a much different way
(12:43:24 PM) NightBlade: what was the first suggestion i made?
(12:43:29 PM) NightBlade: make sure its ORGANIZED
(12:43:36 PM) NightBlade: cuz doing that 1000 times
(12:43:49 PM) NightBlade: and looking for all those variables is gonna be a fun easter egg hunt
(12:44:11 PM) -=[kc]=-: I dont plan on smattering this together like a hacked up script
(12:44:16 PM) -=[kc]=-: I know how to program....
(12:44:22 PM) NightBlade: do you know how many lines of code i have?
(12:44:29 PM) NightBlade: almost 10,0000
(12:44:31 PM) NightBlade: 10,000
(12:44:42 PM) NightBlade: thats like looking for something in a book
(12:44:44 PM) -=[kc]=-: thats irrelevant, it depends entirely on the language
(12:44:51 PM) -=[kc]=-: no, not if you *document*
(12:44:52 PM) -=[kc]=-: doxygen
(12:45:01 PM) -=[kc]=-: now you have a searchable HTML reference to everything
(12:45:18 PM) NightBlade: and if you study language you'll know that for every 1 thing it tries to make simple it makes 1 thing much more difficult