diff --git a/build_dynamic_prompt.py b/build_dynamic_prompt.py index 305f6c4..b277720 100644 --- a/build_dynamic_prompt.py +++ b/build_dynamic_prompt.py @@ -89,9 +89,10 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all waterlocationlist = csv_to_list("waterlocations", antilist) containerlist = csv_to_list("containers", antilist) firstnamelist = csv_to_list(csvfilename="firstnames",antilist=antilist,skipheader=True,gender=gender) + floralist = csv_to_list("flora", antilist) humanlist = fictionallist + nonfictionallist + humanoidlist - objecttotallist = objectlist + buildinglist + vehiclelist + foodlist + spacelist + objecttotallist = objectlist + buildinglist + vehiclelist + foodlist + spacelist + floralist # build artists list artistlist = [] @@ -157,6 +158,7 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all generatefood = True generatebuilding = True generatespace = True + generateflora = True generateanimal = True generatemanwoman = True generatemanwomanrelation = True @@ -256,6 +258,8 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all generatebuilding = False if item[0] == 'subject_space' and item[1] != 'on': generatespace = False + if item[0] == 'subject_flora' and item[1] != 'on': + generateflora = False # animals if item[0] == 'subject_animal' and item[1] != 'on': generateanimal = False @@ -427,7 +431,8 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all generatefood = bool(foodlist) and generatefood generatebuilding = bool(buildinglist) and generatebuilding generatespace = bool(spacelist) and generatespace - generateobject = generatevehicle or generateobject or generatefood or generatebuilding or generatespace + generateflora = bool(floralist) and generateflora + generateobject = generatevehicle or generateobject or generatefood or generatebuilding or generatespace or generateflora if(generatevehicle): @@ -454,6 +459,11 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all addontolocationlist.append("-building-") addontolocationinsidelist.append("-building-") + if(generateflora): + objectwildcardlist.append("-flora-") + hybridlist.append("-flora-") + addontolocationlist.append("-flora-") + if(generateobject): mainchooserlist.append("object") @@ -1233,6 +1243,8 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all objectwildcardlist = ["-building-"] if(subtypeobject == "space"): objectwildcardlist = ["-space-"] + if(subtypeobject == "flora"): + objectwildcardlist = ["-flora-"] # if we have a given subject, we should skip making an actual subject if(givensubject == ""): @@ -1897,9 +1909,10 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all "-manwomanrelation-" in completeprompt or "-waterlocation-" in completeprompt or "-container-" in completeprompt or - "-firstname-" 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-", "-brand-", "-space-", "-artist-", "-imagetype-", "-othertype-", "-quality-", "-lighting-", "-camera-", "-lens-","-imagetypequality-", "-poemline-", "-songline-", "-greatwork-", "-artistfantasy-", "-artistpopular-", "-artistromanticism-", "-artistphotography-", "-emoji-", "-timeperiod-", "-shotsize-", "-musicgenre-", "-animaladdition-", "-addontolocationinside-", "-addontolocation-", "-objectaddition-", "-humanaddition-", "-overalladdition-", "-focus-", "-direction-", "-styletilora-", "-manwomanrelation-", "-waterlocation-", "-container-", "-firstname-"] - 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, 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] + "-firstname-" in completeprompt or + "-flora-" 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-", "-brand-", "-space-", "-artist-", "-imagetype-", "-othertype-", "-quality-", "-lighting-", "-camera-", "-lens-","-imagetypequality-", "-poemline-", "-songline-", "-greatwork-", "-artistfantasy-", "-artistpopular-", "-artistromanticism-", "-artistphotography-", "-emoji-", "-timeperiod-", "-shotsize-", "-musicgenre-", "-animaladdition-", "-addontolocationinside-", "-addontolocation-", "-objectaddition-", "-humanaddition-", "-overalladdition-", "-focus-", "-direction-", "-styletilora-", "-manwomanrelation-", "-waterlocation-", "-container-", "-firstname-", "-flora-"] + 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, 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] allwildcardslistwithhybrid = ["-material-", "-descriptor-", "-outfit-", "-conceptsuffix-","-culture-", "-objecttotal-"] allwildcardslistwithhybridlists = [materiallist, descriptorlist,outfitlist,conceptsuffixlist,culturelist, objecttotallist] diff --git a/csvfiles/config/default_config.csv b/csvfiles/config/default_config.csv index 3ccc7d8..d2fe8ba 100644 --- a/csvfiles/config/default_config.csv +++ b/csvfiles/config/default_config.csv @@ -10,6 +10,7 @@ subject_vehicle;on subject_food;on subject_space;on subject_building;on +subject_flora;on # animals; subject_animal;on # humanoids; diff --git a/csvfiles/nature.csv b/csvfiles/flora.csv similarity index 50% rename from csvfiles/nature.csv rename to csvfiles/flora.csv index 3582bc6..9eccaed 100644 --- a/csvfiles/nature.csv +++ b/csvfiles/flora.csv @@ -1,81 +1,133 @@ -Tree -Bush -Flower -Oak tree -Maple tree -Pine tree -Apple tree -Cherry blossom tree -Redwood tree -Birch tree -Willow tree -Palm tree -Magnolia tree -Roses -Sunflowers -Daisies -Tulips -Orchids -Lilies -Poppies -Hydrangeas -Irises -Marigolds -Leaf -Twig -Pinecone +Acacia Acorn -Moss -Seedling -Petal -Fern -Mushroom -Mossy rock -Beehive -Vine -Willow basket -Coral reef -Honeycomb -Wildflower bouquet -Cactus spines -Pebble -Bamboo shoot -Sunflower field -Pine needle carpet -River stone -Seashell +Alder +Algae +Apple tree +Ash Autumn leaf pile -Seaweed -Pine bark -Butterfly cocoon -Dandelion fluff -Bird nest -Water lily pad -Herb garden -Wild berry bush -Tree stump -Coral reef -Wild mushroom patch -Tulip bulb -Oak tree branch -Hummingbird feeder -Pond water lilies -Straw bale +Azalea +Bark +Bamboo +Bamboo shoot +Banyan +Baobab +Beech +Beehive +Birch +Birch tree +Black oak +Branch Bouquet -Forest -Meadow -Garden --waterlocation- -Rainforest -Waterfall -Rock formation -Foliage -Wilderness -Biodiversity -Ecosystem +Bush +Cactus +Cactus spines +Camellia +Carnation +Catalpa +Cedar +Cherry blossom tree +Chestnut +Chrysanthemum +Coral reef +Cypress +Daffodil +Daisies +Daisy +Dandelion +Dandelion fluff +Dogwood +Elm +Eucalyptus +Fern +Fir Flora -Fauna -Woodland -Arboretum +Flower +Foliage +Forest +Fungus +Garden +Geranium +Ginkgo +Grass +Hazel +Herb garden +Hickory +Holly +Honeycomb +Hummingbird feeder +Hydrangea +Iris +Ironwood +Ivy +Jasmine +Juniper +Lavender +Leaf +Lichen +Lilac +Lily +Linden +Locust +Magnolia tree +Mahogany +Maple tree +Marigold +Marigolds +Meadow +Moss +Mossy rock +Mulberry +Mushroom +Nature +Oak tree +Olive Orchard -Herb garden \ No newline at end of file +Orchid +Palm tree +Pear +Pebble +Pecan +Peony +Petal +Petunia +Pine needle carpet +Pine tree +Pinecone +Poinsettia +Pond water lilies +Poplar +Poppies +Red oak +Redwood tree +River stone +Rose +Roses +Sagebrush +Sassafras +Seagrass +Seaweed +Seedling +Sequoia +Shrub +Spruce +Succulent +Sunflower +Sycamore +Tree +Tree stump +Tulip +Flower Bulb +Twig +Vine +Violet +Walnut +Water lily pad +Waterfall +White oak +Wild berry bush +Wild mushroom patch +Wilderness +Wildflower bouquet +Willow +Willow tree +Yew \ No newline at end of file diff --git a/csvfiles/special_lists/backgroundtypes.csv b/csvfiles/special_lists/backgroundtypes.csv index 798e587..0c399a9 100644 --- a/csvfiles/special_lists/backgroundtypes.csv +++ b/csvfiles/special_lists/backgroundtypes.csv @@ -23,4 +23,5 @@ simple -color- background -descriptor- background -descriptor- -color- background -culture- background --space- background \ No newline at end of file +-space- background +-flora- in background \ No newline at end of file diff --git a/csvfiles/special_lists/humanadditions.csv b/csvfiles/special_lists/humanadditions.csv index bb30852..c1fa9eb 100644 --- a/csvfiles/special_lists/humanadditions.csv +++ b/csvfiles/special_lists/humanadditions.csv @@ -5,6 +5,8 @@ visiting a -building- visiting -location- with a -animal- surrounded by -object-s +surrounded by -flora-s +surrounded by -space- eating -food- and -human- holding hands with -human- diff --git a/csvfiles/special_lists/minilocationadditions.csv b/csvfiles/special_lists/minilocationadditions.csv index 027b72d..fe6454a 100644 --- a/csvfiles/special_lists/minilocationadditions.csv +++ b/csvfiles/special_lists/minilocationadditions.csv @@ -6,4 +6,5 @@ -color- -minilocation- lush -minilocation- dense -minilocation- --season- -minilocation- \ No newline at end of file +-season- -minilocation- +-minilocation- with -flora- \ No newline at end of file diff --git a/csvfiles/special_lists/objectadditions.csv b/csvfiles/special_lists/objectadditions.csv index f570ed3..61bcc7c 100644 --- a/csvfiles/special_lists/objectadditions.csv +++ b/csvfiles/special_lists/objectadditions.csv @@ -10,4 +10,5 @@ detailed with -material- -descriptor- patterns intricate details smooth designed by -brand- -made from -space- \ No newline at end of file +made from -space- +made from -flora- \ No newline at end of file diff --git a/csvfiles/special_lists/overalladditions.csv b/csvfiles/special_lists/overalladditions.csv index 305a5d6..db0b502 100644 --- a/csvfiles/special_lists/overalladditions.csv +++ b/csvfiles/special_lists/overalladditions.csv @@ -6,7 +6,7 @@ flying distant nuclear explosion de dia los muertos mechanical -lord of the rings scenery landscape +lord of the rings scenery landscape, -flora- between the stars surrounded by fire and ice infused with ethereal color @@ -41,4 +41,5 @@ clean, soap bubbles, iridescent -color- light shining from within and the genre is -musicgenre- displayed in a rainbow pattern -inside a -container- \ No newline at end of file +inside a -container- +-flora-, -flora-, -flora-, -flora- \ No newline at end of file diff --git a/csvfiles/waterlocations.csv b/csvfiles/waterlocations.csv index bf43b4c..35f1655 100644 --- a/csvfiles/waterlocations.csv +++ b/csvfiles/waterlocations.csv @@ -24,4 +24,7 @@ Glacier Underwater Cave Onsen Bath -Shower \ No newline at end of file +Shower +Sauna +Spa +Thermal baths \ No newline at end of file diff --git a/scripts/onebuttonprompt.py b/scripts/onebuttonprompt.py index cee92a8..db62683 100644 --- a/scripts/onebuttonprompt.py +++ b/scripts/onebuttonprompt.py @@ -80,6 +80,7 @@ generateobject = True generatefood = True generatebuilding = True generatespace = True +generateflora = True generateanimal = True generatemanwoman = True generatemanwomanrelation = True @@ -107,6 +108,8 @@ for item in config: generatebuilding = False if item[0] == 'subject_space' and item[1] != 'on': generatespace = False + if item[0] == 'subject_flora' and item[1] != 'on': + generateflora = False # animals if item[0] == 'subject_animal' and item[1] != 'on': generateanimal = False @@ -167,6 +170,8 @@ if(generatebuilding): subjectsubtypesobject.append("buildings") if(generatespace): subjectsubtypesobject.append("space") +if(generateflora): + subjectsubtypesobject.append("flora") # humanoids (should I review descriptions??) if(generatemanwoman):