Most visitors online was 17251 , on 24 May 2024
Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!
Join Today!agreeThat 4GB thing, the "GFX issues": Are you talking about that annoying problem where if you enter too many maps in a server (v83 for example), and you begin to see things disappear, ending with a crash? Would be nice to have a 4GB v83 version of that. I'm assuming it's 4GB due to something relating to it being a 32-bit program.
Hendi48 I'm using the dockerized Java server that I created https://forum.ragezone.com/f427/v62-docker-1150928/ . Zero disconnection problems when I used to own an actual Windows computer dedicated to playing the game, albeit with a different .exe on that machine.
Have you tried GMSv62_4GB.exe on wine? One scenario that I've come across that seems to disconnect me quickly (like, within a few attacks) is killing mobs in HHG1 with the boomerang step attack. Spawning Zakum also takes me back to the login screen within a few minutes. Mind giving that a shot? Thanks!
I've investigated this issue and was able to reproduce it with your container. It's not an issue with Wine or the 4GB client. I ran the server on WSL2 and the client natively on Windows 10. The disconnect happens because the client fails a packet verification check, meaning it received bogus data from the server. This can happen because of lacking synchronization when the server is encrypting packets concurrently. A fix that seemed to work for me in your source is to move the getPacketHeader call into the synchronized block in MaplePacketEncoder.java. Said function accesses the IV, which must always be guarded for concurrent access.
Now the interesting question is, why does the issue not occur with the existing v62 localhost? Well, that's because someone went and patched the check in the client to skip invalid packets and go to the next one. Patch the client in order to compensate for crappy servers. Can't make this poop up lol.
0118:err:ntdll:RtlpWaitForCriticalSection section 00110094 "dlls/ntdll/heap.c: main process heap section" wait timed out in thread 0118, blocked by 0024, retrying (60 sec)
Hm, that should also be happening on Windows, then. Anyway, you already mentioned List.wz: This basically contains a list of Mob imgs that have additional encryption applied to their canvases. Since you said mobs specifically crash, I assume the repacker doesn't apply this encryption and the client then faults after having "decrypted" garbage. As a quick fix, you could try deleting List.wz or setting it to an empty file.@Hendi48 If you don't mind me pestering you once more, do you mind checking this out?
You must be registered to see links
It's a process to convert v62 .wz files (except List.wz) into XML dumps, then convert those XML dumps back into encrypted .wz files. The use case for this is to be able to "edit" .wz files (by just changing plain old XML files) without having to use the harepacker GUI. When I use those re-encoded .wz files in wine, every single thing seems to work in the game except when I enter a map with monsters, wine crashes and spits this into the console:
Code:0118:err:ntdll:RtlpWaitForCriticalSection section 00110094 "dlls/ntdll/heap.c: main process heap section" wait timed out in thread 0118, blocked by 0024, retrying (60 sec)
I couldn't find a workable solution through extensive googling.
The entrypoint for the script is here:You must be registered to see links
Yeah, the java 6 image was also segfaulting for me and I had to use 7.I also updatedYou must be registered to see linksto fix the race condition and update the base java image; my docker build cache contained a very stale java 6 image and when I cleared the cache, using java 6 broke everything. Java 7 is compatible because it still uses the old rhino JS engine.
FIND: A1 C8 1A BF
CHANGE TO: B8 00 00 00
Hm, that should also be happening on Windows, then. Anyway, you already mentioned List.wz: This basically contains a list of Mob imgs that have additional encryption applied to their canvases. Since you said mobs specifically crash, I assume the repacker doesn't apply this encryption and the client then faults after having "decrypted" garbage. As a quick fix, you could try deleting List.wz or setting it to an empty file.
Yeah, the java 6 image was also segfaulting for me and I had to use 7.
error code: -2147287038 (Unknown error 0x80030002)
Deleting List.wz or creating a zero-byte file called List.wz makes the game unable to start.
Code:error code: -2147287038 (Unknown error 0x80030002)
It's beyond me what causes mobs to fail. Strangely enough, I'm able to spawn Zakum/Horntail on the admin account by typing !zakum or !horntail into the chat and there's no crashing, but as soon as I step into a map with snails I crash.