Commit Graph

104 Commits

Author SHA1 Message Date
Torsten Schulz (local)
9d7f61a329 Enhance church office management in Falukant daemon: Introduced falukantUpdateChurch event for church applications and appointments, updated SQL queries for church office processing, and refactored the PoliticsWorker to streamline daily tasks related to church offices. Improved handling of church application scoring and interim appointments, enhancing overall church dynamics and character interactions. 2026-03-23 11:02:19 +01:00
Torsten Schulz (local)
708ffc3eda Refactor Falukant daemon logic for time-based processing: Updated the handling of monthly servant costs and lover installments to align with the new game time model, introducing a unified "Monatstick" concept for cost calculations. Enhanced SQL queries and worker logic to ensure accurate processing every 2 hours, improving financial interactions and family dynamics. 2026-03-23 10:11:49 +01:00
Torsten Schulz (local)
c82fbc0f7c Implement lover installment logic in FalukantFamilyWorker: Added support for processing lover maintenance payments every 2 hours, including new SQL queries for installment tracking and updates to relationship states. Enhanced WebSocket events to notify UI of installment changes, improving family dynamics and financial interactions. 2026-03-23 10:01:34 +01:00
Torsten Schulz (local)
fe0361971d Enhance Falukant family and production dynamics: Updated FalukantFamilyWorker to include public stability and household tension calculations, integrating new SQL queries for managing marriage states and household attributes. Added FalukantCertificateWorker for production certificate management, enhancing overall family interaction and production tracking. 2026-03-23 09:02:51 +01:00
Torsten Schulz (local)
d921dc2f7e Integrate servant management into Falukant family dynamics: Added support for servant-related logic in FalukantFamilyWorker, including daily and monthly processing of servant data. Updated SQL queries to handle servant attributes and integrated servant discretion modifiers into relationship calculations, enhancing family interaction and satisfaction tracking. 2026-03-22 10:09:26 +01:00
Torsten Schulz (local)
4086e9a207 Refactor pregnancy handling in UserCharacterWorker: Changed the pregnancy check from a daily to an hourly basis, updating the associated method and SQL query to reflect this new frequency. This adjustment improves the accuracy of pregnancy probability calculations and aligns with the updated family dynamics logic. 2026-03-22 09:43:36 +01:00
Torsten Schulz (local)
ac5ec3a245 Enhance Falukant family dynamics: Updated the FalukantFamilyWorker to incorporate marriage buffs and detailed age rules for relationships. Added new WebSocket events for real-time updates and expanded SQL queries to support marriage state and buff management, improving overall family interaction and satisfaction tracking. 2026-03-20 11:02:28 +01:00
Torsten Schulz (local)
6a5ff4557e Add FalukantFamilyWorker and related SQL queries: Introduced the FalukantFamilyWorker to manage family-related logic, including marriage satisfaction and relationship states. Added new SQL queries for handling lover relationships and marriage updates, enhancing the overall functionality of family dynamics in the application. 2026-03-20 10:26:15 +01:00
Torsten Schulz (local)
f9c80bbd6b Enhance pregnancy candidate query: Refactored SQL query to calculate pregnancy probabilities based on mother's age, utilizing a common table expression (CTE) for improved clarity and maintainability. The new logic replaces the previous average age calculation with a more detailed age-based probability assessment, ensuring accurate filtering of candidates. 2026-03-19 09:13:36 +01:00
Torsten Schulz (local)
5d0dd41c3f Refactor event handling for character death: Updated the EventsWorker to ensure only player characters are notified of sudden child deaths, while NPCs are excluded. Adjusted health update logic to prevent player characters from reaching zero health due to accidents or illnesses. Enhanced SQL queries to filter characters based on user ID, improving clarity and functionality. 2026-03-02 00:36:21 +01:00
Torsten Schulz (local)
69dad6854a Enhance money change functionality in EventsWorker: Updated the MoneyChange event effect to include an optional minimum absolute positive value, ensuring that money changes do not result in zero for positive adjustments. Introduced a new SQL query for inserting money history, improving reliability in tracking monetary changes for users. 2026-02-06 07:40:25 +01:00
Torsten Schulz (local)
4baf88b0cf Enhance SQL query for character region filtering: Updated the query to use a recursive common table expression (CTE) for retrieving region IDs, allowing for more comprehensive region hierarchy handling. This change improves the accuracy of character selection based on regional relationships while maintaining existing filtering criteria. 2026-02-05 23:59:20 +01:00
Torsten Schulz (local)
d94fa791b3 Add child relation deletion by parent query: Introduced a new SQL query to delete child relations where the character is either a father or mother. Updated relevant workers to execute this query before deleting child relations, ensuring proper cleanup of relationships during character deletion. 2026-02-04 14:46:57 +01:00
Torsten Schulz (local)
2293c1204b Add SQL query for product price history: Introduced a new query to insert regional product prices into the history table, calculating prices based on sell cost and worth percentage. Updated ValueRecalculationWorker to log current prices for affected regions, enhancing price tracking functionality. 2026-02-04 09:10:31 +01:00
Torsten Schulz (local)
85b4c73c11 Update user money handling to prevent serialization errors: Adjusted the SQL query to cast money as numeric and modified the UserCharacterWorker to clamp and format the money value before executing the update. This change ensures valid numeric input and enhances error handling for user transactions. 2026-02-02 15:29:53 +01:00
Torsten Schulz (local)
658a9034ed Add SQL query to count children by user: Introduced a new query to count distinct children associated with a user across all their characters. Updated UserCharacterWorker to utilize this new query, replacing the previous count query. This enhances user-specific data retrieval capabilities. 2026-02-02 15:25:13 +01:00
Torsten Schulz (local)
2f875d6c1c Refactor SQL query for finished productions: Update to use DISTINCT ON for unique production IDs, change JOINs to LEFT JOINs for character and director relationships, and simplify capacity checks to ensure sufficient storage for productions. Adjust ordering for improved query performance. 2026-02-02 15:04:56 +01:00
Torsten Schulz (local)
340c658ad1 Implement character death handling and periodic checks: Add logic to process characters with health <= 0 in EventsWorker and UserCharacterWorker, including immediate death handling during health updates and a scheduled death check every 12 hours. Introduce a new SQL query to retrieve characters with zero health. 2026-02-02 08:05:12 +01:00
Torsten Schulz (local)
9f1c54fde9 automatic apply on church jobs 2026-01-29 11:20:45 +01:00
Torsten Schulz (local)
45287837bc Enhance house creation logging in HouseWorker: Add detailed logging for the number of new buyable houses created and errors encountered during the process. Update SQL query to increase the randomness threshold for house selection, improving the variety of houses retrieved. 2026-01-29 08:18:56 +01:00
Torsten Schulz (local)
31998e310c Implement capacity check in ProduceWorker: Add a method to verify available storage before processing finished productions, ensuring that production only occurs if sufficient capacity is present. Update SQL query to reflect the new capacity validation logic for improved reliability in production handling. 2026-01-29 08:10:38 +01:00
Torsten Schulz (local)
05e6155e38 Enhance capacity management in DirectorWorker: Retrieve current capacity values directly from the database to prevent race conditions, calculate free capacity based on real-time data, and ensure production only occurs if sufficient storage is available. Update SQL query to check for adequate storage before returning production results. 2026-01-28 16:36:30 +01:00
Torsten Schulz (local)
4b4d84b15c Implement overproduction notification handling in ProduceWorker: Add logic to check for existing notifications and update them if necessary, or create a new notification if none exist. Introduce SQL queries for finding and updating overproduction notifications to enhance database interactions. 2026-01-28 15:06:48 +01:00
Torsten Schulz (local)
1d9a7ba8a0 Refactor product cost retrieval in DirectorWorker: Simplify the SQL query by removing the original_sell_cost from the selection, and adjust the cost resolution logic to improve clarity and efficiency in database interactions. 2026-01-28 14:41:27 +01:00
Torsten Schulz (local)
c9e0781b61 Update dependencies and enhance WebSocket server logging: Add 'chrono' and 'android_system_properties' to Cargo.lock, improve error handling and logging in websocket_server.rs, and streamline character creation notifications in worker modules for better clarity and maintainability. 2026-01-28 14:21:28 +01:00
Torsten Schulz (local)
0399333163 Enhance relationship deletion logging across workers: Implement detailed logging for the number of deleted relationships in CharacterCreationWorker, EventsWorker, and UserCharacterWorker, improving traceability and user awareness during character interactions. 2026-01-23 10:46:32 +01:00
Torsten Schulz (local)
7305a71438 Enhance relationship deletion process in character management: Implement detailed logging for deleted relationships, including related user and character IDs, and relationship types. Introduce special notifications for engaged relationships to improve user awareness during character events. 2026-01-22 09:35:21 +01:00
Torsten Schulz (local)
0083d7be23 Add daily cleanup of old notifications in EventsWorker: Implement a new method to delete notifications older than 30 days, enhancing database management and reducing clutter. Update run loop to trigger this cleanup daily, ensuring timely maintenance of notification records. 2026-01-15 13:45:31 +01:00
Torsten Schulz (local)
f32c4b1456 Add sleep management for productions in ProduceWorker: Implement logic to set productions to sleep when storage capacity is insufficient. Introduce methods for processing and retrieving sleep productions, enhancing inventory management and production flow control. 2026-01-14 15:26:15 +01:00
Torsten Schulz (local)
f133f3999e Update SQL query to exclude characters without associated user IDs: Modify the QUERY_GET_REGION_CHARACTERS to ensure only characters with a valid user_id are selected, enhancing data integrity and relevance in region-specific character retrieval. 2026-01-14 10:28:13 +01:00
Torsten Schulz (local)
01d45d5f65 Enhance character event notifications in EventsWorker: Update character health change and death handling to include first and last names in notifications. Modify SQL queries to retrieve character names, ensuring accurate user feedback. Refactor notification structure for better organization and clarity. 2026-01-07 11:33:23 +01:00
Torsten Schulz (local)
f96e474f32 Add random heir fallback logic in EventsWorker: Implement a new SQL query to select a random NPC heir from the same region when no children are available. Enhance error handling to log cases where no heir is found, ensuring better user feedback and maintaining character associations. Update UserCharacterWorker to utilize this new logic for heir assignment. 2026-01-07 10:14:24 +01:00
Torsten Schulz (local)
604c8ba300 Add character user clearing logic in EventsWorker: Implement a new SQL query to clear the user association from a deceased character before assigning a new heir. This ensures compliance with unique constraints and prevents errors during user reassignment. Enhance error handling and logging for better debugging. 2026-01-05 15:46:54 +01:00
Torsten Schulz (local)
e2630eb32a Add heartbeat and null production start fix in ProduceWorker: Implement periodic logging to monitor worker activity and add functionality to update productions with null start timestamps. Enhance SQL queries for better data integrity and debugging capabilities. 2026-01-05 15:30:39 +01:00
Torsten Schulz (local)
108ac6c82b Refactor QUERY_GET_BEST_PRODUCTION SQL query in Worker: Improve readability and maintainability by restructuring the query with clearer aliases and consistent use of COALESCE. Enhance join conditions and ensure proper handling of character health, resulting in more accurate production worth calculations. 2026-01-05 11:44:44 +01:00
Torsten Schulz (local)
713504d3ab Refactor DirectorWorker SQL queries: Remove unused QUERY_GET_DIRECTOR_USER and update vehicle count retrieval to use consistent column names. This improves code clarity and maintains consistency in data handling. 2026-01-05 11:32:56 +01:00
Torsten Schulz (local)
1e4689212b Add cleanup functionality for collapsed houses in HouseWorker: Implement methods to delete collapsed buyable houses and user houses, including notifications for affected users. Update SQL queries to support this new feature, enhancing house management and user experience. 2025-12-23 14:35:51 +01:00
Torsten Schulz (local)
08563c956c Add vehicle repair automation in DirectorWorker: Implement functionality to automatically repair vehicles based on their condition and region. Update SQL queries to support vehicle selection and repair operations, enhancing the Director's capabilities in managing vehicle maintenance. 2025-12-22 15:07:02 +01:00
Torsten Schulz (local)
fce7400303 Refactor notification handling in Workers: Centralize notification insertion and frontend updates by replacing direct SQL queries with dedicated functions. This improves code maintainability and reduces redundancy across character creation, events, and transport processing. 2025-12-22 13:58:17 +01:00
Torsten Schulz (local)
a82d554494 Enhance SQL query in Worker to include character reputation: Add COALESCE for reputation in the vote count query and adjust the GROUP BY and ORDER BY clauses to incorporate reputation, improving data accuracy in election results. 2025-12-20 23:06:51 +01:00
Torsten Schulz (local)
833202344b Refactor SQL query in Worker to improve distance calculations: Replace the existing LEFT JOIN with a LATERAL join to enhance the selection of region distances based on transport mode, ensuring more accurate results. Update polling frequency in TransportWorker from once per second to once per minute for better resource management. 2025-12-20 22:20:29 +01:00
Torsten Schulz (local)
cd1b33a474 Update SQL query in Worker to exclude vehicles involved in transport: Modify the vehicle selection query to filter out vehicles that have been used in transport, enhancing data accuracy and integrity. 2025-12-20 21:20:05 +01:00
Torsten Schulz (local)
1719af2344 Refactor revenue and tax calculations in DirectorWorker: Adjust the pricing logic to account for cumulative tax inflation, ensuring accurate revenue and payout calculations. Update SQL query for sell logs to change conflict resolution order for better data integrity. 2025-12-20 15:20:03 +01:00
Torsten Schulz (local)
398e0ba677 Enhance SQL insert query for sell logs and improve error logging in TransportWorker: Add sell_timestamp to the insert statement and refine error messages to include transport details for better debugging. 2025-12-20 14:20:09 +01:00
Torsten Schulz (local)
4fca4b4d75 Enhance SQL queries and logging in TransportWorker and WeatherWorker: Update weather assignment logic to ensure unique weather types per region, improve distance calculations in transport queries, and refine logging for transport processing. Additionally, adjust notification insert queries to include character_id. 2025-12-20 11:17:32 +01:00
Torsten Schulz (local)
f7710b64c9 Refactor WeatherWorker SQL query: Replace the existing weather update logic with a new query that assigns random weather types to each region, ensuring individual updates. Clean up logging messages for clarity. 2025-12-18 15:34:16 +01:00
Torsten Schulz (local)
d2e253b79a Füge erweiterte SQL-Abfragen und Logging in ProduceWorker hinzu: Implementiere Update- und Insert-Logik für das Inventar und verbessere die Fehlerausgaben. 2025-12-16 10:52:06 +01:00
Torsten Schulz (local)
74fee2d4c9 Verbessere Fehlerbehandlung in SQL-Abfragen: Füge detaillierte Fehlermeldungen für Vorbereitungs- und Ausführungsfehler in den Director- und Politics-Workern hinzu. 2025-12-16 08:52:08 +01:00
Torsten Schulz (local)
b45990c1b6 Aktualisiere Benachrichtigungsabfragen: Ersetze character_id durch user_id in den Benachrichtigungs-INSERT-Abfragen und optimiere die Abfragen zur Auswahl des Benutzers. 2025-12-16 08:24:46 +01:00
Torsten Schulz (local)
ae90166adb Aktualisiere Benachrichtigungsabfragen: Ersetze user_id durch character_id und optimiere die Abfragen zur Auswahl des Charakters. 2025-12-15 21:20:30 +01:00