> So how can you take 7 years to make your game? [...] Simply open up your code editor, download a basic windowing layer like SFML (we aren’t savages and this isn’t handmade hero), and then start writing your resource manager, event system, animation system, physics system (which you’ll ultimately throw out and replace with Box2D), scene manager, GUI code, serialisation framework, build tool-chain, entity-component system, and texture manager, to name but a few.
That's the meta game, where the author of the game enjoys building the game as its own game. Not productive if you're trying to ship a game, but definitely sounds fun.
I have been working on my roguelike for about twenty years. I've never come close to even playing a quarter of the way through it. It's never been anywhere near done.
You kid, but I recently turned 40. After my birthday, I thought it would be useful to come up with a list of goals to reach by 50. Getting my roguelike to 1.0 is high on that list.
If you enjoy writing those things, it's actually better since you're getting more motivation to work on it. You actually like making it, so it's much less draining and much more satisfying.
Also, you only write what you need. Honestly I can never find a library that is good enough for what I want to do. Games have so many possible features that it's impossible to cover them all with good libraries.
So it's better to aim low, with simple enough features, and make them yourself so that it's tailored for your programming style, and for what you want to do. You're not reinventing the wheel (I'm not talking about making a graphics of physics engine).
It helps for intrinsic motivation, but (in my experience) that normally isn't too lacking. Where it doesn't help is the motivating effects of feedback.
Having made a physics engine is cool, but having a working physics engine that makes the product fun is also rewarding, and a shortcut to that reward can pay greater dividends on the time to get to the finish line -- or the likelihood of getting there.
Often the shortest path is writing something yourself, of course, and not everything has to be done for instrumental reasons -- a hobby project can be its own reward.
I try to take a counterfactual approach -- say I'd done Box2D first. Would I think a custom physics rewrite would make sense? It'd still be really fun to do, but would take time and likely move the product backwards. (Though of course that's unfair -- you don't know the Box2D thing will be successful in the first place.)
That's the meta game, where the author of the game enjoys building the game as its own game. Not productive if you're trying to ship a game, but definitely sounds fun.
It's hard to stay focused on building a shippable product when you have no stakeholders. It's something I struggle with myself when I have 'build yourself a side-gig' time. At the end of the day, no one really cares if you fail.
To be fair, if you google the first steps in choosing a library, you are going to get bombarded with people suggesting you do things from scratch avoiding any boilerplate that people before you worked on.
You know... for customization and some obscure problem that one person ran into...
And the alternative is to use a framework and sell your soul to it or, even worse, the company that makes it. In some cases that includes giving them a % of your revenue. If you ever ship, that is.
ya, but the game isn't going to launch for another 7 years, so you are worrying about % of revenue that is so far in the future, it might not even happen
Ha, amateurs. The Haiku operating system project is almost seventeen years old and still hasn't shipped a beta.
Finding excuses is vital, but it's important to have both excuses for not shipping the beta and excuses for why beta is almost here and there's no need to think the past history of delays bodes ill for the project.
Here's a HN comment back in January where the poster says Haiku's beta will be out "this quarter" (Q1 calendar 2018), I laugh at that, and another HN poster says OK, but definitely by _next_ quarter (Q2 calendar 2018).
Well, developing an OS is more work than a game
That said those working on Haiku suffer from the same NIH syndrome as the article's author but unfortunately all the efforts of the 'pragmatics' one who wanted to reimplement BeOS on top of Linux failed much earlier than Haiku..
New OS are in a bad situation: those build on top of Linux doesn't seemn to attract contributors (I blame personally a lack of imagination: a kernel isn't an OS!) but those who use their own kernel are doomed for the lack of drivers..
> but unfortunately all the efforts of the 'pragmatics' one who wanted to reimplement BeOS on top of Linux failed much earlier than Haiku
> New OS are in a bad situation: those build on top of Linux doesn't seemn to attract contributors (I blame personally a lack of imagination: a kernel isn't an OS!)
I think these two statements are, effectively, the same thing. Why have we (Haiku) stayed around so long, and all the others died? Somehow we managed to accumulate enough critical mass to not have heat death. I think the novelty of having a complete system is an attractive one, rather than "just another Linux distribution, why use that?" indeed.
And then, you know, maybe it's possible that what we've been saying this entire time about having a kernel and base system optimized for GUIs instead of just throwing one on top of them might actually be the case. :-p
> but those who use their own kernel are doomed for the lack of drivers..
We're so doomed, I've been able to boot, run, and use Haiku on just about all PCs I've tested it with so far!
But yes, drivers are an issue. An issue we have mostly solved at this point, with the exception of hardware-accelerated OpenGL, but still...
Saying that reusing the Linux kernel is the same as being "just another Linux distribution" is the problem: most Linux distributions are just Unix clone: if you create a VMS, a BeOS, a MacOS or Plan9 with a Linux kernel then what you have is a different OS with a Linux kernel not just a Unix clone.
Using the Linux kernel doesn't force you to be POSIX compatible (which is a double edged sword: you get a lot of software but you loose your "originality").
You know, it's almost as if a project run entirely by volunteers, who have lives outside of it, entirely on their spare time, which fluctuates wildly from week-to-week, meaning that sometimes key developers who were previously available are now suddenly not, makes it anywhere from "difficult" to "functionally impossible" to give accurate date predictions; let alone ship a release...
And in that time Enlightenment magically transformed from a resource heavy desktop full of eye candy effects to one of the lighter weight options out there. All it took was waiting years for the other popular desktops to overtake it in resource usage.
Just 7 years? That's surprisingly short in game development terms, especially where certain examples of vapourware/overly ambitious titles/indie games are concerned.
I mean, this guy took 13 years to make his dream game:
It gets all the more insane with mods and hacks too, since fan projects don't have any real pressure to get released at all, so overly OCD creators can spend decades on projects without having a publisher telling them to hurry up.
Mushroom Kingdom Fusion started in 2007 and only got cancelled in 2015, with the last demo being version 0.5. Brutal Mario had its first known demo released in 2006, and is still (presumably) in development in 2018. May be longer, said first demo was actually number demo 6.
In the Doom community, Mordeth apparently started in 1997, and was (probably) still in development just a few years ago. If it ever does get finished, it would have been in development so long that Duke Nukem Forever would have started and finished its own development in the middle of this game's dev cycle.
Really, games can take a really long time, especially if you don't have much in the way of monetary pressures or nagging publishers. And hey, who knows what projects will turn out to join that list in future. For all we know, thousands of people may have been working on games since the 90s, with their finished product only being released sometime in the next few years.
Somewhat unrelated, but Adam Butcher's (the guy who took 13 years to release his dream game) Internet Story is a beautifully made, creepy, short film: https://www.youtube.com/watch?v=g-SL4ejpP94
I have to say I have trouble differentiating these games, though. From what I can see Terraria, Starbound, and Moon Quest seem to be generally the same style of game, but it's not clear to me why play one over the other.
Doesn't that apply to pretty much everything? Be it JS frameworks, games, fridges, toothpaste etc there always seems far too much choice. It is the nature of our system.
For games, frameworks and such like there's so much choice that it's unlikely you'll come across all in a niche - so you're choosing from the few little islands you happened to come across. One or two of those discoveries will have a wrinkle or two that appeal and there'll be the occasional surprising diamond.
Only much later when the SaaS or game closure is on the front page of HN do dozens of others get to hear of the thing and make posts along the lines of "wish I'd heard of this earlier..."
I far prefer the world of Indie games to the tedious repetition of AAA titles.
> Doesn't that apply to pretty much everything? Be it JS frameworks, games, fridges, toothpaste etc there always seems far too much choice. It is the nature of our system.
Hmm. I can't say I feel the same about all these choices, which is why I made the comment I did: to me this set of games is somewhat of an outlier in how homogeneous the games appear. I'm not saying they are homogeneous, just that they appear to be, which might purely be a marketing problem.
For me, among FPS, among RTS, and among Western style action RPGs there are a lot of differences that make me prefer one over the other. It's pretty clear what is the difference between StarCraft and Age of Empires 2, or between Grim Dawn and Path of Exile.
But when I look at the Terraria-style games, it's hard for me to tell what makes them different besides very subtle details (i.e., I think Starbound has space maps; there's probably a different style of resource gathering between the games). The art styles are similar, the gameplay seems similar, all sets of games seem to involve exploring, collecting items, and building.
> I far prefer the world of Indie games to the tedious repetition of AAA titles.
My post has nothing to do with AAA vs indie whatsoever. There's also plenty of tedious repetition among indie titles (there's a very large number of retro-style platformers and roguelikes for obvious reasons), so I am not really seeing the point.
Well it seems Moon Quest is single player-only, which might or might not help narrow things down. It does look pretty cool though despite that limitation. I might try it out.
This is exactly how it feels to me as well. I've played Terraria, I've played Starbound. Moon Quest doesn't seem to offer anything unique over those games.
Oh man I knew this was going to be a disaster when I head they were going straight into a grad degree.
I'm still on the fence about if CS students can actually program before working in industry, but doing a grad program that isnt paid for by Industry was a major red flag.
On the bright side, it sounds like OP learned tons and tons and tons. While the game flopped, I bet they could throw together a top notch program in a year with their lessons learned.
Second that: game looks amazing! Maybe you should scratch the irony in the article because I'm sold :) I'm spending the next seven years on my project :)
One and a bit programmers - I worked on moon quest for a couple of months a couple of years ago, and will probably be helping out a bit more in a couple of months.
I backed this project some number of years ago on Kickstarter. I had honestly forgotten all about it, and then out of the blue last week: an email announcing that it was released and how to obtain it!
It looks great and plays well (notwithstanding early access); congratulations to the author for shipping at last.
I have been doing this for the past three years with a game based on the film adaptation of my favorite drug adventure book.
Don't forget to save all of your work locally, on the cheapest hard disk with the highest failure rate. That way, when your hard disk fails 2 years in you can start from scratch.
This mirrors a lot of what the guys who made Retro / Grade [0] said about how they made their game after quitting their day jobs. Although from this post it seems like he had a better time doing this, than they had.
I've been following it for a while, and the game turned out really well (even ignoring the fact that it is still in beta). Images and movies don't do it full justice, but the game is quite beautiful.
That's the meta game, where the author of the game enjoys building the game as its own game. Not productive if you're trying to ship a game, but definitely sounds fun.