Devlog 1 Drake Curry: Level Design, Breakables, Pickups


Problem: To start our project i was tasked with creating the level design, implementing a system that allows the player to break an object in the world. That object needed to drop a pickup that the player is able to pick up.

Level Design

While everyone else was busy focusing on the nitty-gritty code of day 1 i started with the level. I started by doing some research into level creation in Unreal. In doing so i found a suite of tools for level building. To create the basic level landscape i used Unreals built in Landscape Tool. This took some learning on its own. After figuring out some basic do's and don'ts i was on my way. I created the whole level island with the tool and sectioned off the beginning area so that we had a reasonable area for work to be done for this first sprint.  After fleshing out the landscape i started working on the ocean. Luckily enough Unreal has a plugin for that. making that easy work. Moving on i started working on the foliage. this is when i discovered Unreals Foliage Tool. Using this I was essentially able to create a class specifically for any items that would be breakable. With the foliage tool i was able to paint them on to the map. after doing some blueprinting of course. i created a map that i can switch between objects and paint multiple objects at once. This will allow me to paint anything that will be breakable, place them induvidually, and add them to the breakables at will.

Breakables

Now i stepped into the pool of coding. To begin with the breakables i utilized the FoliageInstance class Unreal provides, creating a child class assigned to all of the "foliage" object, in our case breakables. This allowed me to, from the player, setup a linecast that looks specifically for this class, if you dont hit an object of this class, nothing happen. If you manage to hit an object with this tag, the object disappears. I was only able to make a wood object drop but next week i plan to add objects for each breakable

Pickups

Pickups was the simplest of the tasks given this week, as we have setup something similar before through my courses at Full Sail University. To do this i created 2 classes, 2 blueprints, and an interface i created a BasePickup, PickupInterface, BP_BasePickup, and BP_Wood. BP_Wood is derived from BP_BasePickup, which derives from the C++ class base pickup.  After creating the classes and adding the functionality i moved over into the player and added the interface and the function needed to pickup the object. This also tied in to Jazmine's inventory system and the objects are moved into the inventory as well when picked up.

Next Steps

Next week i plan to refine the breaking system to allow different break requirements for each object. I also plan to add to the level, and work on our games save system.

Files

EchoesOfCreation_V0.0.1.exe 817 MB
41 days ago

Get Echoes of Creation

Comments

Log in with itch.io to leave a comment.

For some reason I was unable to attach the pictures, so i attached them as comments.