frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

Command and Conquer Generals natively ported to macOS, iPhone, iPad using Fable

https://github.com/ammaarreshi/Generals-Mac-iOS-iPad/tree/main
78•asronline•1h ago

Comments

asronline•1h ago
EA released the Generals source under GPL v3, the GeneralsX project got it running on macOS/Linux, and I've taken it the rest of the way: native iOS and iPadOS builds of Zero Hour, plus Apple Silicon macOS.

What works (all verified on a real iPad and iPhone):

Campaign, Skirmish, and Generals Challenge: full missions, objectives, cutscenes, saves All audio: music, unit voices, EVA announcements, Challenge taunts, briefing FMVs Touch controls built for RTS: tap select, drag a selection box, long-press deselect, two-finger camera pan, pinch zoom Self-contained install: game data ships inside the app bundle It's the real engine: unmodified game logic compiled for ARM64, rendering DirectX 8 → DXVK → Vulkan → MoltenVK → Metal. Not emulation, not streaming.

No game assets are included or distributed. You need your own copy (Steam sells Zero Hour) and a script pulls the data from your own account. Code is GPL v3.

Repo, with a full engineering log of every bug and fix (the black-minimap one is a 2003 texture-format fallback that ate the alpha channel; worth a read if you like archaeology): https://github.com/ammaarreshi/Generals-Mac-iOS-iPad/blob/ma...

Building: macOS is about four commands; iPhone/iPad needs Xcode and a free Apple developer account since you sideload your own build. Known issues (long-session memory on iPad, a rare backgrounding crash) are documented in the README.

Credit: fbraz3/GeneralsX did the heavy macOS/Linux lifting, TheSuperHackers keep the community codebase alive, and EA did a genuinely good thing releasing the source. The engine fixes I found are heading upstream so every platform benefits.

(And of course, not affiliated with or endorsed by EA, and sorry China had to deal with all of those particle cannons in that demo video)

digitalbase•35m ago
Great stuff

I found the bundle scripts already prefer VULKAN_SDK/VULKAN_SDK_ROOT, but the build script only scans ~/VulkanSDK

8note•15m ago
nice!
bigyabai•1h ago
> rendering DirectX 8 → DXVK → Vulkan → MoltenVK → Metal

Another great case study in why native Vulkan drivers would be a boon for Apple's mobile computing. That's quite the render pipeline...

evanjrowley•1h ago
I wanna know if these techniques would be useful for Emperor: Battle for Dune (2001). It's the first 3D RTS by Westwood Studios, predating C&C Generals by just a couple years. It's popularity was hampered by intellectual property disputes and a introduction of a new faction that diverged from the book series lore. The gameplay, soundtrack, and campaign missions were awesome.
asronline•1h ago
Let me give it a go :)
gb2d_hn•6m ago
Came here to see if anyone mentioned Dune Emperor. Would love to see someone succeed
kriro•21m ago
I loved this game. First RTS I ever played :)
farseer•8m ago
This was one of the best RTS of the era. Still holds up today. The music was also very good.
advenn•1h ago
someone do it for debian, omg. i use debian family, it has been years, i haven't played this gem
asronline•1h ago
I can't tell you how many new hours I've poured in it since bringing it to my iPad
akho•46m ago
fbraz3/GeneralsX
namuol•58m ago
> Built on EA's GPL v3 source release via fbraz3/GeneralsX (which did the heavy lifting of the macOS/Linux port — this fork adds the iOS/iPadOS port and a set of engine fixes).
asronline•57m ago
I have a Renegade one going that does all of this from scratch (different engine) so it's def more than capable!
gigatree•44m ago
This is an actual dream come true
asronline•23m ago
Right!!
OsrsNeedsf2P•43m ago
I'm doing something similar, using AI to make Battle for Middle Earth (same engine) "open source" with AI: https://github.com/dginovker/BFME-Source-Code
asronline•40m ago
Sweet!!
baq•37m ago
When someone ported pylint to rust this place was full of ‘who will maintain this’ and met with blank stares when the answer was ‘what do you mean’ or ‘it’ll maintain itself’.

Good job. It was inevitable, but still someone had to, please excuse me, say the words.

adamraudonis•23m ago
That was me! Checkout my latest Fable project with 4D splats: https://news.ycombinator.com/item?id=48786245
arjie•20m ago
These LLMs are remarkable. I used Opus to revive for myself abandoned software and bring it up to date with the latest versions of the frameworks so I could add some features. And there's other software which I vendor and merge in upstream changes and self-manage. This would have been a near-impossibility in the past.

"Who will maintain this?" appears to be "Me with an agent". And it's great.

fnordpiglet•16m ago
Given the game is stable and the changes would be at the integration points, and Fable was able to do the direct integration, why would the answer not be “it’ll maintain itself” at some abstract level. The decision to maintain open source is up to the maintainers and I think the answer is “no one” 99.99% of the time, but I’ll wager if someone is willing to spend the tokens on it, a CI reintegration agent would do just fine in keeping it working as the underlying dependencies have required changes (which would really be only major changes in apple apis that aren’t backwards compatible.”

Pylint is different because it’s working against a necessarily dynamic wavefront that it has to keep parity with as it advances. All python changes, ecosystem adaptations, etc - and maintaining that with an AI harness in CI would never work. It would require a concerted effort and thought along the way.

So it’s sort of a different beast all together. In fact I think this is a great demonstration of using AI to resurrect technology built for X to work with Y, where X is dead and Y is current. Automating this feels like a net positive and because the original software is “finished” there isn’t decision making and strategy required.

HaloZero•32m ago
Is there any hope for Red Alert 2?
HaloZero•28m ago
Looks like EA did open source the game (only the first maybe)

https://github.com/electronicarts/CnC_Red_Alert

This seems to be the most active port saying it works on a Mac/Linux https://github.com/Daft-Freak/CnC_and_Red_Alert

asronline•22m ago
I wish they open sourced RA2 - I love that game, I heard they lost the source code :/
8note•16m ago
they lost the original assets so afaik they arent gonna make a remaster

cnc-ddraw i think would get it to run fine on a steam deck though, so you should be able to play it without much issue

siva7•31m ago
no way fable did this. It would have stopped after the words "command and conquer" and nerfed you to opus (while also landing you on some nsa watch list)
xg15•30m ago
> (tap-select, drag-box, long-press deselect, two-finger scroll, pinch zoom)

This is another "AI-ism" I noticed, mostly in coding agents - they seem to be very fond of making up new "compound nouns" (and occasionally verbs) to sum up relatively complex and specific concepts into single noun phrases. I wasn't sure if it's to save tokens or if the AI uses this to get a concise "identifier" for a concept that it can refer back to later, but I found it very noticeable.

I find the resulting sentences hard to read, though it does get better if you're aware of that tendency and make a conscious effort to parse the noun phrases. But I guess since it's just intermediate output from coding agents and not text for essays or blog posts, it's fine.

trentor•19m ago
Maybe LLMs are just Germans.
Rexxar•8m ago
That's the G in AGI.
sscaryterry•4m ago
Artificial German Ingenieurwerk
f3408fh•16m ago
Yes! It's infuriating. I've tried prohibiting them in my AGENTS.md but it's not 100% effective.

--- AGENTS.md ---

## Plain words, not jargon

Don't use jargon-as-shorthand. Say what you actually mean.

- Don't say "load-bearing assumptions". Say "the assumptions the xyz depends on".

- Don't say "cross-service". Name both services, e.g. "whether the X service can derive duration without calling the Y service". "Cross-X" is confusing because it hides which things are involved.

- Don't deliver verdicts as abstract noun-phrases like "Cross-RCA double-counting is unfounded". Say it plainly: "I checked whether the same root cause gets counted twice across RCA runs, and it doesn't."

8note•17m ago
ive had opus try movin Merlin's revenge up from director/shockwave.

the result: http://jhedin.github.io/merlin-s-revenge/

reasonably it works quite close to the lingo, but this is way difficult, and not just from being rusty. steve had most things triggered on the animation frame, which opus hasnt quite figured out by looking at the code and pulling stuff out of the .dir

i do remember that playing at double scale was a lot harder in general, but theres a really clear cooldown missing between attackes

OsrsNeedsf2P•15m ago
I just noticed a Flatpak folder in the repo. Does MacOS Support Flatpak somehow??
Eufrat•2m ago
IMHO, this is an actual good use of what sounds like a person guiding a model to do a mass conversion. Although, I wish the porting docs were a little wordsmithed by a human, the AI generated text style is grating.

The stakes are low, it’s mostly for fun and you can iterate on it. Compare this with Bun which was just like, “hey we converted everything to Bun, of course it works, what could possibly go wrong, you can put this into your production environment soon!”

lostlogin•13m ago
> Yes! It's infuriating.

No, it’s good. When they stop doing this, it’ll be harder spot the machine slop.

xg15•5m ago
Yeah, I wonder if part of the reasoning is built around those phrases, and therefore it can't get rid of them easily.

> "now I have the full picture"

I always interpreted that phrase as a sort of marker to delimit the phase in which it explores the codebase and gathers information from the phase in which it implements the changes.

Not sure if it's still done, but I think some months ago there was discussion that some of the phrases are injected by the inference loop to "steer" the model - e.g. "But wait" if a thought block was too short etc. Obviously such phrases couldn't be influenced by the prompt.

jorl17•15m ago
Excessive-hyphenization is ai-hyperfixation
daveguy•11m ago
FYI, AI isn't fond of a goddamn thing. They have token prediction quirks that don't follow typical English.

Command and Conquer Generals natively ported to macOS, iPhone, iPad using Fable

https://github.com/ammaarreshi/Generals-Mac-iOS-iPad/tree/main
79•asronline•1h ago•39 comments

Leaking YouTube creators' private videos

https://javoriuski.com/post/youtube
347•javxfps•4h ago•174 comments

Google Books (or similar) all book scans – $200k bounty (2025)

https://software.annas-archive.gl/AnnaArchivist/annas-archive/-/work_items/234
202•Cider9986•3h ago•95 comments

Verizon is About to Break our Watches

https://www.jefftk.com/p/verizon-is-about-to-break-our-watches
77•jefftk•2h ago•31 comments

Potential session/cache leakage between workspace instances or consumer accounts

https://github.com/anthropics/claude-code/issues/74066
241•chatmasta•6h ago•116 comments

Explanation of everything you can see in htop/top on Linux (2019)

https://peteris.rocks/blog/htop/
333•theanonymousone•8h ago•42 comments

Drone Physics

https://iahmed.me/post/drone-physics/
31•wrxd•4d ago•5 comments

Zig: All Package Management Functionality Moved from Compiler to Build System

https://ziglang.org/devlog/2026/#2026-06-30
43•tosh•4h ago•5 comments

BareMetal RAM Dumper – Bare-metal x86 tool for Cold Boot Attack experiments

https://github.com/pIat0n/BareMetal-RAM-Dumper
36•liffik•3h ago•10 comments

Windows CE Dreamcast Community Edition (wince-dc)

https://github.com/maximqaxd/wince-dc
64•msephton•5h ago•11 comments

Meta data center water discharges suspended for contaminating water supply

https://www.tomshardware.com/tech-industry/data-centers/cheyenne-suspends-data-center-fill-and-fl...
152•sensanaty•4h ago•49 comments

Curveball

https://mightyburger.net/projects/curveball/
33•toilet•4h ago•7 comments

Astrophysicists Puzzle over Webb’s New Universe

https://www.quantamagazine.org/astrophysicists-puzzle-over-webbs-new-universe-20260702/
168•jnord•11h ago•103 comments

EndBASIC 0.14: Are we multimedia yet?

https://www.endbasic.dev/2026/07/endbasic-0.14.html
18•jmmv•3h ago•0 comments

Wicklow hotel cancels 'secretive' Peter Thiel group conference

https://www.irishtimes.com/ireland/2026/07/03/wicklow-hotel-cancels-secretive-peter-thiel-confere...
41•01-_-•1h ago•9 comments

Maybe you should learn something

https://www.marginalia.nu/log/a_135_learn/
385•tylerdane•17h ago•178 comments

The .join() that should be a bug

https://kronotop.com/blog/the-join-that-should-be-a-bug/
13•mastabadtomm•4d ago•0 comments

Plein Air

https://art.joonas.wtf/
44•bookofjoe•3h ago•5 comments

Designing DB partitions you don't have to babysit

https://explainanalyze.com/p/designing-partitioning-you-dont-have-to-babysit/
38•rtolkachev•3d ago•6 comments

Finland's last analogue landline phones go silent after 150 years

https://www.euronews.com/next/2026/06/30/finlands-last-analogue-landline-phones-go-silent-after-1...
65•ohjeez•3h ago•15 comments

It's not me, it's the compiler

https://parsa.wtf/cast/
11•SVI•3d ago•1 comments

Breaking the Bird Barrier: Scientist Decodes Zebra Finch Language

https://www.freepressjournal.in/education/breaking-the-bird-barrier-scientist-decodes-zebra-finch...
67•yyyk•3d ago•19 comments

Fable created novel 4D splat format

https://adamraudonis.github.io/splats4D/
28•adamraudonis•5h ago•4 comments

Postgres data stored in Parquet on S3: LTAP architecture explained

https://www.databricks.com/blog/lakebase-ltap-rethinking-database-storage
145•andrenotgiant•3d ago•50 comments

Neural Render Proxies for Interactive and Differentiable Lighting

https://studios.disneyresearch.com/2026/07/01/neural-render-proxies-for-interactive-and-different...
26•tobr•2d ago•3 comments

Game Boy Advance Dev: Logging to the Console

https://www.mattgreer.dev/blog/gba-dev-logging/
11•jandeboevrie•3h ago•0 comments

Performance per dollar is getting faster and cheaper

https://www.wafer.ai/blog/glm52-amd
337•latchkey•23h ago•132 comments

Leanstral 1.5: Proof abundance for all

https://mistral.ai/news/leanstral-1-5/
341•programLyrique•22h ago•93 comments

The bottleneck might be the air in the room

https://blog.mikebowler.ca/2026/07/03/co2-and-decision-making/
704•gslin•14h ago•402 comments

Night Witches – all-female Soviet aviator regiment WW2

https://en.wikipedia.org/wiki/Night_Witches
73•gverrilla•4d ago•26 comments