[MUD-Dev] Scripting languages

Mark 'Kamikaze' Hughes kamikaze at kuoi.asui.uidaho.edu
Thu Jun 19 14:28:32 CEST 2003


Sun, May 25, 2003 at 05:56:19PM -0500 in
<5.1.1.6.0.20030525175453.00b135f0 at pop3.arkansas.net>, Jason Murdick
<osiris at arkansas.net> spake:

> Hi, was wondering if anyone had any experience with implementing
> scripting languages into a mud. Specifically looking for anyone
> with experience with Lua. Been working on a custom mud codebase
> and we're looking to include Lua and use tolua (to bind c/c++
> objects). So far it looks promising, but we haven't gotten very
> far into the project.  Any suggestions, tips, concerns, etc would
> be appreciated.

While it's working the other way around, using a scripting language
for the entire MUD, the very badly-named POO (Pythonic MOO) is a
nice engine, and fairly small--an earlier version I have somewhere
around here is even smaller, and still provided all the necessary
MUD services.

The earlier version was impressively fast; even with bots hammering
it with actions it never pegged the system load or bogged down for
an interactive user.  I've learned the hard way that for writing
videogames, pure Python is not a suitable choice, but for networking
tools, it's fine.  I'm not sure what the memory load would be like,
but Python's classes and data structures are fairly cheap, I'd guess
5-10% more memory than C++ classes for a text-heavy system like a
MUD.

Lua's not as pleasant to code in as Python, but it's about as fast.
If you're doing most of the logic in the scripting language, there's
no pressing reason to code the objects in a lower-level language,
you're just making more work for yourself and gaining little or no
efficiency.

Doing something like POO with Lua, PHP, Bash, or some other
scripting language is left as an exercise for the reader.

--
 <a href="http://kuoi.asui.uidaho.edu/~kamikaze/">  Mark Hughes </a>

_______________________________________________
MUD-Dev mailing list
MUD-Dev at kanga.nu
https://www.kanga.nu/lists/listinfo/mud-dev




More information about the mud-dev-archive mailing list