How about "the government forces you to release the code"? That's seems fair.
Unless you hid your source code in USB drives under your bed, the government can probably just force GitHub (or similar )to release it. I bet they've got it backed up.
How about "the government forces you to release the code"? That's seems fair.
Unless you hid your source code in USB drives under your bed, the government can probably just force GitHub (or similar )to release it. I bet they've got it backed up.
Ex. if I license my artwork, music, characters, code library, etc. to a game developer and they don't create a legally releasable version of their server, then the government will forcibly break our licensing agreement and I just get screwed?
I can't wait to see "you haven't met your patch obligations" on a balance sheet and a full indie game being underwater
You either have to rip out the code (which may or may not break the server, but still requires developer time to do) or write replacement code which likely takes even more dev time to do or you would have done it instead of paying for the library/access to the service.
Physics subsystems (havok, ISI).
Procedural systems (Gaea, Houdini)
Vegetation (Speedtree)
VFX subsystems (Nvidia Gameworks)
First party SDKs (Sony Playstation, Microsoft NDK, Horizon/Quest).
Pathfinding (Kytheria, Mercuna)
Cutscenes/Videos (Bink)
UI (Rive, Neosis)
Networking (Photon, Coherence)
Theres… thousands more, if you’d like me to continue.
What I'm saying is you have programs running on user machines, and programs running on your machines. There's an interface between those two over a network. There's a problem that consumers face today where they pay to play games that are not functional without data flowing over that interface.
There's a claim that implementing the backend side of that interface is so complex and impossible or too difficult/time consuming/etc to design in a way without 3rd party dependencies.
I'm asking: what are those 3rd party libraries doing? And why can't you design server APIs and client code in a way to provide a different backend if consumers need to do it themselves when you stop supporting the game?
Why do you use Ruby on Rails, why not rewrite it so you can release it without relyig on that?
And even if we're talking hypotheticals: stupid example. I haven't worked on a backend where the actual server infrastructure wasn't open source, trivial to open source because it was first party, or irrelevant because the only thing that matters would be the API and protocols, which again, trivial to make open.
Get a job in industry and see for yourself.
I’m not going to break confidentially to sate your ignorance.
Getting all defensive and not answering it doesn't really help your industry's case here.
Ok, lets talk about the kinds of things we need.
Networks have latency, so we need to smooth/correct for that.
Our connections need to be authenticated, so we need middleware to handle tokens, because we don’t hand-roll that. On a binary protocol.
Our physics engines are complicated: we don’t usually write our own from scratch; and the server needs physics to simulate the world.
Shall I continue?
I've worked on a lot of complicated and deeply optimized networked applications. They're almost all closed source. I know exactly how I would design a system to support these kinds of initiatives. What I'm curious about is why that's impossible for game developers, because either I'm missing something, or game developers are just bad at software design.
Usually the latter, not just game devs themselves, but also infrastructure devs.
It's pretty obvious to me as a gamer and engineer what the intent and design constraints are here, so I'm just wondering what makes this seem impossible?
The whole "Stop Killing Games" movement is deeply misguided, and most of the people supporting it have absolutely no clue about how software or anything computer related actually works.