![]() |
#1 |
Member
Join Date: Aug 2007
Posts: 90
![]() |
Are there any MOO coders out there?
I'm trying to port KaVir's protocol handler to MOO and welcome all the help and advice I can get.
|
![]() |
![]() |
![]() |
#2 |
New Member
Join Date: Aug 2009
Posts: 21
![]() |
Re: Are there any MOO coders out there?
Well, I've been tackling HellCore recently. What's up?
|
![]() |
![]() |
![]() |
#3 |
Member
Join Date: Aug 2011
Posts: 144
![]() |
Re: Are there any MOO coders out there?
I don't have a link for this, but in case you don't know about it: there is a manual for the server. Have you seen the last 3 chapters that talk about server internals and emergency modes and such?
I was going to do something with moo, but it only has timing resolution of one second and that was a bit of a deal breaker for me; as a result, though, I read the manual, fully, once upon a time. Those last sections explain a lot of stuff about low level stuff. Probably helpful for you to list the core you're using, btw. |
![]() |
![]() |
![]() |
#4 |
Senior Member
Join Date: Feb 2006
Location: Seattle
Posts: 361
![]() ![]() |
Re: Are there any MOO coders out there?
A good-sized group of MOO coders hang out on their google group.
|
![]() |
![]() |
![]() |
#5 |
Member
Join Date: Aug 2007
Posts: 90
![]() |
Re: Are there any MOO coders out there?
Yeah, I've been a member of the MOO group for a few years now. Great bunch of very helpful and very knowledgable folks. The server is being very actively developed. There is a branch being developed by Todd Sunsted that includes modern features like multiple inheritance, anonymous objects, JSON translation and a full-blown web server with Mustache templating.
Squeegy: KaVir's snippet needs the server to update all the MSDP variables. I'm trying to decide whether to update them all in a bunch in the main server loop or write a few builtins and handle it in MOO code. In the spirit of maintaining the MOO paradigm, I'd like to do the latter, something like: update_msdp_int(player OBJ, $msdpIndex INT, input INT), where $msdpIndex is a system property containing an integer corresponding to an entry in the MSDP variable table. The problem is, there may be a hundred MSDP variables that may be altered many different ways by a thousand different verbs, which means updating MSDP values in each one. Camlorn: I didn't know there was a separate MOO server manual. I will certainly look it up. Thanks for the info. I'm using a core we built from the ground up. It is very different from LambdaCore and all its descendants. -Will Last edited by Will : 12-12-2012 at 03:27 PM. |
![]() |
![]() |
![]() |
#6 |
Member
Join Date: Aug 2011
Posts: 144
![]() |
Re: Are there any MOO coders out there?
I can get you a link, if you can't find it, or haven't already...it's actually really good. Outlines the entire language, from start to finish. Then it goes on and tells you everything you ever wanted to know about how the server works and what it wants from you (not for c coders, from the perspective of moo core writers). The last sections are what you want: info on what happens when someone connects, how to set out of band prefixes and stuff, how to fix the game if you can't connect via telnet, what the game needs to see for the world's most minimal core, etc. Basically, it's what I wish lpc drivers had.
You can find it through this page: Along with a bunch of other documentation and servers and such. I should look at the moo environment again, and see if anyone's made the features I wanted yet...I thought it was pretty much not being updated anymore (I only really looked at stunt). A thought for you: the name variable is really misleading in this case. Those values can be whatever you want. Obviously, there's a lot of standards and such for KaVir's stuff, but nothing says you *have* to always bind to a variable. It should, from what I remember from my looking about, be completely possible to implement this in moocode. You are computing a string to send to the client, that is all, and you're already doing that. Note: the name I'm looking for may not be moocode...it's been a while. |
![]() |
![]() |
![]() |
#7 |
Member
Join Date: Aug 2007
Posts: 90
![]() |
Re: Are there any MOO coders out there?
("MOO code" is the term used a lot.)
I took a look at MCP and thought about writing a version of KaVir's Snippet in MOO code, but speed worried me. I may revisit the idea. |
![]() |
![]() |
![]() |
#8 |
Member
Join Date: Aug 2011
Posts: 144
![]() |
Re: Are there any MOO coders out there?
Are we talking about mud client compression protocol or mud server data protocol? If we're talking about mccp, that puts a different spin on it: I thought we were talking about msdp, and KaVir's UI plugin.
Compressing things in moocode will probably be too slow, yes, and should probably be put in the server anyway; using msdp shouldn't be, or should be implemented as helper functions of some sort. At least in my opinion. If you're using the stunt.io server, there is a version of the moo programming manual and reference on that site tailored for that server, which also includes the extensions he added, or at least some of them. I would be interested to find out how fast something like compression could run in moocode, especially on a decent server. Moocode is possibly at least as fast as java, at least before java finishes "warming up", and that might actually work. Maybe I'll get a boring few months sometime, and try this. If it helps with your benchmarking, discworld mudlib does most of the protocol handling (possibly all, can't remember if it has mccp or not) in lpc. |
![]() |
![]() |
![]() |
#9 |
Member
Join Date: Aug 2007
Posts: 90
![]() |
Re: Are there any MOO coders out there?
MCP is MUD Client Protocol. It hasn't been very widely adopted, except in the MOO world, and is implemented in very few clients. I've been looking at it to see how they handle OOB commands and negotiation. The MCP page is . JHCore has MCP implemented entirely in MOO code.
|
![]() |
![]() |