Commit Graph
68 Commits
Author SHA1 Message Date
Leonid Pershin dc9830f332 Merge branch 'phase/37-school-rules' 2026-08-20 06:23:35 +03:00
Leonid Pershin bb2031317d Mark phase 37 complete. 2026-08-20 06:20:36 +03:00
Leonid Pershin 11f48b6c99 Update phase documentation with new tasks and enhancements
ci / server (push) Failing after 1m34s
ci / client (push) Successful in 16s
- Added a link to phase 31 in the talk circles documentation.
- Expanded task list in phase 42 to include new topics and conditions for interactions.
- Updated phase 43 to reflect changes in student-teacher dynamics and opinion shifts.
- Enhanced phase 44 with new rules for quarrels and fights, including the role of bystanders and apologies.
- Revised phase 46 to clarify the impact of weekend events on student opinions and relationships.
- Updated README to reflect the latest changes in phases 42, 43, and 44.

These updates improve clarity and detail in the phase documentation, ensuring better understanding of interactions and dynamics.
2026-08-20 06:07:42 +03:00
Leonid Pershin 5a400be792 Add SwarmUI settings management and portrait generation enhancements
- Introduced new API endpoints for managing SwarmUI settings, including fetching and saving presets and age rules.
- Updated the portrait generation logic to utilize the new settings structure, allowing for dynamic preset selection based on age.
- Enhanced UI components to support SwarmUI settings, including localization for new strings and improved styling for settings sections.
- Added tests to verify the functionality of new settings endpoints and portrait generation behavior.

This commit lays the groundwork for more flexible and user-friendly portrait generation options.
2026-08-20 06:06:45 +03:00
Leonid Pershin e0b7122f3b Mark phase 37 as in progress. 2026-08-20 06:00:24 +03:00
Leonid PershinandCursor b5ea9f4667 Mark phase 36 complete in phases README.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 05:45:05 +03:00
Leonid Pershin a214378c6e Merge branch 'phase/35-appropriateness'
ci / server (push) Failing after 3m44s
ci / client (push) Failing after 14s
# Conflicts:
#	docs/phases/README.md
2026-08-20 05:19:33 +03:00
Leonid Pershin feda98d555 Mark phase 35 complete. 2026-08-20 05:17:23 +03:00
Leonid Pershin 9225327d31 Enhance SwarmUI settings by adding a scheduler property and updating the client to send clip stop at layer instead of clip skip. Added tests to verify the new behavior.
ci / server (push) Failing after 3m41s
ci / client (push) Failing after 14s
2026-08-20 05:02:44 +03:00
Leonid Pershin f603cdd9a9 Mark phase 35 as in progress. 2026-08-20 04:51:13 +03:00
Leonid Pershin ea18d6bcb0 Mark phase 33 complete. 2026-08-20 04:46:20 +03:00
Leonid Pershin 5a431bba99 Merge branch 'main' into phase/32-weather-warmth
Co-authored-by: Cursor <cursoragent@cursor.com>

# Conflicts:
#	src/HSchool.Simulation/School.cs
2026-08-20 04:03:42 +03:00
Leonid PershinandCursor 02d11cdbbb Mark phase 32 as done.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 04:01:22 +03:00
Leonid PershinandCursor 871178909e Merge phase 34 wear and home.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 03:52:48 +03:00
Leonid PershinandCursor 84da00f1e8 Mark phase 34 as done.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 03:49:38 +03:00
Leonid PershinandCursor 3a77a8f985 Mark phase 36 as in progress.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 03:43:20 +03:00
Leonid PershinandCursor 69106cb48b Mark phase 34 as in progress.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 03:33:10 +03:00
Leonid PershinandCursor af90bb9f9d Merge phase 31 dress generator.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 03:27:06 +03:00
Leonid PershinandCursor e0a349d7cc Mark phase 31 as done.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 03:25:35 +03:00
Leonid PershinandCursor eb7e8b5b99 Mark phase 32 as in progress.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 03:06:26 +03:00
Leonid PershinandCursor d8f4958167 Merge phase 29 country.
ci / server (push) Failing after 3m53s
ci / client (push) Successful in 19s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 02:59:46 +03:00
Leonid PershinandCursor 13d3353609 Mark phase 29 as done.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 02:55:57 +03:00
Leonid PershinandCursor cf086600c3 Merge phase 30 apparel defs.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 02:54:21 +03:00
Leonid PershinandCursor 2b9bb23f9f Mark phase 30 as done.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 02:48:17 +03:00
Leonid PershinandCursor 2833a09799 Mark phase 29 as in progress.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 02:38:46 +03:00
Leonid Pershin 450495f666 Update design documentation for inventory and climate phases, clarify staffing test results, and add new presence test for hiring and assigning a teacher during lessons.
ci / server (push) Failing after 3m41s
ci / client (push) Successful in 16s
2026-08-20 02:34:16 +03:00
Leonid PershinandCursor 418a4eaec2 Merge phase 23 example pack.
ci / server (push) Failing after 3m32s
ci / client (push) Failing after 12s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 01:12:47 +03:00
Leonid PershinandCursor 7744436a2f Merge phase 28 screen tests.
ci / server (push) Failing after 3m39s
ci / client (push) Failing after 14s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 01:08:32 +03:00
Leonid PershinandCursor 5985c56b38 Mark phase 23 as done.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 01:06:48 +03:00
Leonid PershinandCursor 4460780c7f Mark phase 28 as done.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 01:06:24 +03:00
Leonid PershinandCursor 2419f454cb Mark phase 28 as in progress.
ci / server (push) Failing after 3m39s
ci / client (push) Failing after 11s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 00:53:37 +03:00
Leonid PershinandCursor 65e5b0ae41 Mark phase 23 as in progress.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 00:51:50 +03:00
Leonid PershinandCursor edd3d35c79 Merge phase 26 school seed.
ci / server (push) Failing after 3m34s
ci / client (push) Failing after 12s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 00:43:33 +03:00
Leonid Pershin 7a59ef27f4 Merge phase 24 behavior numbers.
ci / server (push) Failing after 3m35s
ci / client (push) Successful in 13s
Co-authored-by: Cursor <cursoragent@cursor.com>

# Conflicts:
#	docs/phases/README.md
#	src/HSchool.Content/CatalogLoader.cs
2026-08-20 00:36:32 +03:00
Leonid PershinandCursor 2b4cd29bda Merge phase 27 save format and dump.
ci / server (push) Failing after 3m34s
ci / client (push) Successful in 13s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 00:34:54 +03:00
Leonid PershinandCursor 40c450af40 Merge phase 22 pack identity.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 00:32:39 +03:00
Leonid PershinandCursor 764433f94a Mark phase 27 as done.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 00:31:08 +03:00
Leonid PershinandCursor 267ecb1225 Mark phase 26 as done.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 00:29:19 +03:00
Leonid PershinandCursor f245076be8 Mark phase 24 as done.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 00:28:31 +03:00
Leonid PershinandCursor 5d447c44b5 Mark phase 22 as done.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 00:22:30 +03:00
Leonid PershinandCursor 6fdb66bba6 Mark phase 27 as in progress.
ci / server (push) Failing after 3m38s
ci / client (push) Successful in 14s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 00:01:05 +03:00
Leonid PershinandCursor 0ae633995f Mark phase 26 as in progress.
ci / client (push) Successful in 14s
ci / server (push) Failing after 4m17s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-19 23:59:57 +03:00
Leonid PershinandCursor 0c3eb219c8 Mark phase 24 as in progress.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-19 23:57:59 +03:00
Leonid PershinandCursor fcbc5bb22c Mark phase 22 as in progress.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-19 23:55:53 +03:00
Leonid Pershin e5a0ae5b9d Enhance staffing management with uncovered teacher tracking
ci / server (push) Failing after 3m43s
ci / client (push) Successful in 14s
- Updated `protocol.md` to clarify the concept of uncovered subjects and the number of additional teachers required.
- Introduced `teachersShort` property in the `StaffingSubject` interface to indicate how many more teachers are needed for a subject.
- Enhanced localization strings to reflect the new uncovered teacher information in both English and Russian.
- Updated the management panel UI to display the number of teachers short for each uncovered subject.
- Revised the `Uncovered` method in the staffing logic to return detailed information about uncovered subjects, including the shortfall of teachers.
- Added tests to validate the new uncovered teacher tracking functionality and ensure accurate reporting in the staffing API.
- Marked related tasks as complete in the documentation for the golden fixtures phase.
2026-08-19 23:53:37 +03:00
Leonid Pershin c27d43f66a Add foundational phase documentation for mod development
ci / server (push) Failing after 3m39s
ci / client (push) Successful in 14s
2026-08-19 23:35:30 +03:00
Leonid Pershin 5cd5a6d258 Update decision-making phase and enhance localization for presence tracking
ci / server (push) Failing after 3m40s
ci / client (push) Successful in 14s
- Marked tasks as complete in the decision-making phase documentation, indicating readiness for implementation.
- Updated the README to reflect the completion status of the decision-making phase.
- Enhanced localization strings to include new presence tracking features, improving user experience.
- Revised the game screen logic to display real-time presence status, including walking states for individuals.
- Added tests to validate the new localization strings and presence functionalities, ensuring robust performance.
2026-08-19 21:00:12 +03:00
Leonid Pershin b135a9caad Enhance protocol and simulation features with activity tracking and behavior definitions
- Updated protocol documentation to include new `activity` and `activityLabel` fields in the person card response, reflecting real-time activity status.
- Introduced `BehaviorDef` to define behavior rules, including need thresholds and lesson skill gains, enhancing AI decision-making.
- Revised the `DefCatalog` to incorporate behavior definitions and updated validation logic to ensure proper behavior handling.
- Enhanced the simulation to manage presence and activity states, allowing for more dynamic interactions within the school environment.
- Updated tests to validate the new activity tracking and behavior functionalities, ensuring robust performance and reliability.
- Improved localization strings to support new activity and behavior features, enhancing user experience.
2026-08-19 19:49:44 +03:00
Leonid Pershin 3c54f981b7 Update wire protocol to version 7 and enhance presence management features
ci / server (push) Failing after 3m44s
ci / client (push) Successful in 15s
- Bumped the wire protocol version to 7, reflecting significant changes in the communication structure.
- Introduced a new presence message type for real-time occupancy updates, including node activity and individual presence states.
- Updated the API to include a directory endpoint for fetching short id→name mappings, improving client-side name resolution.
- Revised the map snapshot structure to be static, with people and current lessons now handled through the presence stream.
- Enhanced client-side handling of presence updates, including UI adjustments to display live occupancy and activity.
- Updated documentation to reflect the new protocol features and changes in presence management.
- Added tests to validate the new presence functionalities and ensure robust handling of real-time data.
2026-08-19 17:00:53 +03:00
Leonid Pershin 4137400621 Enhance AI and simulation components with presence management and routing capabilities
ci / server (push) Failing after 3m39s
ci / client (push) Successful in 14s
- Introduced the `HSchool.Ai` project, responsible for routing, day plans, and presence management.
- Updated the `HSchool.Simulation` project to integrate with the new AI functionalities, improving decision-making and presence tracking.
- Added `travelMinutes` to room and territory definitions, ensuring accurate movement calculations within the simulation.
- Enhanced the `School` class to manage presence and implement empty-time skipping functionality.
- Updated documentation to reflect the new AI features and their impact on school simulation.
- Added tests for presence management and routing to ensure robust functionality and reliability.
2026-08-19 16:33:52 +03:00