(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