Add calamity and events. - annna - Annna the nice friendly bot.
HTML git clone git://bitreich.org/annna/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/annna/
DIR Log
DIR Files
DIR Refs
DIR Tags
DIR README
---
DIR commit 26d0d4180a7a588d7c5f470fb519e87bfc12c969
DIR parent 7263fdee1b91f2a3db42206e749fcaba85721ae7
HTML Author: Annna Robert-Houdin <annna@bitreich.org>
Date: Wed, 30 Aug 2023 14:08:03 +0200
Add calamity and events.
Diffstat:
A modules/idlerpg/events.txt | 47 +++++++++++++++++++++++++++++++
M modules/idlerpg/idlerpg-channel-se… | 28 ++++++++++++++++++++++------
2 files changed, 69 insertions(+), 6 deletions(-)
---
DIR diff --git a/modules/idlerpg/events.txt b/modules/idlerpg/events.txt
@@ -0,0 +1,47 @@
+%s fell into a hole at FOSDEM
+%s bit their tongue while listening to a Poettering talk
+%s set themself on fire after reading the XMPP RFC
+%s used a MacBook
+%s lost their mind on XML
+%s died, temporarily while waiting for Windows to boot
+%s was caught in a terrible snowstorm wardriving
+%s EXPLODED, somewhat while trying to understand the boost library
+%s got knifed in a dark alley with a soldering iron
+%s got turned INSIDE OUT by quinq, practically
+%s ate a very disagreeable Apple, getting a terrible case of heartburn
+%s met up with a Microsoft hitman for not paying his license fees
+%s has fallen ill with the SysTemD
+%s was struck by Apple lightning
+%s was attacked by a rabid Gentoo Larry
+%s was attacked by a rabid BSD devil
+%s was set on fire by emacs(1)
+%s was decapitated, temporarily through a Redhat
+%s was tipped by a #polish-cow
+%s was bucked from a #fuck-my-horses
+%s was bitten by a moose in the Linux kernel
+%s was sat on by a giant C++ codebase
+%s ate a plate of discounted, day-old sushi made from Puffy
+%s got harassed by peer (the one from ICMP)
+%s got lost in web
+%s misplaced his password
+%s broke his Google Glasses
+%s lost his Google Glasses
+%s walked face-first into a merkle tree
+%s found a pair of memory/RAM
+%s caught a unicorn programming language
+%s discovered a secret, underground passage to gopherspace
+%s was taught to run quickly by a secret tribe of C developer that know how to, among other things, run quickly
+%s discovered triple-caffeinated coffee
+%s grew an extra leg from DNA code experiments
+%s was visited by a very pretty nymph and had sex
+%s found kitty-cat
+%s learned Perl
+%s found an exploit in the IdleRPG code
+%s bought a faster computer
+%s bribed the local IdleRPG administrator
+%s stopped using dial-up
+%s got fiber internet access
+%s lost wifi connection
+%s was bitten by a radioactive GNU
+%s hit it off with a drunk furry chick named Jenny
+%s was accepted into Pi Beta Euler Epsilon DarkFi club
DIR diff --git a/modules/idlerpg/idlerpg-channel-service.py b/modules/idlerpg/idlerpg-channel-service.py
@@ -109,6 +109,7 @@ def main(args):
shields = readin_dictfile("%s/shields.txt" % (basepath))
weapons = readin_dictfile("%s/weapons.txt" % (basepath))
quests = readin_dictfile("%s/quests.txt" % (basepath))
+ events = readin_dictfile("%s/events.txt" % (basepath))
hackers = readin_dictfile("%s/hackers.txt" % (basepath))
for hacker in hackers.keys():
@@ -134,6 +135,7 @@ def main(args):
def calamity(hackers, hacker):
calamity_type = random.randint(1, 10)
+ print("calamity_type = %d" % (calamity_type))
if calamity_type == 1:
change_type = random.randint(1, 4)
if change_type == 1:
@@ -143,7 +145,7 @@ def main(args):
hackers[hacker][1] = new_class
say(chaninpath, "Due to a bit flip during a solar flare, " \
"%s's hacker class changed to %s." \
- % (hacker, hackers[hacker][1])
+ % (hacker, hackers[hacker][1]))
elif change_type == 2:
new_hardware = None
while new_hardware != hackers[hacker][2]:
@@ -151,23 +153,30 @@ def main(args):
hackers[hacker][2] = new_hardware
say(chaninpath, "It is %s's birthday. " \
"%s's hardware changed to %s." \
- % (hacker, hackers[hacker][2])
+ % (hacker, hackers[hacker][2]))
elif change_type == 3:
new_shield = None
while new_shield != hackers[hacker][3]:
new_shield = random.choice(list(shields.keys()))
hackers[hacker][3] = new_shield
- say(chaninpath, "%s slipped. " \
+ say(chaninpath, "%s fell over a Windows 95 CD. " \
"%s's shield changed to %s." \
- % (hacker, hackers[hacker][3])
+ % (hacker, hackers[hacker][3]))
elif change_type == 4:
new_weapon = None
while new_weapon != hackers[hacker][4]:
new_weapon = random.choice(list(weapons.keys()))
hackers[hacker][4] = new_weapon
- say(chaninpath, "%s slipped. " \
+ say(chaninpath, "%s had to reinstall his OS. " \
"%s's weapon changed to %s." \
- % (hacker, hackers[hacker][4])
+ % (hacker, hackers[hacker][4]))
+ else:
+ event = random.choice(list(events.keys()))
+ boost = random.randint(-10, 10) * 100
+ hackers[hacker][0] += boost
+ say(chaninpath, "%s! This caused his idle time to " \
+ "change by %d to %d." \
+ % (event % (hacker), boost, hackers[hacker][0]))
def hand_of_rms(hackers, hacker):
win = random.randint(0, 5)
@@ -280,6 +289,8 @@ def main(args):
go_on_quest(hackers, questhackers)
elif random.randint(1, 65535) < 5 and len(hackers) > 1:
hand_of_rms(random.choice(list(hackers.keys())))
+ elif random.randint(1, 65535) < 10 and len(hackers) > 1:
+ calamity(random.choice(list(hackers.keys())))
writeout_dictfile("%s/hackers.txt" % (basepath), hackers)
continue
@@ -334,6 +345,11 @@ def main(args):
hand_of_rms(hackers, cmdargs[0])
else:
hand_of_rms(hackers, random.choice(list(hackers.keys())))
+ elif cmd == "!calamity":
+ if len(cmdargs) > 0 and cmdargs[0] in hackers:
+ calamity(hackers, cmdargs[0])
+ else:
+ calamity(hackers, random.choice(list(hackers.keys())))
elif user == "-!-":
(hacker, text) = remain.split(" ", 1)