MIT License

项目介绍

AhmadHassan-BTed/RoseWish 是一个托管在 GitHub 上的开源项目,主要使用 Python 编写,采用 MIT License 许可证,目前获得 4.8k 个 Star、0 次 Fork。

仓库全名
AhmadHassan-BTed/RoseWish
开源许可证
MIT License
Star 数
4.8k

README 摘要

RoseWish 🌹 Rose Day Special: Wishing Visual Novel A high-fidelity, story-driven pixel art experience crafted for the spirit of Rose Day. Designed by Ahmad Hassan (B-Ted). Features • Quick Start • Architecture • Contributing A Gift for Your Loved One This game was crafted as a heartfelt way to express your love. Use it to wish your special someone a Happy Rose Day, customize it with your private memories, and let…

完整内容见 GitHub 原始 README 或本页 。

常见问题

RoseWish 用什么语言开发?

主要使用 Python 编写,采用 MIT License 许可证,目前有 4.8k 个 Star。

RoseWish 可以免费商用吗?

仓库采用 MIT License 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 RoseWish 的源码?

可以直接克隆仓库:git clone https://github.com/AhmadHassan-BTed/RoseWish.git,默认分支为 main;安装与运行步骤见仓库 README。

RoseWish 最近还在维护吗?

仓库最近一次更新为 7月6日,当前没有未关闭的 Issue;Star 数为 4.8k,可作为社区活跃度的参考。

关于

GitHub 原始描述(英文)

A heartfelt, interactive narrative mini-game built in Python for Rose Day. Features custom entities, a dynamic dialogue system, animated particle effects, and integrated audio to deliver a unique, romantic digital experience.

描述取自 GitHub 官方 API,保持仓库作者书写的原文。

语言占比

Dockerfile
Makefile
Python

README

RoseWish Banner

RoseWish 🌹

Rose Day Special: Wishing Visual Novel

Python 3.12 License: MIT Ahmad Hassan (B-Ted) PRs Welcome

A high-fidelity, story-driven pixel art experience crafted for the spirit of Rose Day. Designed by Ahmad Hassan (B-Ted).

Features • Quick Start • Architecture • Contributing


A Gift for Your Loved One

This game was crafted as a heartfelt way to express your love. Use it to wish your special someone a Happy Rose Day, customize it with your private memories, and let the pixel-art magic do the rest. It’s not just a game; it’s a personalized wish wrapped in code.


The Rose Day Wishing Game is more than just a project; it’s a digital rose garden where code meets emotion. Crafted with love and a focus on high-fidelity storytelling, this interactive experience brings the magic of Rose Day to your screen.

Built on a professional, service-oriented architecture, it seamlessly blends engineering maturity with a heartwarming narrative of two souls, MrLover and MissLovely, as they journey through a day of dreams, napping, and heartfelt surprises.

“Like a rose, a project is beautiful not just in its bloom, but in the care put into its roots.”

This project was built to demonstrate clean engineering practices in game development while providing a meaningful, personalized gift experience.



Features

  • Heartfelt Narrative: A multi-stage state machine that guides MrLover and MissLovely through their special day.
  • Dreamy Environments: Hand-crafted pixel-art backgrounds that shift from the warmth of the sun to the mystery of the evening and the sparkles of a dream.
  • Dancing Particles: A high-performance physics engine that fills the air with drifting snow, floating hearts, and delicate rose petals.
  • Soulful Soundscapes: Integrated audio services for a continuous, immersive musical journey.
  • Your Own Story: Fully customizable names, greetings, and secrets tucked away in the environment configuration.

Architecture

The repository follows a modern decoupled structure, ensuring 100% cohesion and minimal coupling between systems.

System Workflow

graph TD A[main.py] --> B[GameEngine] B --> C[Service Registry] B --> D[State Machine] subgraph Services C --> S1[AudioService] C --> S2[RenderService] end subgraph Game Systems D --> E1[Narrative Director] D --> E2[Particle Manager] D --> E3[Dialogue System] end subgraph Entities E1 --> P1[MrLover Character] E1 --> P2[MissLovely Character] end

Internal Module Structure

classDiagram class GameEngine { +run() +update(dt) +render() } class Character { +update(dt) +draw(screen) } class MissLovely { +draw_sleeping() +draw_standing() } class MrLover { +holding_rose: bool } Character <|-- MissLovely Character <|-- MrLover GameEngine *-- ParticleManager GameEngine *-- DialogueBox GameEngine *-- Background

Repository Structure

Rose-Day-Wishing-Game/
├── src/
│   ├── core/           # Dependency injection and event bus
│   ├── engine/         # Main game loop and state management
│   ├── entities/       # Character logic and pixel-art rendering
│   ├── services/       # Decoupled Audio and Rendering services
│   ├── ui/             # Backgrounds and dialogue overlays
│   ├── utils/          # Particle systems and constants
│   ├── config/         # Environment-based configuration
│   └── main.py         # Application entry point
├── docs/               # Technical specifications
├── .env.example        # Configuration template
├── pyproject.toml      # Build system and metadata
└── requirements.txt    # Project dependencies

Quick Start

1. Prerequisites

  • Python 3.12 or higher
  • pip package manager

2. Installation

# Clone the repository
git clone https://github.com/AhmadHassan-BTed/Rose-Day-Wishing-Game.git
cd Rose-Day-Wishing-Game

# Install dependencies
pip install -r requirements.txt

3. Configuration

The game is pre-configured with generic values in the .env file. You can modify these values to personalize the experience:

# Open .env and change names/messages
# Example: PLAYER_NAME="Your Name"

4. Launch & Wish

python src/main.py

Run the game and share the screen with your loved one to wish them in style!


Data Flow & Lifecycle

  1. Initialization: The GameEngine initializes services and registers them in the central Registry.
  2. Configuration: Settings are loaded from .env and validated via the config module.
  3. Execution Loop:
    • Handle Input: Events are captured via pygame.
    • Update: Systems update based on Delta Time (dt) for frame-independent movement.
    • Render: The RenderService composites the background, entities, and UI.
  4. Shutdown: Clean termination of the Pygame mixer and display.

Contributing

Contributions that improve architecture, performance, or narrative depth are welcomed.

  1. Fork the repository.
  2. Create a feature branch.
  3. Submit a pull request with a detailed description of changes.

License & Credits

  • Author: Ahmad Hassan (B-Ted)
  • License: MIT License
  • Acknowledgments: Built with the incredible Pygame community.

Every rose has a story. This one is yours.

Designed for the one who makes your world bloom. On this special Rose Day.

评论

暂无评论