[Help?] For some reason localhost now opens updater.. READ ON!
Soooo.
What happens is that when i open up localhost.exe (v75) it opens up the maple updater.
The weird part is that it was working fine before.
What hapened:
I was running MetroMS/Shootsource/Bubblesdev rev 206 this morning. All was fine. I later found this rev:
http://forum.ragezone.com/f427/sourc...-flame-715545/
Its rev 248 uploaded by Moogra.
I re-compiled. Re-created the database. Replaced all old Java files with the new ones and started the server using the provided .bat. The server starts as it should and gives no errors at all.
From that moment onward the localhost gives me a patcher.
I have allready tried a lot, but the problem seems to persist. Any idea's? Because i am running out and otherwise i will try to revert everything back to original.
-- I tried to launch rev 206 again but it gave me the same problem, i thought since the only thing changed was the DB and the java files it should work fine if i placed the java files of that source where they should be, it launched fine but the localhost redirected me again.
Could it be the db?
If you need more info/screens i can easily provide...
Re: [Help?] For some reason localhost now opens updater.. READ ON!
The MapleStory client will attempt to update if it received a higher version. Are you completely sure this source is v75?...
Re: [Help?] For some reason localhost now opens updater.. READ ON!
If you're trying to connect to another version via private server, it will open the auto update as Fraysa said,but also if you attempt to start the normal GMS v75 in your case, it would also open the patcher
Re: [Help?] For some reason localhost now opens updater.. READ ON!
Quote:
Originally Posted by
Fraysa
The MapleStory client will attempt to update if it received a higher version. Are you completely sure this source is v75?...
Yeah i'm pretty sure, but i could check. Where in the source code is the version defined? (Sorry, I used to know all of this but it's been over three years since i even tried to do anything with Maplestory servers)
The weird part is that when i just use the .jar from the previous rev that i had (Rev. 206) it still gives the same problem.
And since i was at first able to log in with 206 i am fairly sure that one is v75.
--edit:
I can imagine that with all the different versions i have been using i might have mixed up the jar files so to be sure i'm importing the original rev.206 files in netbeans and building a new jar out of those.
Re: [Help?] For some reason localhost now opens updater.. READ ON!
So just found this:
MapleServerHandler.java
PHP Code:
package net.sf.odinms.net;
import net.sf.odinms.client.MapleClient;
import net.sf.odinms.net.channel.ChannelServer;
import net.sf.odinms.net.login.LoginWorker;
import net.sf.odinms.tools.HexTool;
import net.sf.odinms.tools.MapleAESOFB;
import net.sf.odinms.tools.MaplePacketCreator;
import net.sf.odinms.tools.data.input.ByteArrayByteStream;
import net.sf.odinms.tools.data.input.GenericSeekableLittleEndianAccessor;
import net.sf.odinms.tools.data.input.SeekableLittleEndianAccessor;
import org.apache.mina.common.IdleStatus;
import org.apache.mina.common.IoHandlerAdapter;
import org.apache.mina.common.IoSession;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class MapleServerHandler extends IoHandlerAdapter {
private final static short MAPLE_VERSION = 75;
private PacketProcessor processor;
private int channel = -1;
public MapleServerHandler(PacketProcessor processor) {
this.processor = processor;
}
public MapleServerHandler(PacketProcessor processor, int channel) {
this.processor = processor;
this.channel = channel;
}
[MENTION=2000004426]Override[/MENTION]
public void messageSent(IoSession session, Object message) throws Exception {
Runnable r = ((MaplePacket) message).getOnSend();
if (r != null) {
r.run();
}
super.messageSent(session, message);
}
[MENTION=2000004426]Override[/MENTION]
public void exceptionCaught(IoSession session, Throwable cause) throws Exception {
System.out.println(((MapleClient) session.getAttribute(MapleClient.CLIENT_KEY)).getAccountName() + " caught an exception: " + cause.toString());
cause.printStackTrace();
}
[MENTION=2000004426]Override[/MENTION]
public void sessionOpened(IoSession session) throws Exception {
System.out.println("IoSession with " + session.getRemoteAddress() + " opened.");
if (channel > -1)
if (ChannelServer.getInstance(channel).isShutdown()) {
session.close();
return;
}
byte key[] = {0x13, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, (byte) 0xB4, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x33, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00};
byte ivRecv[] = {70, 114, 122, 82};
byte ivSend[] = {82, 48, 120, 115};
ivRecv[3] = (byte) (Math.random() * 255);
ivSend[3] = (byte) (Math.random() * 255);
MapleAESOFB sendCypher = new MapleAESOFB(key, ivSend, (short) (0xFFFF - MAPLE_VERSION));
MapleAESOFB recvCypher = new MapleAESOFB(key, ivRecv, MAPLE_VERSION);
MapleClient client = new MapleClient(sendCypher, recvCypher, session);
client.setChannel(channel);
if (client.hasBannedIP() || client.hasBannedMac())
session.close();
session.write(MaplePacketCreator.getHello(MAPLE_VERSION, ivSend, ivRecv, false));
session.setAttribute(MapleClient.CLIENT_KEY, client);
session.setIdleTime(IdleStatus.READER_IDLE, 30);
session.setIdleTime(IdleStatus.WRITER_IDLE, 30);
}
[MENTION=2000004426]Override[/MENTION]
public void sessionClosed(IoSession session) throws Exception {
synchronized (session) {
MapleClient client = (MapleClient) session.getAttribute(MapleClient.CLIENT_KEY);
if (client != null) {
client.disconnect();
LoginWorker.getInstance().deregisterClient(client);
session.removeAttribute(MapleClient.CLIENT_KEY);
}
}
super.sessionClosed(session);
}
[MENTION=2000004426]Override[/MENTION]
public void messageReceived(IoSession session, Object message) throws Exception {
byte[] content = (byte[]) message;
SeekableLittleEndianAccessor slea = new GenericSeekableLittleEndianAccessor(new ByteArrayByteStream(content));
short packetId = slea.readShort();
MapleClient client = (MapleClient) session.getAttribute(MapleClient.CLIENT_KEY);
MaplePacketHandler packetHandler = processor.getHandler(packetId);
if (packetHandler != null && packetHandler.validateState(client))
try {
packetHandler.handlePacket(slea, client);
} catch (Throwable t) {
}
// else if (packetHandler == null)
// System.out.println(slea.toString());
}
[MENTION=2000004426]Override[/MENTION]
public void sessionIdle(final IoSession session, final IdleStatus status) throws Exception {
MapleClient client = (MapleClient) session.getAttribute(MapleClient.CLIENT_KEY);
if (client != null)
client.sendPing();
super.sessionIdle(session, status);
}
}
So it is definitely v75. This makes me wonder even more why i am getting a patcher. Still working on trying the previous rev again.
--edit
Rebuilding and rev206 and launching that was succesfull. I still have no clue what went wrong with the later revision.
Re: [Help?] For some reason localhost now opens updater.. READ ON!
Make sure if you played any other servers that their re director is closed
Re: [Help?] For some reason localhost now opens updater.. READ ON!
Quote:
Originally Posted by
sunnyboy
Make sure if you played any other servers that their re director is closed
I don't play other servers, and i made sure no such program as a redirector was running. Also i am using v75 so there are no re-directors required. (only for connecting to the host, using the host, when running the server publicly on my WAN-ip, then i need a loopback in order to play for myself)
And when i got the error there was no loopback installed. But since reverting to rev206 worked i'll just leave it like this. So now i can just peacfully mess around with the rev206 code.
Thanks for thinking with me! If i ever figure out what caused it i will post it here.
Re: [Help?] For some reason localhost now opens updater.. READ ON!
can you post the getHello packet from both revisions?
Re: [Help?] For some reason localhost now opens updater.. READ ON!
Quote:
Originally Posted by
NemesisToKill
can you post the getHello packet from both revisions?
Haha thanks, can't believe i forgot to check that. This is the gethello from the later rev:
PHP Code:
}
byte key[] = {0x13, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, (byte) 0xB4, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x33, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00};
byte ivRecv[] = {70, 114, 122, 82};
byte ivSend[] = {82, 48, 120, 115};
ivRecv[3] = (byte) (Math.random() * 255);
ivSend[3] = (byte) (Math.random() * 255);
MapleAESOFB sendCypher = new MapleAESOFB(key, ivSend, (short) (0xFFFF - 83));
MapleAESOFB recvCypher = new MapleAESOFB(key, ivRecv, (short) 83);
MapleClient client = new MapleClient(sendCypher, recvCypher, session);
client.setChannel(channel);
session.write(MaplePacketCreator.getHello((short) 83, ivSend, ivRecv));
session.setAttribute(MapleClient.CLIENT_KEY, client);
Kinda weird that one file suggests its v75 and gethello is set for v83. But this explains the entire problem.