Popular blogger from roughly a decade ago. His rants were frequently cited early in my career. I think he’s fallen off in popularity substantially since.
This is more of a typing game than anything else. It rejected “blackcapped chickadee” (wanted black-capped chickadee). Frankly that felt a bit tedious on a phone. Had to scrub through to correct and lost.
My suspicion is that the bot was a fairly standard chess bot, but the difficulties were set based on computation time. As airplane computers got better, it turned into a beast.
As a result, if you tried this on older planes, it might have been “easier”
One of my first paid iOS dev jobs was porting a Go game from iPad to iPhone, don't even think the 4 was out yet. It also used computation time based difficulties. By the time I was done writing it, I knew a few tricks I could eke a win out with on 19x19.
When the iPhone 5S came out, I tried it on a whim to check the UI scaling etc... the beginner difficulty on a 9x9 board deleted me. It was grabbing something like 64x more samples per go, the lowest difficulty on the 5S (instant responses) never lost a single game vs the highest difficulty 3GS (15 second turns)
iPhones had a lot of moments like that. Silly bullshit like "what if every pixel was a cell in a collection view" would go from "oh it can barely do 128" to "more responsive than that was, with 2 million" in a few gens.
One of the minor weird things about iOS development early on was just how fast the transition was from the simulator being dramatically faster than actual devices to the simulator being slower than devices. When I started out you’d get things working nicely in the simulator and then discover it’s an order of magnitude too slow on a phone. Just a few years later and my phone was faster than my laptop until thermal throttling kicked in.
I was maintainer of the Chess app from the early 2000s to about 2015. We first noticed in 2004 that level 1 (which was then "Computer thinks for 1 second per move) was getting stronger with each hardware generation (and in fact stronger than myself).
So we introduced 3 new levels, with the Computer thinking 1, 2, or 3 moves ahead. This solved the problem of the engine getting stronger (though the jump from "3 moves ahead" to "1 second" got worse and worse).
A few years after I had handed off the project, somebody decided to meddle with the level setting code (I was not privy to that decision). The time based levels were entirely replaced with depth based levels (which eliminates the strength inflation problem, but unfortunately was not accompanied by UI changes). But for some reason, parsing of the depth setting was broken as well, so the engine now always plays at depth 40 (stronger than ever).
This should be an easy fix, if Apple gets around to make it (Chess was always a side project for the maintainers). I filed feedback report 21609379.
I found a used copy of Warcraft 3 at the store about ten years after it came out, proudly brought it home, fired it up and didn’t recall the graphics being quite that awful, but the first time I tried to scroll the map sideways it shot to the far end because they didn’t build a timing loop onto the animation and I shut it down, disappointed.
Unfortunately they never released a remastered version of it. They seem to have made some clone of it called “reforged” whatever the fuck that means.
Reforged was received poorly because it was a lazy half assed job that was a blatant cash grab. Not because culturally we have moved on and the game has aged beyond being fun
You probably knew this, but wanted to make sure others knew that the reason they ended the franchise is not because there was no market, but instead it was pure unadulterated greed that led to that situation. In an alternate reality they would have actually done the remake justice and there would be a lively competitive scene
There are various hacks and tools for games (especially DOS games, but for W3 there may exist the same) which delayloop various calls to slow things down enough "to work".
The Dolphin emulator has run into similar things; usually doing things "too fast" just gets you more FPS but sometimes it causes the game to go insane.
This is pretty much the experience of trying to play any game from the '90s on modern hardware. It always requires a bit of tinkering and usually a patch from the modding community. Funniest one I've found is Fallout Tactics. The random encounter frequency is somehow tied to clock speed so you'll basically get hit with random encounters during map travel about once every half second.
I've been enjoying Total Annihilation since 1997. Still works fine on fairly modern hardware with Windows 11. No modifications other than some additional maps that I downloaded decades ago.
Sorry if this is a dumb question but did you patch it to the latest version? I don't know if the in-game updater still works but from memory you could download some sort of patch exe file and update it that way.
The original Wing Commander was like that. Playable on 286s/386s, then Pentiums and beyond showed up and it was unplayable. The game started in the "simulator" to show you the controls, and you'd get blown out of space in about 0.5 seconds.
The original Wing Commander brings back memories! I remember being amazed by the graphics and the story.
These days I cannot stand games with cliched storyline and tend to skip the cutscenes, but back then it all seemed so amazing... like a cross between a movie and a game.
I remember playing it later and running into speed issues too, but usually there was a way to tweak the emulator in order to fix this.
> they didn’t build a timing loop onto the animation
Wow.
1984 (!!!) IBM PC (DOS) port of the game Alley Cat had timings built it. They actually used the system clock if I remember correctly, so it would always run at the correct pace no matter how fast the computer. Last I checked it, decades later, it still ran at the correct speed!
AFAIK the only reason Chess even ships at all anymore is as a burn utility. They'll set it to AI vs AI at max difficulty to stress the system and make sure the cooling/power management works.
Never heard that one (it may indeed be used that way, but if it were the only reason Apple would probably keep it in the Apple internal parts of their OS installs).
It would also be of limited use, as the engine is purely CPU based; it is single threaded and does not even use SIMD AFAIK, let alone GPU features or the neural engines.
For my personal usage of ai-studio, I had to use autohotkey to record and replay my mouse deleting my old chats. I thought about cooking up a browser extension, but never got around to it.
Legitimately, they are often too hard. Balancing the problems is quite challenging.
On top of that, the solutions often make the problems seem much intimidating than they are (not that they are easy). Most solutions involve a lot of “happenstance”, where someone tried something and it got an outcome that was useful, which they build on top of. This makes the solutions look crazy complicated (“how would i have ever thought of this!?”), when in reality they are Rube Goldberg machines built out of duct tape and baling wire.
I’ve only solved a few Google CTF problems, and one of them was the one I wrote, lol. That was nearly a decade ago though.
It has a number of gaps, but it is mostly there. It doesn't build, it doesn't have source for some of the service calls iirc (SVC_.*), and the AGESA source isn't open (though a replacement is in progress, openSIL).
In practice, it’s essentially infeasible to make a non-detectable virtualization stack. Timing is really really hard to match (as is everything else). You can edit the binary that’s doing the detection, but this is time consuming. Every new feature they push costs you time and will poison your hardware id.
You can go further by, say, requiring fTPMs that are on the SoC (super common these days for most recent consumer CPUs). If you can’t boot into linux without the PCRs reflecting your virtualization stack being in the boot chain, you’re cheat is quite detectable.
Cheating will slowly look more and more like trying to hack your own machine.
Secure Boot+TPM combined with decent firmware will make cheating a lot harder. If the firmware ensures random devices don’t get BME set before the IOMMU is properly, attestably, configured, you are basically now stuck looking for bugs in the TPM and UEFI if you want to shove yourself beneath the OS unnoticed. These are full of bugs, so that will work for a while, until it doesn’t.
Popping windows will probably work for some time, but HVCI will make this a pain once ubiquitously required.
And you have to do all of this while also not being detected for aberrant behavior. Eventually, the analog hole might end up being easier, lol.
Which OSes are actually imposing DMA restrictions on internal cards? That feels like something that would impose noticeable overhead, but I guess I can imagine a special mode that enforces this for competitive gaming...
It's not a global on-off switch. With a proper IOMMU, the hypervisor/operating system can lock out specific devices from DMA access, or confine them to specific address ranges.
Allegedly some of the anticheats are configuring the IOMMU through Windows APIs (vanguard, faceit, and a smattering of chinese anticheats). It’s hard to find good public information though. They do some mix of blocking access and deliberately leaving some pages as bait (and monitoring iommu d-bits/faults)
> These are full of bugs, so that will work for a while, until it doesn’t.
You're forgetting that vendors have to implement this into a pretty complicated system already and that configuration space is constantly changing due to new CPUs and other hardware coming into existence. There will always be holes due to emergent configuration and implementation issues.
> but HVCI will make this a pain once ubiquitously required.
Then there will be new pressure to get at the underlying keys that protect the system. When you consider the size of the keys vs. the size of the reward for liberating them it's obvious how this is going to play out.
> And you have to do all of this while also not being detected for aberrant behavior
For tournaments I don't understand the problem. Every other modern non computer based sport has this issue. They understand they can't be perfect, and any attempts to do so would ruin the nature of the competition itself, so you're better off recording as much data, video and audio from the player as you possibly can. That way if there are any accusations later you have the data to consider them.
This is a race to a corporate controlled future for no particularly good reason.
>Then there will be new pressure to get at the underlying keys that protect the system.
just decap your CPU no big deal it just destroys it.
Unless you do something stupid and expose, for some reason, a function from the TPM to return the private key (something that basically noone has done in the past 15 years), you're not breaking those keys. It hasn't been broken on a PS5, on an Xbox One, on an iPhone, on the vast majority of Android phones.
>Every other modern non computer based sport has this issue. They understand they can't be perfect
In every single popular online game right now, hop in on a game, there is a very high chance that one of the players is cheating. From regular scripting in DotA, to aimbotting, to whing, to anything you can imagine. For players, this leads to a frustrating experience. And frustration leads to players leaving the game. Unlike someone cheating at football, which you can personally physically grab and beat the shit out of for ruining the game for others, the best you can do online is leave. For developers, players leaving and a reputation of having cheaters means that your future attempts at making any money through the online portion of your game is dead.
You inferred break but I meant leak. As the financial incentives increase so does the pressure on the physical part of the system. Which historically has always been the weakest and is often exploited.
> hop in on a game
Do you mean public lobby? And you're willing to completely sacrifice your control over your own computer to have a pleasant public gaming experience? Aren't there other ways to solve this problem? In particular by moving it away from the monopolized server/lobby model we currently have?
> And frustration leads to players leaving the game.
It sounds like the game lacks capabilities if this is what is happening. In previous eras I would have just left the server and told the client to ignore it forever. Then servers which allow cheating either intentionally or due to bad management do not get played on.
> Unlike someone cheating at football
Think F1 and Nascar. They have cheating problems. There's millions of dollars on the line. Of course they do. Yet.. they seem to manage just fine without resorting to violence. Which I think is the more apt comparison because the lead for this story is how it impacts tournaments and other scenarios where monetary rewards are up for grabs.
> at making any money through the online portion of your game is dead.
Then you need to provide a service that is worth the money. Punting on the problem and insisting that gamers submit to these types of hardware schemes that don't actually address the totality of the problem is ridiculous. I don't see how it's a problem for them not to profit. Why should they? What is their "stewardship" worth here exactly?
> you're not breaking those keys. It hasn't been broken on a PS5, on an Xbox One, on an iPhone, on the vast majority of Android phones.
Because NSO/Mossad has a different way to get into these phones. When finding software exploits will no longer be viable, we might see some new interesting attacks..
The different way is called a hammer and your hands. They don't have magic tools to break encryption.
We're barely finding out software ways to attack the Xbox360 and it requires rowhammer level of fuckery. Hardware attacks are in the vast majority of cases destructive or relying on some side effects. If you don't leave JTAG pins on your board, they're pretty much never reliable.