Dene33 / world-gpt

Other
49 stars 5 forks source link

Story Generator

cover

World generation NPC generation
image_sg3 image_sg2

Story Generator is an app, available as a web version or a standalone for Mac, Windows and Linux.

With ChatGPT as the backbone, create your own world and observe lifelike characters interacting with each other and living their lives. All that from a single text input with your world description!

Video demo

Watch the video

Idea

OpenAI's ChatGPT blew my mind and I got an idea about using it as a tool for world generation. But static worlds are boring! So I decided to add NPCs (non-playable characters) to see if they can interact in the evolving worlds and achieve their goals... It turns out that yes, they can! And it's super interesting to observe how they do that and what happens to them. That's how the Story Generator was born.

Features

Ultimately, the world's and NPC's conditions converge to create an exceptional story.

Try it for free on the web, run it for free locally, or buy it to support the creator. Story Generator is built entirely using Shiny so if you want to know how to build web apps with Shiny alongside ChatGPT in an asynchronous manner that's a great source of knowledge! Additionally, you can employ Story Generator in your own game by customizing the code to suit your requirements.

Install from source

  1. Clone the repo
  2. Create a Python 3.10 environment, here is how you can do it with conda conda create -n worldgpt python=3.10.6
  3. Install all the requirement packages with pip install -r requirements.txt
  4. Finally run the app with python ./story_generator.py
  5. Provide your OpenAI key. See here. This repo doesn't contain the OpenAI key. If you want to try it for free, visit https://www.story-generator.ai/ It might be available if the usage of my openai key has not exceed the limits :)

TODO

  1. Text-to-image generation
  2. Generate the full story from the whole world's and NPCs' progress
  3. Allow user to manually adjust the world's and NPCs' state on the fly
  4. Save/load
  5. Track for NPCs' goal completion, keep memory of completed tasks, select new one(s)

Support the author :heart:

It really matters! At least it will allow to support the free web-version of the app (hosting, openai requests)

Ko-Fi

GitHub sponsorship

Gumroad