2x2 shops and shopkeeper behavior

G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

I found a general store the other day that was only a 2x2 room. Dumped and
sold the junk I didn't want, and wasn't carrying anything that I needed to
pay for - but the shopkeeper wouldn't leave the entryway and I couldn't run
into the entrance at a diagonal, even after dropping most of my inventory.
Basically I was stuck with no way out - no teleportation scrolls or anything
otherwise useful and there weren't any in the itty bitty store. Depressing
end to the game, though at least it was only on level 3.

Is that a bug or do I have other options if it happens later (besides not
going into the shop)?

- Niki
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

Niki of Glaslyn wrote:
> I found a general store the other day that was only a 2x2 room.
Dumped and
> sold the junk I didn't want, and wasn't carrying anything that I
needed to
> pay for - but the shopkeeper wouldn't leave the entryway and I
couldn't run
> into the entrance at a diagonal, even after dropping most of my
inventory.
> Basically I was stuck with no way out - no teleportation scrolls or
anything
> otherwise useful and there weren't any in the itty bitty store.
Depressing
> end to the game, though at least it was only on level 3.
>
> Is that a bug or do I have other options if it happens later (besides
not
> going into the shop)?
>
> - Niki

Is this Vanilla NetHack? I've noticed this behavior in Slash'EM, where
shopkeepers will not move from the front of the door. Seemingly
behaving as though I owe money. This happens to me frequently with all
sizes of shops...

--
..
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

RecRanger wrote:
> Niki of Glaslyn wrote:
>
>>I found a general store the other day that was only a 2x2 room.
>
> Dumped and
>
>>sold the junk I didn't want, and wasn't carrying anything that I
>
> needed to
>
>>pay for - but the shopkeeper wouldn't leave the entryway and I
>
> couldn't run
>
>>into the entrance at a diagonal, even after dropping most of my
>
> inventory.
>
>>Basically I was stuck with no way out - no teleportation scrolls or
>
> anything
>
>>otherwise useful and there weren't any in the itty bitty store.
>
> Depressing
>
>>end to the game, though at least it was only on level 3.
>>
>>Is that a bug or do I have other options if it happens later (besides
>
> not
>
>>going into the shop)?
>>
>>- Niki
>
>
> Is this Vanilla NetHack? I've noticed this behavior in Slash'EM, where
> shopkeepers will not move from the front of the door. Seemingly
> behaving as though I owe money. This happens to me frequently with all
> sizes of shops...
>
> --
> .
>

Yes, this happens in Vanilla Nethack. Don't know whether/how I solved
that. (I posted about it quite some time ago.) What I would try is to
walk onto the shopkeeper square (though don't confirm to strike him);
occasionally it might help.

Janis

BTW, fix your newsreader!
 

Chuck

Distinguished
Nov 19, 2001
1,479
0
19,280
Archived from groups: rec.games.roguelike.nethack (More info?)

"Niki of Glaslyn" <nikichan@earthlink.net> wrote in
news:J_k_d.13286$cN6.5963@newsread1.news.pas.earthlink.net:

> I found a general store the other day that was only a 2x2 room. Dumped
> and sold the junk I didn't want, and wasn't carrying anything that I
> needed to pay for - but the shopkeeper wouldn't leave the entryway and
> I couldn't run into the entrance at a diagonal, even after dropping
> most of my inventory. Basically I was stuck with no way out - no
> teleportation scrolls or anything otherwise useful and there weren't
> any in the itty bitty store. Depressing end to the game, though at
> least it was only on level 3.
>
> Is that a bug or do I have other options if it happens later (besides
> not going into the shop)?
>
> - Niki
>
>
>
I've run into this as well on several occasions (I don't believe the size
of the store matters), I just move around the store to another square,
perhaps search for a bit and the storekeeper will eventaully move, like
when you want your pet to move beside you going up/down stairs and Murphy's
law takes effect...



--
lisp LIVES!!!
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

chuck wrote:
> "Niki of Glaslyn" <nikichan@earthlink.net> wrote in
> news:J_k_d.13286$cN6.5963@newsread1.news.pas.earthlink.net:
>
>>I found a general store the other day that was only a 2x2 room. Dumped
>>and sold the junk I didn't want, and wasn't carrying anything that I
>>needed to pay for - but the shopkeeper wouldn't leave the entryway [...]
>
> I've run into this as well on several occasions (I don't believe the size
> of the store matters), [...]

I am quite sure size and/or geometry of the shop matters. I think to
remember that this had happened to me in cases where the shopdoor was
close to (at) the edge of the shop (which is natually more likely in
small shops), and where the shops have been narrow (one line of items).

Janis
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

Thanks. I will definitely be more careful in the future...

"Janis Papanagnou" <Janis_Papanagnou@hotmail.com> wrote in message
news:d1jhr9$odg$1@online.de...
> chuck wrote:
> > "Niki of Glaslyn" <nikichan@earthlink.net> wrote in
> > news:J_k_d.13286$cN6.5963@newsread1.news.pas.earthlink.net:
> >
> >>I found a general store the other day that was only a 2x2 room. Dumped
> >>and sold the junk I didn't want, and wasn't carrying anything that I
> >>needed to pay for - but the shopkeeper wouldn't leave the entryway [...]
> >
> > I've run into this as well on several occasions (I don't believe the
size
> > of the store matters), [...]
>
> I am quite sure size and/or geometry of the shop matters. I think to
> remember that this had happened to me in cases where the shopdoor was
> close to (at) the edge of the shop (which is natually more likely in
> small shops), and where the shops have been narrow (one line of items).
>
> Janis
 

Chuck

Distinguished
Nov 19, 2001
1,479
0
19,280
Archived from groups: rec.games.roguelike.nethack (More info?)

Janis Papanagnou <Janis_Papanagnou@hotmail.com> wrote in
news:d1jhr9$odg$1@online.de:

> chuck wrote:
>> "Niki of Glaslyn" <nikichan@earthlink.net> wrote in
>> news:J_k_d.13286$cN6.5963@newsread1.news.pas.earthlink.net:
>>
>>>I found a general store the other day that was only a 2x2 room.
>>>Dumped and sold the junk I didn't want, and wasn't carrying anything
>>>that I needed to pay for - but the shopkeeper wouldn't leave the
>>>entryway [...]
>>
>> I've run into this as well on several occasions (I don't believe the
>> size of the store matters), [...]
>
> I am quite sure size and/or geometry of the shop matters. I think to
> remember that this had happened to me in cases where the shopdoor was
> close to (at) the edge of the shop (which is natually more likely in
> small shops), and where the shops have been narrow (one line of
> items).
>
> Janis
>
First, all rooms other that Vaults are 3x3 as least, secondly as below..
according to code the program first checks where you are and then moves...

monmove.c m_move():

for shopkeeper:
if(mtmp->isshk) {
mmoved = shk_move(mtmp);
if(mmoved == -2) return(2);
if(mmoved >= 0) goto postmov;
mmoved = 0; /* follow player outside shop */
in mon.c mfndpos():

/* return number of acceptable neighbour positions */
int
mfndpos(mon, poss, info, flag)
register struct monst *mon;
coord *poss; /* coord poss[9] */
long *info; /* long info[9] */
long flag;
{
so, program calculates valid positions to move to BEFORE trying to move

and in mkroom.h:
#define ROOMOFFSET 3 /*
* (levl[x][y].roomno - ROOMOFFSET) gives
* rooms[] index, for inside-squares and
* non-shared boundaries.
*/
so rooms except for vaults are all at least 3x3

In addition to the above, I have been in small shops, moved a square from
the
shopkeeper and waited a bit and he has moved (most likely because there is
one
more square he can move to).

So, Either you were holding somethin unpaid and never dropped it, didn't
wait long enough (or some other truth...) and you HAD to be in a room at
least 3x3.


--
lisp LIVES!!!
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

chuck wrote:
> Janis Papanagnou <Janis_Papanagnou@hotmail.com> wrote in
> news:d1jhr9$odg$1@online.de:
>
>>chuck wrote:
>>
>>>"Niki of Glaslyn" <nikichan@earthlink.net> wrote in
>>>news:J_k_d.13286$cN6.5963@newsread1.news.pas.earthlink.net:
>>>
>>>>I found a general store the other day that was only a 2x2 room.
>>>>Dumped and sold the junk I didn't want, and wasn't carrying anything
>>>>that I needed to pay for - but the shopkeeper wouldn't leave the
>>>>entryway [...]
>>>
>>>I've run into this as well on several occasions (I don't believe the
>>>size of the store matters), [...]
>>
>>I am quite sure size and/or geometry of the shop matters. I think to
>>remember that this had happened to me in cases where the shopdoor was
>>close to (at) the edge of the shop (which is natually more likely in
>>small shops), and where the shops have been narrow (one line of
>>items).
>
> First, all rooms other that Vaults are 3x3 as least, secondly as below..
> according to code the program first checks where you are and then moves...

First, you are wrong.

When I talked about "one line of items" there will be another free line
without items in the shop making it a room with two rows or columns, as
are the two rooms below which I just copy/pasted from a test game.

---------------- ###--.-
| | #- |
###+ | | |
---------------- ###+ >|
----

> [...code snipped...]
>
> so rooms except for vaults are all at least 3x3

Only if you also count the walls, then it becomes true.

> In addition to the above, I have been in small shops, moved a square from
> the
> shopkeeper and waited a bit and he has moved (most likely because there is
> one
> more square he can move to).

As you seem to not have tried in shops small enough, as I described, how
could you tell.

> So, Either you were holding somethin unpaid and never dropped it, didn't
> wait long enough (or some other truth...) and you HAD to be in a room at
> least 3x3.

So either you did not yet experienced that, or you have not watched carefully
enough, or you mis-read the code, or more than one of these reasons (or some
other truth).

Janis
 

Chuck

Distinguished
Nov 19, 2001
1,479
0
19,280
Archived from groups: rec.games.roguelike.nethack (More info?)

Janis Papanagnou <Janis_Papanagnou@hotmail.com> wrote in
news:d1l0tq$snr$1@online.de:

> chuck wrote:
>> Janis Papanagnou <Janis_Papanagnou@hotmail.com> wrote in
>> news:d1jhr9$odg$1@online.de:
>>
>>>chuck wrote:
>>>
>>>>"Niki of Glaslyn" <nikichan@earthlink.net> wrote in
>>>>news:J_k_d.13286$cN6.5963@newsread1.news.pas.earthlink.net:
>>>>
>>>>>I found a general store the other day that was only a 2x2 room.
>>>>>Dumped and sold the junk I didn't want, and wasn't carrying anything
>>>>>that I needed to pay for - but the shopkeeper wouldn't leave the
>>>>>entryway [...]
>>>>
>>>>I've run into this as well on several occasions (I don't believe the
>>>>size of the store matters), [...]
>>>
>>>I am quite sure size and/or geometry of the shop matters. I think to
>>>remember that this had happened to me in cases where the shopdoor was
>>>close to (at) the edge of the shop (which is natually more likely in
>>>small shops), and where the shops have been narrow (one line of
>>>items).
>>
>> First, all rooms other that Vaults are 3x3 as least, secondly as below..
>> according to code the program first checks where you are and then moves...
>
> First, you are wrong.
>
> When I talked about "one line of items" there will be another free line
> without items in the shop making it a room with two rows or columns, as
> are the two rooms below which I just copy/pasted from a test game.
>
> ---------------- ###--.-
> | | #- |
> ###+ | | |
> ---------------- ###+ >|
> ----
>
>> [...code snipped...]
>>
>> so rooms except for vaults are all at least 3x3
>
> Only if you also count the walls, then it becomes true.
No it says right there in the code "including non-shared boundaries" namely
walls.

>
>> In addition to the above, I have been in small shops, moved a square from
>> the
>> shopkeeper and waited a bit and he has moved (most likely because there is
>> one
>> more square he can move to).
>
> As you seem to not have tried in shops small enough, as I described, how
> could you tell.

>> So, Either you were holding somethin unpaid and never dropped it, didn't
>> wait long enough (or some other truth...) and you HAD to be in a room at
>> least 3x3.
>
> So either you did not yet experienced that, or you have not watched
carefully
> enough, or you mis-read the code, or more than one of these reasons (or
some
> other truth).

no, I have seen it numerous times in shops remember I'm agreeing that the
shopkeeper will spend time not moving at all

no, I have know C since 1984 when I first learned it and have finished
University level courses in it with very little effort.

> Janis



--
lisp LIVES!!!
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

chuck wrote:
> Janis Papanagnou <Janis_Papanagnou@hotmail.com> wrote in
> news:d1l0tq$snr$1@online.de:
>>chuck wrote:
>>
>>>First, all rooms other that Vaults are 3x3 as least, secondly as below..
>>>according to code the program first checks where you are and then moves...
>>
>>First, you are wrong.
>>
>>When I talked about "one line of items" there will be another free line
>>without items in the shop making it a room with two rows or columns, as
>>are the two rooms below which I just copy/pasted from a test game.
>>
>> ---------------- ###--.-
>> | | #- |
>> ###+ | | |
>> ---------------- ###+ >|
>> ----
>>
>>>so rooms except for vaults are all at least 3x3
>>
>>Only if you also count the walls, then it becomes true.
>
> No it says right there in the code "including non-shared boundaries" namely
> walls.

I am not in the mood to analyze the code in detail, but the quantity you
posted...

#define ROOMOFFSET 3 /*
* (levl[x][y].roomno - ROOMOFFSET) gives
* rooms[] index, for inside-squares and
* non-shared boundaries.
*/

....seems to not have something to do with room coordinates, but rather
says it is an index offset (in a list of rooms), and also accessed like
that in the code.

My practical experience from Nethack is that the minimum possible room
size seems to be 3x2 (maybe 2x2) which I regularily encounter.

> no, I have know C since 1984 when I first learned it and have finished
> University level courses in it with very little effort.

I could but wouldn't want to comment on your C background.

Though what I am commenting on is your ignoring of the actual test cases
I presented to prove your wording wrong.

Janis
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

Janis Papanagnou wrote:

> My practical experience from Nethack is that the minimum possible room
> size seems to be 3x2 (maybe 2x2) which I regularily encounter.

<ap7b0k$1hlr$1@agate.berkeley.edu>
Some investigation by Robert Schneck shows (among other things) the
chance of getting a 2x2 room is less than 0.06%. 3x2 rooms are much more
common (0.89%), which should give an average of at least one per game.
 

Chuck

Distinguished
Nov 19, 2001
1,479
0
19,280
Archived from groups: rec.games.roguelike.nethack (More info?)

Janis Papanagnou <Janis_Papanagnou@hotmail.com> wrote in
news:d1mf5h$af5$1@online.de:

> chuck wrote:
>> Janis Papanagnou <Janis_Papanagnou@hotmail.com> wrote in
>> news:d1l0tq$snr$1@online.de:
>>>chuck wrote:
>>>
>>>>First, all rooms other that Vaults are 3x3 as least, secondly as below..
>>>>according to code the program first checks where you are and then
moves...
>>>
>>>First, you are wrong.
>>>
>>>When I talked about "one line of items" there will be another free line
>>>without items in the shop making it a room with two rows or columns, as
>>>are the two rooms below which I just copy/pasted from a test game.
>>>
>>> ---------------- ###--.-
>>> | | #- |
>>> ###+ | | |
>>> ---------------- ###+ >|
>>> ----
>>>
>>>>so rooms except for vaults are all at least 3x3
>>>
>>>Only if you also count the walls, then it becomes true.
>>
>> No it says right there in the code "including non-shared boundaries"
namely
>> walls.
>
> I am not in the mood to analyze the code in detail, but the quantity you
> posted...
>
> #define ROOMOFFSET 3 /*
> * (levl[x][y].roomno - ROOMOFFSET) gives
> * rooms[] index, for inside-squares and
> * non-shared boundaries.
> */
>
> ...seems to not have something to do with room coordinates, but rather
> says it is an index offset (in a list of rooms), and also accessed like
> that in the code.
>
> My practical experience from Nethack is that the minimum possible room
> size seems to be 3x2 (maybe 2x2) which I regularily encounter.
>
>> no, I have know C since 1984 when I first learned it and have finished
>> University level courses in it with very little effort.
>
> I could but wouldn't want to comment on your C background.
>
> Though what I am commenting on is your ignoring of the actual test cases
> I presented to prove your wording wrong.
>
> Janis
>
I provide actual code from nethack as proof of my statements which you have
yet to substantively dispute in any valid manner and you say that by doing
some ascii art (you don't have stairways in shops...) you dispute it HAH.
Firstly you are not the person proposing the ludicrus situation in the first
place so any reason you have to support it is inane at best, secondly since
you seem to want to now talk about the code, which is the ONLY valid proof
that can be obtained EXACTLY what do you know about C? answer me this what
token is used to derive the address of a variable? If you don't know this
then You should retract from this argument as not competant to have it as you
so ignorantly suggested I do.



--
lisp LIVES!!!
 

Chuck

Distinguished
Nov 19, 2001
1,479
0
19,280
Archived from groups: rec.games.roguelike.nethack (More info?)

David Corbett <dcorbett42@yahoo.co.nz> wrote in
news:3Jz%d.11580$1S4.1198042@news.xtra.co.nz:

> Janis Papanagnou wrote:
>
>> My practical experience from Nethack is that the minimum possible room
>> size seems to be 3x2 (maybe 2x2) which I regularily encounter.
>
> <ap7b0k$1hlr$1@agate.berkeley.edu>
> Some investigation by Robert Schneck shows (among other things) the
> chance of getting a 2x2 room is less than 0.06%. 3x2 rooms are much more
> common (0.89%), which should give an average of at least one per game.
>
Ok, fair enough if true, but in the code there is proof of the minimum size
of a room and I have yet to see anybody provide a vaild dispute of my claim
using the code itself; which is the only valid proof or course. I so far am
the only person to so do. BTW sorry if this sounded harsh, but I just
responded to the other poster in this thread.



--
lisp LIVES!!!
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

"chuck" <chucko@nil.car> wrote in message
news:Xns9620E62D6D471chuckonilcar@207.35.177.134...

(cut)

> ok fine , now show me where it says that a 2x2 room is possible
> (other than a vault of course).

> I do not see it, don't experience it Heck I don't even believe said
> person ever was in a 2x2 shop. I personally think it was
> posted just for the same reason as the water Daemon
> thread a while back. I haven't seen anything from the
> original poster AT all since the original.

Yes, I was in the shop, and if I find another, I'll make a screenshot.
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

chuck <chucko@nil.car> writes:
> Janis Papanagnou <Janis_Papanagnou@hotmail.com> wrote in
> news:d1mf5h$af5$1@online.de:
> >
> > I am not in the mood to analyze the code in detail, but the quantity you
> > posted...
> >
> > #define ROOMOFFSET 3 /*
> > * (levl[x][y].roomno - ROOMOFFSET) gives
> > * rooms[] index, for inside-squares and
> > * non-shared boundaries.
> > */
> >
> > ...seems to not have something to do with room coordinates, but rather
> > says it is an index offset (in a list of rooms), and also accessed like
> > that in the code.

Exactly so. roomno is used to determine which room you're in (or
generally considering), nothing to do with the size of that room.

> > My practical experience from Nethack is that the minimum possible room
> > size seems to be 3x2 (maybe 2x2) which I regularily encounter.
> >
> I provide actual code from nethack as proof of my statements which you have
> yet to substantively dispute in any valid manner

You've quoted the value of a constant. I see nowhere that you have
considered what that constant is actually used for.

The code you need to be looking at is in create_room() in
sp_lev.c; it's fairly detailed, but the key lines are:

else {
dx = 2 + rn2((hx-lx > 28) ? 12 : 8);
dy = 2 + rn2(4);
if(dx*dy > 50)
dy = 50/dx;
}

(where hx and lx are given by a rnd_rect call). dx and dy are then
further potentially reduced by check_room() before being passed to
add_room() to actually draw in the walls, which latter process can
itself alter sizes... the simplest thing to do here (rather than try
and slog through how this translates to size when created) is to
minimise these rn2()s at 0 by removing them, recompile, and see what a
level looks like:
#
----- -----
#. -# |{< | -----
#| |# #. +###### |> |
#-----# #----- # | .#
# ### ----- ----- #### ##| |#
# ####. | #| | # -----#
# ####|# .#######| .##### # #
# ### #+ | | | # # #
# # ----- ----- ### # # #
# ### # # -----# ### -----
-----# # ### | .####################. |
|.:..#### # | >|# ###| |
|d@$| # ##. +# #- |
|...+## --+-- -----
----- #


I see a couple of 2x2s there. All I've done is load the dice, not
change the rules; that's a perfectly possible (but staggeringly
unlikely) level to get in a real game.

--
: Dylan O'Donnell http://www.spod-central.org/~psmith/ :
: "Nothing matters very much, and few things matter at all." :
: -- A.J. Balfour :
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

psmithnews@spod-central.org (Dylan O'Donnell) writes:

[room creation with dice loaded to roll 0s]

> ----- -----
> #. -# |{< | -----
> #| |# #. +###### |> |
> #-----# #----- # | .#
>
> I see a couple of 2x2s there. All I've done is load the dice, not
> change the rules; that's a perfectly possible (but staggeringly
> unlikely) level to get in a real game.

No I don't, those are 2x3s; I'm obviously uncaffeinated. However, a spot
of levelhopping brings up a bona fide 2x2:
#
----- ----- -----
#+ | ----- #. | | |
----- ###| .# ###################. | #| | | .#
|{< | # | ^|# | .# #| .# | |#
| -### -----# #+ |# #-----# ---.-#
---.- # ###-----# # # ## #
# # # # # # # # #
### # # # # # ### #
# # # # # # # #
### # # # # # ## #
-.--- # # # # # -+--- #
| | # -----# ### #########+...| #
| | # | |# #-----## ###|.d.| #
| | # | |# #| \ |## #|@..| #
----- # ##. .# #. |# ----- ###
#----- # ----- | .# # ----
#. > -######### ^ ----- ##. |
|_ | | |
----- ----

and another in another game:
----- #
##############. .# -----
# | |#########. | ----
---- -----### ##. <^|# # | .#####| |
| | | ^.# ----- # -----# ####+ | #. |
| | | {| | .############# # # ----- -.--
---- ##| +# #. | # # # ##### #
# -----# #| .#### # # # # #
# # #-----## # #### # #
# # ## ### # ## # ##
# # # ## # #### # --|-
# # # #### # #-----# ##+ |
-----# ### # # ## # ###.^.@|# | |
| .# #-----### #-----# # |>.f|# | |
##. | #| .# #| .# ### |...+# ----
----- # | | #. |# #| # | # ----- #
|>{ .#### ----- | .# #. .###
| | ----- -----
----- #

They seem always to be on the far right-hand side of levels, so it
looks as if it's the clipping there that's responsible.

--
: Dylan O'Donnell http://www.spod-central.org/~psmith/ :
: "Nothing matters very much, and few things matter at all." :
: -- A.J. Balfour :
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

chuck wrote:
> "Kent Paul Dolan" <xanthian@well.com> wrote:
>> chuck wrote:

>>> First, all rooms other that Vaults are 3x3 as
>>> least,

>> Why do you write such nonsense? Anyone who plays
>> much NetHack has found themselves in a 2x2 shop
>> more than once; me within the past one week.

> I have yet to see a 2x2 room SIR.

The fact that you haven't seen any doesn't prove anything, except,
perhaps, that you haven't been playing long enough to have encountered
one.

>> For all your vaunted bragging about C, only a year
>> less experience than mine, you seem singularly inept
>> at analyzing it. None of that code was at all
>> indicative even of how moves are decided at all.

> I was NOT braggin SHE questioned my ability in said language when she
> obviously does not understand a keyword .

Supposing you're talking about Janis Papanagnou, she's a HE, as he's
stated over and over again in this newsgroup.

Don't get me wrong: I'm no source reader, and I'm taking no position in
whether or not 2x2 shops are possible. I'm just saying your arguments
aren't any more valid than other "arguments" I've read here.

--
Boudewijn Waijers (kroisos at home.nl).

The garden of happiness is surrounded by a wall so low only children
can look over it. - "the Orphanage of Hits", former Dutch radio show.
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

Dylan O'Donnell wrote:

> [...] the simplest thing to do here (rather than try and slog through
> how this translates to size when created) is to minimise these rn2()s
> at 0 by removing them, recompile, and see what a level looks like:

[ Snipped the map, since the > characters confuse my posting program,
and the 72+ line lengths don't help, either... ]

> I see a couple of 2x2s there. All I've done is load the dice, not
> change the rules; that's a perfectly possible (but staggeringly
> unlikely) level to get in a real game.

I don't see any 2x2 rooms. Every room is at least three spaces wide.

I see two 3x2 and six 3x3 rooms.

--
Boudewijn Waijers (kroisos at home.nl).

The garden of happiness is surrounded by a wall so low only children
can look over it. - "the Orphanage of Hits", former Dutch radio show.
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

Quoting chuck <chucko@nil.car>:
>I provide actual code from nethack as proof of my statements

"proof" in the sense of finding a constant which is completely irrelevant.
If I were you, I wouldn't be talking down to anyone else.
--
David Damerell <damerell@chiark.greenend.org.uk> Kill the tomato!
Today is Second Leicesterday, March.
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack,misc.misc (More info?)

[Google groups beta is on its buns, so I have no way
to put a "followups-to" header on this crossposted
article. Do what pleases you when replying, but be
aware that leaving things as is will do a
crossposting to misc.misc, for those few that
bothers.]

"chuck" <chucko@nil.car> wrote:
> "Kent Paul Dolan" <xanthian@well.com> wrote:
>> chuck <chucko@nil.car> wrote:

[Though it took you two tries to answer, I'm
stitching them back together here to avoid
impossibly complicated threading on a single issue.]

>>> First, all rooms other that Vaults are 3x3 as
>>> least,

>> Why do you write such nonsense? Anyone who plays
>> much NetHack has found themselves in a 2x2 shop
>> more than once; me within the past one week.

> I have yet to see a 2x2 room SIR.

It doesn't matter what _you_ have SEEN, that's not a
useful criterion for a fairly low repetition rate
event. _Many_ people have reported this problem over
the years and over the past year, and all have
reported it in a 2x2 shop. When you claim, in the
face of numerous eyewitness reports, conveying that
something quite sane is often seen to happen, that
it NEVER happens and CANNOT happen, you'd better
have much superior coding skills to the ones you
display to prove your point.

It took Dylan little time to prove instead, as he
noted (somewhere in this thread) in message ID:

<86r7i82arc.fsf@strackenz.spod-central.org>

or to get past Google's mangling, with spaces
where no spaces belong:

<86r7i82arc.fsf @ strackenz.spod-central.org>

that 2x2 normal (non-vault) rooms can and do occur,
with maps demonstrating the two cases he found. It
just takes longer to find one which happens to
become a shop by chance, but there is no reason to
doubt that they happen.

>>> secondly as below.. according to code the
>>> program first checks where you are and then
>>> moves...

>> For all your vaunted bragging about C, only a
>> year less experience than mine, you seem
>> singularly inept at analyzing it. None of that
>> code was at all indicative even of how moves are
>> decided at all.

You weren't even in the correct source code file.

> I was NOT braggin SHE questioned my ability in
> said language when she obviously does not
> understand a keyword.

If that's Janis, then "she" is a "he", that's
apparently a common male Greek name [not to sweat
it, I had to ask, too; like Alexis, Janis is used to
the confusion among Anglophones not used to seeing
those used as men's names], and you more than
confirm your lack of code savvy in the two postings
I'm answering here.

>> There is code, in priest.c => move_special(...),
>> that checks that a shopkeeper is not moving into
>> the line of missile or wand fire of the PC. In a
>> shop with one dimension at least 3, that always
>> is possible as soon as the PC steps one step down
>> that direction and leaves an empty square between
>> PC and shopkeeper, and quite quickly after the PC
>> moves away, the shopkeeper will make such a move.

> ok fine , now show me where it says that a 2x2
> room is possible (other than a vault of course).

I don't have that obligation, you are the one trying
to deny the personal experience of many players.

Dylan already took the trouble to prove you wrong
[he's just that nice a guy], as noted above.

>> However, in a 2x2 room, that code won't work,
>> because there is nowhere the PC can go that
>> leaves a move the shopkeeper can make that is
>> _not_ in line of fire of the PC. So, it seems,
>> the shopkeeper just stays put.

>> The pertinent code is this:

>>> if(mtmp->isshk && avoid && uondoor) { /* perhaps we cannot avoid him */
>>> for(i=0; i<cnt; i++)
>>> if(!(info & NOTONL)) goto pick_move;
>>> avoid = FALSE;
>>> }

> Irrelevant.

Well, no, it is _not_ irrelevant, that code is
called from shk_move(...), like this:

> z = move_special(shkp,inhishop(shkp),appr,uondoor,avoid,omx,omy,gx,gy);
> if (z > 0) after_shk_move(shkp);

[Notice the value of "avoid" being passed in?]

And its returned value controls subsequent
shopkeeper behavior. More to the point, the move
_happens_ in priest.c => move_special(...) [or in
our 2x2 shop case, should happen but fails to do
so], like this:

> remove_monster(omx, omy);
> place_monster(mtmp, nix, niy);

where "mtmp" "is" the shopkeeper; hardly
"irrelevant".

> Besides that will only apply when the shopkeeper
> is avoiding you, which won't happen when he hasn't
> even been attacked (or feared, so to speak).

> <commentary snipped>

Probably you'd have been better advised to read it
and understand it, since you're _still_
misinterpreting what "avoid" means (see below); so,
I put it back to let you have another chance to do
your own homework.

>> Which reads:

>> If the monster is a shopkeeper, and the
>> shopkeeper is trying to avoid the PC, and
>> <mutter>, then check all the spaces around the
>> shopkeeper, and if one of them is empty and is
>> also not on line of fire from the PC, go pick
>> such a move. Otherwise, flag that the shopkeeper
>> isn't avoiding the PC. Which would be fine,
>> eventually, except that avoid is set back to TRUE
>> at the top of the routine each time it is called,
>> and the code further down that would otherwise
>> permit a move if the shopkeeper isn't trying to
>> avoid the PC is all disabled by other checks.

> avoid is never set to anything but false in
> move_special (3.4.3 source).

Nor did I say it was. Do you have to take pills to
be that blind? in priest.c => move_special(...),
"avoid" is an _input parameter_ to the routine. In
the case of interest, it comes from shk.c =>
shk_move(...), where it means things like "PC hasn't
stolen anything from this shopkeeper in the past"
and "PC isn't trying to sneak a pickaxe or mattock
into the shop past the shopkeeper", so in the case
we are concerned about, it comes in set TRUE at the
top of the routine in each call to priest.c =>
move_special(...), just as I said.

> besides shopkeeper is not avoiding player at all
> the point was the shopkeeper wasn't moving to
> allow the player to leave the shop when the player
> neither aggrevated the shopkeeper or tried to rob
> the shop.

"aggravated", "neither ... nor".

I'm afraid you're just going to have to swallow all
the criticism from Janis about your C skills, since
you are still entirely misinterpreting the code
despite being warned once to be more careful. The
value of "avoid" isn't "shopkeeper is running _away_
from the PC", "avoid" is "shopkeeper has no reason
to ATTACK the PC, i.e., avoids running _into_ the
PC" since attempting to move onto the opponent's
grid cell is how one does a melee attack in NetHack.

>> And as far as I can tell, as long as 2x2 shops
>> are possible, that code, with the consequences
>> that descend from it, is a bug, though perhaps
>> not one curable at that location, and the reason
>> we see the same complaint posted here so often is
>> because it is a valid complaint.

> I do not see it, don't experience it Heck I don't
> even believe said person ever was in a 2x2 shop.

And you claim that for all the others, including me,
who have reported the same experiences?

Awesome arrogance you've developed there.

You might want to work on losing it in general, not
just for the duration of this discussion, under the
circumstances that you've been proved wrong by
Dylan.

> I personally think it was posted just for the same
> reason as the water Daemon thread a while back.

I personally suggest you not quit your day job to
follow your mindreader employment option; you are no
good at it, nor would a sensible person be making
the attempt.

> I haven't seen anything from the original poster
> AT all since the original.

Thus merely documenting your bad judgement.

Usenet is profoundly not a real time medium, it is a
store and forward "read and write when you have some
free time in real life" medium, and no one is
_obliged_ to provide additional input in a time frame
to satisfy _your_ agenda. You have to live with
what you have in front of you at whatever rate it
may arrive, and not base your evaluations on lack of
further input or imagined recantations later.

[Kent being whiny snipped.]

>> Typical do-nothing day among the
>> massively-depressed crowd.

> My sympathies, you are in the States I take it
> (the doctor bit...)

I'm a retired, long term unemployed, profoundly
mentally ill, deeply impoverished US veteran. I'm
supposed to be bicycling about 1000 kilometers to
Arizona, dragging 135 kilograms of what I own behind
on a long bike trailer, and instead I'm ordered to
bed, which I refuse to do, and scheduling
appointments with a very busy and understaffed VA
hospital, with a Thai rent-a-doctorette who ignored
the problem that has now crippled me, when I reported
it to her two years ago [since our rulers see fit
both to wage war and to cut military benefits in
lockstep, to the point that they can't, among other
things, afford doctors in military uniform any more,
she's what's available].

FWIW

xanthian.



--
Posted via Mailgate.ORG Server - http://www.Mailgate.ORG
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

chuck wrote:
>
> I provide actual code from nethack as proof of my statements which you have
> yet to substantively dispute in any valid manner and you say that by doing
> some ascii art (you don't have stairways in shops...) you dispute it HAH.

You've willingly ignored that my examples have been copy/pasted from a game.
You repeatedly stated falsely that rooms are minimum 3x3. Using source code
to "prove" it is hard, but possible; you, though claiming to have done so,
didn't prove anything at all. Using a counter example is much easier; finding
one counter example can falsify a theory ("all rooms are at least 3x3") which
is based on wrong assumptions (wrong code reading/references in this case).

> Firstly you are not the person proposing the ludicrus situation in the first
> place so any reason you have to support it is inane at best,

???

I've been there and have done that (i.e. I observed what the OP observed).

> secondly since
> you seem to want to now talk about the code, which is the ONLY valid proof

No. Code is no proof. A proof might be a valid deduction from the code. You
missed the entry criterion by posting irrelevant code.

> that can be obtained EXACTLY what do you know about C?

Huh? Why do you think this is necessary, if I proved your wording wrong based
on a counter example?

(BTW, my knowledge of C is as old as the first edition K&R in my bookshelf.)

> answer me this what
> token is used to derive the address of a variable? If you don't know this
> then You should retract from this argument as not competant to have it as you
> so ignorantly suggested I do.

You are ridiculous.

Janis
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

chuck wrote:

> "Boudewijn Waijers" <kroisos@REMOVETHISWORD.home.nl> wrote in
>>
>> Don't get me wrong: I'm no source reader, and I'm taking no position in
>> whether or not 2x2 shops are possible. I'm just saying your arguments
>> aren't any more valid than other "arguments" I've read here.
>
> So you can't read C, but you say that the source code I pointed to
> doesn't prove what I say???? How's that again???

I can read C just fine, and the source code you posted (#define
ROOMOFFSET...) has no bearing on your claim. Even if it did, you didn't
even show the part of the code where the constant is used! This should be
clear to anyone who has had any programming experience at all, even if
they've never seen C before.

--
Benjamin Lewis

A small, but vocal, contingent even argues that tin is superior, but they
are held by most to be the lunatic fringe of Foil Deflector Beanie science.
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.nethack (More info?)

Dylan O'Donnell wrote:

> ... the simplest thing to do here (rather than try
> and slog through how this translates to size when created) is to
> minimise these rn2()s at 0 by removing them, recompile, and see what a
> level looks like:
> [snip]
>
> I see a couple of 2x2s there. All I've done is load the dice, not
> change the rules; that's a perfectly possible (but staggeringly
> unlikely) level to get in a real game.

Actually, those are 2x3s. Which are not all that rare; I found two on a
level a couple of times in wizmode testing.
 

Chuck

Distinguished
Nov 19, 2001
1,479
0
19,280
Archived from groups: rec.games.roguelike.nethack (More info?)

"Boudewijn Waijers" <kroisos@REMOVETHISWORD.home.nl> wrote in
news:d1os55$fem$1@news3.zwoll1.ov.home.nl:

> chuck wrote:
>> "Kent Paul Dolan" <xanthian@well.com> wrote:
>>> chuck wrote:
>
>>>> First, all rooms other that Vaults are 3x3 as
>>>> least,
>
>>> Why do you write such nonsense? Anyone who plays
>>> much NetHack has found themselves in a 2x2 shop
>>> more than once; me within the past one week.
>
>> I have yet to see a 2x2 room SIR.
>
> The fact that you haven't seen any doesn't prove anything, except,
> perhaps, that you haven't been playing long enough to have encountered
> one.

I've been playing almost as long as Ive been running linux i.e since the mid
1990's although in total truth I would say I have been playing it on a weekly
basis only for the past 5 years or so.

>> I was NOT braggin SHE questioned my ability in said language when she
>> obviously does not understand a keyword .
>
> Supposing you're talking about Janis Papanagnou, she's a HE, as he's
> stated over and over again in this newsgroup.

Ok, He. Sorry Janis. Janice is Most assuredly Female Name in English.

>
> Don't get me wrong: I'm no source reader, and I'm taking no position in
> whether or not 2x2 shops are possible. I'm just saying your arguments
> aren't any more valid than other "arguments" I've read here.

So you can't read C, but you say that the source code I pointed to doesn't
prove what I say???? How's that again???




--
lisp LIVES!!!
 

Chuck

Distinguished
Nov 19, 2001
1,479
0
19,280
Archived from groups: rec.games.roguelike.nethack (More info?)

David Damerell <damerell@chiark.greenend.org.uk> wrote in
news:IUC*MuaKq@news.chiark.greenend.org.uk:

>
> Message-ID: <IUC*MuaKq@news.chiark.greenend.org.uk>
>
I didn't make that argument nasty that was Janis' doing



--
lisp LIVES!!!