RPP 4 Blueprints

 Yo! RPP 4 is nearing completion, and my level for that game is looking perfectly acceptable. We had to use a lot of free assets, and sadly I didn't have time to decorate the level with foliage, but for what it is, I think it looks decent enough. 



There isn't too much to say about this level, besides how heavy-handed the player guidance is at times. Since someone random is gonna be playing our games, we gotta make it real easy to play and not get lost. I've got invisible walls on the barriers, and simple wooden fences along the other borders of the map. It's pretty empty all things considered. More than that, I used a lot of blueprint tricks to force the player down the right path. For example, the current 'objective' is printed at the top of the screen at all times, and there's a gate in the level that won't open until the player has the harpoon gun (so they can fight the crabs!) 


Anyways, the more interesting part of this level than the level design itself is the blueprinting I did. I learned a couple tricks that sorta felt like unlocking new abilities in a metroidvania- Once I got 'em, I could see all the problems I'd fix, and all the new things I could do!

First of all, we learned in class that you can press Q to straighten out nodes automatically. It's really satisfying. Keeping blueprints commented and understandable is SUPER important, just like it is in 'real' programming. 

Second of all, something I think trips people up is getting UI on the screen. Setting up a UI widget is pretty simple, but then how do we effect the UI in response to outside forces? Like colliders or the player pressing "E" at a certain spot? The logical solution I didn't realize at first was storing a reference to the UI widget in the player themselves. 



If you keep it in the player, you should be able to get it whenever you might need. There's other ways to do that sorta thing too. This strat here ended up coming in clutch for me- If you need an object of a certain class, and there's only ever going to be one of 'em, you can "Get all actors of class" to grab every single one (just the one) of whichever shit you need, and get the 0th entry of those actors (the only one) and then you can cast to it directly.


I love this. I think there's a lot of situations in LD where you have one specific blueprint placed to do a specific thing on a trigger, and you need a way to access it remotely. In Unity you could just make a reference variable and drag in your reference manually. Maybe that's a bad practice anyways, but it sure makes things easy. 



Comments

Popular posts from this blog

Quick and Easy Top-Down-Maps using Blender!

Immersive Sim - Tram Station Blockout using Blender

Admission Project