Commit Graph
109 Commits
Author SHA1 Message Date
Hide_D 07ea17dacf feat: refactor utility functions for improved consistency and usability; consolidate parsing logic 2026-01-17 12:36:58 +00:00
Hide_D 7a289c22d9 buildMinConstraints 구현 2026-01-15 17:29:26 +00:00
Hide_D 4a0b18954d Refactor command specifications to use availabilityArgs instead of args
- Updated multiple command specifications across various files to replace 'args' with 'availabilityArgs' for better clarity and consistency in argument handling.
- Removed empty 'args' objects in several command specifications to streamline the code.
- Ensured that all relevant commands in both general and nation action directories reflect these changes.
2026-01-15 16:43:24 +00:00
Hide_D a7b22f0502 커맨드의 arg 타입에 zod 강제. 2026-01-15 16:34:18 +00:00
Hide_D 39e7eddcf7 미구현 커맨드 추가 2026-01-15 15:56:24 +00:00
Hide_D 237e7e73cc feat: add Zod schema validation for command arguments in various action modules
- Introduced `argsSchema` property in `TurnCommandSpecBase` to enforce argument validation using Zod.
- Refactored argument parsing in multiple action modules (e.g., `che_NPC능동`, `che_강행`, `che_건국`, etc.) to utilize Zod schemas for improved type safety and validation.
- Removed redundant manual checks for argument types and replaced them with Zod's validation mechanisms.
- Enhanced code maintainability and readability by centralizing argument validation logic.
2026-01-15 15:27:20 +00:00
Hide_D f12d3cf4fe zod arg parse 작업 진행 2026-01-15 15:01:58 +00:00
Hide_D 24fbace987 lint 로직 변경 2026-01-15 14:58:44 +00:00
Hide_D cc41d1538e 코드 수정 2026-01-11 11:48:12 +00:00
Hide_D 511aade81c 구현 2026-01-11 10:35:12 +00:00
Hide_D 373ddd863d 코드 2026-01-11 10:05:42 +00:00
Hide_D dc0b9271fb 코드 이식 2026-01-11 09:49:22 +00:00
Hide_D 6497b09b9d 사령턴 추가 2026-01-11 03:26:14 +00:00
Hide_D baa913a09c 사령턴 추가 구현 2026-01-10 14:49:39 +00:00
Hide_D d5d3949705 예턴을 통한 테스트 수정 2026-01-08 16:43:50 +00:00
Hide_D 77185f1d49 건국 커맨드 구현 및 테스트 추가 2026-01-08 16:21:15 +00:00
Hide_D e91fe06762 커맨드 엔진 실행에서 alternative 추가 2026-01-08 14:39:45 +00:00
Hide_D bc9c0fd717 misc 2026-01-08 14:19:13 +00:00
Hide_D 50dfed9adf 건국 관련 추가 구현 2026-01-08 14:16:34 +00:00
Hide_D 3e649f75fa 커맨드 보정 2026-01-08 13:59:59 +00:00
Hide_D 44df19b079 refactor: improve war module type safety and reserved turns test data handling 2026-01-05 17:34:36 +00:00
Hide_D cb7e9c832f feat: 타입 정의 개선 및 any 사용 제거 2026-01-05 17:19:32 +00:00
Hide_D 41339176ee feat: add new war traits for various unit types
- Implemented '궁병' trait with bonuses for archer units, including reduced recruitment costs and increased evasion.
- Added '기병' trait providing cavalry units with damage bonuses and reduced recruitment costs.
- Introduced '돌격' trait enhancing attack phases and damage against equal or weaker unit types.
- Created '무쌍' trait that increases damage and reduces damage taken based on the number of victories.
- Developed '반계' trait to reduce enemy strategy success rates and reflect damage back.
- Added '보병' trait with reduced recruitment costs and damage penalties for allies during attacks.
- Implemented '신산' trait enhancing magic success rates for various strategies.
- Created '신중' trait guaranteeing strategy success.
- Added '위압' trait to activate pressure effects on the first phase of battle.
- Implemented '저격' trait allowing for a chance to activate a sniping effect against new opponents.
- Developed '집중' trait to increase damage on successful strategies.
- Created '척사' trait providing damage bonuses against regional and city units while reducing ally damage.
- Implemented '필살' trait enhancing critical hit chances and disabling enemy evasion on critical hits.
- Added '환술' trait to boost magic success rates and damage on successful magic attacks.
2026-01-05 16:43:28 +00:00
Hide_D c965b1120f feat: eslint 적용 및 관련 코드 일괄 수정 2026-01-05 15:46:47 +00:00
Hide_D 1861cbc9c6 feat: Zod를 사용한 월드 상태 구성 및 메타 타입 추가, 사용자 ID 처리 개선 2026-01-05 14:49:19 +00:00
Hide_D b2a625d4e7 feat: 군대 관련 기능 추가 및 명령어 정의 업데이트 2026-01-04 13:54:30 +00:00
Hide_D 4fe4af868a feat: 추가된 전투 및 내정 특기 초기화, 단련, 숙련 전환 및 관광 명령 2026-01-04 06:58:43 +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 94dec6c794 feat: replace custom clamp function with es-toolkit's clamp in multiple files 2026-01-03 16:47:45 +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 e10bcba49b Refactor import paths to use absolute paths from '@sammo-ts/logic' for consistency and clarity across the codebase. This includes updates to various modules related to actions, triggers, constraints, and world management, ensuring that all imports are correctly pointing to the new structure. 2026-01-03 08:08:33 +00:00
Hide_D 64953e39a5 feat: add special action modules for domestic and war triggers
- Implemented '발명' and '인덕' domestic special action modules with modifiers for technology research and population management.
- Added '의술' and '징병' war special action modules to enhance healing and recruitment capabilities during battles.
- Created a general trigger for city healing in '의술' and integrated it with the war action pipeline.
- Developed a comprehensive registry and loader for special action modules to streamline their usage in the game logic.
- Enhanced test coverage for special action modules, ensuring correct application of modifiers and trigger functionalities.
2026-01-03 08:01:04 +00:00
Hide_D eb361e1bed feat: add caching mechanism to GeneralTurnCommandLoader and NationTurnCommandLoader for improved performance 2026-01-03 07:02:55 +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 b628b32968 feat: add non-aggression cancel actions and related diplomacy constraints 2026-01-03 06:09:10 +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 fba363c6ce feat: add command module and update action resolvers with GeneralActionResolver implementation 2026-01-02 19:08:11 +00:00
Hide_D f58b8b2553 feat: remove VolunteerRecruit module and related imports 2026-01-02 18:35:58 +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 18247eeff4 feat: add immer dependency and integrate draft handling in engine actions 2026-01-02 09:38:05 +00:00
Hide_D 6d421e81a0 feat: Refactor General and Nation Turn Command types and importers for improved structure and consistency 2026-01-01 19:12:50 +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 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 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 648d186428 refactor: simplify imports for game session token and turn command modules 2025-12-30 04:54:39 +00:00
Hide_D a650fc2daa feat: add JosaUtil for Korean grammatical handling in 의병모집 and 인재탐색 actions 2025-12-30 00:11:25 +00:00
Hide_D 30de11797b feat: update typecheck script for incremental compilation and add JosaUtil for Korean postposition handling 2025-12-29 12:50:45 +00:00