Improved network stability and other related fixes:

* server: fixed that a critical errors ignored in user commands threads (now it will be added to the logs);
* network: fixed frozen user responses in some use cases;
* network: fixed accidental and incorrect user responses (only latest response will be used now);
* network: improved freeze logs, added problem method name and code's line number;
* cheats: removed outdated deck and card load logic (only init.txt commands supports now);
* cheats: fixed wrong priority after add card dialog (closes #11437);
* cheats: improved stability and random errors on cheat executes (related to #11437);
* docs: added details on network and thread logic, human feedback life cycle, etc (see HumanPlayer, ThreadExecutorImpl);
This commit is contained in:
Oleg Agafonov 2023-11-24 21:22:16 +04:00
parent 4ba3e1fec5
commit 53add71826
33 changed files with 476 additions and 273 deletions

View file

@ -225,8 +225,8 @@ public final class SessionHandler {
return session.isTestMode();
}
public static void cheat(UUID gameId, UUID playerId, DeckCardLists deckCardLists) {
session.cheat(gameId, playerId, deckCardLists);
public static void cheatShow(UUID gameId, UUID playerId) {
session.cheatShow(gameId, playerId);
}
public static String getSessionId() {

View file

@ -588,7 +588,7 @@ public class PlayAreaPanel extends javax.swing.JPanel {
}
private void btnCheatActionPerformed(java.awt.event.ActionEvent evt) {
SessionHandler.cheat(gameId, playerId, DeckImporter.importDeckFromFile("cheat.dck", false));
SessionHandler.cheatShow(gameId, playerId);
}
public boolean isSmallMode() {

View file

@ -970,8 +970,7 @@ public class PlayerPanelExt extends javax.swing.JPanel {
}
private void btnCheatActionPerformed(java.awt.event.ActionEvent evt) {
DckDeckImporter deckImporter = new DckDeckImporter();
SessionHandler.cheat(gameId, playerId, deckImporter.importDeck("cheat.dck", false));
SessionHandler.cheatShow(gameId, playerId);
}
private void btnToolHintsHelperActionPerformed(java.awt.event.ActionEvent evt) {

View file

@ -64,8 +64,4 @@ public interface CardImageSource {
default boolean isTokenImageProvided(String setCode, String cardName, Integer tokenNumber) {
return false;
}
default int getDownloadTimeoutMs() {
return 0;
}
}