Author Topic: LDMud driver option  (Read 2601 times)

Offline quixadhal

  • BFF
  • ***
  • Posts: 642
    • View Profile
    • WileyMUD
LDMud driver option
« on: November 10, 2007, 10:09:43 am »
I have a quick question about one of the driver options in LDMud that isn't quite clear from the documentation.

Code: (./configure --help) [Select]
  --enable-share-variables            default=disabled
        Enable clone initialization from blueprint variable values
Code: (/doc/driver/invocation) [Select]
      --share-variables
      --init-variables
        Select how clones initialize their variables:
          - by sharing the current values of their blueprint
          - by initializing them afresh (using __INIT()).

From reading the configure help, it sounds like the option causes the driver to copy the values of any blueprint object's variables into the clone immediately after creation.  However, after reading the document, I'm not sure if __INIT() is still called (if present) when using the share method.

If __INIT() is still called, it would provide a nice way to minimize special-case init code, as you'd only have to touch things you wanted to be different than the blueprint.  If it is not called at all, then that's a different beastie.

And yes, I'm treading a little ways down the dark path of creating my own mudlib... mainly because LDMud seems to be the only LPC driver which has solid support for PostgreSQL, and I'm toying with the idea of a game which keeps pretty much everything but rooms and code in a SQL database for ease of statistics and balancing.