
Dies ist ein Python -Skript, das mit AI neue, zufällige Pokemon -Karten generiert. Es wählt aus 6 Elementen und einer Art Kreatur, und zufällig erzeugt 1-2 Fähigkeiten.
Anschließend wird OpenAI verwendet, um einen Pokemon -Namen und eine Beschreibung zu erzeugen, und erstellt eine Aufforderung für MidJourney (die manuell verwendet werden muss).
Anschließend kann ein separater Befehl verwendet werden, um die Pokemon -Daten mit dem generierten Kunstwerk zu kombinieren, um eine neue Pokemon -Karte zu erstellen.
Sehen Sie sich das Video auf YouTube an!
Die fertige generierte Karte hat einen Namen, eine Beschreibung und ein Kartenkunstwerk.
| Beschreibung | Kartenbild |
|---|---|
| IGNAX ist ein gezüchtetes heißes Pokémon, das in wüstenähnlichen Regionen vorkommt, die eine tödliche dunkle Axt schwingen. Es ist bekannt für sein heftiges Verhalten und seine Fähigkeit zur Zündschub, die es in heftigen, beeindruckenden Schlachten nutzt. | ![]() |
Das Skript kann auch eine Reihe von Karten erzeugen, die sich voneinander entwickeln.
| Form 1 | Form 2 | Form 3 |
|---|---|---|
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
Die vollständige Beispielsammlung finden Sie in der Galerie.
Die Ausgabe befindet sich im Ordner /output mit leeren Ordnern, in die Sie Kartengrafiken einsetzen können.
[project root]
├───output
├───cards
├───images
Die Karten werden JSON so haben:
{
"index" : 26 ,
"name" : " Flamo " ,
"description" : " ... " ,
"element" : " Fire " ,
"rarity" : " common " ,
"rarity_index" : 0 ,
"hp" : 50 ,
"abilities" : [
{
"name" : " Scorch " ,
"element" : " Fire " ,
"cost" : 2 ,
"is_mixed_element" : false ,
"power" : 40
}
],
"image_prompt" : " a chibi young fire-type parrot pokemon, in a volcano environment, lava texture background, anime chibi drawing style, pastel background --niji --ar 3:2 " ,
"image_file" : " 026_flamo.png "
} Sie können das image_prompt verwenden, um das Kartenkunstwerk mit MidJourney zu generieren.
Installieren Sie Python 3.10 (oder höher)
Installieren Sie die Abhängigkeiten mit pip install -r requirements.txt
Stellen Sie Ihren Pythonpath auf die src ein, damit die Module importiert werden können.
# For bash, you can use:
export PYTHONPATH= $PYTHONPATH :srcWenn Sie OpenAI verwenden möchten, um Namen und Beschreibungen zu generieren, müssen Sie ein Konto bei OpenAI einrichten.
Geben Sie dann Ihre API -Taste in eine Datei mit dem Namen .env im Stamm des Projekts ein.
# In your .env file
OPENAI_API_KEY= " sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx "Wenn Sie mit der KI generierten Kunstwerke möchten, müssen Sie auch ein Konto (einfach an ihrer Zwietracht anschließen) mit MidJourney einrichten.
Wenn Sie dies ausführen, wird eine Sammlung von Pokemon für den output generiert. WARNUNG! Jedes Mal, wenn Sie dies ausführen, überschreiben Sie die vorhandenen Dateien im output .
python src/generate.py Dadurch werden Karten- json Dateien, 1 Kartenreihen (zwischen 1 bis 3 Karten) für jedes Element generiert. Die Seltenheit, die Kreaturentyp und die Anzahl der Entwicklungen der Karten sind zufällig.
Sie werden die Zusammenfassung der generierten Kartenserie sehen:
Chippo (Neutral)
HP: 30
Rarity: ★ (common)
Abilities:
Slash (Neutral)
Cost: ● ●
Power: 20
Description: [...]
Image Prompt: [...]
python src/generate.py -n 10python src/generate.py -e fire Dies erzeugt nur Karten für das fire . Verfügbare Elemente sind: fire , water , grass , electric , psychic , neutral .
Sie können auch einen bestimmten Kreaturentyp (Betreff) angeben, um Karten zu generieren. Dadurch wird die Standardauswahl des Subjekts (die zufällig ist) überschreiben.
python src/generate.py -e grass --subject pumpkinSie können buchstäblich etwas hierher bringen! Viel Spass damit ?
| Pumkpin | Tukan | Sphinx |
|---|---|---|
![]() | ![]() | ![]() |
Sie können das image_prompt verwenden, um das Kartenkunstwerk mit MidJourney zu generieren. Die Bildaufforderung befindet sich in der json -Datei für jede Karte (und auch im Bild image_prompts.txt im output ).
Chippo::0 a chibi young neutral-type toucan pokemon, in a village environment, bright lighting, anime chibi drawing style, pastel background --niji --ar 3:2
Kopieren Sie dies in die Eingabeaufforderung von Midjourney /image . Es erzeugt 4 Variationen des Bildes. Sie können es dann erhöhen, indem Sie eine der U -Tasten auf dem Bot drücken.
Laden Sie das Bild in den Ordner output/pokemon-classic/images herunter und speichern Sie das Bild. Benennen Sie dann die Datei um, um mit der image_file in der json -Datei (z. 001_chippo.png ) übereinzustimmen.

Sie können das Skript render_cards.py verwenden, um die Karten in eine PNG -Datei zu rendern. Es wird in den Ordner output/pokemon-classic/renders verwendet.
python src/render_cards.py Alle Karten mit einer Bilddatei im Ordner output/pokemon-classic/images werden gerendert. Wenn kein Bild gefunden wird, wird es eine leere Karte rendern.
| Feuer | Wasser | Gras | elektrisch | psychisch | Kampf | neutral |
|---|---|---|---|---|---|---|
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
Vielen Dank an Theducktamerblancs für die Blank -Karten -Vorlage.