Hacker News new | ask | show | jobs
by jfim 2894 days ago
> 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.

5 comments

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.
Third decade’s the charm!

(I’ve been working on an unreleased unusable IDE for a little over ten years, but the end is in sight for me!)

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.
But surely having 80% of some revenue is better than having 100% of nothing.
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