def Inaugurate(self, character): skill = character.Cylax_Tech[self.Name] Cost = eg.Cylax_Cost(self.Value) Checker = eg.Cylax_Able(character, self.Value) Checker.Check() if (Checker.Final is True): character.Damage[3] = character.Damage[3] + Cost.Result character.Cylax_Value = self.Value if skill == 1: Cal_i = eg.Minner(0, character.Cylaxian[0], 30) Check = rd.randint(Cal_i, 3) if Check < 2: print("You fail to inaugurate", self.Name) else: skill_ii = character.Cylaxian[0] * character.Cylax_Tech[ self.Name] print("You inaugurate", self.Name) print( "You get", skill_ii / 2, "additional DR for", 1 + character.Cylax_Tech[self.Name], "seconds. You can't make an action until the beginning of your next turn." ) if skill == 2: Cal_i = eg.Minner(0, character.Cylaxian[0], 20) Check = rd.randint(Cal_i, 2) if Check < 1: print("You fail to inaugurate", self.Name) else: skill_ii = character.Cylaxian[0] * character.Cylax_Tech[ self.Name] print("You inaugurate", self.Name) print( "You get", skill_ii / 2, "additional DR for", 1 + character.Cylax_Tech[self.Name], "seconds. You can't make an action until the beginning of your next turn." ) if skill == 3: skill_ii = character.Cylaxian[0] * character.Cylax_Tech[ self.Name] print("You inaugurate", self.Name) print( "You get", skill_ii / 2, "additional DR for", 1 + character.Cylax_Tech[self.Name], "seconds. You can't make an action until the beginning of your next turn." ) else: print( "Error: Not a valued skill level. Needs to match the character's skill on their character sheet at self.Cylax_Tech," ) print("ranging from 1 to 3.") else: print("Unable to inaugurate as your bit state is", character.Cylax_Value, "and", self.Name, "is", self.Value, ".")
def Inaugurate(self, character): skill = character.Cylax_Tech[self.Name] Cost = eg.Cylax_Cost(self.Value) Checker = eg.Cylax_Able(character, self.Value) Checker.Check() if (Checker.Final is True): character.Damage[3] = character.Damage[ 3] + Cost.Result ### equal to the number of 1s in the binary. character.Cylax_Value = self.Value if skill == 1: Cal_i = eg.Minner(0, character.Cylaxian[0], 30) Check = rd.randint(Cal_i, 3) if Check < 2: print("You fail to inaugurate", self.Name) else: skill_ii = character.Cylaxian[0] + character.Cylax_Tech[ self.Name] print("You inaugurate", self.Name) print( "You get", skill_ii, "ST for 1 second and you can only make one action before the beginning of your next turn." ) if skill == 2: Cal_i = eg.Minner(0, character.Cylaxian[0], 20) Check = rd.randint(Cal_i, 2) if Check < 1: print("You fail to inaugurate", self.Name) else: skill_ii = character.Cylaxian[0] + character.Cylax_Tech[ self.Name] print("You inaugurate", self.Name) print( "You get", skill_ii, "ST for 1 second and you can only make one action before the beginning of your next turn." ) if skill == 3: skill_ii = character.Cylaxian[0] + character.Cylax_Tech[ self.Name] print("You inaugurate", self.Name) print( "You get", skill_ii, "ST for 1 second and you can only make one action before the beginning of your next turn." ) else: print( "Error: Not a valued skill level. Needs to match the character's skill on their character sheet at self.Cylax_Tech," ) print("ranging from 1 to 3.") else: print("Unable to inaugurate as your bit state is", character.Cylax_Value, "and", self.Name, "is", self.Value, ".")
def Inaugurate(self, character): skill = character.Cylax_Tech[self.Name] Cost = eg.Cylax_Cost(self.Value) Checker = eg.Cylax_Able(character, self.Value) Checker.Check() if (Checker.Final is True): character.Damage[3] = character.Damage[ 3] + Cost.Result ### equal to the number of 1s in the binary. character.Cylax_Value = self.Value if skill == 1: Cal_i = eg.Minner(0, character.Cylaxian[0], 30) Check = rd.randint(Cal_i, 3) if Check < 2: print("You fail to inaugurate", self.Name) else: skill_ii = character.Cylaxian[0] * character.Cylax_Tech[ self.Name] print("You inaugurate", self.Name) print("Create a stream of fire at an area of up to", skill_ii / 45, "meters^2, at up to", (skill_ii / 2) + 590, "temperture.") if skill == 2: Cal_i = eg.Minner(0, character.Cylaxian[0], 20) Check = rd.randint(Cal_i, 2) if Check < 1: print("You fail to inaugurate", self.Name) else: skill_ii = character.Cylaxian[0] * character.Cylax_Tech[ self.Name] print("You inaugurate", self.Name) print("Create a stream of fire at an area of up to", skill_ii / 30, "meters^2, at up to", (skill_ii / 2) + 590, "temperture.") if skill == 3: skill_ii = character.Cylaxian[0] * character.Cylax_Tech[ self.Name] print("You inaugurate", self.Name) print("Create a stream of fire at an area of up to", skill_ii / 15, "meters^2, at up to", (skill_ii / 2) + 590, "temperture.") else: print( "Error: Not a valued skill level. Needs to match the character's skill on their character sheet at self.Cylax_Tech," ) print("ranging from 1 to 3.") else: print("Unable to inaugurate as your bit state is", character.Cylax_Value, "and", self.Name, "is", self.Value, ".")
def Inaugurate(self, character, target): skill = character.Cylax_Tech[self.Name] Cost = eg.Cylax_Cost(self.Value) Checker = eg.Cylax_Able(character, self.Value) Checker.Check() if (Checker.Final is True): character.Damage[3] = character.Damage[ 3] + Cost.Result ### equal to the number of 1s in the binary. character.Cylax_Value = self.Value if skill == 1: Cal_i = eg.Minner(0, character.Cylaxian[0], 30) Check = rd.randint(Cal_i, 3) if Check < 2: print("You fail to inaugurate", self.Name) else: skill_ii = character.Cylaxian[0] * character.Cylax_Tech[ self.Name] print("You inaugurate", self.Name) print("You heal the target for", skill_ii / 3, "HP.") target.Damage[0] = target.Damage[0] - skill_ii / 3 if skill == 2: Cal_i = eg.Minner(0, character.Cylaxian[0], 20) Check = rd.randint(Cal_i, 2) if Check < 1: print("You fail to inaugurate", self.Name) else: skill_ii = character.Cylaxian[0] * character.Cylax_Tech[ self.Name] print("You inaugurate", self.Name) print("You heal the target for", skill_ii / 2, "HP.") target.Damage[0] = target.Damage[0] - skill_ii / 2 if skill == 3: skill_ii = character.Cylaxian[0] * character.Cylax_Tech[ self.Name] print("You heal the target for", skill_ii, "HP.") target.Damage[0] = target.Damage[0] - skill_ii else: print( "Error: Not a valued skill level. Needs to match the character's skill on their character sheet at self.Cylax_Tech," ) print("ranging from 1 to 3.") else: print("Unable to inaugurate as your bit state is", character.Cylax_Value, "and", self.Name, "is", self.Value, ".")
def __init__(self, weapon, user): Character = user Weapon = weapon ### Insert Weapon here Cal_i = eg.Minner((Character.Melee_Weapon[0]/100) + 0.65, 0.65, 1.25) Cal_ii = eg.Minner(Weapon.Weight, 1, Weapon.Weight) self.Name = "Stab" ### Stats self.Harm = ((Character.ST/Cal_ii.result + (Character.DX/1.5))/2) * 2 * Weapon.Harm_Mod self.HarmType = "" self.Inflict = 0 ### 0 = HP, 1 = FP, 2 = MP, 3 = CP, 4 = Sanity, 5 = Lust, 6 = Fear self.Random = [0.65,1.25] self.Knockback = 0 ### Traits self.ELECTRICAL = False self.FLAMMABLE = False self.POISONOUS = [False, []] ### Apply to what self.MOIST = False
def Generic_Skill(character = char.Char(), personal = 0, familiarity = 0, technology = 0, extra_against = 0, extra_for = 0, accuracy = 0, difficulty = 0, skill = "Cylaxian"): Skill_User = character dict_i = {"Acrobatics":0, "Aerobatics":1, "Aiding":2, "Aquabatics":3, "Arm_Combat":4, "Art":5, "Attack":6, "Chemistry":7, "Climbing":8, "Cooking":9, "Cylaxian":10, "Diplomacy":11, "Disguise":12, "Electrician":13, "Electronic_Operation":14, "Engineering":15, "Fast_Draw":16, "Games":17, "Guns":18, "Hobby":19, "Math":20, "Melee_Weapon":21, "Navigation":22, "Naturalist":23, "Physics":24, "Repair":25, "Science":26, "Stealth":27, "Strategy":28, "Suit":29, "Tactics":30, "Vehicle":31, "Writing":32} list_i = [character.Acrobatics[0], character.Aerobatics[0], character.Aiding[0], character.Aquabatics[0], character.Arm_Combat[0], character.Art[0], character.Attack[0], character.Chemistry[0], character.Climbing[0], character.Cooking[0], character.Cylaxian[0], character.Diplomacy[0], character.Disguise[0], character.Electrician[0], character.Electronic_Operation[0], character.Engineering[0], character.Fast_Draw[0], character.Games[0], character.Guns[0], character.Hobby[0], character.Math[0], character.Melee_Weapon[0], character.Navigation[0], character.Naturalist[0], character.Physics[0], character.Repair[0], character.Science[0], character.Stealth[0], character.Strategy[0], character.Suit[0], character.Tactics[0], character.Vehicle[0], character.Writing[0]] Rating = list_i[dict_i[skill]] Personal = personal Familiarity = familiarity Technology = technology Extra_Against = extra_against Extra_For = extra_for Accuracy = accuracy Difficulty = difficulty Cal_i = eg.Minner((Accuracy/20) + 0.80, 0.80, 1.20) S = round((Rating + Personal + Accuracy) * round(rd.uniform(0.80, 1.20), 2) - (Difficulty * ((1 + Extra_Against) / (1 + Familiarity + Technology + Extra_For))), 2) print(S) if S > 0: print(Skill_User.Name, "succeed the challenge.") elif S <= 0: print(Skill_User.Name, "failed the challenge.") else: print("Something have went wrong. Most likely due to S not being a float.")
def __init__(self, user): Character = user Cal_i = eg.Minner((ce.Arm_Combat / 100) + 0.70, 0.70, 1.20) self.Name = "Low Kick" ### Stats self.Harm = (Character.ST * 0.66) + (Character.DX / 2) self.HarmType = "Blunt" self.Inflict = 0 ### 0 = HP, 1 = FP, 2 = MP, 3 = CP, 4 = Sanity, 5 = Lust, 6 = Fear self.Random = [Cal_i, 1.20] self.Knockback = Character.ST / 60 ### Traits self.ELECTRICAL = False self.FLAMMABLE = False self.POISONOUS = [False, []] ### Apply to what self.MOIST = False
def Effect(self, Attacker, Defender, Attack, Protection, Additional_DR, External_Effect): Attacker = Attacker Defender = Defender Attack = Attack Protection = Protection Additional_DR = Additional_DR External_Effect = External_Effect Check = eg.DamageNameChecker(Attack.Inflict) Total = round( ((Attack.Harm * (rd.uniform(Attack.Random[0], Attack.Random[1]))) - (Protection.DR + Additional_DR)), 2) Defender.Damage[ Attack.Inflict] = Defender.Damage[Attack.Inflict] + Total print("You kicked the target. They are dealt", Total, Attack.HarmType, "damage.") debuff = eg.Minner((6 - Character.DX / 3), 0, 6) print("You get", debuff, "to your movement defenses until your next turn.") print("They now have", Defender.Damage[Attack.Inflict], Check.Result) ph.Knockback(Attack, Defender) External_Effect.Attack_Effect()
def __init__(self, user): Character = user Cal_i = eg.Minner((ce.Arm_Combat / 100) + 0.70, 0.70, 1.20) self.Name = "Strong Claw" ### Stats self.Harm = ((Character.ST / 2) + (Character.DX / 1.5) * 1.5) + ( (Character.ST) / mt.sqrt(3)) self.HarmType = "Cut" self.Inflict = 0 ### 0 = HP, 1 = FP, 2 = MP, 3 = CP, 4 = Sanity, 5 = Lust, 6 = Fear self.Random = [Cal_i, 1.20] self.Knockback = 0 ### Traits self.ELECTRICAL = False self.FLAMMABLE = False self.POISONOUS = [False, []] ### Apply to what self.MOIST = False
def __init__(self, user): Character = user Cal_i = eg.Minner((ce.Arm_Combat / 100) + 0.70, 0.70, 1.20) self.Name = "Bite" varible_damage = ph.Teeth_Change(Character) ### Stats self.Harm = Character.ST + (Character.DX / 3) * 1.25 self.HarmType = "Pierce" self.Inflict = 0 ### 0 = HP, 1 = FP, 2 = MP, 3 = CP, 4 = Sanity, 5 = Lust, 6 = Fear self.Random = [Cal_i, 1.20] self.Knockback = 0 ### Traits self.ELECTRICAL = False self.FLAMMABLE = False self.POISONOUS = [False, []] ### Apply to what self.MOIST = False
def __init__(self, user): Character = user Cal_i = eg.Minner( (ce.Arm_Combat / 100) + 0.90, 0.90, 1.20) + (-0.30 + Character.Familiarities["Tunnel Traveller"]) self.Name = "Tunnel Traveller" ### Stats self.Harm = 0 self.HarmType = "Blunt" self.Inflict = 0 ### 0 = HP, 1 = FP, 2 = MP, 3 = CP, 4 = Sanity, 5 = Lust, 6 = Fear self.Random = [0.99, 1.01] self.Knockback = 0 ### Traits self.ELECTRICAL = False self.FLAMMABLE = False self.POISONOUS = [False, []] ### Apply to what self.MOIST = False
Limb (2) Neck (5) Skull (7) Tail (2) Torso (0) Add bonuses and penalities if they are abnormally larger or shorter than the body. ''' Damage = ((Attacker.Damage[0]/((Attacker.Height/33) + (Attacker.Width/33) + (Attacker.Length/33) + ((Attacker.CO)*10)))) + ((Attacker.Damage[1]/10) * (Attacker.Weight/100) / ((Attacker.HT)*10)) + (Attacker.Damage[2]/(Attacker.WIL*10)) + (Attacker.Damage[3]/(Attacker.WIL*10)) + (Attacker.Damage[4]/(Attacker.WIL*10)) + (Attacker.Damage[5]/ (Attacker.WIL*10)) ### Damage on the attacker(m) Familiarity = 3 Technology = 3 ### Quality of the Technology (t) Cal_i = eg.Minner((Accuracy/100) + 0.60, 0.60, 1.20) Cal_ii = eg.Minner((Preperation/100) + 0.60, 0.60, 1.20) S = round((((Rating + Personal + Accuracy) * round(rd.uniform(Cal_i.result, 1.20), 2) - (Difficulty * (1 + ( Cover + Damage + Vision + Range + Extra_Against ) / (Familiarity + Technology + Extra_For)) * round(rd.uniform(Cal_ii.result, 1.20), 2)))), 2) print(S) if S > 0: Attack.Effect(Attacker, Defender, Attack, Protection) else: print("You miss the target.")
import config as cf sys.path.insert(1, 'C:/Users/Frank/Desktop/Cylax/PySystem') import character_sheet as char Skill_User = char.Char() Rating = char.{}[0] Familiarity = Technology = Extra_Against = Extra_For = Cal_i = eg.Minner(var = , min = , max = ) S = round((Rating + Personal + Accuracy) * round(rd.uniform(0.80, 1.20), 2) - (Difficulty * ((1 + Extra_Against) / (1 + Familiarity + Technology + Extra_For))), 2) print(S) if S > 0: print(Skill_User.Name, "succeed the challenge.") elif S <= 0: print(Skill_User.Name, "failed the challenge.") else: print("Something have went wrong. Most likely due to S not being a float.")
def Burning_Damage(character, fire=0, area=1, temp_o=600, temp_c=310.15, freq=0, rad=0, rng=1, material="animal"): ### Fire = 0, Plasma = 1, Hot = 2, Microwave = 3, Ionizing = 4 ### Area is in metrics^2 ### num_i = Damage, num_ii = Radiation if fire == 0: Cal_i = eg.Minner((area * (temp_o - temp_c) / 10), 1, character.Volume / 60) num_i = Cal_i.result check_i = False index = 0 elif fire == 1: Cal_i = eg.Minner((area * (temp_o - temp_c) / 7.5), 1, character.Volume / 60) num_i = Cal_i.result check_i = False index = 1 elif fire == 2: Cal_i = eg.Minner((area * (temp_o - temp_c) / 10), 1, character.Volume / 60) num_i = Cal_i.result check_i = False index = 2 elif fire == 3: Cal_i = eg.Minner((area * freq) - rng / 10, 1, character.Volume / 60) num_i = Cal_i.result check_i = True index = 3 elif fire == 4: Cal_i = eg.Minner(((area * rad) / rng) / 10, 1, character.Volume / 60) num_i = Cal_i.result check_i = True index = 4 else: print( "Not a vaild fire type. Fire = 0, Plasma = 1, Hot = 2, Microwave = 3, Ionizing = 4" ) ''' list_i = ["Causes objects to ignite in flames", "Causes Normal Damage.", "Causes Normal Damage.", "Causes Normal Damage.", "Causes Normal Damage."] list_ii = ["water", "metal", "plant", "animal", "fabric", "oil"] ''' dict_i = { "water": 0, "matel": 0.2, "plant": 2, "animal": 1, "fabric": 4, "oil": 8 } list_i = [0, 0.2, 2, 1, 4, 8] Damage = round(num_i * dict_i[material], 2) Radiation = check_i Burning_Effect = list_i[index] character.Damage[0] = round(character.Damage[0] + Damage, 2) print(character.Name, "take", Damage, "burning damage. Now they have", character.Damage[0], "HP damage.") if fire == 0: print("All hit objects are in flames if able.") Continuous_Flames(character, temp_o, area, material)
Builder = char.Char() Rating = char.{}[0] Familiarity = Technology = Tools = tf.BuildingTools(self, tools = False, pullers = False, vehicles = False, additive = False, interlock = False, magnetism = False, cylax = False) Extra_Against = Extra_For = Building_Progress = ### In Precentage Time_Spent = 0 ### In Minutes Structure_Volume = ### In Metrics Cubic Cal_i = eg.Minner(var = Building_Progress, min = 0, max = 100) S = round((Rating + Personal + Accuracy) * round(rd.uniform(0.80, 1.20), 2) - (Difficulty * ((1 + Extra_Against) / (1 + Familiarity + Technology + Extra_For))), 2) New_Progress = (S * (1 + Technology / 2) * Tools.result) * (Time_Spent / 60) / Structure_Volume Building_Progress = Building_Progress + New_Progress Building_Progress = Cal_i.result print(S) if S > 0: print(Builder.Name, "have made progress.") print("After", Time_Spent,",", Builder.Name, "made", New_Progress, "change, now it's at", Building_Progress, "progress.") print("The object is now", Building_Progress, "% complete.") if Building_Progress == 100:
Personal = ### Enter Personality and Emotional Factors (p) Extra_Against = ### Any Additional Factors (e_n) Extra_For = ### Any Additional Factors (e_d) Viewers = [] ### From 1 to 10, how much do they like art the artist is creating. Put a number for each group of viewers Cultures = ### How many cultures are there amoung the viewers Group = sum(Viewers)/Cultures ### Add the cultural difference of the artist and the viewers. x_! is each viewers and y is the number of cultures. Time = ### How many time spend in 1 every 24 hours on the piece of work? Assistance = ### How many people are working at the project. Budget = ### Amount of money in the project Size = ### How big is the project? How much have to be spent to start this project of this quality Example: AAA is $100,000,000 Difficulty = 4 + Cultures Cal_i = eg.Minner(Budget/Size, 0, 2) Cal_ii = eg.Minner(Time/(3650/Assistance), -400, 3) S = ((Rating + Personal) * round(rd.uniform(0.90, 1.10))) - (Difficulty * ((1 + Extra_Against + Group)/(1 + Extra_For + Familiarity + Technology + Cal_i + Cal_ii))) print(S) if S < -19: print(Artist.Name, Skill, "was one of the worst works of art of all times. It will be remembered as an abomination of the arts. It's a 1/10") elif S >= -19 and S < -13: print(Artist.Name, Skill, "is a terrible work of art. It will get an infamous status among the arts. It's a 2/10") elif S >= -13 and S < -8: print(Artist.Name, Skill, "is isn't a great piece of work, could have been much more. It's a 3/10")
def Attacking(char_att = char.Char(), char_def = char.Char(), external_effect = eg.Empty(), attack = ba.Attack(None), protect = char.Char(), additional_dr = 0, familiarity = 0, technology = 0, personal = 0, accuracy = 0, extra_against = 0, extra_for = 0, cover = 0, vision = 0, range = 0, hit_zone = 0, inability = 0, preperation = 0, skill_att = "Arm_Combat", difficulty = "Arm_Combat"): dict_i = {"Acrobatics":0, "Aerobatics":1, "Aiding":2, "Aquabatics":3, "Arm_Combat":4, "Art":5, "Attack":6, "Chemistry":7, "Climbing":8, "Cooking":9, "Cylaxian":10, "Diplomacy":11, "Disguise":12, "Electrician":13, "Electronic_Operation":14, "Engineering":15, "Fast_Draw":16, "Games":17, "Guns":18, "Hobby":19, "Math":20, "Melee_Weapon":21, "Navigation":22, "Naturalist":23, "Physics":24, "Repair":25, "Science":26, "Stealth":27, "Strategy":28, "Suit":29, "Tactics":30, "Vehicle":31, "Writing":32} dict_ii = {"Acrobatics":0, "Aerobatics":1, "Aiding":2, "Aquabatics":3, "Arm_Combat":4, "Art":5, "Attack":6, "Chemistry":7, "Climbing":8, "Cooking":9, "Cylaxian":10, "Diplomacy":11, "Disguise":12, "Electrician":13, "Electronic_Operation":14, "Engineering":15, "Fast_Draw":16, "Games":17, "Guns":18, "Hobby":19, "Math":20, "Melee_Weapon":21, "Navigation":22, "Naturalist":23, "Physics":24, "Repair":25, "Science":26, "Stealth":27, "Strategy":28, "Suit":29, "Tactics":30, "Vehicle":31, "Writing":32} list_i = [character.Acrobatics[0], character.Aerobatics[0], character.Aiding[0], character.Aquabatics[0], character.Arm_Combat[0], character.Art[0], character.Attack[0], character.Chemistry[0], character.Climbing[0], character.Cooking[0], character.Cylaxian[0], character.Diplomacy[0], character.Disguise[0], character.Electrician[0], character.Electronic_Operation[0], character.Engineering[0], character.Fast_Draw[0], character.Games[0], character.Guns[0], character.Hobby[0], character.Math[0], character.Melee_Weapon[0], character.Navigation[0], character.Naturalist[0], character.Physics[0], character.Repair[0], character.Science[0], character.Stealth[0], character.Strategy[0], character.Suit[0], character.Tactics[0], character.Vehicle[0], character.Writing[0]] list_ii = [character.Acrobatics[0], character.Aerobatics[0], character.Aiding[0], character.Aquabatics[0], character.Arm_Combat[0], character.Art[0], character.Attack[0], character.Chemistry[0], character.Climbing[0], character.Cooking[0], character.Cylaxian[0], character.Diplomacy[0], character.Disguise[0], character.Electrician[0], character.Electronic_Operation[0], character.Engineering[0], character.Fast_Draw[0], character.Games[0], character.Guns[0], character.Hobby[0], character.Math[0], character.Melee_Weapon[0], character.Navigation[0], character.Naturalist[0], character.Physics[0], character.Repair[0], character.Science[0], character.Stealth[0], character.Strategy[0], character.Suit[0], character.Tactics[0], character.Vehicle[0], character.Writing[0]] Attacker = char_att Defender = char_def Attack = attack ### Weapons need to be called Protection = protect Additional_DR = additional_dr External_Effect = eg.Empty() Familiarity = familiarity Technology = technology Rating = list_i[dict_i[skill_att]] Personal = personal Accuracy = accuracy Extra_Against = extra_against Extra_For = extra_for Cover = cover Vision = vision Range = range Hit_Zone = hit_zone Inability = inability Difficulty = abs(5 + list_ii[dict_ii[skill_def]] + Hit_Zone - Inability) Preperation = preperation ''' Hit Zones Arm (2) Eye (9) Face (5) Foot (4) Groin (3) Hand (4) Leg (2) Limb (2) Neck (5) Skull (7) Tail (2) Torso (0) Add bonuses and penalities if they are abnormally larger or shorter than the body. ''' Damage = ((Attacker.Damage[0]/((Attacker.Height/33) + (Attacker.Width/33) + (Attacker.Length/33) + ((Attacker.CO)*10)))) + ((Attacker.Damage[1]/10) * (Attacker.Weight/100) / ((Attacker.HT)*10)) + (Attacker.Damage[2]/(Attacker.WIL*10)) + (Attacker.Damage[3]/(Attacker.WIL*10)) + (Attacker.Damage[4]/(Attacker.WIL*10)) + (Attacker.Damage[5]/ (Attacker.WIL*10)) ### Damage on the attacker(m) Cal_i = eg.Minner((Accuracy/20) + 0.80, 0.80, 1.20) Cal_ii = eg.Minner((Preperation/20) + 0.80, 0.80, 1.20) S = round((((Rating + Personal + Accuracy) * round(rd.uniform(Cal_i.result, 1.20), 2) - (Difficulty * ((1 + Cover + Damage + Vision + Range + Extra_Against ) / (1 + Familiarity + Technology + Extra_For)) * round(rd.uniform(Cal_ii.result, 1.20), 2)))), 2) print(S) if S > 0: Attack.Effect(Attacker, Defender, Attack, Protection, Additional_DR, External_Effect) else: print("You miss the target.")
def Artist(character = char.Char(), personal = 0, familiarity = 0, technology = 0, extra_against = 0, extra_for = 0, difficulty = 0, cultures_amount = 1, time = 1, assistance = 0, budget = 1, budget_requirement = 100, viewers = [5], skill = "Repair"): dict_i = {"Acrobatics":0, "Aerobatics":1, "Aiding":2, "Aquabatics":3, "Arm_Combat":4, "Art":5, "Attack":6, "Chemistry":7, "Climbing":8, "Cooking":9, "Cylaxian":10, "Diplomacy":11, "Disguise":12, "Electrician":13, "Electronic_Operation":14, "Engineering":15, "Fast_Draw":16, "Games":17, "Guns":18, "Hobby":19, "Math":20, "Melee_Weapon":21, "Navigation":22, "Naturalist":23, "Physics":24, "Repair":25, "Science":26, "Stealth":27, "Strategy":28, "Suit":29, "Tactics":30, "Vehicle":31, "Writing":32} list_i = [character.Acrobatics[0], character.Aerobatics[0], character.Aiding[0], character.Aquabatics[0], character.Arm_Combat[0], character.Art[0], character.Attack[0], character.Chemistry[0], character.Climbing[0], character.Cooking[0], character.Cylaxian[0], character.Diplomacy[0], character.Disguise[0], character.Electrician[0], character.Electronic_Operation[0], character.Engineering[0], character.Fast_Draw[0], character.Games[0], character.Guns[0], character.Hobby[0], character.Math[0], character.Melee_Weapon[0], character.Navigation[0], character.Naturalist[0], character.Physics[0], character.Repair[0], character.Science[0], character.Stealth[0], character.Strategy[0], character.Suit[0], character.Tactics[0], character.Vehicle[0], character.Writing[0]] Artist = character Rating = list_i[dict_i[skill]] Personal = personal ### Enter Personality and Emotional Factors (p) Familiarity = familiarity Technology = technology Extra_Against = extra_against ### Any Additional Factors (e_n) Extra_For = extra_for ### Any Additional Factors (e_d) Viewers = viewers ### From 1 to 10, how much do they like art the artist is creating. Put a number for each group of viewers Cultures = cultures_amount ### How many cultures are there amoung the viewers Group = sum(Viewers)/Cultures ### Add the cultural difference of the artist and the viewers. x_! is each viewers and y is the number of cultures. Time = time ### How many time spend in 1 every 24 hours on the piece of work? Assistance = assistance ### How many people are working at the project. Budget = budget ### Amount of money in the project Size = budget_requirement ### How big is the project? How much have to be spent to start this project of this quality Example: AAA is $100,000,000 Difficulty = 4 + Cultures Cal_i = eg.Minner(Budget/Size, 0, 2) Cal_ii = eg.Minner(Time/(3650/Assistance), -400, 3) S = ((Rating + Personal) * round(rd.uniform(0.90, 1.10))) - (Difficulty * ((1 + Extra_Against + Group)/(1 + Extra_For + Familiarity + Technology + Cal_i + Cal_ii))) print(S) if S < -19: print(Artist.Name, Skill, "was one of the worst works of art of all times. It will be remembered as an abomination of the arts. It's a 1/10") elif S >= -19 and S < -13: print(Artist.Name, Skill, "is a terrible work of art. It will get an infamous status among the arts. It's a 2/10") elif S >= -13 and S < -8: print(Artist.Name, Skill, "is isn't a great piece of work, could have been much more. It's a 3/10") elif S >= -8 and S < -4: print(Artist.Name, Skill, "is a bleak piece of work. It's a 4/10") elif S >= -4 and S < 0: print(Artist.Name, Skill, "is medicore. Forgettable. It's a 5/10") elif S >= 0 and S < 5: print(Artist.Name, Skill, "is okay, passible. It's a 6/10") elif S >= 5 and S < 11: print(Artist.Name, Skill, "is a good piece of work, something people will comeback too. It's a 7/10") elif S >= 11 and S < 15: print(Artist.Name, Skill, "is a great piece of work, it will be known in as a mark in the history of the arts. It's a 8/10") elif S >= 15 and S < 20: print(Artist.Name, Skill, "is an outstanding work of art, a milestone in the development of the arts. It's a 9/10") elif S >= 20: print(Artist.Name, Skill, "is one of the greatest works of art of all time, it has revoultionized the entire artscape of its field, created a cultural shift. It's a 10/10")
def Attacking(char_att=char.Char(), char_def=defender.Char(), attack=ba.Attack(), protect=defender.Char(), additional_dr=0, external_effect=eg.Empty(), familiarity=0, technology=0, rating=skill_att[0] + 6, personal=0, accuracy=0, extra_against=0, extra_for=0, cover=0, vision=0, range=0, hit_zone=0, inability=0, difficulty=abs(5 + skill_def[0] + Hit_Zone - Inability), preperation=0): Attacker = char_att Defender = char_def Attack = attack ### Weapons need to be called Protection = protect Additional_DR = additional_dr External_Effect = eg.Empty() Familiarity = familiarity Technology = technology Rating = rating Personal = personal Accuracy = accuracy Extra_Against = extra_against Extra_For = extra_for Cover = cover Vision = vision Range = range Hit_Zone = hit_zone Inability = inability Difficulty = difficulty Preperation = preperation ''' Hit Zones Arm (2) Eye (9) Face (5) Foot (4) Groin (3) Hand (4) Leg (2) Limb (2) Neck (5) Skull (7) Tail (2) Torso (0) Add bonuses and penalities if they are abnormally larger or shorter than the body. ''' Damage = ( (Attacker.Damage[0] / ((Attacker.Height / 33) + (Attacker.Width / 33) + (Attacker.Length / 33) + ((Attacker.CO) * 10))) ) + ((Attacker.Damage[1] / 10) * (Attacker.Weight / 100) / ((Attacker.HT) * 10)) + (Attacker.Damage[2] / (Attacker.WIL * 10)) + ( Attacker.Damage[3] / (Attacker.WIL * 10)) + (Attacker.Damage[4] / (Attacker.WIL * 10)) + ( Attacker.Damage[5] / (Attacker.WIL * 10) ) ### Damage on the attacker(m) Cal_i = eg.Minner((Accuracy / 20) + 0.60, 0.60, 1.20) Cal_ii = eg.Minner((Preperation / 20) + 0.60, 0.60, 1.20) S = round((((Rating + Personal + Accuracy) * round(rd.uniform(Cal_i.result, 1.20), 2) - (Difficulty * ((1 + Cover + Damage + Vision + Range + Extra_Against) / (1 + Familiarity + Technology + Extra_For)) * round(rd.uniform(Cal_ii.result, 1.20), 2)))), 2) print(S) if S > 0: Attack.Effect(Attacker, Defender, Attack, Protection, Additional_DR, External_Effect) else: print("You miss the target.")
Direction = 90 ### 0 North, 90 East, 180 South, 270 West Speed = 5 Familiarity = 1 Technology = 2 Extra_Against = 1 Extra_For = 1 Accuracy = 3 Rating = Navigator.Navigation[0] Personal = 1 Difficulty = 1 Vision = 0 Cal_i = eg.Minner((Accuracy / 20) + 0.80, 0.80, 1.10) S = (( (Rating + Personal + Accuracy) * round(rd.uniform(Cal_i.result, 1.10), 2) - (Difficulty * ((1 + Vision + Extra_Against) / (1 + Familiarity + Technology + Extra_For))))) if S > 0: if S >= 12 - Technology: print("You know where you are going. You move as desired.") elif S < 12 - Technology: miss_meters = round(Speed * rd.uniform(0.85, 1.00), 2) misdirection = eg.Random_Direction(int(Direction - (S * 5)), int(Direction + (S * 5))) print("You are heading the right direction, but you move", miss_meters, "towards", misdirection.Final_Direction)