Another adage is "code should be written for people to read, and only incidentally for machines to execute". This goes directly against code being written by machines.
I still use ChatGPT for small self-contained functions (e.g. intersection of line and triangle) but mark the inside of the function clearly as chat gpt made and what the prompt was.
> You don’t need unit tests if you have integration tests.
Which is why, as per Jim Coplien, most unit testing is waste.
But converting one type of unit tests into another is a perfect showcase for AI-generated code. They could have even kept just the prompts in the source and regenerate the tests on every run, were it not for inaccuracy, temperature, and the high cost of running.
On the internet, no one hears you being subtle. (Torvalds)
I'll add my own view: when you watch a movie, read a book, listen to a song, play a game... you CONNECT with the mind of the person who made it. When there is no mind, or the source is a dead, statistical amalgamation of countless fragments of other minds, there is nothing you'll want to connect to, nothing you'll want to squander precious hours of your life on.
And while you may be curious to see, once maybe, a movie such an imaginary AGI-LLM has created from your prompt, no one else will have the slightest interest in seeing it. And vice versa. Which means there would be absolutely NO MONEY in that market. There would be no market.
I find it draining to have to be on the lookout constantly for hallucinations, or omissions a person wouldn't make. I imagine as long as I'm walking well known paths -- well known to many but not me -- I'm safe, but the moment I need nuances I can expect that one of those nuances is completely and convincingly made up, except I don't know which one.
They probably don't. Forced ad viewing is fundamentally dishonest: they can force the user to watch the ad, but they can't force him to pony up for what is being advertised.
I would say Facebook ads have sold me on a few things. But they are not full page, I can easily identify them and move past should I chose and at times were actually relevant to what I want. How come YouTube ads try and push the dumbest shit on me when they have all my data and know all my searches yet I’m getting ads for stuff I would never buy. So I propose google cut back on some of the video ads, force the video being watched to slim up a bit while no video ads of relevance pop on on the side.
The best description of AGI I've seen is in Michael Crichton's Prey. He describes in a fairly plausible detail how AGI rises from the building blocks. The emotion he captures is that of dealing with a psychopath -- goal oriented with no empathy -- to the infinite degree.
That said, I think ChatGPT and LLMs trick us into seeing intelligence where there is none because we are evolutionarily wired to look for signs of intelligence as a potential threat. Our defense mechanisms are asymmetrical as they have to err on the side of being overly cautious: you may mistake a rock for a bear but you won't mistake a bear for a rock.
So it is with ChatGPT: its conversation style triggers a false alarm deep in us that there is intelligence there and we can't shake that warning off, but this software design is just exploiting the flaw (of sorts) in our wiring.
There's two types of game developers: those who finish and publish games and those who write their own game engine.
Every minute spent on re-inventing the wheel for the umpteenth time is time lost on actually writing and polishing the actual game. Tools like Unity were a godsent for small teams and solo devs who just wanted to write and publish games.
While libraries like SDL can lighten the burden somewhat, they are still no replacement for solid asset pipelines, visual editors, performance analysing tools, and a mature pipeline for multi-platform packaging and publishing.
> There's two types of game developers: those who finish and publish games and those who write their own game engine.
This is wrong, there are tons of finished games that use custom engines. For example one of the most recent indie games i bought was Zortch which was made by a single person and used a custom engine.
EDIT: actually here is a page that collects some custom engines, ranging from big studios down to one man efforts, all with released games:
Huh, I'm not sure the full intent/scope of the list but Bungie shipped a LOT more games with custom engines than just Destiny. Marathon, Myth, Oni, and Halo, to name a few.
It is certainly non-exhaustive, i think it just mentions some examples. REDengine for example was used not only for Witcher 3 but also Witcher 2 and Cyberpunk 2077.
This is not meaningless as the message i replied to claimed that developers who write their own game engine do not finish and publish games. That was factually incorrect.
What you are asking for is something completely different and unless humanity had some sort of hivemind to have universal knowledge, we can't really know as people start and abandon projects all the time.
The best we can do is some heavily biased guesses - and mine would be that the abandoned games in engines like Unity, GameMaker, etc where it is trivial to start a new project would be much more than even other engines (let alone custom engines).
> There's two types of game developers: those who finish and publish games and those who write their own game engine.
Probably a true statement in a way that's difficult to verify. Nobody is keeping track of never released games, specially those that didn't really get started because so much work went on the 'engine'.
That said, there are some examples. Like Minecraft and Factorio. An existing engine might not have benefited those titles as much as they would a standard FPS game. They could be probably made using an existing engine, but the benefits might not be that apparent if you have to fight the engine and twist it to do what you want.
Going to larger studios, Elite: Dangerous has its own engine too - could they have used, say, Unreal? Probably, but then they would not be able to use many features, like the Unreal's terrain system, for their planetary landings and such(not without ugly hacks - or making it work like Starfield) and would likely have to code their own. If you are doing that, might as well skip the whole thing.
I'll still agree that in 95% of the cases there's an existing engine that will handle most of a game's use-cases. If one has access to the source code, this figure probably expands significantly.
That was a very different time. That era of pushing hardware to it's limits is mostly history when it comes to games.
These days, hardware is almost limitless* , the real scarce resource is person-hours of development time.
(*Ok, not limitless, there's still some people doing serious optimisation work on games. But for an average indie/mobile developer, it's more about avoiding fairly well known performance pitfalls than worrying about low-level optimisation or inventing really clever algorithms to gain back some speed)
Maybe a single person can't make a Triple-A game engine. That's not a problem, because a single person can't make anything else needed for a Triple-A game, either.
Photorealistic art assets? Voice acting from name actors? Really crappy hackneyed plots which fall to pieces under the slightest scrutiny? I think Bethesda actually has a patent on that. Lootbox mechanics which are a couple iffy election cycles away from a Senate subcommittee hearing? None of that is coming out of a bedroom developer. Writing a simple engine for a simple indie game with the kinds of art and mechanics a single person or small unfunded team can accomplish, however, is a lot more feasible.
This isn't really a very good example for two reasons
1. The concept of licensable game engines during the development of doom in the early 90s was hardly a common thing, and certainly nothing along the lines of a low barrier, low cost entry like unity used to be
2. Id software is very well known for basically being a tech company more than a game company, and later went on to make a great deal of money licensing out the doom and quake engines to other companies who could then focus on creating games without having to build a bespoke engine
> What makes a game unique in spirit is its engine.
This isn’t true about websites and frameworks or sculptures and chisels. There’s no reason why it should be true of games and their engines. It is a poetic statement though.
My opinion is that, in all of these processes, people are the ones that bring the spirit and thus are its source in the final product.
What an absurdly facile perspective. While it's true that developers like Valve develop games only to take advantage of or exhibit new engine developments and Minecraft's revolutionary voxel engine likewise enabled a game that could not be built otherwise, you seem to be suggesting that eg all UE games throughout the last thirty years are undifferentiated "in spirit" because they share an engine.
What an insult to writers, artists, and game designers! None of them have managed to imbue their works with "unique spirit?"
Minecraft's engine wasn't remotely revolutionary, it was basically a 1:1 riff on an XNA game called Infiniminer that predated it. And its engine wasn't especially good. Minecraft's success is almost entirely due to its accessibility and the fundamental strength of its design - both things that are possible in any game engine. These days a large % of Minecraft installs are a C++ version of the game and not the original Java version, because it's really not about the engine.
I am not sure I would even call Minecraft as having a "game engine". An engine is usually generalized so it can be extracted and used for many games.
> And its engine wasn't especially good.
It was good enough. It's non trivial to do, despite appearances.
> These days a large % of Minecraft installs are a C++ version of the game and not the original Java version, because it's really not about the engine.
But is the Bedrock version even the majority? It's been out for years and adoption is very slow. If it was not for game consoles it might not have taken off at all. And the main reason is mods. Which are not part of the "engine" as you put it, and were enabled by the technology choice.
We would need to know how many Minecraft installs are on mobile and console, where Java isn't an option. I would expect it's a large % of the overall userbase, but I don't have access to the numbers. Switch and Android both open Minecraft up to a huge number of people who either don't have a PC or can't install Minecraft on it.
Agreed that mods are a big part of the experience and would only really have flourished using technologies like Java (what Notch chose), C# or JavaScript, not C++.
"What an insult to writers, artists, and game designers! None of them have managed to imbue their works with "unique spirit?"
As someone said, to the extent they have managed to do it -- and many have -- it was not because of engines like unity but despite them. I imagine all those people would have been happier if the engineers had made a custom engine for them (and quick).
I still use ChatGPT for small self-contained functions (e.g. intersection of line and triangle) but mark the inside of the function clearly as chat gpt made and what the prompt was.
reply