Oh hey, this game. The win32 version of this game uses MIDI for its music, and it's a tiny stand-alone executable, so this was my real-world test case for validating changes to MIDI support code in Wine. The music is very ...assertive... and the voice samples are terribly encoded. I can still hear it.
I wrote the “ai” for one of the early popular forks of Slime Volleyball. I have a lot of fond memories! Recently I wrote a modern interpretation of the game in pure TypeScript/html canvas. It requires a real keyboard or gamepad - sorry no phones. Some of the single player ooponents are pretty fun. It’s at https://tippycoco.com and it’s all open source.
I remember this being the first executable that I ever downloaded from the Internet as a kid (around 1998?)!
I can still picture the Internet Exporer progress bar showing 4 KB/s while I waited almsot an hour for this to arrive. That moment of having new software on my computer without having to leave the house left a lasting impression on me.
The voice samples still float around in my backup files.
Ok I spent way too long trying to beat this, but I finally did at 15-11.
Basics: You can spike the ball and influence the direction. Holding up makes it a garbage hit so you must release jump immediately after jumping. This does not affect jump height. The two useful options are holding left and holding down, but not both (another garbage angle). Left is your bread and butter. Most shots should be left. Down works if you're right next to the net only, and will depend on where the ball is.
Generally speaking, don't try to spam strikes. Just stay on the ground to set the ball. You want to get it nice and slow in your center, which will bait ai pikachu into coming forward. then you do a left shot to try and get him.
The first few second are the easiest to score on. If ai pikachu is serving jump a bit after him and left spike. I score about 20% of the time on this return. There's a good chance that he will return in a way that is vulnerable to a down spike at the net or another left spike, but if you fail to score here, go to the neutral game setting tactic.
If you're serving don't hit the ball. Walk forward an inch to set the ball in your court and then left spike him after one toss. Gets me a point on serve about 1/3 of the time.
Don't jump to anticipate where the ball will go. Wait until he hits it at least.
You can also do behind the back spikes which works well for left spikes but is a suicide for down spikes.
I only really figured out the downspike at the end. I think I could crush him with this knowledge but that took too long.
It wasn't super obvious from the original link but unlike the typical web adaptations of old games - cross-compilation and emulation, this one was reverse engineered and the logic re-created from scratch. The code looks commented with more details, e.g. :
I randomly remembered this game that we played in high school on school computers a lot. I thought that it would be nice to find it, reverse engineer it and port it to some modern target, but it seems someone beat me to it already for a web version.
We used to have the shareware version of Skyroads on our school computers. They couldn't get rid of it. They'd delete it off most of the computers. But a copy would always survive and get propagated via USB.
My highschool IT set up shares for each classroom/year (i.e. "Mrs. Beck 4th Hour 2001") and would moderate it's contents during the school year, but all previous years were just kept around for archival reasons but completely ignored.
They would configure our user shares to have all our classes automatically added for easy access, but you could manually add any other class or year.
This was back before phones or laptops were common in classrooms and everyone would bring games from home to contribute via flash drives or micro USB and also to sneak their bounty back home at the end of the day. A true sneakernet.
Reminds me of a game a built years ago while messing around with Godot. The game was called Mortal Pong. It was a mix of Mortal Kombat and Pong.
The way it worked was similar to MK except the actual gameplay was two character sprites acting as the paddles. You had a MK background. Every time you hit the ball blood would squeeze out of it. Then the winner of the match would get to perform a fatality. But the fatalities were super crude and not well done.
It was a fun game to build and sadly I lost the source.
Yeah, I spent too much time this morning mastering this (thanks for sharing!). For me the key was realizing that - unlike most modern platformer controls - jump height isn't affected by the length of the key press. So you can quick tap jump, then use the direction keys to aim your spikes. The ground-dive is also quite useful.
Once you grasp these controls, you stand a chance. Once you master them, the AI becomes trivial to beat by this method: When serving, jump and perform a horizontal spike at the apex. The AI will defend it, then reliably do his own horizontal spike from the backcourt. Meet it at the net and spike it diagonally downwards. Works every time! And now I can rest (work).
Yeah, I can defeat it. It doesn't defend long shots very well. It's also generally better to try to return its shots immediately instead of juggling, so it can't position well for the return. If the opponent is close to the net then you can try hitting the ball up for it to quickly bounce back down behind him. You can also try kill shots near the net, but those can be risky.
I could only win because I found a trick to score when AI serves, jumping backwards one second after AI jumps returning long, but timing must be exact, also if you stay in the middle 90% of their shots are towards the back very predictable and lastly is about the timing every time the opponent returns the ball it jumps so when you see a jump you can meet the ball in the air for a quick return.
I can score every time it serves by jumping in the back row and power hitting the ball to the far side. That keeps it from scoring 2 points in a row which makes the game quit winnable.
This game is similar to Blobby Volley, which was quite popular around 2000 here in Germany, I think. The slightly improved Blobby Volley 2 [1] is still actively maintained and can be downloaded for modern platforms.
Slime volleyball is immediately what I thought of when I tried this. We played a lot of that (and slime soccer!) on the lab computers at school (Canada).
I had no idea Pikachu Volleyball existed, but apparently it predates (1997 [0]) Slime Volleyball (1999 [1]) by a few years. I never realized it was essentially a clone.
Oh, there were a zillion of these. Ball physics with gravity are easy/fun to make, so something like volleyball or tennis is pretty much everyone's my-first-game-with-physics project. No coincidence they've all got round heads :)
The one I remember playing growing up was some DOS volleyball game where you played as two hideous little purple Q-bert looking dudes. Looks like it even has its own Wiki page! Dates to 1988. https://en.wikipedia.org/wiki/Arcade_Volleyball
Ha, also in Canada and also played a lot of Slime Volleyball in school. I remember the graphics were pulled from a folder of jpegs or gifs, so I substituted all the images with pictures of my friends and other goofy things. Good times.
Back in the day they used to sell cheap CD-ROMs that claimed to have 1000 games. Most of the games were garbage, but I do remember Arcade Volleyball was one of the few gems.
Most of those discs are on archive.org these days, if you can remember some clue to search for and find it. Pop it in a Win95 VM and have a nostalgia-fest evening.
Oh, these memories:). This game, along with old DOS Arcade Volleyball inspired me to create a clone using GameMaker. I think it was the first game I created when I was in high school:).
I really miss when the internet was full of games like this.
The Flash game era was great. Lots of ideas and different genres, short, free, games, no PhD behavioral psychologists trying to figure out how to hijack your brain and get you buying microtransactions.
Mods downweight generic subthreads when we see them. Nothing wrong with your comment as such—it's about the thread as a whole. We've learned over the years that (1) threads tend to get dominated by generic discussion if allowed to; and (2) they're less interesting that way.
F has a bump on it, so it is easier to center your hand on the controls.
It is kind of funny that wasd became the convention. Putting it a couple columns over to the right opens up a bunch of extra buttons. Imagine, in first person shooters we could be sprinting by holding S with our pinkies instead.
Sumo Volleyball was one of my favorite games to play growing up. We would spend hours after school trying to rank up, watching those at the top of the leaderboard play each other to see how we could improve our own game. Good times indeed.
Wow great find! This is uncannily familiar, and recalls for me the early, more trusting days of the web where people just downloaded and ran executables from anywhere (people don't do that anymore right?)
I'm sorry, I think you misunderstand the technology. Hardware virtualization covers much of the CPU cases, but there are still three attack surfaces: handling the guest instruction traps on the host side which can actually get quite hairy in corner cases, the devices the guest drives, implemented in software on the host side, and shared hardware information leakage.
These are all improving: hardware support is generally getting better and guests modified to behave nicer so weird cases can just fail, and devices are often now specifically designed for virtualization (plug for my old project VirtIO here!). But it's still software, and asserting there are no bugs left seems incautious.
The information leakage problems are an ongoing whack-a-mole which depends on your setup: they may or may not result in escapes, depending on the nature of the secrets.
Of course, higher level bugs are still there: convincing people or software to change settings, install software or pass too much information through existing channels which are perfectly secure!
-- they're rarely discovered. But they have existed, more likely currently exist or will exist. Certainly way better than not having that protection, but running sketchy binaries is still not the best idea!