We (2/4 of us) spend an ungodly amount of hours playing Stellaris, a 4X sci-fi strategy game, one of the members of our group used to spend some time after each game to write up a newspaper surrounding the events that happened in the game we just played. The articles were written in different voices depending on what the article is about. So we thought, why not automate, every part of this and have the articles write themselves as we play directly from the events in the game's save files, and as an added bonus notify all players every time an article about a war is released, with a message directly to their phone.

What it does

The app scrapes the save files of the game as the game is playing. Every time an autosave happens in-game, the events up until that point are passed into our pre-processing pipeline that converts them into readable sentences of what happened.

Theses sentences are used as prompts in OpenAI's GPT-3 and Dall-E APIs along with an appropriate author, chosen depending on the subject matter of the sentences, to generate a full article and accompanying article image. These are then saved to our database and a message is sent out using Twilio to all players about the new article, which can be read on the Galactos official website (patent pending)

How we built it

We forked stellaris-dashboard, a project we found on Github that creates an event log from the Stellaris game's save files every time an autosave occurs. We added a function that parsed the event logs into readable sentences and modified the project to make an API call to GPT-3 and Dall-E using FastAPI, to generate an article text and image and once both were generated we made another call to our PostgreSQL database to store the newly generated information.

Within the function call that writes the data to (our database host) we run a function that generates and sends a text message, using Twilio, to users about the newly generated article with a link to where they can read more.

The frontend was built with NextJS, React, and Typescript and once the article information is added to the database the site is updated with all the newly generated articles.

Challenges we ran into

Accomplishments that we're proud of

What we learned

What's next for galactos

Built With

Share this project: