Now that I've completely gutted the prior ambitious simulation we're left with a much more tried and true solution to robust AI needs - meaning that at worst case we're looking at the AI making some dumb decisions as opposed to the entire simulation collapsing
I reckon it's less about "determination" and more about "general programming know-how"; his AI bug, for example, is a good example of bad programming practices. Recursive function calls in situations where existence of a stable solution is not guaranteed, and without any random component to smooth it out? It's one of those things that first-timer programmers tend to do, because it sure does "look beautiful" (I know because I remember doing something like that when I was new);
If he was more experienced and thus started to work from already existing architectures (of which there are many), which incidentally never use recursion, he at the very least would not have had that problem, which would've accelerated his game development by 1-2 weeks - and that's only on that one problem. He undoubtedly have had many more, of which he hasn't told us, and of them, there were probably many that could've been avoided, saving literally months of coding time.
Where is the "smug" emoji when you need one?
But yeah, good to see him making actual progress now.
Practically the minute the dev's work was exposed to the outside world people quickly identified simple mistakes he's made, all of which could have been avoided if he wasn't so scared of looking stupid. Amazing.
This is what happens when people try to lock themselves in a room and make something. Whatever you emerge with in 1 or 4 or 12 years is either going to be old hat, or completely broken, if you do not give it
some exposure to outside observation. At the least you have people making observations that you can use to improve your product. This is why a lot of open source projects are so well maintained and a single person project can end up involving many stupid mistakes (which isn't to say that open source has no weaknesses), because the bad single person project was being done by someone who thought he didn't need feedback because that's how he perceived other smart people to work (history books often fail to cover all the people that men like Einstein and Stephen Hawking were touched by). As my Biology professor said, the smartest person isn't the one who can make the quickest decisions or do things with the least amount of help, he's the guy who is willing to live without prejudice: he accepts that he can be wrong, he operates based on evidence rather than belief, and takes into account observations made by his peers.
The worst part is it's a mistake that gets made over, and over, and over again, because people, indie devs and bigger devs alike, are so affected by this powerful fear of embarrassment that it pushes them to hide their mistakes instead of sharing them so that people can learn.