Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

[Devlog] The Simple Job

A topic by DeepFriedOreo created Nov 05, 2021 Views: 255 Replies: 4
Viewing posts 1 to 4
(2 edits)

Good evening! I am a couple days late to starting this, but things have been pretty hectic and my main reason for joining the jam is to get myself out of a rut by taking my time and enjoying the process. So my progress may end up a little bell-curved, but I promise, no crunch!

Most of what I have done so far is in the vein of planning, the premise is a collect-a-thon/atmospheric horror game. Also yes, I am aware Halloween has passed.

The player will take the role of Edward (Eddy), a former teacher turned contract thief after a tragic illness became his daughter. After saving up enough money for the treatments he continued to take jobs for future security, but lately things have been getting dicey. After a heated argument it's decided that he will hang-it-up after this last job. It seems painfully simple and he can't pass it up. 

There is also a lot of story I am not going to spoil up front, but just know that the game being presented is not necessarily the whole game.

I will be going at this solo, and although I will be making all of the logic and interactions from scratch, I am not really an artist. While setting up my schedule I have given myself a little bit of time to re-familiarize myself with the assets I will be using, and today I have finished putting together a little scene to test interactions, level flow, and other things quickly before setting up a finalized level. For anyone curious, this scene is setup using Synty's Low Poly Town assets.

I don't really have too much to show yet, but here is a preview of the test scene. Doesn't really give a feeling for the character controls, but it's made from scratch, and I promise it's very smooth!


HostSubmitted

No worries about starting 'late", you choose you schedule! I myself am only starting today ;)
This looks pretty good already, maybe having some flickering light or a spot could help and add to the horror aspect of it

Oh for sure! There is no lighting in the scene at all yet, just ambient so that I can see and walk around. Just meant so I can setup object interactions, test AI movements, all of that fun stuff :)

(4 edits)

Good evening, hope everyone is having a great jam so far! Today I was able to finish some initial setup for my game and I figured I would share a little more of my progress. Some of this may seem over-explanatory, but I am having fun okay.

The first thing I did was create a class to serve as the base for all of my interactable objects. Directly in that base class I setup a "look at" function that will trigger a highlight whenever the player is looking at something they can interact with. This should happen inherently for every interactable.
  

After that, I went about creating a class for both doors and drawers, as these will be necessary for the game. They both work relatively the same and are setup with a variable that changes the mesh on construct, and an array to hold actors which will get parented on begin play (such as drawer contents or fridge door contents) meaning I shouldn't need to make any custom actors for these interactions. If needed, I can also add in callback triggers which will activate other like-minded actors (such as for double doors).

Once I had that setup I made a test UI that shows the value of all the objects collected by the player, and the interactable class that allows you to collect valuables. As the story of the game suggests, you are in the house looking for money and valuables so I wanted to get all of this simple stuff nailed down first. I realized almost right away that simply storing a reference to the actors wouldn't work if I wanted to destroy the actor references, so I made a data/structure setup to allow for easily dropping valuables in the scene, giving them an included name, and all their variables autofill. This way I can store an array of names and cycle through to add up the total value.

Finally, I have always wanted to setup a TV that turns on and off, and this will be important for my game as well so I figured I would do that now. Turns out it's actually super easy in UE4, so that took about 20 minutes including searching for a free white noise clip with sound that I can use commercially. I also went a step farther and got a clip of a TV being turned off, with sound. I am very excited with how it turned out!

I know I said finally, but I also made an openable toilet. Because why not.

Next week I will be getting started on the AI, and if all goes to plan, by the middle of the week I will be posting another devlog with progress on that. If you made it this far, thank you for taking the time to read my devlog. I look forward to reading yours!

(3 edits)

Good evening, a week late but I am here to post another devlog! No pictures or video this time because I have been very busy, and developing the AI for the game has been a complete disaster. It started off fairly simple enough, but Unreal Engine's AI Perception has some serious flaws when used in blueprints that are stopping me from being able to add in some very crucial functionality. So where did it go wrong?

To start of, I made a simple AI that will add the player as a target when perceived, and follow endlessly. Which would obviously make the game extremely tedious, so I added in an investigation loop. So if the AI has a target, but the target has broken line of sight, it will take the targets last seen location and patrol there. If it can't find the target, it will clear the target and start to patrol around the house using waypoints. For reference, all of this was setup in about a half hour. It gave me a lot of motivation, and I called it there for the day as it was a good amount of functionality, and decided to end off by adding in sprinting.

Now, when I sat down the next day I was extremely happy and determined to add to my AI, and the only "crucial" thing missing is being able to open a door. Either if the player tries to hide but is obviously in sight, or if the player locks the AI in a room it needs to be able to get out. To get things started though, I decided to quickly add in noise perception. Added triggers to the doors and drawers, and the AI could now investigate a noise trigger if it's not actively chasing the player. After this point, the game development process turned into a horror game...

I spent 3 days, and I mean way more time than I would have liked during those 3 days trying to implement door compatibility. First task was to open a door if the player closes it right in the AI's face and breaks it's movement path. This was actually fairly simple and worked immediately. The calm before the storm. Next, was to have the AI open a door while at the player's last seen location, if one exists. So, I setup a task to search around the AI for doors and set the closest one to a Blackboard entry, and then trigger the door same as before. Didn't work. Not only did it not work, but it broke previous sections of the tree even though it's all isolated tasks.

I tried restructuring the tree the next day, and for some reason even the basic simple stuff I had already setup wasn't working anymore and that entire day was 6 giant steps backwards. Then I didn't touch it for a few days. I considered removing the AI  and just focusing more on the atmospheric horror side of the game (which is still a thought I'm entertaining) but tried again... I don't even have words for how angry and frustrated this process has made me. Not to mention I am facing this constant bug with Unreal Engine where the right-click context menus completely disappear from time to time and the only fix is an engine restart. Apparently it's an issue with newer Nvidia drivers, but it really leaves me wondering how much I actually want to pursue developing games at this point in time. I can't exactly up and change software as I have $1000s worth of assets which are licensed for Unreal Engine, but recent updates seems to be breaking more than they fix.

Anyway, I do plan to release something for this jam, even if it's a slightly cheaper product than I was intending. Thanks for taking the time to indulge my torturous week, and hopefully, one way or another, I will be posting at the end of the week with a final concept and ready to start a week of marketing on the side!