Hacker News new | ask | show | jobs
by elif 1174 days ago
EasyUO scripting was my introduction to programming at age 14. By the time I got to college I was already a professional coder and I was able to enjoy CS as a recapitulation or reinterpretation of my foundational understanding instead of a dogmatic prescribed methodology as I saw in my object oriented/relational database bound peers. UO really sparked my whole life's passion accidentally by leaving the memory and registers readable/writable and the server requests unencrypted.

It is a shame that the cheat vs anti-cheat war has escalated to the point where kids today would rather pay $100 per month for access to a closed binary (with who-knows-what malware) which is able to bypass anti-cheat mechanisms rather than freely play with a live application that they are already invested in.

11 comments

Exact same here. Coding a script for my miner to automatically hit the high value ore spots and detect if any PK was in the area (and recall to safety) was one of my first major programming achievements!

I recall making a similar comment to Raph Koster in a hacker news thread a few years ago. He didn't seem all that pleased about it, lol.

Me too! Ain't no way I had time at 14 to train taming. Ended up taking an equivalent amount of time learning to script it anyway though...

Led me to a lifelong obsession with automation, although I never quite picked up the pure cs fundamentals. I guess I'll always be a script kiddie at heart.

sounds more like a hacker to me. script kiddies usually don't write or understand the scripts they use
Thank you for checking my imposter syndrome! Looking back I'm realizing I was actually just using the debugger to piece things together, but I always felt like a fraud because I wasn't just magically generating it from my own mind.

I still struggle with the same feelings, but the older and more experienced I get, the more time I spend looking things up. Although "chatting" with a certain LLM has lately been replacing most of that time.

PK or GM. I actually still have a lot of my scripts in storage.
exactly!! PK's are the best anti-cheat. just make your game full loot and competitive, you dont need anti-cheat.
PK’s in UO were never very effective at deterring unattended resource-gathering (the main ‘cheat’ the staff fought so hard against). I recall having my group of friends all make fishermen at the same time and we reached grandmaster fishing skill in a week or two of 24/7 fishing.

Once we had those characters, there was no stopping us from quickly amassing enough wealth to buy our own castle. It was rather ridiculous. We also ended up with vast numbers of magic weapons and armour, magical reagents, gems, scrolls, and furniture. It ruins the entire economy of the game.

EasyUO was a big part of that. Someone had written a MIB (message in a bottle) script which would decode the coordinates from a bag full of MIBs and allow you to sail to the nearest one to begin fishing it up. It greatlyy streamlined the process of fishing up hundreds of those shipwreck treasure chests!

There are a lot of kids learning to code in Lua on Roblox, maybe it’ll be the dominant language for backend programming in 20 years.
Tons of people learned using BASIC, but that never really took off for serious programming outside of a couple niches (like frontends / desktop apps made in Visual Basic).
If you're counting VB, it was huge, just not cool. Nobody ever talked about it, but people built tons of really effective custom software for banks and the like. Maybe you don't consider that serious programming, but it was probably the most successful product of the RAD desktop era.

I vaguely recall a Joel Spolsky (?) podcast years ago mentioning that everyone thought it was dead, but a survey showed something crazy like 30k active developers worldwide. And that was classic VB, not VB.Net.

BASIC as it was and VisualBasic are mostly not the same language, like how you can't say C is going strong in business because C# is so popular. Even Classic VisualBasic is more like Object Pascal than the line-numbered BASIC dialects people who learned on eight-bit micros and MS-DOS used.
And there’s more competition coming in this space with Epic’s Unreal Engine for Fortnite (UEFN) and Verse (which is going to land into the base UE5 engine soon according to their talks, so useful outside of Fortnite!)
>20 years

I got bad news

I had a similar experience in past with MUDs. I mean it provides an incentive to learn programming but cheating is cheating. Popular competitive games would be dead if they didn't fight against cheating. I consider anti-cheat measures a necessary evil

Scripting menial tasks is probably lowest form of cheating but still cheating. Would it be ok if someone made a bot that plays perfect PVP?

There are plenty of games that allows modding. Or games that are focused on programming. Plenty of opportunities to learn scripting in more legit ways.

scripting for high level pvp was actually my favorite task. Things like automatic potions at X health, trapped pouch management and execution, teleport target timing, fast looting, etc.

UO pvp was not about being perfect, it was about selfishly manipulating a mass of fighting to loot stuff while not losing your loot. 3 people precasting flamestrike is more broken than anything an individual or bot can ever do. instant trapped pouches were the only way to escape that and the only way to activate the right one is to script it or to stop moving, mouse over to your inventory, and double click it. scripting became THE BALANCE in that regard.

There are places for this kind of play, but I suppose they don’t give the same kind of thrill. Bot vs Bot scripting challenges online, like Battlecode https://battlecode.org/
I think scripting is a wonderful way to learn to program, and do useful things too.

Amazing that you can't script your most-used computer - your phone.

(seriously, why can't we write an automated script to handle new phone calls?)

Same. Wrote scripts to level up skills, set up runes to different stores to perform automated shopping rounds. Had one script for sparring that would recall to a bank or an Inn and log out if a staff appeared in the journal; since it was illegal to macro offline on some servers. It was all good fun and I always enjoyed having it running on my PC as some sort of Tamagotchi.

Me and my brother also ran our own servers for a while. Believe the last server I played on was one of the Zuluhotel ones.

Amazing parallel to my discovery of programming.

I distinctly remember the EUO window and the first time I was trying to understand the syntax of a random script I pasted into it. It was almost readable with and made sense “if X”, “while X”..

Who knew I was learning basic flow control, booleans and variables.

What stuck the most after all the years is that curious desire to tinker and hack at something obsessively until you get it.

This is actually one of the more interesting things happening in Minecraft. The only form of anticheat is in server mods, so both sides of the coin are pretty observable.

I was a little put off initially when LiveOverflow (youtube) switched to being a minecraft channel but the material ended up being pretty good.

> The only form of anticheat is in server mods

There are client-side anticheats, both as external apps and entire clients with anticheats incorporated into them

+1 on learning to program via UO scripting -- I learned a couple of ways (AutoHotkey was one IIRC) to macro before there were programs devoted to UO. One of them was pretty primitive and I'd actually check the color of a pixel at X,Y to see if I needed to heal.
Learning how to install ShowEQ to cheat in everquest got me my first real exposure to linux...then trying to build a emulator for it took me down a rabbit hole. Was probably 12 at the time
It’s amazing there are so many of us who started on EasyUO!
+1 for another CS student jump-started by UO :D