Page 1 of 1

Gamedev piece of advice you wish you'd known earlier?

Posted: Thu Sep 09, 2021 11:39 pm
by Sirocco
What's something you wish you had learned/heard/discovered years ago?

I guess mine, somewhat embarrassingly, would be establishing simple, flexible timers for general use. We have access to these in the industrial automation space, and they work wonderfully. For whatever reason, I didn't get around to making a C-equivalent of that until 2014 or so. I usually have 30-40 different timers running in the background that I can use for simple animation and sequencing. You set a timer up with a span, tick rate in milliseconds, and behavior type at the end of the count (count once, repeat, ping-pong). You can pick up a count, and a 'done' bit triggers each time the count completes.

I feel turbo-stupid for not getting that set up earlier.

Re: Gamedev piece of advice you wish you'd known earlier?

Posted: Wed Sep 15, 2021 5:19 am
by PoV
I don't exactly do that, but I'll often have multiple counters, and I treat time as something measured in frames. Millisecond time is used to check if 1/60th of a second (i.e. a frame) has passed. If it has, you execute a frame. If not, you don't.

Frames must always be executed in order. If you ever drop a frame, you can omit updating the screen, but you instead must focus on stepping/moving everything until you've caught up. Having a fixed frame time system, and guarantees that every frame will be executed simplifies a lot of logic. You can trigger events on the exact frame of a counter (i.e. ==), either a global counter, or one embedder into an animation system instance.

Anyway, that's my take on that: counters, and frames as the basic unit of game time measurement.

***

Programming things I wish I learned earlier: I don't hate PHP; I like JavaScript; Rust is kinda awesome. Making engines is fun, but a product released sooner is potentially way more valuable (if you're not doing anything cutting edge).

Other things I wished I learned earlier:

- Inflation is about 2% per year. If you're not earning more than that in interest, your money (savings) is eroding.
- With that in mind, doing something sooner is often cheaper than doing it later, thanks to inflation.
- THERE WERE SO MANY NO BRAINER INVESTMENTS OVER THE PAST 20 YEARS! It was totally worth investing in companies you trust.
- There's nuance to it, but there seems to be some shenanigans' with collateralized loans and investments. :?
- YOU DON'T HAVE TO DO ALL THE WORK! THAT INCLUDES CODE! YOU CAN HIRE PEOPLE! "Work on your business, not in your business"
- YOU DON'T HAVE TO MAKE GAMES! IF YOU DON'T MAKE GAMES, YOU MIGHT HAVE CREATED A SUSTAINABLE BUSINESS IN LIKE, A YEAR. Then you require yourself to only work a few hours a week, and do WHATEVER THE HECK YOU WANT (including games) in the off time.

Re: Gamedev piece of advice you wish you'd known earlier?

Posted: Mon Sep 27, 2021 11:53 pm
by Sirocco
That's all good general advice, for sure.

I think one of the best practices I got into was making sure I try to improve my process in some tangible way with each project I take on (even the ones I don't finish). I usually start by identifying areas where I wasted unnecessary time, or didn't handle things well, and come up with a different approach. The upshot is knowing that I'm pushing myself toward better development (in general), with each failed project.

It's easy to just keep doing the same thing, ya know?

Re: Gamedev piece of advice you wish you'd known earlier?

Posted: Wed Sep 29, 2021 10:12 am
by PoV
It's easy to just keep doing the same thing, ya know?
Ha, yeah.

I can't remember if it came up in discussion yet, I seem to be running a successful business now with real clients and everything. I struggled for a long time trying to make a video games business work. I tried one more time (nope), then pivoted into a sort of software/online event service business, and after not even a year I'm in a situation now where I can afford to hire a developer. :shock:

So anyway I'm definitely left with a lot of regrets regarding making my money go further, and letting myself NOT be the lead developer (though admittedly I haven't found the right candidate yet so I'm still doing everything).