
นี่คือสคริปต์ Python ที่ ใช้ AI เพื่อสร้างการ์ดโปเกมอนแบบสุ่มใหม่ มันเลือกจาก 6 องค์ประกอบและประเภทของสิ่งมีชีวิตและสุ่มสร้างความสามารถ 1-2
จากนั้นจะใช้ OpenAI เพื่อสร้างชื่อโปเกมอนและคำอธิบายและสร้างพรอมต์สำหรับมิดเจร์นีย์ (ซึ่งต้องใช้ด้วยตนเอง)
จากนั้นสามารถใช้คำสั่งแยกต่างหากเพื่อรวมข้อมูลโปเกมอนเข้ากับงานศิลปะที่สร้างขึ้นเพื่อสร้างการ์ดโปเกมอนใหม่
ดูวิดีโอบน YouTube!
การ์ดที่สร้างเสร็จแล้วจะมีชื่อคำอธิบายและงานศิลปะการ์ด
| คำอธิบาย | ภาพการ์ด |
|---|---|
| Ignax เป็นโปเกมอนร้อนร้อนระอุที่พบในภูมิภาคที่มีลักษณะคล้ายทะเลทราย มันเป็นที่รู้จักกันดีในเรื่องท่าทางที่ดุเดือดและความสามารถในการลุกลามของการจุดระเบิดซึ่งใช้ประโยชน์จากการต่อสู้ที่ดุเดือดและน่าเกรงขาม | ![]() |
สคริปต์ยังสามารถสร้างชุดของการ์ดที่วิวัฒนาการมาจากกัน
| แบบฟอร์ม 1 | แบบฟอร์ม 2 | แบบฟอร์ม 3 |
|---|---|---|
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
สำหรับคอลเลกชันตัวอย่างเต็มรูปแบบดูแกลเลอรี่
เอาต์พุตจะอยู่ในโฟลเดอร์ /output พร้อมโฟลเดอร์เปล่าเพื่อให้คุณใส่งานศิลปะการ์ดลงไป
[project root]
├───output
├───cards
├───images
การ์ดจะมี JSON เช่นนี้:
{
"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 "
} คุณสามารถใช้ image_prompt เพื่อสร้างงานศิลปะการ์ดกับ Midjourney
ติดตั้ง Python 3.10 (หรือสูงกว่า)
ติดตั้งการพึ่งพาด้วย pip install -r requirements.txt
ตั้งค่า pythonpath ของคุณเป็น src เพื่อให้สามารถนำเข้าโมดูลได้
# For bash, you can use:
export PYTHONPATH= $PYTHONPATH :srcหากคุณต้องการใช้ OpenAI เพื่อสร้างชื่อและคำอธิบายคุณจะต้องตั้งค่าบัญชีด้วย OpenAI
จากนั้นใส่คีย์ API ของคุณลงในไฟล์ที่เรียกว่า .env ในรูทของโครงการ
# In your .env file
OPENAI_API_KEY= " sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx "หากคุณต้องการงานศิลปะที่สร้างขึ้น AI คุณจะต้องตั้งค่าบัญชี (เพียงเข้าร่วม Discord) กับ Midjourney
การเรียกใช้สิ่งนี้จะสร้างคอลเลกชันของโปเกมอนไปยังโฟลเดอร์ output คำเตือน! ทุกครั้งที่คุณเรียกใช้สิ่งนี้จะเขียนทับไฟล์ที่มีอยู่ในโฟลเดอร์ output
python src/generate.py สิ่งนี้จะสร้างไฟล์การ์ด json ซีรีย์การ์ด 1 ใบ (ระหว่างการ์ด 1-3) สำหรับแต่ละองค์ประกอบ ความหายากประเภทสิ่งมีชีวิตและจำนวนวิวัฒนาการของการ์ดจะสุ่ม
คุณจะเห็นบทสรุปของซีรี่ส์การ์ดที่สร้างขึ้น:
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 สิ่งนี้จะสร้างการ์ดสำหรับองค์ประกอบ fire เท่านั้น องค์ประกอบที่มีอยู่คือ: fire , water , grass , electric , psychic , neutral
นอกจากนี้คุณยังสามารถระบุประเภทสิ่งมีชีวิตที่เฉพาะเจาะจง (หัวเรื่อง) เพื่อสร้างการ์ดสำหรับ สิ่งนี้จะแทนที่การเลือกหัวเรื่องเริ่มต้น (ซึ่งเป็นแบบสุ่ม)
python src/generate.py -e grass --subject pumpkinคุณสามารถใส่อะไรได้ที่นี่! สนุกกับมันไหม
| pumkpin | Toucan | สฟิงซ์ |
|---|---|---|
![]() | ![]() | ![]() |
คุณสามารถใช้ image_prompt เพื่อสร้างงานศิลปะการ์ดกับ Midjourney พรอมต์ภาพจะอยู่ในไฟล์ json สำหรับการ์ดแต่ละใบ (และใน image_prompts.txt ในโฟลเดอร์ 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
คัดลอกสิ่งนี้ลงในพรอมต์ Midjourney /image มันจะสร้างภาพ 4 รูปแบบ จากนั้นคุณสามารถยกระดับได้โดยการกดปุ่ม U หนึ่งปุ่มบนบอท
ดาวน์โหลดและบันทึกภาพลงในโฟลเดอร์ output/pokemon-classic/images จากนั้นเปลี่ยนชื่อไฟล์ให้ตรงกับ image_file ในไฟล์ json (เช่น 001_chippo.png )

คุณสามารถใช้สคริปต์ render_cards.py เพื่อแสดงผลการ์ดลงในไฟล์ PNG มันจะเข้าสู่โฟลเดอร์ output/pokemon-classic/renders ของคุณ
python src/render_cards.py การ์ดใด ๆ ที่มีไฟล์รูปภาพในโฟลเดอร์ output/pokemon-classic/images จะแสดงผล หากไม่พบภาพมันจะทำให้การ์ดว่างเปล่า
| ไฟ | น้ำ | หญ้า | มีไฟฟ้า | เกี่ยวกับจิต | การต่อสู้ | เป็นกลาง |
|---|---|---|---|---|---|---|
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
ขอบคุณ TheDuckTamerBlanks สำหรับแม่แบบการ์ดเปล่า