diff --git a/build_dynamic_prompt.py b/build_dynamic_prompt.py index 3fe8a12..305f6c4 100644 --- a/build_dynamic_prompt.py +++ b/build_dynamic_prompt.py @@ -88,6 +88,7 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all manwomanrelationlist = csv_to_list(csvfilename="manwomanrelations",antilist=antilist,skipheader=True,gender=gender) waterlocationlist = csv_to_list("waterlocations", antilist) containerlist = csv_to_list("containers", antilist) + firstnamelist = csv_to_list(csvfilename="firstnames",antilist=antilist,skipheader=True,gender=gender) humanlist = fictionallist + nonfictionallist + humanoidlist objecttotallist = objectlist + buildinglist + vehiclelist + foodlist + spacelist @@ -163,6 +164,7 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all generatenonfictionalcharacter = True generatehumanoids = True generatejob = True + generatefirstnames = True generatelandscape = True generateevent = True generateconcepts = True @@ -270,6 +272,8 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all generatehumanoids = False if item[0] == 'subject_job' and item[1] != 'on': generatejob = False + if item[0] == 'subject_firstnames' and item[1] != 'on': + generatefirstnames = False # landscape if item[0] == 'subject_landscape' and item[1] != 'on': generatelandscape = False @@ -459,7 +463,8 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all generatemanwoman = bool(manwomanlist) and generatemanwoman generatemanwomanrelation = bool(manwomanrelationlist) and generatemanwomanrelation generatejob = bool(joblist) and generatejob - generatehumanoid = generatefictionalcharacter or generatenonfictionalcharacter or generatehumanoids or generatemanwoman or generatejob or generatemanwomanrelation + generatefirstnames = bool(firstnamelist) and generatefirstnames + generatehumanoid = generatefictionalcharacter or generatenonfictionalcharacter or generatehumanoids or generatemanwoman or generatejob or generatemanwomanrelation or generatefirstnames if(generatefictionalcharacter): @@ -488,6 +493,9 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all if(generatehumanoid): mainchooserlist.append("humanoid") + + if(generatefirstnames): + humanoidsubjectchooserlist.append("firstname") generateanimal = bool(animallist) and generateanimal @@ -870,7 +878,7 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all else: subjectchooser = "animal as human" if(mainchooser == "humanoid"): - #humanoidsubjectchooserlist = ["human", "job", "fictional", "non fictional", "humanoid", "manwomanrelation"] + #humanoidsubjectchooserlist = ["human", "job", "fictional", "non fictional", "humanoid", "manwomanrelation", "firstname"] subjectchooser = random.choice(humanoidsubjectchooserlist) if(subtypehumanoid != "all"): if(subtypehumanoid == "generic humans"): @@ -885,6 +893,8 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all subjectchooser = "humanoid" if(subtypehumanoid == "based on job or title"): subjectchooser = "job" + if(subtypehumanoid == "based on first name"): + subjectchooser = "firstname" if(mainchooser == "landscape"): subjectchooser = "landscape" if(mainchooser == "concept"): @@ -1204,10 +1214,10 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all if(chance_roll(insanitylevel, subjectdescriptor2chance) and generatedescriptors == True): completeprompt += "-descriptor- " - if(subjectchooser in ["animal as human,","human", "job", "fictional", "non fictional", "humanoid", "manwomanrelation"] and chance_roll(insanitylevel, subjectbodytypechance) and generatebodytype == True): + if(subjectchooser in ["animal as human,","human", "job", "fictional", "non fictional", "humanoid", "manwomanrelation","firstname"] and chance_roll(insanitylevel, subjectbodytypechance) and generatebodytype == True): completeprompt += "-bodytype- " - if(subjectchooser in ["object","animal as human,","human", "job", "fictional", "non fictional", "humanoid", "manwomanrelation"] and chance_roll(insanitylevel, subjectculturechance) and generatedescriptors == True): + if(subjectchooser in ["object","animal as human,","human", "job", "fictional", "non fictional", "humanoid", "manwomanrelation","firstname"] and chance_roll(insanitylevel, subjectculturechance) and generatedescriptors == True): completeprompt += "-culture- " if(mainchooser == "object"): @@ -1344,6 +1354,21 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all completeprompt += ":" + random.choice(hybridhumanlist) + ":" + str(random.randint(1,5)) + "] " hybridorswap = "" + if(subjectchooser == "firstname"): + if rare_dist(insanitylevel): + hybridorswaplist = ["hybrid", "swap"] + hybridorswap = random.choice(hybridorswaplist) + completeprompt += "[" + + completeprompt += "-firstname- " + + if(hybridorswap == "hybrid"): + completeprompt += "|" + "-firstname-" + "] " + if(hybridorswap == "swap"): + completeprompt += ":" + "-firstname-" + ":" + str(random.randint(1,5)) + "] " + hybridorswap = "" + + else: completeprompt += " " + givensubject + " " @@ -1412,7 +1437,7 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all # riding an animal, holding an object or driving a vehicle, rare - if(subjectchooser in ["animal as human,","human","fictional", "non fictional", "humanoid", "manwomanrelation"] and chance_roll(insanitylevel, humanadditionchance) and generatehumanaddition == True): + if(subjectchooser in ["animal as human,","human","fictional", "non fictional", "humanoid", "manwomanrelation","firstname"] and chance_roll(insanitylevel, humanadditionchance) and generatehumanaddition == True): humanspecial = 1 completeprompt += "-humanaddition- " @@ -1428,7 +1453,7 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all # SD understands emoji's. Can be used to manipulate facial expressions. # emoji, legendary - if(subjectchooser in ["animal as human,","human","fictional", "non fictional", "humanoid", "manwomanrelation"] and chance_roll(insanitylevel, emojichance) and generateemoji== True): + if(subjectchooser in ["animal as human,","human","fictional", "non fictional", "humanoid", "manwomanrelation","firstname"] and chance_roll(insanitylevel, emojichance) and generateemoji== True): completeprompt += "-emoji-, " @@ -1439,7 +1464,7 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all # Job # either go job or activity, not both - if(subjectchooser in ["animal as human","human","fictional", "non fictional", "humanoid", "manwomanrelation"] and chance_roll(insanitylevel, joboractivitychance) and humanspecial != 1 and generatesubject == True): + if(subjectchooser in ["animal as human","human","fictional", "non fictional", "humanoid", "manwomanrelation","firstname"] and chance_roll(insanitylevel, joboractivitychance) and humanspecial != 1 and generatesubject == True): joboractivitylist = [joblist,humanactivitylist] completeprompt += random.choice(random.choice(joboractivitylist)) + ", " @@ -1458,16 +1483,16 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all completeprompt += " -minivomit-, " # outfit builder - if(subjectchooser in ["animal as human","human","fictional", "non fictional", "humanoid", "manwomanrelation"] and chance_roll(insanitylevel, outfitchance) and generateoutfit == True and humanspecial != 1): + if(subjectchooser in ["animal as human","human","fictional", "non fictional", "humanoid", "manwomanrelation", "firstname"] and chance_roll(insanitylevel, outfitchance) and generateoutfit == True and humanspecial != 1): completeprompt += ", wearing " + random.choice(buildoutfitlist) + ", " - if(subjectchooser in ["animal as human","human","fictional", "non fictional", "humanoid", "manwomanrelation"] and chance_roll(insanitylevel, posechance) and humanspecial != 1 and generatepose == True): + if(subjectchooser in ["animal as human","human","fictional", "non fictional", "humanoid", "manwomanrelation", "firstname"] and chance_roll(insanitylevel, posechance) and humanspecial != 1 and generatepose == True): completeprompt += random.choice(poselist) + ", " - if(subjectchooser in ["human","job","fictional", "non fictional", "humanoid", "manwomanrelation"] and chance_roll(insanitylevel, hairchance) and generatehairstyle == True): + if(subjectchooser in ["human","job","fictional", "non fictional", "humanoid", "manwomanrelation", "firstname"] and chance_roll(insanitylevel, hairchance) and generatehairstyle == True): completeprompt += random.choice(buildhairlist) + ", " - if(subjectchooser in ["animal as human,","human","fictional", "non fictional", "humanoid", "manwomanrelation"] and chance_roll(insanitylevel, accessorychance) and generateaccessorie == True and generateaccessories == True): + if(subjectchooser in ["animal as human,","human","fictional", "non fictional", "humanoid", "manwomanrelation", "firstname"] and chance_roll(insanitylevel, accessorychance) and generateaccessorie == True and generateaccessories == True): completeprompt += random.choice(buildaccessorielist) + ", " if(chance_roll(insanitylevel, humanoidinsideshotchance) and subjectchooser not in ["landscape", "concept"] and generateinsideshot == True): @@ -1871,9 +1896,10 @@ def build_dynamic_prompt(insanitylevel = 5, forcesubject = "all", artists = "all "-styletilora-" in completeprompt or "-manwomanrelation-" in completeprompt or "-waterlocation-" in completeprompt or - "-container-" 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-"] - 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] + "-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] 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 a308b13..3ccc7d8 100644 --- a/csvfiles/config/default_config.csv +++ b/csvfiles/config/default_config.csv @@ -19,6 +19,7 @@ subject_fictional;on subject_nonfictional;on subject_humanoid;on subject_job;on +subject_firstnames;on # landscape; subject_landscape;on # concept; diff --git a/csvfiles/cultures.csv b/csvfiles/cultures.csv index 0fa6488..d8f7286 100644 --- a/csvfiles/cultures.csv +++ b/csvfiles/cultures.csv @@ -199,7 +199,6 @@ Papuan Mennonite Basque Hmong -Basque Catalan Bavarian Swiss diff --git a/csvfiles/firstnames.csv b/csvfiles/firstnames.csv new file mode 100644 index 0000000..21dc518 --- /dev/null +++ b/csvfiles/firstnames.csv @@ -0,0 +1,1596 @@ +firstname;gender +AIrjen;god +Aarav;male +Abdel;male +Abdi;male +Abdul;male +Abdullah;male +Achille;male +Adam;male +Ádám;male +Adama;male +Adi;male +Adil;male +Adrian;male +Agus;male +Ahmad;male +Ahmed;male +Ahmet;male +Ahsan;male +Aidan;male +Aisea;male +Akihiko;male +Akira;male +Alain;male +Alejandro;male +Aleksandar;male +Aleksandr;male +Alem;male +Alessandro;male +Alexander;male +Alexandre;male +Alexandros;male +Alexandru;male +Ali;male +Aliaksandr;male +Aliaksei;male +Alik;male +Alioune;male +Amadou;male +Ambrose;male +Amer;male +Amin;male +Amir;male +Amr;male +An;male +Andre;male +André;male +Andrea;male +Andreas;male +Andrei;male +Andrej;male +Andrés;male +Andriy;male +Angus;male +Anil;male +Anis;male +Ante;male +Antoine;male +Antonio;male +Antonis;male +Antonius;male +Anupong;male +Arash;male +Arben;male +Ariel;male +Arjun;male +Arjuna;male +Armand;male +Arturo;male +Asad;male +Ashwin;male +Augustus;male +Avraham;male +Awad;male +Babacar;male +Baptiste;male +Basil;male +Bence;male +Benjamin;male +Benjamín;male +Binh;male +Binod;male +Blerim;male +Bongani;male +Boonma;male +Boris;male +Bram;male +Brian;male +Bruno;male +Budi;male +Burak;male +Caleb;male +Callum;male +Calvin;male +Carlo;male +Carlos;male +Cem;male +Chamara;male +Chanwit;male +Charbel;male +Chatchai;male +Cheick;male +Cheikh;male +Chen;male +Chen Wei;male +Cheng;male +Cheuk;male +Chih-Hao;male +Chinedu;male +Chinnawat;male +Christian;male +Christopher;male +Christos;male +Chun;male +Cillian;male +Claude;male +Collins;male +Connor;male +Constantine;male +Cooper;male +Cristóbal;male +Daan;male +Daichi;male +Daiki;male +Damian;male +Damien;male +Daniel;male +Darius;male +Darko;male +David;male +Dávid;male +Davide;male +Dawit;male +Decimus;male +Declan;male +Dedi;male +Dejan;male +Dennis;male +Dev;male +Diego;male +Dieudonné;male +Dilshan;male +Dimitar;male +Dimitrios;male +Dinesh;male +Dmitri;male +Dmitry;male +Dmytro;male +Dominic;male +Donovan;male +Dritan;male +Duc;male +Dylan;male +Dženan;male +Dzmitry;male +Edey;male +Edgar;male +Eduardo;male +Eiji;male +Eitan;male +Elias;male +Elijah;male +Emeka;male +Émile;male +Emir;male +Emmanuel;male +Emre;male +Eric;male +Erik;male +Ernst;male +Ethan;male +Étienne;male +Evan;male +Ewan;male +Fa'afetai;male +Fadi;male +Faisal;male +Faizal;male +Farah;male +Farhad;male +Farhan;male +Farid;male +Faruk;male +Fathi;male +Felipe;male +Felix;male +Feng;male +Finlay;male +Finn;male +Florian;male +Florin;male +Floris;male +Francesco;male +Francis;male +Francisco;male +François;male +Gabriel;male +Gaius;male +Gareth;male +Gentian;male +Georges;male +Georgi;male +Georgios;male +Gergő;male +Gilbert;male +Giovanni;male +Giuseppe;male +Goran;male +Govinda;male +Gunnar;male +Guo;male +Gustave;male +Habtamu;male +Hafiz;male +Hailu;male +Hamid;male +Hamish;male +Hamza;male +Hani;male +Hannes;male +Harald;male +Haris;male +Harrison;male +Haruki;male +Haruto;male +Hasan;male +Hassan;male +Hassen;male +Hector;male +Hendra;male +Henri;male +Henrik;male +Henry;male +Hideki;male +Hieu;male +Hiroshi;male +Hisham;male +Ho;male +Huang;male +Hugo;male +Hussein;male +Huw;male +Hyun-woo;male +Ibrahim;male +Ibrahima;male +Ieuan;male +Ifan;male +Ignacio;male +Igor;male +Ikerior;male +Ilaisa;male +Ilir;male +Imran;male +Innocent;male +Ioannis;male +Ion;male +Iosefa;male +Iram;male +Isaac;male +Isamu;male +Iskandar;male +István;male +Itay;male +Ivan;male +Jabulani;male +Jack;male +Jakub;male +Jamal;male +James;male +Jan;male +Ján;male +Jasmin;male +Jason;male +Javier;male +Jean;male +Jean-Claude;male +Jean-Paul;male +Jelani;male +Jerome;male +Ji-hoon;male +Ji-hyeon;male +Ji-hyun;male +Jia Hui;male +Jian;male +Jiang;male +Jirayu;male +John;male +Joko;male +Jonathan;male +Jone;male +Joon-ho;male +José;male +Josef;male +Joseph;male +Joshua;male +Josip;male +Juan;male +Jules;male +Julian;male +Julius;male +Juma;male +Jun;male +Junichi;male +Justinian;male +Kabuo;male +Kacper;male +Kai;male +Kai Jie;male +Kaito;male +Kamal;male +Kameli;male +Kamran;male +Kapila;male +Kareem;male +Karim;male +Kazuki;male +Kazuo;male +Kebekl;male +Kendrick;male +Kenji;male +Kenjiro;male +Kevin;male +Kgosi;male +Khairul;male +Khaled;male +Khalid;male +Khoa;male +Kiril;male +Koffi;male +Kofi;male +Koji;male +Kota;male +Krishna;male +Krit;male +Kwame;male +Lachlan;male +Lars;male +Leif;male +Lekinio;male +Leo;male +Leonardo;male +Levente;male +Levi;male +Li;male +Lial;male +Liam;male +Liang;male +Likin;male +Lin;male +Liu;male +Long;male +Lorenzo;male +Louis;male +Luan;male +Luca;male +Lucas;male +Lucian;male +Lucius;male +Ludwig;male +Luis;male +Luka;male +Lukáš;male +Łukasz;male +Mackerel;male +Magnus;male +Mahfuz;male +Mahinda;male +Mahmoud;male +Malakai;male +Malcolm;male +Malik;male +Mamadou;male +Man;male +Mandla;male +Manu;male +Manuel;male +Marcel;male +Marcello;male +Marcelo;male +Marco;male +Marcos;male +Marcus;male +Marián;male +Mario;male +Marius;male +Marko;male +Martin;male +Martín;male +Masaru;male +Masashi;male +Mason;male +Matagi;male +Máté;male +Matej;male +Mateusz;male +Mathieu;male +Matías;male +Matthew;male +Matthias;male +Max;male +Maxim;male +Maximilian;male +Maximus;male +Mees;male +Mehdi;male +Mehmet;male +Mehran;male +Mejit;male +Melekeok;male +Michael;male +Michal;male +Michał;male +Michel;male +Miguel;male +Mika;male +Mikalai;male +Mikhail;male +Milan;male +Min-ho;male +Min-joon;male +Ming;male +Ming Wei;male +Ming-Hui;male +Minh;male +Mirza;male +Modibo;male +Mohamed;male +Mohammad;male +Mohammed;male +Mohd;male +Mortimer;male +Mosese;male +Moshe;male +Mostafa;male +Moussa;male +Mpho;male +Murat;male +Murray;male +Musa;male +Mustafa;male +Mykhailo;male +Nabil;male +Nadav;male +Nalin;male +Nam;male +Naoki;male +Narong;male +Nasir;male +Nasser;male +Nassim;male +Nathan;male +Natnael;male +Nattapong;male +Navid;male +Neimo;male +Nemo;male +Nenad;male +Nermin;male +Ngerulmud;male +Niall;male +Nicolae;male +Nicolas;male +Niels;male +Nigel;male +Nikola;male +Nikolai;male +Nikolaos;male +Nikolay;male +Nima;male +Niroshan;male +Nizar;male +Noah;male +Noboru;male +Octavius;male +Odin;male +Olaf;male +Olamide;male +Oleg;male +Oleksandr;male +Olis;male +Oliver;male +Olivier;male +Ollei;male +Oluwaseun;male +Omar;male +Oscar;male +Oskar;male +Osman;male +Othman;male +Oumar;male +Ousmane;male +Owain;male +Owen;male +Pak;male +Pakorn;male +Panagiotis;male +Pascal;male +Patrick;male +Paul;male +Paulo;male +Pavel;male +Pavlo;male +Paweł;male +Pekoi;male +Petar;male +Peter;male +Péter;male +Petr;male +Philippe;male +Pierre;male +Pieter;male +Pietro;male +Piyus;male +Pongpol;male +Pradeep;male +Prakash;male +Pranav;male +Prasit;male +Qiang;male +Quang;male +Quintus;male +Rachid;male +Radu;male +Raed;male +Rafael;male +Raffaele;male +Rafiq;male +Ragnar;male +Rahul;male +Raj;male +Rajen;male +Rajesh;male +Ramesh;male +Rami;male +Rashid;male +Ratu;male +Ravi;male +Rémi;male +Ren;male +René;male +Reza;male +Rhys;male +Ricardo;male +Richard;male +Ridel;male +Riley;male +Rilometo;male +Rizal;male +Robert;male +Roberto;male +Roger;male +Roland;male +Roman;male +Rory;male +Ross;male +Rudi;male +Ryan;male +Ryo;male +Ryoichi;male +Ryota;male +Saad;male +Said;male +Saiful;male +Saleh;male +Samba;male +Sami;male +Samir;male +Samuel;male +Sanjay;male +Sanjeeva;male +Satoshi;male +Scott;male +Sean;male +Sebastian;male +Sebastián;male +Semere;male +Semisi;male +Semwen;male +Seo-jin;male +Seo-joon;male +Serge;male +Sergei;male +Sergio;male +Serhiy;male +Serkan;male +Shahid;male +Shahram;male +Shinichi;male +Shinji;male +Shinjiro;male +Shiro;male +Shota;male +Shpetim;male +Siarhei;male +Sigurd;male +Simon;male +Sing;male +Sione;male +Sipho;male +Sizwe;male +Slamet;male +Slobodan;male +Sofiane;male +Sokol;male +Sombat;male +Somchai;male +Sora;male +Souleymane;male +Spyridon;male +Stefan;male +Stefano;male +Steffan;male +Stephen;male +Stjepan;male +Stojan;male +Stoyan;male +Stuart;male +Surangel;male +Suresh;male +Surin;male +Surya;male +Suthep;male +Sven;male +Syafiq;male +Szymon;male +Tak;male +Takashi;male +Takumi;male +Tama;male +Tamás;male +Taniela;male +Tao;male +Taras;male +Tarek;male +Tarik;male +Tariq;male +Taro;male +Tatsuya;male +Taua;male +Tawee;male +Temol;male +Terrence;male +Thabo;male +Themba;male +Theodore;male +Theodosius;male +Thiago;male +Thierry;male +Thijs;male +Thomas;male +Thor;male +Tiago;male +Titus;male +Tobias;male +Tobolar;male +Todor;male +Tomáš;male +Tomasi;male +Tomasz;male +Tomislav;male +Tomos;male +Toshio;male +Toshiro;male +Trevor;male +Tuan;male +Uche;male +Uladzimir;male +Ulf;male +Václav;male +Vadim;male +Valentin;male +Valerius;male +Valon;male +Vančo;male +Vasil;male +Vasyl;male +Victor;male +Viggo;male +Vikram;male +Viktor;male +Viliame;male +Viliamu;male +Vincent;male +Vincenzo;male +Vladimir;male +Wahyu;male +Wai;male +Wakna;male +Walid;male +Walter;male +Wang;male +Warit;male +Wei;male +Wei Jie;male +Wen-Hao;male +Wilhelm;male +William;male +Winston;male +Wisit;male +Wojciech;male +Woo-jin;male +Wouter;male +Xandii;male +Xavier;male +Xhevat;male +Xian;male +Xiang;male +Xing;male +Xu;male +Yahor;male +Yair;male +Yang;male +Yasushi;male +Yau;male +Yauheni;male +Yaw;male +Yaya;male +Yevgeny;male +Yew Meng;male +Yonas;male +Yordan;male +Yosef;male +Yoshihiro;male +Yoshio;male +Youssef;male +Youssou;male +Youssouf;male +Yu;male +Yu-Hsuan;male +Yuji;male +Yuki;male +Yukihiro;male +Yuriy;male +Yusuf;male +Yusuke;male +Yuta;male +Yutaka;male +Yuto;male +Yuttana;male +Yves;male +Zachary;male +Zahid;male +Zahir;male +Zaid;male +Zainal;male +Zakaria;male +Zayd;male +Zayn;male +Zedeki;male +Zenjiro;male +Zerihun;male +Zhang;male +Zhi Hao;male +Zhi-Yuan;male +Zhou;male +Zoltán;male +Zoran;male +Zuberi;male +Zulkifli;male +Zweli;male +Aaliyah;female +Aarti;female +Abena;female +Abigail;female +Achara;female +Adaeze;female +Adama;female +Adi;female +Adriana;female +Adwoa;female +Agnes;female +Ágnes;female +Aida;female +Aiko;female +Aileen;female +Aisha;female +Aishwarya;female +Aisling;female +Aissatou;female +Aiyana;female +Ajurin;female +Akari;female +Akemi;female +Akinyi;female +Akosua;female +Akua;female +Alaima;female +Alba;female +Albana;female +Alejandra;female +Aleksandra;female +Alena;female +Alessia;female +Alexandra;female +Alice;female +Alina;female +Aline;female +Alma;female +Alofa;female +Altantsetseg;female +Ama;female +Amaia;female +Amal;female +Amanda;female +Amani;female +Amara;female +Amelia;female +Amina;female +Aminata;female +Amira;female +Amma;female +Amna;female +Amra;female +Ana;female +Anaïs;female +Anastasia;female +Anastasiya;female +Andrea;female +Andreea;female +Ane;female +Angelica;female +Anh;female +Ani;female +Anika;female +Anjali;female +Anna;female +Anni;female +Anong;female +Antonia;female +Anwen;female +Anyango;female +Aoi;female +Aoibhinn;female +Aoife;female +Arisa;female +Arooj;female +Asha;female +Asma;female +Astou;female +Astrid;female +Athena;female +Aurelia;female +Aurora;female +Ava;female +Aya;female +Ayako;female +Ayan;female +Ayanda;female +Ayesha;female +Ayşe;female +Aysel;female +Ayu;female +Ayumi;female +Azadeh;female +Azar;female +Aziza;female +Azra;female +Bakuii;female +Barbora;female +Bayarmaa;female +Beatriz;female +Bells;female +Bertha;female +Bina;female +Brigid;female +Bronwyn;female +Buhle;female +Busisiwe;female +Caitriona;female +Camila;female +Camille;female +Caoimhe;female +Carla;female +Carlotta;female +Carmen;female +Carolina;female +Carys;female +Catalina;female +Caterina;female +Catherine;female +Catrin;female +Celeste;female +Celia;female +Celine;female +Cerys;female +Charlotte;female +Charmaine;female +Cheryl;female +Chia-Hui;female +Chia-Ying;female +Chiara;female +Chidinma;female +Ching-Yi;female +Chioma;female +Chiyo;female +Chizuru;female +Chloé;female +Choekyi;female +Christine;female +Chun;female +Ciara;female +Citlali;female +Citra;female +Clara;female +Clarisse;female +Claudia;female +Coatl;female +Cornelia;female +Coumba;female +Cynthia;female +Dalia;female +Daniela;female +Daria;female +Darya;female +Deepika;female +Delau;female +Despina;female +Dewi;female +Diana;female +Dilhani;female +Dimitra;female +Djeneba;female +Dolma;female +Dominika;female +Dóra;female +Dragana;female +Eden;female +Efua;female +Eiko;female +Eileen;female +Eilidh;female +Eimear;female +Eirene;female +Ekaterina;female +Elena;female +Eleni;female +Eleonora;female +Eliana;female +Elida;female +Elif;female +Elin;female +Elizabeth;female +Ella;female +Elma;female +Elona;female +Elsa;female +Ema;female +Emebet;female +Emese;female +Emi;female +Emiko;female +Emilia;female +Emily;female +Emine;female +Emma;female +Emmanuella;female +Enkhtuya;female +Eposi;female +Erika;female +Erza;female +Esi;female +Esmeralda;female +Esra;female +Estelle;female +Esther;female +Eszter;female +Eun-Ji;female +Eva;female +Evangeline;female +Evelyn;female +Fang;female +Farah;female +Fardowsa;female +Farhana;female +Farida;female +Fatemeh;female +Fatima;female +Fatma;female +Fatou;female +Fatoumata;female +Fatuma;female +Fernanda;female +Ffion;female +Fia;female +Fien;female +Fiona;female +Fitri;female +Flavia;female +Fleur;female +Florencia;female +Francesca;female +Francine;female +Franziska;female +Freya;female +Frida;female +Fusako;female +Gabriela;female +Gabriella;female +Galia;female +Gertrud;female +Gianna;female +Gita;female +Giulia;female +Gloria;female +Grace;female +Grainne;female +Greta;female +Gudrun;female +Gülay;female +Hae-Won;female +Hafsa;female +Hala;female +Halima;female +Hana;female +Hanna;female +Hannah;female +Harper;female +Haruka;female +Haruki;female +Haruko;female +Hawa;female +Heidi;female +Helena;female +Helene;female +Hilda;female +Hina;female +Hira;female +Hiroko;female +Hisako;female +Hiu;female +Houda;female +Hsiao-Ling;female +Hua;female +Huda;female +Hui;female +Huong;female +Ida;female +Idoia;female +Ifeoma;female +Ikureo;female +Imara;female +Inat;female +Indah;female +Ines;female +Inès;female +Inês;female +Ingrid;female +Inoni;female +Ioana;female +Irati;female +Irena;female +Irene;female +Irina;female +Isabella;female +Isidora;female +Isla;female +Itzel;female +Iva;female +Ivana;female +Iztaccíhuatl;female +Jahanara;female +Jana;female +Janelle;female +Janice;female +Jasmine;female +Javiera;female +Jeirok;female +Jelena;female +Jennifer;female +Jessica;female +Ji-Eun;female +Ji-Hye;female +Ji-Hyun;female +Ji-Yeon;female +Ji-Yeong;female +Jing;female +Joanna;female +Jolien;female +Josephine;female +Josiane;female +Julia;female +Júlia;female +Juliana;female +Julie;female +Kadiatou;female +Kala;female +Kalina;female +Kamala;female +Kanna;female +Kaoru;female +Karla;female +Karolina;female +Kata;female +Katarina;female +Katarína;female +Katarzyna;female +Katerina;female +Kateřina;female +Kateryna;female +Katharina;female +Katsiaryna;female +Kavisha;female +Kavita;female +Kaya;female +Kazuko;female +Keiko;female +Keira;female +Keisha;female +Kelsang;female +Kemi;female +Khadija;female +Khadijah;female +Khady;female +Khanyisile;female +Khulan;female +Kiara;female +Kimberly;female +Kinga;female +Kiyoko;female +Klara;female +Kristina;female +Kristína;female +Kunda;female +Kwamboka;female +Kyoko;female +Lai;female +Laia;female +Laila;female +Laisa;female +Lama;female +Lamia;female +Lamija;female +Lan;female +Lana;female +Lanora;female +Lara;female +Larissa;female +Latoya;female +Laura;female +Lavinia;female +Layla;female +Lea;female +Léa;female +Leah;female +Leena;female +Lei;female +Leiko;female +Leila;female +Leilani;female +Leire;female +Lejla;female +Lemlem;female +Lena;female +Leonie;female +Leonor;female +Lerato;female +Lethabo;female +Lhamo;female +Li;female +Li Wei;female +Lieke;female +Likiak;female +Likiep;female +Lila;female +Liliya;female +Lillian;female +Lily;female +Lin;female +Lina;female +Ling;female +Linh;female +Linnea;female +Liora;female +Liridona;female +Lisa;female +Litiana;female +Livia;female +Liya;female +Losalini;female +Lotte;female +Louise;female +Lowri;female +Lucia;female +Lucía;female +Lucie;female +Lucy;female +Luisa;female +Luljeta;female +Lulu;female +Luluk;female +Lwandle;female +Lydia;female +Maddi;female +Maeve;female +Mafalda;female +Magdalena;female +Mahira;female +Mahlet;female +Mai;female +Mairi;female +Maite;female +Maja;female +Makeda;female +Makereta;female +Mala;female +Malaika;female +Malak;female +Malani;female +Malia;female +Malsol;female +Mami;female +Mandukhai;female +Manel;female +Manka;female +Manon;female +Manuela;female +Marcella;female +Maria;female +María;female +Mariam;female +Mariama;female +Mariana;female +Marianne;female +Marie;female +Mariem;female +Marija;female +Marina;female +Markéta;female +Marta;female +Martha;female +Martina;female +Mary;female +Maryam;female +Masako;female +Mathilda;female +Mathilde;female +Matilde;female +Maya;female +Mayahuel;female +Mbali;female +Mballa;female +Mboma;female +Medina;female +Meera;female +Megan;female +Megumi;female +Mei;female +Mei Ling;female +Mei-Ling;female +Mejrak;female +Mekeya;female +Mele;female +Melia;female +Melissa;female +Mere;female +Mereoni;female +Mi-Young;female +Mia;female +Michaela;female +Michelle;female +Mihaela;female +Mila;female +Milena;female +Milica;female +Min-Ji;female +Ming;female +Mira;female +Miriam;female +Mirna;female +Misako;female +Mitsuko;female +Moira;female +Monique;female +Moran;female +Muhorakeye;female +Mukamana;female +Mukeshimana;female +Mutesi;female +Mwanaidi;female +Nada;female +Nadege;female +Nadia;female +Nafi;female +Nafisa;female +Nakalembe;female +Nakato;female +Nakawunde;female +Nala;female +Nalwadda;female +Namatovu;female +Namazzi;female +Nambi;female +Namgyal;female +Namutebi;female +Nana;female +Nanami;female +Nandi;female +Nannake;female +Nao;female +Naomi;female +Narantsetseg;female +Naree;female +Naresuan;female +Nari;female +Nasira;female +Nasra;female +Nassali;female +Natalia;female +Natallia;female +Natasa;female +Nathalie;female +Natsumi;female +Natthida;female +Nazanin;female +Ndella;female +Ndèye;female +Neda;female +Neema;female +Neha;female +Nene;female +Nenem;female +Nerea;female +Ngaruen;female +Ngeremes;female +Ngoc;female +Ngozi;female +Nia;female +Niamh;female +Nikolina;female +Nima;female +Nina;female +Nisha;female +Njeri;female +Noa;female +Nobuko;female +Noluthando;female +Nomvula;female +Nongnuch;female +Noor;female +Nora;female +Norazila;female +Noriko;female +Norma;female +Nour;female +Noura;female +Ntombi;female +Nuria;female +Nurul;female +Nusrat;female +Nyakio;female +Nyambura;female +Nyiramana;female +Nyota;female +Octavia;female +Odval;female +Oihana;female +Olena;female +Olga;female +Olivia;female +Orlaith;female +Orly;female +Ottilie;female +Oumou;female +Oyunbileg;female +Parisa;female +Patcharapimol;female +Pearl;female +Pei-Chen;female +Pema;female +Petra;female +Polina;female +Pooja;female +Prisca;female +Priya;female +Putri;female +Raarik;female +Rabia;female +Rachel;female +Radha;female +Rana;female +Rani;female +Rania;female +Rebecca;female +Rehema;female +Rekha;female +Renata;female +Rhiannon;female +Ria;female +Rika;female +Rima;female +Rina;female +Riona;female +Rita;female +Rokhaya;female +Roksana;female +Romany;female +Romina;female +Rosalia;female +Rose;female +Roxana;female +Ruby;female +Ruma;female +Runa;female +Ruqaya;female +Ruth;female +Saba;female +Sabina;female +Sachiko;female +Safa;female +Saffron;female +Safia;female +Saga;female +Sahar;female +Sahra;female +Sainimili;female +Saioa;female +Sakura;female +Salima;female +Salma;female +Salote;female +Samantha;female +Samanthi;female +Samar;female +Samara;female +Samia;female +Samira;female +Sana;female +Sanaa;female +Sandra;female +Sanduni;female +Sanja;female +Saoirse;female +Sara;female +Sarah;female +Sarangerel;female +Sari;female +Sarita;female +Sarnai;female +Sasi;female +Sekreteri;female +Selam;female +Selina;female +Selma;female +Seren;female +Serena;female +Sevgi;female +Shahad;female +Shahrzad;female +Shanice;female +Shaniqua;female +Shantelle;female +Shila;female +Shira;female +Shqipe;female +Shreya;female +Sibongile;female +Signe;female +Sigrid;female +Simona;female +Simone;female +Sina;female +Siobhan;female +Sirikit;female +Sita;female +Siti;female +Sofia;female +Sofía;female +Sofie;female +Sokhna;female +Solange;female +Solveig;female +Soo-Min;female +Sophia;female +Sophie;female +Sora;female +Stephanie;female +Subhashini;female +Sumaya;female +Supalak;female +Suri;female +Susanna;female +Suvannarat;female +Svetlana;female +Sviatlana;female +Syafiqah;female +Sze;female +Takeko;female +Talane;female +Talia;female +Tamar;female +Tamara;female +Tansinee;female +Tasha;female +Tashi;female +Tasi;female +Tatiana;female +Tema;female +Tenzin;female +Teresia;female +Tereza;female +Tessa;female +Teuila;female +Teuta;female +Thandiwe;female +Thao;female +Tharika;female +Theodora;female +Theresa;female +Thu;female +Thuy;female +Thyra;female +Tia;female +Tlalli;female +Tlazoltéotl;female +Tlongel;female +Tmetuchl;female +Tomiko;female +Tomoko;female +Tomomi;female +Trang;female +Tsion;female +Tsomo;female +Uila;female +Umutoni;female +Uwase;female +Uwimana;female +Valentina;female +Valeria;female +Valerie;female +Vasiti;female +Veronika;female +Victoria;female +Viktoria;female +Viktória;female +Viktorija;female +Viktoriya;female +Viktoryia;female +Vitória;female +Vivian;female +Vjollca;female +Wai;female +Wan-Chen;female +Wangari;female +Wanjiru;female +Waranya;female +Wei;female +Wing;female +Wulan;female +Xhuliana;female +Xiao;female +Xin;female +Xitlali;female +Xiu;female +Xiuhtecuhtli;female +Xochitl;female +Ya-Ting;female +Yaa;female +Yangchen;female +Yao;female +Yaritza;female +Yasmin;female +Yasuko;female +Yee;female +Yelena;female +Ying;female +Yoko;female +Yoshiko;female +Yu;female +Yu-Hsuan;female +Yu-Ju;female +Yuen;female +Yui;female +Yuka;female +Yukiko;female +Yuko;female +Yulia;female +Yuliya;female +Yumi;female +Yuna;female +Yupin;female +Yvette;female +Zahra;female +Zainab;female +Zainabu;female +Zara;female +Zeina;female +Zeynep;female +Zinhle;female +Zoe;female +Zoé;female +Zola;female +Zsófia;female +Zulaikha;female +Zuri;female +Zuwena;female +Zuzana;female \ No newline at end of file diff --git a/csvfiles/nature.csv b/csvfiles/nature.csv new file mode 100644 index 0000000..3582bc6 --- /dev/null +++ b/csvfiles/nature.csv @@ -0,0 +1,81 @@ +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 +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 +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 +Bouquet +Forest +Meadow +Garden +-waterlocation- +Rainforest +Waterfall +Rock formation +Foliage +Wilderness +Biodiversity +Ecosystem +Flora +Fauna +Woodland +Arboretum +Orchard +Herb garden \ No newline at end of file diff --git a/csvfiles/objects.csv b/csvfiles/objects.csv index d95ca6f..9371150 100644 --- a/csvfiles/objects.csv +++ b/csvfiles/objects.csv @@ -281,26 +281,6 @@ Fractal Pentagram -conceptsuffix-potion Roast beef -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 -object- in a bottle Faberge egg Quilt diff --git a/prompttester.py b/prompttester.py index 3d6528d..c1ae999 100644 --- a/prompttester.py +++ b/prompttester.py @@ -46,4 +46,4 @@ def generateprompts(amount = 1,insanitylevel="5",subject="all", artist="all", im print("") print("All done!") -generateprompts(10,5,"humanoid","all","all",False,"","","PREFIXPROMPT" ,"SUFFIXPROMPT","",1,"","",True,"",100, "female", "all", "fictional characters", "all") \ No newline at end of file +generateprompts(10,5,"humanoid","all","all",False,"","","PREFIXPROMPT" ,"SUFFIXPROMPT","",1,"","",True,"",100, "female", "all", "all", "all") \ No newline at end of file diff --git a/scripts/onebuttonprompt.py b/scripts/onebuttonprompt.py index 4a2370b..cee92a8 100644 --- a/scripts/onebuttonprompt.py +++ b/scripts/onebuttonprompt.py @@ -87,6 +87,7 @@ generatefictionalcharacter = True generatenonfictionalcharacter = True generatehumanoids = True generatejob = True +generatefirstnames = True generatelandscape = True generateevent = True generateconcepts = True @@ -122,6 +123,8 @@ for item in config: generatehumanoids = False if item[0] == 'subject_job' and item[1] != 'on': generatejob = False + if item[0] == 'subject_firstnames' and item[1] != 'on': + generatefirstnames = False # landscape if item[0] == 'subject_landscape' and item[1] != 'on': generatelandscape = False @@ -178,6 +181,8 @@ if(generatehumanoids): subjectsubtypeshumanoid.append("humanoids") if(generatejob): subjectsubtypeshumanoid.append("based on job or title") +if(generatefirstnames): + subjectsubtypeshumanoid.append("based on first name") # concepts if(generateevent):