Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"up" pillar to resynchronize properly #16

Open
TheYellowArchitect opened this issue Aug 11, 2022 · 0 comments
Open

"up" pillar to resynchronize properly #16

TheYellowArchitect opened this issue Aug 11, 2022 · 0 comments
Labels
netcoding Anything related to networking or online multiplayer

Comments

@TheYellowArchitect
Copy link
Owner

When you cast "up" while desynchronized, pillar shows only on you. That is a good thing.
However, on resynchronization, I kill all pillars, otherwise real desync would happen.
Ideally, on resynchronization, the pillars while desynced would merge in the same game.

Let's see at an example. You cast "branch"
You move away from the other player, and mage casts "up"
Both players have 1 pillar (different position)
When you cast "link", both players should have 2 pillars, adding the pillar of the other player.

Code-wise, I would have to refactor how "up" works for netcoding, as currently, it is a hack on "wait some frames, then relocate", instead of truly creating a new pillar.
The important classes to refactor:

  • FinalPillarBehaviour.cs
  • NetworkSpellcasting.cs
  • and of course, use PillarStorage (see LevelManager.cs) to check the diff pillars on resynchronization.

Ideally, you would mark which pillars were made on desynchronization, and send to the other player to create these pillars alongside their positions.

@TheYellowArchitect TheYellowArchitect added the netcoding Anything related to networking or online multiplayer label Aug 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
netcoding Anything related to networking or online multiplayer
Projects
None yet
Development

No branches or pull requests

1 participant