-
Notifications
You must be signed in to change notification settings - Fork 4
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
v0.5.0: Mandatory Height Calibration Prompt, Compatibility with Relay Server v1.1.0, Enhanced People Panel, Various Refactors #80
Conversation
… reconnect logic to leaving and rejoining
@@ -145,6 +145,8 @@ public void EndCalibration () | |||
|
|||
onFinishedCalibration.Invoke(heightToBumpPlayer); | |||
|
|||
KomodoEventManager.TriggerEvent("FinishedHeightCalibration"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(future) store event names as constant strings in a central files
private static KomodoEventManager eventManager; | ||
|
||
public static KomodoEventManager Instance | ||
{ | ||
//using the getter to find the instance |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(future) consolidate comments
…fixed client removal during reconnect
…e editor models list
Compatibility with Relay Server v1.1.0, Enhanced People Panel, Various RefactorsConnect to sync namespace (breaking change) The client is now compatible with komodo-relay (server) v1.1.0, which requires a connection to the sync namespace. How to test: open the Unity client in a browser and connect to a v1.1.0 server -> the people tab should report a successful connection. Support for v1.1.0 should theoretically fix #59 Fix state catch-up to use messaging system (bug fix, new feature) The state catch-up had a bug where it would always ask the ClientSpawnManager to apply state, so networked objects (synchronized models) would not get transform, visibility, or lock states. This is now fixed. How to test: go to Unity window > Hierarchy panel > Visible managers > NetworkManager. See Inspector panel > SocketIOEditorSimulator component, right click it, and choose ReceiveExampleStateCatchup. ->The models should all be lined up in a diagonal line, be spaced evenly, and up to four of them should be visible and locked. (Fewer will be visible and locked if some are marked as "isWholeObject = false" in ModelData. This is a limitation of the test.) Lock and visibility toggle infinite loop (bug fix) It should no longer be possible to trigger an infinite loop by rapidly pressing the lock and visibility toggle. How to test: open two clients and rapidly press the visibility or lock button, then let go -> the button should quickly stop flashing on and off. Max client count (new feature) The maximum number of clients has arbitrarily been increased to 15. Improved People tab
Fixes #60 Major networking refactors
Refactors SessionStateManager has been introduced to apply multiplayer server state catch-ups to the avatars (clients) and networked objects (synchronized models). A new class, NetworkedObjectsManager, has been introduced to manage synchronized models. Adding and removing clients was refactored into smaller functions in an attempt to repair the out-of-body experience. The client teardown code was moved from NetworkUpdateHandler to SocketIOAdapter for the same reason. Minor renamings. Type of change
How Has This Been Tested?Please see above for the manual test instructions.
Test Configuration:
Checklist:
Modified from this article: |
@Barasakar Could you review this when you have a chance? |
@parseccentric Yeah, I have reviewed this whole thread. Let me know if there is anything else I need to do. |
@Barasakar I made another mistake. As you can see above, I mistakenly committed 508b74d and 18651ff onto this branch before merging. I apologize for this error. I will close this pull request and open a new one with a |
Mandatory Height Calibration Prompt
Created a prototype of the height calibration prompt that asks users to calibrate their height.
Having the height calibration done early might help addressing one of the issues (i.e., teleporting into the ground).
Work around for #61 .
Type of change
How Has This Been Tested?
Komodo runs -> prompt shows up -> calibrate height -> prompt disappears
This is not a multi-player feature.
Test Configuration:
Checklist:
My code follows the style guidelines of this projectNew and existing unit tests pass locally with my changesModified from this article:
Phillip Johnston, “A GitHub Pull Request Template for Your Projects - Embedded Artistry,” Embedded Artistry, Aug. 04, 2017. https://embeddedartistry.com/blog/2017/08/04/a-github-pull-request-template-for-your-projects/ (accessed Jul. 22, 2021).