Typing Tiny Stories

How to Play

  1. Begin the Story: Click anywhere on the screen to start the game.
  2. Type the Text: A story will appear one line at a time. Type the text exactly as you see it.
  3. Correct Mistakes: Any errors you make will be highlighted in red. Use the Backspace key to go back and fix them.
  4. Advance the Line: Each line of the story ends with a space. Typing the final space will complete the line and present the next one.
  5. Write Your Own Line: After you correctly type enough words, you will be prompted to write your own single-line addition to the story.
  6. Watch the AI Continue: Once you submit your line, the LLM will generate the next part of the story, building directly upon your contribution for a unique, collaborative experience.

Changelog

Version 1.1

This update focuses on enhancing the user experience with significant visual, auditory, and technical improvements.

  • Dynamic Effects: Added particle effects, glowing text, and cursor animations to create a more polished and engaging visual experience.
  • Improved Feedback: Enhanced visual cues for typing, making it easier to track progress and errors.
  • Expanded Stories: Increased the variety of starting story prompts and improved the quality of the AI-generated text.
  • Smoother Typing: Refined the text input system, including improved backspace handling for a more fluid and intuitive typing experience.
  • Performance Optimization: Restructured the game state management and refactored the text generation logic to be synchronous, resulting in better performance and reliability.
  • Code Organization: Improved maintainability by moving all constants, resource paths, and configuration settings into a dedicated config.h file.


    Version 1.0 (Initial Release)

    • Core Functionality: Initial public release of the proof-of-concept application.
    • Interactive Storytelling: Implemented the core gameplay loop where players type AI-generated stories and can contribute their own lines for the LLM to continue.
    • LLM Integration: Integrated a llama2-based LLM trained on the TinyStories dataset, optimized for real-time generation on local hardware.
    • Foundation: Built with raylib for graphics and designed for WebAssembly (WASM) deployment.

    Comments

    Log in with itch.io to leave a comment.

    I found a bug. The bug occurs after typing your own statement. Random letters appear between words, but they become visible only when you type those specific letters.

    (+1)

    Hi Ayush, I've fixed the issue you found. It was a finicky bug related to the tokenizer's encoding and decoding. This update also includes an improved 15M parameter LLM for a more consistent storytelling experience.

    Nice and very interesting

    Hi Sander, thank you for the kind words! I'm glad you found it interesting.