From: Han Dao Date: 2008-01-24T05:40:44+09:00 Subject: Re: Learning to build a MUD ------=_Part_30321_15540727.1201120849134 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline I heard MUD is second to MMORPG in term of project scale difficulty. On Jan 23, 2008 3:35 PM, Kyle Schmitt wrote: > Way way back when, after my first CS class (101, C++ programming), I > thought I'd make a mud. I literally spent months (of free time, not > solid, I was in school after all ;) creating underlying structures, > and a few bizzare little maps. > 1) Writing a MUD is harder than writing a web app (even a really > complicated one), harder then writing a _good_ http server, possibly > harder then writing a simple database. > 2) See #1, it really ain't easy. > > 3) Multi-threadding won't get you much other than overhead. Use a > ready-made library for handling events, or slice up time and handle > the action in a frame by frame way: Make an event loop, check for > input, process all the events, etc. The clients that are connected > will happily wait (and not even notice), that your program was waiting > on processing the input. > > And good luck :) it's a fun project! > --Kyle > > On Jan 22, 2008 8:36 PM, Bill Kelly wrote: > > > > From: "Sean Dolbec" > > > > > > > > Hello i was recently introduced to ruby out of desire to make a mud > and > > > to teach others how to while i learn. > > > http://helbuns.dvrdns.org/MUD/MUD.html i have understood enough to > make > > > areas but i do not understand multithreading to make good combat. im > > > looking for a good mud guide, whys' and pragmatic where aliitle rough > > > since i only want a mud. anyway anyone who could help i would really > > > appreciate it, please email me at helbuns@gmail.com. > > > > Keep in mind, that if you are writing the MUD from scratch, even though > > you "only want a mud" they are complex enough that you'll have to learn > > a lot about programming in general before you're through. In other > words, > > what I mean is, the statement, "whys' and pragmatic where aliitle rough > > since i only want a mud" doesn't really make sense in the long run. > > > > Anyway, I'd recommend looking into EventMachine[1] to handle the network > > code. You can avoid multithreading that way (and likely get a > performance > > boost as a bonus.) > > > > [1] https://rubyforge.org/projects/eventmachine/ > > > > > > Regards, > > > > Bill > > > > > > > > > > ------=_Part_30321_15540727.1201120849134--