Welcome, Guest. Please login or register.
Kingdoms of Ahln
Pages: [1]
  Print  
Author Topic: Weird bugs when building.  (Read 971 times)
Saffire
Citizen
***
Posts: 136


View Profile
« on: September 04, 2009, 08:36:03 am »

When I try to build areas in my MUD, for some reason that I can't seem to figure out, I'll be building, and everything is fine, until, for some reason, and it seems to be at random, whenever I create a new exit another exit will just disappear. Even stranger, when I try to delete the broken exits using adelete, it'll actually delete the room it's in instead of itself. Do you have any idea why this happens, or how I could avoid it? It's really starting to annoy me >.<
Logged
Justin
Administrator
Citizen
*****
Posts: 189



View Profile
« Reply #1 on: September 04, 2009, 08:39:15 am »

What command are you using to create the exit?
Logged
Saffire
Citizen
***
Posts: 136


View Profile
« Reply #2 on: September 04, 2009, 08:42:23 am »

I'm using acroom <direction> <room name> to create most exits, and for a couple I'm using acexit <direction> <goid of target room>
Logged
Justin
Administrator
Citizen
*****
Posts: 189



View Profile
« Reply #3 on: September 04, 2009, 08:45:07 am »

Thanks. Also, which GOID scheme are you using?
Logged
Saffire
Citizen
***
Posts: 136


View Profile
« Reply #4 on: September 04, 2009, 08:45:53 am »

I'm using 32-bit integer GoIDs.
Logged
Saffire
Citizen
***
Posts: 136


View Profile
« Reply #5 on: September 04, 2009, 08:47:58 am »

Do you think it's a bug with GoIDs? I didn't even think to check into that.
Logged
Justin
Administrator
Citizen
*****
Posts: 189



View Profile
« Reply #6 on: September 04, 2009, 08:52:29 am »

It shouldn't be, because when you create a new object, it checks if the generated GOID is already in use. However, it doesn't check if the GOID is passed in as a parameter. I don't think that happens anywhere, though...it was just my first thought.
Logged
Saffire
Citizen
***
Posts: 136


View Profile
« Reply #7 on: September 14, 2009, 05:35:32 pm »

I did doing some testing to try and narrow down this bug earlier. It's only happened with exits that I've created using the acexit command. I did 6 earlier before they started deleting themselves.
Logged
Saffire
Citizen
***
Posts: 136


View Profile
« Reply #8 on: September 22, 2009, 08:38:25 am »

I've been doing some more testing. I just found something I missed before: When I make an exit using acexit, it's assigning the same GoID as the room it's in. Here's a log of me creating some rooms using acroom, and then connecting two of them using acexit, on a completely fresh game file:

Quote
A wide-open field. GoID: 3931336395.
Endless possibilities stretch out the the horizon.
You can go nowhere, apparently.
H:100/100 M:100/100 [b ]
Ellah has entered the game.
H:100/100 M:100/100 [b ]
Type HELP HELP for help.
acroom south test1
Created: Room(test1|3662363703)
H:100/100 M:100/100 [b ]
Created: Exit(|95669754)
H:100/100 M:100/100 [b ]
Created: Exit(|278052395)
H:100/100 M:100/100 [b ]
There is a small flash of light as a new room appears to the south.
H:100/100 M:100/100 [b ]s
test1. GoID: 3662363703.
Nothing interesting here.
You can go north.
H:100/100 M:100/100 [b ]acroom east test2
Created: Room(test2|2199003869)
H:100/100 M:100/100 [b ]
Created: Exit(|214242199)
H:100/100 M:100/100 [b ]
Created: Exit(|820771366)
H:100/100 M:100/100 [b ]
There is a small flash of light as a new room appears to the east.
H:100/100 M:100/100 [b ]e
test2. GoID: 2199003869.
Nothing interesting here.
You can go west.
H:100/100 M:100/100 [b ]acroom north test3
Created: Room(test3|1920607734)
H:100/100 M:100/100 [b ]
Created: Exit(|4286575105)
H:100/100 M:100/100 [b ]
Created: Exit(|979989926)
H:100/100 M:100/100 [b ]
There is a small flash of light as a new room appears to the north.
H:100/100 M:100/100 [b ]n
test3. GoID: 1920607734.
Nothing interesting here.
You can go south.
H:100/100 M:100/100 [b ]acexit west 3931336395
Frowning in concentration, you make vague motions with your hands. There is a
small flash of light as an exit appears.
H:100/100 M:100/100 [b ]
Created: Exit(|1920607734)
H:100/100 M:100/100 [b ]w
A wide-open field. GoID: 3931336395.
Endless possibilities stretch out the the horizon.
You can go south.
H:100/100 M:100/100 [b ]acexit east 1920607734
Frowning in concentration, you make vague motions with your hands. There is a
small flash of light as an exit appears.
H:100/100 M:100/100 [b ]
Created: Exit(|3931336395)
H:100/100 M:100/100 [b ]e
test3. GoID: 1920607734.
Nothing interesting here.
You can go south and west.
H:100/100 M:100/100 [b ]w
A wide-open field. GoID: 3931336395.
Endless possibilities stretch out the the horizon.
You can go east and south.
H:100/100 M:100/100 [b ]alook east
Object: Exit(|3931336395)
Attributes:
     @actions = #<Set:0x3561cd0>
     @alt_names = east
     @article = an
     @busy = false
     @comment =
     @container = 3931336395
     @exit_room = 1920607734
     @game_object_id = 3931336395
     @generic = exit
     @info = Info object
     @long_desc =
     @movable = false
     @name =
     @plural =
     @pose =
     @quantity = 1
     @sex = n
     @short_desc = Nothing interesting here.
[Type MORE to continue reading (1/2)]
H:100/100 M:100/100 [b ]adelete alist
Cannot find alist to delete.
H:100/100 M:100/100 [b ]alist
     Room(A wide-open field|3931336395)
     Exit(|214242199)
     Player(Ellah|2969517112)
     Room(test3|1920607734)
     Exit(|979989926)
     Area(an Expansive Wilderness|970580180)
     Exit(|95669754)
     Exit(|278052395)
     Account(Ellah|544977802)
     Exit(|820771366)
     Room(GarbageRoom|1016258708)
     Room(test2|2199003869)
     Room(test1|3662363703)
     Exit(|4286575105)
H:100/100 M:100/100 [b ]e
test3. GoID: 1920607734.
Nothing interesting here.
You can go south and west.
H:100/100 M:100/100 [b ]w
A wide-open field. GoID: 3931336395.
Endless possibilities stretch out the the horizon.
You can go east and south.
H:100/100 M:100/100 [b ]alook here
Object: Room(A wide-open field|3931336395)
Attributes:
     @actions = #<Set:0x3566780>
     @alt_names =
     @article = a
     @busy = false
     @comment =
     @container = 970580180
     @game_object_id = 3931336395
     @generic = room
     @info = Info object
     @inventory = Inventory (3/infinity)
     @long_desc =
     @movable = false
     @name = A wide-open field
     @observer_peers = The Manager
     @plural =
     @pose =
     @quantity = 1
     @sex = n
[Type MORE to continue reading (1/2)]
H:100/100 M:100/100 [b ]more
     @short_desc = Endless possibilities stretch out the the horizon.
     @show_in_look = false
     @visible = true

Inventory:
     an exit # 3931336395
     Ellah # 2969517112
     an exit # 95669754
H:100/100 M:100/100 [b ]
e
test3. GoID: 1920607734.
Nothing interesting here.
You can go south and west.
H:100/100 M:100/100 [b ]alook west
Object: Exit(|1920607734)
Attributes:
     @actions = #<Set:0x356c2e8>
     @alt_names = west
     @article = an
     @busy = false
     @comment =
     @container = 1920607734
     @exit_room = 3931336395
     @game_object_id = 1920607734
     @generic = exit
     @info = Info object
     @long_desc =
     @movable = false
     @name =
     @plural =
     @pose =
     @quantity = 1
     @sex = n
     @short_desc = Nothing interesting here.
[Type MORE to continue reading (1/2)]
H:100/100 M:100/100 [b ]alook here
Object: Room(test3|1920607734)
Attributes:
     @actions = #<Set:0x354a38c>
     @alt_names =
     @article = a
     @busy = false
     @comment =
     @container = 970580180
     @game_object_id = 1920607734
     @generic = room
     @info = Info object
     @inventory = Inventory (3/infinity)
     @long_desc =
     @movable = false
     @name = test3
     @observer_peers = The Manager
     @plural =
     @pose =
     @quantity = 1
     @sex = n
[Type MORE to continue reading (1/2)]
H:100/100 M:100/100 [b ]more
     @short_desc = Nothing interesting here.
     @show_in_look = false
     @visible = true

Inventory:
     an exit # 979989926
     an exit # 1920607734
     Ellah # 2969517112
H:100/100 M:100/100 [b ]
Logged
Justin
Administrator
Citizen
*****
Posts: 189



View Profile
« Reply #9 on: September 22, 2009, 08:54:08 am »

Okay, looking into it right now.
Logged
Justin
Administrator
Citizen
*****
Posts: 189



View Profile
« Reply #10 on: September 22, 2009, 09:13:29 am »

Okay, found the problem. Fixing...
Logged
Justin
Administrator
Citizen
*****
Posts: 189



View Profile
« Reply #11 on: September 22, 2009, 10:31:30 am »

Alright, the fix is up here.

Basically, when I switched to using Manager#create_object for everything, I missed that Exit.new takes an argument for the exit room.
Logged
Saffire
Citizen
***
Posts: 136


View Profile
« Reply #12 on: September 22, 2009, 11:21:12 am »

I've been testing the new code, everything seems to be in order now. Thanks a lot, that was driving me nuts. Smiley

I'll post again if I find anything acting strangely with the new code, as always.
Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by SMF 1.1.15 | SMF © 2006-2009, Simple Machines
Terra97 design by Bloc