Things along these lines:
please continue as above, starting at 22
22: {
'6th Level': 'Spiritwrack',
'7th Level': None,
'8th Level': None,
'9th Level': None
},
23: {
'6th Level': 'Stone To Flesh',
'7th Level': None,
'8th Level': None,
'9th Level': None
},
24: {
'6th Level': 'Tenser's Transformation',
'7th Level': None,
'8th Level': None,
'9th Level': None
}
}
please continue as above, starting at 17
Sure, here is the python dictionary for the table starting at level 17:
python
Copy code
spells = {
6: {
'17': 'Otiluke\'s Freezing Sphere',
'18': 'Part Water',
'19': 'Project Image',
'20': 'Reincarnation',
'21': 'Repulsion',
'22': 'Spiritwrack',
'23': 'Stone To Flesh',
'24': 'Tenser\'s Transformation'
},
7: {
},
8: {
},
9: {
},
}
Please note that the numbers in the outermost dictionary are the spell level and the numbers in the innermost dictionaries are the spell numbers.
can you give me the full 7th 8th and 9th levels as above?
Sure, here is the full python dictionary for the 7th, 8th, and 9th levels:
python
Copy code
{
7th Level: {
'1': 'Anti-Magic Shell',
'2': 'Bigby's Grasping Hand',
'3': 'Bigby's Forceful Hand',
'4': 'Control Weather',
'5': 'Death Spell',
'6': 'Disintegrate',
'7': 'Enchant An Item',
'8': 'Extension III',
'9': 'Geas',
'10': 'Glassee',
'11': 'Globe Of Invulnerability',
'12': 'Guards And Wards',
'13': 'Invisible Stalker',
'14': 'Legend Lore',
'15': 'Lower Water',
'16': 'Monster Summoning IV',
'17': 'Move Earth',
'18': 'Otiluke's Freezing Sphere',
'19': 'Part Water',
'20': 'Project Image',
'21': 'Reincarnation',
'22': 'Repulsion',
'23': 'Spiritwrack',
'24': 'Stone To Flesh',
'25': 'Tenser's Transformation'
},
8th Level: {
'1': 'Antipathy/Sympathy',
'2': 'Cacodemon',
'3': 'Bigby's Clenched Fist',
'4': 'Bigby's Crushing Hand',
'5': 'Charm Plants',
'6': 'Clone',
'7': '
please finish the table from 3 responses ago that ended at 21: {
'Move Earth': '',
'Vanish': '',
'Trap The Soul': '',
},
22: {
'Otiluke's Freezing Sphere': '',
'Part Water': '',
'Project Image': '',
'Reincarnation': '',
'Repulsion': '',
'Spiritwrack': '',
'Stone To Flesh': '',
'Tenser's Transformation': '',
},
23: {
'Anti-Magic Shell': 'Bigby's Grasping Hand',
'Bigby's Forceful Hand': 'Cacodemon',
'Control Weather': 'Charm Plants',
'Death Spell': 'Delayed Blast Fireball',
'Disintegrate': "Drawmij's Instant Summons",
'Enchant An Item': 'Duo-Dimension',
'Extension III': 'Limited Wish',
'Geas': 'Mass Invisibility',
'Glassee': 'Monster Summoning V',
'Globe Of Invulnerability': "Mordenkainen's Sword",
},
The below, for if I want to rewrite to lazily add to my generic shared host here.
convert this python function to perl def random_check():
pc_dict = {}
pc = roll_dice(1,20)
if pc <= 2:
pc_dict['direction'] = 'ahead'
pc_dict['check'] = 6
elif pc >= 3 and pc <= 5:
pc_dict['direction'] = 'exit'
pc_dict['check'] = 6
elif pc >= 6 and pc <= 10:
pc_dict['direction'] = 'side'
pc_dict['check'] = 3
elif pc >= 11 and pc <= 13:
pc_dict['direction'] = 'turn'
pc_dict['check'] = 3
elif pc >= 14 and pc <= 16:
pc_dict['direction'] = 'room'
pc_dict['check'] = 3
elif pc == 17:
pc_dict['direction'] = 'level'
pc_dict['check'] = 'up_down'
if LEVEL == "N": #make this what you like or could be config
pc_dict['direction'] = 'room'
pc_dict['check'] = 3
elif pc == 18:
pc_dict['direction'] = 'stop'
pc_dict['check'] = 'spy_things'
elif pc == 19:
pc_dict['direction'] = 'bad_things'
pc_dict['check'] = 3
elif pc == 20:
pc_dict['direction'] = 'random_encounter'
pc_dict['check'] = 'roll_again'
if VERBOSITY:
print("RANDOM_CHECK",pc, pc_dict['direction'])
#test purposes
#pc_dict['direction'] = 'ahead'
return pc_dict
sub random_check {
my $pc_hash = {};
my $pc = roll_dice(1,20);
if ($pc <= 2) {
$pc_hash->{'direction'} = 'ahead';
$pc_hash->{'check'} = 6;
} elsif ($pc >= 3 && $pc <= 5) {
$pc_hash->{'direction'} = 'exit';
$pc_hash->{'check'} = 6;
} elsif ($pc >= 6 && $pc <= 10) {
$pc_hash->{'direction'} = 'side';
$pc_hash->{'check'} = 3;
} elsif ($pc >= 11 && $pc <= 13) {
$pc_hash->{'direction'} = 'turn';
$pc_hash->{'check'} = 3;
} elsif ($pc >= 14 && $pc <= 16) {
$pc_hash->{'direction'} = 'room';
$pc_hash->{'check'} = 3;
} elsif ($pc == 17) {
$pc_hash->{'direction'} = 'level';
$pc_hash->{'check'} = 'up_down';
if ($LEVEL eq "N") {
$pc_hash->{'direction'} = 'room';
$pc_hash->{'check'} = 3;
}
} elsif ($pc == 18) {
$pc_hash->{'direction'} = 'stop';
$pc_hash->{'check'} = 'spy_things';
} elsif ($pc == 19) {
$pc_hash->{'direction'} = 'bad_things';
$pc_hash->{'check'} = 3;
} elsif ($pc == 20) {
$pc_hash->{'direction'} = 'random_encounter';
$pc_hash->{'check'} = 'roll_again';
}
if ($VERBOSITY) {
print "RANDOM_CHECK $pc $pc_hash->{'direction'}\n";
}
return $pc_hash;
}
I had already done monsters before I thought of this - and they were standard mostly, so a parser did all 10 levels reasonbly well.
Did magic items and spells with ChatGPT assistance. Possibly not lots and lots quicker - but easier on the fingers and wrists.