Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[PATCH] New monster 'millennium bug'

3 views
Skip to first unread message

Scott Bigham

unread,
Jan 18, 2001, 7:57:24 PM1/18/01
to
I can't believe no one has done this one yet (at least not that I can
find); I would have thought it would be an obvious gag. Such as it is,
then, I give you... the millennium bug.

I'm posting this at least in part to solicit suggestions. I haven't
really decided how tough the millenium bug should be, and what
properties it should have. In this first version, it's more or less a
clone of the grid bug, just a bit tougher, and with the obligatory
special attack. I thought I'd see if anyone thought it should be really
nasty, or resistant to stuff, or anything like that. And of course,
more and better YAFMs are always welcome. ;)

-sbigham
==
--- src/monst.c.orig Thu Aug 3 16:51:43 2000
+++ src/monst.c Thu Jan 18 17:54:35 2001
@@ -1023,6 +1023,12 @@
NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK),
SIZ(15, 10, 0, MS_BUZZ, MZ_TINY), MR_ELEC|MR_POISON, 0,
M1_ANIMAL, M2_HOSTILE, M3_INFRAVISIBLE, CLR_MAGENTA),
+ MON("millennium bug", S_XAN,
+ LVL(1, 12, 9, 0, 0), (G_GENO|G_SGROUP|G_NOCORPSE|3),
+ A(ATTK(AT_BITE, AD_Y2K, 1, 4),
+ NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK),
+ SIZ(15, 10, 0, MS_Y2K, MZ_TINY), MR_ELEC|MR_POISON, 0,
+ M1_ANIMAL, M2_HOSTILE, M3_INFRAVISIBLE, CLR_BRIGHT_GREEN),
MON("xan", S_XAN,
LVL(7, 18, -4, 0, 0), (G_GENO|3),
A(ATTK(AT_STNG, AD_LEGS, 1, 4),
--- src/mhitu.c.orig Thu Dec 21 22:06:05 2000
+++ src/mhitu.c Thu Jan 18 00:07:48 2001
@@ -1438,6 +1438,18 @@
}
}
break;
+ case AD_Y2K:
+ hitmsg(mtmp, mattk);
+ if (uncancelled) {
+ if (rn2(2))
+ pline("Suddenly, the dungeon collapses (well, not really).");
+ else
+ You("suddenly feel as though it's 1900!");
+ } else {
+ You("are briefly surrounded by a cloud of media hype.");
+ dmg = 0;
+ }
+ break;
default: dmg = 0;
break;
}
--- src/mhitm.c.orig Thu Aug 3 16:00:42 2000
+++ src/mhitm.c Thu Jan 18 00:08:37 2001
@@ -573,6 +573,7 @@
case AD_WERE:
case AD_HEAL:
case AD_LEGS:
+ case AD_Y2K:
case AD_PHYS:
if (mattk->aatyp == AT_KICK && thick_skinned(pd))
tmp = 0;
--- src/uhitm.c.orig Sat Jan 13 13:14:05 2001
+++ src/uhitm.c Thu Jan 18 00:10:21 2001
@@ -1133,6 +1133,7 @@
case AD_WERE: /* no effect on monsters */
case AD_HEAL:
case AD_LEGS:
+ case AD_Y2K:
case AD_PHYS:
if(mattk->aatyp == AT_WEAP) {
if(uwep) tmp = 0;
--- src/mon.c.orig Thu Aug 3 15:30:14 2000
+++ src/mon.c Thu Jan 18 18:00:23 2001
@@ -1351,6 +1351,12 @@
s_suffix(Monnam(mon)));
return FALSE;
}
+ if (mdat == &mons[PM_MILLENNIUM_BUG]) {
+ if (cansee(mon->mx, mon->my))
+ pline("%s evaporates in a cloud of media hype.",
+ Monnam(mon));
+ return FALSE;
+ }

/* Gas spores always explode upon death */
for(i = 0; i < NATTK; i++) {
--- src/sounds.c.orig Thu Aug 3 15:31:44 2000
+++ src/sounds.c Thu Jan 18 00:14:13 2001
@@ -791,6 +791,9 @@
pline_msg = "is busy reading a copy of Sandman #8.";
else verbl_msg = "Who do you think you are, War?";
break;
+ case MS_Y2K:
+ verbl_msg = "A)bort, R)etry, F)ail?";
+ break;
}

if (pline_msg) pline("%s %s", Monnam(mtmp), pline_msg);
--- include/monattk.h.orig Mon Dec 27 11:58:37 1999
+++ include/monattk.h Wed Jan 17 23:56:44 2001
@@ -76,6 +76,7 @@
#define AD_SLIM 40 /* turns you into green slime */
#define AD_ENCH 41 /* remove enchantment (disenchanter) */
#define AD_CORRODE 42 /* corrode armor (black pudding) */
+#define AD_Y2K 43 /* Y2K attack (millennium bug) */

#define AD_CLRC 240 /* random clerical spell */
#define AD_SPEL 241 /* random magic spell */
--- include/monflag.h.orig Sun Nov 14 21:40:00 1999
+++ include/monflag.h Wed Jan 17 23:57:44 2001
@@ -48,6 +48,7 @@
#define MS_SPELL 37 /* spellcaster not matching any of the above */
#define MS_WERE 38 /* lycanthrope in human form */
#define MS_BOAST 39 /* giants */
+#define MS_Y2K 40 /* Y2K-related noises (millennium bug) */


#define MR_FIRE 0x01 /* resists fire */
--- win/share/monsters.txt.orig Thu Oct 21 17:31:36 1999
+++ win/share/monsters.txt Wed Jan 17 23:52:06 2001
@@ -2256,6 +2256,25 @@
MMGMMAAAAAAMMMMM
MMMMMMAAMAMMMMMM
}
+# tile 4269 (millennium bug)
+{
+ MMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMM
+ MMMMMMMMMMIIMMMM
+ MMMMMMMMMILIIMMM
+ MMMMMMMMMIIIIMMM
+ MMMMMIIMMIIIMMMM
+ MMMIIMMIIMMMAAAM
+ MMMMMILIIIMAAAAM
+ MMMMILIIMMIAAAAM
+ NNNILIIMIAAAAAMM
+ NANIIIIMAIAAMMMM
+ NNNIINNNAAAMAMMM
+ MMIIINANAAMAMAMM
+ MIIIANNNAAMMAMMM
+ MMIMMAAAAAAMMMMM
+ MMMMMMAAMAMMMMMM
+}
# tile 118 (xan)
{
MMMMMMMMMMMMMMMM

elpu...@my-deja.com

unread,
Jan 18, 2001, 10:22:13 PM1/18/01
to
In article <ThM96.1669$Nj6.2...@paloalto-snr1.gtei.net>,

d...@killerbunnies.org (Scott Bigham) wrote:
> I'm posting this at least in part to solicit suggestions. I haven't
> really decided how tough the millenium bug should be, and what

Hmm one and only one could be generated on turn 1999.
Special powers.. it might severly mess with your timeouts.

This reminds me of an idea that I had which I don't quite know how to
implement.. an artifact power. When you #invoke it once, it saves the
game. A second #invoke (or an apply or whatever) will restore the game
back to that saved point.. In-game savescumming. Of course there would
be hefty penalties/problems with using it, it would be in some ways less
useful than an amulet of life saving.. anyway a way of "going back in
time."

Of course we all know the REAL millenium bug comes on turn 2001.

--
ktb


Sent via Deja.com
http://www.deja.com/

Ray Chason

unread,
Jan 18, 2001, 11:33:47 PM1/18/01
to
d...@killerbunnies.org (Scott Bigham) wrote:

>I can't believe no one has done this one yet (at least not that I can
>find); I would have thought it would be an obvious gag. Such as it is,
>then, I give you... the millennium bug.
>
>I'm posting this at least in part to solicit suggestions. I haven't
>really decided how tough the millenium bug should be, and what
>properties it should have. In this first version, it's more or less a
>clone of the grid bug, just a bit tougher, and with the obligatory
>special attack. I thought I'd see if anyone thought it should be really
>nasty, or resistant to stuff, or anything like that. And of course,
>more and better YAFMs are always welcome. ;)

"The millenium bug hits! You crash to the floor!" (as when levitating
over a sink)

(Problem: this could be an instakill in some circumstances.)


--
--------------===============<[ Ray Chason ]>===============--------------
PGP public key at http://www.smart.net/~rchason/pubkey.asc
Delenda est Windoze

Jeremiah DeWitt Weiner

unread,
Jan 19, 2001, 5:03:42 PM1/19/01
to
Scott Bigham <d...@killerbunnies.org> wrote:
> I can't believe no one has done this one yet (at least not that I can
> find); I would have thought it would be an obvious gag. Such as it is,
> then, I give you... the millennium bug.

There is already a Y2K bug in Nethack - it's one of the hallucination
monsters (in mon.c, I think?) Nonetheless, your idea is pretty clever.
The auto-generation on turn 1999 is also pretty good - though perhaps they
should start getting generated in 1995, and then get generated with increasing
frequency through 1999. (Or maybe later. I recently saw a website which
claimed the date was January 14, 101.)

JDW


Pat Rankin

unread,
Jan 19, 2001, 10:40:00 PM1/19/01
to
In article <ThM96.1669$Nj6.2...@paloalto-snr1.gtei.net>,\
d...@killerbunnies.org (Scott Bigham) writes...

> I can't believe no one has done this one yet (at least not that I can
> find); I would have thought it would be an obvious gag. Such as it is,
> then, I give you... the millennium bug.

Too late. There's already a "Y2K bug" on the hallucinatory
monsters list. (Added in 3.3.1; it wasn't present in 3.3.0's list.)

0 new messages