-
-
Notifications
You must be signed in to change notification settings - Fork 33
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Plugin retry fixes and refactoring (#377)
- Closes #244, a.k.a. [Golden Experience Requiem](https://www.youtube.com/watch?v=r_mfpy2ZyQQ) bug by returning players to the lobby when retrying after at least one player has given up. - Retries when failing a quest are still a bit glitchy -- it's supposed to remove players who voted no and allow players who voted yes to optionally rejoin the room similar to the prompt on a successful clear. Currently any retry where all players are dead will go back to the lobby. #378 raised to track. Plugin refactoring: - Remove HeroParam and other custom actor properties and persist this state in the plugin class, since only the plugin needs to know about these. It's tidier and avoids Photon having to serialize them (and crashing in the case of HeroParam since we didn't register this type). - Use enums for event codes. - Improve logging and add info logs which can provide basic diagnostics, particularly around potential problem areas such as GoToIngameState
- Loading branch information
1 parent
388cb94
commit 863d732
Showing
11 changed files
with
330 additions
and
218 deletions.
There are no files selected for viewing
This file contains 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
This file was deleted.
Oops, something went wrong.
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
namespace DragaliaAPI.Photon.Plugin | ||
{ | ||
/// <summary> | ||
/// Dragalia Lost event codes. | ||
/// </summary> | ||
public enum Event : byte | ||
{ | ||
/// <summary> | ||
/// Event sent by clients when it has finished loading. | ||
/// </summary> | ||
Ready = 0x3, | ||
|
||
/// <summary> | ||
/// Event sent by the server containing other player's loadout information. | ||
/// </summary> | ||
CharacterData = 0x14, | ||
|
||
/// <summary> | ||
/// Event sent by the server when players should be allowed to start moving. | ||
/// </summary> | ||
StartQuest = 0x15, | ||
|
||
/// <summary> | ||
/// Event sent by the server when the room should be destroyed. | ||
/// </summary> | ||
RoomBroken = 0x17, | ||
|
||
/// <summary> | ||
/// Event sent by clients and the server when re-using a room. | ||
/// </summary> | ||
GameSucceed = 0x18, | ||
|
||
/// <summary> | ||
/// Event sent by the server containing information about how many units each player will control. | ||
/// </summary> | ||
Party = 0x3e, | ||
|
||
/// <summary> | ||
/// Event sent by clients when clearing a quest successfully. | ||
/// </summary> | ||
ClearQuestRequest = 0x3f, | ||
|
||
/// <summary> | ||
/// Event sent by the server after forwarding a <see cref="ClearQuestRequest"/> event. | ||
/// </summary> | ||
ClearQuestResponse = 0x40, | ||
|
||
/// <summary> | ||
/// Event sent by clients when failing/retrying a quest. | ||
/// </summary> | ||
FailQuestRequest = 0x43, | ||
|
||
/// <summary> | ||
/// Event sent by the server after acknowledging a <see cref="FailQuestRequest"/> event. | ||
/// </summary> | ||
FailQuestResponse = 0x44, | ||
|
||
/// <summary> | ||
/// Event sent by clients when their character dies. | ||
/// </summary> | ||
Dead = 0x48, | ||
} | ||
} |
This file contains 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
Oops, something went wrong.