Inspiration

I was inspired to create an AI-powered interactive fiction game that allows users to chat with different story characters, each with their unique personality and responses. I wanted to combine storytelling and AI interaction to make entertainment more engaging and creative.

What it does

This project is a text-based interactive story companion where users can choose different characters and chat with them. Each character responds differently based on user input, creating a dynamic storytelling experience. It enhances entertainment by blending AI with narrative interaction in a fun and simple way.

How we built it

The project was built using Python with the Tkinter library for the graphical user interface. Character data and dialogues are stored in JSON files, allowing easy expansion of characters and their responses. The AI logic is keyword matching to generate relevant replies, creating an illusion of conversational interaction without complex AI models.

Challenges we ran into

One challenge was handling different text encoding formats when reading JSON files, which caused errors at first. Another was designing a natural-feeling conversation flow using simple keyword matching, as it limits the complexity of interactions. Finally, creating a user-friendly interface with Tkinter required some experimentation.

Accomplishments that we're proud of

We successfully created a working interactive fiction game with multiple characters, a responsive GUI, and smooth chat functionality. The project demonstrates how storytelling can be enhanced by simple AI techniques. It also shows our ability to troubleshoot and deliver a complete software solution under time constraints.

What we learned

We learned how to build desktop GUI applications with Python’s Tkinter, manage external data files with JSON, and implement basic AI conversational logic. We also improved debugging skills, especially related to file handling and encoding issues.

What's next for AI Interactive Story Companion

Future plans include adding more sophisticated AI, possibly integrating external language models for richer responses, improving the interface design, and adding branching storylines for a deeper interactive experience.

Built With

Share this project:

Updates