[ART] Water and portal

Lastweek i created some big cliffs to support some height in our map / level.

1197720fb13870c9edfbe8ca5eaa05f2.gif

Secondly i made a running river. it supports distance based tesselation.

74ad55ad9d35a7fe29ae61dc8f59813c.gif

And lastly i made a new portal. still need a global control parameter to create the fade in. appart from that. mostly done.

f5833a1838afb3c471245da73f4a930d.gif

 

7b083cc71f624384f726af4846152215.gif

Advertisements

[Dev] Inventory

Hi,

Last week I didn’t make a post. So first off let me apologize for that! But this week and last week has been quite busy. I have worked hard on our inventory system. Both in terms of design, management and animations.

9e4645cffafe12aba82154dfe4402f91

I also had to completely overhaul it 2 times. First because it was inconveniant and messy. And secondly to completely redo the logic behind it. The result is that we now have a very clean infrastructure and logic behind the inventory that allows for A LOT of easy updating in the future. Such as adding extra slots, rearranging the existing slots for variations of the inventory system (multiplayer ideas around this).

5fcd8d052e875955abd25f7aaeb982e9

The inventory has all bells and whistles of a high-end inventory. Meaning, there is drag and drop, swapping, cursor implementation, animations and all sort of safeguards and indicators that prevent the user from breaking the inventory. Which was a lot of work to set up properly. But it’s all working almost flawlessly right now. Of course still a bit of tweaking is required here and there. But it should be pretty much finished.

This means we can now move on to the next phase. Which is creating content. We need props that you can collect, interactable objects such as locks, switches, doors, handles, machines to activate, elevators, … you name it. We have a very big list of stuff we want to create and add to the game. Both in terms of gameplay and cosmetic. Like we want quite a few interactable props that do something cool or fun rather than actually help you. This is important as we want the player to feel like he is actually in a real environment with a backstory.

Next week is very important. As we will be showcasing our game to a group of other people that will play it and give feedback. We want to get as much as possible ready for this event so we can present the players with a good overall picture of our game and what it will become.

Thanks for reading, and once again sorry for a silent week. But not to worry, we haven’t worked on our project any less. In fact we have worked very hard on it, hence why we couldn’t find the time to post last week. But of course that’s no excuse. So next week we will be back with more! Stay tuned.

[DEV] Advanced inventory management

From the start up I have been in charge of programming everything that has to do with the character itself, I implemented weapons and weapon switching several weeks ago so we could get a proper gameplay loop up and running , but this wasn’t really suited for a full game, most stuff was hardcoded etc.

The last 2 weeks I worked together with frederic to get a proper inventory up and running. While he made the graphical side and worked on the inventory management , I started rewriting the character code so it interacts with the inventory correctly. Now we almost have a fully working inventory in which everything is working independently . with a bit of tweaking i think most blueprints could be used in different games entirely.

First up our character now has 2 hands and thus 2 equipped slots , these just need a “base_weapon” , when something gets equipped it gets dropped in the right hand. Drop it in the left hand and it gets mirrored correctly and can be used by pressing the left mouse button , idem for the right hand . This essentially allows you to dual-wield any combination of one-handed weapons. To balance this , we only allow you to use a weapon’s “secondary” ability if you only have this weapon equipped, with the most obvious use of this being aiming down the sights of a gun. We will also be implementing 2-handed weapons (rifles , big axes?) .

As a final note I would like to express my thoughts on the way blueprint programming works in UE4. I really see this as one the greatest tools there is in the UE4 engine for modular programming, it really opened my eyes to using inheritance in gameplay programming and I think it is vital for our game and has saved us a ton of trouble. For example , the way our pickups etc work. Let’s say our axe (Interactable->Base_weapon->Weapon_Axe) interactable allows us to interact with it in the world , if it’s a base weapon , we know we can equip it and weapon_Axe essentially contains the information for “firing” the weapon. Looking at a lightswitch (Interactable->Lighswitch_A) , here we can see it is just an interactable , the lightswitch code on “activate” just simply switches a light , other interactable items can be added to the inventory on the “activate” event , see keys etc.

So , this was a wall of text, I tried to make up for not writing anything last week and implementing that in this post.

Daan

[Dev]Rock-Solid!

This week was a big one , everyone stepped it up and put out a lot of work to try and get a solid prototype. I’ll be keeping this short though.

The biggest features i’ve added are the ability to throw rocks to distract the drones and reload functionality for weapons with a correctly working UI.

The rocks are made out of a child class called thrown , this way we can still make other thrown items and implement them pretty easily, because they are completely independent from the character. As soon as the rock overlaps with anything it simply disappears  and distracts the enemy drones in a certain radius.

Reloading is pretty straightforward , there are 3 main values. Clipsize , AmmoInClip and AmmoInBag.

On another note , i have been working with the artist makign teh animations to get them working correctly. As for now i hardcoded a pretty barebones fix to get animations to run decently. We do however still need to get these animations in blendstates so we can cleanly get from 1 to another.