Launch of Itch.io and Better Weeping Angels.
GD.Print("Hello World");
First devlog and first major release!? Somebody better buy a cake for this occasion. I am seriously excited about this, especially since this is hopefully just the start of a long chain of activity from me. I want to talk a little bit about my most recent project, Better Weeping Angels -MVP, and my plans for the future. Better Weeping Angels(BWA) was a spur of the moment project. I have been watching various devlogs over the past month try to reignite my spark for Game Development I am noticed a lot of indie horror games in development were using the Weeping Angel archetype for the monster. Weeping Angels are one my favorite horror game creature mechanics because of the emergent gameplay it forces to player to do in a genre where discomfort is king and limitations are queen. One of my biggest pet peeves of Weeping Angels in modern indie horror is that by flinging the camera around I can catch them moving and they are completely harmless if by standing still and staring at them. The latter is especially problematic in horror games because it allows the player to take as much time as they need to calm themselves and come up with a logical plan. This led to the primary behavior of the Weeping Angels in BWA. If you haven't played through the tech demo and discovered this behavior I encourage you to do so before reading further.
Spoiler*
I drew a lot of inspiration for what I am calling the over-stare behavior from the bracken in Lethal Company. The idea of a creature watching you without you knowing and upon your anticipation for its arrival it creeps around behind you is thrilling to me. That being said I struggled a lot with this behavior. Even now in the v1.0.0 MVP release this behavior only works in certain circumstances (That will hopefully be fixed in v2.0.0). Before I explain how the system works I have to first break down the general vision system of the Weeping Angels. The Weeping Angel uses four raycasts3D nodes, three of which are used for vision. It always knows the player's position (This may not be necessary for all variations but for simplicity I allowed it). The over-stare behavior is initiated by starting a timer when one of the three raycast3Ds contact the player. The raycasts are situated on monster according to the diagram below:
When the timer expires the monster rechecks if only one of the raycasts are in view of the player. If this is the case b_wall_cast and f_wall_cast find the nearest environment obstacles and creates a wall only visible to the monster between them. Then through some very janky code the monster is moved out of line of sight of the player and re-paths to them with the wall now an obstacle. This often leads to the monster pathing to the back of the player but this isn't always the case. The reason this doesn't work in all scenarios as I mentioned earlier is because the way I calculate where the monster goes to break sight is by keeping track of the last position it was before line of sight was established and teleporting it to that point after the wall is created. This means that if you catch the Weeping Angel it will freeze and if you walk to its back and trigger the over-stare behavior the last position it didn't have line of sight is in the direction you are now located. This causes it to teleport for a frame before getting recaught be line of sight and staying frozen. I am aiming to fix this in the next patch when I overhaul the system. I am going to attempt to remove the teleportation from the monster to prevent unnatural movement as well as remove the previous pathing from the equation. Before I move into my plans for the future I want to comment on the assets and art style I used for the project. The asset for the monster as well as it's animations are from Mixamo (https://www.mixamo.com/#/). The ambient noise are free music assets from FreeStockMusic.com (https://www.free-stock-music.com/). The footstep sounds are made by me with some rocks, stick, and leaves. They are far from perfect but the get the job done and add a spooky-ish feel to the demo. The monster model felt very out of place so I made the resolution of the game really low to try to offset it and just leaned into that aesthetic. It does make the game hard to view with a development lens but the atmosphere toggle in the menu helps to nullify that issue. Now for my future pans...
In the short term I am going to work this week to overhaul this system as I mention in the release page. I am going to redesign the behavior to a state system to make it easier to understand and expand upon if anybody wants to use it for their own projects. This will also help to nullify many of the current issues with the system. I am also going to try to release the project for MacOS and Web. I tried to release a MacOs version for this MVP but I struggled so I but it on pause. I use Window for all my projects and Apple makes it very difficult to do pretty much anything. As for the long term future I have one full game project almost finished that I am going to work on after I finish this side project. I am hoping to make some more devlogs or other media to promote and share the process of that project in the future. I also have a larger 3D project on the back burner that I plan to work on making a demo for afterwards. I have a half baked website that I eventually want to start posting devlogs on but I am not going to commit to that until I have at least one or two projects to share on the website. I don't entirely know how often I will post devlogs here on itch.io but I think it will be fun to do every once in a while.
Mind my grammar since it is past midnight and I do not feel like proof reading this.
GetTree().Quit();
Files
Get Better Weeping Angels
Better Weeping Angels
Status | Released |
Author | Yellowguy08 |
Genre | Survival |
Tags | demo, Horror, No AI, showcase, techdemo, weepingangel |
Languages | English |
More posts
- BWA V2.0 Deep Dive1 day ago
- BWA V2.0 Devlog Postponed2 days ago
Leave a comment
Log in with itch.io to leave a comment.