Gotcha! Here's the problem!!!!!
Check those two screens carefully, you will see the diff 🙂
While you've setting up the UPnp to False, how can LoginHost be able to be enabled with the proper ip from whatismyip, also you have to add the same ip to the "ipconfig.xsml" it can be also edited with l2 file edit.....
I checked everything multiple times trying to solve this but I will gladly show you the server properties (Scrn 1=login/Scrn 2=Gserver). Something that does trouble me though is that in the configs it says "# WARNING: External/Internal IPs are now inside "ipconfig.xml" file." which is weird because it is either outdated from previous pack versions, or I am missing something. I searched every folder and there's only IPconfig.xsd which should only be the structure for the xml file. However people can still join normally (until the problem comes up).
Also in the gameserver console, when the server starts I do get this which I have no idea how I could change. https://prnt.sc/C0xopNurFYm2
Name appearing as null is fine, since it's the name the pet owner decides to put which is taken in consideration - and by default, no pet got any name.
The "null" appearance only occurs on custom (admin) messages, so it's not problematic aswell since nowhere else client finds such info. We can use template name if no personal name exists, but that's only for aesthetic purpose. I will make a commit for that.
The inventory flute with "no name exists" is also, perfectly fine from the moment the owner didn't set any name (same on L2OFF aswell). If he sets a name, the value is edited.
About the interaction itself, I tbh don't remember if I had to fix such issue between rev 401-latest. It works as intented on the PTS, which uses latest..