G
YouTube TikTok Games
Skip to content

About

A professional and creative text-based adventure game in Rust, showcasing memory safety and idiomatic patterns.

Topics

Resources

Contributing

Stars

110 stars

Watchers

0 watching

Forks

Repository files navigation

โšก THE RUST LABORATORY

A Commercial-Grade Text Adventure Game

Built with Rust + Tauri | Beautiful Cyberpunk GUI

GitHub Release License: MIT Rust Tauri


๐ŸŽฎ Overview

The Rust Laboratory is a fully-featured text-based adventure game with a stunning cyberpunk-themed GUI. You play as Dr. Alex Chen, an investigative journalist exploring the abandoned Prometheus Research Facility to uncover its secrets.

โœจ Key Features

  • 14+ Interconnected Rooms - Each with unique descriptions, puzzles, and secrets
  • 20+ Collectible Items - With detailed lore and specific uses
  • 6 Challenging Puzzles - Code-breaking, item combination, repair challenges
  • 13 Achievements - Track your progress and unlock rewards
  • Beautiful Cyberpunk GUI - Dark theme with animations, minimap, and particle effects
  • Save/Load System - 3 save slots with auto-save support
  • Interactive Minimap - Real-time map showing explored areas
  • Smart Autocomplete - Context-aware command suggestions
  • Command History - Arrow key navigation through previous commands

๐ŸŒŸ Screenshots

Splash Screen Game Interface
Particle-animated title screen with neon glow Three-panel layout: stats, game, inventory

๐Ÿ’ป Installation

Download (Recommended)

Download the latest release from GitHub Releases:

  1. Download RustTextAdventure_x64-setup.exe (or .msi)
  2. Run the installer
  3. Launch "The Rust Laboratory" from your desktop

Build from Source

Prerequisites: Rust 1.70+, Node.js 18+, Tauri CLI

git clone https://github.com/Ali-Marandi/RustTextAdventure.git
cd RustTextAdventure
cd src-tauri
cargo tauri build

๐ŸŽฎ How to Play

Controls

Input Action
Type command + Enter Execute command
Arrow Up/Down Navigate command history
Tab Accept autocomplete suggestion
Escape Close modal/dialog
Click exit buttons Quick navigation
Click items Interact with items

Commands

Command Description
go [direction] Move in a direction (north/south/east/west/up/down)
look Examine current room
take [item] Pick up an item
drop [item] Drop an item from inventory
use [item] Use an item
examine [item] Inspect an item in detail
read [document] Read a document
combine [item1] [item2] Combine two items
solve [puzzle] Attempt to solve a puzzle
inventory View your inventory
map View the facility map
status View player statistics
hint Get a contextual hint
help Show all available commands

Tips

  1. Read everything - Documents contain crucial clues and codes
  2. Explore thoroughly - Some exits are hidden until conditions are met
  3. Combine items - Some puzzles require combining items in specific rooms
  4. Use hint - Stuck? The hint command provides context-aware guidance

๐Ÿ”ง Tech Stack

Component Technology
Game Engine Rust
GUI Framework Tauri v2
Frontend HTML5 / CSS3 / Vanilla JS
Styling CSS Custom Properties, CSS Grid
Serialization Serde + JSON
CI/CD GitHub Actions
Target Platforms Linux (x86_64), Windows (x86_64), macOS (Intel/Apple Silicon)

Architecture

RustTextAdventure/
โ”œโ”€โ”€ src-tauri/              # Rust backend (Tauri)
โ”‚   โ”œโ”€โ”€ src/
โ”‚   โ”‚   โ”œโ”€โ”€ main.rs       # Tauri commands & app entry
โ”‚   โ”‚   โ””โ”€โ”€ game/
โ”‚   โ”‚       โ”œโ”€โ”€ engine.rs     # Core game engine
โ”‚   โ”‚       โ”œโ”€โ”€ types.rs      # Data types & structs
โ”‚   โ”‚       โ”œโ”€โ”€ world.rs      # Room definitions
โ”‚   โ”‚       โ”œโ”€โ”€ items.rs      # Item definitions
โ”‚   โ”‚       โ”œโ”€โ”€ puzzles.rs    # Puzzle definitions
โ”‚   โ”‚       โ”œโ”€โ”€ player.rs    # Player state
โ”‚   โ”‚       โ”œโ”€โ”€ commands.rs   # Command parser
โ”‚   โ”‚       โ”œโ”€โ”€ story.rs     # Narrative & achievements
โ”‚   โ”‚       โ””โ”€โ”€ save.rs      # Save/Load system
โ”‚   โ”œโ”€โ”€ Cargo.toml
โ”‚   โ”œโ”€โ”€ tauri.conf.json
โ”‚   โ””โ”€โ”€ icons/
โ”œโ”€โ”€ ui/                    # Frontend
โ”‚   โ”œโ”€โ”€ index.html
โ”‚   โ”œโ”€โ”€ css/style.css
โ”‚   โ””โ”€โ”€ js/app.js
โ””โ”€โ”€ .github/workflows/     # CI/CD
    โ””โ”€โ”€ release.yml

๐Ÿ† Achievements

Achievement How to Unlock
๐Ÿšถ First Steps Enter the facility
๐Ÿ—บ๏ธ Facility Explorer Visit 5 rooms
๐Ÿ“š Bookworm Find all documents
๐Ÿ— ๏ธ Puzzle Master Solve 3 puzzles
๐Ÿ” Codebreaker Crack the office code
๐Ÿงช Amateur Chemist Create the Stabilizer
โš™๏ธ Chief Engineer Repair the generator
๐Ÿ’ป Elite Hacker Decrypt the files
๐Ÿ’Ž Facility Savior Stabilize the Core
๐ŸŒ Escape Artist Reach the surface
โญ Hero Complete the game

๐Ÿš€ Product Delivery and Validation

The global commercial roadmap is available in docs/GLOBAL_COMMERCIAL_ROADMAP_FA.md. The current, Tauri-specific delivery backlog is in docs/EXECUTION_BACKLOG_FA.md, and the landing-page, interview, playtest, and attribution protocols are in docs/VALIDATION_TOOLKIT_FA.md. The release-marketing plan is in docs/GITHUB_RELEASE_MARKETING_PLAN_FA.md. The controlled UTM registry and measurement design are documented in docs/UTM_CAMPAIGN_AUTOMATION_FA.md.


๐Ÿงฉ Developer Documentation

The Tauri command contract and frontend integration examples are documented in docs/API.md. New contributors should begin with CONTRIBUTING.md, which includes environment setup, the required quality gate, test conventions, and pull-request expectations. The multi-platform automated release procedure is in docs/RELEASE_PIPELINE_FA.md, and the prioritized Engine/state coverage plan is in docs/TEST_COVERAGE_PLAN_FA.md. The Engine and command regression suite lives in src-tauri/src/game/tests.rs and runs through cargo test --workspace.


๐Ÿ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.


Built with โค๏ธ using Rust and Tauri

About

A professional and creative text-based adventure game in Rust, showcasing memory safety and idiomatic patterns.

Topics

Resources

Contributing

Stars

110 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages