> 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
Neither the HN submission or GitHub repository says it's first or novel though? Just that it's (another) port of it?
The actually important work (of making the original code release portable and then create Linux and macOS ports) had already been done in https://github.com/fbraz3/GeneralsX. There is really not much to see here.
It's so crazy to remember sitting in front of W3Schools after school trying to learn PHP to create a website, and hear people today saying it isn't very impressive a fucking machine can automatically translate/port code from one platform to another, even a machine doing that with PHP3 > PHP4 code back then would have been cool but nope, "not at all impressive" just because things improved so much, so quickly, everyone got quickly used to the status quo.
I agree with you in general though, the title does make it sound like more was done than what was done in actuality, as it was just a iOS port. Still, I'd wager it seems interesting enough, given it's on the front page right now.
It's a good example of AI psychosis I guess, people reading things into a headline which they want to be true, no matter what reality says ;)
When you look at the commit history, the actual changes come down to a few dozen lines of code, all of them absolutely trivial, and most of those code changes seem to be cherry-picked bugfixes from the original project.
More like "wisdom of the crowds" (for better or worse) unless you're trying to argue that everyone who upvotes/downvotes on HN suffers from AI psychosis ;)
You can’t downvote articles, so a relatively small amount of enthusiastic people slamming upvote will do it.
Have you ported a desktop title to mobile? It is NOT trivial. This is the next step in a continuing chain of work that builds upon the next and next person's work, but this is not a trivial step. If it was so trivial, why hadn't it already been done?
The jump to Apple Silicon is net-new work, and they aren't trying to pretend they did more than they did.
> This fork — the iOS/iPadOS port (arm64-ios cross-build, DXVK-on-iOS, touch controls, app lifecycle, packaging) and engine fixes, offered upstream
They are even asking you to support the original creators on Steam, so they are getting a cut. No one is stealing assets. I would love to see more of this sort of work being done out in the wild, not discouraging it. Were previous steps harder? Absolutely. Doesn't that invalidate this step? No.
I had no idea how to do any of this. I let GPT-5.5 download Ghidra + MCP connectors, start the project, and do all the work. I gave it my vision and gave it iterative user testing feedback.
Now I have a MUCH more playable UX.
O: https://store.steampowered.com/app/328440/Deadlock_Planetary...
1983 will seem like nothing by comparison.
My custom IDA CLI is just a simple thing on top of IDA Python's integration + ida-domain + some higher-level helpers, and works as a daemon with workers, so a stale/bad request doesn't corrupt an IDA DB (an issue I had when I was using idasql).
A bit offtopic, but: do you have any links to your efforts? I'm curious to see what other people do in this area.
Then recently I found https://github.com/bkerler/ida_rpc which seems to be ~60% the same thing as the one I have, the only big difference is that I do not give any special commands to LLMs, they just have to write Python in scripts/inline heredocs to interact with IDA. This lets them do a lot more interesting things since they get a full programming language.
This is an example of how LLMs work with idagent (`ida` is implicitly imported, ida.types, ida.comments is helper's own wrappers): https://paste.debian.net/hidden/cf46a122
More interesting example that was used to let the LLM/me track the rename progress for the initial function renames + gaps (code-looking like bytes that weren't inside of functions, IDA's autoanalysis missed some real functions). Although the game turned out to be small enough with only ~1500 real game functions that needed renames, which was done in ~10 hours of agent time total I think (I didn't parallelize with multiple agents). https://paste.debian.net/hidden/bf458b3a
To be honest, you can probably have an agent vibecode a similar MVP tool to the one I have in about an hour-two :)
I've spent almost 30 years building applications for the web. I've been switching my attention to different models of distribution in part because I see a desire for people to not be paying monthly seat subscriptions, but also because it can simplify my own operations - I want to move to a solo indie dev model, and giving you an executable you run means you look after "operations", and I don't. Desktop applications in particular have the potential for you to integrate them with your agent workflows.
But if I put effort into building some secret sauce into an application, and there is then a risk that by distributing it, it gets reverse engineered and then rebuilt by competitors, malicious actors, whoever, there is now the same economic risk to software distribution as there is to DRM-free media distribution. As a result, I might just not do it.
Now, some people will argue software wants to be free - build on the F/LOSS economic model, this becomes less of an issue - but there isn't really a viable F/LOSS economic model for most developers.
Per seat monthly subscriptions with remote access seems like the way we need to be, then...
That said, I also think that public reviews will start getting recalibrated by the users themselves. People will start noticing that programs are unreliable or lack features which are seemingly simple to implement with an LLM. The quality of an app may very well depend on how hard it is to replicate, otherwise, why not ship your own?
If you already have engineers on staff, a few tens (or even hundreds) of dollars per month per plugin is likely a rounding error budget-wise. If you don't have your own engineers, you're probably not going to be able to produce something as good (reliable, well thought out, etc) as a commercial offering.
I had the same gut reaction as you, but the reality is much more subtle. We work with several clients who are bought into at least one of these ecosystems, and there's no way the math ever works out in favor of building an in-house solution.
It works great just like that.
Curious - why like this? I usually tell it to write down the analysis once all is clear, so I'm wondering if your approach is better.
These notes files do end up being more of a “how we got here” messy journal and less of a real report but they’re full of useful breadcrumbs that make it quick to pick things back up in a fresh context. Having it write a summary report on a topic based on the raw notes works out pretty good.
Another useful thing with these (not RE) is that sometimes I end up starting to debug a problem and I (or Claude) realize that it might be related to a different problem and being able to then cross-reference between the two raw notes files while pulling that thread seems to work well.
Whether or not it’s the “right” approach, I overall tend to treat sessions/context as ephemeral and need some kind of more solid WIP artifact. I do work in an industry that tends to trigger safeguards (unmanned/autonomous agricultural aviation) as well, and have occasionally gotten Claude to a point where I can’t get a session to continue but Codex will pick it up and finish.
Of course then you have Starfield which is so unimaginable uninspiring that nothing can really be done to save it..
My gaming preference is to go to an area as per game design, so the fact that I would be outmatched does not bother me and would prefer it that way. I do, however, understand why the game designers chose level scaling for what they wanted to achieve.
You can still work around this without resorting to level scaling. You can give players an exploration option that avoids fighting, but sacrifices something else (ie., you can explore as a ghost, but can't take any loot with you). You can give low-level players some kind of newbie buff that will keep them alive (but won't allow them to win). You could make the perception of the world level dependent. You could also just scale locations or regions once, so that if a player reaches it at a low level, it'll become easier, and if you get there at a high level, it'll become the de facto endgame area. You could also just not implement leveling at all: The Bard's Tale (remake) was a bit like this.
Leveling up is not fun if it doesn't have an impact on how your character interacts with the world. If you're going to use level scaling to make leveling a no-op, it's often better to just go the action-adventure route and not pretend the game is an RPG. Seriously: what's the point of pumping my Strength stat if Villager A always has enough vitality to offset any gains on my part? It's especially grating if it's the same village and the same villager, revisited 40 hours later, and it still takes 3/4 of your health in a hit.
I don't think naive level scaling (Oblivion/Skyrim-style) is the right solution for "let the player go anywhere they want from the start". It's certainly a solution, but not a good one. A more nuanced mix of story justification, natural movement limitations (distance, special skills needed to get somewhere), level/area design (make areas with harder enemies less likely to be visited first), some non-combat exploration options, etc. all seem like a better way of letting the player experience open-world freedom without taking away the RPG progression "from zero to hero" from them.
I played a lot of Might and Magic VII back in the day (a few years before Morrowind IIRC). It was a huge world and you could go anywhere after getting off the tutorial island. Some endgame areas were gated behind lengthy quests, some areas were inaccessible without reaching them "the hard way" for the first time, others were impossible to reach without special skills or items, and there were skills/spells (invisibility, fly) that allowed safe passage through high-level areas if needed. Taken as a whole, it gave you a lot of options in terms of where to go at any given time, protected you to some extent from getting insta-killed because you made a wrong turn, but didn't make exploration trivial or level progression pointless. When you give players freedom, you should also allow them to commit suicide by charging at a horde of dragons while underleveled and underprepared. Trying to make the whole world immediately accessible is the kind of handholding that is actually limiting in the long run, and takes away an important part of the RPG experience. I don't think there are many CRPGs outside of TES that use level scaling - personally, I only experienced one in Wizardry 8, and it was way less absurd than Oblivion (areas had level ranges - you won't get an endgame area mob to be level 1 if you happen to reach it at that level yourself, and Villager A in starting area won't ever get to level 20 if you revisit it later).
So, between some limited/partial scaling and all the other design choices you could make, using Oblivion-like level scaling to "make the world accessible" is just bad, lazy design to me.
Then there's the "level up by doing" mechanic, which is a mixed bag. It can be done well, but in Oblivion, it only resulted in putting a book on the spacebar. Voila, my character literally jumps around and looks utterly idiotic, but Acrobatics levels rise.
Being unable to just go fight a dragon at level 1, and then progressing to routinely curbstomping dragons (Baldur's Gate 2 - solo Sorcerer run is my favorite example: "I see, you're resistant to magic. Let me introduce you to the Magic Sequencer with Lower Resistance x4. Time stop. Horrid wilting. Wish rest. Oh, I didn't need to, you're dead already.") by the end. It's not the only selling point of RPGs, and it can sometimes be omitted entirely (e.g., Disco Elysium). But if there is a classic leveling system, I expect it to work, from zero to hero. It's not as fun if the numbers going up don't translate into real changes in how your character interacts with the world.
I suspect it won't stop people, and that it won't be much of an issue in a lot of cases. I wouldn't want to be the one to test it in any sort of court though. Not even on the other side of things, where it'll become even more of a nightmare to protect your indie IP on any form of platform which doesn't heavily regulate things.
The code is also copyrighted and owning a license for a game does not make you safe from being sued for pirating that game or its code. It's fine in this case only because the engine was open sourced.
Nothing makes you safe from getting sued.
See also: [1]. You could also reverse engineer in a solid jurisdiction.
I ran C&C Generals in Wine on Linux back in the days. More stable than Windows XP.
(as always, IANAL)
Interoperability falls under what gets filtered out in the filtration step of the test.