Commit Graph
155 Commits
Author SHA1 Message Date
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 PershinandCursor 3485ce8ac4 Close phase 36 apparel-changed log tail.
Add simulation and paged day-log tests; mark the log task complete in the phase doc.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 05:44:09 +03:00
Leonid Pershin 3fa6ce95df Implement portrait prompt API and UI enhancements. Added a new endpoint to fetch portrait prompts, updated the client to handle prompt display, and improved localization for prompt-related text. Enhanced styling for prompt elements in the UI.
ci / server (push) Failing after 3m40s
ci / client (push) Failing after 15s
2026-08-20 05:27:01 +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 6a0d5a9886 Implement phase 35 dress appropriateness and school rules.
Adds outfit evaluation, morning home dressing, locker-room ChangeClothes with day-log events, PE/weather AI goals, dress-rules API, and tests.
2026-08-20 05:16:52 +03:00
Leonid Pershin ac0470bbc4 Implement custom portrait generation: update API, UI, and localization to support user-defined prompts for portraits, replacing half-body option with custom variant.
ci / server (push) Failing after 3m38s
ci / client (push) Failing after 14s
2026-08-20 05:16:40 +03:00
Leonid Pershin df0aaad403 Add half-body portrait support: update API, UI, and localization for new portrait type
ci / server (push) Failing after 3m40s
ci / client (push) Failing after 14s
2026-08-20 05:10:51 +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 ce772cd3c3 Phase 33: technician climate control and locker assignment. 2026-08-20 04:44:41 +03:00
Leonid Pershin ee23fb4994 Merge branch 'phase/36-person-card-tabs'
ci / server (push) Failing after 4m1s
ci / client (push) Failing after 17s
2026-08-20 04:35:35 +03:00
Leonid Pershin 5991dcd5c4 Enhance SwarmUI integration by adding swarm connection status to the API and updating client-side components to reflect this status. Improved localization strings for various SwarmUI states and refactored ApplicantsDialog and PersonCard components to utilize the new connection information, ensuring a more responsive user experience.
ci / server (push) Failing after 4m56s
ci / client (push) Failing after 15s
2026-08-20 04:21:35 +03:00
Leonid Pershin 47241a5bd4 Merge branch 'phase/32-weather-warmth' 2026-08-20 04:18:49 +03:00
Leonid Pershin dfa9a25dca Implement portrait generation and retrieval for people in the school system. Added new API endpoints for generating and fetching portraits, including support for avatar and full-body images. Updated the client-side to handle portrait states and display options. Enhanced the person card UI to include tabs for overview and portrait, with appropriate localization strings. Updated solution files to include new test projects. Adjusted server configuration for SwarmUI integration.
ci / server (push) Failing after 3m46s
ci / client (push) Failing after 14s
2026-08-20 04:14:41 +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 53c4ae0f92 Sum warmth insulation from worn items and refresh goldens for the new trait pool.
HeatLoving and ColdLoving shift later trait rolls; worn clothes now feed PersonInsulation instead of reflection.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 04:00:53 +03:00
Leonid PershinandCursor 6be4fa75ab Split the person card into overview, clothes, carry and now tabs.
Today's history is a paged HTTP log on the worker, not on the card or in people.json.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 04:00:38 +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 Pershin 34acec16c2 Merge branch 'main' into phase/32-weather-warmth 2026-08-20 03:50:04 +03:00
Leonid PershinandCursor 8e7ab46e79 Sample outdoor weather from the climate preset so people can freeze and the clock can show it.
Protocol v8 adds tenths of a °C and precipitation to the clock frame; warmth drains from insulation versus place temperature.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 03:49:40 +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 1ba739dd9b Wear worn clothes on campus and replace rags at the work morning.
Condition drops from catalog hours only while the person is at school; skip through the night issues the same fresh set as a lived night so the school does not walk in in rags.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 03:49:11 +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 37501c506a Dress people at generation from a separate apparel stream.
Wardrobes live on the person in people.json: everyday layers, textbooks per parallel, and chance-based bags from catalog data. Hauling and the carry cap are defs, not constants. The golden roster gains an items column; later family members shift because Hauling consumes extra appearance rolls. Old saves without items are dressed on load.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 03:24:54 +03:00
Leonid Pershin d68a91da4d Update design documentation for phases 2 and 1, clarifying canceled features and their implications. Documented changes in behavior regarding scheduling, lessons, and hiring processes, along with references to related files. Enhanced the reviewed phase details, confirming the integrity of phases 0-4 and adding new tests for catalog and map functionalities.
ci / server (push) Failing after 3m58s
ci / client (push) Successful in 16s
2026-08-20 03:08:05 +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 Pershin ed80aa5d08 Update AGENTS.md to correct the behavior of presence frames during school pauses, clarify the design documentation regarding mod load order, and add a new test for uncovered teaching positions in the management panel. Enhance reviewed phase details for accuracy and completeness.
ci / server (push) Failing after 3m48s
ci / client (push) Successful in 42s
2026-08-20 02:57:13 +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 1b66c89cd7 Replace selectable name sets with a country that owns names and climate presets.
Create picks a country; climate is rolled from the school seed and stored. Old Slavic saves lift as Russia.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 02:55:13 +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 Pershin cbe739a4e6 Update reviewed phase details, enhance presence tests for hiring and assigning teachers during lessons, and fix timetable handling in the School class. Added new tests for presence management and ensured proper campus staffing behavior during lesson transitions.
ci / server (push) Failing after 4m0s
ci / client (push) Successful in 17s
2026-08-20 02:47:24 +03:00
Leonid PershinandCursor abcf67eaab Let the catalog describe clothes and carryables on ThingDef without dressing anyone.
Empty layers keep furniture on the map; a known layer set and ColorDef palette reject unknown ids at load.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 02:47:23 +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 Pershin bdb1253fdb Fix duplicate field in School interface and update event panel description in design documentation. Adjusted reviewed phase details for clarity and accuracy.
ci / server (push) Failing after 3m42s
ci / client (push) Successful in 18s
2026-08-20 01:58:37 +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 505b1429ab Ship a disk example pack so last-wins, patches and create-with-a-mod are tested for real.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 01:06:12 +03:00