Posts

June 11th update

 I spent a little too long working on a shader for the hurtbox of the villi. But I'm going to put that aside for now and try to work on other stuff. I'm modifying the subway assets a bit because I want the player to beable to see through walls whichever angle they choose. I created a set of animations for the villi, so it's got all the attack/flinch, etc animations because the previous one was on a very prototype model. There's still some weirdness in the IK animation and I have to fix that.

May 26th Update

Image
 I have been working on the model for the new enemy. I also ran into a new issue. Some friends tried playtesting ALAWT on their old mac laptops. It crashed a whole bunch of times, so I am working on a compatibility version using the OpenGL renderer. Luckily, I think it's mainly just a few lighting tweaks and I ended up removing shadows on it. I figured if someone's laptop doesn't even support Vulkan, it'll probably struggle with shadows.  I'm going to update with a compatibility version/low end version soon. I noticed just removing shadows made it run at nearly 60fps on my budget laptop full screen, so it should be good for lower end devices as well, though I will eventually make that an option in the Vulkan version as well. It's also really hard to notice the missing shadows simply because the maps are already filled with fog and darkness. It's moving along I would say this monster is based off The Thing, which is one of my favorite movies. I felt like I ha...

May 16th Update

Image
 Added a new skill for Sera, a shield that gives invincibility for both her and Lea. However, the shield saps her health over time and Sera cannot move during shielding. However, Lea is allowed. This skill will basically be required during the boss fight. I also refactored the pathfinding (again) and changed it to a more reliable way. The code is also a thousand times more readable because I fixed some encapsulation issues. In addition, there is more control over Sera's dashes now because of the refactoring. if you select a location behind an enemy that Sera needs to get to, she will dash. Using this method, you can make her dash back and forth all day. Dashes do less damage though, so it's really for repositioning purposes. But you can also group up enemies using this technique. However, I also fixed an issue where the enemies used to just target one character (Lea). This allowed Sera to body block them and they had no idea how to deal with that. They do not do that now, they ...

May 9th Update

Image
 Refactoring character controllers 100% complete. All the player specific code is now part of a module that the controller can optionally utilize, which will make the co-op implementation (theoretically) simple to implement. The movement effects will also be easier to add. Here's the prototype sketch for the enemies for the "boss fight". They are named Villi for a reason. Sera's pathfinding has been improved. There was a bug where she would sometimes get stuck on a corner when dashing, that no longer happens, she will automatically reposition. The pathfinding was simplified, is more readable and works better, which makes me happy. Just fixing weird bugs related to the boss fight now, but expect an actual model of the Villi soon.

May 1st update

Unfortunately no new pretty things to look at. The boss fight code is about 80% finished, just have one more thing I wanted to add: a new skill for Sera that players should be making use of during the fight. Still have pretty much all of the art assets to texture and still need to design the look of the new enemy. However, before that I am refactoring the entire nearly five year old character controller code. The reason is because I have some weapons that will be able to affect the controller's movement as well as other things. The current code is basically way too much stuffed into the controller and too many things are doing the same thing, the product of someone(me) who could implement certain features but not in a robust or modular way. So now I'm refactoring things so that everything is not only more simplified but more modularized and less buggy. This had to be done for a while, but I had put it off until I realized that I was just adding to more technical debt. This refa...

Apr 11 Update

 Still working on first boss fight. Spent a lot (more than I would've liked) of time debugging issues with hit detection. This was mainly due to the IntersectRay method I was using to do raycasts for shooting enemies. It would just sometimes miss the colliders no matter what I did when it came to Area3Ds. There didn't appear to be a problem if the colliders were StaticObject3Ds. I'm still not sure what the issue is, but I found raycast3ds to be more reliable. On top of that, I swapped to having hurtboxes just send a signal to a database to store the enemy hurtbox inside it when the mouse entered the Area3D and remove on exit. Then I'd just call damage separately. This was extremely reliable and the player longer misses things as long as they click the hurtbox. However, I didn't want players to have to only click on enemies for it to register a hit, I wanted them to be able to click past an enemy and still hit them so long as the raycast hits, so I added some extra h...

Apr 3 Update

 Working on some necessary features for first boss (spontaneous enemy spawning). I am also revisiting Sera's health loss mechanic. I'm going to remove the health loss on basic attacks (though health loss will be bigger for certain things like the oneshot attacks, mainly because using those might help you avoid even heavier health loss.) I think it's a little too difficult to manage for some people whom I've seen die in the game because of Sera's health loss mechanic more than anything else.  I plan to introduce more enemies as a result, to sort of "overwhelm" the players into having to use Lea's limited ammo instead of just hanging back and letting Sera do all the work, although I guess if players are good at juking I'll allow it, may as well be a legit way to play. Later enemies will be faster to the point Lea cannot outrun them and they will specifically target Lea.