Skip to content

Sahil-Gulihar/monster-tamer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Monster Tamer

A Pokemon-inspired monster taming RPG game built with Rust and Macroquad.

Overview

Monster Tamer is a turn-based RPG where you explore a world, catch monsters, battle wild creatures, and build your team. Experience classic Pokemon-style gameplay with a modern Rust implementation.

Features

  • Exploration: Navigate through a vibrant world map with various terrain types
  • Monster Battles: Engage in turn-based combat with wild monsters
  • Catching System: Use different types of monster balls to catch wild creatures
  • Party Management: Build and manage a team of up to 6 monsters
  • Type System: Fire, Water, Grass, Electric, Ice, and Normal types with effectiveness multipliers
  • Inventory System: Collect and use items like potions and monster balls
  • Shops & Services: Visit shops to buy items and hospitals to heal your team
  • Leveling System: Monsters gain experience and level up through battles
  • Animated Battles: Visual attack animations and catching sequences
  • Smooth Transitions: Fade transitions between scenes

Gameplay Screenshots

Title Screen

World Exploration

Battle System

Installation

Prerequisites

  • Rust (latest stable version)
  • Cargo (comes with Rust)

Building and Running

  1. Clone the repository:
git clone https://github.com/Sahil-Gulihar/monster-tamer
cd pokemon-go
  1. Build the project:
cargo build --release
  1. Run the game:
cargo run --release

Or for development (faster compilation, slower runtime):

cargo run

How to Play

Getting Started

  1. Start a New Game: Select "New Game" from the title screen
  2. Explore the World: Use WASD or arrow keys to move around
  3. Encounter Monsters: Walk through tall grass to encounter wild monsters
  4. Battle: Fight wild monsters to gain experience or catch them
  5. Build Your Team: Catch monsters to add them to your party (up to 6)

Controls

World Map

  • WASD or Arrow Keys: Move around
  • Space or Enter: Interact with buildings/doors
  • P: Open party menu
  • I: Open inventory

Battle

  • WASD or Arrow Keys: Navigate menus
  • Enter or Space: Select option
  • Escape or Backspace: Go back/cancel

Menus

  • WASD or Arrow Keys: Navigate
  • Enter or Space: Confirm selection
  • Escape or Backspace: Close menu

Gameplay Tips

  • Tall Grass: Walk through tall grass (darker green) to encounter wild monsters
  • Buildings:
    • Hospital (red building): Heal all your monsters for free
    • Shop (blue building): Buy items like potions and monster balls
  • Catching Monsters: Use monster balls during wild battles. Different ball types have different catch rates
  • Type Effectiveness: Learn type matchups to deal more damage:
    • Fire > Grass, Ice
    • Water > Fire
    • Grass > Water
    • Electric > Water
    • Ice > Grass
  • Party Management: Keep your team healthy and switch monsters when needed

Technical Details

Architecture

  • Language: Rust (2021 edition)
  • Game Engine: Macroquad
  • Rendering: Immediate mode rendering
  • Game Loop: Frame-based update system

Project Structure

src/
├── main.rs      # Entry point and window configuration
├── game.rs      # Main game state and scene management
├── monster.rs   # Monster types, stats, and creation
├── battle.rs    # Battle system and turn-based combat
├── attack.rs    # Attack definitions and types
├── inventory.rs # Item system and inventory management
├── world.rs     # World map, tiles, and player movement
└── ui.rs        # UI components and rendering helpers

Dependencies

  • macroquad: Game framework for rendering and input
  • rand: Random number generation for encounters and catch rates

Development

Building for Release

Optimized release build:

cargo build --release

The binary will be located at target/release/monster_tamer (or monster_tamer.exe on Windows).

Code Style

The project follows Rust conventions and best practices:

  • Functional programming patterns
  • Clear separation of concerns
  • Modular architecture

License

This project is open source. Feel free to use, modify, and distribute as needed.

Contributing

Contributions are welcome! Feel free to submit issues or pull requests.

Acknowledgments

  • Inspired by the Pokemon series
  • Built with Macroquad
  • Developed in Rust

Enjoy your monster taming adventure! 🎮✨

About

A pokemon Styled Game written in Rust, inspired by Pokemon fire red, etc.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages