I wish the author got more into the weeds of anitcheat and how it evolved over time. Jagex was banning bots based on mouse movement heuristics in like 2005. 20 years later and there's some JS framework on the front page here heralding that same kind of analysis as some revolutionary new approach. I can only imagine what the modern anticheat engine entails, especially in the era of LLMs that can reliably emulate a human player. (Some of them can even write quite technical blog posts that almost escape detection ;)
In reality since the new CEO, they have been much more strict with antibotting and they have virtually disappeared from the game. It’s been an incredible 6 months without major botfarms in the game. Botting subreddits have been on suicide watch since.
It's gotten pretty good (finally good enough that you can observe it in the game's macroeconomics), but if you're any good as a programmer then it's no work whatsoever to build something which can bypass it indefinitely.
> Before any networking occurs, the client runs a breadth-first search using the local collision map to build a path from where you are to where you clicked, and then writes the packet for the server to read. [...] The packet contains the absolute position of the first waypoint in the path, followed by the delta of each waypoint in the path against the first one
How come the client sends waypoints rather than just the destination? Naively it seems like sending less data would be better. Is the pathfinding so expensive that you'd want to avoid doing it on the server? I suppose it works out as long as it's cheap to validate/correct the client's path?
The algorithm is very cheap to run for a client (linear first, then diagonal to target, stitch together as many of these as it takes in the fewest number of hops), as they have full map data downloaded. For 2k concurrent players on mid range 2004 hardware (you have to remember they had kind of old school tech even for the time, though I'd love to be proven wrong on this), and with all the other interactions that needed to run before the next game cycle, I think they probably decided it was better to be clientside.
It's also possible they could have made it work, and it would have been a technical win, but just didn't need to since they had an MVP.
Validating that a path on a grid doesn't move through impassable objects is definitely much cheaper than running a pathfinding algorithm, especially on 2004 hardware. You'd have to make those checks as well in order to run the pathfinding.
Ultima and Tibia are the references you are looking for.
What you linked is nowhere near the same genre or remotely the same concept, nice try though
——-
You edited good boy, however to call Tibia an Ultima emulator is even more ignorant (and arrogant the way you did it).
I played this game in the 90s/00s but thankfully outside HN it blew up into a mega sensation and everyone who knows Tibia will know that calling it a mere Ultima emulator massively sells it short on the saga and era that was possibly the most beautiful and thorough MMORPG to ever exist.
HackerNews is boring. The people here are stupid. All the “high levels” here are ignorant retards. You have the worst community here. I literally cannot believe this site is important at all - Idiocracy is upon us
I love how when Runescape gets posted on here, there’s always a few proud stories of how people cheated. Today one is even admitting to RWT (real world trading) for tens of thousands of $, when elsewhere one shuts up about it because cheaters in multiplayer gaming are regarded as the antisocial scum that make the game worse for everybody else. It’s not really something to brag about.
I guess one thing antisocial people lack is self-awareness.
I think this is both a fair cultural observation and one that's a bit excessive. I think people regard it as a point of pride because it didn't necessarily harm anyone, and because that experience was one of their pivotal early programming challenges that has a tangible return and that they had relatively high agency over. I look back on my time as a player of WoW during the Glider days as one where I was largely pissed that botters were ruining the economy for actual players, but I look back on my time in RuneScape as one where I was completely fixated on running my little factory and not wanting to actually play what was kind of a boring tedious game. I'm not proud today of having scammed people when I did, but I was proud of having a modicum of ingenuity and figured out how to exploit various things in the system. Real world trading, like many rules, isn't inherently immoral, but deliberately stealing money from people is.
I highly doubt I'd have ever given a damn about programming if I hadn't tried my hand at Scar scripting as a kid.
The other comments hit the big ones (didn't have to download, had a free tier, didn't have significant irreversible character choices, had meaningful solo or quasi-social activities, etc), but I think a major contributing factor was it appearing on miniclip.
It was free to play when that wasn’t a popular financial model for games at the time. The memberships were also much cheaper than WoW and accepted different payment methods that would be more available to minors at the time.
Also no need to install or commit to a guild or clan or whatever. You could just log in, screw around for an hour or ten, and log off. Then log in again from somewhere else. It was miraculous for a kid like me.
As a kid, I didn't have a computer that could run WoW, nor would I have been able to convince my parents to pay for the subscription. I suspect most of the popularity was from kids in a similar situation, probably playing it on library computers when they should've been studying.
MapleStory was also quite popular back then for similar reasons.
Find call to `SetWindowsHookEx` -> Find dword (`HHOOK`) it returns -> Inject module that calls `UnhookWindowsHookEx((HHOOK)(module_base + hhook_rva));` -> profit.
Jagex has done some interesting things, but without fail, there is a blunder accompanying each.
In reality since the new CEO, they have been much more strict with antibotting and they have virtually disappeared from the game. It’s been an incredible 6 months without major botfarms in the game. Botting subreddits have been on suicide watch since.
Obviously we only get the details JMods are willing to give away but some of their techniques can be seen in various reddit Smackdown posts like this one from six days ago - https://preview.redd.it/prx0s0qp2hlh1.png?width=355&format=p...
Sphera is even older.
MMORPGs are super old.
I also would argue it was a more complex game.
How come the client sends waypoints rather than just the destination? Naively it seems like sending less data would be better. Is the pathfinding so expensive that you'd want to avoid doing it on the server? I suppose it works out as long as it's cheap to validate/correct the client's path?
It's also possible they could have made it work, and it would have been a technical win, but just didn't need to since they had an MVP.
[0] https://github.com/LostCityRS
https://en.wikipedia.org/wiki/History_of_massively_multiplay...
i think the author would find ultima online emulators interesting
What you linked is nowhere near the same genre or remotely the same concept, nice try though
——-
You edited good boy, however to call Tibia an Ultima emulator is even more ignorant (and arrogant the way you did it).
I played this game in the 90s/00s but thankfully outside HN it blew up into a mega sensation and everyone who knows Tibia will know that calling it a mere Ultima emulator massively sells it short on the saga and era that was possibly the most beautiful and thorough MMORPG to ever exist.
HackerNews is boring. The people here are stupid. All the “high levels” here are ignorant retards. You have the worst community here. I literally cannot believe this site is important at all - Idiocracy is upon us
I guess one thing antisocial people lack is self-awareness.
I highly doubt I'd have ever given a damn about programming if I hadn't tried my hand at Scar scripting as a kid.
MapleStory was also quite popular back then for similar reasons.
WoW got everyone
2004 runescape, now "old school runescape", which is actually successor 2001 Runescape "Classic", were both playable in a browser.
and my (parent's) PC couldn't even install, let alone run WoW. despite me trying with all my might.
so I'm sure I wasn't alone.
it was absolutely magical to me.
Meanwhile, WoW had to be installed, took a fairly large amount of space (I remember 14gb on my 28gb HDD), and Ironforge ran like garbage on my PC.
You do not know video games.
And it shows lol these comments