If you’re reading this, there probably aren’t very many posts yet. But don’t worry, you can be the first! Either create a new post or just reply to this one to say ‘hi’.
This is a very powerful architecture. My brain hurt a bit following the relationship between ISpecialAbility, ISpecialAbilityConfig, PowerAttackConfig and PowerAttackBehaviour.
protected ISpecialAbility behaviour; ... behaviour.Use(); //Very cool!
Glad you like it!
My critters heartly thank-you. Although i found the bug and cause a few videos ago i had just turned off the audio trigger for now to move on.
I must confess (and vent) that I’m finding this part of the course incredibly confusing and trying. Reflecting on it, it might be because of the speed of these new concepts being introduced and the established code that it’s being weaved into. Perhaps if it were introduced in a clean project to get my head around it I’d be ok?
That diagram Ben keeps referencing—sometimes for mere seconds including a few whips of the mouse before sliding back to Unity/VS—has 4 different arrow types and no key or labels to explain the difference between them. This may not be an issue for most students but I’m having to do lectures sporadically so my memory of the original explanation (which probably went over my head anyway) isn’t fresh in my mind.
A few times I’ve been a bee’s business away from quitting the course due to the amount of things I don’t understand being introduced so quickly. That said, I’m too stupid and stubborn to quit so I’m going to power through it, accept that I’m not going to understand it and hope there’s some less confusing stuff on the other side!
Apologies if this comes across as negative, that’s not my intention. I just want to put across the point of view of someone not incredibly tuned in to programming paradigms and methodologies.
Not at all negative Cam, I agree with you. Our next move, starting mid-April, is to prototype the entire game then consider if we re-work Part 1 of the series with a more concise journey.
Either way, the rest will be even better.
Thanks, Ben. What an ambitious goal!
In reflection, my feedback is more about me than the course itself. I’m doing this course from a non-programming background whilst being time poor (AKA having a young family) and those factors are more likely to be the cause of my frustrations.
This one made my brain hurt, so I drew a picture.
Same here. Very overwhelming for beginning programmers like me. I believe the problem is that the whole structure is introduced at once, whereas just starting out with one ability and building to the whole structure step by step from that one ability would be way more clear.
You’d introduce concepts this way: PA level 1, PA level 2, show that it’s becoming tedious to repeat procedures, introduce a Power Attack scriptable object, make a second power attack SPA level 1, 2 and 3, show that it’s becoming tedious to repeat procedures, introduce a Special Attack scriptable object, forget to include Use somewhere on purpose, then show how you can prevent this with an interface, et cetera).
This is also far more natural.
The whole concept of this architecture was clearly thought out by someone who has done this a dozen of times before, but the above is a far more natural way programmers will start dealing with these issues. We all start implementing things one by one manually, then when codes or procedures start repeating themselves, only then you will you think of (and understand!) ways of dealing with that.
Zoom out, don’t zoom in. Currently I have a piece of code I barely understand and which I can’t take ownership of. I hope this will change and I will try to wrap my head around this a few more times.
To make this work, you don’t even have to revisit earlier parts of the course. You can simply spread this subject out over multiple lessons instead of the current two or three we got. The starting point and the end result would be the same: only the road to get there would be different and way more gradual.