Releases: MasterLaplace/Flakkari
Releases · MasterLaplace/Flakkari
Flakkari v0.5.0
0.5.0 (2024-11-29)
Features
- add 3D components (BoxCollider, Control, Movable, RigidBody, SphereCollider, Transform) for 3D entities (461fad0)
- add 3D components to manage collisions and movements (f5963cf)
- add 3D components to the EntityFactory and loadComponents (da2bfc7)
- add application icon support for Windows, macOS, and Unix (4043ba5)
- add apply_movable function to update positions of 3D entities based on velocity (9e4995c)
- add binary file types for icon management (a7a53f7)
- add collision handling static functions for bullets and entities, including box and sphere collision detection (7362910)
- add collision management between entities with velocity reflection (986bd67)
- add commands management to version 1 of the protocol (7f02e7c)
- add common components for entity management in Flakkari4Unity (013ab35)
- add conditional version bumping based on pull request labels and remove Flakkari in submodule (732ede8)
- add content property to Template struct and update constructors and assignment operator (44b3410)
- add event management for version 1 of the protocol (8885243)
- add Factory class for entity creation from templates (74d6b22)
- add header management for protocol version 1 (e4c2561)
- add installation of game directory and improve CPack configuration; refactor Vector rotation constant to be const (d052842)
- add method to include 3D components of an entity in a packet (b4eb1a1)
- add minimum and maximum speed properties to Movable and RigidBody components, and adjust the Weapon structure to manage minimum and maximum damage (d23dc05)
- add NetworkClient class for UDP communication and entity management (3e8f7e7)
- add random position spawning for enemies in the ECS (b7d5413)
- add README.md for Flakkari4Unity package with usage examples and documentation (7da7db0)
- add spawn_random_within_skybox function to spawn entities randomly within the skybox (603193f)
- add system execution in game update loop for improved scene management (109be24)
- add the clear() method to reset the entity and component registry (e001351)
- add the client API for the Flakkari v1 protocol (b593f10)
- add the Components3D.hpp header file to the project (5a9280b)
- add the Entity class to manage the creation and updating of common and 3D components (ec49f6e)
- add the sendAllEntitiesToPlayer method to send all entities to a player (c2a7766)
- add the Synchronizer class to manage the addition, deletion and retrieval of entities (fb2a93c)
- add Timer component for ECS entities and update includes (6f0bf1b)
- add version 1 component IDs and string conversion method (67349e3)
- add workflow to update logo based on seasonal events and trigger Doxygen page deployment (078f749)
- delete the BoxCollider and SphereCollider classes; clean up the code and remove deserialization (7378944)
- handle empty packets in UDPServer to prevent processing errors (aecd893)
- implement collision handling for entities, including player, enemy, and bullet interactions (7a49da9)
- implement equality operator and hash function for Entity, update type definitions and header structure for improved clarity and consistency (c90df9f)
- implement Flakkari Protocol v1 for Unity (61d176f)
- refactor addCommonsToPacketByEntity to include additional components and improve packet serialization (094f5b4)
- refactor deserialization to use uint instead of ulong for length; improve data handling in multiple components (c28fee1)
- refactor event handling logic to improve movement and look controls, separating move event processing into a dedicated function (7cf56e7)
- refactor game loader methods for improved clarity and consistency in parameter naming and functionality (34e4754)
- refactor game management logic, update includes, and add isClientWaiting method for improved client handling (56cafd7)
- refactor Player class for improved network handling; update input methods and streamline event processing (5ec4e6a)
- refactor RES_CONNECT and REQ_DISCONNECT message handling; improve collider component initialization and update event IDs (d6a2189)
- remove master and main branch references from workflow configuration files (87bed8c)
- rename API.cs to Runtime and remove ReqDisconnect method; add package.json for project metadata (086cfca)
- rename packet queue methods for clarity and add separate send queue handling in Client class (525f6f9)
- reorganise component and event identifiers for greater clarity and consistency (498a279)
- simplify client management logic and improve packet handling for player connections and removals (7461a56)
- temporary shutdown the workflows (448368b)
- update build configuration for Release mode and enhance README with correct download links; add Dockerfile for containerization (0873f45)
- update CMake configuration and README for package naming conventions on Windows, macOS, and Linux (c4c2a95)
- update create_release workflow for building and uploading package artifacts (3f0939c)
- update protocol versioning ...
Flakkari v0.4.0
0.4.0 (2024-11-11)
Features
- add API version support in Client and Game classes (9b131b5)
- add compile-time configuration parameters file for Flakkari (5aa0585)
- add Singleton dependency and update compiler options (276786b)
- enhance GitHub workflows with build provenance and linter permissions; add Dependabot configuration (7026c57)
- implement heartbeat response handling in Game class (b373a95)
- refactor ResourceManager to implement Singleton pattern and update scene management methods (90eb2bb)
Bug Fixes
- content length calculation in Packet class (0964b4b)
- initialize addrinfo structure and update socket event handling for improved stability (a30e17d)
- update Doxygen configuration for improved styling and milestone handling (ea1bb21)
- update Doxygen documentation generation to use Doxyfile.cfg (f44970e)
- update release workflow to use test tag version and increment minor version to 3 in config.h.in (7fb1424)
Styles
- adjust clang-format settings and improve code readability in UDPServer class (a51fe57)
- apply linter (571959c)
- apply linter (14f9c87)
- apply linter (bbcd3dc)
- apply linter (7a5d15b)
- apply linter (deaaf67)
- apply linter (9718db5)
- apply linter (273bc8c)
- apply linter (c643f76)
- apply linter (d13481e)
Code Refactoring
- consolidate build checker workflows into a single file for Windows, Ubuntu, and MacOS (72016b6)
- GameManager to implement Singleton pattern and streamline game management methods (f370cf7)
- implement assignment operators for various component structs (6e2c1d6)
- optimize packet handling and improve client management methods (9c88934)
- remove unused id handling from Address class (4fef4cf)
- replace fatal log with exceptions for error handling and simplify Client destructor (a5c911a)
- replace PACKED macros with LPL_PACKED macros for better struct packing (c2a70c3)
- update build checker and release workflows for clarity and efficiency (acf040d)
- update Client and ClientManager methods for consistent reference passing and improved return types (c521655)
- update ClientManager to use Singleton pattern and improve instance management (71ae985)
- update creation dates in header files to 2024 (1936628)
- update event handling to use size_t and unsigned short for better type safety (8224c8f)
- update Socket and UDPServer constructors to improve parameter handling and enforce game directory requirement (8d0c2bd)
- update WSA class to improve socket handling and error management (b993a1c)
What's Changed
- Include Singleton library by @MasterLaplace in #39
- Fix Create Release and Deploy Page by @MasterLaplace in #41
- Fix bug failed to connect by @MasterLaplace in #43
- Fix to get a constant connection using the protocol by @MasterLaplace in #45
Full Changelog: v0.3.0...v0.4.0
Flakkari v0.3.0
0.3.0 (2024-11-07)
Features
- Client: Add packet history and warning count to Client class (6f61517)
- Common: Add Evolve component to ECS (5ce90dd)
- Common: Add Id.hpp to Engine/EntityComponentSystem/Components/Common directory (8b00eeb)
- Common: Update Id and add Template component (bcf0da4)
- Components: Add Control component for 2D entities (c0504f7)
- Components: Add new components: NetworkEvent, Collider, and Spawned (d045fe3)
- ECS: Add EntityFactory class to create entities from templates (03d12ee)
- Flakkari: Add game name to Client constructor and handle event from player (3e127c1)
- Flakkari: Add mutexes to classes that require thread safety (0d35d93)
- Flakkari: Update network and protocol components (a4750e8)
- Game: Add new functions to Game class and update PacketFactory (e1e47d3)
- Game: Add ResourceManager class for loading and storing resources (3a078e2)
- Internals: Update network address handling and password retrieval (a9d8ef7)
- Network: Add getId() method to Address class and use it in Client class (7e571c3)
- Network: Add getIp() method to Address class (c9bf9d4)
- Network: Add packed.hpp for network structs (d983ae7)
- Network: Add PacketQueue class for storing incoming packets (1fc84c9)
- Protocol: Add CommandId to_string function and injectComponent method (5cc41ee)
- Protocol: Add Commands enum class for Flakkari Protocol (ccf73cf)
- Protocol: Add Components enum class for Flakkari Protocol (b1e0373)
- Protocol: Add Events.hpp to Flakkari/Protocol directory (9c2c0b8)
- Protocol: Add new components and update player spawning logic (16b17c3)
- Protocol: Add PacketFactory class for creating packets from entities (dd34779)
- Protocol: Add Serializer class for object serialization and deserialization (6c7a003)
- workflows: Add build checker workflows for MacOS and Ubuntu (2e5eb29)
- add a .clang-format configuration file for C++ formatting (9b5a497)
- add GitHub Actions workflow to bump patch version and create release (3b789be)
- add workflow to bump minor version and create release; refactor patch release workflow (715e4cc)
Bug Fixes
- Components: Refactor component constructors and add new component (adc8d93)
- Components: Remove RigidBody component from Components2D.hpp (1b43dbc)
- Flakkari: game directory setted by FLAKKARY_GAME_DIR env var (0415a41)
- Game: Add network IP and template components to player entity (3d329a7)
- Game: Fix loading scene in Game constructor (d264a2a)
- Logger: Fix time handling and remove unnecessary preprocessor directives (4d5146b)
- Logger: Refactor Logger.cpp and Packed.hpp (4aa1a60)
- Logger: Update Logger.hpp to other platform than linux and Windows (a256940)
- Network: Fix conditional compilation issue in Address.hpp and CommandManager.cpp (d889885)
- Network: Fix conditional statements in Address.hpp and CommandManager.cpp (059d494)
- Network: Fix out_of_range exception in Buffer::extractData() (bab0ddb)
- Network: Fix socket options for different platforms (e55e4de)
- Network: Fix typos and deprecated function in code (b2d1fc3)
- Network: Refactor IOMultiplexer classes (2d5f32d)
- Protocol: Update include paths in Header.hpp (f76adb3)
- Server: Fix packet parsing and update header initialization (dcca1ed)
- workflows: Fix branch creation for gh-pages (b6e0ed0)
- workflows: Update build workflows and add Windows support (dce18a1)
- add newline berfore EOF in Spawned.hpp (a360b47)
- delete the C++ standard checker and the associated script (265ffbc)
- fixing Windows build error and a few other bugs (3eaefbc)
- ignore specific branches in build checker workflows (3f9ea83)
- remove minor version bump workflow and rename patch workflow to general release workflow (3ee6ef8)
- set the AccessModifierOffset C++ formatting parameter to 0 in .clang-format (f502730)
- simplify entity template loading logic (cb0ce7a)
- simplify Git setup and push steps in version bump workflows (5d6b454)
- Update byte type in Buffer.hpp and Header.hpp (dd2dc6c)
- update Doxygen deployment trigger and add linter workflow (91f383d)
- update Doxygen deployment workflow to trigger on releases and streamline steps (6094b89)
- Update notes in README.md (bcab62e)
- update paths for project logo and output directory in Doxyfile (d24dd45)
C...
Flakkari v0.2.0
What's Changed
- 38 implement a basic client manager by @MasterLaplace in #11
- 36 implement header packet for flakkari protocol by @MasterLaplace in #12
- 39 implemen a complete udp server by @MasterLaplace in #13
- 48 update the flakkari logger by @MasterLaplace in #15
- 49 update the flakkari network library by @MasterLaplace in #16
- 50 implement a command manager for admin user by @MasterLaplace in #17
- 51 implement ecs in flakkari server by @MasterLaplace in #18
- 53 implement a math library in flakkari engine by @MasterLaplace in #19
- 54 implement a game class in flakkari server by @MasterLaplace in #20
- 57 implement the game manager class by @MasterLaplace in #21
- 52 implement a complete game manager by @MasterLaplace in #22
- Dev 0.2.0 by @MasterLaplace in #23
Full Changelog: v0.1.0...v0.2.0