Commit Graph
81 Commits
Author SHA1 Message Date
Hide_D cb7e9c832f feat: 타입 정의 개선 및 any 사용 제거 2026-01-05 17:19:32 +00:00
Hide_D f4bc8e42f3 resource 위치 변경 2026-01-05 16:12:55 +00:00
Hide_D 10e9c80eb4 fix: 버튼 클릭 이벤트 순서 수정 2026-01-05 16:09:19 +00:00
Hide_D 3b7f4b1434 Refactor scenario JSON files for improved readability and consistency
- Consolidated array elements in scenario_903.json, scenario_904.json, scenario_905.json, scenario_906.json, scenario_908.json, scenario_910.json, scenario_911.json, scenario_912.json, and scenario_913.json to single-line format for better clarity.
- Removed unnecessary line breaks and whitespace in availableGeneralCommand and events sections across multiple scenario files.
- Ensured consistent formatting of event definitions, particularly for destroy_nation and OpenNationBetting events.
2026-01-05 16:09:15 +00:00
Hide_D c965b1120f feat: eslint 적용 및 관련 코드 일괄 수정 2026-01-05 15:46:47 +00:00
Hide_D d8c1035041 refactor: GatewayPrisma 가져오기 방식 변경 2026-01-05 15:23:36 +00:00
Hide_D b1f2523fa3 feat: GamePrisma를 사용하여 데이터베이스 클라이언트 및 관련 타입 정의 업데이트 2026-01-05 15:13:59 +00:00
Hide_D c3b6833172 feat: 모든 패키지에서 타입 체크 명령어를 --noEmit에서 -b로 변경 및 @sammo-ts/game-api 의존성 추가 2026-01-05 15:07:14 +00:00
Hide_D 1861cbc9c6 feat: Zod를 사용한 월드 상태 구성 및 메타 타입 추가, 사용자 ID 처리 개선 2026-01-05 14:49:19 +00:00
Hide_D 3581477a42 feat: 타입스크립트 설정 및 Vite 구성 추가 2026-01-04 17:01:38 +00:00
Hide_D 0e06ae9c38 feat: 장수 관련 명령어 처리 및 설정 기능 추가 2026-01-04 16:51:58 +00:00
Hide_D ef2ced5f5e feat: 명령어 요청 ID 처리 개선 및 상태 응답 기능 업데이트 2026-01-04 16:18:52 +00:00
Hide_D 2753b85a26 feat: 턴 데몬 명령 처리 및 결과 응답 기능 추가 2026-01-04 16:05:22 +00:00
Hide_D b2a625d4e7 feat: 군대 관련 기능 추가 및 명령어 정의 업데이트 2026-01-04 13:54:30 +00:00
Hide_D 436a55297e feat: Add new strategic actions for nation turns
- Implemented '백성동원' (Mobilize People) action to enhance city defense and gain experience for generals.
- Added '수몰' (Flood) action to damage enemy city defenses and affect diplomatic relations.
- Created '이호경식' (Degrade Relations) action to manipulate diplomatic states between nations.
- Introduced '필사즉생' (Desperate Fight) action to boost training and atmosphere for generals in a nation.
- Developed '허보' (Deception) action to mislead enemy generals and alter their city assignments.
2026-01-04 06:38:20 +00:00
Hide_D c23b370f40 feat: migrate diplomacy logic to new module and update imports 2026-01-04 06:01:16 +00:00
Hide_D d7840a2681 Handle overlay diplomacy patches 2026-01-04 04:50:00 +00:00
Hide_D 94dec6c794 feat: replace custom clamp function with es-toolkit's clamp in multiple files 2026-01-03 16:47:45 +00:00
Hide_D eb4577a4c5 Refactor code structure for improved readability and maintainability 2026-01-03 16:43:14 +00:00
Hide_D aec43e67fa feat: add es-toolkit dependency to multiple package.json files 2026-01-03 16:40:15 +00:00
Hide_D 020028fc74 feat: add orchestrator admin action interval and integrate game engine dependency 2026-01-03 16:35:48 +00:00
Hide_D 822acebca0 feat: update gateway admin action consumer to handle applied actions and add reset functionality 2026-01-03 16:01:29 +00:00
Hide_D fbf5d68a6c feat: add admin action interval option and implement gateway admin action consumer 2026-01-03 15:55:28 +00:00
Hide_D 95f263785a feat: implement admin authentication context and update related procedures and tokens 2026-01-03 15:44:27 +00:00
Hide_D e5bd6d89ab feat: add admin user management features and update user repository methods
- Implemented updateRoles, updateSanctions, and deleteUser methods in both in-memory and PostgreSQL user repositories.
- Enhanced UserSanctions and UserServerRestriction interfaces to include additional properties.
- Added AdminView component for admin functionalities including user lookup, role management, sanctions application, and profile management.
- Integrated admin token handling in TRPC client for secure API requests.
- Updated routing to include admin dashboard and linked it in the default layout.
2026-01-03 15:28:51 +00:00
Hide_D a9609dcc19 feat: add database schema support for gateway and game profiles
- Introduced `dbSchema` configuration option in GatewayApiConfig and GatewayOrchestratorConfig.
- Implemented schema resolution logic in environment configuration functions.
- Updated context and orchestrator factory to use GatewayPrismaClient instead of PrismaClient.
- Refactored orchestrator server and profile repository to accommodate new database schema handling.
- Created separate Prisma schemas for game and gateway in the infra package.
- Enhanced Postgres connector to support schema overrides in database URLs.
- Updated documentation to reflect changes in database schema handling.
- Added new Prisma generation and database push scripts for game and gateway schemas.
2026-01-03 14:47:28 +00:00
Hide_D 67d995c65f feat: implement lobby functionality with user and server information retrieval 2026-01-03 13:35:16 +00:00
Hide_D 1988e180c5 feat: add profile status service and integrate it into the gateway API context and router 2026-01-03 10:30:59 +00:00
Hide_D 821e18cb53 feat: initialize gateway frontend with Vue 3, Vite, and Tailwind CSS
- Set up pnpm workspace with necessary dependencies including esbuild and vue-demi.
- Create initial HTML structure for the frontend application.
- Implement main App component with Vue Router integration.
- Add global styles using Tailwind CSS and custom theme variables.
- Define TypeScript environment for Vue components.
- Create a default layout component for consistent page structure.
- Set up Vue Router with a home view route.
- Implement authentication store using Pinia for user management.
- Create utility for tRPC client setup.
- Develop HomeView component with login functionality and server status placeholder.
- Configure TypeScript for Node with composite and strict options.
- Set up Vite configuration for Vue and Tailwind CSS integration.
2026-01-03 10:15:40 +00:00
Hide_D d1522ff450 feat(items): add new item modules and enhance item functionality
- Introduced various item modules including '흑색마', '사륜거', '단궁', '동호비궁', '도기', '변도론', '전론', and '환약'.
- Implemented stat item modules to enhance general and war action contexts.
- Added triggers for item healing and sniping actions during battles.
- Enhanced item management with new utility functions for inventory handling.
- Updated the item registry and loader to support new items and their functionalities.
- Improved the overall structure of item-related code for better maintainability and scalability.
2026-01-03 09:28:46 +00:00
Hide_D 4f90f50033 feat: Introduce action context builders for various turn actions
- Added `actionContextBuilder` to multiple turn action files to utilize the default action context builder.
- Implemented specific context builders for actions requiring additional context, such as war configurations, world summaries, and general statistics.
- Created new `actionContext.ts` and `actionContextHelpers.ts` files to define interfaces and helper functions for managing action contexts.
- Enhanced context handling for nation and general actions, ensuring proper data injection for turn execution.
2026-01-03 06:28:50 +00:00
Hide_D 11ffdfef0e feat: add state property to city and update related processing logic in battle simulation and world map 2026-01-02 21:13:37 +00:00
Hide_D edcfad4e40 feat: enhance action context with diplomacy and map handling, add constraints for crew and route validation 2026-01-02 19:52:17 +00:00
Hide_D ea2ef91b31 feat: enhance war action handling with new configurations and context management 2026-01-02 19:35:36 +00:00
Hide_D 10ff64946e feat: add non-aggression proposal and acceptance actions with constraints 2026-01-02 18:33:24 +00:00
Hide_D cb86a47f94 feat: implement diplomacy system with state management and processing logic 2026-01-02 17:48:44 +00:00
Hide_D f137c5be65 Refactor action effects to use direct state mutations and logging
- Removed the use of createGeneralPatchEffect and createLogEffect in various action definitions.
- Replaced effects with direct mutations of the state for general and city entities.
- Updated logging to use context.addLog for better clarity and consistency.
- Ensured that all actions now return an empty effects array after processing.
2026-01-02 10:25:33 +00:00
Hide_D bfbcb4472e feat: Implement general and nation turn commands with command specifications
- Added command specifications for various general turn commands including talent scouting, appointments, and military actions.
- Introduced command specifications for nation turn commands such as assignments and declarations of war.
- Created a command environment interface to encapsulate command-related parameters.
- Developed a command profile loader to manage default and custom command profiles.
- Established a reserved turn action context to facilitate command execution with necessary context data.
- Updated the default command profile JSON to include new commands and their configurations.
2026-01-01 15:17:30 +00:00
Hide_D 49942cea5e feat: Add WallRepairActionDefinition and enhance GatewayProfileClient for improved database interactions 2026-01-01 11:53:21 +00:00
Hide_D cce57d0fea feat: Add new general actions and constraints for game mechanics
- Introduced new general turn commands: 'che_거병', 'che_임관', 'che_건국', 'che_훈련', 'che_사기진작', 'che_요양', 'che_출병', 'che_주민선정', 'che_농지개간', 'che_기술연구', 'che_치안강화', 'che_수비강화', 'che_성벽보수'.
- Implemented action definitions for each new command, including constraints and resolution logic.
- Added new constraints: 'beNeutral', 'remainCityCapacityByMax', 'existsDestNation'.
- Enhanced city development actions for '농지개간', '성벽보수', and '수비강화'.
- Created a new action for declaring war: 'che_선전포고' with appropriate constraints.
- Updated existing action definitions to accommodate new game mechanics and ensure proper functionality.
2026-01-01 11:49:15 +00:00
Hide_D 8c9f61700e feat: Enhance Gateway Orchestrator with preopen and open scheduling, add error handling for paused states, and implement new profile management features 2026-01-01 11:27:10 +00:00
Hide_D e64962c3fd feat: Add Git workspace management for build profiles and implement workspace cleanup 2026-01-01 10:55:07 +00:00
Hide_D b46249dcbc feat: Implement admin router and orchestrator for managing profiles and builds
- Added `adminRouter` for handling profile management, including listing, upserting, and updating statuses.
- Introduced `BuildRunner` interface and `PnpmBuildRunner` class for executing build commands.
- Created `GatewayOrchestrator` to manage profile states, reconcile processes, and handle build queues.
- Implemented `Pm2ProcessManager` for managing processes using PM2.
- Developed `GatewayProfileRepository` for interacting with the database to manage profiles.
- Added utility functions for resolving workspace roots and managing process definitions.
- Included tests for profile reconciliation logic.
2026-01-01 10:38:28 +00:00
Hide_D cc78319948 feat: refactor database client types and update related logic across game engine modules 2025-12-30 12:40:55 +00:00
Hide_D 4de688d642 feat(battle-sim): add battle simulation scripts and refactor schemas 2025-12-30 11:27:37 +00:00
Hide_D 56e662a7db feat(battle-sim): implement battle simulation logic and metrics tracking
- Added WarBattleMetrics interface to track attacker and defender skills during battles.
- Enhanced WarUnit class with method to log activated skills.
- Introduced environment setup for battle simulation, including unit set loading and configuration resolution.
- Developed in-memory and Redis transport layers for handling battle simulation requests and results.
- Created types and interfaces for battle simulation payloads and responses.
- Implemented battle simulation processing logic, including logging and skill tracking.
- Added tests for battle simulation processor to ensure functionality and correctness.
2025-12-30 11:17:28 +00:00
Hide_D d599d94a7b feat: add atmos property to General entity and update related logic
- Added `atmos` property to the `General` interface in `entities.ts`.
- Initialized `atmos` to 0 in the `buildGeneralSeeds` function in `bootstrap.ts`.
- Updated exports in `index.ts` to include `unitSet.js`.
- Introduced new types for crew types and their requirements in `types.ts`.
- Implemented `unitSetLoader.ts` for loading unit set definitions from JSON files.
- Created `che_징병.ts` action for recruiting crew types with cost and training calculations.
- Developed `unitSet.ts` for handling crew type availability and requirements.
- Added tests for crew type availability and unit set parsing in `crewType.test.ts`.
2025-12-30 09:45:51 +00:00
Hide_D e3bbbd3718 feat: refactor DatabaseClient interface and add db module 2025-12-30 08:38:45 +00:00
Hide_D c5cba31418 feat: add siegetank unit set and implement messaging system
- Created a new unit set for "siegetank" with various crew types and their attributes.
- Implemented a messaging system with types, payloads, and storage functionality.
- Added tests for the messaging system to ensure correct behavior for different message types (private, national, public, diplomacy).
2025-12-30 08:19:10 +00:00
Hide_D 519a0a76cb feat: add troop model and integrate troop handling in game logic 2025-12-30 05:41:16 +00:00