From 06fd142cd6c1c4690b3483c6a86993bf8b23e50d Mon Sep 17 00:00:00 2001 From: Qweqker Date: Wed, 11 Mar 2020 20:24:27 -0400 Subject: [PATCH 1/3] Enabled All GE Boxes Added case for determining if login server is offline, with todo if someone wants to autorestart --- .../crandor/net/event/LoginWriteEvent.java | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/Server/src/org/crandor/net/event/LoginWriteEvent.java b/Server/src/org/crandor/net/event/LoginWriteEvent.java index 3f22afe0f..05ef54a5b 100644 --- a/Server/src/org/crandor/net/event/LoginWriteEvent.java +++ b/Server/src/org/crandor/net/event/LoginWriteEvent.java @@ -35,13 +35,16 @@ public final class LoginWriteEvent extends IoWriteEvent { ByteBuffer buffer = ByteBuffer.allocate(500); buffer.put((byte) response.opcode()); switch (response.opcode()) { - case 2: - buffer.put(getWorldResponse(session)); - session.setProducer(GAME_PRODUCER); - break; - case 21: - buffer.put((byte) session.getServerKey()); - break; + case 2: //successful login + buffer.put(getWorldResponse(session)); + session.setProducer(GAME_PRODUCER); + break; + case 8: //if the login server is offline? + //TODO: auto restart code? + break; + case 21: //Moving world + buffer.put((byte) session.getServerKey()); + break; } buffer.flip(); session.queue(buffer); @@ -63,7 +66,7 @@ public final class LoginWriteEvent extends IoWriteEvent { buffer.put((byte) 0); buffer.put((byte) 0); buffer.putShort((short) player.getIndex()); - buffer.put((byte) (player.isDonator() ? 1 : 0)); // Enable all G.E boxes + buffer.put((byte) (1)); // Enable all G.E boxes buffer.put((byte) 1); buffer.flip(); return buffer; From f369bcff943f969c2bd8de8b265980ae4df43b4b Mon Sep 17 00:00:00 2001 From: Qweqker Date: Wed, 11 Mar 2020 20:25:33 -0400 Subject: [PATCH 2/3] Added notice to the menu for developers to find where the GE boxes are enabled --- Server/src/org/crandor/game/content/eco/ge/GrandExchange.java | 1 + 1 file changed, 1 insertion(+) diff --git a/Server/src/org/crandor/game/content/eco/ge/GrandExchange.java b/Server/src/org/crandor/game/content/eco/ge/GrandExchange.java index 83532e3de..c182256c9 100644 --- a/Server/src/org/crandor/game/content/eco/ge/GrandExchange.java +++ b/Server/src/org/crandor/game/content/eco/ge/GrandExchange.java @@ -63,6 +63,7 @@ public final class GrandExchange implements SavingModule { /** * Opens the Grand Exchange menu. + * @NOTICE: The amount of GE boxes is limited at LoginWriteEvent.java (2 or 6 GE boxes, set it 0 for 2, 1 for 6) */ public void open() { if (player.getIronmanManager().checkRestriction()) { From 54190b2e0250608d64b919b6eb51995c9a064d21 Mon Sep 17 00:00:00 2001 From: Qweqker Date: Wed, 11 Mar 2020 20:32:14 -0400 Subject: [PATCH 3/3] Removed the additional case for possible security risks --- Server/src/org/crandor/net/event/LoginWriteEvent.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Server/src/org/crandor/net/event/LoginWriteEvent.java b/Server/src/org/crandor/net/event/LoginWriteEvent.java index 05ef54a5b..c632cd4cd 100644 --- a/Server/src/org/crandor/net/event/LoginWriteEvent.java +++ b/Server/src/org/crandor/net/event/LoginWriteEvent.java @@ -39,9 +39,8 @@ public final class LoginWriteEvent extends IoWriteEvent { buffer.put(getWorldResponse(session)); session.setProducer(GAME_PRODUCER); break; - case 8: //if the login server is offline? - //TODO: auto restart code? - break; + //Could add a case here to auto-restart the server in case the login server goes offline (case 8) + //Possibly a risk for malicious attacks though case 21: //Moving world buffer.put((byte) session.getServerKey()); break;