Handmade Hero » Forums » Code » Where is this headed?
NelsonMandella
12 posts
#13963 Where is this headed?
2 weeks ago Edited by on Jan. 8, 2018, 11:05 p.m.

I think the frustration that some on this thread have with HMH is that, on the spectrum of infinite engine-feature creep to shipping a working game - HMH seems (to many of us) to be leaning towards the former. And yeah I get the explanation that it's all about the tech, so who cares when it ships? But this approach totally ignores the concept of momentum and its role in human psychology. In order for followers/potential followers to get pulled in and not lose interest, the project needs some kind of momentum, a beginning-middle-end. If people sense that it's derailed, somehow "staled", or has no ending in sight, then they're far more likely to lose interest or never come around in the first place. I greatly love and enjoy HMH and just want to see it stay on track and continue to flourish.
cmuratori
Casey Muratori
810 posts
1 project

Casey Muratori is a programmer at Molly Rocket on the game 1935 and is the host of the educational programming series Handmade Hero.

#13966 Where is this headed?
2 weeks ago

NelsonMandella
In order for followers/potential followers to get pulled in and not lose interest, the project needs some kind of momentum, a beginning-middle-end. If people sense that it's derailed, somehow "staled", or has no ending in sight, then they're far more likely to lose interest or never come around in the first place.

People not following (or stopping following) Handmade Hero because they don't want to spend time doing engine programming is good, not bad! This is not a popularity contest. We are not measuring Social Media Engagement Metrics(TM).

Engine programming is not for most people. Handmade Hero's engine has now had approximately 15 weeks of development time total. Including explanations. That is around, oh... maybe 1/100th of the number of man-weeks that go into a real game engine? So anyone who thinks 15 weeks is long in the tooth should steer wide and clear of engine development, that is for certain! If you think Handmade Hero has too large an engine codebase, or that it has "feature creep", or that it doesn't have "razer-sharp focus", heaven help you if you become a developer on a major game engine. The number of features in a general-purpose engine like Unreal or FrostBite is an order of magnitude larger than what we are dealing with here and several orders of magnitude more lines of code.

- Casey
NelsonMandella
12 posts
#13976 Where is this headed?
1 week, 5 days ago

cmuratori
People not following (or stopping following) Handmade Hero because they don't want to spend time doing engine programming is good, not bad! This is not a popularity contest. We are not measuring Social Media Engagement Metrics(TM).


It's a false dichotomy to equate a thoughtful consideration of follower numbers, engagement and accessibility (for your target audience), with the pandering of a popularity contest. These things exist along a continuum and all streamers are forced to consider them to some degree.

cmuratori
Engine programming is not for most people. Handmade Hero's engine has now had approximately 15 weeks of development time total. Including explanations. That is around, oh... maybe 1/100th of the number of man-weeks that go into a real game engine? So anyone who thinks 15 weeks is long in the tooth should steer wide and clear of engine development, that is for certain! If you think Handmade Hero has too large an engine codebase, or that it has "feature creep", or that it doesn't have "razer-sharp focus", heaven help you if you become a developer on a major game engine. The number of features in a general-purpose engine like Unreal or FrostBite is an order of magnitude larger than what we are dealing with here and several orders of magnitude more lines of code.


Obviously the codebase is miniscule in absolute terms. But we're here talking in the context of a finite streaming series that, in theory, will conclude someday. And you can't meaningfully compare the number of man-weeks that go into a real game engine, with the length of a streaming series about game engine programming, in order to then suggest that your target audiences' attention spans can handle it.
pragmatic_hero
63 posts
#13978 Where is this headed?
1 week, 5 days ago Edited by on Jan. 11, 2018, 1:25 p.m.

cmuratori
if you just want to ship something that is the same as something else
Where'd this come from. Nothing of the sort was said or implied.

cmuratori
it seems like a lot of work to do if you only cared about shipping a game and that game didn't need to do anything new?
False premise. Last time it was about wanting to be a part of a cog machine.
This time about wanting to ship something that does nothing new.

Peculiar that it gets brought up - since it can be argued on similar grounds, that HMH is "cranking out just another general purpose engine" straight from the cog machinery. There are plenty of those!

And how exactly does that enable creating "something new" as opposed to making tech which fits a particular game to a T?

At the moment, I don't see how HMH inherently comes distinctly ahead in either of those aspects.

The parts "which make Unity appealing" are exactly the parts which enable rapid prototyping (of both tech and gameplay) - instant feedback and fast turnaround times.
Tech which fosters creativity and experimentation.

Those are exactly the kind of tech parts which I purport are the ones worth doing (when making a game without using an engine!). Not the schmancy lightning or other purely "tech for the sake of tech", general-purpose kinds. Unless the lighting or shadows are a fundamental part of the gameplay or a key part of the aesthetic art direction.

But enough of that. The message has been heard loud and clear that HMH is indeed a general-purpose game engine programming thing. Skewed heavily toward the triple-A side of things. And it is really good source for that.

Casey's decisions make perfect sense if the objective is creating a general-purpose engine thing, not a game. And that's a perfectly valid direction to take.

On the surface level HMH presents itself as a "make a game from scratch without libs" kind of show. That's the source of confusion. As (a) "making a general game engine" vs (b) "making a game from scratch without using an engine" are quite different.

While the later involves fair amount of tech code (and there is some overlap), the focus ultimately is on the game and as such tech choices are way more tailored for a specific game at hand.
Mór
53 posts
#13979 Where is this headed?
1 week, 5 days ago Edited by on Jan. 11, 2018, 3:52 p.m.

pragmatic_hero


The parts "which make Unity appealing" are exactly the parts which enable rapid prototyping (of both tech and gameplay) - instant feedback and fast turnaround times.
Tech which fosters creativity and experimentation.



Do you work for Unity? I ask because you keep mentioning them and what you say sounds exactly like their marketing spiel.

There was an engine forum I used to post at several years ago, where this lurker would emerge to defend Unity whenever it was criticized. Just before the owner closed his forum off to non-paying customers, the lurker admitted he was an engineer who worked for Unity.

I mention it because I've been told that Unity spends a lot of money on this behavior, where they send their people out to competing engine forums, to try to lure their customers away to Unity. Unity's behavior reminds me of what Casey said in relation to C++, that marketing a bad product works better than making a better product.

I had two tries at using Unity among several other engines over the years and found it to be very shallow on features compared to something like Unreal. What Unity are really about is not selling their engine, they are about getting addictive personality types hooked on buying half price goods from their Asset Store. The store is where Unity makes the real money, not their engine, so the Unity engineer admitted, before the engine forums I mentioned above were closed off for good.

Unity's business plan appears to be similar to casinos, where it is only 2% of their customers, the gambling addicts, that make the casino profitable.
boagz57
Jason
3 posts
#13981 Where is this headed?
1 week, 4 days ago

Casey, for the love of god please do not listen to those who question the direction of this series and are looking for a definitive 'end'. The content you continually post is absolutely invaluable and something which I have not seen in any other stream/video/book/whatever. Coming from a strictly C++ background, this series has given me some much needed perspective and has really shown me what is possible with not only game engine programming, but programming in general. I just wanted to throw in my 2 cents and hopefully help give you the fuel needed to keep this series going!
cmuratori
Casey Muratori
810 posts
1 project

Casey Muratori is a programmer at Molly Rocket on the game 1935 and is the host of the educational programming series Handmade Hero.

#13985 Where is this headed?
1 week, 4 days ago

pragmatic_hero
Casey's decisions make perfect sense if the objective is creating a general-purpose engine thing, not a game. And that's a perfectly valid direction to take.

It's not so much "general-purpose" per se, it's "difficult tech". The point of new programmers making a game from scratch is so that they learn how to do difficult things instead of needing to grab libraries or engines to do them for them. That's the point.

So I don't care if people learn how to make things "general-purpose", but I do care if they learn to dig in and explore technical topics. Handmade Hero probably won't do anything that is as hard as a real cutting-edge technical problem, just due to the time constraints, but hopefully it will show a lot of things that show the way to approach, experiment, iterate, etc. like you would need to do in a real scenario.

the focus ultimately is on the game and as such tech choices are way more tailored for a specific game at hand.
I am updating the Handmade Hero home page soon, and I can definitely add some text that makes it clear that this is not what we do on the series, so there's no confusion. Something that explains the goal is to be a stepping stone for serious engine programmers (not necessarily "general purpose", but definitely AAA-level), even though obviously we are not going to be making a AAA game for obvious reasons :)

- Casey
Skinpop
Gus Waldo
6 posts
#14070 Where is this headed?
1 day, 15 hours ago Edited by Gus Waldo on Jan. 22, 2018, 4:14 a.m.

Mór
I get why the workflow of 3D engines is helpful, where you can drag and drop things visually, but when it comes to 2D those editor engines just get in the way.

I've also come to the opinion that 3D engines are a big waste of time, because the little indies can't afford competitive assets, and even mid-tier devs with millions more to spend, regularly complain that AAA companies run them out of business using superior production values. 3D is good for dreams, but little else.

I disagree with the notion that 3d engines are a big waste of time for indies. Look at the "competitive assets" of Minecraft, or Stephens Sausage roll. You don't need expensive assets to make something look appealing.
Mór
53 posts
#14083 Where is this headed?
20 hours, 53 minutes ago Edited by on Jan. 23, 2018, 5:13 a.m.

Skinpop

I disagree with the notion that 3d engines are a big waste of time for indies. Look at the "competitive assets" of Minecraft, or Stephens Sausage roll. You don't need expensive assets to make something look appealing.



An Indie has about as much chance of making another Minecraft, as he has making a hundred million playing the lottery. Exceptions don't disprove general rules, they prove them.

I have never heard of a Sausage roll, but I know players turn their noses up at games that don't have excellent production values. With 2D it is possible to compete with almost anyone on production values. With 3D it isn't possible to compete unless you work at a mega corp that makes FPS clones.

If you want to spend your youth on 3D that is okay by me, but I have been there done that and am no longer interested. Something I picked up from Casey is his love of simple methods and tools. I have extended that to games as well, so I'm now interested in simple 2D, so I can focus not on the art, or the tech, but on the game.

Edit:
If I had a time machine I would go back and tell my younger self these things: Don't monkey around with object oriented or C++ under any circumstances, just learn plain procedural C, and don't go near 3D. Then I'd give myself Casey's videos. Ha!