Categories
Uncategorised

Resubmission Devlog BSC2B

I had a sliding bookshelf class waiting to be used for the game so I will use that to create a puzzle level for the project however the class has some shortcomings that I have since learnt from and know how to deal with such as the collision box being the root component so if you want to change its location you have to move the entire blueprint

In the new system I have changed the heigharchy of the components so that the collision box is no longer the root component, this means that you can move the collision box instead of having to move everything around it

In the new version there is a seperate object that is made to be the root, along with that the 2 parts of the collision box, the visible and the functional, are now attached correctly so if you move the functional part the visible part moves with it

I have changed the way that the sliding block system checks which point (Start or End) its closest too, because it only checks once the movement is completed I only need to see if its closer to one than it is to the other, as well it seems my previous implementation was nonsensical as it runs an if statement with opposite checks to the ones needed to get to the if itself. Instead it will now run the if once the timer, that the object moves according to, ends

It now just changes the atStartPoint variable once the timer has run out as the object should always have made it to the other side by that point as the timer is used to calculate its position

I’m going to change the way that the sliding block handles interaction, currently it has a variable called object to move which is a single object however for the puzzle that I want to make I will change it so that it has an array of objects which will give me the ability to have each interaction zone affect as many sliding blocks as I want

This overhaul has caused a problem to arise involving my system to check if the object is at the start or end point, I should be able to exchange this previous system with just having the bool swap on timer end

Suddenly realised during this process that the way that I have gone about changing this will not work as it only supports one start and end point, I will need something external to handle all of the different start and end points, I will instead make something that will manage the sliding blocks (calling blocks from now on) and give the blocks a bool which dictates if it will be handled by something else (removing its collider) or not

It turnt out that I already had a really good system for handling this, This is a seperate class that has an array of sliding blocks that you can assign in the editor so you can choose how many different sliding blocks you want to be moved by one manager allowing many more options for layout

When it came to designing the room, I split it into two halves and for each door I’d give it a purpose before I placed it (first door is there to teach about buttons) top door is there to teach about single bookshelf buttons + hiding buttons, right door blocks a single and is a path to the final first half button (behind another shelf) etc, I do not believe there is a wasted door that the player will not have to think about

This is the overview of the map, it has lots of different buttons to press which are connected to different and sometimes multiple shelves

When I got to the second half of the room, to spice it up a little I added shelfs that would permenently move so that the player has to time their passes through