Live data from Hacker News

Far Cry 1.34 source code (2006)

archive.org

201–210 of 547 posts

Re: Far Cry 1.34 source code (2006)

#201
post #183

Earlier quoted context omitted.

You need to remove all the calls to the SDK too.

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.

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.

Re: Far Cry 1.34 source code (2006)

#202

Earlier quoted context omitted.

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.

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.

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.

Re: Far Cry 1.34 source code (2006)

#203

Earlier quoted context omitted.

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?

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.

> 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.

Re: Far Cry 1.34 source code (2006)

#204

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…

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.

Re: Far Cry 1.34 source code (2006)

#205
post #183

Earlier quoted context omitted.

You need to remove all the calls to the SDK too.

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.

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.

Re: Far Cry 1.34 source code (2006)

#206

Earlier quoted context omitted.

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.

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 relicens…

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.

Re: Far Cry 1.34 source code (2006)

#207
post #2

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

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 uncert…

Winamp's source actually did leak a couple years ago too ("winamp-cvs")

Re: Far Cry 1.34 source code (2006)

#208
post #2

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

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…

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)

Re: Far Cry 1.34 source code (2006)

#209

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.

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.

Re: Far Cry 1.34 source code (2006)

#210
post #45

Earlier quoted context omitted.

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…

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!

[dead]
Post reply on HN