Yeah, programmers do this regardless, it’s most of our work if we are any good at our jobs.
Say you have a specific character behaviour where the character has to be able to swing like spiderman but also wall run and jump on enemies?
9 out of 10 developers on these forums will fail to do this how they would prefer or in any way close to the original design. What they will do instead is get something that sort of resembles it then compromise.
Zero compromise is where R&D will really get you, have to try a million approaches until the correct one is found, and this assumes an already deep knowledge of physics, physics engines, limitations, getting it all working regardless of framerate issues and finding the solution for all that, which works within performance targets.
But if you want to compromise then it’s no problem, obviously. Any old near enough thing will do. Like most indies or hobbyists settle for. I’ll wager many a big developer also did sneak compromises because R&D does not respect deadlines.
So perfectionists should never work in this industry if they value health and sanity.
3 Likes
Haha.
Very useful information here. Right now I am working on my first “official” portfolio piece, which is planned to get me some job when it’s finished, so it’s got to be as perfect as I can do. But perfection is impossible, and there is still plenty I don’t know. So figuring out how far to go before drawing the line and saying, “ok, this will do” is probably the biggest challenge.
At least with art, I can simply look at what the current professionals are putting out and compare against that. But with programming… I don’t know what you do. Well, details about that doesn’t matter for me anyhow.
I think probably what kills a lot of indie projects is not having a methodology to the planning. Like, the common production pipelines AAA is implementing aren’t a big secret – you can get it from plenty of GDC talks and other places – but most indie dev’s, at least from my perspective, seem to be just kind of winging it. Not using tried and true recipes. So compromising too early is only a small part of the problem, I think the biggest problem is not having a crystal clear goal and a very well thought out plan to get there.
If you listen to any of the AAA directors (or successful indie and AA) talk and share lessons learned, it is clear a major part of their focus is spent getting everybody to understand and visualize the same end goal. Getting a team of people to all conceptualize the same vision has got to be a challenge, but how many small teams or solo-devs even have a clear vision when they start working on their project?
(apologies to myself for derailing my own thread.)
Just overconfidence is all it is really. If you haven’t majorly screwed things up enough to realize your own stupidity, unfortunately I think most people (read : myself) just have to do that before they get the humility needed to really take the time to do things right.
Which leads me to the same advice I always give to noobs : don’t be a sideline spectator speculator. Get in there and screw things up. Make all the mistakes, so that you can learn and grow. It’s the only way.
Yeah rnd takes lot of time, for example for our AI doing the brainstorming and thinking out the best way for flanking path finding etc is the big challenge, the actual code isn’t that hard
1 Like