I'm currently developing a MUD using Smaug 1.4a but it's becoming quite annoying trying to fix so many bugs. I've considered switching to SmaugFUSS 1.9 since it's supposed to be less buggy but I've encountered a disturbing problem with the tables.c file. For most of the snippets I want to install, entries have to be added to two sections in tables.c in order for them to work properly. These sections are mysteriously absent (or rather, referenced somewhere else, I'm not sure where) in SmaugFUSS. The sections in question are SPELL_FUN and DO_FUN in tables.c. So where do I place the if/return statements that most snippets require?
SmaugFUSS uses DLSYM (i think that's the right acronym) and gets rid of the need to have the pair of tables in tables.c. In FUSS all you have to do is add the DECLARE_DO_FUN/DECLARE_SPELL_FUN to mud.h and it takes care of the rest.
Just as a footnote, you don't even necessarily need the DECLARE_DO_FUN stuff either. It only gets messy if the do_ command needs to be referenced in files other than where it's stored - or earlier in the same file.
I've encountered a problem with resets in SmaugFUSS. Apparently, I can't add resets using the usual build commands. Looking at the code, the function do_reset appears to be missing the appropriate code to add, edit or insert resets. Is this by design or an oversight?
That was by design with the new system. The old do_reset code was worthless with the new system and got scrapped. There is some stuff available through the do_reset code that replaced it that wasn't easily handled by an instaroom command. Was there some specific functionality you were looking for?
Bah, darn you Remcon! You replied while I was typing!