feat: authoritative multiplayer integration (aka pulse)#7291
Draft
feat: authoritative multiplayer integration (aka pulse)#7291
Conversation
Contributor
|
Windows and Mac build successful in Unity Cloud! You can find a link to the downloadable artifact below. |
# Conflicts: # Explorer/.gitignore # scripts/package-lock.json # scripts/package.json
- remove a second copy of Google.Protobuf.dll
- Update protocol
# Conflicts: # Explorer/Assets/DCL/PluginSystem/DCL.Plugins.asmdef
# Conflicts: # Explorer/Assets/DCL/Infrastructure/Global/Dynamic/DynamicWorldContainer.cs # Explorer/Assets/DCL/Infrastructure/Global/Dynamic/GlobalWorldFactory.cs # Explorer/Assets/DCL/Multiplayer/Emotes/MultiplayerEmotesMessageBus.cs
# Conflicts: # Explorer/Assets/DCL/AvatarRendering/Emotes/Systems/Play/CharacterEmoteSystem.cs # Explorer/Assets/DCL/AvatarRendering/Emotes/Systems/UpdateEmoteInputSystem.cs # Explorer/Assets/DCL/AvatarRendering/Emotes/Tests/UpdateEmoteInputSystemShould.cs # Explorer/Assets/DCL/Infrastructure/CrdtEcsBridge/JsModulesImplementation/RestrictedActions/GlobalWorldActions.cs # Explorer/Assets/DCL/Infrastructure/CrdtEcsBridge/JsModulesImplementation/RestrictedActions/Tests/GlobalWorldActionsShould.cs # Explorer/Assets/DCL/Multiplayer/Emotes/IEmotesMessageBus.cs # Explorer/Assets/DCL/Multiplayer/Emotes/MultiplayerEmotesMessageBus.cs # Explorer/Assets/DCL/Multiplayer/Emotes/RemoteEmoteIntention.cs # Explorer/Assets/Protocol/DecentralandProtocol/Comms.gen.cs # Explorer/Assets/Protocol/DecentralandProtocol/RestrictedActions.gen.cs # scripts/package-lock.json # scripts/package.json
# Conflicts: # Explorer/Assets/DCL/Multiplayer/Movement/Systems/PulseMultiplayerBus.Emotes.cs
- Introduce a feature flag for Pulse - Rename previous multiplayer to "LiveKit" domain - A bit of refactoring of DynamicWorldContainer.cs
# Conflicts: # Explorer/Assets/DCL/FeatureFlags/FeaturesRegistry.cs # Explorer/Assets/DCL/Infrastructure/Utility/DecentralandUrls/DecentralandUrl.cs # Explorer/Assets/DCL/NetworkDefinitions/Browser/DecentralandUrlsSource.cs # Explorer/Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportsHandlingSettingsDevelopment.asset # Explorer/Assets/Protocol/DecentralandProtocol/Comms.gen.cs # Explorer/Assets/Protocol/DecentralandProtocol/ParticleSystem.gen.cs # scripts/package-lock.json # scripts/package.json
Extract transport-neutral multiplayer content into a new multiplayer.md hub, scope the renamed livekit-networking.md to LiveKit-specific internals only, and add a new pulse.md covering the Pulse transport. multiplayer.md covers the shared surface: core interfaces, transport selection, movement encoding / send / receive pipelines, interpolation and extrapolation, remote-player entity/profile lifecycle, dedup and concurrency primitives, SDK propagation to scene worlds, and online-users connectivity. livekit-networking.md (renamed from network-synchronization.md) now covers only LiveKit specifics: RoomHub, ConnectiveRoom, dual-room architecture, entity availability semantics, voice chat room, and the LiveKit*MessageBus / RemoveIntentions / RemoteMetadata / ProfileBroadcast implementations. pulse.md is new: ENet transport, Protobuf message model, PeerId mapping, PulseMultiplayerBus partial-class map (PlayerState, Teleports, Profiles, Emotes, Disconnects), profile propagation, incoming collectors, PulseContainer wiring, and a differences-from-LiveKit table. Also updates the multiplayer-and-network-sync skill to point at the renamed doc and uses the current LiveKitRemoveIntentions class name. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull Request Description
Server project: https://github.com/decentraland/Pulse
What does this PR change?
Test Instructions
Prerequisites
Test Steps
Additional Testing Notes
Quality Checklist
Code Review Reference
Please review our Code Review Standards before submitting.