I made an "outworld" of sorts for my mud using the ascii mapping system snippet a few months ago. Since then, I made a ~2000 room map by hand. I upgraded my bpl14 to 18, and added in the extra exits. I didn't want to have to manually do all the extra exits for the outworld, so I wrote a nice little command that i had hoped would just toss them in there. I based it off the do_dig snippet, and visually it seemed to work fine. I made a dummy area of 20 rooms, and tested it on the middle ones (so there were valid exits in all 4 standard directions). It made all the exits to the appropiate rooms, but now if i try to enter, goto, or in anyway get to one of those rooms, the mud crashes. This code isn't beautiful, but as far as i can tell, workable. Any ideas? Thanks in advance. ACMD(do_addextras) { /* Only works if you have Oasis OLC */ int i, dir1 = 0, dir2 = 0, dir3 = 0, rroom = 0; /* Main stuff */ for (i = 0;i<4;i++) { switch (i) { case 0: dir1 = NORTHEAST; dir2 = NORTH; dir3 = EAST; break; case 1: dir1 = SOUTHEAST; dir2 = EAST; dir3 = SOUTH; break; case 2: dir1 = SOUTHWEST; dir2 = SOUTH; dir3 = WEST; break; case 3: dir1 = NORTHWEST; dir2 = NORTH; dir3 = WEST; break; default: log("CRAP! do_addextras is broken!"); return; } rroom = world[world[ch->in_room].dir_option[dir2]->to_room].dir_option[dir3]->to_room; CREATE(world[rroom].dir_option[rev_dir[dir1]], struct room_direction_data,1); world[rroom].dir_option[rev_dir[dir1]]->general_description = NULL; world[rroom].dir_option[rev_dir[dir1]]->keyword = NULL; world[rroom].dir_option[rev_dir[dir1]]->to_room = ch->in_room; CREATE(world[ch->in_room].dir_option[dir1], struct room_direction_data,1); world[ch->in_room].dir_option[dir1]->general_description = NULL; world[ch->in_room].dir_option[dir1]->keyword = NULL; world[ch->in_room].dir_option[dir1]->to_room = rroom; } /* Only works if you have Oasis OLC */ add_to_save_list(zone_table[world[real_room(ch->in_room)].zone].number, SL_WLD); sprintf(buf, "You add extra exits to room %d.\r\n", ch->in_room); send_to_char(buf, ch); } Jory Graham ShaduinMUD -- +---------------------------------------------------------------+ | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html | +---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/06/01 PST