[HN Gopher] Far Cry 1.34 source code (2006)
       ___________________________________________________________________
        
       Far Cry 1.34 source code (2006)
        
       Author : KomoD
       Score  : 509 points
       Date   : 2023-07-01 07:54 UTC (15 hours ago)
        
 (HTM) web link (archive.org)
 (TXT) w3m dump (archive.org)
        
       | omgmajk wrote:
       | I have spent many hours reading the source code to games from
       | sources like https://github.com/bobeff/open-source-games - this
       | is going to be a new fun weekend project!
        
       | unixhero wrote:
       | Well now Archive.org runs Farcry!
        
       | kelvinjps wrote:
       | Jhom carmack had a piece on how to release source code of games
        
       | cubefox wrote:
       | I remember when Far Cry came out. Around the time, Doom 3 and
       | Half-Life 2 were the most anticipated games for quite a while,
       | mostly because they promised graphics far ahead of anything
       | released so far. But as they were delayed multiple times, Far Cry
       | stole a lot of their thunder when it came out months before them,
       | with similarly impressive graphics.
       | 
       | We don't see technically ambitious PC exclusive games like this
       | anymore, as the market for these games greatly decreased in
       | relevance. Most people don't own an expensive desktop PC anymore
       | (due to smartphones and laptops doing most of their jobs) and
       | they just buy a console if they want to play games.
        
         | jacooper wrote:
         | Crytek still makes graphical masterpieces (and IMO crysis has
         | one of the best FPS stories). Crysis 1 and 2 remastered are
         | very good, and crysis 3 is still a masterpiece after more than
         | 10 years.
         | 
         | And crysis 4 is coming.
        
         | nerdix wrote:
         | The PC gaming market is actually bigger now than it was back
         | then.
         | 
         | The difference is that consoles didn't really start to become
         | viable for the FPS genre until the Xbox/PS2 generation (and
         | even then it was really just Halo).
         | 
         | So an FPS was PC exclusive by default with only the biggest
         | games getting a clumsy console port or spinoff years later
         | (like FarCry Instincts). Consoles became a first class citizen
         | in the world of FPSes with the 360/PS3 generation in the
         | mid-2000s. That's why FarCry 1 (2004) was a PC exclusive but
         | FarCry 2 (2008) released on consoles and PC at the same time.
        
           | cubefox wrote:
           | Competitive FPS games did even exist on the N64 (James Bond
           | Golden Eye, Perfect Dark), and in the next generation they
           | were very common and mostly had the modern two stick controls
           | which is still used today. So I don't think that had anything
           | to do with it.
           | 
           | > The PC gaming market is actually bigger now than it was
           | back then.
           | 
           | This might be true, but I'm fairly certain that the market
           | share of the PC platform has strongly decreased relative to
           | the consoles. AAA games have largely shifted to consoles or
           | console ports. The most plausible reason is that the desktop
           | PC market has collapsed. The heyday of PC gaming was probably
           | somewhere between Quake (1996) and Crysis (2007).
        
             | nerdix wrote:
             | The "next generation" after N64 was Xbox/PS2. In my
             | previous comment, I pointed out that FPSes on consoles
             | became viable during that time. There were FPSes on
             | consoles even prior to Golden Eye/Perfect Dark. For
             | instance, there were SNES ports of Doom and Wolfenstein 3D.
             | They were just all pretty bad. Even the "good" ones like
             | Golden Eye don't really hold up against the PC shooters of
             | the time.
             | 
             | Shooters didn't become a premiere genre for consoles until
             | the 360/PS3 era. Like I said, as far as popularity went,
             | there was Halo and MoH (to a way lesser degree) during the
             | Xbox/PS2 days but not much else. And then all of a sudden,
             | shooters became the hottest genre on consoles in the mid-
             | late 00s. That's when CoD and Battlefield made the
             | transition over to consoles in earnest. It's when Sony
             | invested heavily (and ultimately failed) in creating a
             | "Halo killer". It's when CoD went from a pretty successful
             | PC franchise to consistently being the highest selling game
             | year after year.
             | 
             | As far as the PC gaming market goes. There was a dark age
             | starting in the mid-00s. But PC gaming is very popular
             | right now (we'll have to see what impact high GPU prices
             | has on its future) .
             | 
             | For instance, Activision makes more money from the PC
             | platform than all consoles combined.
             | 
             | https://www.pcgamer.com/activision-is-making-more-money-
             | on-p...
             | 
             | PC has been Ubisoft's second largest platform (ahead of
             | Xbox but behind PlayStation) since 2018
             | 
             | https://www.statista.com/statistics/269679/breakdown-of-
             | ubis...
             | 
             | No one in the industry ignores the PC market anymore.
             | Everyone (except Nintendo) is releasing their games on PC
             | now even companies that weren't traditionally in the PC
             | gaming market like Japanese publishers. Genres that had a
             | spotty history of PC support (Sports, JRPGs, Fighting
             | games, etc) are seeing consistent PC releases. And even
             | Sony conceded and started releasing their exclusives on PC
             | (years later but it's still a dramatic shift from even a
             | few years ago).
             | 
             | As someone who was primarily a PC gamer in the 90s, I can
             | tell you anecdotally that I know several people who were
             | console gamers only 20+ years ago who are now PC gamers.
        
         | barrysteve wrote:
         | The know how to make a game is free knowledge with paid
         | education add-ons... we figured out the broad strokes.
         | 
         | Smaller tech leaps in client-side game software is difficult to
         | protect from instant duplicaton. The cloud and mobile is the
         | 'last moat'.
         | 
         | Are we going to move into black box software designs and
         | trusted platform modules in hardware to enforce a technology
         | moat for devs on pc's?
        
         | delta_p_delta_x wrote:
         | > We don't see technically ambitious PC exclusive games like
         | this anymore
         | 
         | You should consider _A Plague Tale: Requiem_. Even without ray-
         | tracing, it is by far one of the most beautiful games I 've
         | played in a long time (since _The Witcher 3_ , at least). Not
         | to mention it has a sucker-punch of a story and a phenomenal
         | soundtrack.
        
         | Version467 wrote:
         | Huh? That doesn't seem right. We absolutely have ambitious
         | games on pc that bring generational leaps in graphical
         | fidelity.
         | 
         | Like the Witcher 3, which was absolutely stunning when it first
         | released. Similarly (although originally a console exclusive)
         | Red Dead Redemption 2 looks incredible on PC. We also have
         | releases like Hellblade: Senuas Sacrifice which pushed the
         | limit of what was possible to achieve with limited resources
         | (regarding the development, not the hardware).
         | 
         | Honorable mentions should probably also include Star Citizen,
         | which although still unreleased is definitely an incredibly
         | technically ambitious project. As is Cyberpunk 2077. The launch
         | might have been a total disaster, but afaik it's the first big
         | game to ship a full ray-tracing renderer.
         | 
         | Maybe we have a different understanding of what a 'technically
         | ambitious' game is. But I see technical improvements left and
         | right. Unreal Engine 5 comes with some features that are just
         | mind-blowing and make a whole new level of graphical fidelity
         | available even to small indie developers. Just take a look at
         | the recently released footage of "Unrecord", where lots of
         | people thought it was real life footage.
        
           | hutzlibu wrote:
           | In general I agree, but I rather remember The Witcher 3 for
           | the story and atmosphere, than for the graphics. Likewise
           | Senuas Sacrifice - it pushed the limit for psychological
           | games(the game is about processing loss through a psychosis,
           | so it is not a casual game). In either case, both titles are
           | really worth it.
        
             | dreday wrote:
             | I have never heard of Senuas Sacrifice, so I googled it.
             | It's 85% off on steam summer sale ($4.49 in the US). Just
             | an fyi for anyone else interested.
        
               | hutzlibu wrote:
               | That's definitely worth it. But just to repeat myself, it
               | is not a casual game and I recommend head phones, for the
               | full experience. Meaning you should not be on the call,
               | when playing it. It also _has_ a decent fight mechanic
               | but the main experience for me, was the mind trip.
               | 
               | (professional psychologist were strongly involved in the
               | developement)
        
           | mcpackieh wrote:
           | Witcher 3 caught a lot of flak when released for looking
           | worse than what was shown at E3. Why gamers still pay
           | attention to early-access peeks of games at E3 is beyond my
           | comprehension, it seems like a recipe for disappointment
           | every time..
        
           | zokier wrote:
           | It depends what your reference point for the rate of progress
           | is. The release date of Crysis is closer to release date of
           | Doom than today, but visually Crysis holds up dramatically
           | better than what Doom did at the time of Crysis release.
        
             | mcpackieh wrote:
             | On the other hand I bet there are more people playing Doom
             | 1 & 2 today than Crysis. Doom's gameplay held up better,
             | and 3rd party WADs (in large part facilitated by the
             | primitive graphics making it easy for one-man creators)
             | gave Doom a life of its own.
        
             | zirgs wrote:
             | 16 year old games were considered "retro" when Crysis came
             | out. Crysis came out 16 years ago.
        
               | TillE wrote:
               | Hell, if you were making a game that looked like Ultima
               | VI (1990) in the mid-late 90s, that would be treated as
               | embarrassingly retro. Call it 5 or 6 years.
               | 
               | Once we settled on quasi-realistic 3D games with a mostly
               | consistent control scheme as the norm, that process of
               | obsolescence has slowed down dramatically. Games have
               | sort of plateaued in that way. So you really can go back
               | and play Crysis and it's still fine. It's noticeably
               | "retro", but I think only serious graphics nerds would be
               | bothered by its deficiencies.
        
               | zirgs wrote:
               | Yeah, seems like that every year the age of games that
               | are considered "retro" keeps increasing. Now it is at
               | least ~25 years or so.
        
               | zokier wrote:
               | idk. 80s-early 90s pixel art style was all the rage 10
               | years ago as retro, nowdays the action is at late
               | 90s-early 00s wonky polygon graphics, so it seems to have
               | advanced pretty proportionally
        
           | Kaytaro wrote:
           | Witcher 3 is 8 years old and considered an old persons game.
           | I learned that the hard way when I tried talking to my nephew
           | about video games.
           | 
           | In all seriousness, most of your examples I would consider
           | part of the previous era of gaming, which ended with
           | Fortnite's explosion. Hyper realistic games will continue to
           | be developed of course, but the overall industry trend is
           | moving towards mobile-friendly graphics, which presents its
           | own set of technical challenges.
        
             | Version467 wrote:
             | I agree that Witcher 3 doesn't count as "current gen"
             | anymore, but it wasn't meant to represent that. I picked my
             | examples to show that we've seen high fidelity games
             | throughout the last decade. All of those games pushed the
             | boundaries of what's possible in some way and I don't think
             | we've seen a decline of that at all.
             | 
             | There are just so many more games now that it might seem
             | like that.
        
           | Closi wrote:
           | Parent comment said PC-exclusive, Witcher 3 and RDR2 are
           | examples where the PC port came out way after the console
           | release and they are both fairly old games at this point.
        
             | derrikcurran wrote:
             | Witcher 3 came out on PC at the same time as consoles. CDPR
             | has a long history with PC gaming and they tend to
             | emphasize the PC experience. They also own GOG which is a
             | PC game store/platform. RDR2 on the other hand was indeed a
             | timed console exclusive.
        
             | cubefox wrote:
             | To be fair, I edited in the "exclusive" to make it clear I
             | wasn't talking about ports, so he might not have seen it.
        
           | cubefox wrote:
           | Most ambitious games are now primarily developed for console
           | while only being ported to PCs. Cyberpunk 2077 was apparently
           | primarily optimized for PC (while still being a cross
           | platform title) but that's an exception.
        
       | DrNosferatu wrote:
       | Clean room engineering for a (new&clean) source port?
       | 
       | FreeFarCry, with new assets a la Freedoom?
       | 
       | I wonder how it runs natively on a Raspberry Pi?
        
       | b212 wrote:
       | One of the most beautiful games of its time.
       | 
       | Stopped gaming years ago but saw my cousin playing Far Cry 6 the
       | other day and it looked better but not that much better. After 17
       | years. Crazy.
        
         | bloqs wrote:
         | What is really interesting, is that lots of people would accuse
         | you of rose-tinted spectacles and similar, I have continued to
         | game from about 1998 until today.
         | 
         | the gaming industry is in a very odd place, and not unlike the
         | film industry. Rehashes and sequels to increasingly aging 80s
         | and 90s franchieses is the done thing. It generates nostalgia
         | bucks from the older folks, the new folks are ignorant of the
         | originals so just consume them at face value, and there is the
         | magic 3rd property of being much cheaper to develop than
         | creating something original.
         | 
         | This has lead to a huge drought of good new things because MBAs
         | are not condusive to creative risks.
         | 
         | In gaming, what also follows the same line is stuff like
         | graphical development. It's far more economical to take the
         | Original game engine, and just gradually modify it as each
         | generation passes. As a result, the most recent Far Cry game is
         | almost identical in graphical quality to the last 3-4 at least
         | (and it's not massively far away from the original either).
         | 
         | Because of cost-saving increment culture. Now, there is an
         | additional element at play here, increasing polygon counts are
         | exponentially uneffective - if a car with a circular wheel has
         | 3 points, it looks awful. Double those points to 6, and
         | hexagonal wheels look a hell of a lot better, and are passable
         | in many older games. Double it again to 12 and it becomes
         | indistinguishable from a circle at a glance. Double it to 24
         | and you would barely notice, double it again and it looks no
         | different to the last generational increment.
         | 
         | The other issue is despite tooling coming so far, we it still
         | takes a human artist the same amount of time to draw and design
         | something. If that has to be done at increasingly extreme
         | levels of detail, it's going to require more artists (and
         | artists also don't even work well like that). So that also
         | presents new problems.
         | 
         | So along with all the cost-saving and business optimisation of
         | the pipeline of games production, there are real factors at
         | play in how things have improved that really change how things
         | look and feel.
         | 
         | I will say, if you watch a youtube video of the original game
         | being played in high detail on a high end machine (this would
         | have been before 1080p was a thing I believe) and watch a video
         | of FC6 with a modern high-end machine at max settings, it's
         | still impressive.
        
         | Version467 wrote:
         | Have you compared it to screenshots from Far Cry 1, or to your
         | memory of the game?
         | 
         | Far Cry 1 was a beautfiul game, absolutely, but the new
         | iteration clearly does look _a lot_ better than the original.
        
           | simonklitj wrote:
           | Yeah, take a look at this photo:
           | https://i.redd.it/rfvm4j1j9m391.jpg
           | 
           | Looks like a lot of improvement to me.
        
             | xwdv wrote:
             | Somewhat, you can still see how the sky looks unnatural
             | from the HDR effect which just ruins everything. The top is
             | a more natural realistic sky. Shoreline is kinda weird too.
        
               | bhouston wrote:
               | I see what you are referring to.
               | 
               | But I don't think it is just simple HDR tonemapping, it
               | doesn't do that, but rather some type of color grading
               | going on. The bottom is over saturated and over
               | contrasty.
        
           | hifikuno wrote:
           | This was one thing that surprised me when playing the
           | remastered version of Halo. It looked exactly as I remembered
           | it. Then I swapped to the original graphics and realized my
           | nostalgia and memories had added lots of extra details.
        
             | busfahrer wrote:
             | Had the same experience with the StarCraft Remaster
        
           | dumdumchan wrote:
           | They peaked at far cry 2 and it has been down hill ever since
        
             | paxys wrote:
             | Far Cry 3 was miles better than the first two. In fact it
             | was because of the success of 3 that every later game was
             | just a copy of it, and the franchise stagnated.
        
             | hotsauceror wrote:
             | If they'd re-release Far Cry 2 with graphics on par with FC
             | 5, I might never play anything else. I could hike around
             | all day admiring the scenery in FC 5, or ride a jet ski
             | from one end of the river to the other. But the story was
             | hokey and tropey, most of the characters were
             | uninteresting, and the ending was enough to put me off of
             | Ubisoft for good. FC 2 had a great story, great characters,
             | lots of interesting mechanics. And of course, the Standard
             | Ubisoft Paradigm (climb a $TALL to unlock a map quadrant,
             | sneak into $PLACE and fight $HEAVY, $SNIPER, and $LIGHT,
             | have a $FORCEDENCOUNTER with $SUBBBOSS for some
             | exposition), was still new enough that we weren't tired of
             | it yet.
        
             | mcpackieh wrote:
             | I liked Far Cry 4's setting and characters, but the game
             | otherwise seemed very lazy and uninspired. Bland map and
             | very little do to in between outposts. Little emergent fun
             | to be had, except for doing missions or clearing outposts.
             | Same complaint with Far Cry Primal; really neat idea but
             | lazy/rushed execution.
        
             | als0 wrote:
             | There's a lot to be admired by Far Cry 2: the environmental
             | mechanics, the introduction, the lighting effects, the
             | gritty and exotic atmosphere... but to me it was not a fun
             | game. Not in the way that Far Cry 1 was fun.
        
               | thsbrown wrote:
               | I absolutely loved far cry 2. Dynamic fire and gun
               | jamming were standouts.
        
               | dumdumchan wrote:
               | The immersion is what sold it to me. No hud, no on screen
               | markers. Need to look at map? Pull it out, hold it in
               | your hand and look at it. I'm surprised no other AAA game
               | has tried this formula.
        
               | looperhacks wrote:
               | You might want to take a look at the latest entry in the
               | Metro series
        
         | papito wrote:
         | As a Far Cry fanatic, even the difference between Far Cry 3 and
         | Far Cry 4 is substantial. Far Cry 3 is one of those games where
         | the gameplay is so good, you don't even pay attention to
         | graphics, but with 4, you are on a different planet.
        
       | ftxbro wrote:
       | maybe someone is trying to cause trouble for archive.org by
       | putting such clearly violating content on there
        
         | throwaway2037 wrote:
         | This is a good point. What is archive.org's policy with regards
         | to "leaked" (unlicensed) source code? I imagine they need to
         | remove it.
        
           | boomboomsubban wrote:
           | If the content owner DMCA strikes it, they'll remove it. If
           | not, it's not really their problem. Basically the same way
           | the rest of the internet works.
        
         | MaxBarraclough wrote:
         | I think that's unlikely, it's a drop in the bucket at this
         | point.
         | 
         | Last I heard they were hosting Nintendo ROMs, in unarguable
         | infringement of the copyrights.
        
           | stefncb wrote:
           | They were also hosting the release doom wad files for
           | multiple versions last time I checked.
        
           | ftxbro wrote:
           | Well that sounds bad. Are they all-in on piracy like their
           | server is hosted on international waters or rotating between
           | some whack-a-mole servers from like kazakhstan and mongolia
           | and eswatini?
        
             | xwdv wrote:
             | Yup. Hosted on a server farm aboard a repurposed cargo ship
             | flying a pirate flag roaming international waters, spending
             | its life evading the coast guard, using starlink satellites
             | to provide connectivity to the rest of the world. The crew
             | is made up of former cyber criminals evading the law from
             | their home countries for hacking related offenses, along
             | with a few actual Somali pirates or random killers and war
             | criminals. They have the greatest collection of pirated
             | software, raw leaks and rare media files that you won't
             | find anywhere else.
        
               | ftxbro wrote:
               | i want it on netflix
        
             | boomboomsubban wrote:
             | No, they just follow DMCA claims and there's no real issue.
             | They are under no obligation to police themselves.
        
         | ExoticPearTree wrote:
         | It doesn't really matter at this point. It is out there and the
         | Internet never forgets.
         | 
         | What will come next, if it ever comes, it will be a game a
         | whack-a-mole that the copyright owners have no chance of
         | winning.
        
           | naillo wrote:
           | The internet _can_ wipe things completely given enough want
           | from corporations. For instance the hulk hogan tape seems
           | utterly gone no matter where you look.
        
             | rebane2001 wrote:
             | No it can't if you do your part
        
         | dreday wrote:
         | I think in the US they would be protected under section 230.
         | Which is a reminder to is all (in the US) of why section 230 is
         | so important.
        
       | Confiks wrote:
       | $ grep -ir "remove this after e3" | wc -l             40
        
         | RGBCube wrote:
         | It got stuck in the soon(tm) phase
        
       | cahoot_bird wrote:
       | I remember there is a bug with the hang glider that if you move
       | down and up you gain momentum
       | 
       | Back in the day far cry 1 was ultra realistic graphics.
       | 
       | The game was fun to play, the most annoying thing is if you throw
       | a rock or grenade where they can see if your stealth meter in
       | instantly goes to zero and they start shooting you.
       | 
       | I played it a lot, hehe.
        
         | mediumsmart wrote:
         | :) me too - guiding trigens towards the mercs from a patrol
         | boat with rockets.
         | 
         | Coming out of the bunker was amazing and then the realization
         | that it would be a guided tour because "Doyle" :|
        
           | cahoot_bird wrote:
           | The game is riddled with small bugs, like you can knock the
           | phone off the rock in the first level bunker then the cut
           | scene will have him picking it up.
           | 
           | Having the trigens fight the people throughout the game was
           | fun, and stealth aspect as well.
           | 
           | It's funny how the game emphasis seemed to be on the
           | realistic mode, but it's like it was only tested on medium -
           | the trigens would die very quickly and easily on realistic if
           | the guards shot them, if I had to guess probably the bullet
           | damage is turned up on that mode.
        
       | [deleted]
        
       | hexagonwin wrote:
       | Illegal or not I'm glad to see these getting released on public,
       | it won't cause much harm due to being ancient but they're great
       | learning resource.
        
         | sacnoradhq wrote:
         | I would advise NOT using this to learn from. There are so many
         | antipatterns in here that it's a hot mess. There are plenty of
         | better resources that teach good habits than learning how to
         | become another high turnover C++ developer intern about to
         | throw in another broken, fragile lava layer.
        
       | inteligence_po wrote:
       | Good links on another leaks:
       | 
       | github.com/StrongPC123/Far-Cry-1-Source-Full
       | 
       | breachforums.vc/Thread-FarCry-1-Leaked-Source-Code
       | 
       | I guess it is interesting about github
        
         | cuken14 wrote:
         | cool
        
       | Havoc wrote:
       | I wish companies would just opensource really old engines for
       | educational purposes.
       | 
       | Maybe take game assets resize everything to 1/10th so that it
       | looks like sht but can still be used as placeholder.
       | 
       | Would boost the pipeline of talent for the entire industry
        
         | pshirshov wrote:
         | I guess the best way woul dbe to regulate that. If you want to
         | sell any software (including firmware) you have to deposit the
         | sources and encryption keys into some state-owned repository.
         | If you decided to stop maintaining the code it would be
         | released into public domain after some reasonable grace period
         | (e.g. 5 years). That would solve many issues including excess
         | e-waste.
        
         | masklinn wrote:
         | > Maybe take game assets resize everything to 1/10th so that it
         | looks like sht but can still be used as placeholder.
         | 
         | The assets are commonly licensed, so you can't include them _at
         | all_ , or in large parts. Commonly the game data is not part of
         | the release either.
        
         | esperent wrote:
         | I guess this is legally unfeasible. Take a look at the splash
         | screens next time you're loading a game - especially AAA but
         | also smaller ones too. There will beone page with a bunch of
         | logos. Havok physics is the one that comes to mind but there's
         | loads more. Each of these is a plugin with proprietary code.
         | They would need to be stripped out before the code could be
         | released, which would probably be a lot of work. And then the
         | code wouldn't run anyway.
         | 
         | This isn't a recent thing - as another comment points out, even
         | the original Doom ran into this problem and only the Linux
         | source was released.
        
           | masklinn wrote:
           | It's often legally feasible but the result is difficult to
           | get value out of (and obviously worthless for the company).
           | 
           | For instance Frictional open-sourced their HPL engine,
           | Penumbra: Overture, Amnesia: The Dark Descent and Amnesia: A
           | Machine For Pigs.
           | 
           | However the Amnesia games are built with Autodesk's FBX SDK,
           | and I don't think they include any assets, they're not
           | necessarily uninteresting artefacts but there's not much you
           | can do with them either.
        
           | stepupmakeup wrote:
           | I believe most popular libraries and middleware (like Havok)
           | aren't freely available/leaked, OR at the very least it's
           | some ancient version with massive API differences compared to
           | newer versions. Around the time of the Pokemon leaks in 2020
           | I was watching people live on Discord struggling getting
           | Pokemon Diamond to compile, because apparently the DS Wi-Fi
           | component of the official SDK was never actually leaked
           | online (at the time)
        
           | torginus wrote:
           | I'd be fine if they put up their code with the proprietary
           | parts removed. They can just include a FIXME stating that the
           | physics engine/video player etc. is missing. If the community
           | picks up the code, they can just replace the missing parts.
        
             | grogenaut wrote:
             | I've worked on games before. We ported our game to havock
             | between versions. That took 8 months for one dev. The code
             | review was 3 weeks. Ripping ours out was a month by itself.
             | There were several libraries like that. The sound system
             | was similar and we had to upgrade it every game which was
             | similar work to havock. Heck there was a really simple font
             | to bitmap lib/utility we used and that would have taken
             | several months to replace. A month to rip out.
             | 
             | I moved us from PlayStation 3 to PlayStation 4 for our
             | debugging UI and literally just removing all the calls to
             | the old debugging UI system was something like 2 weeks my
             | only goal there was to get it to not compile. Wiring up all
             | 3,900 debug UI connection points to the engine with access
             | to all the rest of the game engine library and having
             | written parts of both systems in the engine and the
             | debugging library and the new UI library still took me
             | almost 2 weeks I did it with both systems working at the
             | same time which was actually easier than doing a full rip
             | out. The studio I worked at tried really hard not to use
             | proprietary libraries and it was a big deal for us using
             | havoc but we needed to they ended up going back for the
             | next title. They also wrapped literally every library with
             | shims to make it easier to Port but things like physics
             | engines are just basically impossible to wrap fully as our
             | sound engines and font libraries the implementation details
             | leak into everywhere.
             | 
             | The suggestion you're making is a very large amount of work
             | probably on the level of several engineers for several
             | years on a Triple-A title now you're talking like a million
             | dollars for the company to open source it and locking up
             | some good devs for a year or more. There's literally no
             | economic trade off in doing that unless you can come up
             | with a way to make one.
             | 
             | Porting would be an okay economic trade off there.
        
               | torginus wrote:
               | Thanks for taking your time to answer my suggestion in
               | detail. I was just trying to suggest something very
               | simple - just don't include the files that you don't have
               | the rights to - so in your case just don't publish those
               | font and physics library files. No need to completely rip
               | out all references to it.
               | 
               | The resulting code will be broken, but if the community
               | cares enough, they can fix it up.
               | 
               | I don't think this would be a huge effort to do - do you
               | see any issues (legal or otherwise) with this approach?
        
               | grogenaut wrote:
               | We did have our code mostly sorted into 3p and 1p...
               | However I'm not a lawyer and not sure how the taint might
               | leak up. I forget where Google/oracle landed on apis
               | being copyright but havock ids and other concepts leak
               | into your code everywhere. Heck even proprietary details
               | might or algos. It would still be hard and the lawyers
               | would be skeptical. You'd need a business case besides
               | goodwill to get over those humps.
               | 
               | I bet a ton of companies don't follow those best
               | practices. And there's also the fact that you've now
               | exposed yourself to litigation where some dev violated
               | copyright of previous companies or libraries or whatever
               | and put it in the wrong place or copied it. Before open
               | sourcing you were fine. After you have essentially
               | incriminated yourself.
               | 
               | The doom/quake case is kinda an exception. In that you
               | likely (I'm guessing) had Carmack who is a founder/owner,
               | deeply understand the tech base, understands cost and
               | estimates, likely understands licensing quite well, able
               | to go do the work, but also able to make the cost benefit
               | tradeoff and override objections in some cases. That's
               | not common in many companies.
        
             | maccard wrote:
             | That's gojng to be a hell of a lot of effort, unless the
             | third party libraries were abstracted out in the first
             | place.
        
             | ironSkillet wrote:
             | Removing these proprietary parts can actually be a lot of
             | work or potentially impossible without a major refractor,
             | especially if they're foundational to gameplay, like a
             | physics engine.
        
               | skrebbel wrote:
               | It can just "ERROR file physicslib.h not found". Nobody
               | says open source code must compile or work.
        
               | maccard wrote:
               | You need to remove all the calls to the SDK too.
        
               | someplaceguy wrote:
               | Why is that?
               | 
               | Wouldn't the calling code be written (and thus
               | copyrighted) by the company that wrote the game rather
               | than the one that created the SDK?
        
               | hesdeadjim wrote:
               | Depends, if it's code calling a console SDK API then you
               | are bound by terms of the NDA to not publicly share it --
               | forever. Even just function names!
               | 
               | More realistically, a drop of source code is basically
               | painting a big target on your company to get sued by a
               | troll. I've wanted to release my game's source but am
               | terrified of this.
        
               | alerighi wrote:
               | > Depends, if it's code calling a console SDK API then
               | you are bound by terms of the NDA to not publicly share
               | it -- forever. Even just function names!
               | 
               | This is not true. API itself (function names and
               | parameters) does not hold copyright. Otherwise you
               | wouldn't have open-source applications on any proprietary
               | OS, since they have the function calls of proprietary
               | APIs inside.
               | 
               | What can be copyrighted are the header files itself:
               | these you can't redistribute, as you can't redistribute
               | the binary that is linked to the executable. Of course
               | without these you wouldn't be able to compile and run the
               | software, but you can reverse engineer the API from the
               | function names and parameters and even the binary
               | executable (because for an EU law reverse engineering for
               | the purpose of substituting proprietary parts, that is
               | this case, is allowed) and build a replacement for sure.
        
               | badsectoracula wrote:
               | > What can be copyrighted are the header files itself:
               | these you can't redistribute, as you can't redistribute
               | the binary that is linked to the executable.
               | 
               | Note that while the exact header file is covered by
               | copyright, the "information"/"facts" the header file
               | describes (e.g. said function names, parameters,
               | constants, etc) is not - at least as far as EU is
               | concerned anyway (BTW the case you most likely have in
               | mind wasn't for substituting proprietary parts but for
               | interoperability between parts - i.e. it would still be
               | valid for substituting one proprietary part with another
               | proprietary part). This is also why different compilers
               | for Windows have a "windows.h" (or language equivalent)
               | with each having its own copyright but describing the
               | exact same API.
               | 
               | (obviously this is for unsubstitutable fact-like
               | information a header file contains and does not apply for
               | any code like macros or inline methods like in C++
               | classes/templates)
        
               | ChoGGi wrote:
               | > you are bound by terms of the NDA
               | 
               | > This is not true.
               | 
               | You usually have to follow contracts you sign.
        
               | someplaceguy wrote:
               | Perhaps you could just rename the function names,
               | structure fields, etc, to something different but
               | similar?
               | 
               | e.g. instead of ps3_fly_up(...) you'd rename to something
               | a bit more generic like sdk_float_up(...) or something
               | like that.
               | 
               | It could require a bit of creativity and some work but
               | with a sufficiently-intelligent IDE it'd just be a one-
               | time rename per function name + structure name + field
               | name.
        
               | plank wrote:
               | Surely that part of the code is AT LEAST fair use? Or one
               | has to be at the wrong part of THAT historical argument
               | (not necessarily pointing at parent)?
               | 
               | (Yes, I would argue that this is exempt following the
               | 'functional' argument)
        
               | mostthingsweb wrote:
               | "Oracle would like to know your location."
               | 
               | https://en.m.wikipedia.org/wiki/Google_LLC_v._Oracle_Amer
               | ica....
        
               | orra wrote:
               | Absolutely untrue. It's legal to reimplement a third
               | party API, as upheld by the highest courts in both the US
               | and the EU.
               | 
               | So of course you don't need to remove your lines of
               | source code which call into an API.
        
               | kevincox wrote:
               | Probably true, but that is probably also against the
               | license agreement (even if unenforcable). Most companies
               | don't want to take this risk (and potential legal costs)
               | just to release code that won't bring them any (direct)
               | revenue.
        
               | maccard wrote:
               | That's not the same thing - one is redistributing the API
               | (which is what we're talking about here) and the other is
               | implementing an API.
        
               | alerighi wrote:
               | Why? You just ship the code that you wrote without the
               | third part libraries. I don't think you did copy/paste
               | the library code inside your own, it's probably linked to
               | the executable in some form. Of course it would be
               | impossible to compile the program without it, but as it's
               | said, the component may be recreated by the open-source
               | community, or sourced form the closed-source game in some
               | other ways.
        
         | rychco wrote:
         | Agree. I would even be happy if the game was stripped of all
         | licensed code/assets/tools/etc. And honestly, I don't even care
         | if it can successfully compile/run. Just having the code alone
         | would be tremendously useful for the purpose of study.
        
         | grishka wrote:
         | In general, open-source all abandonware. Here's a few examples
         | of non-game old software that would benefit the society if
         | open-sourced:
         | 
         | Windows 9x and classic Mac OS. No one has sold these OSes for
         | 20+ years and they turned out to be evolutionary dead ends. It
         | would make sense to release their sources so people could learn
         | from them and run them on new hardware more easily.
         | 
         | Flash Player. Adobe has stated in no uncertain terms that Flash
         | is dead. Is there any good reason why the sources need to stay
         | closed if they aren't going to make any further gains,
         | financial or otherwise, from this product and its ecosystem? I
         | mean the Flash Player plugin and standalone app specifically,
         | not the Flash authoring software -- that's still alive under a
         | new name, Adobe Animate.
         | 
         | Trident, the Internet Explorer engine. Again, it's dead for
         | good as far as Microsoft is concerned, so why not release its
         | sources for people to learn and hack on?
         | 
         | Presto, the Opera engine. This was leaked and of course I
         | hoarded it, but it would be nice to see an official release.
         | 
         | Winamp. The company behind it pivoted to some kind of streaming
         | social donation thing. It does not seem interested in
         | maintaining the old Winamp app.
         | 
         | Path, the social media thing for "close friends", their mobile
         | apps. The apps were insanely cool, especially at the time of
         | Path's peak around 2013, but the service was shut down a few
         | years ago. Unless they're going to somehow resurrect the
         | service, there's no good reason for the sources for the apps to
         | remain closed. I'd love to take a look at their implementation
         | of real-time photo filters.
         | 
         | Thinking of it, it makes _more_ sense for non-game apps than
         | for games to release sources. Old games do sometimes come out
         | as  "remasters" for modern platforms. These usually reuse the
         | engine and sometimes some of the assets. Non-game software, on
         | the other hand, when it's dead, it's usually dead for good.
        
           | antegamisou wrote:
           | > No one has sold these OSes for 20+ years and they turned
           | out to be evolutionary dead ends. It would make sense to
           | release their sources so people could learn from them and run
           | them on new hardware more easily.
           | 
           | Would add SGI's IRIX too!
        
           | catiopatio wrote:
           | > classic Mac OS
           | 
           | I'd be really surprised if Apple still had the source code
           | and custom tools necessary to actually build the thing.
        
             | Palomides wrote:
             | they released the Lisa OS code (from 1983) recently, I
             | think they still have all the Mac OS code
             | 
             | building it may be horrible, but the code would still be
             | very interesting to hobbyists
        
               | classichasclass wrote:
               | There is a fair bit of third party code in the classic
               | Mac OS, particularly in the extensions and cdevs. The
               | nanokernel and some basic portions of the OS are likely
               | releasable but they'd have to audit all of that.
        
           | stepupmakeup wrote:
           | Winamp's source actually did leak a couple years ago too
           | ("winamp-cvs")
        
           | geek_at wrote:
           | man I wish they had open sourced OS/2. It could have a linux
           | sized community at this point.
           | 
           | Sadly microsoft had put so much of their code in it, that
           | they didn't allow the release (according to my dad who worked
           | for IBM and was even called "Mr. OS/2" because he had sold it
           | so good to companies)
        
             | ttfkam wrote:
             | OS/2 is still in use and under active development, just
             | under a different name.
             | 
             | https://hackaday.com/2023/02/16/arcaos-os-2-updated-for-
             | the-...
        
               | mepian wrote:
               | I remember reading somewhere that while the developers of
               | ArcaOS have the rights to continue the development of
               | OS/2, they didn't obtain the source code. So they have to
               | patch their changes into the old OS/2 binaries instead of
               | changing the code.
        
           | rafram wrote:
           | > Trident, the Internet Explorer engine.
           | 
           | Not really dead because it's still shipped with enterprise
           | Edge for sites that enable IE mode:
           | https://learn.microsoft.com/en-us/deployedge/edge-ie-mode
        
             | hulitu wrote:
             | Also i think that people from Spyglass INC would not be
             | very happy.
        
           | gibolt wrote:
           | Internet Explorer is still very much alive for millions of
           | people. Releasing the source would mean unlocking way more
           | exploits on those people, with no plan to patch.
        
           | pdntspa wrote:
           | Au contraire, Winamp 5.9.2 released recently and it's the
           | same old player.
           | 
           | They are working on a new one that I am somewhat suspicious
           | of, but Winamp 5.9 has been a pleasant surprise.
        
           | [deleted]
        
           | manquer wrote:
           | > Is there any good reason why the sources need to stay
           | closed if they aren't going to make any further gains,
           | financial or otherwise, from this product and its ecosystem?
           | 
           | Many reasons are there , it takes a lot of effort for a
           | company to open source anything, to name a few
           | 
           | - Not get sued for IP infringement if your developer from 20
           | years back copied something or used GPL code etc
           | 
           | - Potentially expose active trade secrets , the program might
           | not be sold , parts the code /algorithms whole modules might
           | still be used in newer applications.
           | 
           | - Presence of PII or other sensitive/inflammatory content in
           | comments and code, could be anything from funny(but
           | inappropriate )method names to comments and documentation .
           | 
           | - poor boundaries, you could have dependencies which are used
           | by the app which are not possible to also be open sourced.
           | 
           | - poor documentation, you simply no longer have all the code
           | or is it time consuming to piece it all together
           | 
           | - expose vulnerabilities in your current offerings , code
           | sometimes has way of being reused , you would be surprised
           | how much "dead" code has a way of living on for decades later
           | .
           | 
           | - third party agreements, not all your code is "your" code,
           | you may have only licensed it from another vendor.
        
           | psychphysic wrote:
           | Is there a risk those closed source projects would be sued
           | following the release because they disclosed some forgotten
           | sin?
           | 
           | I'm thinking mostly of anti competitive practices from
           | Windows.
        
             | realitythreek wrote:
             | There's a bunch of costs to releasing closed source code as
             | open source. Generally they'd have to have a team of
             | developers review it, they'd need their lawyers to review
             | it and any licenses. That every company that had licensed
             | code used would also need to go through their own process.
             | 
             | At any time, one of them could say no and the process
             | stops. So you're basically paying for everyone's time and
             | possibly to relicense some parts. And im sure I'm missing
             | other parts.
        
               | xyzzy_plugh wrote:
               | Yep, it's a huge time sink even in the best case
               | scenario, let alone with ancient software encumbered by
               | transfer of ownership through multiple corporate
               | custodians.
               | 
               | It's not that unusual for it to not even be wholly owned
               | by a single entity due to licensing requirements.
        
               | stepupmakeup wrote:
               | It's unfortunate that when a company DOES chose to
               | release old software, the entire revision history is
               | thrown out due to processes like that. In the software
               | world, this probably doesn't matter too much, but video
               | games can go through massive changes during development.
               | But it also depends on factors like if game assets were
               | even stored in version control in the first place.
        
             | qingcharles wrote:
             | I doubt it. The Windows sources are available officially
             | through Microsoft if you're spending enough money and your
             | project requires them.
        
             | drewcoo wrote:
             | > anti competitive practices from Windows
             | 
             | You would more likely be amazed by all the dumb hacks in
             | the system for backward compatibility, mostly for other
             | companies' software.
             | 
             | https://devblogs.microsoft.com/oldnewthing/20050824-11/?p=3
             | 4...
        
               | realitythreek wrote:
               | It seems dumb and it is dumb, but it's also an important
               | feature of Windows that your terrible app from the 90s
               | can still run today with minor changes generally. Less so
               | if it's win16 but anything win32 is good to go.
               | 
               | Also, Linux has a similar philosophy as Linus has
               | eloquently described in the past. [1]
               | 
               | [1] https://lkml.org/lkml/2012/12/23/75
        
               | hulitu wrote:
               | > It seems dumb and it is dumb, but it's also an
               | important feature of Windows that your terrible app from
               | the 90s can still run today with minor changes generally.
               | 
               | This is a myth which is mostly not true from some time.
        
               | realitythreek wrote:
               | Can you explain how it's not true? I've personally run
               | software from the 90s. I am not a myth!
        
             | squarefoot wrote:
             | > Is there a risk those closed source projects would be
             | sued following the release because they disclosed some
             | forgotten sin?
             | 
             | I know nothing about law, but I guess software companies
             | would protect themselves in advance by mandating that all
             | their developers use only software and sources that belongs
             | to them anyway. That would be useful in case of a lawsuit
             | where a court could force them to show the sources to prove
             | they don't come say from the claimant's reverse engineered
             | software, or some other FOSS project. Things might be
             | different with 3rd party modules and libraries, where an
             | obscure module was licensed from a company that went out of
             | business ages ago, but all their assets were acquired by
             | another party who finds the module in the wild and decides
             | to sue. Just speculating, but although I'm 100% in favor of
             | FOSS, if the above were real possibilities, I couldn't but
             | understand why some companies are so reluctant to release
             | even old code they couldn't profit from anymore.
        
               | anders_p wrote:
               | It's not that simple.
               | 
               | When developing software, a company might aquire a
               | license to add some library or code to their product.
               | 
               | This happens all the time with OS's like Windows
               | (licensing the ability to play media formats, etc.) or
               | games (licensing certain engines or algorithms).
               | 
               | That doesn't mean the company squired a license to
               | release the libraries or code as open source 20 years
               | later.
               | 
               | So you'd have to go through the codebase with a fine-
               | toothed comb, line-by-line, because the original
               | developers don't work for you anymore, and the license
               | agreements are long lost.
               | 
               | Releasing large software projects are a massive cost to
               | any company that wants to be protected from potential
               | lawsuits.
        
             | grishka wrote:
             | It's not like this kind of stuff can't be found by reverse
             | engineering. For Windows specifically, the ReactOS team is
             | doing lots of it to document the inner workings of internal
             | Windows APIs so they could reimplement them.
        
           | dahart wrote:
           | > Is there any good reason why the sources need to stay
           | closed if they aren't going to make any further gains,
           | financial or otherwise, from this product and its ecosystem?
           | 
           | I can think of lots of reasons. From a competitive point of
           | view, you might risk having a big enough resurgence that it
           | eats into the business of your replacement. From a technical
           | point of view, it may reveal parts of the sausage making, or
           | expose technology and libraries that you still use and rely
           | on. From a legal point of view, it could open up multiple
           | kinds of liability. From a support and staffing perspective,
           | it typically takes at least a little time to open source
           | something, if you want to do it well, there's usually vetting
           | & review by engineers and lawyers, and usually the need for
           | more/better documentation than the internal docs.
           | 
           | Think about this from a business perspective- if they predict
           | there's going to be no financial upside, even indirectly, and
           | there are costs and risks associated with it, then why would
           | they? When companies open-source something, it's not usually
           | because the code is dead, it's usually because the people in
           | it are committed to open source and the org agrees to support
           | that cause, or because the company stands to gain valuable
           | attention from the community, and eventually or indirectly,
           | profits.
           | 
           | We do have to support and celebrate when companies decide to
           | release code, but we can't really expect it or complain when
           | they don't, it just doesn't make sense to them and they're
           | not obligated.
        
             | iforgotpassword wrote:
             | I'd guess something big as Windows 9x contains A LOT of
             | licensed third party code which would be a nightmare to get
             | permission for. Try finding five dozen rights holders after
             | thirty years...
        
               | pizzapill wrote:
               | This is the usual argument you hear when it comes to old
               | Games. It often would take way to long time to "clean"
               | them up from 3rd party contributions/licenses etc. For a
               | OS this is a impossible task.
        
               | tobr wrote:
               | As far as I understand, this is even true of lesser known
               | old movies - even the work of figuring out who has the
               | rights to what is unlikely to pay back, so it's just
               | never released in a digital format.
        
               | deaddodo wrote:
               | This is almost exclusively usually due to either producer
               | credits or music licensing.
               | 
               | For the former, if it's really that big they'll just
               | release it and keep a standard budget aside for if/when
               | the unlocated people come out. The latter is what really
               | blocks movies because it actively costs them money, so
               | they need to be able to earn more than what it is costing
               | them to release. This makes music-heavy/niche music films
               | much more expensive for potential broadcasters/streamers.
        
               | mcpackieh wrote:
               | Usually the argument goes that it would take time/money
               | to rewrite the parts they don't have rights to, but
               | simply deleting those parts and releasing the (now
               | broken) code would be _much_ better than nothing. Of
               | course this assumes they kept track of who owns what code
               | in the first place. Probably a bad assumption in the case
               | of games particularly.
        
               | mrandish wrote:
               | > Of course this assumes they kept track of who owns what
               | code in the first place.
               | 
               | Not only that but for any large company to release code
               | somebody in engineering needs to look at it to at least
               | know what all is there, the legal department needs to
               | assess the risk of potential liability, then which
               | license to release it under needs to be decided. Finally,
               | somebody in a senior business role needs to sign off on
               | doing it.
               | 
               | I think it's great when old code gets released but the
               | reason it's rare is it gets complex and it's nobody's job
               | to do it. That's why many such releases are thanks to an
               | employee deciding to care about doing it and having the
               | internal cred and sway to push it through. Or, as it
               | appears in this case, someone who had access to the code
               | and is awesome enough to release it anonymously years
               | later when the business is defunct or will no longer
               | care.
        
               | wengo314 wrote:
               | don't quote me on that but i read somewhere that
               | microsoft has a strict policy of NIH in their codebase -
               | everything gets reimplemented from scratch unless it's
               | completely unfeasible.
               | 
               | The only problem might be the software patents that their
               | code leverages.
        
               | kanzenryu2 wrote:
               | From memory they got their TCP/IP stack via the MIT
               | licence
        
               | happymellon wrote:
               | Why would parents prevent publishing of source code?
               | 
               | Unless you mean that someone could see that you
               | implemented their patent and retroactively go to sue
               | them?
        
               | favorited wrote:
               | A license to use someone else's code doesn't necessarily
               | include permission to publish the source.
        
               | Hydraulix989 wrote:
               | What is "NIH"? Google only mentions health institutions.
        
               | tomjakubowski wrote:
               | "Not invented here" syndrome
        
               | mrtranscendence wrote:
               | Not invented here.
        
               | favorited wrote:
               | Their code for Zip folder compression/decompression is
               | licensed from a 3rd party.
               | 
               | https://devblogs.microsoft.com/oldnewthing/20180515-00/?p
               | =98...
        
         | flohofwoe wrote:
         | The reason is often that those codebases are usually a giant
         | hairball of closed source 3rd party dependencies which would be
         | a nightmare to put under a common open source license, no
         | matter if the companies behind those products still exist or
         | not.
        
         | hinell wrote:
         | I think they won't as certain parts might have migrated to new
         | engines without being changed much. Like geometry engine etc.
        
         | boppo1 wrote:
         | RIP UT2k4
        
         | pbhjpbhj wrote:
         | My own personal and private opinion is that I wish the
         | legislation would opensource things that are not being actively
         | sold where the owner is a corporation.
         | 
         | You still have registration in USA, so if you register then you
         | have to deposit, if you register with corporate ownership then
         | you pay a yearly renewal, if you stop paying the deposit goes
         | to public domain. Simples.
        
           | grogenaut wrote:
           | And how much does that deposit need to be?
        
         | Heinrich_zHM wrote:
         | Often Open-Sourcing is not an option, as they license closed
         | source code for it.
         | 
         | Windows for example couldn't be made open source because of
         | licensed, closed source code blocks.
        
         | rkagerer wrote:
         | Maybe start a non-profit whose sole mission is to buy up this
         | old IP and release it.
        
         | concordDance wrote:
         | What should really happen is a law that video games get
         | declared public domain and have their source code released
         | after 10 years. All assets and dependencies would get
         | automatically released under a license allowing for their use
         | in that game and derivatives of it.
         | 
         | As it is, the source is mostly just lost to time, making
         | humanity poorer.
        
           | flohofwoe wrote:
           | There's a lot of games that have a shelf life of more than a
           | decade. Maybe make that "10 years after the game is no longer
           | sold".
        
             | Vespasian wrote:
             | That (maybe) would have worked in the olden days of
             | physical disks or catridges. Today it is trivial to keep
             | the game on steam with zero sales (or almost zero).
             | 
             | If lawmakers wanted to pass a law that actually made this
             | happen they needed to stipulate a cut off date (and
             | potential compensation) as well as rigid rules about what
             | one can do with the released code.
        
             | concordDance wrote:
             | Very few and they still make 90+% of sales before then. A
             | price worth paying
        
               | flohofwoe wrote:
               | That dynamic has changed a lot with multiplayer games
               | which are in continuous development. For instance DayZ
               | just hit record player numbers after nearly a decade:
               | 
               | https://www.reddit.com/r/dayz/comments/11nlu70/recently_d
               | ayz...
               | 
               | But even if that's an outlier, online games can have a
               | surprisingly long tail where the game remains profitable
               | even if the player count doesn't grow anymore (as long as
               | the developer supports the game at least).
        
           | nerdix wrote:
           | Would be nice but remastering 10+ year old games is very
           | profitable these days so I'd imagine that the industry would
           | lobby very hard against it.
        
         | jjrh wrote:
         | From a pure archiving point of view it would be great.
         | 
         | It's a shame how many pieces of software are already totally
         | lost forever.
        
         | dclowd9901 wrote:
         | I wonder if this reaches into the territory of "abandoning your
         | copyright" though.
        
         | kelsolaar wrote:
         | John Carmack did a stellar job in that respect. Doom and Quake
         | are still very much alive thanks to his decision.
        
           | lamp987 wrote:
           | Falcon 4.0 (1998) had a source code leak after Microprose
           | went bankrupt and just like Doom it also had many community
           | forks.
           | 
           | Its still alive and kicking today as Falcon BMS.
        
             | throwaway2990 wrote:
             | 25 years and ultima online is still alive and kicking in
             | the community shards.
        
             | marcins wrote:
             | Oh man, I remember building a new PC for Falcon 4.0. I
             | think I still have the manual binder somewhere. I didn't
             | actually stick with it for that long in the end - I should
             | check out what the community has done in the meantime!
        
               | ahoka wrote:
               | They have added VR support. Crazy.
        
           | arendtio wrote:
           | Absolutely, and those releases weren't even that old (<10
           | years).
           | 
           | There are so many things that I learnt from tinkering with
           | the Quake 3 source code in 2007, I am still very happy and
           | grateful that I had the opportunity at the time. My
           | understanding of topics like real-time applications, AI,
           | platform independent code and debugging would be very
           | different if that code would not have been released.
        
           | suddenclarity wrote:
           | Even he had some challenges with releasing Doom:
           | 
           | > The bad news: this code only compiles and runs on linux. We
           | couldn't release the dos code because of a copyrighted sound
           | library we used (wow, was that a mistake -- I write my own
           | sound code now), and I honestly don't even know what happened
           | to the port that microsoft did to windows.
           | 
           | I would assume it's a lot more complicated today. Even the
           | most simple programming projects tend to have a ton of
           | dependencies nowadays.
           | 
           | And it doesn't even account for the fact that you might be
           | killing future projects by handing out the blueprint of old
           | games. Would Assassin's Creed Valhalla exist if we had 100
           | clones of Assassin's Creed III?
        
             | taneq wrote:
             | In the very short term, sure. All of the discussions of
             | this kind of thing (and of copyrights and patents in
             | general) have this same very-short-term perspective.
             | "Patents SUCK, they're MEANT to encourage innovation but
             | it's been SIX MONTHS and we STILL can't use [technique X]."
             | Sure, but 20 years from now that patent will expire and
             | we'll all be able to use it thanks to the fact that it was
             | patented, and so significant parts of the 'secret sauce'
             | are a matter of public record.
             | 
             | In the case of Doom, the engines being released has lead to
             | an active community developing the engine (eg. GZdoom which
             | can now be played in VR, with ray tracing, fancy shading,
             | etc.) on pretty much any hardware with a processor.
        
             | dj_mc_merlin wrote:
             | > Would Assassin's Creed Valhalla exist if we had 100
             | clones of Assassin's Creed III?
             | 
             | Probably, unless they all had the budget to create a shit
             | ton of new assets and replace the old ones. And the code
             | was released with a license that allowed commercial use.
        
               | suddenclarity wrote:
               | > Probably, unless they all had the budget to create a
               | shit ton of new assets and replace the old ones.
               | 
               | Isn't that what we're getting from AI generated content?
               | 
               | Note, I'm not saying that a random person will create
               | something better. I'm just saying there might be a risk
               | of saturating the market if you can play 100 versions of
               | the same game for free.
        
               | angus-prune wrote:
               | This isn't how the games industry works for games at thia
               | scale (or any other media). They are events. Millions of
               | people having the same experience at the same time and
               | having a common cultural touch point.
               | 
               | The 100s of clones would be more like fanfic. A set of
               | people would get very into them, search out the good ones
               | (perhaps better than the original), or revel in the
               | terrible ones. But then the whole community still comes
               | together to watch the latest marvel film anyway.
               | 
               | The main effect would be to build and maintain the
               | community for the next commercial version.
        
             | techwiz137 wrote:
             | Still waiting for them to release RAGE 1 source code.
        
             | xen0 wrote:
             | The secret sauce is more than a 10 year old engine.
        
             | neurostimulant wrote:
             | > And it doesn't even account for the fact that you might
             | be killing future projects by handing out the blueprint of
             | old games. Would Assassin's Creed Valhalla exist if we had
             | 100 clones of Assassin's Creed III?
             | 
             | Releasing the old doom source code doesn't stop id software
             | from making sequels all the way up to doom eternal.
        
             | poisonborz wrote:
             | > Would Assassin's Creed Valhalla exist if we had 100
             | clones of Assassin's Creed III?
             | 
             | Maybe not, but we would have 100 other games that may have
             | expanded the genre further.
        
             | nottorp wrote:
             | > Would Assassin's Creed Valhalla exist if we had 100
             | clones of Assassin's Creed III?
             | 
             | You are over appreciating the geek's willingness to toil on
             | assets and make up a compelling storyline :)
             | 
             | Not that Ubisoft games are worth playing, but for a single
             | player game at least it can be much worse.
        
             | WastingMyTime89 wrote:
             | Less commercially motivated uninspired follow ups and more
             | original content seems like a huge win for culture at
             | large. Large video game and movie studios are mostly
             | churning out copy-pasted garbage nowadays.
        
             | tacocataco wrote:
             | Looping back to doom, here is a free library of doom mods.
             | 
             | https://freedoom.github.io/
             | 
             | According to Doom Eternal's wiki, it sold 3 million copies
             | in spite of all these free to play doom games.
             | 
             | https://en.m.wikipedia.org/wiki/Doom_Eternal
        
             | the8472 wrote:
             | Elder scrolls games are very moddable and people have made
             | total conversions and map extensions. That didn't prevent
             | the sales of newer TES games based on slightly improved
             | engines and slightly better assets (fan-made assets are
             | often still ahead of the official ones, but it takes years
             | of refinement to get to that point).
        
               | vertis wrote:
               | That and things like Counter Strike / Day of Defeat that
               | started as mods had a large number of maps back in the
               | day. 99% of them were shit and weird experiments. The
               | ones that did rise to the top eventually got incorporated
               | into newer versions, and indeed became games in their own
               | right.
               | 
               | DOTA as well, started as a mod for Warcraft 3 and
               | eventually spawned a franchise.
               | 
               | Trying to capture ALL the value (in this case the game
               | developer/publisher) is a mistake anyway. The healthiest
               | game franchises have broad ecosystems around them.
               | Releasing the source code of old games just encourages
               | that.
               | 
               | If there is one set of games I wish were released it is
               | Ambrosia Software's catalog. Of all their games the only
               | one I can find that is open source is Maelstrom (It's the
               | Escape Velocity series, I'd love to see opened).
        
               | sersi wrote:
               | I always wonder what happened with Ambrosia, they had a
               | good library of games that they could update and could
               | still sell but they just disappeared suddenly.
        
               | photonerd wrote:
               | Updating and reselling their old games was the majority
               | of their business for the last ~10 years of the company.
               | 
               | Their game library had some gems but they famously made
               | most of their ga my es by ripping off other games. I'm
               | guessing that didn't scale.
               | 
               | Their biggest seller was a small Mac utility called Snapz
               | Pro if memory serves.
               | 
               | They, frankly, were never a company run for anything
               | other than milking a quick buck.
        
               | virtue3 wrote:
               | Escape Velocity was what got me into coding. I was huge
               | into moding that game when I was younger on my old mac OS
               | 7.x system. Absolutely fell in love with being able to
               | extend the game.
               | 
               | Thanks for bringing that up. Those were good times. And
               | agreed. Would love the source to original EV alone. Gonna
               | take a gander at maelstrom! Thank you!
        
               | cto_of_antifa wrote:
               | [dead]
        
               | symfoniq wrote:
               | We walked a similar path. Fond memories of modding EV
               | with ResEdit.
        
               | dustymcp wrote:
               | dayz and the arma series aswell they would not have sold
               | nearly the amount of copies without it, it also ended up
               | as a standalone however controversial it might be.
        
               | deadbunny wrote:
               | For sure I bought like 5 copies of A2 for friends just so
               | we could play DayZ mod together.
        
               | pgporada wrote:
               | Ayyy, Day of Defeat was peak early 2000's FPS.
        
               | CoastalCoder wrote:
               | > If there is one set of games I wish were released it is
               | Ambrosia Software's catalog.
               | 
               | And Chiral!
               | 
               | Man I'd love a Linux port of that game.
        
               | JD557 wrote:
               | While not open source, I recently learned that you can
               | still download windows versions of escape velocity in:
               | https://escape-velocity.games/
               | 
               | That was one hell of a trip down the memory lane.
        
               | vertis wrote:
               | I didn't, though you can also play them on Infinite Mac.
               | 
               | Also if you haven't played Endless Sky, that's inspired
               | by EV and open source.
        
               | mcpackieh wrote:
               | There's no way I would have purchased Morrowind, if not
               | for OpenMW.
        
         | awestroke wrote:
         | Old engines are very far from the current way is doing things.
         | You might learn a lot, but you won't learn what you need to
         | program modern games
        
           | arendtio wrote:
           | I wonder how many people still program modern game engines?
           | Sometimes it feels like everybody just take the newest
           | release of the Unreal Engine and drops assets and scripts
           | into it.
           | 
           | Just to be clear, I am not saying that there are no
           | alternative engines, just that these things are so complex
           | that there are very few people, who dare to compete with
           | Unreal.
        
             | maccard wrote:
             | The "scripts" you talk about dropping into unreal engine
             | are fully fledged c++ programs.
        
           | danhau wrote:
           | It's still interesting to see how certain challenges have
           | been solved back in the day.
           | 
           | Or as a case study in what _not_ to do today. For example,
           | Quake's ingame console commands were stored in a linked list.
           | I believe looking up a command was a linear search through
           | that list. You wouldn't do it like that today.
        
             | wmanley wrote:
             | I don't know about quake, but in quake 2 it consisted of a
             | big list of:                   else if (strcmp(cmd,
             | "somecmd") == 0)             somecmd()
             | 
             | I remember reading it at the time and being inspired by the
             | simplicity of it. It didn't need to be more complicated
             | than it was, and so Carmack didn't make it more
             | complicated. That was in stark contrast to a lot of the
             | object oriented c++ design stuff that I was also reading at
             | the time.
             | 
             | So much of the quake 2 game source was like that.
             | Beautifully straightforward code.
        
               | hyperthesis wrote:
               | Linear time is fine for small _n_ , and console commands
               | aren't time critical anyway.
               | 
               | People famous for optimization also know where it
               | matters. Optimization obscures.
        
               | wmanley wrote:
               | Here it is:
               | 
               | https://github.com/id-
               | Software/Quake-2/blob/372afde46e7defc9...
        
             | caskstrength wrote:
             | > For example, Quake's ingame console commands were stored
             | in a linked list. I believe looking up a command was a
             | linear search through that list. You wouldn't do it like
             | that today.
             | 
             | Sure you would! You think those dinosaurs like Carmack
             | didn't know about tree-like structures and hash tables back
             | in the 90s? They did, it is just that (I assume) their main
             | goal was to optimize something that is computed every
             | frame, not once in a blue moon when player inputs a console
             | command, which latency doesn't matter that much anyway
             | whether is is 1ms or 10ms. In fact, toying with advanced
             | data structures for console optimization sound like
             | something junior engineer would get reprimanded for by
             | seniors, if caught up wasting time on it.
        
             | zelphirkalt wrote:
             | The example sounds like a quite basic insight into
             | algorithmic complexity or complexity of lookup operation of
             | data structures. A linked list is fine, if you need or want
             | to go through the entries sequentially anyway, but if you
             | need random access, then you probably want something
             | different. I can tell that without ever having looked at
             | something like Quake's console commands implementation.
             | However, it might have been the case, that there were not
             | that many commands anyway, so that the linked list did not
             | noticably slow things down.
        
               | codetrotter wrote:
               | > it might have been the case, that there were not that
               | many commands anyway, so that the linked list did not
               | noticably slow things down.
               | 
               | Also, unlike the game code itself which has to finish
               | running its work in time for every frame, it probably
               | doesn't matter if running a command from the Quake
               | terminal takes a little bit extra time.
               | 
               | Would anyone notice or care about a difference in the
               | amount of time it takes to run the /noclip command for
               | example, in a O(n) vs O(1) lookup of the command in the
               | probably short list of available commands? I don't think
               | so.
               | 
               | Speaking for myself, if I bring up the terminal in a game
               | like quake to run a command, I'm probably standing
               | stationary somewhere out of danger at the moment. And the
               | amount of time I spend to tab open the terminal and type
               | /noclip would be much greater than the amount that the
               | game then takes to look for that command in its list of
               | commands.
        
               | TeMPOraL wrote:
               | > _Also, unlike the game code itself which has to finish
               | running its work in time for every frame, it probably
               | doesn't matter if running a command from the Quake
               | terminal takes a little bit extra time._
               | 
               | Except we did, because back then, the console command
               | loop was _part of the work done every frame_ - so your
               | lookup still had to fit in the budget, or the player
               | would see frames being skipped. Which, if memory serves
               | me, happened as far as Quake 3.
               | 
               | Here's another important insight about how games were
               | written back then: _they were single-threaded_.
               | Rightfully or not, the cost of context switching was seen
               | as too big, so everything was run in a single thread -
               | maybe with an event loop (what kids these days call
               | "async") thrown in for convenience, especially around UI.
               | The games that did use threads, would use a small amount
               | of them to offload some work that wasn't strictly frame-
               | bound, or when outside main gameplay (e.g. in menu). I
               | actually can't think of any game from that era, which
               | would run multiple threads during main gameplay.
               | 
               | And sure, you can adapt the console with your linked list
               | lookup to run on the event loop ("async"), so it would
               | e.g. do a fixed number of search steps, then yield, and
               | resume next frame. But the code for that would get _much,
               | much_ more complex than replacing a linked list with an
               | array, even if you then also replaced linear scan with
               | binary search.
               | 
               | So one other thing about games back then: things were
               | much simpler, and skipping frames wasn't that big of a
               | deal-breaker. Multiplayer wasn't so popular, there was
               | nothing you could honestly call physics code - which
               | would explode if you skipped frame without compensating,
               | etc. And players were used to getting anything from 6 to
               | 60 FPS, depending on hardware they owned. These days, a
               | game console blocking main gameplay thread and causing
               | frame skips, would be unthinkable.
        
               | acomjean wrote:
               | Single threaded kind of makes sense for machines with
               | single core CPUs. And multiplayer was usually limited
               | because internet wasn't that good typically being dialup.
               | 
               | Games required more cutting edge machines (maybe 2 years
               | old) I remember getting a notebook with enough power
               | (66mhz, 4 megs of ram) to place doom. Taking my machine
               | to a friends and playing one on one death match over a
               | serial cable.
        
               | dustymcp wrote:
               | i used it extensively and cannot think back on any time i
               | thought the cmd line was slow
        
             | grogenaut wrote:
             | The game studio I did did many many things in linked lists
             | or arrays still because literally searching an array is
             | still much much faster than computing out hash algorithm
             | when the total number of entries is less than a thousand
             | and it gives you memory predictability. So generally when
             | you're searching it almost all of it has been loaded into
             | RAM especially if you limit the size of the items in the
             | length list which games almost always do and you list limit
             | the size of the array which games almost always do almost
             | everything in a good game engine is fixed size arrays for
             | repeatable performance. I was surprised by this as well
             | when I moved from doing Ruby and Java apps into AAA game
             | studio but the engineers were kind and explained it to me
             | and showed me the math and I was like yep that is way
             | faster. I also didn't appreciate the things like cash
             | coherence that they highly leveraged to make every frame
             | sing
        
             | reassembled wrote:
             | Does Quake 3 also use a linked list for the console
             | commands? That game even has command completion, whereby
             | pressing tab after typing a couple of characters, the
             | console fills in the command you most likely wanted. The
             | console in Q3A is extremely fast IME.
        
           | anthk wrote:
           | Most of the old engines have been modernized. IoQuake3 for
           | Open Arena, Doom3, even the Quake 1 src it's not the same as
           | the one ID released. And I am not talking about DarkPlaces,
           | but QuakeSpasm, SDLQuake...
        
           | risyachka wrote:
           | Depends what part of game development you are referring to.
           | 
           | Game engine development? Sure.
           | 
           | Game development using engine? 99% didn't change.
        
         | gonzo41 wrote:
         | As an aside, have you played red alert lately. Holy crap. I
         | tried a while back and it's like people have just been studying
         | that game non stop since I was a kid. I got owned. But year
         | totally agree.
         | 
         | I sort of think that with a smart OS license for game IP you
         | could put a lot of stuff into the public domain and it would
         | flourish in really interesting ways like fan fiction.
        
           | bombcar wrote:
           | Same thing with Heroes III - they talk about "breaks" and
           | chains and things on multiplayer and it just blows me away.
        
             | BiteCode_dev wrote:
             | I though I was good at starcraft before going to Battlenet,
             | and I though I learned I wasn't.
             | 
             | But last year I went to play HOMM3 online, and I imagined I
             | could at least teach the kids a trick or two.
             | 
             | I was so wrong.
        
               | bombcar wrote:
               | It's literally a completely different game from "normal"
               | HOMM3 now, really.
               | 
               | It's _interesting_ watching playthroughs, and seeing the
               | tricks used, but it 's not quite the game I played 20
               | years ago.
               | 
               | I did pick up some positioning tricks and tips.
        
         | viktorcode wrote:
         | You can take a look at Amazon Lumberyard which is free. It's
         | based on CryEngine, which is behind Far Cry.
        
           | badsectoracula wrote:
           | Note that Lumberyard became "Open 3D Engine" (yes, very
           | inspired name) which is Apache 2 licensed:
           | 
           | https://o3de.org/
           | 
           | https://github.com/o3de/o3de/
           | 
           | AFAIK all development in Lumberyard has ceased and moved to
           | O3DE.
        
           | nrjames wrote:
           | Crytek and Crysis, not Far Cry.
           | 
           | Edit: I stand corrected, it was Crytek and the CryEngine
           | 
           | https://en.m.wikipedia.org/wiki/Far_Cry
        
             | rzzzt wrote:
             | Far Cry 2 starts to diverge from CryEngine roots with the
             | introduction of Dunia:
             | https://en.wikipedia.org/wiki/Ubisoft#Dunia_Engine
        
       | sacnoradhq wrote:
       | Let's see how many antipatterns:
       | 
       | - Multiple inheritance
       | 
       | - Over-abstraction
       | 
       | - Excessive identifier prefixing and suffixing
       | 
       | - Use of friend
       | 
       | - Use of bit fields instead of bools
       | 
       | - Inconsistent mixture of custom and built-in int types
       | 
       | - Direct storage of pointers instead of reference-counted
       | containers
       | 
       | - Custom (and likely broken) _smart_ptr
       | 
       | - Cancerous coding style that adds too many lines
       | 
       | - Functions with 7+ arguments
       | 
       | - Lots and lots of duplicated code
       | 
       | - Inadequate use of const
       | 
       | - Inconsistent coding styles
       | 
       | - class name and base classes at the same indentation level
       | 
       | - Redundant prefixing of directories ~~and namespaces~~ with the
       | name of the project
       | 
       | Edit: My bad, they don't use namespacing at all. It's a flat
       | namespace. At least they don't _using namespace std_.
        
         | deely3 wrote:
         | Half of listed antipatterns are completely valid strategies in
         | some situations.
        
         | ranting-moth wrote:
         | How did this negatively affect the project?
        
           | slig wrote:
           | Don't do that unless you want a random commenter shitting on
           | the code you wrote 20 years ago when it finally leaks it.
        
         | extrememacaroni wrote:
         | People who work on such projects tend to focus on finding
         | solutions to difficult problems and many things that you would
         | consider weird or bad could be there because they were part of
         | a solution, either at the time or sometime in the past in a
         | previous project.
        
         | secondcoming wrote:
         | Nothing wrong with bitfields.
        
         | ExoticPearTree wrote:
         | Good today is better than perfect tomorrow.
        
         | nemetroid wrote:
         | > - Direct storage of pointers instead of reference-counted
         | containers
         | 
         | Overuse of reference counting is an anti-pattern and a
         | performance killer.
        
         | badsectoracula wrote:
         | Pretty much everything you mentioned is also in Unreal Engine
         | and they affected it so much that companies left and right
         | throw away their own engines to switch to it. My favorite part
         | of UE5 is that its "base of all classes" object class (UObject)
         | has its own base object class (UObjectBase).
         | 
         | Actually not just UE, but almost everything you mentioned was
         | in every single engine i worked on (to be clear these were all
         | engines that started long before i worked on them and designed
         | by completely different people). With a single exception they
         | were all used to release well received AAA games.
         | 
         | None of that stuff actually matter at all in practice.
        
         | nomalloc wrote:
         | If anything, this is a perfect example of how little these
         | things actually matter in the real world. This game alone sold
         | over 2.5 million units and kickstarted one of the most popular
         | franchises in gaming today.
         | 
         | I always have a feeling this type of comment must be
         | necessarily written by someone who hasn't shipped anything of
         | substance in the industry. It's trivial to point out irrelevant
         | minutiae like this as opposed to having an in-depth discussion
         | about the merits of the terrain rendering system or, you know,
         | literally any of the hard problems the game is solving and that
         | actually contribute to making it a technical success.
        
         | rvz wrote:
         | Who cares? Clearly the gamers, reviewers, etc don't care.
         | 
         | Only pontificating armchair field marshals giving their take of
         | 'anti-patterns' in game engines built decades ago.
         | 
         | That game made millions. Went on to release multiple sequels
         | after the first and still made millions.
         | 
         | Is your game engine making millions?
        
         | torginus wrote:
         | It's weird to criticize all this stuff considering modern dev
         | companies often have teams like 'billing' that have more people
         | in them than the dozen or so developers who have built the
         | entire video game (plus editor) from the ground up.
        
         | nmfisher wrote:
         | Have you shipped many game engines?
        
         | jamesu wrote:
         | Bit fields saved me an immense amount of pain when packing
         | together state variables for a renderer, so I wouldn't write
         | them off as being bad myself.
        
         | jiggawatts wrote:
         | About half of those are because of "performance", which in game
         | engines is more important than future-proofing for maintenance
         | that will likely _never occur_.
        
         | _def wrote:
         | And it still was very successful as a game. I think this is a
         | great example of "perfect is the enemy of good", especially for
         | game development.
        
         | naillo wrote:
         | Makes me think I shouldn't care as much about perfect code and
         | best practices and focus more about actually shipping things.
        
           | sixothree wrote:
           | It matters 17 years later if you're still in the same code
           | base.
        
             | maccard wrote:
             | Best practices evolve. This code base predates modern smart
             | pointers, and from experience bit fields were a requirement
             | on some of those... tougher platforms.
        
         | bhouston wrote:
         | Sounds like a real world project that focused on shipping a
         | good game rather than have perfect code.
         | 
         | There is a reason perfectionist devs do not run big projects.
         | They focus on minutiae rather than the big picture.
         | 
         | Even in my own experiences, one of my most successful projects
         | (eventually acquired by Amazon) was a quickly written hacked
         | together project that solved a big issue well. Over time it
         | became better engineered but it taught me successful projects
         | are about market fit, not code quality, especially super minor
         | things like antipatterns.
        
           | [deleted]
        
           | Xeamek wrote:
           | Or maybe, just maybe, 'good practices' simply changed over
           | the span of literally 20 years?
           | 
           | Naah, it must simply be those 'perfection vs practicality'
           | dichotomy again.
           | 
           | ...Not to mention that your point is the definition of
           | survivor ship bias. Maybe the devs actually were super mad at
           | themselves how the codebase looked cause it slowed down their
           | development. Maybe they initially had 3 more times the
           | ammount of anti-patterns, but they reduced them. Or maybe
           | that's how their roll, but the fact that this code shipped is
           | almost insignificant when it comes to judging its quality. We
           | could spin infinite ammount of examples where bad code works,
           | where good code fails, where bad code fails and were good
           | code works. How about we actually talk about arguments
           | instead, though?
        
             | [deleted]
        
           | [deleted]
        
       | stcg wrote:
       | Has someone managed to compile this? In the reviews on the linked
       | web page the user 'MobCat' states that it does not compile
        
         | eXpl0it3r wrote:
         | 12 out the 22 projects with VS2022, but that's most likely just
         | the start, as there are dependencies shipped as binaries, which
         | most likely require a recompilation for compatibility.
         | 
         | Maybe it's easier, if one uses the matching, old compiler
         | version.
        
       | tempodox wrote:
       | That's spectacular. I still enjoy playing Far Cry 1 in my Windows
       | VM (with the Sniper MP5 mod) to this day. It was a fantastic game
       | for its time, and I find it has aged well.
        
       | bullen wrote:
       | I'm curious about the legal side of copyright and code.
       | 
       | If you have a closed source game and copyright expires then how
       | does that affect the sources?
       | 
       | Do closed source games not require the sources to be released
       | after copyright expires?
        
         | jeroenhd wrote:
         | There's no reason why a company would be required to release
         | the source code once copyright expires. Someone finding an old
         | copy of the source could spread it around, but that's about
         | all.
         | 
         | However, with copyright expiring 70 years after the death of
         | the author(s), by the time copyright does expire, the sources
         | will have disappeared.
        
           | ncphil wrote:
           | Under the Sonny Bono Act in the US corporate copyrights were
           | extended beyond 100 years. The original US Copyright Act was
           | limited to 14 years, and allowed a single renewal of the same
           | length. After that, public domain. The short term goal was to
           | provide authors with some income during the term, but with
           | the ultimate purpose of enriching the commons to benefit the
           | public. "To promote the Progress of Science and useful Arts,
           | by securing for limited Times to Authors and Inventors the
           | exclusive Right to their respective Writings and
           | Discoveries." US CONST, Art I, Sec 8, Cl 8. It could be
           | argued that copyright copyright terms of over a century,
           | especially during a particularly dynamic period in world
           | history such as ours, no longer serve that purpose. As you
           | point out, the end result of the current regime is the
           | debasement of any real practical value many works would
           | otherwise have. All that will be left are the cold entries in
           | whatever royalty ledgers survive.
        
             | jeroenhd wrote:
             | In my opinion, copyright and patent law needs to be altered
             | significantly, with the copyright term obliterated so
             | people can build upon advances in technology and culture
             | within a reasonable amount of time.
             | 
             | Sadly, I don't think it's realistic to think copyright
             | terms will ever be reduced. They'll only be extended,
             | probably when one of the many Disney properties is about to
             | become public domain.
        
       | Avlin67 wrote:
       | This is awesome !
       | 
       | Someone could add raytracing maybe
        
       | haolez wrote:
       | I remember that the initial levels of Far Cry 1 were amazing
       | jungle/beach scenarios that enabled a lot of different strategies
       | for overcoming the smart human enemies.
       | 
       | The last levels, however, were all inside claustrophobic
       | buildings with weird monsters running around.
       | 
       | If all levels had the feeling of the first ones, it would be my
       | favorite game of all time.
        
         | iforgotpassword wrote:
         | I agree. Wasn't it zombies? The first levels set a great
         | feeling and atmosphere, everything was mysterious, and then it
         | felt like they ran out of ideas and were like "hm yeah let's
         | add zombies, because that's not totally something overused".
         | And yes, I don't even remember the later levels and didn't even
         | finish the game.
        
         | leokennis wrote:
         | The demo was the first level in the bay. I think after 100
         | playthroughs there were like 5 different strategies to clear
         | that level, all equally fun and effective.
         | 
         | And indeed at the end you were just pumping 500 rounds into
         | unstoppable Doom-style monster deep inside some dark hallway.
        
       | blameitonme wrote:
       | there are 370 TODOs in the code lol
        
         | als0 wrote:
         | I think some companies used TODOs strictly for issue management
         | before there were monstrosities like JIRA
        
         | cynicalsecurity wrote:
         | It's always like this. You can never complete all todos.
        
           | sixothree wrote:
           | You can change them to // resolve
        
       | stevefan1999 wrote:
       | despite it is illegal but im going to torrent it
        
       | zerr wrote:
       | CryEngine is open source now, isn't it?
        
         | debugnik wrote:
         | Kinda, Amazon purchased the code and forked it as Lumberyard.
         | Then they realised their own studios didn't want to use it and
         | their game-dev projects failed, so they donated the engine to
         | the Linux Foundation.
         | 
         | But the engine didn't even support Linux yet, so they spawned a
         | new Open 3D Foundation for it, and renamed the engine Open 3D.
         | I haven't heard of anyone using it seriously yet.
        
           | Dracophoenix wrote:
           | Actually, before Lumberyard was released, Crytek had already
           | open-sourced Cryengine and gave it away under a pay-what-you-
           | want model until the engine's 5.5 release.
        
             | debugnik wrote:
             | Source-available is not open-source; I know people care
             | increasingly less but having access to the source is not
             | enough for it to be "open".
        
       | WhereIsTheTruth wrote:
       | How is this allowed?
        
       | gattr wrote:
       | I still do a playthrough of FC1 every two years of so (on highest
       | difficulty). I love the game mechanics (though not the Trigen-
       | heavy levels).
        
       ___________________________________________________________________
       (page generated 2023-07-01 23:00 UTC)