Skip to content

Commit ea928ce

Browse files
Add experimental config option for checking Eagler players
1 parent d19ee78 commit ea928ce

File tree

12 files changed

+42
-4
lines changed

12 files changed

+42
-4
lines changed

api/src/main/java/xyz/jonesdev/sonar/api/config/SonarConfiguration.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,7 @@ public void loadValues() {
201201
verification.validNameRegex = Pattern.compile(generalConfig.getString("verification.checks.valid-name-regex"));
202202

203203
verification.checkGeyser = generalConfig.getBoolean("verification.check-geyser-players");
204+
verification.checkEagler = generalConfig.getBoolean("verification.check-eagler-players");
204205
verification.logConnections = generalConfig.getBoolean("verification.log-connections");
205206
verification.logDuringAttack = generalConfig.getBoolean("verification.log-during-attack");
206207
verification.debugXYZPositions = generalConfig.getBoolean("verification.debug-xyz-positions");
@@ -415,6 +416,7 @@ public boolean isSurvivalOrAdventure() {
415416

416417
private int timeOfDay;
417418
private boolean checkGeyser;
419+
private boolean checkEagler;
418420
private boolean logConnections;
419421
private boolean logDuringAttack;
420422
private boolean debugXYZPositions;

common/src/main/java/xyz/jonesdev/sonar/common/InboundHandlerAdapter.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,8 +121,7 @@ protected final void handleLogin(final @NotNull ChannelHandlerContext ctx,
121121
}
122122

123123
// Don't continue the verification process if the verification is disabled
124-
if (!Sonar.get0().getAntiBot().shouldVerifyNewPlayers()
125-
|| EaglerUtil.isEaglerConnection(ctx.channel())) {
124+
if (!Sonar.get0().getAntiBot().shouldVerifyNewPlayers()) {
126125
initialLogin(ctx.channel(), inetAddress, initialLoginAction);
127126
return;
128127
}
@@ -134,6 +133,13 @@ protected final void handleLogin(final @NotNull ChannelHandlerContext ctx,
134133
return;
135134
}
136135

136+
// Completely skip EaglercraftX connections if configured
137+
if (EaglerUtil.isEaglerConnection(ctx.channel())
138+
&& !Sonar.get0().getConfig().getVerification().isCheckEagler()) {
139+
initialLogin(ctx.channel(), inetAddress, initialLoginAction);
140+
return;
141+
}
142+
137143
// Make sure we actually have to verify the player
138144
final String fingerprint = FingerprintingUtil.getFingerprint(username, hostAddress);
139145
if (Sonar.get0().getVerifiedPlayerController().getCache().contains(fingerprint)) {

common/src/main/resources/assets/config/cs.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,9 @@ verification:
187187
# Tato funkce je experimentální a může způsobit problémy
188188
# Pokud je toto zakázáno, hráči Bedrock budou přeskočeni
189189
check-geyser-players: false
190+
# Měl by Sonar kontrolovat také hráče EaglercraftX?
191+
# Tato funkce je experimentální a může způsobit problémy.
192+
check-eagler-players: false
190193
# Doba, za kterou hráč přestal odesílat pakety před odpojením
191194
# (Hodnota udávaná v milisekundách: 1 sekunda = 1000 milisekund)
192195
read-timeout: 8000

common/src/main/resources/assets/config/de.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,9 @@ verification:
184184
# Diese Funktion ist experimentell und kann Probleme verursachen
185185
# Wenn dies deaktiviert ist, werden Bedrock-Spieler übersprungen
186186
check-geyser-players: false
187+
# Sollte Sonar auch EaglercraftX-Spieler überprüfen?
188+
# Diese Funktion ist experimentell und kann zu Problemen führen.
189+
check-eagler-players: false
187190
# Die Zeit, seit der der Spieler keine Pakete mehr sendet, bevor er die Verbindung trennt
188191
# (Dieser Wert stellt die Zeit in Millisekunden dar: 1 Sekunde = 1000 Millisekunden)
189192
read-timeout: 8000

common/src/main/resources/assets/config/en.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,9 @@ verification:
187187
# This feature is experimental and might cause issues
188188
# If this is disabled, Bedrock players will be skipped
189189
check-geyser-players: false
190+
# Should Sonar also check EaglercraftX players?
191+
# This feature is experimental and might cause issues
192+
check-eagler-players: false
190193
# The time since the player stopped sending packets before disconnecting
191194
# (This value represents the time in milliseconds: 1 second = 1000 milliseconds)
192195
read-timeout: 8000

common/src/main/resources/assets/config/fr.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,9 @@ verification:
186186
# Cette fonctionnalité est expérimentale et peut causer des problèmes
187187
# Si cela est désactivé, les joueurs Bedrock seront ignorés
188188
check-geyser-players: false
189+
# Sonar devrait-il également vérifier les joueurs EaglercraftX ?
190+
# Cette fonctionnalité est expérimentale et peut causer des problèmes.
191+
check-eagler-players: false
189192
# Temps écoulé depuis que le joueur a cessé d'envoyer des paquets avant de se déconnecter
190193
# (Cette valeur représente le temps en millisecondes : 1 seconde = 1000 millisecondes)
191194
read-timeout: 8000

common/src/main/resources/assets/config/ka.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -185,6 +185,9 @@ verification:
185185
# ეს ფუნქცია ექსპერიმენტულია და შეიძლება გამოიწვიოს პრობლემები
186186
# თუ ეს გამორთულია, Bedrock მოთამაშეები გამოვლენილი იქნება
187187
check-geyser-players: false
188+
# უნდა შეამოწმოს Sonar-მა EaglercraftX-ის მოთამაშეებიც?
189+
# ეს ფუნქცია ექსპერიმენტულია და შესაძლოა პრობლემები გამოიწვიოს
190+
check-eagler-players: false
188191
# დროის ოდენობა, რომელიც უნდა გავიდეს, სერვერთან კავშირის გარეშე, სანამ მოთამაშე დროებით გავარდება სერვერიდან.
189192
# (ეს არის ნაჩვენები მილიწამებში: 1 წამი = 1000 მილიწამი)
190193
read-timeout: 8000

common/src/main/resources/assets/config/nl.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,9 @@ verification:
182182
# Moet Sonar elke beweging/positieverandering tijdens de verificatie registreren?
183183
# Dit wordt niet aanbevolen voor productieservers, maar kan nuttig zijn bij het opsporen van fouten.
184184
debug-xyz-positions: false
185+
# Moet Sonar ook EaglercraftX-spelers controleren?
186+
# Deze functie is experimenteel en kan problemen veroorzaken.
187+
check-eagler-players: false
185188
# Moet Sonar ook Geyser (Bedrock) spelers controleren?
186189
# Deze functie is experimenteel en kan problemen veroorzaken
187190
# Als dit is uitgeschakeld, worden Bedrock-spelers overgeslagen

common/src/main/resources/assets/config/pl.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,9 @@ verification:
186186
# Ta funkcja jest eksperymentalna i może powodować problemy
187187
# Jeśli ta opcja jest wyłączona, gracze Bedrock będą pomijani
188188
check-geyser-players: false
189+
# Czy Sonar powinien również sprawdzać graczy EaglercraftX?
190+
# Ta funkcja jest eksperymentalna i może powodować problemy.
191+
check-eagler-players: false
189192
# Czas, jaki ma upłynąć od zatrzymania wysyłania pakietów przez gracza do wyrzucenia.
190193
# (Wartość ta reprezentuje czas w milisekundach: 1 sekunda = 1000 milisekund)
191194
read-timeout: 8000

common/src/main/resources/assets/config/pt-br.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,9 @@ verification:
186186
# Este recurso é experimental e pode causar problemas
187187
# Se isso estiver desativado, jogadores Bedrock serão ignorados
188188
check-geyser-players: false
189+
# O Sonar também deve verificar os jogadores do EaglercraftX?
190+
# Este recurso é experimental e pode causar problemas.
191+
check-eagler-players: false
189192
# O tempo desde que o jogador parou de enviar pacotes antes de desconectar
190193
# (Este valor representa o tempo em milissegundos: 1 segundo = 1000 milissegundos)
191194
read-timeout: 8000

0 commit comments

Comments
 (0)