Skip to content

Feature/implement more behaviours#66

Closed
Manie-K wants to merge 47 commits intomasterfrom
feature/implement_more_behaviours
Closed

Feature/implement more behaviours#66
Manie-K wants to merge 47 commits intomasterfrom
feature/implement_more_behaviours

Conversation

@Manie-K
Copy link
Owner

@Manie-K Manie-K commented Sep 28, 2025

No description provided.

Manie-K and others added 30 commits July 26, 2025 13:02
Set up automatic github action for testing on push.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Refactored the lobby system with modular design using `ILobby` and `LobbyManager` for managing multiple lobbies. Introduced a new `Server` class to handle client connections and delegate lobby operations. Added logging via `ILogger` and exception handling with `NullLobbyException`. Updated namespaces and project structure for better organization. Removed legacy code and improved thread management and client communication. Enhanced code readability with comments and XML documentation.
* Added basics for messages communication

* Changes in client loop in server, changes in message communication

* Added project for manual testing, bugs fixed

* Some changes

* IMessage interface changed for MessageBase abstract class
Changed logging architecture to event base to decouple the server from the rest.
Added resending new info about entity to others.
Added initial processing of world entities' states updates.
Changed world state update to tick-based
server logs are transfered to ui app
base for http api (now only lobbies api endpoints)
lobby service transfered into shared library
…ment

Added simple entities movement handling.
franek73 and others added 17 commits September 11, 2025 14:31
…tion

Added simple API for managing modules.
* Improved Module class.

Added Behaviour type tree.

Added a way to create Module instances using fluent builder.

* Created interaction type resolver in world entity update.

* Added services.

Added ModuleService.
Added BehaviourService.
Added simple in-memory behaviours catalouge.
Created most basic implementations of behaviours.

* Add important comment.

* Added a very primitive modules id system.

Prevents extensive memory usage by removing need for multiple instances of module class in world entities. Now, lobby will only contain instances of loaded modules once, not once per entity. It will also reduce the number of behaviour classes instances to once per modules its included in.
#46)

* Added disjoining lobby option and message, added new elemnts to create lobby message

* disjoin lobby message type enum bug fixed

* join lobby message type bug fixed
* classes from Server.Shared project transfered into Server.Core and SharedLibrary projects

* Changed lobby creation to support modules.

Made other minor changes.

---------

Co-authored-by: Maciej Góralczyk <goralczykmaciek@gmail.com>
Moved DTO files to folder.
Changed interaction type resolver.
* new info type message, UI console bases for TCP communication instead of HTTP

* http communication fully removed and some code refactoring
@Manie-K Manie-K requested a review from franek73 September 28, 2025 16:44
@Manie-K Manie-K self-assigned this Sep 28, 2025
@Manie-K Manie-K added the enhancement New feature or request label Sep 28, 2025
@Manie-K Manie-K closed this Sep 28, 2025
@franek73 franek73 deleted the feature/implement_more_behaviours branch September 29, 2025 18:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants