Inspiration
The inspiration for this project is twofold: first, the amusing tendency for early image generation models to "hallucinate" features in their images, or generate images that are technically true to the prompt but completely miss the intended meaning of the user; and second, the entertainment derived from playing games such as Gartic phone or the classic telephone, where meanings of words and drawings can be distorted after communication.
What it does
The game is a re-imagination of Telephone or the popular Gartic phone, in which one player starts with a message and transmits it to the next, until the message becomes distorted. In our classic gamemode, the first player may type any prompt to generate an image. That image is then shared with the next player, who did not see the original prompt and must describe the image in words, which will them be prompted to generate an image for the following player. In the end, all prompts and images are released for the party to observe where their miscommunication occurred. The "inverse" gamemode is similar, except the first player draws a picture on a canvas instead of prompting one, and the language model interprets the image into text for the next player.
How we built it
The backend was developed with Python flask and socket.io, while the frontend was developed with HTML/JS/CSS. We used Python to make API calls for image generation. The original plan was to make API calls to Hugging Face, however, due to limitations discussed below, that was decided against and we made the calls to OpenAI Dall-E 3 instead. Javascript was used for cursor-sensitive graphics in the landing page.
Challenges we ran into
The main issue was finding a good generative AI API to call that fit our financial and performance constraints. Hugging Face was originaly considered; however, at the time, it did not have a pre-pay token purchase option, forcing us to leave payment on file to pay as we used. This posed a risk where buggy software may accidentally make large volumes of API calls, which would incurr significant costs. We decided to resolve this by pivoting our backend for calls to OpenAI API instead, which had the pre-pay option.
Accomplishments that we're proud of
This is our first hackathon and our first time developing a full-fledged, full-stack application of this scale. We're proud of being able to integrate so many moving parts, not losing track of version control, implementing real-time multiplayer gameplay, and having a creative UI setup.
What we learned
The most valuable skill we learned was resolving major GitHub merge conflicts, which can come up frequently, and if left unresolved, invalidate an entire codebase. We also learned ways to debug effectively, making good use of our various consoles and software monitors to resolve issues in our code. Another major skill we obtained through this experience was brainstorming, the ability to propose, adjust, consolidate, and choose ideas on what to build with each other.
What's next for Teleprompt.io
We'll continue scaling our backend in anticipation for larger volumes of players. This largely includes more efficient image handling methods and ways to improve the speed of API calls. We also want to introduce new game modes, graphics, and features as our playerbase grows.

Log in or sign up for Devpost to join the conversation.