Skip to content

sipistab/Restaurant-Manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

1 Commit
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿฝ๏ธ Restorant - Terminal Restaurant Roguelike

A text-based restaurant management roguelike where you build your culinary empire from scratch, manage staff burnout, master recipes, and navigate unpredictable events that shape your restaurant's destiny.

๐Ÿš€ Quick Start

Prerequisites

  • Python 3.7 or higher
  • pip (Python package installer)

Installation Options

Option 1: Direct Run (No Installation)

# Clone or download this repository
git clone https://github.com/restorant/restorant.git
cd restorant

# Install dependencies
pip install -r requirements.txt

# Run the game
python restaurant_game.py

Option 2: Pip Installation

# Install from local directory
pip install .

# Run the game
restorant

Option 3: Development Installation

# Clone the repository
git clone https://github.com/restorant/restorant.git
cd restorant

# Install in development mode with all dependencies
pip install -e ".[dev]"

# Run the game
restorant

๐Ÿ“– For detailed installation instructions, see INSTALL.md

How to Play

  • Use number keys (1-9, 0, Q) to navigate menus
  • Press Enter to confirm selections
  • Watch the live events during service hours
  • Manage your staff, kitchen, and finances
  • Build your restaurant's reputation through customer satisfaction

Game Controls

# Run the main game
restorant

# Run with Python directly
python restaurant_game.py

# Run the alternative main file
python main.py

๐ŸŽฎ Game Concept

Restorant is a terminal-based roguelike where you start as a passionate chef-turned-entrepreneur with a dream of creating the perfect dining experience. Every playthrough is unique, with procedurally generated events, staff personalities, and business opportunities that force you to adapt your strategy.

โœ… IMPLEMENTED FEATURES

Core Systems โœ…

  • Staff Management: Hire, train, promote, and manage staff with XP and skill levels
  • Recipe System: Unlock recipes through skill trees with proper ingredient requirements
  • Financial System: Realistic profit margins, ingredient costs, and daily expenses
  • Inventory Management: Ingredient tracking with spoilage and restocking
  • Venue System: Different restaurant locations with capacity limits
  • Loan System: Business loans with interest and repayment
  • Save/Load System: Persistent game state

Staff Management โœ…

  • Role Specialization: Chef, Server, Prep Cook, Dishwasher with unique bonuses
  • XP & Leveling: Staff gain XP from cooking and training (max level 20)
  • Burnout System: Staff satisfaction decreases with stagnation and stress
  • Performance Tracking: Staff performance scores based on satisfaction
  • Pay Raises: Give raises to prevent staff from quitting
  • Staff Quitting: Staff can quit if satisfaction drops too low
  • Daily Salaries: Staff are paid at the end of each service day

Customer System โœ…

  • Quality-Based Orders: Higher restaurant quality = more complex orders
  • Multiple Course Orders: Starters, mains, desserts, and drinks
  • Customer Reviews: Detailed 5-star ratings with comments and tips
  • Tip System: Tips based on service quality (15-25%)
  • Review Tracking: View recent reviews and average ratings

Event System โœ…

  • Service Hour Events: Customer complaints, kitchen incidents, staff issues
  • Night Events: Cleanup, maintenance, inventory checks, staff meetings
  • Event Categories: Customer, kitchen, staff, business, special, night
  • Player Choices: Multiple response options with different consequences
  • Event Limits: Maximum 16 events per service for balanced gameplay

After-Hours Activities โœ…

  • Activity Categories: Networking, advertising, crafting, workout, research, relaxation
  • Habit System: Track activity frequency for permanent bonuses
  • Cost Management: Activities cost money but provide benefits
  • Stress Management: Activities can reduce stress and burnout

UI/UX โœ…

  • Two-Column Layout: Terminal log on left, stats on right
  • Visual Indicators: Role icons, burnout warnings, XP bars
  • Real-time Events: Live event logging during service hours
  • Menu Navigation: Intuitive number-based menu system

๐Ÿšง REMAINING FEATURES TO IMPLEMENT

Priority 1: Core Gameplay Polish

  • Recipe Quality Scaling: Better success chance based on staff skill vs recipe difficulty
  • Ingredient Substitution: Allow ingredient substitutions when missing items
  • Equipment System: Equipment condition affects cooking success
  • Staff Scheduling: Different staff for different roles/shifts
  • Customer Capacity: Enforce venue customer limits during service

Priority 2: Advanced Features

  • Staff Specialization: Staff can specialize in specific recipe categories
  • Recipe Mastery: Staff can master specific recipes for bonuses
  • Supplier Relationships: Build relationships with ingredient suppliers
  • Market Dynamics: Ingredient prices fluctuate based on supply/demand
  • Seasonal Events: Special events and menu opportunities

Priority 3: Business Expansion

  • Multiple Venues: Own and manage multiple restaurant locations
  • Catering Services: Special catering events and contracts
  • Food Delivery: Partner with delivery services
  • Franchise System: License your restaurant concept
  • Investor Relations: Attract investors for expansion

Priority 4: Advanced Staff Management

  • Staff Personalities: Unique traits affecting performance and interactions
  • Team Dynamics: Staff relationships and conflicts
  • Training Programs: Specialized training for different skills
  • Career Paths: Multiple promotion paths for staff
  • Staff Recruitment: Active recruitment of skilled staff

Priority 5: Content Expansion

  • More Recipes: Additional recipe categories and complexity
  • More Events: Greater event diversity and complexity
  • More Venues: Different restaurant types and themes
  • More Activities: Additional after-hours options
  • Achievement System: Goals and milestones for progression

Priority 6: Quality of Life

  • Settings Menu: Configurable game options
  • Help System: In-game help and tooltips
  • Statistics Tracking: Detailed performance metrics
  • Performance Optimization: Handle large event logs better
  • Error Handling: Better error messages and recovery

๐ŸŽฏ CURRENT GAME STATE

Implementation Status: 85% Complete

  • โœ… Core systems fully functional
  • โœ… Staff management with burnout mechanics
  • โœ… Customer review system with tips
  • โœ… Event system with player choices
  • โœ… Financial system with profit margins
  • โœ… Save/load functionality
  • โœ… Habit system for activities

Game Quality: 9/10

  • Realistic restaurant management mechanics
  • Engaging staff burnout and retention system
  • Detailed customer feedback and review system
  • Balanced economy and progression
  • Good event variety and player agency

๐ŸŽฎ Gameplay Flow

Daily Operations

[Morning Prep] โ†’ [Service Hours] โ†’ [Evening Cleanup] โ†’ [After Hours Activities]

Service Hours - Live Event System

During service hours, the game runs in real-time mode with live event logs:

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚           LIVE EVENTS               โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ 12:15 - 2 customers arrive          โ”‚
โ”‚ 12:16 - Customers seated at Table 3 โ”‚
โ”‚ 12:18 - Order: Grilled Salmon       โ”‚
โ”‚ 12:18 - Order: Caesar Salad         โ”‚
โ”‚ 12:19 - โš ๏ธ  No salmon available!    โ”‚
โ”‚ 12:19 - Customer leaves dissatisfiedโ”‚
โ”‚ 12:20 - Rating: -1 (unavailable)    โ”‚
โ”‚ 12:22 - Order: Pasta Carbonara      โ”‚
โ”‚ 12:25 - โš ๏ธ  Kitchen accident!       โ”‚
โ”‚       [1] Send help immediately     โ”‚
โ”‚       [2] Let staff handle it       โ”‚
โ”‚ 12:26 - Customer served: Pasta      โ”‚
โ”‚ 12:27 - Customer satisfied (+1)     โ”‚
โ”‚ 12:28 - Customer leaves review (+5) โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐ŸŽจ User Interface Design

Main Menu Structure

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚           ๐Ÿฝ๏ธ RESTORANT ๐Ÿฝ๏ธ           โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                                     โ”‚
โ”‚  [1] Start Service Hours            โ”‚
โ”‚  [2] View Kitchen                   โ”‚
โ”‚  [3] Manage Staff                   โ”‚
โ”‚  [4] View Recipes                   โ”‚
โ”‚  [5] Manage Inventory               โ”‚
โ”‚  [6] View Venues                    โ”‚
โ”‚  [7] Apply for Loans                โ”‚
โ”‚  [8] After-Hours Activities         โ”‚
โ”‚  [9] View Customer Reviews          โ”‚
โ”‚  [0] Save Game                      โ”‚
โ”‚  [Q] Quit Game                      โ”‚
โ”‚                                     โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿ“ Project Structure

Restorant/
โ”œโ”€โ”€ restaurant_game.py      # Main game file
โ”œโ”€โ”€ data/
โ”‚   โ”œโ”€โ”€ recipes.yaml        # Recipe database
โ”‚   โ”œโ”€โ”€ ingredients.yaml    # Ingredient database
โ”‚   โ”œโ”€โ”€ events.yaml         # Event database
โ”‚   โ”œโ”€โ”€ activities.yaml     # After-hours activities
โ”‚   โ”œโ”€โ”€ venues.yaml         # Venue database
โ”‚   โ””โ”€โ”€ loans.yaml          # Loan database
โ”œโ”€โ”€ README.md               # This file
โ””โ”€โ”€ savegame.json          # Save file (generated)

๐Ÿค Contributing

This is a personal project, but suggestions and feedback are welcome! The game is designed to be easily extensible with new content through the YAML data files.

๐Ÿ“ License

This project is open source and available under the MIT License.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages