Jacob Schmidt 5b30efa3b0
All checks were successful
Build / Build (push) Successful in 26s
feat: Refactor database system for improved persistence and functionality
This commit refactors the database system to improve persistence, functionality, and code clarity. The key changes include:

-   **Removed direct store access:** Removed `createStore`, `getFromStore`, and `getStore` PREP macros.
-   **Centralized store management:** Introduced a central store registry (`FORGE_STORE_REG`) managed by the database interface.
-   **Namespace-based persistence:** Stores are now persisted in mission and profile namespaces instead of a global store.
-   **Simplified load/save functions:** `loadFromMission`, `loadFromProfile`, `saveToMission`, `saveToProfile`, and `saveToTemp` functions are updated to use the new namespace-based persistence. They now accept a `keyField` parameter for retrieving specific fields within a key's data.
-   **Refactored `processDBRequest`:** Updated to handle new request types and parameters, aligning with the refactored load/save functions.
-   **Improved error handling:** Added more robust error handling and logging, including checks for empty store names and missing keys.
-   **Removed client registration:** Removed client registration and cleanup logic as it's no longer needed with the new persistence model.
-   **Updated `verifyDB`:** Simplified to directly return the store registry.
-   **Updated `initDB`:** Refactored to use a HashMap object for the store interface and added more database functions.
-   **Added .gitignore entries:** Added entries for Visual Studio and other common build artifacts.
-   **Updated `loadGameState` and `saveGameState`:** Updated to support loading and saving game state to either mission or profile namespace.
2025-04-05 14:16:35 -05:00
2025-01-04 19:25:56 -06:00
2025-01-04 19:25:56 -06:00
2025-01-01 14:30:34 -06:00
2025-01-01 14:30:34 -06:00
2025-01-01 14:30:34 -06:00
2025-01-01 14:30:34 -06:00
2025-01-01 14:30:34 -06:00
2025-01-01 14:30:34 -06:00
2025-01-01 14:30:34 -06:00
2025-01-01 14:30:34 -06:00
2025-01-01 14:30:34 -06:00

latest-release open-issues build-status

Arma 3 FORGE Server: Power Your Persistent World
Version: Alpha 0.1.0

[Development Status: Active]


Drive the backbone of your military operations with Arma 3 FORGE Server, the robust server framework that enables persistent worlds and complex organizational management. Built for performance, scalability, and reliability.

Key Features:

  • Persistent Framework: Track and maintain player progression, organizational developments, and world states across sessions
  • Performance Optimized: Built from the ground up for military-scale operations with minimal performance impact
  • Advanced Data Management: High-performance DragonflyDB caching layer with MongoDB for robust data persistence
  • Security Focused: Comprehensive anti-cheat measures and data validation systems protect your persistent world
  • Scalable Architecture: Handles everything from small unit operations to full-scale warfare with multiple organizations
  • Real-time Analytics: Monitor server performance, track player activities, and analyze operational data
  • Automated Management: Scheduled maintenance, backup systems, and administrative tools streamline operations
  • API Integration: Connect external services and expand functionality through documented API endpoints

Perfect for:

  • Community server operators
  • Persistent campaign hosts
  • Competition organizers
  • Large-scale operation managers

Coming Features:

  • Enhanced Analytics Dashboard
  • Extended API Capabilities
  • Advanced Mission Framework
  • Cross-Server Communications

Technical Specifications:

  • Database Stack:
    • DragonflyDB - High-performance caching layer
    • MongoDB - Persistent data storage
  • Minimum Requirements:
    • CPU: 4 cores
    • RAM: 8GB
    • Storage: 10GB SSD
  • Recommended Requirements:
    • CPU: 8 cores
    • RAM: 16GB
    • Storage: 20GB SSD

Support & Development

  • 24/7 Technical Support
  • Regular Performance Updates
  • Community Feature Requests
  • Detailed Documentation

License:

This mod is licensed under the Arma Public License (APL-SA).

Power your persistent world with FORGE Server.

Description
FORGE Server
Readme 805 KiB
2025-05-11 01:21:05 -05:00
Languages
Pawn 53.8%
C++ 25.3%
SQF 17.3%
C 1.9%
Python 1.1%
Other 0.6%