Login
User Name:

Password:



Register
Forgot your password?
Vote for Us!
 parse description bug
Yesterday, 10:08 pm
By Remcon
Couple bugs
Dec 12, 2017, 5:42 pm
By Remcon
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
LOP 1.45
Author: Remcon
Submitted by: Remcon
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
Users Online
CommonCrawl, Google, Yandex, Sogou, DotBot, Yahoo!

Members: 0
Guests: 15
Stats
Files
Topics
Posts
Members
Newest Member
477
3,706
19,240
608
LAntorcha
Today's Birthdays
There are no member birthdays today.
Related Links
» SmaugMuds.org » Codebases » SmaugFUSS » Resets not working.
Forum Rules | Mark all | Recent Posts

Resets not working.
< Newer Topic :: Older Topic >

Pages:<< prev 1, 2, 3 next >>
Post is unread #21 Apr 23, 2013, 1:56 pm
Go to the top of the page
Go to the bottom of the page

dbna2
Sorcerer
GroupMembers
Posts600
JoinedDec 2, 2008

Build: Frieza: redit rlist
1) Experienced Student (107) -> Stairway of Knowledge Room: 113 [4] [Reseted]


You **** SMITE **** An Experienced Student! (303006)
You are far too strong to gain from this fight...
An Experienced Student is DEAD!!
You get 10 zeni from the corpse of An Experienced Student

redit rlist
Build: Frieza: redit rlist
1) Experienced Student (107) -> Stairway of Knowledge Room: 113 [4] [Reseted]

The school bell rings, and the halls become flooded with students.<--- This is the area reset message.

Build: Frieza: redit rlist
1) Experienced Student (107) -> Stairway of Knowledge Room: 113 [4] [Not Reseted]

2 mins later no reset message sent or anything:


Build: Frieza: redit rlist
1) Experienced Student (107) -> Stairway of Knowledge Room: 113 [4] [Reseted]

I also sent you an email. Remcon.
       
Post is unread #22 Apr 23, 2013, 7:42 pm
Go to the top of the page
Go to the bottom of the page

Quixadhal
Conjurer
GroupMembers
Posts398
JoinedMar 8, 2005

Just an FYI... "reseted" is not a word. The past tense of "reset" is "reset", so either something was reset, or it was not reset.

has reset, is resetting, will reset, has been reset.
       
Post is unread #23 Apr 23, 2013, 8:09 pm
Go to the top of the page
Go to the bottom of the page

Zeno
Sorcerer
GroupMembers
Posts723
JoinedMar 5, 2005

Checking over stock, it seems the patch notes (Samson's topic) never mentioned this part:
   if( IS_NPC( ch ) )
   {
      update_room_reset( ch, TRUE );
      xREMOVE_BIT( ch->act, ACT_MOUNTED );
      for( wch = first_char; wch; wch = wch->next )
       
Post is unread #24 Apr 23, 2013, 8:29 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,866
JoinedJul 26, 2005

same problem dbna2 had well his had it but it was after the extraction process but his should be good now. also bad idea to use this on mobs that run around since until the one that is from that reset is purged it will not reset it.

Thanks for pointing that out quixadhal :)
       
Post is unread #25 Apr 23, 2013, 8:44 pm
Go to the top of the page
Go to the bottom of the page

dbna2
Sorcerer
GroupMembers
Posts600
JoinedDec 2, 2008

Thanks I will test it as soon as I get a chance. sent you another email Remcon.
       
Post is unread #26 Apr 24, 2013, 3:33 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,866
JoinedJul 26, 2005

how did the resets work out?
       
Post is unread #27 Apr 24, 2013, 4:41 pm   Last edited Apr 24, 2013, 4:42 pm by Zeno
Go to the top of the page
Go to the bottom of the page

Zeno
Sorcerer
GroupMembers
Posts723
JoinedMar 5, 2005

Zeno said:

Checking over stock, it seems the patch notes (Samson's topic) never mentioned this part:



Another missing patch note:

In add_reset after
pReset = make_reset( letter, extra, arg1, arg2, arg3 );

Add:
pReset->sreset = TRUE;
       
Post is unread #28 Apr 24, 2013, 6:39 pm
Go to the top of the page
Go to the bottom of the page

dbna2
Sorcerer
GroupMembers
Posts600
JoinedDec 2, 2008

I killed every mob in the area that was killable, They all walk around the area(not sure if that makes a difference) it seems to reset, but now the reset message isn't appearing, even though the area is resetting. I have sat in the area for 20 mins and the area has reset its self 4 times and no message.
       
Post is unread #29 Apr 24, 2013, 7:00 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,866
JoinedJul 26, 2005

well unless area->nplayer is > 0 it wont send the reset messages
       
Post is unread #30 Apr 24, 2013, 7:01 pm
Go to the top of the page
Go to the bottom of the page

dbna2
Sorcerer
GroupMembers
Posts600
JoinedDec 2, 2008

wouldn't I count as a player though ?
       
Post is unread #31 Apr 24, 2013, 7:05 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,866
JoinedJul 26, 2005

should lol
       
Post is unread #32 May 12, 2013, 9:53 pm   Last edited May 12, 2013, 10:25 pm by Zeno
Go to the top of the page
Go to the bottom of the page

Zeno
Sorcerer
GroupMembers
Posts723
JoinedMar 5, 2005

I think I found another major bug? [EDIT] Confirmed this one in stock FUSS 1.9

1) Setup mob in room with death prog to mpmload self 100%.
2) Kill mob
3) sreset is set to 1 (needs reset), which is incorrect
4) Reset happens later
5) Duplicate mob appears





Also how about this... Trying to debug this issue, thinking it's a bug too:

1) 3x of mobA and 1x of mobB in room, kill one of mobA first then the rest
2) sreset gets set to 1 (needs reset) on this entire room; mobA is marked to reset
3) mobB is marked to still not reset, fails to reset next time
       
Post is unread #33 May 15, 2013, 10:02 am   Last edited May 15, 2013, 10:48 am by Zeno
Go to the top of the page
Go to the bottom of the page

Zeno
Sorcerer
GroupMembers
Posts723
JoinedMar 5, 2005

I reproduced the first one in stock FUSS 1.9. I tried to fix it, but adding the new function call to mpmload does not work as apparently mpmload is called before extract_char.

These issues are so bad I had to remove that entire bugfix that put in sreset, etc. I suggest removing it from SmaugFUSS until it's fixed up, as it causes infinite mob duplication and I've also had infinite loops when a player uses a room attack (gas breath, etc).
       
Post is unread #34 May 17, 2013, 10:43 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,866
JoinedJul 26, 2005

the mob duplication is done when? not to mention the infinite loop.

Well it is in rare uses that mpmload self is done. Fixing it to work with the resets shouldn't be to bad though.
       
Post is unread #35 May 17, 2013, 11:07 am   Last edited May 17, 2013, 11:08 am by Remcon
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,866
JoinedJul 26, 2005


Also how about this... Trying to debug this issue, thinking it's a bug too:

1) 3x of mobA and 1x of mobB in room, kill one of mobA first then the rest
2) sreset gets set to 1 (needs reset) on this entire room; mobA is marked to reset
3) mobB is marked to still not reset, fails to reset next time

Ok i tested this out on stock and had no issues with it
After loading
Build: Admin: redit rlist
 1) rat grey arena (10415) -> The Parlour of the Immortals Room: 1200 [6] [Reset]
 2) rat grey arena (10415) -> The Parlour of the Immortals Room: 1200 [6] [Reset]
 3) rat grey arena (10415) -> The Parlour of the Immortals Room: 1200 [6] [Reset]
 4) dog stray (21045) -> The Parlour of the Immortals Room: 1200 [7] [Reset]
 5) dog stray (21045) -> The Parlour of the Immortals Room: 1200 [7] [Reset]
 6) dog stray (21045) -> The Parlour of the Immortals Room: 1200 [7] [Reset]

Killed a rat and a dog
Build: Admin: redit rlist
 1) rat grey arena (10415) -> The Parlour of the Immortals Room: 1200 [6] [Not Reset]
 2) rat grey arena (10415) -> The Parlour of the Immortals Room: 1200 [6] [Reset]
 3) rat grey arena (10415) -> The Parlour of the Immortals Room: 1200 [6] [Reset]
 4) dog stray (21045) -> The Parlour of the Immortals Room: 1200 [7] [Reset]
 5) dog stray (21045) -> The Parlour of the Immortals Room: 1200 [7] [Reset]
 6) dog stray (21045) -> The Parlour of the Immortals Room: 1200 [7] [Not Reset]

Killed the rest
Build: Admin: redit rlist
 1) rat grey arena (10415) -> The Parlour of the Immortals Room: 1200 [6] [Not Reset]
 2) rat grey arena (10415) -> The Parlour of the Immortals Room: 1200 [6] [Not Reset]
 3) rat grey arena (10415) -> The Parlour of the Immortals Room: 1200 [6] [Not Reset]
 4) dog stray (21045) -> The Parlour of the Immortals Room: 1200 [7] [Not Reset]
 5) dog stray (21045) -> The Parlour of the Immortals Room: 1200 [7] [Not Reset]
 6) dog stray (21045) -> The Parlour of the Immortals Room: 1200 [7] [Not Reset]

And all reset like they should have.
       
Post is unread #36 May 17, 2013, 11:11 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,866
JoinedJul 26, 2005


I think I found another major bug? [EDIT] Confirmed this one in stock FUSS 1.9

1) Setup mob in room with death prog to mpmload self 100%.
2) Kill mob
3) sreset is set to 1 (needs reset), which is incorrect
4) Reset happens later
5) Duplicate mob appears

Ive found over the years that i preferred going with a random program to see if the mob wasn't there then put it there. and this wasn't actually tied into the resets at all but as i said shouldn't be to hard to tie it in.
       
Post is unread #37 May 17, 2013, 11:54 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,866
JoinedJul 26, 2005

Ok simple to fix. tested and it works great. I'll post a diff here in a few with the changes compared to stock
       
Post is unread #38 May 17, 2013, 12:08 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,866
JoinedJul 26, 2005

diff -ruNbB oldsrc/db.c src/db.c
--- oldsrc/db.c	2009-05-14 05:59:26.000000000 -0400
+++ src/db.c	2013-04-26 15:43:40.401400000 -0400
@@ -6909,8 +6909,22 @@
                MPROG_DATA *mprg;
                CREATE( mprg, MPROG_DATA, 1 );
                fread_fuss_mobprog( fp, mprg, pMobIndex );
-               mprg->next = pMobIndex->mudprogs;
+           if( pMobIndex->mudprogs )
+           {
+              MPROG_DATA *tmprog;
+
+              for( tmprog = pMobIndex->mudprogs; tmprog->next; tmprog = tmprog->next );
+
+              tmprog->next = mprg;
+           }
+           else
+           {
                pMobIndex->mudprogs = mprg;
+           }
+           mprg->next = NULL;
+
+//               mprg->next = pMobIndex->mudprogs;
+//               pMobIndex->mudprogs = mprg;
                break;
             }
 
diff -ruNbB oldsrc/mud.h src/mud.h
--- oldsrc/mud.h	2009-05-14 05:59:26.000000000 -0400
+++ src/mud.h	2013-05-17 14:47:16.423000000 -0400
@@ -2304,6 +2304,7 @@
    int home_vnum; /* hotboot tracker */
    int resetvnum;
    int resetnum;
+   bool loadedself; /* Used to see if mpmloaded self, if so skip changing the reset for it currently */
 };
 
 struct killed_data
diff -ruNbB oldsrc/mud_comm.c src/mud_comm.c
--- oldsrc/mud_comm.c	2009-07-08 22:02:04.000000000 -0400
+++ src/mud_comm.c	2013-05-17 14:50:36.926000000 -0400
@@ -787,6 +787,12 @@
    }
 
    victim = create_mobile( pMobIndex );
+   if( ch->pIndexData == pMobIndex )
+   {
+      victim->resetvnum = ch->resetvnum;
+      victim->resetnum = ch->resetnum;
+      ch->loadedself = true;
+   }
    char_to_room( victim, ch->in_room );
    return;
 }
diff -ruNbB oldsrc/reset.c src/reset.c
--- oldsrc/reset.c	2008-09-02 02:32:58.000000000 -0400
+++ src/reset.c	2013-05-17 14:47:14.227000000 -0400
@@ -81,8 +81,8 @@
             strncpy( roomname, room->name, MAX_STRING_LENGTH );
          else
             strncpy( roomname, "Room: *BAD VNUM*", MAX_STRING_LENGTH );
-         snprintf( buf, MAX_STRING_LENGTH, "%2d) %s (%d) -> %s Room: %d [%d]\r\n", *num, mobname, pReset->arg1,
-                   roomname, pReset->arg3, pReset->arg2 );
+         snprintf( buf, MAX_STRING_LENGTH, "%2d) %s (%d) -> %s Room: %d [%d] %s\r\n", *num, mobname, pReset->arg1,
+                   roomname, pReset->arg3, pReset->arg2, pReset->sreset ? "[Not Reset]" : "[Reset]" );
 
          for( tReset = pReset->first_reset; tReset; tReset = tReset->next_reset )
          {
@@ -1334,6 +1334,9 @@
    if( !ch )
       return;
 
+   if( ch->loadedself )
+      return;
+
    if( !( room = get_room_index( ch->resetvnum ) ) )
       return;
 

The part with programs should fix your programs always changing btw haha been awhile since i worked on that
       
Post is unread #39 May 17, 2013, 12:20 pm
Go to the top of the page
Go to the bottom of the page

dbna2
Sorcerer
GroupMembers
Posts600
JoinedDec 2, 2008

Can you post a fix for non KEY'D areas? I haven't gotten around to figuring out how to format my areas to use key'd yet.
       
Post is unread #40 May 17, 2013, 12:47 pm
Go to the top of the page
Go to the bottom of the page

Zeno
Sorcerer
GroupMembers
Posts723
JoinedMar 5, 2005


Remcon said:

the mob duplication is done when? not to mention the infinite loop.
<br />

<br />
Well it is in rare uses that mpmload self is done. Fixing it to work with the resets shouldn't be to bad though.


Thanks for looking. The mob duplication happened like this:

1) MobA with 100% mpmload is killed by player
2) MobA is mpmloaded, but left marked as needing reset
3) At x minutes later (let's say 10) the mob resets, now 2x of mob
4) MobA is killed again, once again a new mob spawns with the reset being left marked as needing reset
5) Next reset interval, another mob spawns (3x of mob)

In 2 hours, you could have ~10 mobs. A massive issue especially if say they're aggressive or the sort. The infinite loop seemed to stem when a room attack was used during the reset tick, although I hadn't tried reproducing it.

I'll try reproducing the other issue in stock.
       
Pages:<< prev 1, 2, 3 next >>