Install Asset
Install via Godot
To maintain one source of truth, Godot Asset Library is just a mirror of the old asset library so you can download directly on Godot via the integrated asset library browser
Quick Information
LinkUx (Godot 4.2+ Add-on)LinkUx is a Godot 4.2+ add-on designed to simplify multiplayer development by providing a unified and scalable networking layer for both local and online play.MAIN GOALTo offer a production-ready, backend-agnostic solution that abstracts networking complexity, allowing developers to focus on gameplay instead of low-level implementation details:- Session management- Player synchronization- Scene coordination- State replication- RPC routingCORE COMPONENTS- Global Autoload API: LinkUx- Backend system: NetworkBackend (pluggable)This system provides full control over multiplayer flow and behavior, including:- Sessions (create, join, close)- Player lifecycle and authority- Scene loading and readiness synchronization- Entity spawning and destruction- Property replication and interpolation- Message and RPC routing- Tick-based updatesWHAT’S NEW IN VERSION 2.0.0?- Modular backend architecture with LAN (ENet) support- Improved state replication system with snapshot/delta handling- Synchronization helpers with inspector integration- Scene synchronization with host-driven flow- Enhanced debugging tools and network stats- Cleaner API with stronger separation of concernsADDITIONAL FEATURESGlobal singleton to manage networking from any script:- create_session()- join_session()- close_session()Advanced multiplayer systems:- LinkUxEntity for replicated objects- LinkUxSynchronizer for property syncing- LinkUxSpawner for networked instantiation- MessageRegistry and RpcRelay for structured communication- Debug logger and performance helpers- Editor plugin with custom inspectors and toolsMULTIPLAYER SUPPORT- Built-in LAN backend using ENet- Designed for easy integration of future online backends- Same gameplay code works across different network transports- Ideal for co-op and small competitive games (listen-server model)SUMMARYLinkUx is a modular, backend-agnostic, and developer-focused networking solution for Godot, enabling robust multiplayer systems with minimal friction while maintaining full flexibility and scalability.
LinkUx
LinkUx is a multiplayer abstraction addon for Godot 4. It exposes one high-level Autoload API (LinkUx) while routing traffic through pluggable backends—today LAN (ENet) with a clean path for online transports later—so gameplay code stays the same whether players join over the local network or the internet.
Sessions, players, scene readiness, authority, state replication, RPC routing, late join, and tick helpers are coordinated internally. You configure the active backend, call create_session / join_session / close_session, react to signals, and attach optional nodes such as LinkUxEntity, LinkUxSynchronizer, and LinkUxSpawner where you need replicated entities and properties.
📑 Table of contents
✨ Features
| Single public API | One LinkUx Autoload: sessions, signals, helpers, and typed message routing. |
| Swappable backends | NetworkBackend contract; LAN backend included (binary protocol on top of ENet). Online-oriented backends can be added without rewriting game flow. |
| Listen-server friendly | Peer-to-host style session and authority model aligned with typical co-op / small competitive games. |
| State replication | StateReplicator + LinkUxSynchronizer for snapshots / deltas and optional interpolation. |
| Scene sync | Host-driven scene load / ready gates so all peers transition together. |
| Spawning | LinkUxSpawner for replicated spawn and teardown of entity scenes. |
| RPC & messages | MessageRegistry with serialization helpers and RpcRelay for routing where the transport requires it. |
| Debug & tooling | Debug logger, hooks, network stats helpers, and an inspector plugin for configuring sync_properties on synchronizers. |
| Editor integration | Plugin registers the LinkUx autoload on enable; custom node types with icons. |
📋 Requirements
| Item | Required? | Notes |
|---|---|---|
| Godot 4.2+ | Yes | Developed and tested on Godot 4.x (see plugin.cfg). |
| Same addon version | Yes | All players must share a compatible protocol_version.gd build or joins may fail with PROTOCOL_VERSION_MISMATCH. |
Expected install path in your project:
res://addons/linkux/
📦 Installation
- Copy this repository’s
addons/linkuxfolder into your Godot project underres://addons/linkux/. - Open Project → Project Settings → Plugins.
- Enable LinkUx — the editor registers the
LinkUxautoload (seeplugin.gdandlinkux.tscn). - Configure your default backend / resources (for example
LinkUxConfigandLanBackendConfig) as described in the docs. - From gameplay / UI code, call
LinkUx.create_session(...),LinkUx.join_session(...), etc.
🚀 Quick start
1️⃣ Verify the autoload
After enabling the plugin, you should see LinkUx under Project → Project Settings → Autoloads, pointing at res://addons/linkux/linkux.tscn.
2️⃣ Host or join from code
func _on_host_pressed() -> void:
var err := LinkUx.create_session("My Lobby", 8, {})
if err != NetworkEnums.ErrorCode.SUCCESS:
push_error("create_session failed: %s" % err)
func _on_join_pressed(info: SessionInfo) -> void:
var err := LinkUx.join_session(info)
if err != NetworkEnums.ErrorCode.SUCCESS:
push_error("join_session failed: %s" % err)
3️⃣ React to session signals
func _ready() -> void:
LinkUx.session_created.connect(_on_session_created)
LinkUx.player_joined.connect(_on_player_joined)
func _on_session_created(_info: SessionInfo) -> void:
print("Session ready")
func _on_player_joined(_player: PlayerInfo) -> void:
print("Peer joined")
4️⃣ Replicate entities
- Add
LinkUxEntity(or compatible setup) to scenes you spawn throughLinkUxSpawner. - Attach
LinkUxSynchronizerto nodes whose properties should follow network state; use the inspector’s Synchronized Properties section to pick fields.
(Exact API names and enums live on the LinkUx facade and the global NetworkEnums class—use your IDE’s go-to-definition on the autoload.)
📚 Documentation
The official documentation is a website:
Then open EasyChat Official Documentation in your browser for the full interactive docs (navigation, EN / ES language toggle, and quick search).
🗂 Project layout
addons/linkux/
├── plugin.cfg # Plugin metadata
├── plugin.gd # EditorPlugin: autoload + inspector registration
├── linkux.tscn # Autoload scene root
├── linkux.gd # LinkUx singleton (public API facade)
├── config/ # LinkUxConfig, network & backend resources
├── core/ # Enums, events, session/player info, protocol version, backends base
├── backends/ # Backends implementation
├── subsystems/ # Session, replication, RPC relay, scene sync, ticks, etc.
├── transport/ # Transport layer, channels, validation
├── nodes/ # LinkUxEntity, Spawner, Synchronizer + editor tools
├── debug/ # Logger, debugger hooks, stats helpers
├── optimization/ # Interest management, batching, interpolation helpers
└── security/ # Authority / error helpers
🙏 Credits
- LinkUx — IUX Games, Isaackiux · version 2.0.0 (see
plugin.cfg).
LinkUx (Godot 4.2+ Add-on)
LinkUx is a Godot 4.2+ add-on designed to simplify multiplayer development by providing a unified and scalable networking layer for both local and online play.
MAIN GOAL
To offer a production-ready, backend-agnostic solution that abstracts networking complexity, allowing developers to focus on gameplay instead of low-level implementation details:
- Session management
- Player synchronization
- Scene coordination
- State replication
- RPC routing
CORE COMPONENTS
- Global Autoload API: LinkUx
- Backend system: NetworkBackend (pluggable)
This system provides full control over multiplayer flow and behavior, including:
- Sessions (create, join, close)
- Player lifecycle and authority
- Scene loading and readiness synchronization
- Entity spawning and destruction
- Property replication and interpolation
- Message and RPC routing
- Tick-based updates
WHAT’S NEW IN VERSION 2.0.0?
- Modular backend architecture with LAN (ENet) support
- Improved state replication system with snapshot/delta handling
- Synchronization helpers with inspector integration
- Scene synchronization with host-driven flow
- Enhanced debugging tools and network stats
- Cleaner API with stronger separation of concerns
ADDITIONAL FEATURES
Global singleton to manage networking from any script:
- create_session()
- join_session()
- close_session()
Advanced multiplayer systems:
- LinkUxEntity for replicated objects
- LinkUxSynchronizer for property syncing
- LinkUxSpawner for networked instantiation
- MessageRegistry and RpcRelay for structured communication
- Debug logger and performance helpers
- Editor plugin with custom inspectors and tools
MULTIPLAYER SUPPORT
- Built-in LAN backend using ENet
- Designed for easy integration of future online backends
- Same gameplay code works across different network transports
- Ideal for co-op and small competitive games (listen-server model)
SUMMARY
LinkUx is a modular, backend-agnostic, and developer-focused networking solution for Godot, enabling robust multiplayer systems with minimal friction while maintaining full flexibility and scalability.
Reviews
Quick Information
LinkUx (Godot 4.2+ Add-on)LinkUx is a Godot 4.2+ add-on designed to simplify multiplayer development by providing a unified and scalable networking layer for both local and online play.MAIN GOALTo offer a production-ready, backend-agnostic solution that abstracts networking complexity, allowing developers to focus on gameplay instead of low-level implementation details:- Session management- Player synchronization- Scene coordination- State replication- RPC routingCORE COMPONENTS- Global Autoload API: LinkUx- Backend system: NetworkBackend (pluggable)This system provides full control over multiplayer flow and behavior, including:- Sessions (create, join, close)- Player lifecycle and authority- Scene loading and readiness synchronization- Entity spawning and destruction- Property replication and interpolation- Message and RPC routing- Tick-based updatesWHAT’S NEW IN VERSION 2.0.0?- Modular backend architecture with LAN (ENet) support- Improved state replication system with snapshot/delta handling- Synchronization helpers with inspector integration- Scene synchronization with host-driven flow- Enhanced debugging tools and network stats- Cleaner API with stronger separation of concernsADDITIONAL FEATURESGlobal singleton to manage networking from any script:- create_session()- join_session()- close_session()Advanced multiplayer systems:- LinkUxEntity for replicated objects- LinkUxSynchronizer for property syncing- LinkUxSpawner for networked instantiation- MessageRegistry and RpcRelay for structured communication- Debug logger and performance helpers- Editor plugin with custom inspectors and toolsMULTIPLAYER SUPPORT- Built-in LAN backend using ENet- Designed for easy integration of future online backends- Same gameplay code works across different network transports- Ideal for co-op and small competitive games (listen-server model)SUMMARYLinkUx is a modular, backend-agnostic, and developer-focused networking solution for Godot, enabling robust multiplayer systems with minimal friction while maintaining full flexibility and scalability.