Original vs deobfuscated ULink.dll

tarynkelley

Retired Staff
Retired Staff
Trusted Member
Nov 14, 2015
575
178
28
Parts Unknown
Hello,

what are the exact differences between the Original and the deobfustacted ULink.dll?

Is the ULink Flood protection only with the deofuscated dll?

Did someone ever compare the performance results etc between the original and deobfustacted dll?

I found these infos in the readme.txt:

Hey there!

I wanted to let you know that i deobfuscated the original ulink.dll
That means that the ulink communication should be like 3x faster.
The server runs stable and I also patched the method that was flooding.
I don't exactly know how to fix that error yet, so for now I bypass the flood
This means that when the flood occurs there will be no RED messages at all
on console, neither on the logs. The server should stay online for a longer time
too.

The only thing I know at the moment is that when this error happens
there are points when you can't join the server, stops at waiting for character
When that happens the server is still stable you are able to save everything in
the console by typing fougerite.save

If you don't want to use this ulink then you should return to the original file.
(Didn't include that)

Also note that I included a prepatched ulink dll and an empty/fresh dll file too.

The patcher now requires the fresh ulink dll, so if you don't want to use the
new dll you can still patch the new one with an assemblycsharp.dll and only
copy the assembly dll on the server.

I would still recommend switching to the deobfuscated ulink.dll

Have fun
The "waiting for character" bug is a big problem for me since I can't monitor the server 24/7.
New players will not able to join because of "waiting for character".

Is there any way to bypass or fix this error or maybe to autorestart the server when its happening?
 
Last edited:

DreTaX

Probably knows the answer...
Administrator
Jun 29, 2014
4,093
4,784
113
At your house.
github.com
Hello,

what are the exact differences between the Original and the deobfustacted ULink.dll?

Is the ULink Flood protection only with the deofuscated dll?

Did someone ever compare the performance results etc between the original and deobfustacted dll?

I found these infos in the readme.txt:



The "waiting for character" bug is a big problem for me since I can't monitor the server 24/7.
New players will not able to join because of "waiting for character".

Is there any way to bypass or fix this error or maybe to autorestart the server when its happening?
The deobfuscated dll in theory should be faster. It also allows me to patch uLink in and patch the methods that used to cause errors. I actually know that sometimes that happens, the client receives a message that time. It would be great to know the full message from the console.
 

tarynkelley

Retired Staff
Retired Staff
Trusted Member
Nov 14, 2015
575
178
28
Parts Unknown
Some more errors:

Code:
NullReferenceException: Object reference not set to an instance of an object
Creator failed to correctly setup the uLinkNetworkView "hatchet.irp(Clone)" (Vie
wID Unassigned), which is it's responsibility. Please make sure your custom Netw
orkInstantiator is calling NetworkInstantiatorUtility.Instantiate or NetworkInst
antiateArgs.SetupNetworkView.
yea the code below wasn't pointless..
Failed to invoke Method InventoryHolder:DoBeltUse with 1 parameters: 2
System.Reflection.TargetInvocationException: Exception has been thrown by the ta
rget of an invocation. ---> System.ArgumentOutOfRangeException: Argument is out
of range.
Parameter name: viewID
  at Class46.method_124 (NetworkViewID networkViewID_0, RPCMode rpcmode_0) [0x00
000] in <filename unknown>:0
  at uLink.NetworkViewBase.RPC (NetworkFlags flags, System.String rpcName, RPCMo
de mode, System.Object[] args) [0x00000] in <filename unknown>:0
  at uLink.NetworkView.RPC (NetworkFlags flags, System.String rpcName, RPCMode m
ode, System.Object[] args) [0x00000] in <filename unknown>:0
  at uLink.NetworkView.RPC (System.String rpcName, RPCMode mode, System.Object[]
args) [0x00000] in <filename unknown>:0
  at HeldItem`1[T].OnSetActive (Boolean isActive) [0x00000] in <filename unknown
>:0
  at WeaponItem`1[T].OnSetActive (Boolean isActive) [0x00000] in <filename unkno
wn>:0
  at HeldItem`1[T].OnDeactivate () [0x00000] in <filename unknown>:0
  at MeleeWeaponDataBlock+ITEM_TYPE.IHeldItem.OnDeactivate () [0x00000] in <file
name unknown>:0
  at PlayerInventory.DoSetActiveItem (.InventoryItem item) [0x00000] in <filenam
e unknown>:0
  at Inventory.SetActiveItemManually (Int32 itemIndex, .ItemRepresentation itemR
ep, Nullable`1 itemRepID) [0x00000] in <filename unknown>:0
  at HeldItem`1[T].OnBeltUse () [0x00000] in <filename unknown>:0
  at InventoryHolder.DoBeltUse (Int32 beltNum) [0x00000] in <filename unknown>:0

  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (ob
ject,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] par
ameters) [0x00000] in <filename unknown>:0
  at Struct6.method_1 (System.Object object_0, System.Object[] object_1) [0x0000
0] in <filename unknown>:0

Failed to invoke Method Context:A with 2 parameters: NGC ViewID 152305693 (2324:
30), Sender: Player Client (47), timestamp: 4281.009
System.Reflection.TargetInvocationException: Exception has been thrown by the ta
rget of an invocation. ---> System.NullReferenceException: Object reference not
set to an instance of an object
  at Context.A (NetEntityID hit, uLink.NetworkMessageInfo info) [0x00000] in <fi
lename unknown>:0
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (ob
ject,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] par
ameters) [0x00000] in <filename unknown>:0
  at Struct6.method_1 (System.Object object_0, System.Object[] object_1) [0x0000
0] in <filename unknown>:0

Failed to invoke Method Context:A with 2 parameters: NGC ViewID 152764945 (2331:
530), Sender: Player Client (26), timestamp: 4284.575
System.Reflection.TargetInvocationException: Exception has been thrown by the ta
rget of an invocation. ---> System.NullReferenceException: Object reference not
set to an instance of an object
  at Context.A (NetEntityID hit, uLink.NetworkMessageInfo info) [0x00000] in <fi
lename unknown>:0
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (ob
ject,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] par
ameters) [0x00000] in <filename unknown>:0
  at Struct6.method_1 (System.Object object_0, System.Object[] object_1) [0x0000
0] in <filename unknown>:0
Failed to invoke Method Context:A with 2 parameters: NGC ViewID 137167015 (2093:
168), Sender: Player Client (30), timestamp: 4284.935
System.Reflection.TargetInvocationException: Exception has been thrown by the ta
rget of an invocation. ---> System.NullReferenceException: Object reference not
set to an instance of an object
  at Context.A (NetEntityID hit, uLink.NetworkMessageInfo info) [0x00000] in <fi
lename unknown>:0
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (ob
ject,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] par
ameters) [0x00000] in <filename unknown>:0
  at Struct6.method_1 (System.Object object_0, System.Object[] object_1) [0x0000
0] in <filename unknown>:0
Failed to invoke Method Context:A with 2 parameters: NGC ViewID 152764704 (2331:
289), Sender: Player Client (25), timestamp: 4298.411
System.Reflection.TargetInvocationException: Exception has been thrown by the ta
rget of an invocation. ---> System.NullReferenceException: Object reference not
set to an instance of an object
  at Context.A (NetEntityID hit, uLink.NetworkMessageInfo info) [0x00000] in <fi
lename unknown>:0
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (ob
ject,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] par
ameters) [0x00000] in <filename unknown>:0
  at Struct6.method_1 (System.Object object_0, System.Object[] object_1) [0x0000
0] in <filename unknown>:0
Saving to 'rust_server_Data/rust_island_2013.sav'
Saved 47861 Object(s). Took 2.18825689999994 seconds.

Failed to invoke Method Context:A with 2 parameters: NGC ViewID 99811403 (1523:7
6), Sender: Player Client (52), timestamp: 4316.331
System.Reflection.TargetInvocationException: Exception has been thrown by the ta
rget of an invocation. ---> System.NullReferenceException: Object reference not
set to an instance of an object
  at Context.A (NetEntityID hit, uLink.NetworkMessageInfo info) [0x00000] in <fi
lename unknown>:0
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (ob
ject,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] par
ameters) [0x00000] in <filename unknown>:0
  at Struct6.method_1 (System.Object object_0, System.Object[] object_1) [0x0000
0] in <filename unknown>:0
Failed to invoke Method Context:A with 2 parameters: NGC ViewID 73793829 (1126:2
94), Sender: Player Client (11), timestamp: 4334.77
System.Reflection.TargetInvocationException: Exception has been thrown by the ta
rget of an invocation. ---> System.NullReferenceException: Object reference not
set to an instance of an object
  at Context.A (NetEntityID hit, uLink.NetworkMessageInfo info) [0x00000] in <fi
lename unknown>:0
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (ob
ject,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] par
ameters) [0x00000] in <filename unknown>:0
  at Struct6.method_1 (System.Object object_0, System.Object[] object_1) [0x0000
0] in <filename unknown>:0
Failed to invoke Method Context:A with 2 parameters: NGC ViewID 73793779 (1126:2
44), Sender: Player Client (15), timestamp: 4352.463
System.Reflection.TargetInvocationException: Exception has been thrown by the ta
rget of an invocation. ---> System.NullReferenceException: Object reference not
set to an instance of an object
  at Context.A (NetEntityID hit, uLink.NetworkMessageInfo info) [0x00000] in <fi
lename unknown>:0
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (ob
ject,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invoke
Attr, System.Reflection.Binder binder, System.Object[] parameters, System.Global
ization.CultureInfo culture) [0x00000] in <filename unknown>:0
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] par
ameters) [0x00000] in <filename unknown>:0
  at Struct6.method_1 (System.Object object_0, System.Object[] object_1) [0x0000
0] in <filename unknown>:0
 

salva

Friendly self-taught developer
Administrator
Jan 31, 2016
577
612
63
Any progress in this conversation ??? .. sometimes I have the same problem here commented
 

salva

Friendly self-taught developer
Administrator
Jan 31, 2016
577
612
63
In my case .. this happens to me every 1-2 days, sometimes it's every day

Code:
(76561197960967148) (89.186.97.79)
[1/7/2017 11:00:10 AM] [Debug] [CHAT-CMD] "Ekko" executed "/home 1"
[1/7/2017 11:00:10 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:10 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:10 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:10 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC None) was not sent because a connection to Player Client (143) was not found!
[1/7/2017 11:00:12 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:12 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:12 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:12 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC None) was not sent because a connection to Player Client (143) was not found!
[1/7/2017 11:00:14 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:14 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:14 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:14 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC None) was not sent because a connection to Player Client (143) was not found!
[1/7/2017 11:00:16 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:16 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:16 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:16 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC None) was not sent because a connection to Player Client (143) was not found!
[1/7/2017 11:00:18 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:18 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:18 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:18 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC None) was not sent because a connection to Player Client (143) was not found!
[1/7/2017 11:00:20 AM] [Error] [IronPython] Error in plugin HomeSystem:
[1/7/2017 11:00:20 AM] [Error] Traceback (most recent call last):
  File "<string>", line 311, in JobTimerCallback
SystemError: Object reference not set to an instance of an object
[1/7/2017 11:00:20 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:20 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:20 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:20 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC None) was not sent because a connection to Player Client (143) was not found!
[1/7/2017 11:00:22 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:22 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:22 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:22 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC None) was not sent because a connection to Player Client (143) was not found!
[1/7/2017 11:00:24 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:24 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:24 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:24 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC ChangeGroup) was not sent because a connection to Player Unassigned (0) was not found!
[1/7/2017 11:00:24 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:24 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:24 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:24 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC None) was not sent because a connection to Player Client (143) was not found!
[1/7/2017 11:00:26 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:26 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:26 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:26 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC None) was not sent because a connection to Player Client (143) was not found!
[1/7/2017 11:00:28 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:28 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:28 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:28 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC None) was not sent because a connection to Player Client (143) was not found!
[1/7/2017 11:00:30 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:30 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:30 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:30 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC None) was not sent because a connection to Player Client (143) was not found!
[1/7/2017 11:00:31 AM] [Debug] ===Fougerite uLink===
[1/7/2017 11:00:31 AM] [Debug] [Fougerite uLink] Detected RPC Failing Player: [SPARTA] lolers-76561197961356899 Trying to kick...
[1/7/2017 11:00:31 AM] [Debug] [Fougerite uLink] Server says It's offline. Not touching.
[1/7/2017 11:00:31 AM] [Debug] [Fougerite uLink] Private RPC (internal RPC ChangeGroup) was not sent because a connection to Player Unassigned (0) was not found!