Differences between the MoparClassic client and Reines' RSCD client

Hi guys,

I’ve just been playing around for a few hours with RSC and I just wanted to check - is the MoparClassic client (found here: https://github.com/xetr0v/mpc-client) the best client to use, or is Reines’ RSCD client better?
I just noticed that their packet decoders are quite different, so what other differences exist between these two clients? To be honest, I’m not even sure on the version numbers.

Can anyone provide some insight? My Elysium server from years ago was built to work with the RSCD client. But if this client isn’t considered ‘good’, and the MoparClassic client is better, then I’d rather not have my new code operate with a wrong client version.

Thanks.

What’s important for general servers : RSCD cache. (People like to add new content/edit things)
You can also check out these clients: https://bitbucket.org/eggsampler/rsc/src

pushing my memory, but the RSCD client has some packet corruption issues that only become apparent once more users are online and packets get bigger. I believe the way the client received the packet and joined it together and some rare issues. I didn’t bother fixing it and just implemented stork’s one on varekd which probably didn’t have the same level of packet compression, but who gives a shit its all so small anyway.

and i know nothing about moparclassic client or where it was derived from.

Another note: the 202 client and lower versions have a different “feeling” while playing compared to the 204+. IIRC we had a conversation about this like 6 years ago.

So back to basics - what client version is RSCDv25? 202?
And MoparClassic client is 204?

I’ve always been curious why you guys choose to modify the client so extensively anyway, was it lack of interest in reverse engineering jagex cache format? It would make sense to me just to grab the deob and start fresh if you are planning to work with in Lothy.

RSCD is 204, MoparClassic is 204.

Demonik source and Stork(Pk) used 202.

The reason the RSCD client was modified so extensively is because of Reines and what he did with STSBot back in the day. There are only a few developers (rsc related) who even understand the Jag cache. When you build tools for .rscd cache and not .jag it’s hard for people to revert back. The reason .rscd cache is around? I don’t know, ask Reines.

Another client to look at is from Jorgen with FreeScape/whateverthatprojectwascalled/Moonspellwhatever. He used the 202 client as well.

[quote=“Rodgerwilco, post:7, topic:555455”]RSCD is 204, MoparClassic is 204.

Demonik source and Stork(Pk) used 202.

The reason the RSCD client was modified so extensively is because of Reines and what he did with STSBot back in the day. There are only a few developers (rsc related) who even understand the Jag cache. When you build tools for .rscd cache and not .jag it’s hard for people to revert back. The reason .rscd cache is around? I don’t know, ask Reines.

Another client to look at is from Jorgen with FreeScape/whateverthatprojectwascalled/Moonspellwhatever. He used the 202 client as well.[/quote]
Hi Roger!
You’re incorrect!
All of the RSCDaemon derivatives, which includes all of the StorkPKs ever, Demonik and every single derivative, RSCDaemon and every single derivative, uses the same refactor of the same client version: 202. In short, the only ones that don’t, are all of the frameworks that never made it very far–Jorgen was one of the only ones who didn’t use the same client version, but he’s just a goofball anyway.

Reines et al kinda fucked parts of the client up pretty badly, actually, because they didn’t understand how to build packets for RSC very well. They changed random packet structures due to pure lack of knowledge, e.g player position packet 145 and npc position packet 77, when removing entities the behavior of the normal packet structure was to send a 2 bit value of 3(sends as bitwise value 11) to the client for the sprite value, then read 4 bits on the clients side(turns it into bitwise value 1100, or 12 decimal) when it reads the 2 empty bits. That’s why the packet offset only increases by 2 when removing mobile entities but reads 4 bits.

The drastic client modifications they made are actually a real observable issue in much of the RSC private server world. A lot of the client crashes in Demonik and derivatives was caused by those two packet builders, for instance.

If I were to use a client for a new project of mine, it would likely be either the 204 Vortex and eXemplar were fucking with, or maybe the 202 from VarekD or RSCDv2, or MoonSpells unrefactored 202.

i didn’t read all the replies but basically reines’ client uses the custom cache shit and has some “optimisations” and other useless shit, where mpc-client is pure 204 client with just modified networking iirc

check the repo rodger linked