Vendors
We are currently adding NPCs that are going to be roaming around the villages in Floatlands. They will be of a friendly kind until you attack them for (loot?) no reason at all. One of those NPCs is going to be a Vendor which buys or sells goods that can be obtainable in the world of Floatlands – either useless junk or rarities that cost alot. To buy goodies you will have to gather fiat which is measured in, you guessed it, Bolts! Techies vendor hut
Basic UI implementation and interaction
Junk items & new shotgun
It’s been a while since the last post and quite a lot has been done lately. We have made a collection of junk items that will be found throughout the world, like empty cans, bottles, lanterns, a broken cog etc. These items will be processed into other resources that will be used in crafting.
Junk items
The tools that players will use were revamped, we also tweaked some of their animations. Mito’s new designs made them more consistent with our overall look. They now look more like they were crafted out of scrap material. We have also redesigned the pump action shotgun with Mito’s new concept and I created the new animations for it. Human NPCs & Robot player character I made more animations for the human NPCs, like crouching, fighting with their fists and some reaction animations, like waving and pointing, to give their actions more variety and give them more options in combat situations. I then modeled some more elements for the electric system, that will allow players to make more complex systems. Human fighting animation & New robot player character
NPCs relationship & last seen position
I have improved NPCs ‘Relationship’ object, which is kind of IActors memory about other IActors in game. Still work in progress but it’s getting closer to finish. The reason I’m doing this memory improvement is because our current robots ingame (humanoid robots) are not clever and we are adding humanoids, which I want them to be more clever.
public class Relationship : IEquatable {
public IActor actor;
public RelationshipType type; // Enemy, Predator, Neutral, Prey, Friend, Threatening
public RelationshipReason reason; // reason for this relationship to exist (maybe damage)
public float timeSinceLastSeen;
public float maximumMemoryTime; // how long does this relationship last in memory, if NPC doesn't see actor
//last seen variables to make NPCs more realistic
public Vector3 positionLastSeen;
public Vector3 headPositionLastSeen;
public Vector3 velocityLastSeen;
public Vector3 directionLastSeen;
public float threatLevel = 0f;
...
This was a sneak peak into Relationship code, it also includes prediction code and other helpers. The next thing I want to show you is Gizmos of selected sheep – the Gizmos show ‘lastSeen’ data. Now, if task like LookAt gets called in Behavior Tree, then the NPC will look at last seen position. This is also a work in progress though, since last seen position can be outdated, and NPC can be somewhere else completely.
Checking last seen position
Tutorial with hints
For this assignment, I took a bit of a different approach. Instead of the usual PC and tablet combo, I’ve decided to hand draw the pieces, import them and edit in Adobe Illustrator and Adobe Photoshop. We are creating a “tutorial” system which will help out players when they first play the game. Hints will pop up with instructional text and a cartoony drawing of the protagonist. Below you can see some of the examples. Drawings for tutorial Here is how Domen implemented his Hint system, triggering when interacting with certain world elements, Workbench in this case. Workbench hints More about Floatlands: website, facebook, twitter, instagram
↧