Hacking a 25 Year Old Game To Make It Work
ฝัง
- เผยแพร่เมื่อ 16 ต.ค. 2023
- Can I get get Worms 2 to run on a modern gaming PC? And what about that hidden menu option?
UPDATE
After posting this the official Worms 2 discord reached out to me to say that:
1. There's a much more up to date community patch that fixes what I covered in the video and more
2. There's currently an OFFICIAL Team17 trial server!
So if you also want to re-live your childhood, or maybe try this out for the first time, then head over to their discord for all the details / discord
💭 All views are my own 💭
Worms 2 gameplay clip - • Worms 2 gameplay (PC G...
Hi everyone. After posting this the official Worms 2 discord reached out to me to say that:
1. There's a much more up to date community patch that fixes what I covered in the video and more
2. There's currently an OFFICIAL Team17 trial server!
So if you also want to re-live your childhood, or maybe try this out for the first time, then head over to their discord for all the details discord.gg/Tvs83972UD
The W2-plus patch works brilliantly. You DO need to open the appropriate ports to play online.
Can you try to fix Freedom Force?
You, sir, have just made my day. Maybe even my year. I can finally once again play one of the games that defined my childhood.
Sir why is there an ip address display on the menu 11:01. I thought that it could not work because it must be connected to the internet to display your ip but i wanted to inform you
It is not possible to access discord without a mobile phone. Is there a way to get these files that everyone can access?
Clearly the next step is to reverse engineer the networking protocol and setup a working multiplayer server
I presumed that was going to be the rabbit hole he fell down!
Already done with W2-Plus as well as LAN play. And the official server is actually back online now :)
And your already deep into the exe with decompiling it, so hopefully the server url is a string that can just be changed. so now you can rout it to anything..
You can add/edit servers in the game normally :)@@MobCat_
Or just acquire somehow a copy of the server and run it. No reverse engineering required.
You opened a can of worms with this one
This should be pinned 🤣
@@gazman2626 Worms too.
ouch
Lol oh you!
We will never have the slightest idea how many hours of knowledge are needed to produce this 11:25 minute video. Thanks, Nathan!
My thoughts exactly!
Indeed was just thinking along this line. Its great he can take us along on his thought train
The ironic part is that while this game absolutely refuses to run on Windows, it runs flawlessly on Linux
Iirc you can run wine in windows lol
because android
@@user-qw9yf6zs9t um, presumably because Wine. What does android have to do with it?
@@user-qw9yf6zs9t Do you think Linux runs on Android? It's the other way around
@ampycplus Android is built off of the foundation of Linux
This is actually a common thing that GoG does (and other distribution platforms like it) that's actually incredibly frustrating. Often times the game will be patched to require no CD, and any multiplayer component will be patched out because something like MSN Zone doesn't exist anymore. They usually handle this at the main menu instead of the launcher, but what this means is that they also patch out any LAN capability.
Zoom does this with the game Plane Crazy. They patched the pathing to the registry entries and also removed multiplayer from the menu options. I was able to get ahold of a copy of the original game and do a comparison between the two EXEs, easily patching back in the multiplayer menu option. I wish these companies would stop taking the lazy route... there's some of us that still have LAN parties!
not only that but theoretically you could create a custom server or allow you to set a custom server. i hover dont know if they know enough coding to do such a thing.
How do you do LAN parties in 2023? Everybody is infected with disease, and Computer monitors are 49" ultra wide now.
@@der.Schtefannot everyone and not always
@@der.Schtefan computers can be smaller than they've been in decades, with monitors as thin as a 90's keyboard
Not to mention, you can stretch the LAN today and play with your friends over the internet by making the network seem like you are in the same room, but they are on the other side of the planet or country.
Solutions like Hamachi back in the day is a good example of this.
worms armageddon works just fine on windows and still gets the occasional update and the community is still alive. all the worms games run fine on linux though.
thank you so much for improving worms 2 support on windows!
I can only imagine how OP people are if they continued to play off and on. I played with friends often and we were young idiots so I can only assume the community alive now and playing are gods.
I love how everyone in the comments is on the same page that the logical next step is to write your own Worms 2 server; I'd love to see it written from scratch and explained with a high-level overview of the code :D
It is an interesting idea…
I can certainly say I'd love to learn reverse engineering networking or even how people would approach it
I thought you were going to then it was the end, really fun to watch stuff though thanks
I was surprised to hear that they only switched off the servers in 2020! I've enjoyed a couple of your vids now so I decided you earned a new sub :)
The server is back online since last week
@@Carlmundo Coincidence? I think not!! ~~ Nathan Baggs.
why am i always wanting to learn skills i'll literally never use... why can't we live a thousand years :(
Being able to debug things is a useful skill!
This was fascinating to watch. I really love this reverse engineering videos and your style is great. Looking forward to seeing more!
Thanks!
The quality of your vids are amazing - so happy to have found your channel
Man love this content, its kind of an inspiration to some of us to learn how to hack games to bring them back to life, wish you could make tutorials on the tools you use, how to patch games/inject them and how memory works. There is a game i never really played since I was young and clueless its called Darkspore which was a follow up of my favourite game called spore, they shut down their servers really early and it was kind of a dream for me to find a way to patch it and check it out(it would only run if connected to the internet), This video just gave me hope that with studying and hard work everything is possible 🙌
Have never seen your channel before. I love how this started as unassuming "haha I download game" and suddenly turned it up to 11 inside debugger and Ghidra and OS internals. Very cool.
I just loved worms, this gave me such a great nostalgia flash and I’m playing it for weeks now!
I’m glad I still have my xp system up and running for all the older games!
This was fascinating, thank you! Would love to see more like this.
Great video, glad it was recommended to me. Enjoyed the adventure you had with this.
I think adding more background music would've improved the video
Super Great vid! I'm a high-level software programmer so seeing you go through the assembly is wild to me. I'd love to see more vids like this :)
Oh man, I really enjoyed this video so much. Keep up the amazing work!
Love this type of video! So cool and interesting to see your approach, a lot to learn! There are so many programs/games that probably could be fixed by reverse engineering like you did.
I love these videos, keep up the great work man
So many fond memories with this game - used to play it over a local network (well, using Direct Cable Connection which connected to PCs together over the parallel port) with my sister. So much fun.
Just discovered your channel with this video. i didn't know anything like this existed! You have a new Subscriber.
I loved this video! And I love your channel!! I just found you some days ago.
Also I feel like GOG should fix their games...
This was a blast from the past. Great game, and also a refresher on Lena's reversing tutorials from back in the day.
Have no idea what's going on but am fascinated by your videos regardless!
Glad to have found this, I can across my Worms 2 CD the other day and wanted to play to only run into the same issues.
I learned a lot from this since im new to reversing. Thanks for making this
really inspiring, I love watching this process!
Maybe im mad, but i would watch an unedited video of you live working all this out and patching games 😂
Keep up the awesome work!
Nah you’re not mad. Listening to other people program and debug out loud has always been good white noise for my own programming
I’ll keep that in mind! The problem is that a lot of the time is just me staring at the screen with a blank look on my face, which isn’t particularly engaging. I’m experimenting with different lengths and formats at the moment though
Not mad, I'm watching George Hotz do 6h live coding streams. Wouldn't be opposed to watching a 6h reverse engineering stream.
@@nathanbaggs Would love to see some file reverse engineering via how the exe's load external resources, such as scripts, audio, texture etc.
@@nathanbaggsI'd be fine with that, as I'd probably watch it while do the exact same, sipping tea and staring blankly at a hundred page long compiler error message trying to work out how I messed up a template somewhere.
Even though I don't know shit about reversing, I like the pace of your videos :) Very nicely done :)
Thanks (:
This was super fun! Would love to see more vids like this
I'm an application security engineer that just started learning about malware research and reverse engineering. This video was a complete delight. What a fun way to learn how things work
Good luck on your journey!
Surely the next logical step is building a Worms 2 server from scratch and patching the client further to allow connection to it? :D
Great work, I enjoyed this and despite being far beyond my abilities it was actually quite easy to follow what you were doing.
This!
Already done in the w2 plus patch :)
Nice job man, this was a good watch.
Great video. I love a puzzle! I kinda feel like I’m an ant who someone is trying to explain algebra too, but I do learn a tiny bit with each similar video.
Despite sometimes hitting roadblocks, rabbit holes, wheels that spin…it’s super cool to see your thought process and attempts at reverse engineering. It boggles my mind that some games have practically been fully reverse engineered without original source or debug symbols.
Bro, i subbed cause I love this reverse engineering/debugging stuff.
I played this game sooooo many hours. Sharing mouse and keyboard with a friend. No online play back then for me! Thanks for showing it still can be bought and the discord! I think I’ll download it tomorrow and give it a try ❤
Do you remember the precursor to worms? Scorcher? Much simpler graphics but the same game. Played that for hours too before worms came out
Really cool! I wish there was more low level stuff like this
Man... I can relate to this. About half year ago I was debugging worms armageddon demo from an old cd from a magazine. x32dbg has this nice thing on the bottom right displaying "time wasted debugging"😂 The demo was special to me because this was one of the first pc games I played before I had actually my own PC. I remember when I was playing at my neighbor's house and we got first time a mysterious "banana bomb". I throwed it... into the water. I wanted to do it right this time, but the demo did not work on modern windows. I remember the same message loop in ghidra. When the game was about to start (I managed to fix the menu part) it ended up in some exception loop. I wanted to run it in windowed mode at least and was hacking some win api functions in assembly to change some window creation parameters, but i never got it to work. I was not familiar with the tools I was using. It was a fun 2 nights experience. I wish I fixed it though.
Your vids are ace!
Great video mate, glad to see youre well! 🤘
Thanks! Hope things are all good with you
@@nathanbaggs Ups and downs but on the whole all good mate 👍 cheers!
Very cool! I was on a similar journey to try and figure out why the old PC game “Jane’s Longbow 2” doesn’t work in WINE, but sadly I wasn’t able to figure it out, so my Mac remains unable to play one of my favourite 90s games!
I played so much of this. So much.
I remember as a kid running into an issue like this, and i think i worked around it by making a shortcut to the actual exe file instead of the launcher or something.
Brilliant video! Excellent work!
Hahahaha, seeing my face in a random TH-cam video was definitely the last thing I'd have expected to come across.. 😂 Really cool and entertaining content!
Where was your picture?
@@nathanbaggs In the "ogg-winmm" "Fails on Windows 10" GitHub issue page under the alias "rkkoszewski". I actually implemented partial support for the "SendStringA" function (In another fork) for a similar hacking project like yours for the game "Ultim@te Race Pro". It's a lot of fun to hack that game and make it work on modern hardware (And see the ton of things that shouldn't be there that got compiled into the game files) 😄
Do more games where u solve problems with old game great video!
hey Nathan, great and inspiring videos! Could you make a video explaining how to get to this level of expertise? Which resources would you recommend to a more traditional web-dev to get these skills?
And btw... Did you release the patched executable already? Did you provide it to GOG so people could play the game? :)
exactly
worms 2 was my childhood. played it hotseat with a childhood friend. so many precious memories
No idea what you did here but it was great to watch
10 year old me downloading NoCD cracks in the late 90s feeling like a hackerman, only to realize I need to spend the next week troubleshooting the drivers for the badass soundblaster card I yoinked from another computer to further build my Frankenstein Win95 PC. Worms always reminds me of that DOS tank game with similar gameplay.
This is proper use of a disassembler. Cheers mate, great skills.
Loved the game back in the days. So many options to customize your game. You could change the color of the water and not just how much damage a weapon does you could also change how big the explosion was. Big holes with almost no damage … you could do it!
yea it is my favrite worms too because of the hell of customize options!
Very insightful and interesting. More please
At 5:12 you showed what the menu should be like from an old video recording, which has a multiplayer button (right bottom, "two computer double arrow to each other", refer as B2 below). On the left of it, it's a button of "a worm with a hard hat", refer as B1 below.
In your GOG copy, even after fix, there is only B1 and it's centered now to occupy the full space.
At the end of the video, after the fix, you were still clicking B1 button to enter "network play" since no B2 button is there.
So I'm still confused. Apparently the missing button isn't recovered. Did you rebind the networkplay dialog entrance from missing B2 to B1? What happens if you just click B1, before the fix?
Apologize if it's already explained in the video, I may have missed it.
Yes I just patched the one button I had to load a different menu, might not be the most elegant solution but it did allow me to make progress! Thanks for the clarifying question (:
I used to play so much Worms 2 Demo with a clan and stuff, the good old days. :D Still remember it clearly.
Love this Detective Bit stories...😎
Great work, very interesting.
If you can hack Worms 2 into working on modern platforms, then maybe--just, maybe, I have hope to getting Lego Rock Raiders or moon tycoon working on my PC.
"Moon Tycoon" sounds like something I would like, gonna search that
ever tried the tools DXWND or CNC-ddraw ? they are targeted at early DirectX versions
I've been where you were. 😅 Thanks for the video
Me, someone who has been playing Worms 2 on and off since 2000 without much issue:
Huh.
Great video!
Cool video, I hate editing videos, so I get your pain, but you may want to spend more time polishing it and the audio
Either way I’m subbing to see what else you do
Awesome, Do Black & White 1, and 2 next 😉
A breath of fresh air for youtube content. Love it. Thanks!
I like how you speak to the computer as if you are in an episode of star trek
or more specifically Scotty in "The Voyage Home"
Sometimes I hope if I reason with the computer it will do what I want, sadly this rarely works
Worms 2 is 25YO??! Fck I'm old. Kids, your body ages but you're still a kid inside! Give a break to your elders, they've been through a lot, their bodies don't work properly, but they're just like you on the inside! 😅😅
Does that menu not have local play? Could some logmeinhamtic servers work or self hosting one?
Cracking video!
I've got my worms 2 CD sat right next to me, this game was a HUGE part of my childhood and getting into gaming and computers. I remember editing the game files on notepad to make explosions bigger or something. Good times. This is beyond my understanding, I've only recently installed x64dbg but really I dont have a clue what I'm looking at, I'm not a coder. But this video was great.
YT suggested this video to me on my homepage. Sometimes their algo does work, most of the time its crap tho.
I also would love to see a multiplayer server set up.
it was a big part of my childhood to!
The official server is back and there is also a community server running
worms2 was sweet. Ninja roping around was fun with friends
dude i can't believe this. i had the same issue back in the day with worms world party. took ages to figure out. and finally what got it working was to copy the audio files that were supposed to be in the cd into the game folder. *facepalm. what a journey man
Omg thank you so much, I faced this problem on Windows 7 or 8.
I'm curious why you went to patch the parameters being passed rather than seeing if you can reverse the patch that hides the network button from the menu. Or did I miss something in the vudeo 🤔
Just the process I was following with the information I had
the really interesting thing is that when games don't work like this, its almost always because of a third party vendor breaking one of MS's rules about backwards compatibility. there are plenty of really old games that use GDI that work just fine. its kind of a godsend that MS supports some of the insanely old stuff they do
Awesome content
We need more people dedicated to getting these games working on new computers
Interestingly my wife is the voice of Worms 2 (and some others that came after it!) She was only 11 when she recorded the sounds and was only paid a Barbie game and a rice crispy square treat!
That’s pretty cool!
FIY, Worms Armageddon is still getting updates and features, and has official Linux (Wine) support.
Runs fine on my steamdeck 😂😂
Great vid tho 😊
Does it matter if the service was discontinued? You can still run TCP/IP multiplayer on local network and using programs like formerly known as "hamachi" you can then use it to connect to others over the internet...
sure, not like modern online server stuff, but would still work... right? :D
there is also Tunggle which also works for IPX protocol and you can keep a list of Games and Friends to chat later on, there are rooms for each game, you don't have to "create rooms" everytime
This reminds me of trying to get Yuri's Revenge to play on modern hardware. The disc is literally unreadable by modern disc drives due to changes in hardware and software over the years. (Apparently a form of drm detection in the shape of a driver required to recognize the disc no longer exists) I had to install it using an old drive hooked to a virtual box running windows XP because it had the driver for the disc drive to be able to read that form of drm and recognize the disc. Then I had to move it over to windows 10 and manually add all the registry stuff.
This is exactly why more people need to learn how to do this stuff.. Lemmings 1991 is pissing me right off, it has gotten tto the point where setting up a game has yet again become more effort than it is worth and this has far reaching effects beyond standar understadnings of society. We lose our history sao that the rich can exploit us with their fucking shit remakes
They really should have a warning on the top of the store page like Steam does. While they technically don't lie on the page, I feel most people don't look at the system requirements, especially for older games that any modern computer should be able to run just fine. I even told GOG support as much years ago, but I guess they still haven't fixed it.
I wonder ... can you hack the "story games" from the 90s that were sold by Jast USA? I was able to crack the format of the menu files (like the position of the pointers), so I was able to replace all the text with my own translations (no matter if it was longer than the original one). The only thing that I wasn't been able to do was to determine the format of the image files. I think they are compressed by their own method, and probably parts of the images are also working as an animation.
how an incredible actor you are
Direct connection isn't possible? I recall you could just Host it locally? It's been a while though
One of the best reverse engineering videos that I’ve seen in my 10 years as a software engineer
would like to see you fix xcom interceptor from the 90's great dos game but sooo many bugs and glitches
DXWND is probably capable of that... it's a directx "emulator"
or any other DirectDraw wrapper (there are many)
mostly CNC-ddraw (initially made for Command Conquer games)
yea i wish i was a coder to fix this sort of stuff but i just dont have the patients now days@@WithJupiterInMind
would running the exe in windows xp compatibility mode not work?
Awesome video.
Thanks!
What's the problem with running any 2012 forum code?
A lot of people answered the posts and if you're talking about viruses, i don't think pretty much any will work on todays machines..
That was really cool!
Yes, but can you get Command and Conquer Generals to run without the "the game has detected a mismatch" error randomly duing every network game?
Interesting that Worms 2 has compatibility issues when Worms Armageddon (a game heavily based off Worms 2 and was originally gonna be an expansion pack), had updates as recent as 2020. Then again Armageddon had more content and most fans stuck to it, so not much reason to go back to Worms 2 other than it's different balance and campaign.
Not sure why they removed the network screen though. Sure the official servers are down, but you can still do stuff like LAN parties, connect via VPN or run your own server (if that's possible.)
Official servers are up!
0:49 missed a great gag there: should have spoken into the mouse like Scotty 😀
This is so dope
I was able to play Oregon Trail 5th Edition and older Oregon Trail games on my modern computer. I also got the Magic School Bus Solar System game to work. I have playthroughs of those on my channel. I was able to extract data from the Oregon Trail 5th Edition disc and play it since you probably can't install the old way anymore. You can actually play without the disc if you want. As for Magic School Bus I downloaded a link which took like 9 hours to download (an old game shouldn't take this long >_
This is why I have a Win 98 dedicated PC for playing old games:)