Jump to content

Fix for aCis login issue from server machine


Devlin

Recommended Posts

Hey there!

 

Referring to aCis project,

I noticed an issue that if you open a public server from your PC, other players can join but you can't join from the machine that you are running the server (as localhost).

 

Here is the quick fix about that issue,

--- a/aCis_gameserver/java/net/sf/l2j/loginserver/network/serverpackets/ServerList.java
+++ b/aCis_gameserver/java/net/sf/l2j/loginserver/network/serverpackets/ServerList.java
@@ -22,10 +22,13 @@
 	{
 		_lastServer = client.getLastServer();
 		
+		String clientIp = client.getConnection().getInetAddress().getHostAddress();
+		boolean isLocalhost = clientIp.equals("127.0.0.1"); 
+		
 		for (GameServerInfo gsi : GameServerManager.getInstance().getRegisteredGameServers().values())
 		{
 			final StatusType status = (client.getAccessLevel() < 0 || (gsi.getStatus() == StatusType.GM_ONLY && client.getAccessLevel() <= 0)) ? StatusType.DOWN : gsi.getStatus();
-			final String hostName = gsi.getHostName();
+			final String hostName = isLocalhost ? "127.0.0.1" : gsi.getHostName();
 			
 			_servers.add(new ServerData(status, hostName, gsi));
 		}

 

  • Upvote 1
Link to comment
Share on other sites

Use this code for detecting all local network addresses:

	public static boolean isLocalResourceByIp(InetAddress address)
	{
		if (address == null || address.isLinkLocalAddress() || address.isLoopbackAddress() || address.isAnyLocalAddress() || address.isSiteLocalAddress())
			return true;
		
		return false;
	}

 

Otherwise if you try to connect from other local machine you will have fault.

Link to comment
Share on other sites

  • 1 month later...
  • 1 month later...
  • 1 year later...
On 12/18/2020 at 7:32 PM, Rootware said:

Use this code for detecting all local network addresses:

	public static boolean isLocalResourceByIp(InetAddress address)
	{
		if (address == null || address.isLinkLocalAddress() || address.isLoopbackAddress() || address.isAnyLocalAddress() || address.isSiteLocalAddress())
			return true;
		
		return false;
	}

 

Otherwise if you try to connect from other local machine you will have fault.

i have this kind of fault. but i am a bit newbie and i cant undestand where to put this

Edited by thepsolartek
Link to comment
Share on other sites

8 hours ago, thepsolartek said:

i have this kind of fault. but i am a bit newbie and i cant undestand where to put this

java/net/sf/l2j/loginserver/network/serverpackets/ServerList.java
Link to comment
Share on other sites

Unfortunately, I can't put the skills of logical thinking into your head so that you can use my Java code. The hardest thing I gave you in code form.

Link to comment
Share on other sites

On 4/19/2022 at 10:16 AM, An4rchy said:
java/net/sf/l2j/loginserver/network/serverpackets/ServerList.java

i didnt exactly mean this with my comment. the think i cant understand is where i have to place this part or what shall i replace  in order to solve the problem. shall i use what devlin said or i have just to add rootware method and that;s all?

Edited by thepsolartek
Link to comment
Share on other sites

7 hours ago, thepsolartek said:

i didnt exactly mean this with my comment. the think i cant understand is where i have to place this part or what shall i replace  in order to solve the problem. shall i use what devlin said or i have just to add rootware method and that;s all?

 

On 1/22/2021 at 3:23 PM, HaddWik said:

Here is code adapted to 397

 

https://pastebin.com/tR05rrhN

 

Link to comment
Share on other sites

30 minutes ago, thepsolartek said:

thanks for your comment mate but it will not work for me as i use the 382 rev

 

Try to adapt it and let us know if you have any challenge - we can help.

Link to comment
Share on other sites

if i paste only the part that rootware post(everywhere+without devlin's post) in serverlist.java i dont have any red lines. but is that enough or i have to make more changes in serverlist.java?

Link to comment
Share on other sites

@Vision stop deleting my discord, you know i offer free services and i help tons of people in my discord

 

 

i will rewrite my discord #Amenadiel 2435 i can adapt it for u

Link to comment
Share on other sites

12 minutes ago, Amenadiel said:

@Vision stop deleting my discord, you know i offer free services and i help tons of people in my discord

 

 

i will rewrite my discord #Amenadiel 2435 i can adapt it for u

added

10 hours ago, Trance said:

 

Try to adapt it and let us know if you have any challenge - we can help.

as i understand rootware post a method to add in the java file am i right? so i paste this method in my eclipse and i have not a red line. but my question now is. do i have to add devlins method too or i can compile the server  with rootware method only?

Edited by thepsolartek
Link to comment
Share on other sites

On 4/24/2022 at 5:15 PM, Amenadiel said:

@Vision stop deleting my discord, you know i offer free services and i help tons of people in my discord

 

 

i will rewrite my discord #Amenadiel 2435 i can adapt it for u

 

I didn't delete anything someone else did.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...