The Daily Click ::. Forums ::. Klik Coding Help ::. MMORPG. Help. (
 

Post Reply  Post Oekaki 
 

Posted By Message

Tongs



Registered
  20/07/2003
Points
  249
23rd February, 2004 at 23:21:09 -

Hidey ho. I'm fairly new to using MOO, although I'm pretty familiar with all the basics. I'm currently working on an MMORPG using MOOgame in MMF. I can get most of the basic stuff working, except for one thing- the MMORPG I am developing uses a multiple body part system- i.e. a different object for arms, head, legs, etc. to allow for an intricate character creation system. The way it is set up now, when a character is created, each body part object is saved to an INI and assigned a number- for example, if the player selected blue hair for the character- it would save it to the INI as 'PlayerHead = 4', 4 being the number for the blue hair object; when the character is loaded it loads each specific body part and its assigned number and creates them at a set location. The problem with this is that I am having to assign each body part to a number manually for the object loading code (i.e. 'if = 1 create head 1 at x,y...' etc)- making the amount of code necessary for all the different body parts and recolorings to be a rather trying task. (This also includes visible equipment such as swords/shields/armor etc... and I plan to make lots of different kinds, so you can imagine how long it would take to code everything individually)

Is there an easier way to do separate body parts and saving/loading them for each character? I'm not very good with this stuff... any help would be greatly appreciated.

Also; how is updating handled for MMORPG's? Like if a new version of the game is available, the player will not be able to play unless they have the latest version.

 
n/a

Tongs



Registered
  20/07/2003
Points
  249
24th February, 2004 at 18:26:44 -

Seriously, I need some help here guys...

 
n/a

Pkeod

Oontz Oontz Oontz

Registered
  19/11/2002
Points
  93

VIP Member
24th February, 2004 at 23:25:20 -

It is good to get most of the beta testing done until you release your final product (not really final but when you release it to the public) in the begining it is a good Idea to make all your beta testers download a small update if avaible each time there is a new one (have a page just for updates; keep a history - and multiple versions like a-b or a-b or b-c)

Though when the game is done and most of the bugs are gone (and you release) you shouldnt have to have people get updates :] though if you do find something critical and need to update it, then it would be a good idea to force players to dowload a simple update (though keeping a server up for the old version wouldnt hurt for a little bit, but eventually close that one or move it to your new game)

As for the charactors, when I was working on a mmorpg with AAndy (though we didn't get much really done...) I was trying to do this too. Though I finally decided it would make the game much faster, as well as the codeing much simpler if you simply make as few as 3 classes to 5 and then have the color options different. Think diable 1 you dont want the charactor pic to change ever so slightly if you have a dagger instead of a throwing knife... [would be nice to see some screenshots to see what your trying to do] Just keep it simple - people would rather play something with a little spice yes, but to make a million choces [though can be nice] is not really needed.

[just so you realize, keep the charactor pics all as one sprite. If you must take off the arms and have them sepret objects for diferent weapons.. but still you dont really need that]

 
Faerie Solitaire - Get it now:

http://www.create-games.com/download.asp?id=7792

Nicholas S Wilson



Registered
  23/02/2004
Points
  20
24th February, 2004 at 23:31:27 -

I come across the same problem all the time; in my case (a MegaMan game where replace color is used a lot) I'm forcing the code and doing it manually... 81 events =P

In your case; I think you would be wise to tell us a little more about what you have so far, or if you are really far along, how your game works.

For instance if you have even one invisible 'hit-detector' inside a player that is giving you these X,Y values to play with; your code shouldn't be -that- horrendous doing it the standard manual method, you would do simply what you said; having one creation event for each body part (none of that exponential, 10000s of combinations garbage).

So...

- Is there a way to streamline something like what you're doing? I don't know, if there is I want to know so badly.

- Can you make it pretty painless on yourself in the standard method? Yes. If you don't have a hit detector like I was talking about, you certainly would benefit from having one. Initially lets say you had 200 heads, 30 bodies, 12 arms or something similar to work with. You'd have to write 252 events sure, but the code would be reliable (albeit monotonous) and when you wanted to update your game the workload would seem small in comparison. So don't fret -if- indeed a better method does not exist.


Now about updating your game. You can simply have your server program check a user for a 'version number' when they log on. If it doesn't match; it rejects the connection and pops up a link for them to get the update, which of course you could do simply enough in PatchMaker.


*prepares to be stoned for not being helpful*


 
whoops

Tiri



Registered
  16/01/2004
Points
  78
25th February, 2004 at 19:13:52 -

you shouldnt use multiple body parts man that would give you hella lag.....

 
n/a

Pkeod

Oontz Oontz Oontz

Registered
  19/11/2002
Points
  93

VIP Member
25th February, 2004 at 20:00:47 -

Not really actually, if you do the movement gridbased or x,y based then lag is only a problem if your computer is slow then that be your fault...

 
Faerie Solitaire - Get it now:

http://www.create-games.com/download.asp?id=7792

Kramy



Registered
  08/06/2002
Points
  1888
26th February, 2004 at 17:19:14 -

Make the character an invisible square. For your own character, have all hair/body parts created.

Load Hair from ini
Load Body from ini

Hair <> 0 destroy hair 0
Hair <> 1 destroy hair 1

etc. Same for all other body parts. Then deactivate it.

Now, a person connects to your server, and enters the level. Assuming you can get one object to linked to an ID...create a new "player" and make it invisible - Set it's flag(connection ID) ON

Your Player then sends his combination as a parsed string
Hair.Arms.head.body.feet.weapon etc
1.5.3.8.2.9

The other players get this combo, and seperate it using the stringparser 2 object. The parts are created, and the flag(connection ID) it set to ON for each part.

Now, if Each Part's flag matches invis player's flag, position x to x of invisplayer, and y to y of invisplayer.

Then all you have to do us update the position of the the invisplayer object, and the parts will follow.

Ofcourse if you want direction, health, etc. you'd have to parse that in another string aswell, then set each part matching flags to the same direction/health aswell...

Hope this helps.

Image Edited by the Author.

 
Kramy

Tongs



Registered
  20/07/2003
Points
  249
27th February, 2004 at 19:12:56 -

Thanks everyone for your help

I think I've got it figured out now. =D

 
n/a
   

Post Reply



 



Advertisement

Worth A Click