diff --git a/build_dynamic_prompt.py b/build_dynamic_prompt.py index 42eda05..39be418 100644 --- a/build_dynamic_prompt.py +++ b/build_dynamic_prompt.py @@ -139,7 +139,8 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all agecalculatorlist = csv_to_list("agecalculator", antilist) elementlist = csv_to_list("elements", antilist) settinglist = csv_to_list("settings", antilist) - charactertypeslist = csv_to_list("charactertypes", antilist) + charactertypelist = csv_to_list("charactertypes", antilist) + objectstoholdlist = csv_to_list("objectstohold", antilist) # additional descriptor lists @@ -1527,7 +1528,7 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all for i in range(amountofimagetypes): # one in 6 images is a complex/other type - if(chance_roll(insanitylevel, imagetypequalitychance) and generateimagetypequality): + if((chance_roll(insanitylevel, imagetypequalitychance) or originalartistchoice == "greg mode") and generateimagetypequality): completeprompt += "-imagetypequality- " # if("photography" in artiststyleselector # or "photography" in artists): @@ -2043,7 +2044,9 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all if(chance_roll(insanitylevel, generalminilocationchance) and generateminilocationaddition == True): completeprompt += " -minilocationaddition-, " - + # Add more quality while in greg mode lol + if(originalartistchoice == "greg mode" and generatequality == True): + completeprompt += "-quality-, " # landscapes it is nice to always have a time period if(chance_roll(insanitylevel, timperiodchance) or subjectchooser=="landscape"): @@ -2165,6 +2168,10 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all completeprompt += ", " # end of the artist stuff + # Add more quality while in greg mode lol + if(originalartistchoice == "greg mode" and generatequality == True): + completeprompt += "-quality-, " + # others if(chance_roll(max(1,insanitylevel -1), directionchance) and generatedirection == True): completeprompt += "-direction-, " @@ -2224,9 +2231,9 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all completeprompt += " \"-songline-\", " # everyone loves the adding quality. The better models don't need this, but lets add it anyway - if(chance_roll(insanitylevel, quality1chance) and generatequality == True): + if((chance_roll(insanitylevel, quality1chance) or originalartistchoice == "greg mode") and generatequality == True): completeprompt += "-quality-, " - if(chance_roll(insanitylevel, quality2chance)): + if((chance_roll(insanitylevel, quality2chance) or originalartistchoice == "greg mode")): completeprompt += "-quality-, " @@ -2765,11 +2772,12 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all "-cinemaartist-" in completeprompt or "-element-" in completeprompt or "-setting-" in completeprompt or - "-charactertype-" in completeprompt): + "-charactertype-" in completeprompt or + "-objectstohold-" in completeprompt): allwildcardslistnohybrid = [ "-color-","-object-", "-animal-", "-fictional-","-nonfictional-","-building-","-vehicle-","-location-","-conceptprefix-","-food-","-haircolor-","-hairstyle-","-job-", "-accessory-", "-humanoid-", "-manwoman-", "-human-", "-colorscheme-", "-mood-", "-genderdescription-", "-artmovement-", "-malefemale-", "-bodytype-", "-minilocation-", "-minilocationaddition-", "-pose-", "-season-", "-minioutfit-", "-elaborateoutfit-", "-minivomit-", "-vomit-", "-rpgclass-", "-subjectfromfile-","-subjectfromfile-", "-brand-", "-space-", "-artist-", "-imagetype-", "-othertype-", "-quality-", "-lighting-", "-camera-", "-lens-","-imagetypequality-", "-poemline-", "-songline-", "-greatwork-", "-fantasyartist-", "-popularartist-", "-romanticismartist-", "-photographyartist-", "-emoji-", "-timeperiod-", "-shotsize-", "-musicgenre-", "-animaladdition-", "-addontolocationinside-", "-addontolocation-", "-objectaddition-", "-humanaddition-", "-overalladdition-", "-focus-", "-direction-", "-styletilora-", "-manwomanrelation-", "-waterlocation-", "-container-", "-firstname-", "-flora-", "-print-", "-miniactivity-", "-pattern-", "-animalsuffixaddition-", "-chair-", "-cardname-", "-covering-", "-heshe-", "-hisher-", "-himher-", "-outfitdescriptor-", "-hairdescriptor-", "-hairvomit-", "-humandescriptor-", "-manwomanmultiple-", "-facepart-", "-buildfacepart-", "-outfitvomit-", "-locationdescriptor-", "-basicbitchdescriptor-", "-animaldescriptor-", "-humanexpression-", "-humanvomit-", "-eyecolor-", "-fashiondesigner-", "-colorcombination-", "-materialcombination-", "-oppositefictional-", "-oppositenonfictional-", "-photoaddition-", "-age-", "-agecalculator-", "-gregmode-" - ,"-portraitartist-", "-characterartist-" , "-landscapeartist-", "-scifiartist-", "-graphicdesignartist-", "-digitalartist-", "-architectartist-", "-cinemaartist-", "-setting-", "-charactertype-"] + ,"-portraitartist-", "-characterartist-" , "-landscapeartist-", "-scifiartist-", "-graphicdesignartist-", "-digitalartist-", "-architectartist-", "-cinemaartist-", "-setting-", "-charactertype-", "-objectstohold-"] allwildcardslistnohybridlists = [colorlist, objectlist, animallist, fictionallist, nonfictionallist, buildinglist, vehiclelist, locationlist,conceptprefixlist,foodlist,haircolorlist, hairstylelist,joblist, accessorielist, humanoidlist, manwomanlist, humanlist, colorschemelist, moodlist, genderdescriptionlist, artmovementlist, malefemalelist, bodytypelist, minilocationlist, minilocationadditionslist, poselist, seasonlist, minioutfitlist, elaborateoutfitlist, minivomitlist, vomitlist, rpgclasslist, customsubjectslist, customoutfitslist, brandlist, spacelist, artistlist, imagetypelist, othertypelist, qualitylist, lightinglist, cameralist, lenslist, imagetypequalitylist, poemlinelist, songlinelist, greatworklist, fantasyartistlist, popularartistlist, romanticismartistlist, photographyartistlist, emojilist, timeperiodlist, shotsizelist, musicgenrelist, animaladditionlist, addontolocationinsidelist, addontolocationlist, objectadditionslist, humanadditionlist, overalladditionlist, focuslist, directionlist, stylestiloralist, manwomanrelationlist, waterlocationlist, containerlist, firstnamelist, floralist, printlist, miniactivitylist, patternlist, animalsuffixadditionlist, chairlist, cardnamelist, coveringlist, heshelist, hisherlist, himherlist, outfitdescriptorlist, hairdescriptorlist, hairvomitlist, humandescriptorlist, manwomanmultiplelist, facepartlist, buildfacepartlist, outfitvomitlist, locationdescriptorlist, basicbitchdescriptorlist, animaldescriptorlist, humanexpressionlist, humanvomitlist, eyecolorlist, fashiondesignerlist, colorcombinationlist, materialcombinationlist, oppositefictionallist, oppositenonfictionallist, photoadditionlist, agelist, agecalculatorlist, gregmodelist - , portraitartistlist, characterartistlist, landscapeartistlist, scifiartistlist, graphicdesignartistlist, digitalartistlist, architectartistlist, cinemaartistlist, settinglist, charactertypeslist] + , portraitartistlist, characterartistlist, landscapeartistlist, scifiartistlist, graphicdesignartistlist, digitalartistlist, architectartistlist, cinemaartistlist, settinglist, charactertypelist, objectstoholdlist] allwildcardslistwithhybrid = ["-material-", "-descriptor-", "-outfit-", "-conceptsuffix-","-culture-", "-objecttotal-", "-outfitprinttotal-", "-element-"] allwildcardslistwithhybridlists = [materiallist, descriptorlist,outfitlist,conceptsuffixlist,culturelist, objecttotallist, outfitprinttotallist, elementlist] @@ -2935,6 +2943,7 @@ def createpromptvariant(prompt = "", insanitylevel = 5, antivalues = "" , gender elementlist = csv_to_list("elements", antilist) settinglist = csv_to_list("settings", antilist) charactertypelist = csv_to_list("charactertypes", antilist) + objectstoholdlist = csv_to_list("objectstohold", antilist) outfitdescriptorlist = csv_to_list("outfitdescriptors",antilist) hairdescriptorlist = csv_to_list("hairdescriptors",antilist) @@ -3141,6 +3150,8 @@ def createpromptvariant(prompt = "", insanitylevel = 5, antivalues = "" , gender if lowercase_combination in [x.lower() for x in charactertypelist] and chance_roll(insanitylevel, "uncommon"): prompt = prompt.replace(combination," -charactertype- ") + if lowercase_combination in [x.lower() for x in objectstoholdlist] and chance_roll(insanitylevel, "uncommon"): + prompt = prompt.replace(combination," -objectstohold- ") #if lowercase_combination in [x.lower() for x in conceptprefixlist] and chance_roll(insanitylevel, "uncommon"): @@ -3430,12 +3441,13 @@ def createpromptvariant(prompt = "", insanitylevel = 5, antivalues = "" , gender "-cinemaartist-" in completeprompt or "-element-" in completeprompt or "-setting-" in completeprompt or - "-charactertype-" in completeprompt + "-charactertype-" in completeprompt or + "-objectstohold-" in completeprompt ): allwildcardslistnohybrid = [ "-color-","-object-", "-animal-", "-fictional-","-nonfictional-","-building-","-vehicle-","-location-","-conceptprefix-","-food-","-haircolor-","-hairstyle-","-job-", "-accessory-", "-humanoid-", "-manwoman-", "-human-", "-colorscheme-", "-mood-", "-genderdescription-", "-artmovement-", "-malefemale-", "-bodytype-", "-minilocation-", "-minilocationaddition-", "-pose-", "-season-", "-minioutfit-", "-elaborateoutfit-", "-minivomit-", "-vomit-", "-rpgclass-", "-subjectfromfile-", "-subjectfromfile-", "-brand-", "-space-", "-artist-", "-imagetype-", "-othertype-", "-quality-", "-lighting-", "-camera-", "-lens-","-imagetypequality-", "-poemline-", "-songline-", "-greatwork-", "-fantasyartist-", "-popularartist-", "-romanticismartist-", "-photographyartist-", "-emoji-", "-timeperiod-", "-shotsize-", "-musicgenre-", "-animaladdition-", "-objectaddition-", "-humanaddition-", "-overalladdition-", "-focus-", "-direction-", "-styletilora-", "-manwomanrelation-", "-waterlocation-", "-container-", "-firstname-", "-flora-", "-print-", "-miniactivity-", "-pattern-", "-chair-", "-cardname-", "-covering-", "-outfitdescriptor-", "-hairdescriptor-", "-hairvomit-", "-humandescriptor-", "-manwomanmultiple-", "-facepart-", "-locationdescriptor-", "-basicbitchdescriptor-", "-animaldescriptor-", "-humanexpression-", "-humanvomit-", "-eyecolor-", "-fashiondesigner-", "-colorcombination-", "-materialcombination-", "-photoaddition-", "-age-", "agecalculator-", "-gregmode-" - ,"-portraitartist-", "-characterartist-" , "-landscapeartist-", "-scifiartist-", "-graphicdesignartist-", "-digitalartist-", "-architectartist-", "-cinemaartist-" "-setting-", "-charactertype-"] + ,"-portraitartist-", "-characterartist-" , "-landscapeartist-", "-scifiartist-", "-graphicdesignartist-", "-digitalartist-", "-architectartist-", "-cinemaartist-" "-setting-", "-charactertype-", "-objectstohold-"] allwildcardslistnohybridlists = [colorlist, objectlist, animallist, fictionallist, nonfictionallist, buildinglist, vehiclelist, locationlist,conceptprefixlist,foodlist,haircolorlist, hairstylelist,joblist, accessorielist, humanoidlist, manwomanlist, humanlist, colorschemelist, moodlist, genderdescriptionlist, artmovementlist, malefemalelist, bodytypelist, minilocationlist, minilocationadditionslist, poselist, seasonlist, minioutfitlist, elaborateoutfitlist, minivomitlist, vomitlist, rpgclasslist, customsubjectslist, customoutfitslist, brandlist, spacelist, artistlist, imagetypelist, othertypelist, qualitylist, lightinglist, cameralist, lenslist, imagetypequalitylist, poemlinelist, songlinelist, greatworklist, fantasyartistlist, popularartistlist, romanticismartistlist, photographyartistlist, emojilist, timeperiodlist, shotsizelist, musicgenrelist, animaladditionlist, objectadditionslist, humanadditionlist, overalladditionlist, focuslist, directionlist, stylestiloralist, manwomanrelationlist, waterlocationlist, containerlist, firstnamelist, floralist, printlist, miniactivitylist, patternlist, chairlist, cardnamelist, coveringlist, outfitdescriptorlist, hairdescriptorlist, hairvomitlist, humandescriptorlist, manwomanmultiplelist, facepartlist, locationdescriptorlist, basicbitchdescriptorlist, animaldescriptorlist, humanexpressionlist, humanvomitlist, eyecolorlist, fashiondesignerlist, colorcombinationlist, materialcombinationlist, photoadditionlist, agelist, agecalculatorlist, gregmodelist - , portraitartistlist, characterartistlist, landscapeartistlist, scifiartistlist, graphicdesignartistlist, digitalartistlist, architectartistlist, cinemaartistlist, settinglist, charactertypelist] + , portraitartistlist, characterartistlist, landscapeartistlist, scifiartistlist, graphicdesignartistlist, digitalartistlist, architectartistlist, cinemaartistlist, settinglist, charactertypelist, objectstoholdlist] allwildcardslistwithhybrid = ["-material-", "-descriptor-", "-outfit-", "-conceptsuffix-","-culture-", "-objecttotal-", "-outfitprinttotal-", "-element-"] allwildcardslistwithhybridlists = [materiallist, descriptorlist,outfitlist,conceptsuffixlist,culturelist, objecttotallist, outfitprinttotallist, elementlist] diff --git a/csvfiles/accessories.csv b/csvfiles/accessories.csv index 812f58f..d853d0d 100644 --- a/csvfiles/accessories.csv +++ b/csvfiles/accessories.csv @@ -142,6 +142,9 @@ monocle?both Browline glasses?both Goggles?both Horn-rimmed glasses?both +Round Glasses?both sun hat?both Veil?both -Bindi?both \ No newline at end of file +Bindi?both +Bling?both +Trinkets?both \ No newline at end of file diff --git a/csvfiles/charactertypes.csv b/csvfiles/charactertypes.csv index eecdfb6..6c0bf7a 100644 --- a/csvfiles/charactertypes.csv +++ b/csvfiles/charactertypes.csv @@ -106,6 +106,7 @@ Family Guy series Simpsons series Rick and Morty series Vikings series +Vikings series shieldmaiden Bob's Burgers series Buffy the Vampire Slayer series Altered Carbon series @@ -185,4 +186,5 @@ Inglourious Basterds movie Braveheart movie A Clockwork Orange movie Top Gun movie -The Grand Budapest Hotel movie \ No newline at end of file +The Grand Budapest Hotel movie +Steampunk \ No newline at end of file diff --git a/csvfiles/concept_prefix.csv b/csvfiles/concept_prefix.csv index 9baaba3..816fcec 100644 --- a/csvfiles/concept_prefix.csv +++ b/csvfiles/concept_prefix.csv @@ -143,4 +143,6 @@ Enscenement Being Deity Clergy -Master \ No newline at end of file +Master +Concept +Armor \ No newline at end of file diff --git a/csvfiles/containers.csv b/csvfiles/containers.csv index 8674bc4..7d368a0 100644 --- a/csvfiles/containers.csv +++ b/csvfiles/containers.csv @@ -26,4 +26,8 @@ Glass canister Machine Glass case Display case -Museum glass \ No newline at end of file +Museum glass +Glass Dome +Snowglobe +Crystal Ball +Palantir \ No newline at end of file diff --git a/csvfiles/fictional characters.csv b/csvfiles/fictional characters.csv index 6c06247..b4df837 100644 --- a/csvfiles/fictional characters.csv +++ b/csvfiles/fictional characters.csv @@ -508,4 +508,7 @@ Miss Piggy;female Santa;male Stormtrooper;genderless Anna from Frozen;female --charactertype- character;both \ No newline at end of file +-charactertype- character;both +Lagertha from Vikings;female +Ragnar from Vikings;male +Rollo from Vikings;male \ No newline at end of file diff --git a/csvfiles/jobs.csv b/csvfiles/jobs.csv index 1695542..4a95585 100644 --- a/csvfiles/jobs.csv +++ b/csvfiles/jobs.csv @@ -16,10 +16,10 @@ Adventurer;both Air traffic controller;both Airbender;both Alchemist;both -Alchemist;both -Alchemist;both Amazone;female Android;both +Angel;both +Angel of -conceptsuffix- and -conceptsuffix-;both Anthropologist;both Apothecary;both Arcane trickster;both @@ -205,12 +205,11 @@ Gangster;both Gardener;both Geek;both Geek Squad Employee;both -Geisha;both Geisha;female General;both +Gentleman;male Geographer;both Geologist;both -Geologist;both Geomancer;both Ghost hunter;both Ghost;both @@ -219,15 +218,15 @@ Glassblower;both Goldsmith;both Gondolier;both Grave robber;both -Groom;both Groom;male Guardian;both Gunner;both Gunnery Sergeant;both Guru;both Gypsy;both +Hacker;both Harbinger;both -harajuku girl;female +Harajuku Girl;female Harpist;both Healer;both Henchman;both @@ -243,7 +242,6 @@ Hooded figure;both Humanitarian;both hunk;male Hunter;both -Hunter;both Ice Cream Vendor;both Ice king;male Ice queen;female @@ -265,6 +263,7 @@ Jeweler;both Jock;both Journalist;both Judge;both +Junkie;both K-pop star;both Khan;both King;male @@ -287,12 +286,11 @@ Lifeguard;both Lord;male Loremaster;both Lumberjack;both -Lumberjack;both +Machinint;both Maffiosi;both Mage slayer;both Mage;both Magician;both -Magician;both Maid;female Maiden;female Major;both @@ -433,6 +431,7 @@ Shadowmage;both Shady figure;both Shaolinn Monk;both Shepherd;both +Shieldmaiden;female Ship captain;both Shipbuilder;both Shoemaker;both diff --git a/csvfiles/locations.csv b/csvfiles/locations.csv index 1fcfca2..c6a9809 100644 --- a/csvfiles/locations.csv +++ b/csvfiles/locations.csv @@ -32,6 +32,7 @@ Anguilla Antarctic Antigua Antigua and Barbuda +Antipaxos Antique store Antwerp Apartment building diff --git a/csvfiles/minioutfits.csv b/csvfiles/minioutfits.csv index b9d7b0a..a49b36d 100644 --- a/csvfiles/minioutfits.csv +++ b/csvfiles/minioutfits.csv @@ -1,6 +1,6 @@ OR(;elegant;casual;uncommon) outfit?both OR(;-materialcombination-;uncommon) clothes OR(;tailored by -fashiondesigner-;uncommon)?both -OR(;heavy;medium;light;battle;iron;steel;-materialcombination-;uncommon) armor?both +OR(;heavy;medium;light;battle;iron;steel;-materialcombination-;plate;-age-;-charactertype-;uncommon) armor?both OR(;A-line;maxi;formal;Halter;Midi;mini;Off-the-shoulder;Peplum;Ruffled;Sheath;Strapless;wedding;gala;uncommon) dress?female OR(;business;formal;uncommon) suit?both robe OR(;tailored by -fashiondesigner-;uncommon)?both diff --git a/csvfiles/objects.csv b/csvfiles/objects.csv index 0382f0e..58d9dc4 100644 --- a/csvfiles/objects.csv +++ b/csvfiles/objects.csv @@ -325,4 +325,7 @@ Sphericon Totem -material- Totem Doll -matryoshka doll \ No newline at end of file +matryoshka doll +Crystal Ball +Palantir +Scarecrow \ No newline at end of file diff --git a/csvfiles/objectstohold.csv b/csvfiles/objectstohold.csv new file mode 100644 index 0000000..0a59ec8 --- /dev/null +++ b/csvfiles/objectstohold.csv @@ -0,0 +1,17 @@ +Lantern +Candle +Light +Plushy +-animal- Plushy +Sword +Shield +Sword and Shield +Cup of Coffee +Cup of Tea +Pet +Pet -animal- +Spear +Gun +-element- +Musical Instrument +Ball \ No newline at end of file diff --git a/csvfiles/outfits.csv b/csvfiles/outfits.csv index e4b8dd0..3e22f36 100644 --- a/csvfiles/outfits.csv +++ b/csvfiles/outfits.csv @@ -1,4 +1,7 @@ +-age- outfit +-age- armor -material- outfit +-material- plate armor 1920s flapper dress 1950s poodle skirts 1960s mod fashion diff --git a/csvfiles/outfitvomit.csv b/csvfiles/outfitvomit.csv index 4dbee05..7077596 100644 --- a/csvfiles/outfitvomit.csv +++ b/csvfiles/outfitvomit.csv @@ -13,4 +13,5 @@ also has a OR(;large;flowing;rare) OR(hooded cloak;cloak;cape;coat;-season- coat rolled up sleeves is in the style of -artmovement- -outfitdescriptor- and -outfitdescriptor- --materialcombination-, -colorcombination- \ No newline at end of file +-materialcombination-, -colorcombination- +OR(fishnets;trinkets;bling) \ No newline at end of file diff --git a/csvfiles/settings.csv b/csvfiles/settings.csv index e924386..fa5374b 100644 --- a/csvfiles/settings.csv +++ b/csvfiles/settings.csv @@ -12,6 +12,10 @@ Futuristic Sci-Fi Disney Western +Eastern +Oriental +Pirate +Viking Ancient Videogame Horror @@ -27,4 +31,5 @@ Matrix Mad Max Harry Potter Shadowrun -Neo-Tokyo \ No newline at end of file +Neo-Tokyo +Steampunk \ No newline at end of file diff --git a/csvfiles/special_lists/humanadditions.csv b/csvfiles/special_lists/humanadditions.csv index 74e4bd4..03d112b 100644 --- a/csvfiles/special_lists/humanadditions.csv +++ b/csvfiles/special_lists/humanadditions.csv @@ -1,5 +1,5 @@ OR(;, -heshe- is;rare) OR(riding;with) a -animal- -OR(;, -heshe- is;rare) holding a OR(-object-;lantern;pet;plushy;plushy -animal-) +OR(;, -heshe- is;rare) holding a OR(-objectstohold-;-object-;rare) OR(;, -heshe- is;rare) driving a -vehicle- OR(;, -heshe- is;rare) surrounded by OR(-object-s;-flora-s;-space-) OR(;, -heshe- is;rare) eating -food- diff --git a/csvfiles/vomit.csv b/csvfiles/vomit.csv index 3d80af4..ffe0a56 100644 --- a/csvfiles/vomit.csv +++ b/csvfiles/vomit.csv @@ -101,6 +101,7 @@ moody Movie concept art multidimensional National Geographic +nightmare fuel opulent Orton effect otherworldly