Knights Forum

General Category => Knights Discussion => Topic started by: Moo on August 03, 2010, 12:21:57 AM

Title: Bad dungeon
Post by: Moo on August 03, 2010, 12:21:57 AM
This happened a couple of days ago:

(http://a.imageshack.us/img834/3812/badddungeon.png)
Title: Re: Bad dungeon
Post by: Stephen on August 03, 2010, 10:48:07 AM
Hmm...

There are actually three types of ring dungeons. The first is the classic ring which looks like this:


#############
#   .   .   #
#   .   .   #
#   .   .   #
#...#####...#
#   #   #   #
#   #   #   #
#   #   #   #
#...#####...#
#   .   .   #
#   .   .   #
#   .   .   #
#############


(The #'s represent solid walls, the .'s represent walls that can have doors in them)

The classic ring is generated 2/3 of the time. 1/6 of the time you will get this instead:


#############
#   .   .   #
#   .   .   #
#   .   .   #
#...#####...#
#   #   .   #
#   #   .   #
#   #   .   #
#...#...#####
#   .   #   
#   .   #   
#   .   #   
#########


and for the final 1/6 of the time you get this:


#########
#   .   #
#   .   #
#   .   #
#...#...#
#   #   #
#   #   #
#   #   #
#...#...#
#   .   #   
#   .   #   
#   .   #   
#########


It looks like you had the third possibility... although for some reason it didn't create doors into the lower left part of the map.

Do you know if you picked up a mapping scroll at any point? That would have revealed whether there were any hidden rooms in that bottom left section.

Otherwise, I will have to go have a look at the dungeon generation code I suppose...
Title: Re: Bad dungeon
Post by: Moo on August 03, 2010, 11:10:00 AM
No, I tried to find one, but we gave up in the end.
It would be nice if there was a way to continue in a map after your opponent quits...
Maybe instead of sending you back to the quest selection screen, it could show the winner/loser screen first. And the person who remains could press something to return to the dungeon alone.
Also, maybe if it showed loser for whoever quits and winner for whoever remains, that might discourage the "sore losers" I've seen a few times recently, where people suddenly quit mid game after being killed or something.. >:(

Another suggestion.. Save each dungeon as a file on the server as it is generated.. Then in cases like this you could have a look at it.
Title: Re: Bad dungeon
Post by: Stephen on August 04, 2010, 07:38:35 PM
I've made a note of your 'quit' suggestions. (I've been meaning to improve the quit handling for a while.)

Saving the dungeon onto the server is a good idea as well. I think I'll stick to something simple at first, maybe just an ascii file with a # for impassable tiles (walls), a + for approachable tiles (doors/chests/etc) and . for floor squares. And maybe a * to show gem/book/wand locations (if I can code that easily). This would be enough just to have a quick look at the map (and would have helped a bit in this case). More detailed logging could then be added later on if it was needed.
Title: Re: Bad dungeon
Post by: Moo on August 05, 2010, 12:08:13 AM
Of the hundreds of games I must have played by now, this is the only one where it has been obvious there was something wrong. There have been other times it could have been possible though. If there is a problem, it's not a very common one :)
Title: Re: Bad dungeon
Post by: Stephen on August 05, 2010, 10:44:19 AM
And that makes it very hard to debug unfortunately. I did have a quick look at the dungeon generator code but didn't see anything obviously wrong. I don't plan to spend any more time on it for now, but do let me know if it happens again.