Login
User Name:

Password:



Register
Forgot your password?
Vote for Us!
Bug in disarm( )
Nov 12, 2017, 6:54 pm
By GatewaySysop
Bug in will_fall( )
Oct 23, 2017, 1:35 am
By GatewaySysop
Bug in do_zap( ), do_brandish( )
Oct 18, 2017, 1:52 pm
By GatewaySysop
Bug in get_exp_worth( )
Oct 10, 2017, 1:26 am
By GatewaySysop
Bug in do_drag( )
Oct 8, 2017, 12:40 am
By GatewaySysop
LOP Heroes Edition
Author: Vladaar
Submitted by: Vladaar
Heroes sound extras
Author: Vladaar
Submitted by: Vladaar
6Dragons 4.3
Author: Vladaar
Submitted by: Vladaar
Memwatch
Author: Johan Lindh
Submitted by: Vladaar
Beastmaster 6D sound files
Author: Vladaar
Submitted by: Vladaar
Users Online
CommonCrawl, Majestic-12

Members: 0
Guests: 8
Stats
Files
Topics
Posts
Members
Newest Member
476
3,704
19,231
608
LAntorcha
Today's Birthdays
There are no member birthdays today.
Related Links
» SmaugMuds.org » Codebases » AFKMud Support & Development » My overall problems, overall
Forum Rules | Mark all | Recent Posts

My overall problems, overall
< Newer Topic :: Older Topic >

Pages:<< prev 1, 2 next >>
Post is unread #1 Mar 28, 2008, 1:54 pm   Last edited Mar 28, 2008, 2:13 pm by Sanus Compleo
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
GroupMembers
Posts153
JoinedMar 25, 2008

Trip doesn't work, all I got to see out of the server was something about stackdump, right before it shut down.
Setting affects using oset obj affect affecttype value doesn't to jack squat, although enchant works like a charm.
For some reason the server just decides to randomly shut down, I get errors in imc among other things, but when I uncommented the march line in the makefile, it seemed to get alot less errors than usual.
Most of the errors say that the line is not a string literal, or whatever, does this sound familiar because that is just about all of the errors I get except something involving a __p file or something that would be used when it is used. Got any ideas? I've only been up for about a day or so, and I've already got people who are yelling at me for not having the server running.

EDIT: I tried out 1.7, and I only got one error, but I still can't do any of the stuff up there. So yeah...
       
Post is unread #2 Mar 28, 2008, 7:23 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,857
JoinedJul 26, 2005

Well for the trip problem
type
slookup trip (find the sn for it)
sset <sn> dice ((l/2)+(U*3))
sset save skill table

The problem is that with it being (l/2)+(U*3) and not being properly handled by rd_parse for stuff like that it will cause it to do a / 0 which then crashes the mud. Adding the extra ( ) around the whole dice will stop the crashing and make it work correctly although I suggest fixing the rd_parse to stop it from causing crashes there.
       
Post is unread #3 Mar 28, 2008, 7:58 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,857
JoinedJul 26, 2005


Setting affects using oset obj affect affecttype value doesn't to jack squat, although enchant works like a charm.

Try
oset <vnum> affect affected sanctuary

Seems to work like it should you just have to use the right <affect> <value>


Most of the errors say that the line is not a string literal, or whatever, does this sound familiar because that is just about all of the errors I get except something involving a __p file or something that would be used when it is used. Got any ideas? I've only been up for about a day or so, and I've already got people who are yelling at me for not having the server running.

Well that problem is easly stopped
in the Makefile
change
W_FLAGS = -Wall -Wformat=2 -Wshadow -Wpointer-arith -Wcast-align -Wcast-qual -Wredundant-decls -Wconversion

to this
W_FLAGS = -Wall -Wshadow -Wpointer-arith -Wcast-align -Wcast-qual -Wredundant-decls -Wconversion

The -Wformat=2 is the one having it give the warnings like this
imc.cpp:1210: warning: format not a string literal, argument types not checked

Not sure about the other ones right off on how to take care of that, maybe someone else has some clues on them
       
Post is unread #4 Mar 29, 2008, 1:21 am   Last edited Mar 29, 2008, 1:31 am by Sanus Compleo
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
GroupMembers
Posts153
JoinedMar 25, 2008

Cool, that got rid of alot of errors, but there was another type of error I got ALOT that went : Warning: 'blah blah' might be used in the unitialization in this function. Any ideas?

EDIT: What I meant by the oset error, was when I try to apply things other than affeced tags, such as hitroll, strength and all that jazz.

EDIT2: This isn't really a bug, but I'm rather confused as to how runes work, got any documentation?
       
Post is unread #5 Mar 29, 2008, 7:55 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,857
JoinedJul 26, 2005

The only other warning I know how to get rid of is
web.cpp:196: warning: unused variable 'invis_str'

open web.cpp and find
   char rank[200], clan_name[MIL], buf[MSL], outbuf[MSL], webbuf[64000], stats[MIL], invis_str[50];

change it to this
   char rank[200], clan_name[MIL], buf[MSL], outbuf[MSL], webbuf[64000], stats[MIL];


Now to work on fixing up this object affect stuff
change what you have for the affect stuff to this
   /*
    * Crash fix and name support by Shaddai 
    */
   if( !str_cmp( arg2, "affect" ) )
   {
      affect_data *paf;
      bitset < MAX_RIS_FLAG > risabit;
      short loc;
      bool found = false;

      risabit.reset(  );

      argument = one_argument( argument, arg2 );
      if( !arg2 || arg2[0] == '\0' || !argument || argument[0] == '\0' )
      {
         ch->print( "Usage: oset <object> affect <field> <value>\r\n" );
         return;
      }
      loc = get_atype( arg2 );
      if( loc < 1 )
      {
         ch->printf( "Unknown field: %s\r\n", arg2 );
         return;
      }
      if( loc == APPLY_AFFECT )
      {
         argument = one_argument( argument, arg3 );
         value = get_aflag( arg3 );

         if( value < 0 || value >= MAX_AFFECTED_BY )
            ch->printf( "Unknown affect: %s\r\n", arg3 );
         else
            found = true;
      }
      else if( loc == APPLY_RESISTANT || loc == APPLY_IMMUNE || loc == APPLY_SUSCEPTIBLE || loc == APPLY_ABSORB )
      {
         char *risa = argument;
         char flag[MIL];

         while( risa[0] != '\0' )
         {
            risa = one_argument( risa, flag );
            value = get_risflag( flag );

            if( value < 0 || value >= MAX_RIS_FLAG )
               ch->printf( "Unknown flag: %s\r\n", flag );
            else
            {
               risabit.set( value );
               found = true;
            }
         }
      }
      else if( loc == APPLY_WEAPONSPELL
               || loc == APPLY_WEARSPELL
               || loc == APPLY_REMOVESPELL || loc == APPLY_STRIPSN || loc == APPLY_RECURRINGSPELL || loc == APPLY_EAT_SPELL )
      {
         value = skill_lookup( argument );

         if( !IS_VALID_SN( value ) )
            ch->printf( "Invalid spell: %s", argument );
         else
            found = true;
      }
      else
      {
         value = atoi( argument );
         found = true;
      }
      if( !found )
         return;

      paf = new affect_data;
      paf->type = -1;
      paf->duration = -1;
      paf->location = loc;
      paf->modifier = value;
      paf->rismod = risabit;
      paf->bit = 0;
      if( obj->extra_flags.test( ITEM_PROTOTYPE ) )
      {
         if( loc != APPLY_WEARSPELL && loc != APPLY_REMOVESPELL && loc != APPLY_STRIPSN && loc != APPLY_WEAPONSPELL )
         {
            list<char_data*>::iterator ich;
            list<obj_data*>::iterator iobj;

            for( ich = charlist.begin(); ich != charlist.end(); ++ich )
            {
               char_data *vch = *ich;

               for( iobj = vch->carrying.begin(); iobj != vch->carrying.end(); ++iobj )
               {
                  obj_data *eq = *iobj;

                  if( eq->pIndexData == obj->pIndexData && eq->wear_loc != WEAR_NONE )
                     vch->affect_modify( paf, true );
               }
            }
         }
         obj->pIndexData->affects.push_back( paf );
      }
      else
         obj->affects.push_back( paf );
      ++top_affect;
      ch->print( "Object affect added.\r\n" );
      return;
   }

Some of the places were using arg3 when they needed to be using argument instead. This works nicely in the testing I done.

I looked for ways to get those other warnings taken care of didn't find anything to useful though since it is in the include files.

Couldn't tell you how the runes worked haven't looked at them yet lol
       
Post is unread #6 Mar 29, 2008, 9:00 am
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
GroupMembers
Posts153
JoinedMar 25, 2008

Where is the affect data at?
       
Post is unread #7 Mar 29, 2008, 9:04 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,857
JoinedJul 26, 2005

build.cpp around line 3357 (stock wise)
       
Post is unread #8 Mar 29, 2008, 9:18 am   Last edited Mar 29, 2008, 9:24 am by Sanus Compleo
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
GroupMembers
Posts153
JoinedMar 25, 2008

It would seem... that it's already installed. I'm guessing it was installed with some bugfixes from 2.0 to 2.03 and such

EDIT: Is there any way to move the spell list from AFKmud to SmaugFUSS? Like... the whole list of spells.
       
Post is unread #9 Mar 29, 2008, 9:27 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,857
JoinedJul 26, 2005

You need to modify it to look the way I posted it.

Doubtful you would probably have to add each spell and all 1 at a time lol.
       
Post is unread #10 Mar 29, 2008, 9:39 am   Last edited Mar 29, 2008, 9:40 am by Sanus Compleo
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
GroupMembers
Posts153
JoinedMar 25, 2008

Oh it totally and completely worked, you're awesome :D

BUUUT, still can't use trip :/ and trip is always a popular commands :(
       
Post is unread #11 Mar 29, 2008, 9:56 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,857
JoinedJul 26, 2005

http://www.smaugmuds.org/index.php?a=topic&t=3667&p=14842#p14834 thats the link to where I had posted about trip issue
       
Post is unread #12 Mar 29, 2008, 10:03 am   Last edited Mar 29, 2008, 10:09 am by Sanus Compleo
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
GroupMembers
Posts153
JoinedMar 25, 2008

Holy crap... that fixes... Every problem I have came by entirely. You just did that in... like 2 hours? Amazing. Anyways, I also wanted to know how it would be possible to change the stat cap, because I don't like having gear that sets up my stats past 20, and yet it's still 20

EDIT: Why didn't I see that earlier!?
       
Post is unread #13 Mar 29, 2008, 10:08 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,857
JoinedJul 26, 2005

in character.cpp look for these
/*
 * Retrieve character's current strength.
 */
short char_data::get_curr_str(  )
{
   short max = 0;

   if( isnpc(  ) )
      max = 25;
   else
      max = 20;

   return URANGE( 3, perm_str + mod_str, max );
}

/*
 * Retrieve character's current intelligence.
 */
short char_data::get_curr_int(  )
{
   short max = 0;

   if( isnpc(  ) )
      max = 25;
   else
      max = 20;

   return URANGE( 3, perm_int + mod_int, max );
}

/*
 * Retrieve character's current wisdom.
 */
short char_data::get_curr_wis(  )
{
   short max = 0;

   if( isnpc(  ) )
      max = 25;
   else
      max = 20;

   return URANGE( 3, perm_wis + mod_wis, max );
}

/*
 * Retrieve character's current dexterity.
 */
short char_data::get_curr_dex(  )
{
   short max = 0;

   if( isnpc(  ) )
      max = 25;
   else
      max = 20;

   return URANGE( 3, perm_dex + mod_dex, max );
}

/*
 * Retrieve character's current constitution.
 */
short char_data::get_curr_con(  )
{
   short max = 0;

   if( isnpc(  ) )
      max = 25;
   else
      max = 20;

   return URANGE( 3, perm_con + mod_con, max );
}

/*
 * Retrieve character's current charisma.
 */
short char_data::get_curr_cha(  )
{
   short max = 0;

   if( isnpc(  ) )
      max = 25;
   else
      max = 20;

   return URANGE( 3, perm_cha + mod_cha, max );
}

/*
 * Retrieve character's current luck.
 */
short char_data::get_curr_lck(  )
{
   short max = 0;

   if( isnpc(  ) )
      max = 25;
   else
      max = 20;

   return URANGE( 3, perm_lck + mod_lck, max );
}

I won't swear those are the only places but changing those should take care of most of it.

       
Post is unread #14 Mar 29, 2008, 10:12 am
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
GroupMembers
Posts153
JoinedMar 25, 2008

Well, I just set all the stat limits to 100... so I'm expecting alot more damage errors :D
       
Post is unread #15 Mar 29, 2008, 10:18 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,857
JoinedJul 26, 2005

Lol, yea you probably will see them a little more often.

I would guess that you missed the post on trip problem because I posted it and then later I posted other stuff so when you checked back it probably started you at the last post instead of the one about trip.
       
Post is unread #16 Mar 29, 2008, 10:21 am
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
GroupMembers
Posts153
JoinedMar 25, 2008

well thanks dude, this is awesome, now I don't have to worry about my mud crashing every two and a half seconds because one of the imms decide to crash it with trip for the lulz. AND I can make armor and equipment and items and trip people, and I feel all warm and fuzzy inside :D.
       
Post is unread #17 Mar 29, 2008, 10:30 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,857
JoinedJul 26, 2005

Np, and just to go ahead and point you in the right direction with the damage bug message
in fight.cpp find
   /*
    * Stop up any residual loopholes.
    */
   maxdam = ch->level * 30;
   if( dt == gsn_backstab )
      maxdam = ch->level * 80;
   if( dam > maxdam )
   {
      bug( "%s: %d more than %d points!", __FUNCTION__, ( int )dam, maxdam );
      log_printf( "** %s (lvl %d) -> %s **", ch->name, ch->level, victim->name );
      dam = maxdam;
   }

You can modify that if to increase the max damage if the bug messages start to get annoying.
       
Post is unread #18 Mar 29, 2008, 12:18 pm
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
GroupMembers
Posts153
JoinedMar 25, 2008

Oh, I've got just one more. Whenever someone trys to connect from a dialup connection BOOM server dead. Just found out today.
       
Post is unread #19 Mar 29, 2008, 12:29 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,857
JoinedJul 26, 2005

Sorry, don't have a dial up connection to test that on or anything. If you get a chance look for a core file.
       
Post is unread #20 Mar 29, 2008, 12:59 pm
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
GroupMembers
Posts153
JoinedMar 25, 2008

Drats.
       
Pages:<< prev 1, 2 next >>