3.2 KiB
GEMINI.md - Context & Instructions for "Super Mentor" (最强导师)
1. Project Overview
Project Name: Super Mentor (最强导师 / Supervisor Simulator) Type: Simulation / Strategy / Roguelite Game Engine: Godot 4.x (C# / .NET) Platform: Windows (Win32), likely cross-platform capable.
Core Concept: A "survival horror" simulation of academic life. Players manage a lab, recruit students, publish papers, secure funding, and navigate academic politics ("publish or perish").
2. Architecture & Directory Structure
2.1 Game Engine (Godot/C#)
- Root: Contains
project.godot,.sln,.csproj. scripts/: The core C# source code.Core/: Game systems (TurnSystem, TaskSystem, EconomySystem, SynergySystem) and Interfaces.Models/: Data models (StudentModel, TaskModel, etc.) and Definitions.[Node classes]:Player.cs,Student.cs(Godot Node behaviors).
resources/definitions/: Data-driven design files..json: Archetypes, Roles, Traits..tres: Discipline specific resources (Godot Text Resource).
scenes/: Godot.tscnscene files.docs/: Detailed game design documents (GDD).
2.2 Tooling: Numerical Design & Balancing System (NDBS)
Located in tools/ndbs/, this is a web-based tool for designers to edit game data and write scripts.
- Backend: Python 3.14 (FastAPI), managed by
uv. - Frontend: Vue.js (Vite, Naive UI/Element Plus).
- Spec:
specs/numerical_design_system.md.
3. Building & Development
3.1 Game (Godot)
- Prerequisites: Godot Engine (Mono version), .NET SDK.
- Build: Standard Godot build process or via IDE (Visual Studio / JetBrains Rider / VS Code).
- Run: Open
project.godotin Godot Editor or run via CLI.
3.2 NDBS Tool (tools/ndbs)
- Backend (
tools/ndbs/server):- Manager:
uv - Run:
uv run main.py(oruvicorn main:app --reload)
- Manager:
- Frontend (
tools/ndbs/client):- Manager:
npm/yarn - Build:
npm run build(Output consumed by Python server).
- Manager:
4. Key Conventions
4.1 C# / Godot
- Systems Pattern: Core logic is decoupled from Godot Nodes where possible, residing in
scripts/CoreimplementingIGameSystem. - Rule System: Game logic "rules" (Buffs/Debuffs) are referenced by string IDs (
RuleIds) and executed via aRuleManager(using Reflection). - Data Driven: Heavy reliance on JSON/TRES definitions for content.
4.2 Code Style
- C#: Standard .NET conventions (PascalCase for public, camelCase for private/locals).
- Python: Type hints required (Python 3.14+). Pydantic for data validation.
- Frontend: Vue Composition API (
<script setup lang="ts">).
5. Current Task Context (As of Jan 2026)
The project is actively implementing the NDBS Tool defined in specs/numerical_design_system.md.
Goal: Create a unified service where a Python backend serves a Vue frontend to allow editing of resources/definitions and generation of scripts/Rules/Generated/*.cs files.
Immediate Next Steps:
- Initialize the Python backend using
uv. - Set up the Vue frontend.
- Implement the File System API for JSON/TRES handling.