Oh gosh, there's been a lot that's happened, hasn't there? I'll try and ramble my way to a point.
Starting with recent developments, I've started a trello to-do list for this game, which is something I should have done a long, long time ago. I've divided it up into Urgent/Bugfix/Feature/Enemies, Items, Weapons todo lists, each of which contains an embarrassingly small number of items compared to the trello boards of other devs that I've seen (in particular the trello boards for
Robot Roller Derby Disco Dodgeball and
Black Ice are incredibly intimidating)
Next in reverse chronological order, I've begun wrestling with enemy pathfinding again, which is the same kind of disastrous monstrosity that it was last time I tried to tackle it. I've got a
C# FSM set up, which makes things a lot easier than the ad hoc system I had previously, but still I'm experiencing issues with monsters climbing on top of each other,
running into walls, or running in circles. If anyone is using the A* Pathfinding Project and C# and is willing to share their knowledge with me, send me a messsage here, or on Twitter (link in my signature).
I've also been fiddling with ideas for the in-game UI. I had the idea of a Hotline Miami-style gently tilting back and forth UI style, and it wasn't that hard to implement.
Just plop the text and its outline into an empty parent object and put this script on them:
public class LerpTilt : MonoBehaviour {
public float startRot = 5f;
public float endRot = 355f;
public float rotSpeed = 2f;
private bool goingLeft = true;
void Update () {
if(goingLeft){
transform.Rotate(new Vector3(0, 0, 1), Time.deltaTime * rotSpeed);
if(transform.rotation.eulerAngles.z >= startRot && transform.rotation.eulerAngles.z <= startRot + 5){
goingLeft = false;
}
}
else{
transform.Rotate(new Vector3(0, 0, -1), Time.deltaTime * rotSpeed);
if(transform.rotation.eulerAngles.z <= endRot && transform.rotation.eulerAngles.z >= endRot - 5){
goingLeft = true;
}
}
}
}
If you've got any ideas for how the in-game UI could be improved, let me know!