Building Blocks

Created with Sketch.

Building Blocks

I’m ankle deep in fencing and making stuff work and discovered the following bugs:

-The character would “stick” to walls better on the right side, requiring a push towards the wall on the left to get the jump to work. I changed the parameters of the left side rectangle and it’s way smoother now.

-The Thief would get all excited and start bashing the hell out of the enemy without me asking him to via keyboard. It turns out that I’m stupid. What I thought were local variables like “Attack” and “AttackRange” are actually Global variables that control what the player character is doing. When dealing with Variables, like Proton Packs, it’s very important not to cross the streams.

-He now has a Low Attack by the way, so I can finally get going on what I’m really here to do, which is the enemy Blocking behaviour. I’m already sick of it.

– Oh right, when you copy something into a notepad and then back again, it makes all the code green like it’s commented out. I have to close it and open it again. *sigh*

I’ve encountered an odd thing. I’m looking at the randomization code that I’ve set up and it will have gaps in it like it is now. Right now it assumes that different enemies will have different numbers of attacks. This is true. Hard enemies will have more kinds to make them, harder. However, if I run an action without something in it, the enemy will stand there considering the nature of the universe and do nothing useful. In other words, if an enemy only has 2 attacks and the random number thing pulls a 4, nada.
So, I’m thinking that this can be useful. I can stack the attacks and change the distribution of the attacks in a pattern. Say, I want Attack A twice as common as Attack B, then I make Attack A happen on rolls 1,2,3 and 4 and give Attack B only 5 and 6. Statistically, just like I would want it. Now I have to seed the attacks….grrr. Then I can get real results from the random thing and get Blocking to work. It’ll run on the same kind of code as the backup in that it will be called and continue to call itself as a counter runs down. The difference? The Block code will have a random length of time attached to it.

Okay, it’s installed now. It works like ass, but at least it’s in. I discovered more AI stupidity. It seems that once an enemy start backing up, you can ruin them like the dreams of a circus clown – with a painted smile. When they start backing up, there is no out for them until they reach the correct distance. So if you keep rushing them down, they’ll keep backing up. This should be correct when I get the Hurt state running though, cause, like the Doc says -> they have pre-determined actions out of said state. Something to remember.

Right then. Next to do is to tweak the system so it just looks like ass instead of playing like it (placeholder animations suck! Especially when they’re vectors and even more next to pretty animations). Then get some stuff to happen when they’re blocking. So I needs a Thief state called “Stun” and a way to trigger it. But that’s programming for another day. It’s 11:15 and it’s time for bed.

Yep, more Twittery looking posts. If you don’t like them, tell me. Assuming that you won’t because almost nobody reads this, I’ll further assume that they are as loved as I think they are.

“Delusion”, noun Latin Root. Def 1) To think that something is a way that it isn’t.
2) Acting in a way in spite of evidence that is is silly.
See also, Blog, Keeping a