Commit Graph

121 Commits

Author SHA1 Message Date
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)
2ac474fe0c Refactor relationship type retrieval in user character workers: Simplify the extraction of relationship types in UserCharacterWorker, CharacterCreationWorker, and EventsWorker by replacing and_then with map for improved readability and consistency. 2026-01-23 10:52:59 +01:00
Torsten Schulz (local)
c8668c59eb Refactor relationship type retrieval in character workers: Simplify the extraction of relationship types in CharacterCreationWorker, EventsWorker, and UserCharacterWorker by streamlining the use of and_then for better readability and maintainability. 2026-01-23 10:48:15 +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)
70d8e53216 Add new random events in EventsWorker: Introduce 'character_rest' and 'character_healer' events to enhance gameplay dynamics. Each event includes unique probabilities, descriptions, and health effects, enriching the personal event experience for characters. 2026-01-21 11:26:23 +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)
fc1b0c2259 Refactor personal event handling in EventsWorker: Introduce a new CharacterInfo struct to encapsulate character details extracted from event effects. Streamline the application of personal effects by consolidating logic into a single method, improving clarity and maintainability. Enhance notification creation by directly incorporating character information, ensuring accurate event communication. 2026-01-15 13:33:39 +01:00
Torsten Schulz (local)
63a89588ac Refactor event notification handling in EventsWorker: Simplify notification creation by removing unnecessary value object and directly incorporating character information into the notification JSON. Add early exit for events with no effects, improving clarity and efficiency in event processing. 2026-01-15 13:27:30 +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)
e1e4c08d38 Improve logging in WebSocket server: Enhance connection acceptance and WebSocket handshake messages for better clarity. Update error messages for connection failures and refine logging for TLS and non-TLS connections, ensuring comprehensive diagnostics and user awareness. 2026-01-12 16:54:08 +01:00
Torsten Schulz (local)
1505d3d004 Refactor production initiation logic in DirectorWorker: Update the create_single_production method to return the produced quantity, enhancing the loop's decision-making process. Improve error handling and logging for production failures, ensuring better capacity management and preventing race conditions during production checks. 2026-01-12 16:52:18 +01:00
Torsten Schulz (local)
40df17ee91 Enhance logging in WebSocket server: Add detailed logging for TLS initialization, TCP connection acceptance, and WebSocket handshake processes. Improve error messages to provide clearer feedback on potential issues, enhancing overall server diagnostics and user awareness. 2026-01-12 16:46:30 +01:00
Torsten Schulz (local)
5f55aeea99 Refactor money change action string in EventsWorker: Simplify the action string for money history by differentiating between positive and negative changes. Remove unnecessary parameters from the function signature to enhance clarity and maintainability. 2026-01-12 16:38:38 +01:00
Torsten Schulz (local)
408221ffb4 Refactor notification structure in EventsWorker: Simplify the JSON notification format by separating the value object and ensuring it only contains relevant data without translations. Update action string for money changes to include specific event titles, enhancing clarity for frontend access. 2026-01-12 16:35:47 +01:00
Torsten Schulz (local)
5475ae24f6 Refactor production calculation in DirectorWorker: Update the logic for determining the number of items to produce, ensuring it adheres to capacity constraints and maximum production limits. Add safety checks and logging for potential errors in production calculations, enhancing reliability and debugging capabilities. 2026-01-12 14:01:18 +01:00
Torsten Schulz (local)
b858f5c385 Adjust event probabilities in EventsWorker: Reduce the occurrence rates of various random events to 25% of their original values for better game balance. Update character health change effects to limit maximum health reduction based on user feedback. Enhance notification structure to include money change details for improved frontend access. 2026-01-09 09:30:59 +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)
282f6542fe event adjusted for epidemic 2026-01-07 11:15:20 +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)
b7eafe28a1 Enhance TLS key handling in WebSocket server: Add support for SEC1 (EC PRIVATE KEY) in key loading process, improving flexibility for private key formats. Update error messages for clarity on key requirements. Include warning for clients when SSL is enabled but TLS is not active, ensuring proper connection protocols are used. 2026-01-05 16:10:10 +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)
da30ab0b15 Enhance character health change handling in EventsWorker: Update health change functions to return character death status, allowing for better tracking of character deaths. Implement logging of character deaths in both individual and regional health change scenarios, improving event processing and state management. 2025-12-23 14:20:41 +01:00
Torsten Schulz (local)
ade3bff5cf Refactor revenue and tax calculations in DirectorWorker: Update pricing logic to compute revenue based on piece price and quantity, adjust profit calculations, and implement optional treasury user ID from environment variables for tax handling. This enhances accuracy in financial computations and improves code clarity. 2025-12-23 12:16:58 +01:00
Torsten Schulz (local)
431a6aff08 Implement heartbeat logging in EventsWorker: Add periodic logging to monitor the worker's activity and event triggering status. Introduce Mutex for thread-safe access to heartbeat timestamps, enhancing visibility into the worker's operational state. 2025-12-23 10:56:14 +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)
6d12c70d84 Entferne Info-Logs aus den Worker-Klassen: Reduziere die Protokollierung in ProduceWorker, DirectorWorker und TransportWorker, um die Ausgabe zu optimieren und nur Fehler zu protokollieren. 2025-12-16 12:58:37 +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
Torsten Schulz (local)
2aa4e7c666 Füge VSCode-Build-Tasks hinzu: Erstelle Aufgaben für den Build-Prozess und Clippy-Überprüfungen. 2025-12-13 23:40:20 +01:00
Torsten Schulz (local)
ce06b1a4f0 Verbessere SQL-Abfragen im Produktionsworker: Optimiere die Abfrage für abgeschlossene Produktionen und verbessere die Lesbarkeit der Preisberechnung. 2025-12-13 12:17:00 +01:00