# isetht/arcturus-community-wired architecture

> Architecture diagram of the GitHub repository isetht/arcturus-community-wired, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-28). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/isetht/arcturus-community-wired
- Repository: https://github.com/isetht/arcturus-community-wired

## Overview

Arcturus Morningstar is a Java Habbo hotel emulator: connected clients send protocol packets that are dispatched into hotel features, which update room and player state and return game responses. Its distinctive focus is an expanded Wired system, including room-event evaluation, timed triggers, movement effects, and chest interactions. The tree also shows commerce, communities, games, moderation, polls, and plugins. Edges reflect packet registration and sampled calls; some feature internals are unsampled, so their finer wiring is omitted.

Main entry points: [`src/main/java/com/eu/habbo/messages/PacketManager.java`](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/messages/PacketManager.java) (Packet dispatch), [`src/main/java/com/eu/habbo/database/DatabasePool.java`](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/database/DatabasePool.java) (Database pool), [`src/main/java/com/eu/habbo/habbohotel/modtool/ModToolManager.java`](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/modtool/ModToolManager.java) (Moderation tools), [`src/main/java/com/eu/habbo/habbohotel/GameEnvironment.java`](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/GameEnvironment.java) (Game environment)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_protocol["Client protocol"]
  node_packets["Packet dispatch<br/>[PacketManager.java]"]
  node_clients["Client sessions"]
end

subgraph group_hotel["Hotel services"]
  node_environment["Game environment"]
  node_database[("Database pool<br/>[DatabasePool.java]")]
  node_polls["Polls<br/>[PollManager.java]"]
  node_moderation["Moderation tools"]
  node_emulator["Emulator runtime<br/>[Emulator.java]"]
end

subgraph group_rooms["Rooms and Wired"]
  node_roomsystem["Room movement"]
  node_wired["Wired engine<br/>[WiredEngine.java]"]
  node_wiredticks["Wired tick service"]
end

subgraph group_commerce["Commerce and items"]
  node_items["Furniture interactions<br/>[ItemManager.java]"]
  node_chests["Chest transactions<br/>[ChestManager.java]"]
  node_catalog["Catalog and marketplace"]
end

subgraph group_extensions["Communities and extensions"]
  node_guilds["Guilds and forums<br/>[GuildManager.java]"]
  node_games["Room games<br/>[Game.java]"]
  node_plugins["Plugin system<br/>[PluginManager.java]"]
end

node_client(("Game client"))

node_client -->|"sends packets"| node_packets
node_packets -->|"dispatches sessions"| node_clients
node_packets -->|"registers poll handlers"| node_polls
node_packets -->|"registers catalog handlers"| node_catalog
node_packets -->|"registers room handlers"| node_roomsystem
node_environment -->|"provides service"| node_polls
node_environment -->|"provides service"| node_moderation
node_items -->|"registers Wired triggers"| node_wired
node_wired -->|"applies movement"| node_roomsystem
node_wiredticks -->|"checks shutdown state"| node_emulator
node_chests -->|"reads and writes"| node_database
node_catalog -->|"loads catalog data"| node_database
node_polls -->|"loads polls"| node_database
node_guilds -->|"reads and writes"| node_database
node_moderation -->|"reads and writes"| node_database
node_moderation -->|"fires ban event"| node_plugins
node_emulator -->|"initializes services"| node_environment

click node_packets "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/messages/PacketManager.java"
click node_clients "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/gameclients/GameClientManager.java"
click node_environment "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/GameEnvironment.java"
click node_database "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/database/DatabasePool.java"
click node_polls "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/polls/PollManager.java"
click node_moderation "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/modtool/ModToolManager.java"
click node_roomsystem "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/rooms/RoomUnitMovementEngine.java"
click node_wired "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/wired/core/WiredEngine.java"
click node_wiredticks "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/wired/tick/WiredTickService.java"
click node_items "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/items/ItemManager.java"
click node_chests "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/items/chests/ChestManager.java"
click node_catalog "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/catalog/CatalogManager.java"
click node_guilds "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/guilds/GuildManager.java"
click node_games "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/games/Game.java"
click node_plugins "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/plugin/PluginManager.java"
click node_emulator "https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/Emulator.java"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_packets,node_clients,node_client toneBlue
class node_environment,node_database,node_polls,node_moderation,node_emulator toneAmber
class node_roomsystem,node_wired,node_wiredticks toneMint
class node_items,node_chests,node_catalog toneRose
class node_guilds,node_games,node_plugins toneIndigo
```

## Components

### Client protocol

- [Packet dispatch](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/messages/PacketManager.java): `src/main/java/com/eu/habbo/messages/PacketManager.java`
- [Client sessions](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/gameclients/GameClientManager.java): `src/main/java/com/eu/habbo/habbohotel/gameclients/GameClientManager.java`

### Hotel services

- [Game environment](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/GameEnvironment.java): `src/main/java/com/eu/habbo/habbohotel/GameEnvironment.java`
- [Database pool](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/database/DatabasePool.java): `src/main/java/com/eu/habbo/database/DatabasePool.java`
- [Polls](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/polls/PollManager.java): `src/main/java/com/eu/habbo/habbohotel/polls/PollManager.java`
- [Moderation tools](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/modtool/ModToolManager.java): `src/main/java/com/eu/habbo/habbohotel/modtool/ModToolManager.java`
- [Emulator runtime](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/Emulator.java): `src/main/java/com/eu/habbo/Emulator.java`

### Rooms and Wired

- [Room movement](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/rooms/RoomUnitMovementEngine.java): `src/main/java/com/eu/habbo/habbohotel/rooms/RoomUnitMovementEngine.java`
- [Wired engine](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/wired/core/WiredEngine.java): `src/main/java/com/eu/habbo/habbohotel/wired/core/WiredEngine.java`
- [Wired tick service](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/wired/tick/WiredTickService.java): `src/main/java/com/eu/habbo/habbohotel/wired/tick/WiredTickService.java`

### Commerce and items

- [Furniture interactions](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/items/ItemManager.java): `src/main/java/com/eu/habbo/habbohotel/items/ItemManager.java`
- [Chest transactions](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/items/chests/ChestManager.java): `src/main/java/com/eu/habbo/habbohotel/items/chests/ChestManager.java`
- [Catalog and marketplace](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/catalog/CatalogManager.java): `src/main/java/com/eu/habbo/habbohotel/catalog/CatalogManager.java`

### Communities and extensions

- [Guilds and forums](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/guilds/GuildManager.java): `src/main/java/com/eu/habbo/habbohotel/guilds/GuildManager.java`
- [Room games](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/habbohotel/games/Game.java): `src/main/java/com/eu/habbo/habbohotel/games/Game.java`
- [Plugin system](https://github.com/isetht/arcturus-community-wired/blob/main/src/main/java/com/eu/habbo/plugin/PluginManager.java): `src/main/java/com/eu/habbo/plugin/PluginManager.java`

### Other components

- **Game client**

## Connections

- Game client → Packet dispatch: sends packets
- Packet dispatch → Client sessions: dispatches sessions
- Packet dispatch → Polls: registers poll handlers
- Packet dispatch → Catalog and marketplace: registers catalog handlers
- Packet dispatch → Room movement: registers room handlers
- Game environment → Polls: provides service
- Game environment → Moderation tools: provides service
- Furniture interactions → Wired engine: registers Wired triggers
- Wired engine → Room movement: applies movement
- Wired tick service → Emulator runtime: checks shutdown state
- Chest transactions → Database pool: reads and writes
- Catalog and marketplace → Database pool: loads catalog data
- Polls → Database pool: loads polls
- Guilds and forums → Database pool: reads and writes
- Moderation tools → Database pool: reads and writes
- Moderation tools → Plugin system: fires ban event
- Emulator runtime → Game environment: initializes services
