torch Zylara's Smaug 1.4 Bug-Fix List Update torch


Updated May 28, 1999

SMAUG = Simulated Medieval Adventure multi-User Game

MUD = Multi User Dungeon

Last part of the first update to the bug-fix list for smaug 1.4


****************UPDATE TO 1.4 BUG/FIX LIST CONT.****************
First update to the bug/fix list continued  May 27th 99:

-------------SOME CSET CONFIGURATIONS NOT SAVING
From: Cronel            pejro@sion.com
 I just remembered this one I found some time ago when I 
tried to lower the level to get objects without take flag.
Certain fields of the system data are never actualy saved 
to sysdata.dat, resulting in that they're not persistent 
across reboots even if they're modifiable via cset...
 I looked at the whole sysdata and to save_sysdata/load_sysdata 
and found that the only two that seemed like they should be 
saved and arent being saved are "level_getobjnotake" and 
"imc_mail_level". I also found that "imc_mail_level" cannot 
be cset, and that there's a "max_sn" that is never being used 
as far as I can tell.
 Hope it makes it into 1.4a               --cronel

------------CON_GET_NEW_CLASS or WARRIOR DEFAULT FIX
From: Tandaur     tandaur@ix.netcom.com
Ok, i recently came across a bug in the class selection during
character creation.  The way stock is, if you enter an invalid
class name ie. L, it will set your class to 3 (defaults to warrior).
The way i fixed it is basically to do the same check for invalid
races in CON_GET_NEW_RACE.    Here is the little fix:

in comm.c   in the CON_GET_NEW_CLASS case, in nanny.
after :
for ( iClass = 0; iClass < MAX_CLASS; iClass++ )
 {
  if ( toupper(arg[0]) == toupper(class_table[iClass]->who_name[0])
  &&   !str_prefix( arg, class_table[iClass]->who_name ) )
  {
   ch->class =  iClass;
   if ( ch->class == 8 ) /* stop paladins from getting messed by */
   ch->alignment = +500; /* having too low an align to start with */
   break;
  }
 }
add :
/* patryn / tandaur - ok lets fix this wrong class thing */
if ( iClass == MAX_CLASS || class_table[iClass]->who_name[0] =='\0' )
  {
   write_to_buffer( d,
       "That's not a class. \n\rWhat IS your class? ", 0 );
   return;
  }

NOTE: you might not have that paladin align fix in your code,
so don't freak out if it isn't in there.


Other small problems -- pre-auth and missing help files.

---------------------MORE PALADIN STUFF
-------------SPELL SOLOMONIC INVOCATION ALWAYS FAILS
From: G.S.Wilson            gswilson@home.net
I'm having trouble with the spell 'Solomonic Invocation'. Everytime
I try and cast it, it says 'I failed'. I'm the right lvl, my skill
is 95% and i'm a good (1000) human Paladin.
-
From: me Zylara
If you do a  slookup 'solomonic invocation' you can see that the
value, which is the vnum of the object create by this spell, vnum
65 does not exist.
Flags: 16384  Guild: -1  Value: 65  Info: 520  Code: spell_smaug
                         ^^^^^^^^vnum 65
So you just need to create object vnum 65 in limbo.are and use the
slookup see what some of the setting need to be...like it is a light
that is a silver cross. A Paladins holy symbol needed for casting
some of the spells a Paladin gets.
Here is how mine looks...prolly not like RoDs but its only an example.
ostat 65
Name: paladin holy silver cross symbol
Vnum: 65  Type: light  Count:  1  Gcount: 1
Serial#: 1309  TopIdxSerial#: 1309  TopSerial#: 1309
Short description: a gleaming silver cross
Long description : A holy cross lies here, gleaming brightly.
Wear flags : take hold
Extra flags: glow magic bless metal
Magic flags: none
Number: 1/1   Weight: 2/2   Layers: 0   Wear_loc: -1
Cost: 0  Rent: 0  Timer: 0  Level: 8
In room: 0  In object: (none)  Carried by: Zylara
Index Values : 0 0 -1 0 0 0.
Object Values: 0 0 -1 0 0 0.
Affects wisdom by 2.
Affects affected_by by 4.          --------(detect evil)
Affects intelligence by 2.
You may want to add a program that only lets Paladins wear it.

---------------------PALADIN NULL TITLES
From: DruidDarky@aol.com
Paladins don't have titles past (forgets what level) but after
I think 40 or 45, they start using the Immortal Titles. Open
your class file for Paladins, and think of some titles to insert;) 
Kilth
-
From: me (Zylara)
All I did on this was copy and paste the next to last few titles
out of Cleric and Druid, since they are both the same and pasted
them into the right place in the Paladins class file found here:
../dist/classes/paladin.class  then at the end of that same file
I deleted the last few title that where set to NULL. 6 titles.
Remove these:        Add these before Imm titles start:
Title                Title
(null)~              Avatar of an Immortal~
(null)~              Avatar of an Immortal~
Title                Title
(null)~              Avatar of a Deity~
(null)~              Avatar of a Deity~
Title                Title
(null)~              Avatar of a Supremity~
(null)~              Avatar of a Supremity~
Title                Title
(null)~              Avatar of an Implementor~
(null)~              Avatar of an Implementor~
Title                Title
(null)~              Master of all Divinity~
(null)~              Mistress of all Divinity~
Title                Title
(null)~              Avatar~
(null)~              Avatar~

-----------NEPHANDI RESTRICTION/problem if you add more classes
From: "Benjamin M. Walsh"   s0206237@hawkmail.monmouth.edu
Don't know if this was reported yet or not, but in 1.4 you still
have the alignment check for the nephandi class.  This means that
when someone creates new classes in addition to the old ones
their 10th class will have the following restriction:  
In update.c comment out as follows:
/* Nephandi alignment restrictions -h  */
/*  if(ch->class == 9)
    {
     if(ch->alignment>-250) 
      {
       set_char_color( AT_BLOOD, ch );
       send_to_char( "Damn you heathen! Go forth and do evil or
                            suffer the consequences!\n\r", ch );
       worsen_mental_state( ch, 35 );
       return;
      }
    }   */
The above statement should be removed/commented out unless it
fits with whatever new class a person makes. Also, there is a
restriction on paladin alignment that should be removed by anyone
who is creating entirely new classes.               -Zanthus

-------------MAGIC MISSILE AND FEATHER IN PRE-AUTH
From: Jaroslav KUBU         kubuj@mvcr.cz
My players are not able to use the feather, found in pre-auth.
When they zap it on target in battlegrounds, they got answer :
You aim a purple feather at a carrion crawler.
Aim in what direction?
--
From: gfinello@mail.karmanet.it
  The 'purple feather' is a normal spectral gate's object.  It's
a staff with some charges of 'magic missile', an attack spell.
Unfortunately in the stock 1.4 that spell has been released with a
wrong target type.  If you type slookup 'magic missile' you will
find it has a target of type 'ignore'.  Also on RoD it was meant
to have a 'ranged attack' capability (note the range field in the
slookup response), but this caused some problems and it was disabled.
To correct the problem do an slookup 'magic missile' to obtain the
'sn' number of the spell (should be 107), then type:
            sset (sn) target offensive
            sset (sn) range 0
            sset save skill table
  Just changing the target should make it work, but it's better to
set the range to zero too.

-------PIXIES NOT BEING SEEN BECAUSE OF FLYS NOT BEING FLIES
From: "Ferret"   smaug@roadpizza.com
Is there a bug about Pixies, specifically Pixie Mages, not
getting keys when they are done with the validate section?
If there is, how do I fix it?  Thank you. .   - Claude
---
From: me Zylara
In 1.02a flys was spelt wrong and it was corrected in 1.4 to
read flies...so you need to find all of the wrong spellings
in the programs that where already in the stock areas. I only
found these listed below in the newgate.are file, out of all
the stock areas:

aassign none
aassign newgate.are

in room vnum 120
mset 106 flags prototype
mpedit 106 list
mpedit 106 edit 4 act p flies north.
/s
mset 106 flags prototype

in room vnum 119
mset 105 flags prototype
mpedit 105 edit 2 act p flies in from the west.
/s
mset 105 flags prototype

in room vnum 100
mset 101 flags prototype
mpedit 101 edit 3 act p flies in from below.
/s
mset 101 flags prototype

in room vnum 101
mset 100 flags prototype
mpedit 100 edit 3 act p flies in from above.
/s
mpedit 100 edit 4 act p flies in from the north.
/s
mset 100 flags prototype

aassign none
foldarea newgate.are

------------MISSING HELP FILES
These help files are missing in 1.4, so you might want to add
them into your help.are file. Use hedit and hset.

1.) FOR
Syntax:  for (argument) (command)
Syntax:  for (argument) (command) (target)

For allows an immortal to perform a command at or even on a large
number of targets.  The arguments include:  all, mobs, gods.

Example:  for gods gl, you will 'glance' in the room of every god
who is online (include link-dead)

You can also perform an action on the argument target.
Example:  for mobs poke #, you will perform the 'poke' social on
every mob in the game.

'For' does not override private flags.

2.) BOARDS
Syntax:  boards

This command displays statistics on all boards in the game.  Example:

imm.brd  Vnum: 1200 Read: 50 Post: 51 Rmv: 55 Max: 50 Posts: 1 Type: 0

The first column lists the board's filename (imm.brd)
Vnum   - object vnum to which the board is attached (object vnum must
         be present to read the board, allowing a board to be placed in
         one or many places by simply placing that object where needed)
Read   - minimum level required to read that board
Post   - minumum level required to post to that board
Remove - minumum level required to remove notes not addressed to 'All'
Max    - maximum number of posts the board is set to hold
Posts  - the current number of posts on the board
Type   - 0 = note board         1 = mail board


See Also:  BSTAT  BSET  MAKEBOARD

3.) BSET
Syntax:   bset (board filename) (command) (argument)
Example:  bset immortal.brd vnum 1200

BSET is used to set fields governing an individual board's operation.

Filename - filename to store the board's information (set first)
Vnum     - object vnum assigned to the board (see 'help boards')
Read     - the mininum level required to read the board
Post     - the minimum level required to post to the board
Remove   - the minumum level required to remove notes from the board
           NOTE: notes addressed to 'all' can be removed by anyone
Maxpost  - maximum number of posts the board can hold
Filename - filename to store the board's information
Type     - 0 = note board         1 = mail board

Board groups:  (example:  bset druid.brd read_group guild of druids)
read_group    - group that may read that board, regardless of level
post_group    - group that may post to that board, regardless of level
extra_readers - char. who may read the board regardless of their level
extra_removers- char. who may remove notes from this board regardless
                  of their level or membership in a reader_group

See Also: BOARDS  MAKEBOARD  BSET

4.) BSTAT
Syntax:  bstat (board filename)

BSTAT is used to display the fields of an individual board.

(see 'help bset' for an explanation of each field)

See Also:  BSET  BOARDS  MAKEBOARD

5.) MAKEBOARD
Syntax:  makeboard (board filename)
Example: makeboard newboard.brd

Used to create a board file, which can then be defined using 'bset'.

See Also:  BSET  BSTAT  BOARDS


***************END OF 1.4 FIRST BUG/FIX UPDATE

Back to the first part of this update

Back to my Homepage


Feel free to email me with any comments, questions, corrections, or additions at...NEW EMAIL