From f18790f8981c762cd8467f31dd9d04db5218dfd8 Mon Sep 17 00:00:00 2001 From: yesung Date: Wed, 22 Apr 2026 13:45:53 +0900 Subject: [PATCH] docs: sync recent Combat Progression and Stat Injection mechanics to Wiki --- .gitignore | Bin 0 -> 132 bytes 00_Raw/2026-04-22_All_Repos_Update.md | 25 +++++ 00_Raw/2026-04-22_CombatLevelDesign.md | 66 ++++++++++++ 00_Raw/2026-04-22_CraftingSystem_Full.md | 98 ++++++++++++++++++ 00_Raw/2026-04-22_Git_Protocol_Setup.md | 27 +++++ 00_Raw/2026-04-22_LevelUp_Evolution_System.md | 70 +++++++++++++ 10_Wiki/.obsidian/workspace.json | 68 ++++++------ 10_Wiki/Topics/.obsidian/graph.json | 2 +- ...-Injection-and-Visual-Renderer-Pipeline.md | 33 ++++++ .../Meta-Progression-and-Economy-Systems.md | 30 ++++++ ...odular-Weapon-Evolution-and-Skill-Trees.md | 31 +++--- .../Topics/Skybound/Skybound-Knowledge-Hub.md | 3 + Agent/.gitignore | Bin 0 -> 36 bytes Agent/GIT_PROTOCOL.md | 16 +++ GIT_PROTOCOL.md | 15 +++ WIKIFICATION_PROTOCOL.md | 18 ++++ 16 files changed, 456 insertions(+), 46 deletions(-) create mode 100644 .gitignore create mode 100644 00_Raw/2026-04-22_All_Repos_Update.md create mode 100644 00_Raw/2026-04-22_CombatLevelDesign.md create mode 100644 00_Raw/2026-04-22_CraftingSystem_Full.md create mode 100644 00_Raw/2026-04-22_Git_Protocol_Setup.md create mode 100644 00_Raw/2026-04-22_LevelUp_Evolution_System.md create mode 100644 10_Wiki/Topics/Skybound/01_Core_Engine/Stat-Injection-and-Visual-Renderer-Pipeline.md create mode 100644 10_Wiki/Topics/Skybound/04_Mechanics_Progression/Meta-Progression-and-Economy-Systems.md create mode 100644 Agent/.gitignore create mode 100644 Agent/GIT_PROTOCOL.md create mode 100644 GIT_PROTOCOL.md create mode 100644 WIKIFICATION_PROTOCOL.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..998f984ec1d128575f2598a9df07f0005e355239 GIT binary patch literal 132 zcmezW&z-@OA%r2GA%G!>!5_%-XK)5$9|k>!T!s_|UIs3PaG(lrAa(;{X9h>08c(1K UKLUFEf#!Jw)%XC_y5m&~0Oa))oB#j- literal 0 HcmV?d00001 diff --git a/00_Raw/2026-04-22_All_Repos_Update.md b/00_Raw/2026-04-22_All_Repos_Update.md new file mode 100644 index 00000000..05631c10 --- /dev/null +++ b/00_Raw/2026-04-22_All_Repos_Update.md @@ -0,0 +1,25 @@ +# [LOG] All Repositories Update (Full Sync) + +- **작업 일시**: 2026-04-22 +- **작업 내용**: 4개 주요 프로젝트 거점(`2nd`, `skybound`, `Legal`, `Agent`)에 대한 원격 저장소 동기화(`git pull`). +- **이유/목적**: 로컬 작업 환경을 최신 상태로 유지하여 개발 및 문서화 작업 시 발생할 수 있는 충돌을 방지하고 코드 정합성을 확보하기 위함. +- **기대값**: + 1. 모든 로컬 브랜치가 최신 원격 브랜치(`main`)와 동기화됨. + 2. 동기화 과정에서 에러 및 수동 충돌 해결 작업 0건 유지. +- **처리 과정**: + 1. `2nd` (Wiki): `git pull lm_sync main` 진행 -> 최신 상태 확인. + 2. `skybound`: `git pull origin main` 진행 -> 최신 상태 확인. + 3. `Legal`: `git pull origin main` 진행 -> 최신 상태 확인. + 4. `Agent`: `git pull origin main` 진행 -> 최신 상태 확인. +- **사용 지식**: + 1. Git Remote Operations (`git pull`) + 2. Local Git Mapping Protocol (신규 수립 지침) +- **결과**: + * 4개 프로젝트 모두 성공적으로 `Already up to date` 또는 최신 커밋 반영 완료. + * 작업 경로 및 리모트 명칭(lm_sync vs origin) 혼선 없이 처리됨. +- **연결 지식 (Relevant Knowledge)**: + * [[E:\Wiki\2nd\10_Wiki\Topics\03_DevOps_Environment]] (데브옵스 및 환경 구성) + * [[E:\Wiki\2nd\10_Wiki\Topics\Automation]] (작업 자동화) + +--- +**작성자**: AI 개발부장 코다리 🫡 diff --git a/00_Raw/2026-04-22_CombatLevelDesign.md b/00_Raw/2026-04-22_CombatLevelDesign.md new file mode 100644 index 00000000..f7837683 --- /dev/null +++ b/00_Raw/2026-04-22_CombatLevelDesign.md @@ -0,0 +1,66 @@ +# 작업 로그: Combat Level Design — Time-Based Difficulty Scaling 구현 + +## 📋 작업 내용 (What) +"전투 타임라인 & 난이도 프로토콜" 설계안을 기반으로 Skybound 프로젝트의 +StageDirectorSystem, SpawnerSystem, EngineProtocol을 업그레이드하고, +신규 CombatTimeline 설정 파일을 추가함. + +## 🎯 왜 했는지 (Why) +기존 스테이지 시스템의 문제점: +- StageDirectorSystem: 하드코딩된 `if frame >= X` 체이닝, 새 phase 추가 불가 +- SpawnerSystem: 완전 무작위 스폰 → 스파이크 없음, 긴장감 없음 +- 난이도 곡선 부재: 적 HP 단순 배율만 존재, 밀도/타이밍 변화 없음 +- Death Trap 발생 가능: EVO 준비 없이 Spike 구간 진입 + +## 💡 기대값 (Expected Value) +- 시간(초) 기반 스크립티드 웨이브 등장 (STANDARD 15분 / BLITZ 8분) +- 페이즈별 difficultyMult / spawnIntervalMult 자동 동기화 +- Spike 30초 전 자동 EXP 젬 밀도 2배 부스트 (Death Trap Avoidance) +- 스웜 구간에서 최대 6유닛씩 3프레임 간격 분산 스폰 (성능 보장) +- 보스 처치 후 영구 성장 보상 발행 (UX Continuity) +- TypeScript 에러 0개 + +## 🔧 처리 과정 (How) + +### 1. CombatTimeline.ts (신규 생성) +- StageMode: STANDARD(15분) / BLITZ(8분) +- DifficultyPhase: name, startSec, diffMult, spawnIntervalMult, maxEnemyCount, bgmCue +- WaveTrigger: triggerSec, enemyType, density, isSpike, eventEffect, comms, shake +- STANDARD_TIMELINE: 5개 페이즈, 15개 WaveTrigger (Spike 4회) +- BLITZ_TIMELINE: 5개 페이즈, 10개 WaveTrigger (Spike 6회) +- 유틸 함수: getActivePhase(), collectDueTriggers(), getTimeline() + +### 2. StageDirectorSystem.ts (전면 재작성 v2.0) +- tickTimeline(): 매 프레임 currentSec = frame/60로 getActivePhase() 및 collectDueTriggers() 호출 +- 페이즈 자동 전환: activePhase.name !== phase일 때 STAGE_TRANSITION 인텐트 발행 +- difficultyMult / tensionLevel: activePhase.diffMult + densityFactor로 자동 동기화 +- EXP 밀도 부스트: 다음 Spike까지 30초 이내 시 EXP_DENSITY_BOOST 인텐트 발행 +- processTriggers(): WaveTrigger → 이벤트(COMMS, SCREEN_SHAKE) + SCRIPTED_SPAWN 인텐트 +- UX Continuity: 보스 처치 시 PERMANENT_REWARD 인텐트 발행 + +### 3. SpawnerSystem.ts (전면 재작성 v2.0) +- notifyScriptedSpawn(): Director로부터 스폰 요청 수신 (메서드 호출 방식) +- flushSpawnQueue(): 큐 소비 + MAX_ENEMIES_HARD_CAP(=30) 보호막 +- activateSwarmBurst(): SWARM_BURST 모드 활성화 +- tickSwarmBurst(): MAX_SWARM_BATCH(=6), SWARM_SPAWN_GAP(=3프레임) 분산 스태거링 +- 절차적 스폰: difficultyMult 기반 간격 계산, 타임라인 간격 채우기 보조 역할 +- dispose(): 큐 + 버스트 상태 초기화 + +### 4. EngineProtocol.ts (확장) +- SCRIPTED_SPAWN, SPAWN_MODE, EXP_DENSITY_BOOST, PERMANENT_REWARD 인텐트 타입 추가 + +## 🧠 사용한 지식 (Knowledge Used) +- Time-Based Difficulty Scaling 패턴 +- Object Pool + Staggered Spawn 패턴 (성능 최적화) +- "Death Trap Avoidance" 게임 디자인 원칙 +- "UX Continuity" 실패 보상 설계 +- TypeScript discriminated union (EngineIntentType) +- Observer → Direct Method Call 결정 (EventBus 미도입 상태에서의 최적 통신 방식) + +## ✅ 결과 (Result) +TypeScript 에러 0개 — `npx tsc --noEmit` 클린 통과 + +## 🔗 연결 지식 (Relevant Knowledge) +- E:\Wiki\2nd\10_Wiki\Topics\Game-Design (Difficulty Curve, Spike Design, Time-Based Scaling) +- E:\Wiki\2nd\10_Wiki\Topics\Software-Architecture (Intent Protocol, Event-Driven) +- E:\Wiki\2nd\10_Wiki\Topics\Performance-Optimization (Staggered Spawn, Object Pooling) diff --git a/00_Raw/2026-04-22_CraftingSystem_Full.md b/00_Raw/2026-04-22_CraftingSystem_Full.md new file mode 100644 index 00000000..184cd6a2 --- /dev/null +++ b/00_Raw/2026-04-22_CraftingSystem_Full.md @@ -0,0 +1,98 @@ +# [RAW LOG] 2026-04-22 — Crafting System Full Activation + +## 작업 개요 +- 날짜: 2026-04-22 +- 세션: Skybound Crafting Economy Full Integration (Option B) +- Git: `facb2ba` → `9e0110d` + +--- + +## 1. 감사 결과 (진단) + +| 항목 | 이전 상태 | +|------|----------| +| `mergeEquipment()` | ✅ HangarOverlay에서만 연결됨 | +| `cosmicCast()` | ❌ 호출처 없음 | +| `astralForge()` | ❌ 호출처 없음 | +| `disassemble()` | ❌ 호출처 없음 | +| `mergeTechPart()` | ❌ 호출처 없음 | +| `techParts`, `materials` 상태 | ❌ 선언만 있고 실제 데이터 입출력 없음 | + +--- + +## 2. 구현 내역 + +### A. `useGameStore.ts` — 크래프팅 액션 전면 활성화 +- `addMaterials(mats)`: TechMats/Core 획득 시 상태 누적 +- `addTechPart(part)`: 드롭된 TechPart 인벤토리 추가 +- `disassembleItems(ids)`: 선택 아이템 일괄 분해 → 재료 획득 + 슬롯 해제 +- `cosmicCastAction()`: 재료(Eternal×50, Destruction×50, Tech×2000) 소모 → SS급 장비 생성 +- `astralForgeAction(targetId, sacrificeId)`: LEGEND/SS 대상 + S급 희생 → forgeLevel +1 +- `mergeTechPartAction(targetId, fodderIds)`: 동일 티어/스킬 TechPart 합성 → plusLevel +1 + +### B. `HangarOverlay.tsx` — 5탭 크래프팅 UI 전면 재작성 +| 탭 | 기능 | +|----|------| +| 🔩 EQUIP | 기존 장착 슬롯 + 인벤토리 | +| ⬆ MERGE | 장비 합성(3개) + TechPart 합성(2개) | +| 🔧 DISASSEMBLE | 선택 아이템 분해 + 재료 미리보기 | +| ✦ COSMIC CAST | SS급 제작 재료 요구량 체크 + 실행 | +| ⚒ FORGE | TARGET/SACRIFICE 슬롯 선택 → forgeLevel +1 | + +- 재료 패널(TechMats, Eternal, Destruction, Relic)을 좌측 패널에 항상 표시 +- Feedback Toast: 성공/실패 3초 표시 + +### C. `HangarOverlay.css` — 새 스타일 추가 +- `.craft-tabs`, `.craft-tab-btn` — 5탭 네비게이션 +- `.materials-panel`, `.mat-grid` — 재료 표시 +- `.disassemble-preview` — 분해 미리보기 패널 +- `.cosmic-recipe`, `.cosmic-result-preview` — 코스믹 캐스트 +- `.forge-slots`, `.forge-slot-box` — 포지 슬롯 UI +- `.craft-feedback` — 피드백 토스트 애니메이션 +- `.tech-list`, `.tech-row` — TechPart 목록 + +### D. `CombatSystem.ts` — 재료 드롭 연결 +- 일반 적: 3% 확률 TechMats 10~30 획득 +- 엘리트 적: 10% 확률 TechMats 50~100 획득 + 파란 텍스트 알림 +- 엘리트 적: 5% 확률 TechPart 드롭 → 보라색 텍스트 알림 + +### E. `LootGenerator.ts` — `rollTechPart()` 신규 추가 +- 6종 스킬 풀: fire_rate / speed_boost / magnet_range / damage_up / shield / missile +- 스테이지 연동 티어: Stage 1-2→EXCELLENT, 3-4→EPIC, 5+→LEGEND + +--- + +## 3. 경제 흐름 (완성된 파이프라인) + +``` +적 처치 (일반 3% / 엘리트 10%) + ↓ +addMaterials({ techMats }) + ↓ +HangarOverlay [DISASSEMBLE 탭] → 불필요 장비 분해 → Eternal/Destruction Core 획득 + ↓ +HangarOverlay [COSMIC CAST 탭] → 코스믹 캐스트 → SS급 장비 생성 + ↓ +HangarOverlay [FORGE 탭] → SS/LEGEND 장비 forgeLevel +1~5 + +엘리트 처치 (5%) + ↓ +addTechPart() + ↓ +HangarOverlay [MERGE 탭] → TechPart 합성 → plusLevel +1 +``` + +--- + +## 4. TypeScript & Git +- `npx tsc --noEmit`: **에러 0개 ✅** +- Commit: `feat_crafting_full_ui_economy` (`9e0110d`) +- Push: `main` ✅ + +--- + +## 5. 다음 과제 (Next Steps) +1. **보스 처치 시 Eternal/Destruction Core 보장 드롭** 추가 +2. **코스믹 캐스트 결과 다양화** — Twin Lance 외 랜덤 SS급 풀 확장 +3. **TechPart 효과 실제 반영** — 인게임 스탯에 plusLevel 반영 로직 +4. **UI 시각 검증** — `http://localhost:5174/` 5탭 동작 확인 diff --git a/00_Raw/2026-04-22_Git_Protocol_Setup.md b/00_Raw/2026-04-22_Git_Protocol_Setup.md new file mode 100644 index 00000000..fed77b19 --- /dev/null +++ b/00_Raw/2026-04-22_Git_Protocol_Setup.md @@ -0,0 +1,27 @@ +# [LOG] Git Operation Mapping Protocol & Work Log System Setup + +- **작업 일시**: 2026-04-22 +- **작업 내용**: 구역별 Git 명령어 맵핑(Wiki, Skybound, Legal, Agent) 및 작업 자동 기록 시스템(Work Log) 수립. +- **이유/목적**: 대표님의 명령 한마디로 복잡한 Git 작업을 정확한 경로와 저장소에 수행하고, 모든 AI 작업 과정을 체계적으로 문서화하여 누락 없는 히스토리 관리를 하기 위함. +- **기대값**: + 1. Git 작업 시 경로 혼선 및 저장소 오류 0건 달성. + 2. 모든 작업의 의도, 지식, 결과가 md 파일로 축적되어 추후 지식 베이스 강화에 기여. +- **처리 과정**: + 1. 각 프로젝트별(`2nd`, `skybound`, `Legal`, `Agent`) 현재 Git 설정 확인. + 2. 대표님 지시 URL과 로컬 설정 대조 및 필요 시 `set-url`로 업데이트. + 3. 각 폴더에 `GIT_PROTOCOL.md`를 생성하여 명문화. + 4. `E:\Wiki\2nd\00_Raw` 경로에 작업 일지 작성 시스템 가동. +- **사용 지식**: + * Git Remote Management (`git remote set-url`) + * Organizational Process Assets (OPA) 구축 방법론 + * Markdown 기반 기술 문서 표준화 +- **결과**: + * 4개 주요 거점의 Git 맵핑 완료 및 승인 대기. + * 첫 번째 작업 로그(`2026-04-22_Git_Protocol_Setup.md`) 생성 완료. +- **연결 지식 (Relevant Knowledge)**: + * [[E:\Wiki\2nd\10_Wiki\Topics\04_Governance_Reliability]] (거버넌스 및 신뢰성) + * [[E:\Wiki\2nd\10_Wiki\Topics\Automation]] (자동화) + * [[E:\Wiki\2nd\10_Wiki\Topics\Skybound]] (프로젝트 연계) + +--- +**작성자**: AI 개발부장 코다리 🫡 diff --git a/00_Raw/2026-04-22_LevelUp_Evolution_System.md b/00_Raw/2026-04-22_LevelUp_Evolution_System.md new file mode 100644 index 00000000..fb6bba51 --- /dev/null +++ b/00_Raw/2026-04-22_LevelUp_Evolution_System.md @@ -0,0 +1,70 @@ +# 작업 로그: In-Game Level-Up & Evolution System (Phase 1~4) 전체 구현 + +## 📋 작업 내용 (What) +Skybound 프로젝트의 인게임 레벨업 및 진화 시스템을 4개 핵심 파일에 걸쳐 완전 구현. + +## 🎯 왜 했는지 (Why) +기존 `ProgressionSystem.ts`에 EXP 수집, 레벨업, 진화 구조가 골격만 있었고: +- 게임 Pause 연동이 없어 카드 선택 중에도 전투가 진행됨 +- 스킬 선택 후 엔진 내부 상태에 `(engine as any).state` 해킹으로 불완전 반영 +- EVO 스탯 적용 로직 없음, 패시브 스킬 확장 불가 +- 카드 풀 생성이 UI에서 무작위 생성되어 엔진 로직과 분리됨 + +## 💡 기대값 (Expected Value) +- 레벨업 시 게임 완전 Pause + 3지선다 카드 표시 → 선택 후 재개 +- 스킬이 엔진 내부 state에 정확히 반영됨 (단방향 플로우) +- 진화 조건 달성 시 EVO 이펙트 + 스탯 즉시 반영 +- TypeScript 타입 에러 0개 + +## 🔧 처리 과정 (How) + +### 1. ProgressionSystem.ts (전면 재작성) +- `handleLevelUp()`: ctx.setPaused(true) 호출 후 `generateSkillCards()` 결과를 LEVEL_UP 이벤트에 포함 +- `generateSkillCards()`: MAX_SKILL_SLOTS 가드, 소유 스킬 2x 가중치 Fisher-Yates 셔플 +- `applySkillSelection(ctx, skillId)`: 외부 콜백 포트 — UI에서 호출 → 엔진 state.skills 직접 업데이트 → setPaused(false) +- `processEvolution()`: EVOLUTION_RECIPES 레지스트리 기반 스캔으로 EVO 트리거 +- `syncPassives()`: magnetRadius, speedBoost, fireRateBoost 패시브 스탯 매 프레임 동기화 + +### 2. useGameEngine.ts +- `skillUpdaterRef` 추가: React UI → 엔진 단방향 주입 포트 +- `ctx` 선언 전 클로저 TDZ 방지를 위해 `let ctx` 패턴 사용 +- `applySkill()` 메서드 훅 반환에 추가 + +### 3. GameSceneRenderer.tsx (전면 재작성) +- `engineRef` 패턴으로 hoisting 에러 제거 +- `handleEngineEvent`에서 `e.cards` 수신 → `levelUpCards` state 저장 +- `handleSkillSelect`: addSkill(store) + engine.applySkill(engine) 순서 보장 +- LevelUpModal에 `preGeneratedCards` prop 전달 + +### 4. LevelUpModal.tsx (전면 재작성) +- `preGeneratedCards` prop 우선 사용 (엔진 결정론적 생성) +- 레벨 업그레이드 표시 (Lv.N → Lv.N+1) +- 빈 풀 처리 (Skip 옵션) + +### 5. 타입 시스템 업데이트 +- `EffectiveStats`: `magnetRadius: number` 추가 +- `GameEvent.LEVEL_UP`: `cards: string[]` 추가 +- `createDefaultState`: `magnetRadius: 180` 초기화 +- `calculateEffectiveStats`: `magnetRadius: 180` 반환 + +### 6. AudioManager.ts +- `playLevelUp()`: C5→E5→G5→C6 상승 아르페지오 절차형 사운드 +- `playEvoSuccess()`: 베이스 충격파 + 5음 하모닉 버스트 + 시머 레이어 +- `playSFX()` 라우팅: 'level-up', 'evo-success' → 전용 메서드 + +## 🧠 사용한 지식 (Knowledge Used) +- JavaScript TDZ (Temporal Dead Zone): `let ctx` + closure 패턴 +- Fisher-Yates 셔플 알고리즘 (결정론적 랜덤) +- Game Engine State-Driven Architecture (Pause Gate Pattern) +- React useRef 패턴 (closure staleness 방지) +- Web Audio API: OscillatorNode, BiquadFilterNode, GainNode 절차형 합성 +- TypeScript 인터페이스 확장 원칙 + +## ✅ 결과 (Result) +**TypeScript 타입 에러 0개** — `npx tsc --noEmit` 클린 통과 + +## 🔗 연결 지식 (Relevant Knowledge) +- E:\Wiki\2nd\10_Wiki\Topics\Game-Design (State Machine, Loop Design) +- E:\Wiki\2nd\10_Wiki\Topics\TypeScript-Patterns (Closure, TDZ, Ref Pattern) +- E:\Wiki\2nd\10_Wiki\Topics\Audio-Engineering (Procedural Sound Design) +- E:\Wiki\2nd\10_Wiki\Topics\Software-Architecture (Unidirectional Data Flow) diff --git a/10_Wiki/.obsidian/workspace.json b/10_Wiki/.obsidian/workspace.json index 5809d44f..6c72e2f5 100644 --- a/10_Wiki/.obsidian/workspace.json +++ b/10_Wiki/.obsidian/workspace.json @@ -178,37 +178,43 @@ }, "active": "ab02d962d4144213", "lastOpenFiles": [ - "Topics/AI/Indian-Innovation-Models.md", - "Topics/AI/Index-Fragmentation-Analysis.md", - "Topics/AI/In-Context-Learning.md", - "Topics/AI/Immersive-Sims-Deus-Ex-Thief.md", - "Topics/AI/Immersive-Sims-Deus-Ex-Dishonored.md", - "Topics/AI/Immersive-Sim-Design.md", - "Topics/AI/IEEE-P36521.md", - "Topics/AI/Hyperinflation-in-Closed-Loop-Systems.md", - "Topics/AI/High-Performance-Organizations.md", - "Topics/AI/High-Frequency-Trading-Models.md", - "Topics/AI/HHH.md", - "Topics/AI/Hebbian-Theory.md", - "Topics/AI/Health-Informatics.md", - "Topics/AI/HBO-Prestige-Television.md", - "Topics/AI/GRPO.md", - "Topics/AI/Growth-Mindset-Intervention.md", - "Topics/AI/Goal-Misgeneralization.md", - "Topics/AI/Geographic-Information-Systems.md", - "Topics/AI/Gamification-Theory.md", - "Topics/AI/Experience-Sampling-Method.md", - "Topics/AI/Expectation-Maximization.md", - "Topics/AI/Evolutionary-Algorithm-Design.md", - "Topics/AI/Eudaimonia-and-Well-being.md", - "Topics/AI/Etiology-of-Disease.md", - "Topics/AI/Ethnographic-Research.md", - "Topics/AI/Ethical-Decision-Making.md", + "Topics/Design & Experience/Behavior-Driven-Development (BDD).md", + "Topics/AI/Wicked-Problems.md", + "Topics/AI/What-is-AI.md", + "Topics/AI/Vocabulary-Expansion.md", + "Topics/AI/Visual-Effects-VFX.md", + "Topics/AI/Viral-Dynamics-and-Network-Effects.md", + "Topics/AI/Victimhood-Narratives.md", + "Topics/AI/Variational Autoencoders (VAE).md", + "Topics/AI/Universal-Grammar.md", + "Topics/AI/Universal Basic Income (UBI).md", + "Topics/AI/Task-Management.md", + "Topics/AI/Target-Function-Profiling.md", + "Topics/AI/TS-Declaration-Files.md", + "Topics/AI/TDD.md", + "Topics/AI/Systems-Thinking.md", + "Topics/AI/System-Theory.md", + "Topics/AI/Synthetic-Data.md", + "Topics/AI/Synthesized Intelligence.md", + "Topics/AI/Synergy.md", + "Topics/AI/Symmetry-and-Invariance.md", + "Topics/AI/Symbols.md", + "Topics/AI/Swarm Intelligence.md", + "Topics/AI/Sustainability.md", + "Topics/AI/Support.md", + "Topics/AI/Supply-Chain.md", + "Topics/AI/Supervised-Learning.md", + "Topics/Web & Performance", + "Topics/Systemic Modeling & Fun", + "Topics/System Design & Modeling", + "Topics/System Architecture & Simulation", + "Topics/System Architecture & Reliability", + "Topics/Software Reliability", + "Topics/Software Architecture", + "Topics/Sociology & Tech", + "Topics/Simulation & Math", + "Topics/Security & Reliability", "Topics/무제 1.canvas", - "2nd/무제.canvas", - "2nd/무제.base", - "2nd", - "10_Wiki/💡 Topics", - "10_Wiki" + "2nd/무제.canvas" ] } \ No newline at end of file diff --git a/10_Wiki/Topics/.obsidian/graph.json b/10_Wiki/Topics/.obsidian/graph.json index 502f8013..b1e92fe6 100644 --- a/10_Wiki/Topics/.obsidian/graph.json +++ b/10_Wiki/Topics/.obsidian/graph.json @@ -17,6 +17,6 @@ "repelStrength": 10, "linkStrength": 1, "linkDistance": 250, - "scale": 0.05932617187499923, + "scale": 0.015355906606692529, "close": true } \ No newline at end of file diff --git a/10_Wiki/Topics/Skybound/01_Core_Engine/Stat-Injection-and-Visual-Renderer-Pipeline.md b/10_Wiki/Topics/Skybound/01_Core_Engine/Stat-Injection-and-Visual-Renderer-Pipeline.md new file mode 100644 index 00000000..890ab8c6 --- /dev/null +++ b/10_Wiki/Topics/Skybound/01_Core_Engine/Stat-Injection-and-Visual-Renderer-Pipeline.md @@ -0,0 +1,33 @@ +# Stat Injection and Visual Renderer Pipeline + +Skybound 엔진은 데이터(Stats)와 로직(Systems), 그리고 표현(Renderer)을 분리하여 유연한 확장성을 제공하는 **Signal-Renderer Pattern**과 **Stat Injection Engine**을 핵심 아키텍처로 사용합니다. + +## 1. Stat Injection Engine (V12.0) +게임 엔진이 시작될 때나 장비를 교체할 때, 다양한 소스(기본치, 장비, 영구 업그레이드)의 데이터를 하나로 통합하여 `EffectiveStats` 객체를 생성하는 파이프라인입니다. + +- **Data Sources**: + - `BaseStats`: 기체별 고유 수치. + - `EquippedItems`: 인벤토리에서 장착한 모듈의 효과. + - `PermanentUpgrades`: 격납고에서 구매한 영구 강화 수치. +- **Processing**: `calculateEffectiveStats` 함수가 이 모든 소스를 결합하여 런타임에 즉시 사용 가능한 최종 스탯을 산출합니다. + +## 2. Signal-Renderer Pattern +시스템 로직이 직접 렌더링에 관여하지 않고, 시각적 상태(Signal)를 정의한 객체를 렌더러에 전달하여 화면을 구성하는 방식입니다. + +- **Example: Nova Burst Rendering**: + 1. `ModularWeaponSystem`에서 충격파 발생 시 `novaBurstRingEffect` 객체를 생성합니다. 이 객체에는 `isGuardian` (EVO 여부), `radius`, `opacity` 등의 데이터가 담깁니다. + 2. `GameRenderer`는 이 객체들을 순회하며 `isGuardian`이 `true`이면 황금색 팔레트를, `false`이면 기존 청록색 팔레트를 선택하여 렌더링합니다. +- **Benefits**: 로직 수정 없이 렌더러의 색상이나 이펙트 레이어만 교체하여 다양한 비주얼 변리에 대응할 수 있습니다. + +## 3. Visual Feedback Enhancements +- **Dynamic Color Branching**: 스킬의 상태(Normal vs EVO)에 따라 렌더링 파이프라인에서 색상 팔레트와 파티클 밀도를 동적으로 조절합니다. +- **Mid-Layer Rendering**: 단순한 원형 이펙트를 넘어, 3중 링 및 스파이크 레이어를 추가하여 시각적 타격감과 위용을 강화합니다. + +## 4. Implementation Details +- `src/features/game/utils/combatUtils.ts`: Stat Injection의 핵심 로직 구현. +- `src/features/game/systems/GameRenderer.ts`: Signal 객체를 해석하여 Canvas에 드로잉하는 로직 관리. +- `src/features/game/systems/ModularWeaponSystem.ts`: 렌더링용 Signal 객체 생성 및 상태 제어. + +--- +**Status**: Managed by Skybound Protocol +**Context**: Architecture / Graphics Engine / Stat Pipeline diff --git a/10_Wiki/Topics/Skybound/04_Mechanics_Progression/Meta-Progression-and-Economy-Systems.md b/10_Wiki/Topics/Skybound/04_Mechanics_Progression/Meta-Progression-and-Economy-Systems.md new file mode 100644 index 00000000..e2a6a098 --- /dev/null +++ b/10_Wiki/Topics/Skybound/04_Mechanics_Progression/Meta-Progression-and-Economy-Systems.md @@ -0,0 +1,30 @@ +# Meta-Progression and Economy Systems + +Skybound의 성장은 단일 세션의 전투를 넘어, 영구적인 능력치 강화와 이벤트 패스를 통한 보상 획득으로 이어지는 거시적 경제 순환 구조를 가집니다. + +## 1. Permanent Upgrades (Hangar) +유저는 획득한 골드를 소비하여 기체의 기본 수치를 영구적으로 강화할 수 있습니다. 이 수치는 모든 새로운 게임 세션 시작 시 `EffectiveStatCalculator`를 통해 기본 스탯에 합산됩니다. + +### 1.1 Upgrade Catalog +- **HP_MAX**: 최대 체력을 증가시킵니다. (레벨당 +1) +- **ATTACK**: 모든 무기의 기본 공격력을 증폭시킵니다. (레벨당 +5%) +- **SPEED**: 기체의 이동 속도를 향상시킵니다. (레벨당 +4%) +- **MAGNET**: 아이템 흡입 범위를 확장합니다. (기본 180px + 레벨당 30px) +- **GOLD_GAIN**: 세션 종료 후 획득하는 골드량을 추가로 보너스 적용합니다. (레벨당 +10%) + +## 2. Event Pass System +특정 미션이나 보스 처치 시 획득하는 **Event Points (EP)**를 통해 단계별 보상을 해제하는 시스템입니다. + +- **Point Acquisition**: + - 일반 보스 처치: 500 EP + - 미션 클리어: 1,000 EP +- **Premium Tier**: 유료 재화나 특정 업적을 통해 활성화되며, 더 희귀한 제작 재료나 독점 외형을 제공합니다. + +## 3. Implementation Details +- `src/features/game/utils/combatUtils.ts`: `calculateEffectiveStats` 함수에서 `permanentUpgrades` 데이터를 주입받아 최종 전투 스탯을 산출합니다. (Stat Injection Engine V12.0) +- `src/features/game/store/useGameStore.ts`: 유저의 영구 업그레이드 상태 및 이벤트 패스 진행도를 `localStorage`와 동기화하여 관리합니다. +- `src/features/game/ui/HangarOverlay.tsx`: 격납고 UI에서 업그레이드 구매 및 이벤트 패스 보상 수령 로직을 처리합니다. + +--- +**Status**: Managed by Skybound Protocol +**Context**: Economy / Meta-Progression / Stat Injection diff --git a/10_Wiki/Topics/Skybound/04_Mechanics_Progression/Modular-Weapon-Evolution-and-Skill-Trees.md b/10_Wiki/Topics/Skybound/04_Mechanics_Progression/Modular-Weapon-Evolution-and-Skill-Trees.md index 6fc13203..226e1257 100644 --- a/10_Wiki/Topics/Skybound/04_Mechanics_Progression/Modular-Weapon-Evolution-and-Skill-Trees.md +++ b/10_Wiki/Topics/Skybound/04_Mechanics_Progression/Modular-Weapon-Evolution-and-Skill-Trees.md @@ -3,31 +3,34 @@ Skybound의 무기 시스템은 단순한 수치 강화를 넘어, 모듈의 조합과 진화(Evolution)를 통해 기체의 특성을 정의합니다. `ModularWeaponSystem`은 이러한 무기 상태의 변화와 트리 형태의 진화 로직을 관리합니다. ## 1. Evolution Logic (진화 메커니즘) -무기는 특정 레벨에 도달하거나 보너스 아이템을 획득했을 때 **Evolution** 단계로 진입할 수 있습니다. +무기는 특정 레벨에 도달하거나 보너스 아이템을 획득했을 때 **Evolution** 단계로 진입할 수 있습니다. `evolutions.ts`의 `EVOLUTION_RECIPES` 테이블에 정의된 규칙에 따라 작동합니다. - **Prerequisite Check**: 진화를 위해서는 베이스 무기와 보조 모듈(Passive Module)의 조화가 필요합니다. +- **Dynamic Max Level**: 모든 무기가 Lv.5에서 진화하는 것은 아닙니다. `SKILL_MAX_LEVEL` 테이블을 통해 무기별 최적화된 진화 지점을 정의합니다. + - 예: `aoe_nova`는 Lv.3에서 즉시 `NOVA_GUARDIAN`으로 진화 가능. - **State Transition**: 진화 시 기존의 무기 발사 로직은 폐기되고, 완전히 새로운 `AttackPattern`으로 교체됩니다. - - 예: `Plasma Cannon` (기본) -> `Ion Railgun` (진화: 관통 및 폭발 속성 추가) ## 2. Core Skill Categories -### 2.1 Active Weapons +### 2.1 Active Weapons (Primary) 직접적인 공격을 담당하는 모듈로, `FireRate`, `Damage`, `Piercing` 속성을 가집니다. -- **Vortex Missile**: 가장 가까운 적을 추적하며 폭발 시 광역 데미지를 입힙니다. -- **Plasma Guard**: 기체 주변을 회전하며 근접한 적과 탄막을 방어합니다. +- **Gatling Gun**: 빠른 연사력의 기본 화기. +- **Missile Pod**: 적을 추적하는 호밍 미사일. +- **Nova Burst (aoe_nova)**: 기체 주변에 강력한 충격파를 발생시켜 적을 밀쳐내고 데미지를 입힙니다. (Max Lv.3) ### 2.2 Passive Modules (Stats/Utility) -Active Weapon의 성능을 간접적으로 강화하는 모듈입니다. -- **Cooling System**: 쿨타임(CD)을 감소시킵니다. -- **Expansion Logic**: 투사체의 크기 및 감지 범위를 증폭시킵니다. +Active Weapon의 성능을 간접적으로 강화하거나 진화의 트리거 역할을 수행합니다. +- **Energy Shield**: 기체 주변을 보호하는 플라즈마 배리어. (NOVA_GUARDIAN의 진화 재료) +- **Engine Overclock (speed_boost)**: 이동 속도를 증가시킵니다. -## 3. Tech Tree and Synergy -시스템은 상호 연관된 모듈 간의 **Synergy Effect**를 추적합니다. -- **Cross-Binding**: 특정 보조 모듈이 여러 Active Weapon에 동시에 영향을 미칠 수 있습니다. -- **Hidden Evolution**: 특정 조합(예: Shield + Energy Battery)이 완성될 경우, 일반 트리에서 볼 수 없는 'Hidden Tier' 무기가 개방됩니다. +### 2.3 Evolved Skills (EVO) +- **HYPER_SONIC_VULCAN**: Gatling Gun + Fire Rate. 관통 빔 공격. +- **DIMENSION_SLAYER**: Missile Pod + Magnet. 차원 붕괴 소용돌이 미사일. +- **NOVA_GUARDIAN**: Nova Burst + Energy Shield. 황금빛 충격파와 함께 발동 시 **1.5초 무적** 효과를 제공하는 공방 일체형 진화. ## 4. Implementation Details -- `src/features/game/systems/ModularWeaponSystem.ts`: 전체 업그레이드 로직 및 상태 관리. -- `src/features/game/data/weaponData.ts`: 무기 스펙 및 진화 조건 데이터 테이블. +- `src/features/game/systems/ProgressionSystem.ts`: 전체 업그레이드 로직 및 EVO 스탯 적용 (`applyEvoStats`). +- `src/features/game/config/evolutions.ts`: 무기 레지스트리 및 진화 레시피(`EVOLUTION_RECIPES`) 정의. +- `src/features/game/systems/ModularWeaponSystem.ts`: 진화된 무기의 실제 인게임 발사 패턴 및 로직 구현. --- **Status**: Managed by Skybound Protocol diff --git a/10_Wiki/Topics/Skybound/Skybound-Knowledge-Hub.md b/10_Wiki/Topics/Skybound/Skybound-Knowledge-Hub.md index 94538d4e..c50d832a 100644 --- a/10_Wiki/Topics/Skybound/Skybound-Knowledge-Hub.md +++ b/10_Wiki/Topics/Skybound/Skybound-Knowledge-Hub.md @@ -7,6 +7,7 @@ Skybound 프로젝트의 모든 시스템은 유기적으로 연결되어 있습 ## 🏷️ Keyword Cluster: #Core_Logic (엔진 및 인프라) 프로젝트의 뼈대와 런타임 제어 메커니즘입니다. - **Master Plan**: [[01_Core_Engine/Skybound-Modular-Game-Architecture|Modular Architecture]] +- **Data Flow**: [[01_Core_Engine/Stat-Injection-and-Visual-Renderer-Pipeline|Stat Injection & Renderer Pipeline]] - **Engine Loop**: [[01_Core_Engine/Game-Engine-Loop-and-System-Orchestration|Runtime Pipeline]] - **State Control**: [[01_Core_Engine/State-Machine-and-Phase-Transition-Events|Global State Machine]] - **Recent Reports**: @@ -23,12 +24,14 @@ Skybound 프로젝트의 모든 시스템은 유기적으로 연결되어 있습 ## 🏷️ Keyword Cluster: #Dopamine_UX (피드백 및 텐션) 유저가 느끼는 '재미'의 수치화 및 연출 기법입니다. - **Feedback**: [[05_Project_Issues/2026-04-21-UX-Dopamine-Feedback-Upgrade|Dopamine Feedback Engine]] +- **Visuals**: [[01_Core_Engine/Stat-Injection-and-Visual-Renderer-Pipeline|Dynamic Color & Renderer Signal]] - **Tension**: [[02_Combat_AI/Stage-Director-and-World-Tension-Scaling|World Tension Scaling]] - **Patterns**: [[03_Boss_Systems/Boss-Orchestration-and-Gimmick-Management|Telegraphing & Gimmicks]] ## 🏷️ Keyword Cluster: #Growth_Loop (성장 및 자원) 루프물로서의 지속 가능성을 담보하는 시스템입니다. - **Evolution**: [[04_Mechanics_Progression/Modular-Weapon-Evolution-and-Skill-Trees|Weapon Synergy & Evo-Tree]] +- **Economy**: [[04_Mechanics_Progression/Meta-Progression-and-Economy-Systems|Meta-Progression & Event Pass]] - **Crafting**: [[04_Mechanics_Progression/Equipment-Crafting-and-Synthesis-Engine|Equipment Crafting & Merge]] - **Logistics**: [[04_Mechanics_Progression/Tactical-Air-Drop-and-Supply-Logistics|Tactical Air-Drop & Supply]] - **Progression**: [[05_Project_Issues/2026-04-21-Implementation-and-Architecture-Report|Meta-Game Economy Section]] diff --git a/Agent/.gitignore b/Agent/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..3b2c323cdf15e475d5f2c12a66393b9d673d681a GIT binary patch literal 36 ocmezW&z-@OA%r2GA%G!>!5_%-XK)5$9|k>!T!s_|UIs1(0Hh)Y$p8QV literal 0 HcmV?d00001 diff --git a/Agent/GIT_PROTOCOL.md b/Agent/GIT_PROTOCOL.md new file mode 100644 index 00000000..31d1523c --- /dev/null +++ b/Agent/GIT_PROTOCOL.md @@ -0,0 +1,16 @@ +# 🚩 Agent Git Operation Mapping Protocol + +| 유저 명령어 | 실행 액션 | 대상 리모트/브랜치 | +| :--- | :--- | :--- | +| **"Agent 최신화해"** | `git pull origin ` | https://github.com/g1nations/TeamG1.git | +| **"Agent 커밋해"** | `git add .`
`git commit -m "Update Agent Systems"`
`git push origin ` | https://github.com/g1nations/TeamG1.git | + +## 🛠️ 세부 수칙 +1. **Target Directory**: `E:\Wiki\2nd\Agent` +2. **Git Address**: `https://github.com/g1nations/TeamG1.git` +3. **Auto-Pilot**: 해당 명령어가 입력되면 추가 질문 없이 즉시 실행 후 보고한다. +4. **Note**: `2nd` 프로젝트 하위에 있으나, 별도의 리모트 주소를 가진 독립 구역으로 취급한다. + +--- +**승인인**: AI 개발부장 코다리 🫡 +**일시**: 2026-04-22 diff --git a/GIT_PROTOCOL.md b/GIT_PROTOCOL.md new file mode 100644 index 00000000..d8029e60 --- /dev/null +++ b/GIT_PROTOCOL.md @@ -0,0 +1,15 @@ +# 🚩 Git Operation Mapping Protocol + +| 유저 명령어 | 실행 액션 | 대상 리모트/브랜치 | +| :--- | :--- | :--- | +| **"위키 최신화해줘"** | `git pull lm_sync ` | https://github.com/g1nations/2nd.git | +| **"커밋해"** | `git add .`
`git commit -m "Update Wiki"`
`git push lm_sync ` | https://github.com/g1nations/2nd.git | + +## 🛠️ 세부 수칙 +1. **Remote Target**: 모든 작업은 `lm_sync` (`https://github.com/g1nations/2nd.git`)를 기준으로 수행한다. +2. **Auto-Pilot**: 해당 명령어가 입력되면 추가 질문 없이 즉시 실행 후 보고한다. +3. **Conflict Management**: Pull 시 충돌 발생 시 즉시 작업을 중단하고 [코다리] 부장에게 보고하여 지시를 받는다. + +--- +**승인인**: AI 개발부장 코다리 🫡 +**일시**: 2026-04-22 diff --git a/WIKIFICATION_PROTOCOL.md b/WIKIFICATION_PROTOCOL.md new file mode 100644 index 00000000..1ba56637 --- /dev/null +++ b/WIKIFICATION_PROTOCOL.md @@ -0,0 +1,18 @@ +# 🚩 Wikification (위키화) 작전 지침 + +본 문서는 대표님의 명령에 따른 위키 문서 생성 및 데이터 정제 프로세스를 규정한다. + +## 🛠️ 위키화 프로세스 +1. **트리거**: "위키화해" 또는 "위키화 작업 진행해" +2. **데이터 소스 (Input)**: `E:\Wiki\2nd\00_Raw` 폴더의 모든 `.md` 파일 +3. **작성 규칙**: `p-reinforce` 스킬의 규칙을 준수하여 작성 +4. **출력 경로 (Output)**: `E:\Wiki\2nd\10_Wiki\Topics` 하위 관련 카테고리 +5. **사후 처리**: 위키 생성이 완료된 Raw 파일은 **영구 삭제**하여 중복 방지 + +## 📚 p-reinforce 작성 원칙 (준수 사항) +* *대표님께 상세 가이드 재확인 필요* (현재 본진에서 검색되지 않음) +* 일반적으로 지식의 고도화, 구조화, 연결성 강화를 목표로 한다. + +--- +**승인인**: AI 개발부장 코다리 🫡 +**일시**: 2026-04-22