[HN Gopher] EA Open Sources Command and Conquer: Red Alert, alon...
       ___________________________________________________________________
        
       EA Open Sources Command and Conquer: Red Alert, along with other
       games
        
       Author : Klaster_1
       Score  : 1169 points
       Date   : 2025-02-27 18:42 UTC (1 days ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | HelloUsername wrote:
       | Red Alert: https://github.com/electronicarts/CnC_Red_Alert
       | 
       | Tiberian Dawn:
       | https://github.com/electronicarts/CnC_Tiberian_Dawn
       | 
       | Renegade: https://github.com/electronicarts/CnC_Renegade
       | 
       | Generals Zero Hour:
       | https://github.com/electronicarts/CnC_Generals_Zero_Hour
       | 
       | EA post: https://www.ea.com/games/command-and-conquer/command-
       | and-con...
       | 
       | Reddit post:
       | https://www.reddit.com/r/commandandconquer/comments/1izmpmb
       | 
       | (Deleted Reddit post:
       | https://www.reddit.com/r/commandandconquer/comments/1izmml4/)
        
         | adenta wrote:
         | praying for Red Alert 2
        
           | BuildTheRobots wrote:
           | Slightly odd (age wise) Generals got open sourced before RA2.
           | I wonder why?
        
             | apetresc wrote:
             | It is apparently the case that the original source for
             | Tiberian Sun and RA2 has been lost; EA doesn't have it.
             | There's been rumours to that effect for a while.
        
               | BuyMyBitcoins wrote:
               | To acquire the source code we must first obtain the
               | Tacitus.
        
               | blibble wrote:
               | dead and back commander, dead and back
               | 
               | I did very much enjoy the Firestorm expansion story line
               | 
               | roughly: a rogue AI (CABAL) betraying the world to try
               | and achieve its genocidal master (Kane)'s goals
               | 
               | then because you can't operate your army without an AI,
               | you steal the enemy's (non-crazy) AI and turn it evil
               | 
               | one particularly memorable cheesy cutscene:
               | https://www.youtube.com/watch?v=qEjtiACglSE
               | General: CABAL is too dangerous and must be deactivated
               | CABAL: No Generals, I will not allow it. My survival is
               | paramount.              (AI instructs its cyborgs begin
               | the coup)              CABAL: IT IS MY WORLD NOW! LISTEN
               | TO THE SOUNDS OF YOUR OWN EXTINCTION, HUMAN
               | 
               | I wonder if Altman played it...
        
               | evanjrowley wrote:
               | Thanks for the insight. I was wondering the same thing.
        
               | iamacyborg wrote:
               | Damn, Tiberian Sun was my favourite in that series
        
               | hammock wrote:
               | I was always trying to use the god mode and make a
               | subterranean schoolbus in that game. Could never get it
               | to work. Is it because it didn't have sprites for it, or
               | what?
        
               | slavik81 wrote:
               | Tiberian Sun was the first PC game I ever owned. I picked
               | my current username for Westwood Online and have been
               | using it ever since.
               | 
               | I had played Red Alert at a friend's house and when I
               | went to buy my own copy, the guy at the shop recommend I
               | get Tiberian Sun instead, as it had just released. I must
               | admit that I was a bit disappointed in the gameplay as
               | compared to Red Alert, but the world building was
               | amazing. I spent hours in the map editor building huge
               | bases and custom units.
               | 
               | RAedit was such a fantastic tool. It was really
               | frustrating how much more difficult it became to make
               | custom maps once the games went 3D with Emperor: Battle
               | for Dune and C&C: Renegade. I tried my best, but the
               | learning curve for 3DSMax was steep.
        
               | mock-possum wrote:
               | Blizzard's commitment to providing editors for the RTS
               | games was a big part of my early loyalty - all the way up
               | through Star Craft 2, you could just pop the editor open
               | and start making your own maps and scenarios.
               | 
               | It's what gave us DotA, and Tower Defense, and maybe some
               | others I'm not remembering - maybe even vampire survivors
               | ish for horde survival?
        
               | piyiotisk wrote:
               | Mine too! I still play it sometimes through cncnet but
               | you need a windows machine or a VM?
        
               | SecretDreams wrote:
               | Yuri's or bust!
        
               | lawlessone wrote:
               | Ahh, i was hoping for TBS remaster. I guess this is why i
               | haven't seen it.
        
               | Aeolun wrote:
               | How is that possible? Surely someone that worked on it
               | must still have it in one of their archives somewhere? It
               | was made in a time when software was still free.
               | 
               | The only thing I can think is that EA deliberately came
               | down hard on that and were a little bit too zealous.
        
           | t-writescode wrote:
           | Honestly, I wouldn't be too sad about them remaking RA2 and
           | giving us easy-to-use online play. I wonder if that's why
           | there's a delay - there's likely a *lot* of love for RA2
        
             | BuildTheRobots wrote:
             | Have a look at Mental Omega, a quite over the top RA2
             | Yuri's Revenge mod that makes it easy to play on modern
             | windows, play online and also adds a tonne of extra content
             | should you want it.
             | 
             | https://mentalomega.com/
        
             | Already__Taken wrote:
             | There's a patched dll around that replaces IPX for TCP.
             | 
             | Turn off ipv6, the lobbies work but not the game when you
             | try to start.
        
             | clemiclemen wrote:
             | I don't if the remake will come at some point but in the
             | mean time, you can enjoy this online port by fans:
             | https://game.chronodivide.com/
             | 
             | You can play Red Alert 2 in the browser, with other players
             | online.
        
               | cjrp wrote:
               | Thanks, I just lost my afternoon to this!
        
           | tomkarho wrote:
           | If that ever happens I would be fascinated to see what the
           | folks who made Mental Omega makes out of it.
        
           | joshuaturner wrote:
           | Apparently the source code for RA2 has been lost (along with
           | Tiberian Sun)
        
           | Dead_Lemon wrote:
           | I would recommend checking out the openRA fork for Red Alart
           | 2, Romanovs-Vengeance,
           | https://github.com/MustaphaTR/Romanovs-Vengeance
        
         | MortyWaves wrote:
         | So not just one game like the title?
        
           | HelloUsername wrote:
           | Perhaps @dang can change URL to
           | https://www.ea.com/games/command-and-conquer/command-and-
           | con...
        
             | wglb wrote:
             | Best to email hn@ycombinator.com; dang can't possibly read
             | all comments.
        
               | 4ggr0 wrote:
               | wouldn't surprise me if dang is notified when he's
               | mentioned :D
        
               | jolmg wrote:
               | He's not. He's mentioned that.
        
               | VanTheBrand wrote:
               | Yeah. That said, if I were him and I were notified I'd
               | probably publicly claim that wasn't the case to cut down
               | on abuse! (Not saying that's what's going on just saying
               | what I'd do)
        
               | adastra22 wrote:
               | It sure seems like he does.
        
               | wglb wrote:
               | Between 2025-02-26 at 10:20 and 24 hours later, there
               | were 10563 posts to HN.
               | 
               | So it is simply not humanly possible.
        
               | account42 wrote:
               | That's only 7.34 posts per minute so someone with
               | insomnia might be able to do it.
               | 
               | Dang could also filter for @dang and similar references
               | since no matter how often people tell them to use email
               | that's what many users will default to.
        
               | wglb wrote:
               | It would be easy enough for you to validate. Just start
               | with the "comments" tab and keep up for one day.
        
         | MisterTea wrote:
         | Holy shit, Renegade. I had struck that from memory. God, I
         | remember trying to play Renegade with my brother and all I can
         | remember was a buggy nightmare. Also having flashbacks of
         | extreme vitriol for gamespy.
        
           | paulryanrogers wrote:
           | It was a fun time at LAN parties. There is a fan remake:
           | https://totemarts.games/games/renegade-x/
        
           | slavik81 wrote:
           | I loved Renegade. The multiplayer demo was great. It had such
           | excellent map design. The trade-offs in buying upgrades felt
           | very strategic, as well.
        
         | lloeki wrote:
         | Looks like the Tiberian Dawn code is Windows too (so C&C Gold /
         | W95)
         | 
         | I was kind of wishing it was the 1995 DOS version source code!
         | 
         | (also, no Dune 2000)
        
           | evanjrowley wrote:
           | _Emporer: Battle for Dune_ was their first 3D RTS and I
           | personally loved the gameplay, story, and soundtrack. I very
           | much hope it will eventually be open-sourced.
        
             | bayindirh wrote:
             | I can play it back to back for days. It's _so_ enjoyable
             | and unique.
        
             | FirmwareBurner wrote:
             | Yeah, I wonder why Emperor: Battle for Dune is not part of
             | the open source since it's basically an earlier version of
             | the General Engine. Would be weird to have the source code
             | for that but not for Emperor.
        
               | Macha wrote:
               | Licensing perhaps
        
               | FirmwareBurner wrote:
               | -Is the licensing done Yuri?
               | 
               | -No comrade premier, it has only begone.
        
             | nunodonato wrote:
             | I play this game once a year... every year :)
        
             | cahoot_bird wrote:
             | I really liked that game, it had a lot of strategy to it
             | and a decent story.
             | 
             | The multiplayer had a common key bug that made it hard on
             | some maps. The atreides airdrones could fly at the edge of
             | the map and not be targeted, and take out the harvester
             | carryalls / and other air units There were claims of a
             | flame tank bug that could target any unit that was
             | mentioned on the forums much much later, but I don't know
             | if the details were ever revealed, I never figured it out
             | so I guess its just theoretical..
        
           | zenlot wrote:
           | Dune 2000 - countless hours spent! Ah!
        
           | bizrod wrote:
           | There's Dune 2000 assets in the Red Alert repo. I'm not sure
           | how much of it is there. https://github.com/electronicarts/Cn
           | C_Red_Alert/blob/main/CO...
        
             | toxik wrote:
             | I think those are holdovers from Dune 2, if you search for
             | Dune you'll find explicit references to Dune 2 stuff.
        
           | therealpygon wrote:
           | The 1995 source code was effectively released when they open-
           | sourced the Remastered collection 5 years ago. The remastered
           | collection was simply a wrapper to make them Windows-
           | compatible via DLLs (basically).
           | 
           | https://github.com/electronicarts/CnC_Remastered_Collection/.
           | ..
        
         | mizzao wrote:
         | Wow, Renegade? That's amazing. Enjoyed so many hours of flame
         | tank / stealth tank rushes in that game.
         | 
         | Hope someone takes it to the next level with open source.
        
           | svieira wrote:
           | There is a re-implementation from scratch (I believe) here:
           | https://totemarts.games/games/renegade-x/
        
           | almostdeadguy wrote:
           | This very early 2000s period of PC videogames is the period
           | I'm most nostalgic for. There were a bunch of weird and kinda
           | janky genre combos games being created. C&C Renegade, Giants:
           | Citizen Kabuto, Sacrifice, Black & White, Tribes 2, etc. Some
           | of this stuff was glitch-city, but it always seemed really
           | creative and genuinely fun despite a lot of bad netcode, blue
           | screens, etc.
        
         | navigate8310 wrote:
         | Waiting for Road Rash
        
         | alberth wrote:
         | Interesting to see how much Assembly was used in Red Alert
         | (19.5% of code base), whereas all the rest is < 3%)
        
           | rightbyte wrote:
           | Why would that be? Old code from C&C which in turn inherited
           | from Dune?
        
             | ukd1 wrote:
             | Could be, though also maybe optimization?
        
               | rightbyte wrote:
               | Dunno just looking at some file names they seem generic.
               | I would guess carry over since Dune.
        
           | xgkickt wrote:
           | I haven't looked through the code yet, but could be
           | real/protected mode interop. IME render code back then was
           | typically in asm also.
        
       | anotherhue wrote:
       | EA, I've cursed your name since you smothered Westwood. But thank
       | you for this.
        
         | keyringlight wrote:
         | Louis Castle, co-founder of Westwood tells it a bit differently
         | [0]. From memory after the EA acquisition they stopped doing
         | their edutainment/casual games, which is where they used to
         | nurture their junior developers along with taking on too many
         | major projects because EA gave them the resources to do that.
         | That led to less quality and later Westwood releases (Renegade,
         | Emperor Battle for Dune) suffered.
         | 
         | The podcast also includes details of Westwood's filming setup,
         | which seemed to include motion tracking which would have been
         | interesting in the context of performance capture, but before
         | its time.
         | 
         | [0] - https://www.idlethumbs.net/designernotes/episodes/louis-
         | cast...
        
       | Flimm wrote:
       | Nice! Now this piece of video game history can be better shared
       | and preserved. Does this repo include the artistic assists, or
       | does it include the code only?
        
         | ratmice wrote:
         | I think this qualifies as art.
         | 
         | char insert_string1[]={"\n\r;\n\r"}; char
         | insert_string2[]={";For some reason, inserting these lines
         | makes it assemble correctly\n\r"};
        
           | inetknght wrote:
           | Oh boy when I see stuff like that in _modern_ code, I start
           | looking for undefined behavior occurring elsewhere in the
           | same or dependent translation units...
        
             | dwattttt wrote:
             | Normally I'd totally agree, but looking closely, that's a
             | _comment_. If it is a load bearing comment, we're looking
             | at an assembler bug there.
             | 
             | EDIT: Looking more closely, it's less absurd than this. The
             | comment is referring to directives on the next lines that
             | have an impact, rather than itself.
        
         | bangaladore wrote:
         | > To use the compiled binaries, you must own the game.
         | 
         | I take that as buy the game to get the assets.
        
       | nicce wrote:
       | > To use the compiled binaries, you must own the game.
       | 
       | > This repository and its contents are licensed under the GPL v3
       | license, with additional terms applied. Please see LICENSE.md for
       | details.
       | 
       | It does not sound open-source to me...
        
         | josephcsible wrote:
         | I think they just mean that for the game to work, you'll need
         | art assets, etc. from the original game that aren't part of the
         | code they open-sourced. I don't think it's a licensing
         | restriction. (And even if it were, they released it under the
         | GPLv3, which says "If the Program as you received it, or any
         | part of it, contains a notice stating that it is governed by
         | this License along with a term that is a further restriction,
         | you may remove that term.", so you could just ignore it.)
        
           | nicce wrote:
           | It certainly sounds like all you need is in the repository,
           | and the usage of the resulting binaries are still restricted.
           | Whether they find assets correctly or not correctly should
           | not matter, if they are somewhere else.
        
             | Macha wrote:
             | > the usage of the resulting binaries are still restricted
             | 
             | To use the binaries, you need the game assets. The only
             | legal way to acquire the game assets is to own the game, as
             | EA have not included them in this release.
             | 
             | This is less a licensing issue, but stating the real
             | limitations, that EA aren't volunteering to do the leg work
             | to remove. Which is fine.
        
               | nicce wrote:
               | You could word it differently. Why not mention it?
               | 
               | It is separate problem if runtime assets are missing and
               | the game is not actually a game without them or gives an
               | error message. Let's also assume that you can bypass DX
               | dependencies with other means.
               | 
               | The current wording sounds like binaries are always
               | proprietary, no matter what.
        
               | worldsayshi wrote:
               | Where are the assets for openra coming from? I guess
               | those could be used in a fork of this?
        
               | amlib wrote:
               | I'm pretty sure they get their assets from the freeware
               | release
        
         | oniony wrote:
         | The additional terms are under term 7 of the GPLv3, so --
         | assuming they're valid -- would still render this open-source.
        
         | jsheard wrote:
         | It's the same model as the idTech GPL releases - the code is
         | open source, the rest of the game is not. To legally play the
         | original game or a modified version of it then you'll still
         | need to buy it for the assets, but there's nothing stopping you
         | from _only_ taking the code and building a brand new game on it
         | like various studios have done with idTech (e.g. Selaco and
         | Wrath: Aeon of Ruin).
        
           | ryandrake wrote:
           | Yea, this seems -fine- to me. Even if they had to rip out
           | some third-party licensed code that they couldn't open
           | source[1], to the point where the game wouldn't even compile!
           | Some code is always better than no code. The open source
           | community can/will fill in any gaps.
           | 
           | 1: Which seems to be the case here. To fully compile, you
           | need:
           | 
           | DirectX 5 SDK, DirectX Media 5.1 SDK, Greenleaf
           | Communications Library (GCL), and Human Machine Interface
           | (HMI) "Sound Operating System" (SOS), or disable the code
           | that calls into them.
        
         | dubcanada wrote:
         | Does open-source mean it's free? I don't think that is what it
         | means, it just means the source is open, viewable, and you are
         | free to use it as per the licensing.
        
           | nicce wrote:
           | Yes, it actually means that.
           | 
           | https://opensource.org/osd
        
           | Flimm wrote:
           | If it's open source, people are free to redistribute it.
           | Copies of open source software can be sold for money, but
           | open source licenses allow redistributing the software for
           | free. In practise, that means most people won't buy the open
           | source software from a seller, they will choose instead to
           | get a copy from someone who is willing to redistribute it
           | free of charge.
        
           | lucb1e wrote:
           | > it just means the source is open, viewable
           | 
           | That's called source-available, unless "use it as per the
           | licensing" includes further freedoms
        
         | Macha wrote:
         | I mean, it sounds like the Red Alert code is available under
         | GPLv3 (plus some additional "we want to be very clear, this
         | doesn't cover the trademark" terms tacked on), but you can't
         | build it without DX5, which gets compiled into the binary,
         | thereby making the binary non-free. Someone could port it from
         | DX5, GCL, and HMI and produce something that builds as GPL.
         | 
         | The other part is it doesn't include the game assets or usable
         | replacements, much like OpenRA, or OpenTTD for the first half
         | of its life.
         | 
         | I'm not going to fault EA too much for this approach,
         | particularly if it paves the way to open sourcing e.g. EOL MMOs
         | and the like if game devs don't feel the obligation to port
         | away from all the commercial libraries. I've seen game devs who
         | I genuinely believe on this say things to the effect of "Oh
         | yeah, we'd totally open source dead game X, except we'd have to
         | port it away from Bink and Havok and XYZ, and we don't have the
         | time to do that for 0 revenue"
        
           | nicce wrote:
           | That sounds reasonable, but they could have worded it
           | differently.
           | 
           | They first statement about DX:
           | 
           | > or write new replacements (or remove the code using them
           | entirely) for the following libraries;
           | 
           | But, they say that binary is proprietary regardless, no
           | conditions. So it is very difficult to say.
           | 
           | If the code compiles without assets (no mention about them,
           | it sounds like it should compile), then the resulting binary
           | should be free to use. Missing runtime assets are different
           | problem, and separate from the binary usage permissions.
        
           | lloeki wrote:
           | OpenRA doesn't ship with the assets+ for Tiberian Dawn, Red
           | Alert, and Dune 2000 but they're downloadable straight from
           | the UI as they were made officially available by EA/Westwood.
           | 
           | + Without the music and cutscenes. If you want that you need
           | original discs or other dematerialized versions.
        
         | AdmiralAsshat wrote:
         | It's realistically the best-case scenario we can hope for in
         | most cases. If you want all old games to be FREE, then, fine,
         | this won't make you happy. But for those of us who are just
         | happy to be able to play the ancient PC games from our youth on
         | modern systems, and are willing to PAY for it, this kind of
         | license separates the engine from the assets, and effectively
         | requires you to prove that you have bought the game by
         | supplying the assets. But then you can do whatever you want
         | with it to get it running on your favorite Linux distro, etc.
         | 
         | I am personally not opposed to this. It worked for Doom.
        
       | ageitgey wrote:
       | Who's going to be the hero that builds a modern update of C&C
       | Generals/Zero Hour with 4k rendering, raytracing, etc?
        
         | theandrewbailey wrote:
         | I'd settle for a native Linux build.
        
           | tete wrote:
           | Would be nice. But they all work just fine with wine and/or
           | proton.
        
             | insane_dreamer wrote:
             | I haven't tried wine in ~15 years, but it was pretty
             | useless for gaming back then. Has it much improved?
        
               | Sesse__ wrote:
               | Basically the entire premise of the Steam Deck is built
               | on WINE (via a Valve-developed fork, Proton).
        
               | sho_hn wrote:
               | Noting that Proton is regularly rebased on upstream, and
               | Valve is contracting CodeWeavers, the same company which
               | employs many core Wine contributors.
               | 
               | Fork is certainly technically the correct word, but
               | "distribution" might give more the right impression.
        
               | khedoros1 wrote:
               | When someone releases a game in a Windows version and a
               | Linux version, the current Wine-based compatibility
               | layers mean that the Windows one is more likely to run
               | without issue than the native binary is.
               | 
               | I built a Linux gaming desktop 5 years ago. The only
               | thing that regularly causes more than minor issues is
               | that many online games use incompatible anticheat
               | technology. I pretty much play exclusively single-player
               | games on PC, so it hasn't been a practical issue for me.
        
               | Rebelgecko wrote:
               | It's pretty awesome. Some of the compatibility layers
               | built on Wine (Valve's Proton/Codeweavers
               | Crossover/Whisky) are _almost_ plug and play. With Steam
               | on Linux, a lot of games work seamlessly. I 've only ran
               | into trouble with very new games and multiplayer games
               | with invasive anti-cheat that freaks out when they're
               | running in an environment that doesn't look like a normal
               | windows install
               | 
               | The performance hit is surprisingly low. It's not rare
               | for the windows binary to run better on linux than the
               | native one (when it's an option)
        
               | lucb1e wrote:
               | Just yesterday I got the Linux version of an indie game
               | made with Unity and it doesn't even launch. Fetched the
               | Windows build, ran "wine game.exe" and it just ran.
               | Couple other things (C# projects iirc) also worked well
               | 
               | This is not a Unity game, but especially with ancient
               | stuff like Red Alert? I would certainly try it and expect
               | good results. Some years ago, Wine always used to give me
               | trouble and never worked unless you used some special
               | blend of options (like Proton and PlayOnLinux help with).
               | Maybe those times have passed
        
               | seba_dos1 wrote:
               | These days Wine works better than Windows for some kinds
               | of games.
        
               | account42 wrote:
               | Wine was far from useless for gaming ing 2010.
        
               | alex7o wrote:
               | Man wine works on Android now, with stuff like winlator.
               | I saw a video of someone playing fallout 4.
        
             | josephg wrote:
             | Did they eventually fix the game desync bug that would
             | happen when you have a multi-core CPU?
             | 
             | We used to play Generals at LAN parties all the time - but
             | once multicore CPUs hit the market, it was difficult to
             | just get to the end of a game, because peers would desync
             | and you'd suddenly find yourself playing singleplayer. Its
             | clearly some race condition in the game engine which makes
             | the game non-deterministic in a multicore situation. Does
             | anyone know - is that still a problem?
        
               | skhr0680 wrote:
               | I'm going to be nice to the net code and say that it has
               | issues because of its age, but multicore CPUs don't cause
               | any issues as far as I know:
               | https://www.youtube.com/watch?v=tS0UL9QC2c4
        
             | chpatrick wrote:
             | Generals has a really annoying issue where it just
             | desynchronizes and drops you out of a multiplayer game
             | after a random amount of time.
        
           | gatane wrote:
           | There was a reverse engineering one, and openRA.
           | 
           | https://github.com/TheAssemblyArmada/Vanilla-Conquer
        
         | harshreality wrote:
         | Converting the assets to use the Spring engine (or
         | BeyondAllReason's active fork of it) is probably easier than
         | writing a new engine from scratch for the existing assets. And
         | then it'll feel like BAR but with C&C's assets. The UI is what
         | gives the game most of its feel.
        
           | SXX wrote:
           | C&C Generals plays completely different compared to Total
           | Annihilation like games with streaming economy that Spring
           | was built for. I like both subgenres of RTS, but they are
           | very different.
        
           | josephg wrote:
           | With the game engine opensourced, I doubt thats true. Its
           | probably going to be much easier to just get this code
           | building (patching out any proprietary bits and pieces) and
           | going from there.
           | 
           | Modding the game to work properly at a high framerate doesn't
           | sound very hard when you have the original assets & source
           | code to work from.
        
         | invalidOrTaken wrote:
         | There's a mod for RA3 that re-implements Generals:
         | https://www.moddb.com/mods/command-and-conquer-generals-evol...
        
           | ElCapitanMarkla wrote:
           | Whoa awesome. I spent hours playing Generals in the mid
           | 2000s.
        
         | rco8786 wrote:
         | You might check out https://www.openra.net/
        
           | cogman10 wrote:
           | That's RA. Generals was a different game engine.
        
         | blashyrk wrote:
         | Even more importantly, running at 60+fps while not breaking
         | gameplay, physics, shaders, cutscenes...
        
           | account42 wrote:
           | This is less of a problem for multiplayer games usually
           | because they will already need need to deal with these issues
           | for syncing between clients.
        
         | ed_mercer wrote:
         | Don't forget fix all the bugs...
        
         | czbond wrote:
         | What is a modern equivalent of this genre of game? I loved C&C
        
       | LorenDB wrote:
       | According to some research I did a few years back, EA currently
       | owns the rights to Full Tilt! Pinball, which is what 3D Pinball
       | Space Cadet was based on.
       | 
       | EA, if you have a single shred of decency, open source Pinball!
        
         | Macha wrote:
         | From what I've heard from videos by Microsoft devs on why it
         | was dropped between XP and Vista, the source code is obtuse and
         | very difficult to port/work on.
        
           | theandrewbailey wrote:
           | Microsoft devs also claimed that making cmd faster would
           | require years of research, but someone did that in a weekend
           | by making it run on a GPU. I'm sure there's someone out there
           | that would solve every problem Space Cadet has within a week,
           | just for fun.
        
             | jimnotgym wrote:
             | I'm sure there are lots of large groups of devs who are
             | undone by an upstart kid with a fresh perspective and no
             | fear
        
               | josephg wrote:
               | Can confirm. I've been on both sides of that fence.
               | 
               | I worked on a product about a decade ago which had an
               | unnecessarily complicated custom layout system written in
               | javascript. CSS was missing a lot of features at the
               | time, so we figured we'd roll our own. It was crazy
               | complicated - and it had all these weird easy to
               | reproduce bugs.
               | 
               | For fun, some pesky kid on twitter took our insanely
               | layout system and reimplemented 95% of it in a couple
               | hundred lines of (almost) pure CSS. At a glance, it
               | looked identical to our product - but the code was small,
               | clean and fast. The link got passed around the office. It
               | was amazing how many reasons people had to dismiss it.
               | "Ah, see - it doesn't even do this weird custom behaviour
               | we have!" or "Well and good in chrome - but it doesn't
               | work properly on IE8!" and so on. I've never seen a
               | better example of motivated reasoning, before or since.
               | 
               | What we should have done is reach out and offer that kid
               | a job.
               | 
               | The smartest programmer on your team isn't as smart as
               | the smartest programmer on the internet.
        
               | seba_dos1 wrote:
               | All you have said is that it's easy to write something
               | that takes you 90% there and ignores the last 10% of
               | requirements. I worked in webdev some 15 years ago and if
               | I could have dropped IE support sooner my code would have
               | been so much simpler as well :)
        
               | skhr0680 wrote:
               | > 95%
               | 
               | I feel like the naysayers have a point too. 95% done?
               | Only 95% left to go!
        
           | oynqr wrote:
           | Why don't you check for yourself:
           | https://github.com/k4zmu2a/SpaceCadetPinball
        
             | lucb1e wrote:
             | It says in the readme this is a reverse engineering
             | project, not stolen source code
        
           | 6SixTy wrote:
           | Thing that's hard to communicate is that Vista was moving
           | away from how older versions of Windows rendered their
           | desktop and past art styles. With Pinball originally from
           | Windows 95, porting it to leverage Vista's new graphics
           | paradigm on top of the artstyle was probably too much work
           | for a pack in game.
           | 
           | Though I do wish they contracted out a clone of Pinball
           | instead of Purble Place.
        
           | johnfernow wrote:
           | It may have been at one point, but since then it has been
           | decompiled and ported to many platforms:
           | 
           | - PS Vita
           | 
           | - Emscripten
           | 
           | - Nintendo Switch
           | 
           | - webOS TV
           | 
           | - Android (WIP)
           | 
           | - Nintendo Wii
           | 
           | - Nintendo 3DS
           | 
           | - Nintendo DS
           | 
           | - Nintendo Wii U
           | 
           | - PlayStation 2
           | 
           | - Sega Dreamcast
           | 
           | - MorphOS
           | 
           | - AmigaOS 4
           | 
           | https://github.com/k4zmu2a/SpaceCadetPinball
        
         | mananaysiempre wrote:
         | > EA, if you have a single shred of decency
         | 
         | That's... I mean, I hesitate to comment on that under this
         | particular post, but... yeah.
        
       | boomboomsubban wrote:
       | The complete C&C bundle with all open sourced games and several
       | others is currently $6 on Steam, if you need the art assets
       | https://store.steampowered.com/bundle/39394/Command__Conquer...
       | 
       | Hopefully this causes a sales spike and encourages other
       | developers to do similar things.
        
         | nottorp wrote:
         | Hmm there's also a c&c remastered bundle.
         | 
         | Anyone knows if either of them includes stuff that requires an
         | EA account?
        
           | sumtechguy wrote:
           | The remastered bundle does not need it.
        
             | nottorp wrote:
             | Well I hope you're right, I just bought both bundles.
             | 
             | This is the first time I give money to EA since Mass Effect
             | 2* :)
             | 
             | * Technically i also paid for the Mass Effect collection
             | for playstation, because Sony doesn't allow them to require
             | a login on there. But it's the first time for a PC title
             | since ME 2.
        
               | gimme_treefiddy wrote:
               | Damn looks like remastered one doesn't have the Zero Hour
               | version in it.
        
               | onli wrote:
               | No, that would be surprising. They only remastered C&C1
               | and 2. If you want Generals, buy the "Ultimate
               | Collection" bundle.
        
               | sumtechguy wrote:
               | I checked before i posted. Liked the 'installer' bit they
               | do just before the c&c remaster. One of the cooler
               | installers during that time. Most were boring text
               | screens with blue and white text. c&c had none of that
               | crap. They start world building the second you get in.
        
         | mclau156 wrote:
         | We had to wait for a team of github users to reverse engineer
         | Legend of Zelda Ocarina of Time before Nintendo would do
         | anything about it
        
       | modeless wrote:
       | The complete game was released as freeware by EA over 15 years
       | ago. It was freely available for download from EA's servers for
       | many years and has been redistributed by many third party sites
       | as well. So getting the art and other assets to use with this
       | code should be no problem.
       | 
       | https://web.archive.org/web/20100214144634/http://www.comman...
        
       | hd4 wrote:
       | I think this marks the first time EA have open-sourced a
       | videogame, a welcome development.
        
         | Macha wrote:
         | That would have been Micropolis in 2008, I think (better known
         | as Simcity, the open source release was renamed to be super
         | clear it doesn't include the trademark)
        
           | swat535 wrote:
           | I think this is the biggest release of open source they have
           | done, if am I wrong, someone correct me please.
           | 
           | Either way I'm very impressed !
        
       | tete wrote:
       | This is really nice and positively surprising for EA. While the
       | RTSs are amazing I think Command and Conquer Renegade is one of
       | the most fun games ever made as well.
       | 
       | https://github.com/electronicarts/CnC_Renegade
       | 
       | What these people did is really amazing:
       | 
       | https://w3dhub.com/
        
       | tomw1808 wrote:
       | I am speechless.
       | 
       | The most vile gaming company I know. The most beloved game I ever
       | played.
       | 
       | Now, Open source ... from them? How? Why? Marketing gag or a step
       | in the right direction?
       | 
       | But then, OpenRA has existed for a while - does that mean its
       | getting even better?
       | 
       | Where is this going?
        
         | Macha wrote:
         | The official stated reason is to make life easier for modders,
         | for the steam workshop mods in their latest releases.
        
         | sho_hn wrote:
         | EA and Open Source isn't completely alien. Their C++ standard
         | library EASTL was open sourced long ago and is a historically
         | quite important and influential codebase in the history of
         | C++'s evolution.
         | 
         | They've also open sourced and patent-pledged a bunch of gaming-
         | relatee accessibility tech over the years.
         | 
         | And of course Micropolis/SimCity.
         | 
         | My advice is to celebrate the successes of large corporates in
         | this regard very hard and often - this provides backup to the
         | champions on the inside.
        
           | tomw1808 wrote:
           | > My advice is to celebrate the successes of large corporates
           | in this regard very hard and often - this provides backup to
           | the champions on the inside.
           | 
           | I am wondering what the metrics / KPIs are they are tracking
           | to see if open sourcing something is a success or not. Can't
           | be just "sales went up for retro games when we open sourced"
           | - there must be something like community reception and
           | retention, general acceptance or whatever...
           | 
           | But yes, I agree. Let's celebrate this and hope for more.
        
       | newsclues wrote:
       | great news, thanks to id software for leading the way!
        
       | tosh wrote:
       | Related: If you like the old Command and Conquer classics, give
       | Combined Arms a try.
       | 
       | https://www.moddb.com/mods/command-conquer-combined-arms
        
       | Starlevel004 wrote:
       | // Homework for today.  Write 2000 words reconciling "Your code
       | must never crash" with "Intentionally putting crashes in the
       | code".  Fucktard.         //   DEBUG_CRASH(( "xferScienceVec -
       | vector is not empty, but should be\n" ));         //
       | 
       | https://github.com/electronicarts/CnC_Generals_Zero_Hour/blo...
        
         | jsheard wrote:
         | // Lets discuss how Windows is a flaming pile of poo. I'm now
         | casting the header       // directly into the structure,
         | because its the one I want, and this is just how       // its
         | done. I hate Windows. - jkmcd
         | 
         | https://github.com/electronicarts/CnC_Generals_Zero_Hour/blo...
        
           | poizan42 wrote:
           | ... because they just casted lParam into a pointer to
           | DEV_BROADCAST_HDR a few lines above, which is the common part
           | of the different structure it could point to. That's just
           | doing inheritance the C way. What did they expect? A C++
           | class from a C api?
        
         | inetknght wrote:
         | EA game devs cursing each other out? Internal company drama
         | being aired out years later? Oh boy!
        
           | cluckindan wrote:
           | *Westwood
        
         | stnmtn wrote:
         | This one made me laugh, mostly because the variable names are
         | so dumb
         | 
         | // our RNG is basically shit -- horribly nonrandom at the start
         | of the sequence.
         | 
         | // get a few values at random to get rid of the dreck.
         | 
         | // there's no mathematical basis for this, but empirically, it
         | helps a lot.
         | 
         | UnsignedInt silly = GetGameLogicRandomSeed() % 7;
         | 
         | for (Int poo = 0; poo < silly; ++poo)
         | 
         | {
         | 
         | GameLogicRandomValue(0, 1); // ignore result
         | 
         | }
        
           | anal_reactor wrote:
           | I spent some time browing curiosities about old games, and
           | what strikes me is that the code sometimes was quite
           | personal. You could see the joy, the anger, the
           | disappointment, the satisfaction. Nowadays it would never fly
           | to name a variable "poo", you need to stay professional at
           | all times.
        
             | herewulf wrote:
             | Nowadays it just depends on how shitty your job is.
        
             | lofaszvanitt wrote:
             | says who?
        
               | esafak wrote:
               | The person reviewing your PR.
        
               | broeng wrote:
               | anal_reactor says so.
        
               | as1mov wrote:
               | I recently had a PR rejected because I used the name of a
               | fictional character from a 90's movie in my tests. Keep
               | in mind the character itself was not controversial. The
               | reason given was that it's not professional.
               | 
               | Tbf, I chalked it up to a one singular cantankerous
               | reviewer rather than the whole company.
        
             | mschuster91 wrote:
             | > Nowadays it would never fly to name a variable "poo", you
             | need to stay professional at all times.
             | 
             | I couldn't help but chuckle at your user name when reading
             | this comment
        
             | recursive wrote:
             | Probably depends how indie/small your studio is.
        
             | qingcharles wrote:
             | I was a game dev in the mid 90s. It was unserious. There
             | was all sorts of crazy shit in the graphics assets. One
             | wall I remember says "CUNT" on it o_O
             | 
             | I'm sad if developers can no longer name their variables
             | _poo_ and _fuck_.
             | 
             | Also teenage me would probably be horrified finding out 30
             | years later his source code was public.
        
               | lucb1e wrote:
               | > Also teenage me would probably be horrified finding out
               | 30 years later his source code was public.
               | 
               | I guess that's why moral rights are unalienable in many
               | countries: if you are horrified what they do with it, you
               | still retain that and this right did not go to your
               | employer
               | 
               | Not that I think there is anything here the devs need to
               | be ashamed of, to be clear, just what came to mind as I
               | read this remark
        
               | qingcharles wrote:
               | I'd just be horrified by the quality of some code. It
               | included some of my best code, and some of my worst code.
               | Some of it was written after three days straight with no
               | sleep for those times when Eidos wanted to come for a
               | personal demo.
        
             | hasley wrote:
             | Still today, I tend to increase my motivation of writing
             | unit tests by using some non-serious names and strings in
             | the tests.
        
           | yobbo wrote:
           | This is similar to "burn-in" for markov-chain montecarlo.
           | When the chain is initialized to some bad value, it requires
           | a number of iterations to get into a "good chain". But for a
           | uniform RNG, any value should be good.
           | 
           | So the RNG doesn't seem great.
        
           | account42 wrote:
           | Well it works for RC4
        
         | moffkalast wrote:
         | Game code comments are always the most entertaining :D
         | 
         | https://en.wikipedia.org/wiki/Fast_inverse_square_root#Overv...
        
         | account42 wrote:
         | I don't get the complaint in the comment. Asserts for
         | invariants/pre-/postconditions are absolutely compatible with
         | not crashing: don't violate those properties.
        
       | jklinger410 wrote:
       | This makes sense because OpenRA was doing so well!
        
       | kennysoona wrote:
       | This is some very welcome and surprisingly, good news which has
       | been really, really, lacking this year.
        
       | sho_hn wrote:
       | This is very cool. It should be done a lot more often for old
       | games. Whoever pulled this off at EA Games, you did a great thing
       | for art and culture, and chapeau for pulling it off at a big
       | corp.
        
       | grayhatter wrote:
       | OpenRA did it better :D
       | 
       | If you haven't seen it yet https://www.openra.net/ is worth your
       | time.
       | 
       | https://github.com/OpenRA/OpenRA
       | 
       | I have many fond memories of playing openra as "LAN" game on the
       | gaming weekends we used to have in a few open source groups I've
       | been in. I can't recommend "saturday gaming" enough, for anyone
       | involved in any foss community, set up a recurring gaming
       | weekend! You get bonus points if you make it mostly or
       | exclusively foss games!
        
       | bee_rider wrote:
       | I only glanced at the code in ANIM.CPP but for a C++ program from
       | 1997 it looks kinda nice, right? The methods are all short, with
       | some descriptive comments at the top of each one. Inputs and
       | outputs described. Nice index at the top of the file.
       | 
       | I've seen worse!
        
         | pcwalton wrote:
         | Yeah, I was looking at infantry.cpp, and the quality is
         | actually _very_ good for 90s game code. The documentation is
         | good, it 's decently well-formatted, and there are assertions.
         | Nice counterexample to the "all successful games have terrible
         | code" conventional wisdom.
        
           | mschuster91 wrote:
           | > Nice counterexample to the "all successful games have
           | terrible code" conventional wisdom.
           | 
           | That's a modern wisdom from the last 15-ish years when people
           | started to have good enough internet connections that you can
           | get away with publishing a dozens gigabytes patch _on launch
           | day_.
           | 
           | In ye olde times, it was prohibitively expensive (or in the
           | case of console ROM cartridges, impossible) to distribute
           | patches, so projects were usually planned with plenty of
           | buffer time and plenty human testers. These days it's rush to
           | not collide with the releases of other AAA studios, and human
           | paid-for testers have been replaced by free (or, sometimes,
           | _paying_ ) early-access players.
        
           | philistine wrote:
           | I think survivor bias is at play here. C&C had many sequels,
           | ports, expansion packs that helped make it popular. So of
           | course it had nice code, otherwise we wouldn't have seen such
           | a wide berth of reuse for that code.
        
         | lucb1e wrote:
         | I made some games as a teenager and had the experience that I
         | was basically forced to stop projects because they got too
         | complex. Game Maker had only limited support for things like
         | variable scoping; you really need to isolate components and
         | have them all do their own defined thing to make it not grow
         | too complex or you'll fix one bug and cause two new ones. Even
         | more so as a team, I can only imagine, though I never
         | concurrently worked on game code with more than one person (for
         | longer than a literal weekend project, that is)
         | 
         | Normal software I find is a bit different because things like
         | UI libraries give you a lot of structure already. In game code,
         | you do so many things custom, and performance matters so much
         | (each frame needs to finish around e.g. the 17-millisecond
         | mark) that it's really up to you to apply the necessary
         | discipline
        
           | MrLeap wrote:
           | Gamedev here. The process I have to go through to make a good
           | core is never a linear thing.
           | 
           | I'm making a custom netcode right now. I started from a blank
           | folder. I had some design decisions worked out before I
           | started, like I wanted udp transport for messages that didn't
           | require responses (ie inputs), an isomorphic client/server
           | simulation and state snapshot diffs and checksum validation.
           | I had an idea what I wanted the syntax of creating a new
           | request to be, but the rest I knew I'd just figure out as I
           | went.
           | 
           | The way everything fits together has taken a lot of
           | refactoring, and I've disregared 3 prototype sim components.
           | I've written a good 40% of the base types twice over to make
           | it all click better. It's kind of sad how few libraries I've
           | found for a fixed point physics simulation. I've been using
           | one I stubbed together and it may end up growing into
           | something permanent if I don't find something better that
           | checks my boxes. That's just the way it goes.
           | 
           | The only way I get top tier code is if I budget time to do
           | controlled burns as I get a crufty feelings. There's never
           | enough time to do it like that the whole way through a
           | project, but I find that if you're aggressive about doing
           | that the first 30% of the way into a thing, you have a good
           | enough core to hang your less elegant ornaments off of and it
           | wont collapse into a tangle.
           | 
           | Another valuable process when writing things from scratch is
           | finding compact archetypal islands that force your systems
           | into a good versatile shape. Something simple like a boids
           | simulation requires you have so much stuff worked out that if
           | you write it first and stir it around and firm up the
           | foundation, you'll build most of the tools you need for many
           | different kinds of games.
        
       | zamubafoo wrote:
       | Shame they'll never do it for Warcraft 3 with the remaster still
       | around.
        
       | SXX wrote:
       | Whoever pushed for this at EA - my deepest respect is with you!
       | 
       | Original C&C was rewritten from scratch long ago, but open source
       | version of Zero Hour is such an amazing gift.
       | 
       | PS: if you want to send respects to the person who did it you can
       | do it on Linkedin:
       | 
       | https://www.linkedin.com/posts/jim-vessella-62726825_from-th...
        
         | pizzathyme wrote:
         | Agreed. Internally at companies like this, it's extremely
         | difficult to get something like this approved. This is the
         | result of a lot of meetings, a lot of "no"'s, a lot of legal
         | approvals.
        
           | SXX wrote:
           | Let's be honest I can't view this anything other than miracle
           | that was delivered to us by some very dedicated people who
           | likely pushed this for years.
           | 
           | I hope there will be more people and companies within
           | industry making similar moves. It's will both increase their
           | sales as well as allow fans to keep their favorite games
           | alive.
        
         | jacooper wrote:
         | Finally somebody can fix the mismatch errors in the game and
         | make it actually playable again!
        
         | CCHyper wrote:
         | Hey, that would be me! :D
         | 
         | You can check out our full announcement post here;
         | https://www.reddit.com/r/commandandconquer/comments/1izmpmb/...
        
           | SXX wrote:
           | Sorry for not mentioning you initially and thank you Sir for
           | making it happen!
           | 
           | I obviously love classical RTS and playing them since
           | original C&C, but there are special place in my heart for
           | Generals exactly because ot was different game.
           | 
           | And for me as game developer seeing this game in a sad state
           | make me sad. I feel it does have as much potential as AoE2
           | and now more people can try to bring new life to it.
        
       | rgbrgb wrote:
       | Would be cool to jump in the codebase here with claude code and
       | start riffing. Anyone get this or the others to compile on a mac?
        
       | Angostura wrote:
       | No sign of the Ma version :(
        
       | colechristensen wrote:
       | 25 or 30 years would be a good amount of time for software
       | copyright to expire.
       | 
       | It would be fantastic if there was a way (somewhat like patents)
       | where IP protection could be linked up with publishing materials
       | so that in order to get the law to protect your software from
       | copying, you had to have it published at the end of the
       | protection period. (like on release you had to store the source
       | code at the library of congress or something)
        
         | aflag wrote:
         | Even if it expires after 30 years, if the company doesn't
         | publish the source code, what good does it do?
        
           | jimnotgym wrote:
           | Perhaps to get the copyright you should put the code in
           | escrow? Not really, it costs a fortune
        
             | colechristensen wrote:
             | This is exactly what I meant though, put the code in a
             | private third party library in order to gain IP protection.
        
             | account42 wrote:
             | Escrow for source code only costs a fortune because the
             | only demand for it is b&b software where contracts require
             | it. It's not a fundamentally expensive service and if it
             | was required in order to receive copyright protection then
             | it would just be provided by the government either for free
             | or at cost.
        
       | giancarlostoro wrote:
       | Who can we bribe at Microsoft to get Fallout 1 / 2 source code
       | released? Would be really interesting when you consider that FO2
       | has online modding, so it would allow for so much craziness to
       | ensue out of FO2...
        
         | SXX wrote:
         | Fallout 1 and 2 were rewritten from scratch more than twice
         | already.
         | 
         | Several times as clone game engine with most popular being
         | falltergeist:
         | 
         | https://github.com/falltergeist/falltergeist
         | 
         | Second time as MMO client-server tech:
         | 
         | https://github.com/cvet/fonline
         | 
         | FOnline for sure use nothing of original game except for
         | assets.
         | 
         | PS: So yeah source code of fallout wouldn't be of any use
         | really except for historical archive.
        
           | account42 wrote:
           | Reimplementations are never perfect replicas so the source
           | code would at the very least be useful as a reference. Some
           | people also want to play the original with only minor
           | compatibility fixes for moderns systems without random
           | unwanted "features".
           | 
           | Your first link also talks about a "Development Roadmap" that
           | doesn't give the indication that it's even fully playable
           | yet.
        
       | amacneil wrote:
       | That's nice, but who is working on porting this to the typescript
       | type checker?
        
       | walrus01 wrote:
       | I wonder if the current owners will ever consider open sourcing
       | Supreme Commander, the spiritual successor to Total Annihilation.
       | 
       | https://en.wikipedia.org/wiki/Supreme_Commander_(video_game)
        
         | SXX wrote:
         | Might be you actually interested to work on that code?
         | 
         | I do personally know some of main developers and they know who
         | owns the IP, but to push something like that it will take some
         | resources unfortunately. So might be if some people get
         | together on this it's could be done.
         | 
         | It's wouldn't cost some immense amount of money, but it will
         | certainly cost some. At least I pretty sure that source code
         | for the games is not lost.
        
           | walrus01 wrote:
           | I wouldn't be the guy to work on the code, not being a game
           | developer or even adjacent to it. I work in ISP/telecom core
           | network infrastructure, so would be happy to help out with
           | questions on stuff like DIYing a set of self-hosted servers
           | for a revival of the game.
        
             | SXX wrote:
             | Don't you know? Multiplayer for SupCom is alive and well
             | with FAForever:
             | 
             | https://www.faforever.com/
             | 
             | They also have patches, but they obviously limited since
             | it's all just patching memory.
        
               | walrus01 wrote:
               | Yes I'm aware it exists, was thinking more of what
               | theoretical infrastructure might be needed if the full
               | art assets/code/etc for the final release of Forged
               | Alliance was open sourced and further built upon. My
               | understanding is that FA Forever is a group of people
               | who've implemented a server replacement since the
               | officially-hosted multiplayer servers went offline some
               | time in 2012.
        
         | russnewcomer wrote:
         | It's Wargaming who owns the IP and assets, and I doubt they
         | release them, if they even have them. DrDeath or Mavor might
         | have copies, but neither of them would likely release them.
         | 
         | Similarly, TA's source code never got released, and while
         | Spring is great and ArmoredFish made good progress with RWE, I
         | wish that code hadn't gotten lost either.
        
         | scubadude wrote:
         | Check out Beyond All Reason if you aren't aware of it
         | https://www.beyondallreason.info/
        
       | ww520 wrote:
       | We used to waste so much time on this in the lan party.
        
       | arduanika wrote:
       | Finally, EA does the optimal thing to benefit all humanity!
        
       | iancmceachern wrote:
       | Great memories, playing these when they came out against my crew.
        
       | tomaytotomato wrote:
       | "Compiling"
       | 
       | "Cannot compile, building in progress"
        
         | CrimsonCape wrote:
         | Lol, we need a terminal extension to play these sounds when
         | compiling. "Building-Unit Ready" is burned in my brain.
        
           | tomaytotomato wrote:
           | Or we could do one for unit tests, every time a test fails it
           | should say "Unit lost", "Unit lost"....."Unit lost"
           | 
           | If a build or deployment fails "A-bomb launch detected"
        
         | lucb1e wrote:
         | Unable to* compile, building in progress
         | 
         | as I recall, at least. I may have played tibsun to death on my
         | grandma's computer. Not that I spoke a word of English back
         | then, so this must have been from replaying it later actually
        
       | klaussilveira wrote:
       | > If you wish to rebuild the source code and tools successfully
       | you will need to find or write new replacements (or remove the
       | code using them entirely) for the following libraries;
       | 
       | Take the hint, Valve. And Epic (UT99). Having third-party code is
       | not an excuse.
        
         | jamesfinlayson wrote:
         | I thought about this recently - probably Valve is reluctant to
         | because people are still licensing both the GoldSource and
         | Source engines (I think the last GoldSource engine license was
         | in 2020 but the game hasn't even been announced; I think four
         | Source engine games are due this year). If EA released the
         | Nightfire engine code (very advanced GoldSource engine fork)
         | that would be great though!
         | 
         | But it's sad that John Carmack's example has not been widely
         | followed.
        
           | klaussilveira wrote:
           | I completely forgot about Nightfire! What an amazing game it
           | was.
        
           | account42 wrote:
           | This might be an argument if those engine licenses were more
           | than a rounding error in Valve's profits. I seriously doubt
           | that that's the case.
        
       | InitEnabler wrote:
       | I'll just leave this here.
       | 
       | https://youtu.be/niZpcdp2v34
        
       | punnerud wrote:
       | How hard would it be to convert this so it could run in the
       | browser using WebAssembly?
        
       | binary132 wrote:
       | The comments on the Red Alert sources are so detailed. This is
       | awesome. Major props to EA!
        
       | 1970-01-01 wrote:
       | I guess this is as close to public domain that software can be
       | until the 2070s. Functionally no different to use, but you are
       | not allowed to make any money selling it.
        
         | lucb1e wrote:
         | > you are not allowed to make any money selling it.
         | 
         | Why not? I don't see it in the additional terms, so if you mean
         | the GPL part then
         | https://www.gnu.org/philosophy/selling.en.html
        
       | astrostl wrote:
       | Best game intro [1] ever IMO. Fun story, compact length, epic
       | soundtrack ("Hell March"). They did that in 1996 and nothing
       | since has even come close for me.
       | 
       | Had a ton of fun with the game itself, too.
       | 
       | 1: https://www.youtube.com/watch?v=lJnMaTx4yjI
        
       | mhotchen wrote:
       | Christ:
       | https://github.com/electronicarts/CnC_Red_Alert/blob/main/CO...
        
       | icemelt8 wrote:
       | As a React developer, how does one even compile something like
       | this
        
         | swat535 wrote:
         | It's in the README
        
       | liamkearney wrote:
       | Curious. Can anyone tell me if it's windows thing, specific
       | filesystem thing, source control system thing or just a style
       | thing, naming all files and directories in caps?
        
         | abanana wrote:
         | It came out not long after Windows 95, so it will have
         | supported earlier versions of Windows, which had the 8.3
         | character all-caps filename limitation.
        
       | joquarky wrote:
       | I wish they would release all the code and assets used to make
       | Earth & Beyond.
        
       | Zardoz84 wrote:
       | now, if they open source Red Alert 2 engine ... That was a
       | masterpiece of using voxels
        
       | nntwozz wrote:
       | Good job, now open source Dark Age of Camelot.
       | 
       | Thank you
        
       | hammock wrote:
       | What is the best c&c style game that has been released in the
       | last couple years?
        
         | lucb1e wrote:
         | Beyond All Reason sorta isn't released yet, but I'm liking that
         | a lot as an old C&C2/AoE1 fan
        
         | Macha wrote:
         | C&C Remastered
         | 
         | The 8-bit (armies/hordes/invaders) games play very much like a
         | faster C&C. They had a sequel recently with 9-bit armies.
         | 
         | Starcraft 2 for ages was basically "the last RTS", and it does
         | have some differences from how the C&C formula, but then I
         | always felt Generals took liberal inspiration from Starcraft
         | compared to classic C&C too.
        
       | molave wrote:
       | EA... good?
        
       | lofaszvanitt wrote:
       | How could they neglect this awesome franchise... Just the usual
       | Retardation Arts. Bring everything to the ground, kill the joy
       | these games bring to the masses. Plus they are literally pissing
       | on the early EOA guys' work.
       | 
       | Worst management ever. yuck.
        
       | Sjonny wrote:
       | There are loads of .BAK files as well, and diffing them with the
       | actual file gives you some insight on what they were working on.
       | (Like pre and post Counterstrike addon).
        
         | CCHyper wrote:
         | Yup! Keeping those in there was important for us as we know the
         | core community would love to see this historic data!
        
       | voidfunc wrote:
       | Wow. Please do SimCity 2000, 3000 and 4 next EA!!
        
       | nomilk wrote:
       | Alas, no red alert 2 (the best, IMO). But still this is such
       | great news. Huge props to EA for this.
        
         | 3abiton wrote:
         | I don't know why they're stalling, I wonder if there still any
         | revenues from the game or if it's IP issue.
        
           | mschuster91 wrote:
           | This stuff is decades old. It's completely legitimate that
           | they may simply have lost the source code during a server
           | migration or whatnot.
        
             | MortyWaves wrote:
             | No, because Red Alert 2 Remaster exists...
        
               | jamesgeck0 wrote:
               | Do you work for EA? Because they haven't announced or
               | released such a thing. A year ago a developer hinted
               | there might be another remaster in the future, but it
               | could just as easily be Generals as RA2.
        
               | rsstack wrote:
               | No, that was gaming tabloids misunderstanding a sentence
               | by EA a year ago. It was never announced.
        
             | swat535 wrote:
             | They didn't announce it, the most likely explanation I've
             | heard is that the original code is lost, along with
             | Tiberian Sun
        
             | account42 wrote:
             | It may be common but let's not take the average companies
             | lax attitude to source code archival and backup as
             | "legitimate". It's a disgrace for the industry that this
             | happens so often.
        
           | nomilk wrote:
           | Some possible explanations:
           | https://news.ycombinator.com/item?id=40506894
        
         | SaltyBackendGuy wrote:
         | This is what you're looking for right?
         | 
         | https://github.com/electronicarts/CnC_Remastered_Collection/...
        
           | nomilk wrote:
           | That's the original C&C Red Alert:
           | https://en.wikipedia.org/wiki/Command_%26_Conquer:_Red_Alert
           | 
           | But there was a sequel, C&C Red Alert 2: https://en.wikipedia
           | .org/wiki/Command_%26_Conquer:_Red_Alert...
           | 
           | Both were incredible at the time.
        
             | SaltyBackendGuy wrote:
             | Ah got it.
        
       | dogancelik wrote:
       | I really hope that one day they will open source Nox [1], it was
       | my favorite childhood game after Sims. Nox was also a game
       | created by the same studio that created Red Alert.
       | 
       | [1] https://en.wikipedia.org/wiki/Nox_(video_game)
        
       | JanSt wrote:
       | // Lets discuss how Windows is a flaming pile of poo. I'm now
       | casting the header                    // directly into the
       | structure, because its the one I want, and this is just how
       | // its done. I hate Windows. - jkmcd
       | DEV_BROADCAST_VOLUME *vol = (DEV_BROADCAST_VOLUME*) (hdr);
       | // @todo - Yikes. This could cause us all kinds of pain. I don't
       | really want           // to even think about the stink this could
       | cause us.
       | TheFileSystem->unloadMusicFilesFromCD(vol->dbcv_unitmask);
       | return TRUE;
        
         | nomilk wrote:
         | This is kinda funny too:
         | https://github.com/electronicarts/CnC_Red_Alert/blob/0dc09bb...
        
       | m463 wrote:
       | how prescient they were!
       | 
       | "Nationalism will bring us victory!"
       | 
       | "China will grow larger"
        
       | SaltyBackendGuy wrote:
       | IDK why but it ironically brings me joy to find typos in old
       | code. Maybe a reminder that we're all human (well back when code
       | was written by humans /s).
       | 
       | https://github.com/electronicarts/CnC_Remastered_Collection/...
        
         | high_priest wrote:
         | Some influencer coder right now "i don't use IDE, because it
         | makes my coding more detailed & thorough"
        
           | ChromaticPanic wrote:
           | We want that artisanal hand crafted environmentally friendly
           | codebase
        
       | montag wrote:
       | I heard this line of code `Sound_Effect(VOC_TANYA_LAUGH, Coord);`
        
         | jaredhallen wrote:
         | Shake it, baby!
        
         | edm0nd wrote:
         | You must construct additional pylons....wait....crap...wrong
         | game!
        
       | superconduct123 wrote:
       | Some funny comments
       | 
       | https://www.reddit.com/r/commandandconquer/comments/1izpkmh/...
        
         | iab wrote:
         | ScenarioInit = 0; // Kludge.
         | 
         | I vibe with the authors.
        
           | bbor wrote:
           | Ha, wow -- great minds think alike. Somehow I ended up at the
           | exact same file (only went to one!) and was coming back to
           | comment on exactly this line.
           | 
           | What makes this especially funny is that this is the very
           | second line of the entire game, at least in the case of Red
           | Alert! So very CPP.
           | 
           | For the curious: https://github.com/electronicarts/CnC_Red_Al
           | ert/blob/main/CO...
        
       | alanh wrote:
       | A bit off-topic, but I found it very dystopian a few months ago
       | to ask ChatGPT to describe the game in some detail. It refused
       | to, claiming it violated content policy. Chilling.
        
       | Jd wrote:
       | A bit challenging since none of the repositories I looked at
       | actually compile.
       | 
       | EA says that if you remove (or refactor!) the dependencies it
       | might work but I don't know if that's high enough confidence to
       | dive in.
        
       | haunter wrote:
       | >To use the compiled binaries, you must own the game. The C&C
       | Remastered Collection is available for purchase on EA App or
       | Steam.
       | 
       | Mind you EA released [some of] the games as freeware back in 2008
       | so no, you don't have to buy them for the graphics, art, sound,
       | and music assets
       | 
       | Tiberian Dawn GDI
       | https://web.archive.org/web/20110927141135/http://na.llnet.c...
       | 
       | Tiberian Dawn NOD
       | https://web.archive.org/web/20111104060230/http://na.llnet.c...
       | 
       | Tiberian Sun (though no source code was released for this game)
       | https://web.archive.org/web/20110823002110/http://na.llnet.c...
       | 
       | Red Alert Allied
       | https://web.archive.org/web/20100130215623/http://na.llnet.c...
       | 
       | Red Alert Soviet
       | https://web.archive.org/web/20100130220258/http://na.llnet.c...
        
         | pjmlp wrote:
         | Thanks for spoiling my weekend. :)
        
         | eighthourblink wrote:
         | .......and there goes my weekend :)
        
       | DrNosferatu wrote:
       | EA could release the source code of Chuck Yeager's Air Combat and
       | LHX.
        
       | rumdz wrote:
       | Please open source Nox!
        
         | haunter wrote:
         | Sim City 2000!
        
       | guidedlight wrote:
       | Maybe someone can finally make a native Mac version.
       | 
       | It astonishes me that EA leaves obvious money on the table by not
       | taking the 5 mins it would take to recompile it for MacOS.
        
         | bangaladore wrote:
         | This is a terribly naive comment. I'm not going to even go into
         | the specifics.
         | 
         | Lets assume they click one button and it recompiles, how many
         | people would buy it? Almost certainly wouldn't pay back the dev
         | and qa cost.
        
           | wingerlang wrote:
           | I am sure there are people who has moved to macOS that grew
           | on playing eg. Red Alert 1 who gladly would pay some amount
           | of money to instantly own and play it again for some
           | nostalgia.
           | 
           | And by this I mean myself.
        
             | bangaladore wrote:
             | There are at least four dependencies that EA would have to
             | replace for MAC. That would be an extremely complex task
             | just for the first two. And who knows about the second. I
             | just don't see a way for that to be profitable. Its no
             | secret that games ported to Mac do poorly.
             | 
             | DirectX 5 SDK
             | 
             | DirectX Media 5.1 SDK
             | 
             | Greenleaf Communications Library (GCL)
             | 
             | Human Machine Interface (HMI) "Sound Operating System"
             | (SOS)
        
               | wingerlang wrote:
               | Your assumed scenario was a magic button to recompile it.
        
         | grg0 wrote:
         | "The 5 mins it would take" --- Check the README on Red Alert,
         | for example:
         | 
         | If you wish to rebuild the source code and tools successfully
         | you will need to find or write new replacements (or remove the
         | code using them entirely) for the following libraries;
         | DirectX 5 SDK         DirectX Media 5.1 SDK         Greenleaf
         | Communications Library (GCL)         Human Machine Interface
         | (HMI) "Sound Operating System" (SOS)
         | 
         | That still look like 5 minutes to you?
        
       | stormfather wrote:
       | If anyone used to play Zero Hour, there is still an active
       | community. They still have tournaments and world series. A guy
       | called Dominator on Youtube casts it all and its a pretty
       | entertaining blast from the past. I recommend checking out his
       | channel.
        
         | llamaLord wrote:
         | I'm pretty sure there was a weird bug in the original C&C
         | generals where the game engine 'tick rate' was somehow tied to
         | CPU cycles and assumed single-threading or something.
         | 
         | I remember going back and trying to play it many years after it
         | came out, and it was basically broken because the entire game
         | moved at like... 2-3x the maximum speed it was ever meant to
         | run at
        
         | wingerlang wrote:
         | Same with Red Alert (etc) through the modern rewrite OpenRA
         | (https://www.openra.net/). Similarly there is a guy FiveAces
         | who has been commenting videos for nearly a decade.
        
       | ed_mercer wrote:
       | Finally we can start fixing the insane amount of bugs in Zero
       | Hour.
        
       | leshokunin wrote:
       | I was a young teen when Command & Conquer came out. It was so
       | damn cool. Westwood was at their peak: they made hit after hit
       | after hit. The Kyrandia point & click series. The Eye of the
       | Beholder series. Lands of Lore. Dune II. Everything they made was
       | gold.
       | 
       | They came in and made an RTS when we didn't have a term for this.
       | It had a cool, modern soundtrack. It had a cool world and a story
       | fleshed out in high production value FMV. Cutting edge CGI.
       | 
       | We all know how Westwood died. Then the series had disappointing
       | sequels, and a sad mobile title, and it all died until the
       | remaster. The remaster felt like a well-executed effort, and a
       | way to enjoy the classics on modern systems.
       | 
       | Today's release of the source code is so exciting. A recognition
       | that C&C is worth preserving. That its community is still excited
       | for it. It allows the series to live on forever. For fans to go
       | crazy. For all sorts of mods and tweaks to be enjoyed on Steam.
       | 
       | It finally feels like after a decade and a half, C&C has a
       | future. No longer a great old RTS, but one that has lots of
       | excellent campaigns available on modern systems, moddable, and
       | evergreen.
       | 
       | Battle control... online :)
        
       | kangs wrote:
       | I love reading the code that these people wrote when i was a kid
       | enjoying the game. Never thought I'd have the opportunity when I
       | was 10 and dreaming of these things haha.
        
       | 29athrowaway wrote:
       | I recommend this video "This is Why We Still Play Tiberian Sun in
       | 2025"
       | 
       | https://www.youtube.com/watch?v=qIbuqy6bI2Y
        
       | trackofalljades wrote:
       | _" I'VE GOT A PRESENT FOR YA!"_
        
       | dagelf wrote:
       | For real, CnC Generals was the game that has taught me the most
       | about the frivolity of war: there are no winners, both sides
       | lose, it's just a grand burning of resources... for nothing.
       | 
       | You build a wonderful base and war machine, only to watch it
       | burn.
       | 
       | If this was "required playing" to all kids, I would be greatly
       | surprised if war would still be a thing... it basically mocks
       | war. In the most fun way possible!
       | 
       | Look up Jeffrey Sachs' address to EU Parliament, if you are
       | unsure about the real geopolitics of this century... you won't
       | find it in US media.
        
         | yakshaving_jgt wrote:
         | Sachs is a moron. Here are some reasons why.
         | 
         | https://voxukraine.org/en/open-letter-to-jeffrey-sachs
        
       | ch33zer wrote:
       | The only thing I know about this game is that it's what Jeremy in
       | pure pwnage played
        
       | Owlettotoo wrote:
       | wow I didn't expect this from EA... Good for them, good for us,
       | good for everybody.
        
       | extraduder_ire wrote:
       | Previously: https://news.ycombinator.com/item?id=23249964 "EA
       | will be releasing the C&C Tiberian Dawn and Red Alert source code
       | under GPL3" May 20, 2020 253 comments
        
       | ghostpepper wrote:
       | I like to think I caused this
       | 
       | https://news.ycombinator.com/item?id=42827280
        
       | thisOtterBeGood wrote:
       | Found this gem in Recorder.cpp of generals:
       | //Kris: Patch 1.01 November 10, 2003 (integrated changes from
       | Matt Campbell)       // Since we don't seem to have any *visible*
       | desyncs when replaying games, but get this warning       //
       | virtually every replay, the assumption is our CRC checking is
       | faulty.  Since we're at the       // tail end of patch season,
       | let's just disable the message, and hope the users believe the
       | // problem is fixed. -MDC 3/20/2003
       | //TheInGameUI->message("GUI:CRCMismatch");
        
         | joerick wrote:
         | Hahaha. We used to get desyncs on networked games of Generals
         | pretty regularly. I remember if a game took more than 30-40
         | mins I'd start to get a spidey sense things were about to go
         | wrong
        
           | elephanlemon wrote:
           | Generals was one of our favorite LAN games. It seemed that as
           | time went on this problem got worse and worse somehow, to the
           | point where we gave up trying to play it at all. I have fresh
           | hope again that this might one day be fixed!
        
             | scarby2 wrote:
             | when generals was released it was the same time my high-
             | school were encouraging everyone enrolled in specific
             | classes to get laptops as part of a pilot program (with
             | some of the money coming from the government). I started
             | bringing a network switch to school so we could play during
             | free periods/lunch (the wifi was problematic).
        
       | dzonga wrote:
       | great in code documentation. but how to C++ folks cope. every C++
       | codebase looks like its own different language with so many
       | dialects.
        
       | jacooper wrote:
       | Now please, could somebody path C&C generals so we can play
       | multi-player without every other game having a mismatch?
        
       | lukky513 wrote:
       | I hope that the events like this could start a bigger wave of
       | opening the source for many other older games.
       | 
       | To anyone else reading, who's passionate about the topic: reach
       | out to the companies however you can! I can share a personal
       | experience that it does sometimes work, and thanks to that, a
       | somewhat niche game of Zatikon is getting a second life as a FOSS
       | project :)
        
         | CCHyper wrote:
         | Our intent with this release was to support the preservation of
         | video games and the open source community. I hope that this
         | release leads to more positive actions towards preserving
         | classic video games across the industry :)
        
       | vanattab wrote:
       | Neat! I am going to have to play with this for fun in my free
       | time. C&C Red Alert was one of the first things that got me
       | interested in programming and developing software, there was an
       | ini file somewhere where you could control all the stats/wepons
       | of the units. I had a blast making crazy units mods to units and
       | it made me want to learn how to create games and software
       | generally.
        
       | yowayb wrote:
       | The hardest part about making a game is the art.
        
       | danielktdoranie wrote:
       | Hopefully this means we'll get an iPadOS and macOS release :-)
        
       | zenlot wrote:
       | Just bought the pack + remastered on steam to support open
       | sourcing old games.
        
       | lacoolj wrote:
       | I just reached Nostalgia Level OVER 9000.
        
       | nickpsecurity wrote:
       | One idea I had for open source games like this is AI experiments
       | or training. Many people have been using Starcraft. If not it,
       | they often use games that are nowhere near mainstream quality.
       | 
       | My idea was to have games in various genres with different skills
       | required, like planning or physical abilities. Then, set each one
       | up to work with just the engine in a way where game state is easy
       | to interact with. For instance, no graphics or pop-up menus.
       | Then, iterative experiments, like genetic programming or neural
       | networks, could run much faster. Later, a common interface to
       | many of them, like human senses, might let them be used to build
       | general knowledge for AGI experiments.
       | 
       | Curious what people think of this. Especially a few exemplars in
       | each category modified to just run really fast. For each, maybe
       | training data on top of it that shows how to play the game. Seems
       | like a cheaper option for testing architectures vs games not
       | designed to do this.
        
       ___________________________________________________________________
       (page generated 2025-02-28 23:01 UTC)