Add initial project files including .gitignore, LICENSE, README, and documentation

This commit is contained in:
2026-05-27 14:36:17 +02:00
commit 9d966364b5
8 changed files with 648 additions and 0 deletions
+15
View File
@@ -0,0 +1,15 @@
# instructions
.github/instructions/
# GoDot files
*.import
*.godot
# OS files
.DS_Store
Thumbs.db
# Build files
build/
bin/
obj/
+14
View File
@@ -0,0 +1,14 @@
# MIT License
Copyright (c) 2026 Georg Sinn <zwitschi82 at gmail dot com>
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
+64
View File
@@ -0,0 +1,64 @@
# Chemo-Sim
**A First-Person Simulator Where YOU Are the Patient**
Welcome to the worst day of your life—but make it funny.
## What is This?
Chemo-Sim is a painfully accurate, darkly comedic first-person simulator that puts you in the hospital gown. Experience the full journey: the bad news, the IV drips, the hair loss, the existential dread, and the occasional absurd moment that makes you question reality.
This is not a game about _beating_ cancer. This is a game about _being_ chemo'd. Every indignity, every side effect, every surreal hospital hallucination—all yours to experience.
> [!WARNING]
> This game contains brutal honesty wrapped in dark humor. If you find cosmic absurdity funny while facing human suffering, you're our people.
## Features
- **Hyper-realistic symptom simulation** Nausea, hair loss, taste changes, chemo brain, the works
- **Minigames from hell** Throw up accurately, hold a conversation while foggy, eat food that tastes like pennies
- **Medical accuracy meets comedy** Our research was thorough; our jokes are darker
- **Multiple chemo regimens** Different drugs, different side effects, different routes to suffering
- **Hospital environments** Waiting rooms, treatment centers, home isolation—all the glamour
- **Unlockable dark humor** Easter eggs, absurd internal monologues, meme-worthy moments
- **Accessibility focus** Because chemo patients are already struggling; this game shouldn't be
## Why This Exists
This started as a joke. Then we realized nobody had made this. Then we realized _why_ it could matter—giving people a tiny window into what patients actually endure, all while laughing at the absurdity of existence.
It's therapy through comedy. It's dark. It's sincere. It's ridiculous. It's all at once.
## Platform Support
- Windows 10/11 (x64)
- Linux (Ubuntu 20.04+, Fedora 35+, Arch)
## Development Status
**Early Access / In Development** We're building this lean and mean with a 2-person team + AI tools. Expect rapid iteration, unfiltered creative decisions, and occasional chaos.
## Credits
Made by two people who thought this was funny enough to be real.
## License
MIT License - See [LICENSE.md](LICENSE.md)
## For Developers
- [Technical Architecture](docs/ARCHITECTURE.md)
- [Development Roadmap](docs/DEVELOPMENT_ROADMAP.md)
- [Build Guide](docs/BUILD_GUIDE.md)
- [Game Design Document](docs/GAME_DESIGN_DOCUMENT.md)
## Support This Thing
Steam Early Access coming Q3 2026. Wishlist to keep up.
Follow the chaos: [Discord] [Twitter] [TikTok]
[Discord]: https://discord.gg/yougetchemo
[Twitter]: https://twitter.com/yougetchemo
[TikTok]: https://www.tiktok.com/@yougetchemo
+166
View File
@@ -0,0 +1,166 @@
# Chemo-Sim Technical Architecture
**Goal:** Build once, deploy to Windows/Linux, release on Steam with minimal overhead.
## Tech Stack (Lean & Mean)
| Component | Choice | Why |
| ------------------- | ------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| **Game Engine** | Godot 4.x (Open Source) | Free, cross-platform native exports, no fees, great 2D/3D hybrid, minimal learning curve |
| **Language** | GDScript | Godot-native; AI tools generate excellent GDScript, no language mixing friction |
| **Build System** | GitHub Actions + Godot Export Templates | Automated builds for all platforms, zero cost, versioning out of the box |
| **Version Control** | Git (GitHub/GitLab) | Standard; integrates with Steam builds |
| **Audio** | Godot's built-in AudioServer | Already integrated, sufficient for ambient + SFX + UI beeps, no licensing cost |
| **Physics/3D** | Godot's built-in Bullet Physics | Already integrated, no external dependency |
| **UI/UX** | Godot Control nodes + custom shaders | No external framework needed; build once, runs everywhere |
| **Analytics** | None initially OR Telemetry to self-hosted server | Consider privacy; avoid Unity/Unreal data-hoarding |
## Project Structure
```txt
YOU_GET_CHEMO/
├── project.godot # Godot project config
├── scenes/ # Game scenes (organized by system)
│ ├── hospital/
│ ├── treatment_ui/
│ ├── symptoms/
│ ├── minigames/
│ └── menus/
├── scripts/ # GDScript code
│ ├── game_systems/
│ ├── ui_controllers/
│ ├── minigame_logic/
│ └── utils/
├── assets/ # Art, audio, fonts
│ ├── models/
│ ├── textures/
│ ├── audio/
│ └── fonts/
├── export_templates/ # Godot export configs for each platform
│ ├── windows.export
│ └── linux.export
├── build/ # Generated build outputs
│ ├── windows/
│ └── linux/
├── ci/ # CI/CD scripts
│ ├── .gitea/workflows/ # GitHub Actions for auto-builds
│ ├── build.sh
│ └── build.ps1 # Windows build script
├── docs/
│ ├── DEVELOPMENT_ROADMAP.md
│ ├── STEAM_RELEASE_CHECKLIST.md
│ ├── BUILD_GUIDE.md
│ └── GAME_DESIGN_DOCUMENT.md
└── README.md
```
## Cross-Platform Strategy
### Windows (x64)
- **Export format:** .exe (standalone)
- **Runtime:** Godot includes all dependencies
- **Signing:** Optional (self-signed or purchased cert for Steam trust)
- **Build time:** ~5 minutes
### Linux (Portable + AppImage)
- **Export format:** Portable executable + AppImage (recommended)
- **Runtime:** Fully portable; ships all libs needed
- **No signing required**
- **Build time:** ~5 minutes
## Build Pipeline (GitHub Actions)
Automated builds on every commit to `main`:
```yaml
# .gitea/workflows/build.yml (pseudocode)
on: [push, pull_request]
jobs:
build:
runs-on: [ubuntu-latest, windows-latest]
steps:
- uses: actions/checkout@v2
- uses: chickensoft-games/setup-godot@v2
- run: godot --export-project YOUR_PLATFORM
- uses: actions/upload-artifact@v2
```
**Result:** Every push generates Windows .exe and Linux .AppImage in GitHub releases.
## Steam Distribution
### Submission Requirements
- **Godot version:** Latest stable (currently 4.x)
- **Build artifacts:** Separate builds for Win/Linux (Steam handles delivery)
- **Depot configuration:** Steamworks SDK includes per-platform depots
- **Build size targets:**
- Windows: ≤500 MB
- Linux: ≤400 MB
### Steam Integration
1. **Steamworks SDK integration** (optional, recommended for achievements):
- Godot has GodotSteam plugin (community-maintained, free)
- Handles achievements, leaderboards, cloud saves, controller support
2. **Build upload:**
- Use Steamworks SDK command-line tools
- OR upload via Steamworks web UI
3. **Testing:**
- Steam provides free depot testing tools
- Beta branch testing before public release
## Performance Targets
| Metric | Target | Notes |
| --------- | ------------------- | --------------------------------------- |
| FPS | 60 stable | First-person game; smooth matters |
| Load time | <5 sec | Hospital scenes are relatively simple |
| Memory | <1 GB | Godot is lean; you'll be fine |
| CPU | Single-core capable | Most indie devs' machines should run it |
## Development & Iteration
### Local Builds
```bash
# Export all platforms locally
godot --export-release Windows "build/windows/YOU_GET_CHEMO.exe"
godot --export-release Linux "build/linux/YOU_GET_CHEMO.x86_64"
```
### Rapid Testing
- Run in Godot editor for quick iteration
- Export to single platform while developing
- Test cross-platform **before** final builds (use GitHub Actions for CI/CD)
## Known Gotchas
1. **Linux distros:** Test on Ubuntu, Fedora, and Arch—most players use one of these.
2. **Controller support:** Godot auto-detects; test with a gamepad if you support it.
3. **Godot versioning:** Lock to a specific Godot 4.x version in your CI/CD. Don't always use "latest."
## Cost Breakdown (Minimal)
| Item | Cost | Notes |
| -------------------- | ----- | --------------------------- |
| **Godot** | $0 | Open source |
| **GitHub** | $0 | Free tier supports CI/CD |
| **Steam Submission** | $100 | One-time per game |
| **Apple Developer** | $0 | macOS dropped from scope |
| **Steamworks** | $0 | Free after submission fee |
| **Total** | ~$100 | One-time; no recurring fees |
## Next Steps
1. Install Godot 4.x
2. Initialize GitHub repo with structure above
3. Set up GitHub Actions for CI/CD (see BUILD_GUIDE.md)
4. Export templates locally to verify each platform works
5. Create Steamworks account, reserve app ID
6. Begin development
See `DEVELOPMENT_ROADMAP.md` for phased shipping strategy.
+76
View File
@@ -0,0 +1,76 @@
# Build Guide
Chemo-Sim — How to build from source.
## Prerequisites
- [Godot 4.x](https://godotengine.org/download) (lock to a specific minor version, not "latest")
- Git
- (Windows) PowerShell 5+
- (Linux) bash
## Quick Start
```bash
git clone <repo-url> chemo-sim
cd chemo-sim
```
Open `project.godot` in the Godot editor, or run:
```bash
godot --editor
```
## Local Export
### Windows
```bash
godot --export-release Windows "build/windows/YOU_GET_CHEMO.exe"
```
### Linux
```bash
godot --export-release Linux "build/linux/YOU_GET_CHEMO.x86_64"
```
## CI/CD (GitHub Actions)
Builds run automatically on push to `main`. See `.github/workflows/build.yml`.
To trigger manually:
1. Go to Actions tab
2. Select "Build" workflow
3. Run workflow
Artifacts appear in the workflow run summary.
## Export Templates
Export templates are in `export_templates/`:
- `windows.export`
- `linux.export`
These configure platform-specific settings (icon, version, etc.). Edit via Godot Editor → Project → Export.
## Versioning
Follow [Semantic Versioning](https://semver.org/): `MAJOR.MINOR.PATCH`
- MAJOR: Breaking changes / major content milestones
- MINOR: New features / new minigames
- PATCH: Bug fixes
Set version in `project.godot``application/config/version`.
## Troubleshooting
| Problem | Fix |
| ----------------------------------- | ------------------------------------------------------------------- |
| Export fails with missing templates | Download export templates in Godot Editor → Manage Export Templates |
| Linux build won't run | `chmod +x build/linux/YOU_GET_CHEMO.x86_64` |
| Godot version mismatch | Check CI config and local Godot version match |
+188
View File
@@ -0,0 +1,188 @@
# Development Roadmap
Chemo-Sim
**Shipping to Steam Early Access Q3 2026**
Timeline assumes 2 devs + heavy AI tool usage. Be realistic about velocity.
## Phase 1: MVP (46 weeks)
_Just Make It Playable_
**Goal:** First-person movement, one chemo treatment, one symptom system, one minigame.
### Deliverables
- [ ] **Core gameplay loop**
- First-person character controller (movement, look around)
- Hospital room scene (basic geometry)
- Sit-down animation, IV insertion sequence
- [ ] **First symptom system: Nausea**
- Screen tilt + color desaturation
- Vomit minigame: hit keys in sequence (like Guitar Hero but gross)
- [ ] **UI skeleton**
- Treatment timer
- Symptom tracker (simple text readout)
- Main menu
- [ ] **Audio placeholder**
- Hospital ambient sound
- UI beeps
- [ ] **Builds for Windows + Linux** (automated via GitHub Actions)
**Success criteria:** You can play start-to-finish in 5 minutes. It's janky. That's fine.
## Phase 2: Core Loop (68 weeks)
_Add Depth & Polish_
**Goal:** 23 complete treatment sessions, 45 symptom systems, minigame variety.
### Deliverables
- [ ] **Multiple symptom systems**
- Nausea ✓ (from Phase 1)
- Hair loss (visual degradation)
- Taste distortion (food looks/sounds wrong)
- Chemo brain (UI glitches, text corruption)
- Fatigue (movement slows)
- [ ] **Expanded minigames**
- Vomit accuracy challenge ✓
- "Eat this food" (taste it wrong)
- Conversation memory test
- Hospital navigation while dizzy
- [ ] **Treatment variety**
- Infusion pump (timed, interactive)
- Different drug regimens (affect symptom severity)
- Radiation room (if you want it)
- [ ] **Progression system**
- Day counter (Week 1 → Week 6+)
- Cumulative effects (symptoms get worse over time)
- [ ] **Audio overhaul**
- Licensed or royalty-free indie soundtrack
- Realistic hospital ambience
- Minigame SFX
- [ ] **Automated testing**
- GUT (Godot Unit Testing) for symptom system interactions
- Prevent regression when multiple symptoms overlap (nausea + chemo brain + fatigue)
- CI runs tests on every push
- [ ] **Art pass**
- Hospital environment refinement
- Character appearance (hair loss progression)
- UI polish
**Success criteria:** 2030 minute playthrough. Feels like a _game_, not a tech demo.
## Phase 3: Dark Humor & Absurdity (46 weeks)
_The Soul of the Game_
**Goal:** Add the comedic/edgy elements that make this _your_ game, not a medical sim.
### Deliverables
- [ ] **Absurd hospital scenarios**
- TV plays surreal content (AI-generated English/gibberish meme-format text)
- NPC dialogue with dark one-liners
- Environmental storytelling (notes from other patients)
- [ ] **Unlockable content**
- Easter eggs (hidden minigames, joke treatments)
- Achievement system (Steam achievements)
- Dark humor unlocks (internal monologues, sarcastic commentary)
- [ ] **Minigame variations**
- "Eat bad food" becomes increasingly absurd
- Conversation minigame gets funnier/sadder
- [ ] **Soundtrack expansion**
- Menu music (ironic, upbeat cancer music)
- Treatment room ambience (hospital + dark humor)
**Success criteria:** Playtester feedback: "I laughed and felt uncomfortable simultaneously."
## Phase 4: Polish & Optimization (23 weeks)
_Make It Shippable_
**Goal:** Stability, performance, accessibility.
### Deliverables
- [ ] **Cross-platform testing**
- Windows: test on 23 configs
- Linux: Ubuntu, Fedora, Arch
- [ ] **Performance optimization**
- Target 60 FPS on mid-range hardware
- Memory profiling
- Load time optimization
- [ ] **Accessibility**
- Colorblind modes
- Subtitle options
- Control remapping
- Difficulty settings (if applicable)
- [ ] **Bug fixes & stability**
- Playtester feedback implementation
- Crash fixing
- Save/load robustness
- [ ] **Steam setup**
- Steamworks account configured
- App ID reserved
- Build depots set up
- Store page content drafted (see STEAM_RELEASE_CHECKLIST.md)
**Success criteria:** No crashes in 1-hour playthroughs. Runs on a 5-year-old laptop.
## Phase 5: Early Access Launch (12 weeks)
_Go Public_
**Goal:** Get it on Steam, gather feedback, iterate.
### Deliverables
- [ ] **Final build verification**
- Download from Steam, play start-to-finish
- Test all platforms
- [ ] **Store page live**
- Screenshots, trailer uploaded
- Description, tags, content warnings finalized
- [ ] **Community channels live**
- Discord server
- Twitter/social presence
- [ ] **Day-1 support plan**
- Hotfix process for critical bugs
- Feedback monitoring
**Success criteria:** Launch day without game-breaking bugs. Early feedback positive.
## Post-Launch (Ongoing)
### Updates (Bi-weekly to monthly)
- [ ] New minigames
- [ ] Additional symptom systems
- [ ] More absurd scenarios
- [ ] Community-requested features
- [ ] Cosmetics (patient gown styles, room decorations)
### Long-term (612 months post-launch)
- [ ] Full release candidate build
- [ ] Content expansion (survivors' stories, alternative treatments)
- [ ] Mod support (if community demands it)
- [ ] Console ports (if budget allows—Switch would be dark comedy gold)
## Total Timeline
**MVP → Full Early Access Launch: ~1619 weeks (~4 months)**
Budget for slippage. You'll hit roadblocks. That's normal. Ship what's fun, not what's perfect.
## Team Velocity Notes
With 2 people + heavy AI tools:
- **Art/Animation:** AI image gen + Godot animation nodes = faster
- **Sound:** AI text-to-speech + royalty-free libraries = minimal cost
- **Code:** AI pair programming (Copilot, Claude) = faster iteration
- **Bottleneck:** Creative decisions and playtesting (can't be automated)
**Protect creative time.** The dark humor is the game. Don't let optimization timelines kill your weird ideas.
+69
View File
@@ -0,0 +1,69 @@
# Game Design Document
Chemo-Sim
## Elevator Pitch
First-person chemo simulator. Painfully accurate. Darkly funny. You don't beat cancer — you survive the treatment.
## Core Pillars
1. **Medical Accuracy** — Symptoms, treatments, and timelines grounded in real chemo regimens
2. **Dark Comedy** — Absurdity, gallows humor, and uncomfortable laughs as coping mechanism
3. **Empathy Through Experience** — Players feel what patients feel, without after-school-special moralizing
## Tone Guide
- **Voice:** First-person internal monologue. Sarcastic, exhausted, occasionally surreal. Think: _Fight Club_ narrator meets hospital discharge paperwork.
- **Humor boundaries:** Joke about the situation, never the patient. Punch up at the healthcare system, the absurdity of side effects, the cosmic unfairness. Never punch down at suffering.
- **"No filter" means:** Honest about bodily functions, honest about fear, honest about the weird places your brain goes. Not edgelord shock content.
- **NPCs:** Nurses are tired professionals with dark humor of their own. Other patients range from gallows-humor veterans to terrified newbies. Doctors are well-meaning but rushed.
## Gameplay Loop
```
Arrive at hospital → Check in → Wait (minigames happen here) → Treatment session → Side effects kick in → Go home → Cope → Repeat
```
Each cycle = 1 treatment day. Side effects accumulate. Mental state degrades. Dark humor escalates.
## Symptom Systems
| Symptom | Mechanic | Visual/Audio Cue |
| ---------------- | --------------------------- | ------------------------------------ |
| Nausea | Screen tilt, vomit QTE | Color desaturation, stomach gurgle |
| Hair loss | Progressive visual | Mirror reflection, clumps in shower |
| Taste distortion | Food minigame becomes wrong | Metallic sheen on food, wrong sounds |
| Chemo brain | UI corruption | Text scrambles, buttons move |
| Fatigue | Movement slows, inputs lag | Heavy breathing, blurred edges |
## Minigames
### Vomit (Phase 1)
Keys appear in sequence. Miss = mess. Hit = clean-ish. Accuracy tracked.
### Eat This Food (Phase 2)
Food appears normal. You remember it tasting different. Choose what's "wrong" — taste, texture, temperature. Always wrong. Gets harder.
### Conversation Memory (Phase 2)
NPC asks questions. You respond. Later, they reference your answers. If chemo brain scrambled it, dialogue branches to confusion.
### Hospital Navigation (Phase 2)
Find your way while dizzy. Controls invert randomly. Screen tilts. Timer counts down.
## Progression
- **Day counter:** Week 1 through Week 6+
- **Cumulative effects:** Each symptom has intensity 0100. Increases per treatment. Some plateau, some don't.
- **Regimen variance:** Different drug combos produce different symptom profiles. Random at start, player can't choose — because patients can't.
- **No win condition.** You finish treatment or you don't. The game ends when the regimen ends.
## Unlockables
- Hidden minigames (absurdist: argue with insurance, decode hospital bill)
- Internal monologue logs (unlock sarcastic commentary on each symptom)
- Achievement names are dark jokes
+56
View File
@@ -0,0 +1,56 @@
# Steam Release Checklist
Chemo-Sim — Everything needed before hitting "Publish."
## Pre-Launch (Phase 4)
- [ ] Steamworks account created
- [ ] App ID reserved ($100 fee paid)
- [ ] Bank/tax info filled in Steamworks
- [ ] Build depots configured (Win x64, Linux)
- [ ] GodotSteam plugin integrated and tested
- [ ] Achievements defined and implemented
- [ ] Cloud saves configured (if using)
## Store Page (Phase 45)
- [ ] Short description (≤300 chars)
- [ ] Full description (formatting, GIFs, feature bullets)
- [ ] Content warnings set (mature themes, medical situations, dark humor)
- [ ] Tags: Indie, Simulation, First-Person, Dark Humor, Singleplayer, Story Rich
- [ ] Genre: Simulation, Indie
- [ ] Screenshots (min 5, showing gameplay variety)
- [ ] Trailer (3090 sec, captures tone)
- [ ] Capsule images:
- Header capsule (460x215)
- Small capsule (231x87)
- Main capsule (616x353)
- Vertical capsule (374x448)
- [ ] Library assets:
- Library capsule (600x900)
- Library hero (3840x1240)
- Library logo (1280x720)
## Build Verification (Phase 5)
- [ ] Fresh install from Steam on Windows
- [ ] Fresh install from Steam on Linux
- [ ] Achievements unlock correctly
- [ ] Save/load works across sessions
- [ ] Controller works (if supported)
- [ ] No crash in 1-hour playthrough
- [ ] Steam overlay works (Shift+Tab)
## Launch Day
- [ ] Set release date in Steamworks
- [ ] Flip store page from "Coming Soon" to "Early Access"
- [ ] Post announcement on Discord/Twitter/TikTok
- [ ] Monitor Steam forums and Discord for first-hour bugs
- [ ] Hotfix branch ready, CI warmed up
## Post-Launch
- [ ] First patch within 48 hours (critical fixes only)
- [ ] Weekly community roundup posts
- [ ] Plan first content update based on feedback