예제 #1
0
def main(input):
    input = int(input)
    if (input == 0):
        #leveledlist is the list of riddles that fit the difficulty parameter
        leveledlist = riddlelist
    else:
        leveledlist = []
        for riddle in riddlelist:
            if (int(riddle[0]) == input):
                leveledlist.append(riddle)
                leveledlist.append(riddle)
                leveledlist.append(riddle)
            if (abs(int(riddle[0]) - input) == 0):
                leveledlist.append(riddle)
                #Riddles with difficulties +- 1  the stated value can be picked but they are a 1/3 as likely.

    leveledlist = (hb.rotate(leveledlist))
    output = {}
    i = np.random.randint(0, len(leveledlist[0]))
    output["riddle"] = leveledlist[1][i]
    output["answer"] = leveledlist[2][i]

    return (output)
예제 #2
0
def main(difficulty=0):

    objectivelist = hb.rotate(hb.arrayreader("missionobjectives.txt"))
    objectivelist[1] = [float(i) for i in objectivelist[1]]

    #The complications has four rows, name, relative probability of expected complication, relative probability of unexpected complication, reward multiplier .
    complicationlist = hb.rotate(hb.arrayreader("missioncomplications.txt"))
    j = 1
    while j < 3:
        complicationlist[j] = [float(i) for i in complicationlist[j]]
        j += 1

    if difficulty == 0:
        difficulty = round(np.random.triangular(0.6, 0.6, 10.5))
    reward = random.randint(8, 12) * 4**difficulty * 10

    objectivenum = 1
    objectivenum += 1 + round((random.random() * difficulty / 3))

    objectives = []
    while len(objectives) < objectivenum:
        objectivelist[1] = hb.normalise(objectivelist[1])
        dumb = np.random.choice(objectivelist[0], p=objectivelist[1])
        index = objectivelist[0].index(dumb)
        objectives.append(dumb)
        objectivelist = hb.arraycleaner(objectivelist, index)

    opencompicationnum = random.randint(0, 2) + round(
        (random.random() * difficulty / 4))

    opencomplications = []
    while len(opencomplications) < opencompicationnum:
        complicationlist[1] = hb.normalise(complicationlist[1])
        dumb = np.random.choice(complicationlist[0], p=complicationlist[1])
        index = complicationlist[0].index(dumb)
        opencomplications.append(dumb)
        reward *= float(complicationlist[3][index])
        complicationlist = hb.arraycleaner(complicationlist, index)

    secretcompicationnum = random.randint(0, 2) + round(
        (random.random() * difficulty / 4))

    secretcomplications = []
    while len(secretcomplications) < secretcompicationnum:
        complicationlist[2] = hb.normalise(complicationlist[2])
        dumb = np.random.choice(complicationlist[0], p=complicationlist[2])
        index = complicationlist[0].index(dumb)
        secretcomplications.append(dumb)
        reward *= float(complicationlist[3][index])
        complicationlist = hb.arraycleaner(complicationlist, index)

    reward = hb.sigfig(reward, 2)

    output = {}
    output["difficulty"] = difficulty
    output["objectives"] = objectives
    output["reward"] = reward
    output["opencomplications"] = opencomplications
    output["secretcomplications"] = secretcomplications

    return (output)
    "Academia", "Artisan", "Bourgeoisie", "Common", "Law", "Magic", "Nature",
    "Outlaw", "Performer", "Religion", "Warrior"
]

with open("NPCcharacteristics.txt", encoding='latin-1') as f:
    characteristiclist = f.read().splitlines()

with open("medievalNPCcharacteristics.txt", encoding='latin-1') as f:
    characteristiclist += f.read().splitlines()

with open("NPCtraits.txt", encoding='latin-1') as f:
    traitlist = f.read().splitlines()

occupationlist = (hb.arrayreader("medievalNPCoccupation.txt"))
occupationlist += (hb.arrayreader("fantasyNPCoccupation.txt"))
occupationlist = hb.rotate(occupationlist)

with open("NPCsecrets.txt", encoding='latin-1') as f:
    secretlist = f.read().splitlines()

with open("fantasyNPCsecrets.txt", encoding='latin-1') as f:
    secretlist += f.read().splitlines()

with open("medievalNPCsecrets.txt", encoding='latin-1') as f:
    secretlist += f.read().splitlines()

with open("femalename.txt", encoding='latin-1') as f:
    femalenamelist = f.read().splitlines()

with open("medievalfemalename.txt", encoding='latin-1') as f:
    femalenamelist += f.read().splitlines()
예제 #4
0
import numpy as np
import innnamegenerator as name
import homebrew as hb

odditylist = (hb.arrayreader("innoddity.txt"))
odditylist = (hb.rotate(odditylist))

with open("innspeciality.txt") as f:
    specialtylist = f.read().splitlines()

with open("innsecret.txt") as f:
    secretlist = f.read().splitlines()


def main():
    output = {}

    output["name"] = name.main()
    output["oddity"] = np.random.choice(odditylist[0])
    output["specialty"] = np.random.choice(specialtylist)
    if np.random.random() < 0.85:
        output["secret"] = "The beer is watered down"
    else:
        output["secret"] = np.random.choice(secretlist)

    return (output)
예제 #5
0
import discord
from discord.ext import commands
import interface
import homebrew as hb

with open("token.txt", encoding='latin-1') as f:
    TOKEN = f.read()

with open("discordid.txt", encoding='latin-1') as f:
    idnum = f.read()

prefixes = hb.rotate(hb.arrayreader("prefixes.txt"))
prefixes[0] = [int(i) for i in prefixes[0]]

with open("helptext.txt", encoding='latin-1') as f:
    helptext = f.read().splitlines()

with open("itemlisttext.txt", encoding='latin-1') as f:
    itemlisttext = f.read().splitlines()


def prefix(bot, message):  # Function finds the prefix ussed by the guild

    prefix = "!"
    if isinstance(message.channel, discord.abc.GuildChannel):
        for n in range(len(prefixes[0])):
            if int(prefixes[0][n - 1]) == message.guild.id:
                prefix = int(prefixes[0][n - 1])
                prefix = str(prefixes[1][n - 1])

    return (prefix)