follows and likes from @kirauriel


hthrflwrs
@hthrflwrs
eramdam
@eramdam asked:

i realize this might be extremely vague, sorry if it is. but what advices would you give to someone who already has a bunch of "regular" dev experience who might want to dip their toes into gamedev? (asking for a friend)

the most important lesson you can learn as someone who does normal programming is that game programming is fucked up and awful. there are going to be things that you think make sense but actually make no sense, and there will be things that are literal magic that you just need to accept.

WHY IT IS THIS WAY:

  • games need to update sixty times every single second or gamers will be mad at you, which results in a lot of weird performance bottlenecks in places you wouldn't expect
  • engines are ships of theseus but with tech rot instead of wood rot. this is true of game frameworks as well. remind me to rant about monogame's terrible content importing system at some point (and yes i know it's "optional")
  • the majority of problems have very nebulous solutions. there is no way to cleanly come to the answer of "how do i make this action feel less awful in-game" without trying out several weird solutions, sighing, looking up some youtube tutorials, realizing they all suck, remembering you once owned a game that did this perfectly, spending an hour finding/downloading/playing it, and realizing their solution is just a three-frame hitstop with 20% punch-in and a great sound effect

i don't have any advice for what engine to start with because every engine is bad and you know how to find tools/tutorials. anything can be made to run on anything if you're stubborn enough. as a programmer, i extremely recommend reading Game Programming Patterns by Robert Nystrom. you won't regret it.

anyways, that's the technical stuff out of the way (presuming you want to do technical stuff given your background). given you came to me, i presume you're looking for more broad/random advice, so here's some of that:

  • i know people say "do game jams" a lot but like, do game jams. they're good for meeting people and for trying out new skills, plus you get a goofy lil game out of it. go in with no plans, get eight hours of sleep every night, eat well, take actual breaks, communicate well with your teammates, and you'll come out on top.
  • design is an actual skill that needs to be practiced. you can do this by writing out systems and mentally iterating on all their consequences. board games are a way to get other people to do the iteration part for you, plus you get to eat snacks while you do it
  • similarly, narrative design is an actual skill that needs to be practiced. you can do this by engaging in narrative design
  • platformers are great for practice but please don't put all your chips on making one that sells. they're the most overstuffed market on steam and basically none of them succeed. the same is true of metroidvanias and tower defense games for some reason
  • it's entirely possible to make a system that is completely functional on the front-end but completely fucking cursed on the backend. there's no way to tell whether something is cursed until you show it to another game developer and they recoil in horror
  • if your video games are only in conversation with other video games they're gonna be boring as hell. read a book or something
  • good luck!

@yappa shared with:

You must log in to comment.

in reply to @hthrflwrs's post:

it's entirely possible to make a system that is completely functional on the front-end but completely fucking cursed on the backend. there's no way to tell whether something is cursed until you show it to another game developer and they recoil in horror

just like web development then, I'll fit right in

(but thank you for the answer, that's more than I could have hoped!!)

if your video games are only in conversation with other video games they're gonna be boring as hell. read a book or something

I love this! advice I could really use atm.