Skip to content
Litsu9999 edited this page Jun 28, 2024 · 19 revisions

Welcome to the Keyrun project Wiki! This repository contains all the information about my internship project, Keyrun, a typing game designed to push the limits of Scratch. The game utilizes the keycube, a cube-shaped keyboard with five faces designed by Damien Brun. This wiki details the project's objectives, challenges, methodology, and results.

Game interface

Table of Contents

Introduction

During my internship, I aimed to push the limits of Scratch by creating Keyrun, a complex typing game that integrates the innovative keycube keyboard. This game features retrowave aesthetics and challenging gameplay mechanics.

Objectives

The primary objectives of this internship were:

  • To explore and utilize advanced features of Scratch.
  • To create a game that showcases the versatility and potential of Scratch.
  • To document the process and findings comprehensively.

Methodology

My approach involved:

  1. Researching advanced Scratch techniques.
  2. Designing and developing the game using the keycube.
  3. Testing and refining the game to ensure functionality and engagement.
  4. Documenting each step of the process.

Project Structure

Game Overview

Keyrun is a typing game with a retrowave style where players must type letters to make cubes disappear before losing their three lives. The game gets progressively faster, challenging the player's typing speed and accuracy.

Technical Details

  • keycube Integration: Each line in the game corresponds to a face of the keycube.
  • Optimization: Utilized numerous variables to replace initial numbers in blocks, reducing operations and improving performance.
  • Workarounds for Scratch Limitations: Created animations and videos by dividing them into images and using sprite costumes.

Development Tools

  • Scratch: For game development and animation.

  • Go to Scratch page

  • Blender: For creating the 3D retrowave background and cubes.

  • Go to Blender page

  • Figma: For designing the game model.

Challenges and Solutions

  • Learning Curve: Overcame the steep learning curve of Scratch and its interface through rigorous practice and study.
  • Block Constraints: Managed constraints by optimizing code and using creative workarounds for features not supported by Scratch.
  • Bugs and Performance Issues: Addressed numerous bugs, including the score increase issue and sprite initialization.

Go to Challenges page

Results and Learnings

The project successfully demonstrated the potential of Scratch for creating complex applications, incorporating 3D elements and video-like animations. Despite remaining bugs, the game is a testament to the power and versatility of Scratch.

Go to results page

Conclusion

This internship was a valuable experience, allowing me to explore the advanced capabilities of Scratch and develop a unique and challenging game. The documentation provided here aims to inspire others to push the boundaries of Scratch.

Go to conclusion page

References

Go to references page