|
You last visited: Today at 23:05
Advertisement
[Release/Bugfix] New login packet by Entwell
Discussion on [Release/Bugfix] New login packet by Entwell within the Nostale forum part of the MMORPGs category.
08/08/2018, 19:27
|
#1
|
elite*gold: 0
Join Date: Feb 2015
Posts: 62
Received Thanks: 15
|
[Release/Bugfix] New login packet by Entwell
Basically, Entwell (or Gameforge, idk) has changed their login packet parts and your login server will crash if you log in with the lastest NosTale client to your server.
Fix:
Go -> OpenNos.GameObject.Packets.ClientPackets.LoginPack et.cs LINE 28
Replace this:
Code:
[PacketIndex(4)]
public string ClientData { get; set; }
For this:
Code:
[PacketIndex(4)]
public string ClientDataOld { get; set; }
[PacketIndex(5)]
public string ClientData { get; set; }
Then, go OpenNos.Handler.LoginPacketHandler.cs LINE 149 (I'm not sure about the code line)
And replace this:
Code:
string[] clientData = loginPacket.ClientData.Split('.');
For this:
Code:
string[] clientData = loginPacket.ClientData.Split('.');
if(clientData.Length < 2)
{
clientData = loginPacket.ClientDataOld.Split('.');
}
Done, it's fixed.
|
|
|
08/08/2018, 20:19
|
#2
|
elite*gold: 0
Join Date: Oct 2014
Posts: 5
Received Thanks: 0
|
what is the file to change?
|
|
|
08/08/2018, 20:27
|
#3
|
elite*gold: 0
Join Date: Jun 2011
Posts: 126
Received Thanks: 99
|
Quote:
Originally Posted by Tbp123
Go -> OpenNos.GameObject.Packets.ClientPackets.LoginPack et.cs LINE 28
Then, go OpenNos.Handler.LoginPacketHandler.cs LINE 149 (I'm not sure about the code line)
Done, it's fixed.
|
i think there
|
|
|
08/08/2018, 22:03
|
#4
|
elite*gold: 0
Join Date: Jan 2017
Posts: 36
Received Thanks: 16
|
In reality it is less complicated, but ok °-°
|
|
|
08/10/2018, 02:12
|
#5
|
elite*gold: 0
Join Date: Feb 2015
Posts: 62
Received Thanks: 15
|
Quote:
Originally Posted by GGGGame
In reality it is less complicated, but ok °-°
|
Well, you could just change the packet index of the ClientData var, but what if someone with the old client tries to log in
|
|
|
08/10/2018, 02:21
|
#6
|
elite*gold: 195
Join Date: Mar 2015
Posts: 331
Received Thanks: 200
|
Great job :3
|
|
|
08/11/2018, 00:31
|
#7
|
elite*gold: 0
Join Date: May 2009
Posts: 1,005
Received Thanks: 1,018
|
this is not a really good way to fix the login packet.
This is a better way:
|
|
|
08/11/2018, 12:10
|
#8
|
elite*gold: 0
Join Date: Feb 2015
Posts: 62
Received Thanks: 15
|
Quote:
Originally Posted by 0Lucifer0
this is not a really good way to fix the login packet.
This is a better way: 
|
I didn't know what was the "NONE" ^^
|
|
|
08/11/2018, 12:16
|
#9
|
elite*gold: 0
Join Date: May 2009
Posts: 1,005
Received Thanks: 1,018
|
None just mean not any / again a new way to null value on packet... seems entwell doesn’t care about doing the same thing 10 different way
|
|
|
08/11/2018, 12:36
|
#10
|
elite*gold: 0
Join Date: Feb 2015
Posts: 62
Received Thanks: 15
|
Quote:
Originally Posted by 0Lucifer0
None just mean not any / again a new way to null value on packet... seems entwell doesn’t care about doing the same thing 10 different way
|
about none
i meant the variable was filled with what, if its not none, what would it be, so i didnt know what it was so i just made it a string
and yeh, but why does entwell do this, im wondering
|
|
|
08/11/2018, 12:45
|
#11
|
elite*gold: 0
Join Date: May 2009
Posts: 1,005
Received Thanks: 1,018
|
It’s a guid
|
|
|
08/12/2018, 00:39
|
#12
|
elite*gold: 0
Join Date: Jul 2013
Posts: 409
Received Thanks: 1,067
|
If you want to add a GUID to the loginpacket, you have to replace the Convert.ChangeType in the packetfactory with a TypeDescriptor.GetConverter, for example:
before:
return Convert.ChangeType(currentValue, packetPropertyType.GenericTypeArguments[0]);
after:
return TypeDescriptor.GetConverter(packetPropertyType.Gen ericTypeArguments[0]).ConvertFromInvariantString(currentValue);
|
|
|
03/14/2021, 19:21
|
#13
|
elite*gold: 0
Join Date: Mar 2021
Posts: 3
Received Thanks: 1
|
This fix doesn't work anymore?
I just get another error after this fix..
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at OpenNos.Handler.LoginPacketHandler.VerifyLogin(Log inPacket loginPacket) in C:\Users\Administrator\Desktop\OpenNos-dev\OpenNos.Handler\LoginPacketHandler.cs:line 152
at OpenNos.GameObject.ClientSession.TriggerHandler(St ring packetHeader, String packet, Boolean force, Boolean ignoreAuthority) in C:\Users\Administrator\Desktop\OpenNos-dev\OpenNos.GameObject\Networking\ClientSession.cs :line 550
at OpenNos.GameObject.ClientSession.HandlePackets() in C:\Users\Administrator\Desktop\OpenNos-dev\OpenNos.GameObject\Networking\ClientSession.cs :line 467
at OpenNos.GameObject.ClientSession.<.ctor>b__12_0(In t64 x) in C:\Users\Administrator\Desktop\OpenNos-dev\OpenNos.GameObject\Networking\ClientSession.cs :line 87
at System.Reactive.AnonymousSafeObserver`1.OnNext(T value)
at System.Reactive.Linq.ObservableImpl.Timer.Periodic ._.Tick(Int64 count)
at System.Reactive.Concurrency.DefaultScheduler.<>c__ DisplayClass7_0`1.<SchedulePeriodic>b__1()
at System.Reactive.Concurrency.AsyncLock.Wait(Action action)
at System.Threading.ExecutionContext.RunInternal(Exec utionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionCon text executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.TimerQueueTimer.CallCallback()
at System.Threading.TimerQueueTimer.Fire()
at System.Threading.QueueUserWorkItemCallback.System. Threading.IThreadPoolWorkItem.ExecuteWorkItem()
at System.Threading.ThreadPoolWorkQueue.Dispatch()
|
|
|
03/14/2021, 19:42
|
#14
|
elite*gold: 0
Join Date: Jul 2013
Posts: 409
Received Thanks: 1,067
|
Quote:
Originally Posted by m.one
This fix doesn't work anymore?
I just get another error after this fix..
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at OpenNos.Handler.LoginPacketHandler.VerifyLogin(Log inPacket loginPacket) in C:\Users\Administrator\Desktop\OpenNos-dev\OpenNos.Handler\LoginPacketHandler.cs:line 152
at OpenNos.GameObject.ClientSession.TriggerHandler(St ring packetHeader, String packet, Boolean force, Boolean ignoreAuthority) in C:\Users\Administrator\Desktop\OpenNos-dev\OpenNos.GameObject\Networking\ClientSession.cs :line 550
at OpenNos.GameObject.ClientSession.HandlePackets() in C:\Users\Administrator\Desktop\OpenNos-dev\OpenNos.GameObject\Networking\ClientSession.cs :line 467
at OpenNos.GameObject.ClientSession.<.ctor>b__12_0(In t64 x) in C:\Users\Administrator\Desktop\OpenNos-dev\OpenNos.GameObject\Networking\ClientSession.cs :line 87
at System.Reactive.AnonymousSafeObserver`1.OnNext(T value)
at System.Reactive.Linq.ObservableImpl.Timer.Periodic ._.Tick(Int64 count)
at System.Reactive.Concurrency.DefaultScheduler.<>c__ DisplayClass7_0`1.<SchedulePeriodic>b__1()
at System.Reactive.Concurrency.AsyncLock.Wait(Action action)
at System.Threading.ExecutionContext.RunInternal(Exec utionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionCon text executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.TimerQueueTimer.CallCallback()
at System.Threading.TimerQueueTimer.Fire()
at System.Threading.QueueUserWorkItemCallback.System. Threading.IThreadPoolWorkItem.ExecuteWorkItem()
at System.Threading.ThreadPoolWorkQueue.Dispatch()
|
No, this fix doesn't work anymore, this post is from 2018. That was before Entwell/Gameforge started implementing internationalization in their client. The NsTesT packet has changed a lot since then. You can probably find it somewhere on this forum by taking a look, since people are constantly asking for a fix
|
|
|
 |
Similar Threads
|
[Release] CheckClientVersion Compare-BugFix
12/30/2013 - Metin2 PServer Guides & Strategies - 32 Replies
If u don't know, in the client and in the game there's a "number" (a const char* converted as a number with atoi in game, ps. atoi evaluates to 0 if the "number" contains characters not-digits)
The default value is 1215955205 (g_stClientVersion), if the client version is smaller than the game ur character'll disconnect in 10 seconds with a message like this "U must patch the client to play" (u can declare it in locale_string.txt)
The problem is this:
client 1215955205 server 1215955205 =...
|
[C#] About packet injection (login packet)
07/24/2013 - SRO Coding Corner - 3 Replies
hello
im developing a new bot called Silkroad Fusion and i did some research and i found about Drew's Silkroad security so i used it and i made my own proxy
and i needed a little help with the login packet
here is my code
Packet login = new Packet((ushort)0x6102);
login.WriteUInt8(Proxy.SRLocal);//isro locale
login.WriteAscii(ID.Text);
login.WriteAscii(PW.Text);
login.WriteAscii("");//mobile vertification code
...
|
[EP2] Tool login bugfix
11/24/2012 - Last Chaos Private Server - 6 Replies
Hallöchen ich release mal ein kleines tool :
+Loginbugfix
+Linux & Windows
-lager funktioniert nicht mehr(untested)
Windows:
mit der beigelegten .bat
Linux:
java -jar auto.jar
|
Nostale(DE) Multiclient (Entwell) + Self-Update + TuT
05/12/2010 - Nostale - 4 Replies
Aloha an alle NosZocker und die, die es werden wollen.
Da es ja unzählige Threads mit folgendem Thema gibt, poste ich hier ein Selfupdatepaket.
Alles nötige findet ihr in dem beligendem TuT.
Ich nehme die Copyrights nur für das TuT, den Rest hab ich nicht selbst erstellt.
Downloadlink
Achtung: Zum öffnen des Pakets wird WinRAR benötigt.
Ausserdem hafte ich für nichts, was ihr damit anstellt.
Nach einer Maintance zu beachten: erst Nos normal starten, um patchen zu lassen, das macht der...
|
All times are GMT +1. The time now is 23:07.
|
|