• Advertisement
  • entries
  • comments
  • views

About this blog

Development of Floatlands game

Entries in this blog

Devblog #35

New inventory interface framework


I established a new inventory interface framework by writing a new logical layer on top of the current system. By doing this we can now save a lot of coding and designing time. The system is generic which means UI elements are built on the fly and asynchronously. For example, we load sprites from the pool if they already exist in the memory, else we load them asynchronously from the resources – disk. Everything feels seamless now, which was the primary goal in mind while recreating the system.


New logical layer introduced new item manipulation techniques while having your inventory open:

  • By hovering over an item, a description panel shows which holds information about your item such as item name, description and quality;
  • By dragging one item onto another one, swapping or merging becomes possible;
  • If you right click on an item, you can split it if there is enough room in your inventory;
  • If you left click while holding left-shift, you can transfer an item instantly to another inventory panel.


Harvesting world resources


World resources such as stone veins, metal veins, niter veins, crystals and trees now have a harvesting feature – items (wooden logs, ores) now drop while mining/harvesting the resource which significantly improves resource gathering feature of Floatlands:




We started adding some more critters to the game. These will be harmless small animals and robots that will add some more life to the game. So far I’ve modeled, rigged and animated the hermit crab and the spherical robot. I also added a missing animation to the rabbit.



I have prepared some undergrowth foliage to make the nature more varied and interesting. They’re made in a similar way the grass, bushes and treetops are made, with alpha transparent textures on planes.






Roaming around the world can sometimes feel a bit lonely. So we decided to implement a companion to follow you and keep you company as you play. Companion won’t just follow you arround and be useless, they’ll be a valuable asset early in the game. For instance, they’ll help you gather resources with their set of utilities. They’ll even provide the source of light during the night!

As with any concept design task I’m given, I usualy sketch a bunch of ideas on a small collage. In this case we then printed it and everyone in the office picked their 3 favourites.


Based on that decision I combined the elements of the companions everyone picked and came up with the following concept. It’s also important that the companion has elements that you can find in the game, to give it the unique aesthetic look.

Devblog #34

Riverbanks, trees, floating stones



Riverbanks and (under)water are now filled up with more content such as grass, stones, chorals, ruins, tires and more. I’ve developed a spawning system that allows quick and easy setup for new game objects. You want to spawn a game object only in water at certain depth? You want to spawn trees at certain slope angle and then change its height on the fly? This system now allows you – without coding – to do such things with ease.

ruins on the riverbank

New trees

We decided to rework the tree tops, so I experimented with techniques and stiles, until we got to something we all really liked. This really changes the attitude of the game and creates more immersive but still somewhat abstract feel. The solid blob treetops are now being replaced with bunches of textured alpha transparent planes.

new trees implemented

Floating stone

Lastly, here we have a timelapse video where I modeled a floating stone with a crystal. These stones will float above the crater where the floating islands were raised. I sculpted the basic shape and applied a decimate modifier, after that I added a crystal made in a similar fashion.


Exponential grass level of detail


I’ve been tweaking our new grass renderer a little bit and asking myself if I can increase the grass draw distance without ruining the overall performance. I came up with an unique solution by decreasing the amount of rendered grass, having in mind maximum grass distance and current camera position.

New LOD logic allows subtle decrease of rendered grass meshes over the distance between the player and the final render distance. With this system we can now increase the render distance and allows us to add more content into the world of Floatlands

LOD comparison

Terrain minimums and maximums


Finally I set out to improve the tools for terrain. It’s not much, but I did a function for local min/max search and slope of terrain. Local maximums should be useful for spawning bigger objects that need visibility. Local minimums could be useful for resources that need to be more hidden from the player.

local min/max search

Critter concepts


To further enhance the world we’ll add tiny critters that will roam around the environment. Critters will be friendly animals or mechanical creatures that will move around specific territories. For example you’ll encounter turtles near the sea/shore line, chickens near villages etc. If you decide to kill the critter, there will be a chance that it will drop loot or crafting materials. Although, what kind of heartless person could possibly kill a tiny cute crab dragging around a tin can house.

critter concepts


Dev Stream #05: Deep End submarine


The underwater scenery in Floatlands will be huge, you will need an efficient way to travel underwater without getting yourself killed and for this reason Deep End submarine comes in handy. Players will be able to craft this submarine. You’ll be able to travel at faster speed underwater and reach the undiscovered depths. You'll even mine precious minerals that only spawn on the ocean floor with the help of the laser mining “drill”, which you’ll craft and attach to the front of your Deepend. We livestreamed the creation of a few Deep End assets – the aforementioned submarine and a small crab:


Crater assets


We started making a small biome that will appear in the craters left by the raised islands. In particular these will be harsh toxic areas with a lot of very lucrative resources. So far we have modeled quite some assets for it, based on Mito’s concept art.

Crater assets

Reworked grass & bushes


In addition, we have reworked and developed a new look for the grass and bushes. The bushes we added use a similar approach as grass, using planes with alpha cutout textures and a foliage shader to make it react to wind.

deep end reworked grass bushes floatlands
new grass & bushes

Smoother terrain


Domen already did tremendous amount of work on improving the terrain, but I saw some room for improvement. Terrain is based on heightmap/bitmap, but sampling was done without interpolation. So this is why I implemented bicubic interpolation, which gives us smoother terrain and enables us to do derivatives on it (gradient). And from gradient, I can calculate normals or search for a local minimum/maximum through iteration (gradient descent). This is very useful because there is no more need to raycast meshes to get normal sample, which should optimize some terrain generation processes. As a result, here is animation of testing gradient iteration and it works quite good.

deep end testing gradient iteration floatlands
testing gradient iteration

Simple animation script


For the purpose of creating simple animations (basic object rotations and translations) without using any external libraries we have written a script that handles animations by itself without using Unity3D’s animation framework. You can use the script either programmatically or as component. Good thing about having animation system is scalability and room for improvements, because it will be a location based system meaning only those game objects that are in vicinity are going to be animated.


Devblog #32

Dev stream #4 – Underwater scenery


This time Mito and Andrej joined forces and created Underwater scenery. A proof of concept demonstration of possible new models/elements in the Floatlands Game. From concept art to sculpted models to finished scenery. The visuals of a game can change a lot between concept art development and final Blender 3d model implementation in scenery.


Concept art for the beach and underwater biome


We’ve been preparing ideas and concept art for the beach and Underwater biome that we are setting up. It will be one continuous biome that will stretch along the shoreline. We created different assets that will be on various distances from the shoreline, ranging from land that’s away from water, to deep under water. The ocean bottom will be littered with interesting sea flora and even resources you’ll be able to harvest. We explored different moods ranging from dark and gloomy, to bright and lively so we can decide on what we want it to look like.

underwater concept

The beach will be where the players start their game. They will not be able to go out to sea until they level up to a point where they are capable to go far out into the water. This will force them inland to explore and get familiar with the world first. Later the players will be able to explore underwater, find more resources and explore remote islands.


Underwater – Gameplay Wise


The Underwater will serve as an interesting and difficult area to access. Since you are a robot, the water will also affect you in a negative way. Although with levels and skill trees planned, higher level players will have a true access to the Underwater. For new players we want them to focus on the Floating islands and the Main land. They need to experience fear of going into the ocean for the first couple of levels. When they level up the world will get bigger for them. Kind of removing a “hidden” barrier and introducing them to the last bit of the world.

We are also thinking about including new vehicles, but that idea is still something we have to figure out first (the impact on the gameplay can be drastic). The purpose of making The Underwater more difficult is for the player to find some huge chunks of resources in the deep water. These are hard to obtain, but can improve late-game gameplay (players will start to explore waters when they are done with Floating islands and the Main land).

Still, The Underwater is still in the concept phase and we really want to make it as fun as we can.

Join us on Discord

Devblog #31

New World – world changes and improvements


I was very skeptical about New World and changing the current world of Floatlands. The world included floating islands, debris and details such as clouds. There was a lot of unused space (air) which was not defined gameplay-wise in any way.  It was only a medium for traveling from one island to another, therefore making it a really boring routine to do. We could fix and improve that by doing various things:

  • allowing players to build in the air with more air-play,
  • creating more debris/objects where players could land in the mid air,
  • designing ‘spacecrafts’ with whom you could travel trough the world (good idea, but it is not appopriate lore-wise since we really want to improve on smaller aircrafts such as our little Buzzard),
  • creating a ground level terrain which covers entire playable area (which should be large) with terrain.

The decision was obvious, we went with the latter choice (hint was in the previous blogpost). I started working on the so called Main Land island which we will include in Floatlands. Main Land will include all biomes we introduced already and floating islands. It will also have water (sea & rivers), Humans of Floatlands, our beautiful animals, basically everything we already worked on.

I’ve already done a lot towards creating this new ground level of Floatlands. There’s a whole-new procedural terrain generation, color blending between biomes and height differences, whole-new grass renderer using some advanced techniques and our current day/night cycle system.


The technical part of the New World

First of all, we generate the height map trough different sets of Perlin noises. We also have a biome map, which represents which biome is at specific position. The best part about this biome map is amount of mathematic principals and algorithms I’ve used to create a procedural biome map so it would look as natural as possible. Have a look:

biome map floatlands
Biome map texture

Blue represents sea/lakes/rivers, green represents our ‘normal’ biome (take a look at the bottom right, you can clearly see some micro islands will form), yellow-ish is desert and white are mountains with our snow biome. I easly implemented rivers using custom made Growing Trees algorithm. Here is the first test I ever did (it looks like ice cream – don’t mind the colors):

First procedural generation test with color blending

Meanwhile Mito and Andrej remodeled some of our trees, created new concepts for our metal/niter/stone veins (we’ve been using old models and they were really outdated speaking of general design).


New veins sketches


3D models/render of the new concepts

After adding rivers system, new generator rules, grass and other natural objects, the world started to look familiar and appealing.
Current state of the New World.

In conclusion, we have also produced a short video showcasing the current state of the new world (note that floating islands are still missing in the video).

You’re all welcome to join us on Floatlands Discord server and have a chat with us.

Devblog #30

Preparing for SGC – slovenian games conference


We have been preparing for an upcoming conference SGC – Slovenian Game Conference which will be held in Ljubljana, the capital of our beautiful country. Event focuses on development, marketing and bussiness, there is also an indie expo meant for teams to showcase their game in progress: from mobile games to PC and VR. We prepared some T-shirts, posters and 3D printed model of our dreadful sheep which can be yours! You will also have an opportunity to try Floatlands and chat with us. See you there!

SGC promo material floatlands

promo material for SGC


3D printing


We delved into 3D printing a bit and prepared some animal models from the game for 3D printing and ordered some test prints. So far we’ve prepared and printed a model of the cute little sheep from the game. We’re also thinking about trying to print a rhino and a couple of deer.

3D print render lowpoly floatlands

3D print renders



Dev stream #2 – drawing new concepts & gameplay


Last friday we had our second live stream where Mito showed the process of creating concepts. He drew a couple of weapon sketches and there were even some good weapon ideas from our Twitch viewers that we tried out. In the second part of the stream Domen showcased some early gameplay footage. Check it out!


New rock concepts


With the environment and the world constantly evolving we have decided that its about time we replace the old nature assets with new and improved ones. So I made a couple of new rocks for each biome, trees are next in line and to spice it all up we’ll add even more nature elements in the game to make it look more alive and less monotone.

reworked concepts rocks floatlands

new concepts for rocks


New rock and tree models


We started reworking some assets from early development like the normal biome, since some of the assets in those biomes are still there from our prototype stage. So far we’ve modeled some new trees and some rock clutter.

new assets render floatlands

rendered models of new rocks and trees


Light & scan radar for drone


Wohooo, after much testing EGX Showcase build was finally ready. Few details were added on a scanning drone such as a light and a scan radar. Few new avoid manouvers will be added soon, so droid flight wont be repetitive.


Compiling the game


This week was slow for me in terms of development. I was mostly smashing my head fixing various bugs. I have fixed some inventory bugs and a couple of fatal crashes. Afterwards I have successfully built the working prototype of Floatlands so we could internally test out the gameplay. I have finished junk shredder aswell which will turn useless items into useful resources.


More about Floatlands:

Weekly update #29

Our first live stream


Me and Andrej have done our first live stream, explaining some core mechanics of Floatlands while showcasing the EGX Rezzed demo build. Andrej also did a quick tree sculpting for our new biome. Bear with us that this stream was our first one and we were pretty shy doing it. Check it out!


Better terrain generator


I have made some changes to the terrain generator. It allows water to be rendered, hills/mountains are more exposed now allowing us to create different types of terrain with ease.

terrrain generator lowpoly floatlands


Setting up Wiki pages


Started setting up Floatlands Wiki and worked on the item and main page. I prepared the template for the individual item’s pages and filled out some basic resource pages.


Trees for swamp biome


Modeled some trees for the swamp biome and made LOD’s and colliders.

trees swamp lowpoly floatlands


Creating a game build for development testing


This week was mostly about rushing to create a game build for mid-game development testing. A few changes were made in controller menu, but it still needs fine touches. New logic was implemented for drone movement, which is now completely physic based.


Shotgun close encounter, adding effects


These past couple of weeks I worked on pimping up Close encounter shotgun, added ricochet particle effects and blood effect. Otherwise, I just spent my time fixing bugs for upcoming demo build.


Reworking some older ideas


Since we’re frantically preparing the demo for the SGC event, there’s really no point of pumping out new concepts and content. Therefore its time to rework some of the older ideas. We’re dumping the wooden fences and completely overhauling the buzzard. The changes wont be extreme, but since we’re constantly evolving I think its appropriate we update the older assets as well.

updated design sketch floatlands


Weekly update #28

Spartan & Roman skins Andrej Krebs

I started this week by preparing a broken model of the dropship, so the players will be able to blow them up spectacularly and making collider models for the broken pieces. After that I carried on by adding more skins for the player outfits – the latest additions are Spartan and Roman like skins.

roman spartan skins lowpoly floatlands

Spartan and Roman like skins

I prepared some more cloth outfits and a few junk armour pieces. I also added a camouflage skin for the fine metal armour.

cloth camouflage skins lowpoly floatlands

cloth outfits and camouflage skin

Dropship destruction vili ikona

I’m still playing around with the dropship NPC, I even did some work on it through the weekend. Here are some key points:

  • Separating single script into many separate scripts
  • How dropship explodes
  • Adding explosion and smoke effects
  • Dissolve effect
  • Collision avoidance – so dropship doesn’t bump into something

This code may be used for future flying NPCs so it’s not good to spoil this fun by writing bad code. I can show you this clip of dropship destruction (stress testing):


Clouds & Flow Map Domen Koneski

Clouds are now animated/translated troughout the playable area using flowmap. A flowmap is basically a texture filled with various colors. Each pixel describes a movement vector by extracting red and green component of the pixel. The computation looks like this:

vector definition lowpoly floatlands

We’ve used Teck’s FlowMap Painter to generate nice and smooth flowmaps which can be easily imported in your Unity project. Check his other work aswell.

flowmap lowpoly floatlands


Cloud system is being spawned by a custom pooling solution, the only thing left is to create some weather scenarios – cloudy and less light, rain and storms. We can do this by changing the flowmap (which has more aggresive vector field) in real time.

animated clouds lowpoly floatlands

moving clouds

So we can conclude that a flowmap is a vector field.

Controls Menu tadej vranesic floatlands

This week my time was invested in creating Controls Menu. Finally some UI quirks that will put the whole game together nicely. First thing that comes to mind, when creating Controls Menu is KeyBinding, which lets user choose custom keys with Key Definition – KeyCode pair. We decided not too use Unity default KeyBinder-Input Manager and use our own system with .ini file that has [name, description, category, defaultKey, playerKey] connections, which gives us more freedom from the get-go.

controls menu lowpoly floatlands

controls menu

Swamp biome assets Mito Horvat

swamp assets concept lowpoly floatlands

swamp assets concept

With the swamp biome on the horizon, its time to spice it up and make the biome look distinguished from others. Currently I’m playing around with different color palettes to give the biome a specific atmosphere. Colors combined with all the right assets will create a really unique environment for the player to explore. Swamp biome will be littered with small ponds and tall trees. The flora will be very lush and the combination of huge trees and roots everywhere will create a very dense looking biome. We’ll also include swamp specific critters and animals, but we still have to brainstorm what would fit, any suggestions? Below is a collage of concept sketches of assets that will be added in the biome.

Weekly update #27

World map Domen Koneski

I’ve been working on a new ‘feature’ for the game – World Map. With this I have removed our initial idea of compass since you can now use your map to guide you troughout the world. The idea was to map out all islands with their positions as an icon but then noticed scaling and precision problems so I took another way of doing a world map.

world map simple lowpoly floatlands

world map WIP

The idea was to render the visible world to a rendering texture using ortographic (2D) camera. I had alot of problems zooming in, aligning the grid and moving the whole map with the mouse. The end result is great and intuitive.

world map finished lowpoly floatlands

finished world map

The map texture also has an edge detection algorithm on it for some image effects. Note that render texture can be wiped out when changing the level or programmatically pausing the whole application.

Clouds everywhere Domen Koneski

Skies in the game are empty so I started working on some more details, the first was adding some splats and details to the “cloud” cubemap, the second change is a cloud system with a pooling mechanism. When a cloud prefab hits something (e.g. an island) or is out of bounds it shrinks and is then sent back to pool ready to be reused. The system needs some more prefabs and more movement logic to it – cyclones (read: vector field) anybody?

clouds lowpoly floatlands

More skins Andrej Krebs

This week I made some more variations of armour sets that will be available as skins. I also added a clothes outfit that will be purely aesthetic. I added some paintwork to the wooden armour, some decorational bolts to the junk armour and made a coat and a hat for the aesthetical set. I also made a new, fine metal armour set, that will be available in a variety of finishes.

player skins lowpoly floatlands

more variations of player skins

Swamp biome concept Mito Horvat

I’ve decided to take a short break from all those numerous player armour sketches and to break the monotony I’ve started researching concepts for the next biome. The next in line is a dense swamp biome. Below you can see couple of speedpaintings I did of the enviroment. I’ve also experimented with different color palletes to portray a specifit mood for the biome.

swamp painting lowpoly floatlands

greenish swamp biome concept

Those type of islands will be covered in thick mist and tall and lush trees. Trees will have huge roots poking out of the ground, and long willow tree like branches. On the ground you’ll find swamp biome specific foliage and wildlife, and the landscape will be littered with ponds.

swamp painting lowpoly floatlands

dark swamp biome concept

Drone movement and destruction tadej vranesic floatlands

Scouting drone has finally got its smooth flaps movement. It is correlated with its speed – at desired speed flaps are perpendicularly to the line of drone sight, with speed increase they move backwards and with speed decrease they move forward.

drone moving flaps lowpoly floatlands

speed correlated flaps movement

Previously I showed you an example of scouting drone destruction and how it falls appart into pieces. This time you can check out the mining drone destruction – not as many destructible parts, but still pretty good.

drone destruction lowpoly floatlands

drone destruction

Dropship movement vili ikona

I got back to working on dropship movement, since it still needed some smoothness to it. It’s almost finished, so I can show you a bit of a sneak peek. Mostly I worked on tilt movement, PID controllers (Vector3 and Quaternion PID controllers) and cleaning up the code. Remember that this is still a WIP, but here is a short animation showing how it lands on an island.

dropship landing lowpoly floatlands

dropship landing

More about Floatlands: website, facebook, twitter, instagram

Weekly update #26

Ideas for armour sets & jetpacks Mito Horvat

I made a couple of different concept sketches for the armor sets that I mentioned in the previous blog post. From simple wooden planks tied on the player to welded metal plates that form a strong looking armor. Below you can see some of the examples (arms, legs and helmet).

arms legs head armour floatlands

sketches for arms, legs and head armour

This week I mainly focused on the player jetpack. I created various jetpacks that would fit into the game, and then create 3 different “skin” types that will include particle effects individual to each “skin”, and added modular pieces so they will differ from each other.

jetpacks sketches lowpoly floatlands

jetpack variations

Armour sets Andrej Krebs

After we got settled into the new offices and extended the weekend, I started preparing the gear and outfit models for the player’s 3rd person model. Mito prepared some sketches for me and I modeled wooden and junk metal armour sets so far. The armour sets are made as separate items the player will be able to equip: Head gear, body armour and leg armour. The jet pack will also be an item that will be equipped. The armour sets will also get more models as skins for the players to collect and wear proudly.

armour sets lowpoly floatlands

armour sets

Drone destruction tadej vranesic floatlands

This week was all about the way enemy drones react when they get hit by a bullet. Running away manouver really gives them a life-like feel. Another cool little quirk we added was, how drones fall apart when they are destroyed. The connections between parent/children parts are being disabled and a small “invisible” explosion is created, so that parts fall away from that destroyed position.

drone destruction lowpoly floatlands

drone destruction

Logic Gate system vili ikona

Lately I’ve been improving the Logic Gate system. I wish to make event-driven logic simulation, and it’s quite a hard thing to do. Why did I decide to do this? Because current implementation of logic gate simulation is really bad and I doubt people will be able to play with complicated logic. Unfortunately I can’t show you any pictures yet, but I can explain a little bit about the base components of current state though:

  • Pin – can be input, output or bidirectional
  • Connection – connects two pins
  • Element – element consists of many pins, can think and update state
  • Event – events are raised on changes, then processed when it’s time
  • ProcessingSystem – this system holds all those components and processes events

The hardest part so far has been building a correct simulation. A simulation that can be modified in real time – adding and removing elements, connecting elements, or pressing hubs on switch.

Recording voices for NPCs chris icon

Currently we are recording and reviewing different ways of incorporating voices for our NPC’s. When it comes to speech, we will not record out every single line, but we will try to bring reactions and emotions across. I have build a homemade vocal booth that will serve for recording the voices and sound-FX.

voc floatlands

Sound-FX will be partly recorded and partly created with synthesizers. For recording sounds we will switch between an instrument microphone (SM75) and a condenser microphone (NT1A).

instmic floatlands

Singal processing is important. Every recording will be enhanced and amplified. You can’t go anywhere without a Pre-Amp and my weapon of choice is a Golden Age Pre 73 MKIII.

preamp floatlands

Further sound processing will be done with plug-ins that I will demonstrate on a later update.

More about Floatlands: website, facebook, twitter, instagram

Weekly update #25

Scouting drone tadej vranesic floatlands

This week was intense, because there was no right way to make a mining drone beautifully stabilize after being hit. Finally we decided to include PID (proportional–integral–derivative) system. Yes, I know it sounds complicated, but all it does is try to minimize error over time and readjust the path. It worked like a charm, actually my new favorite thing about the game is hitting drones and watching them stabilize. The second thing I was playing with this week was “scout” drone, which can move its flaps now. Only a few more steps and a buzzing drone army will be ready!

drone flaps lowpoly floatlands

Flaps movement on scouting drone

Settings Domen Koneski

Floatlands will have predetermined graphics/game settings values (lets call them Low, Medium and High graphics) and of course a custom one. I have created external files for each graphics quality settings that are loaded at the start of the program with our own parsing algorithm.


The settings values look like this and can be changed without recompiling (for now a game restart is required):


To read values from the file (the values are stored in the memory in an array list) we simply call the following API calls which are reachable anywhere in the game code:


Junk recycler device Andrej Krebs

We had this idea of including a Junk recycler device, which recycles junk items the player will find lying around and turns them into condensed recycled junk pellets that can be used in crafting. I relatively quickly prepared a model of this device for game implementation, then I also revised item descriptions and fleshed them out a bit to be a bit more interesting and helpful. I am now looking over and organizing the crafting recipes, so we can later balance the crafting more easily.

junk recycler lowpoly floatlands

junk recycler

Dropship vili ikona

I decided to work a bit on the dropship and here’s a picture of the current state. Turrets already aim at you, motor particle effects are also in place, landing gear can open and retract, LODs are working. There’s still lots of work needed for it to become fully functional. I need to implement quadcopter-like physics, path planning, some realistic behavior and enemies dropping out of ship when landing. I would like to do it as soon as possible to show you some more goodies!

dropship behaviour lowpoly floatlands

aiming turret & dropship gizmos

Skins Mito Horvat

In the following weeks, we’ll add various modular armour pieces (skins) so the player will be able to personalize their character. There will be several different versions of the each possible armour piece (skin). Those will be divided into 4 categories: torso, limbs, helmet and jetpack. I’m still in the process of figuring out what would fit the best, but below you can see some quick and rough concept sketches.

modular armour lowpoly floatlands

modular armour pieces

More about Floatlands: website, facebook, twitter, instagram

UI: character menu & build mode panel Domen Koneski

Continuing with the UI, I have decided to implement a brand new character menu that includes all the player stats, player model and item slots for your dressing needs (will be implemented in the future). You can rotate your player model with the script that is provided below.

New character menu

I have also changed the looks of the Build mode to make it as simple as possible.


New build mode outlook


Generic mouse swipe script Domen Koneski

It is time to give away some code for those in need of a solution when you want to do something with the mouse gestures, in this case a mouse “swipe” gesture, e.g. you wish to rotate your character model in the character menu with your mouse. The script provided can be used in your projects, free of charge, and can handle multiple things:

  • Unity Event when moving the mouse in X direction only
  • Unity Event when moving the mouse in Y direction only
  • Unity Event when moving the mouse in XY direction
  • Knowing if the mouse is “down” on the selected raycastable panel

To make things work create a UI panel, hide the image (do not disable the component), select the image as raycastable and add this script. What you have to do now is to populate your Unity events with your custom function calls. Do not forget when calling your function via this script the function getting called must take one (for X or Y only events) or two (XY event) arguments type of float. The last thing is to mark the event as dynamic, see image below.

mouse swipe script

using UnityEngine;
using UnityEngine.Events;
using UnityEngine.EventSystems;
namespace Floatlands.UI
    public class MouseSwiper : MonoBehaviour, IPointerDownHandler, IPointerUpHandler
        public bool isHoldingDown;
        public Vector2 totalDeltaVector;
        public Vector2 deltaVector;
        private Vector2 prevVector;
       private Vector2 startPosition;
        private PointerEventData eventData;
        public SwipeSingleEvent OnSwipeXEvent;
        public SwipeSingleEvent OnSwipeYEvent;
        public SwipeDoubleEvent OnSwipeXYEvent;
       public void OnPointerDown(PointerEventData eventData)
            isHoldingDown = true;
            startPosition = eventData.pressPosition;
            prevVector = startPosition;
            this.eventData = eventData;
       public void OnPointerUp(PointerEventData eventData)
            isHoldingDown = false;
       void Update()
            if (isHoldingDown)
                Vector2 currentPosition = this.eventData.position;
                totalDeltaVector = currentPosition - startPosition;
               deltaVector = currentPosition - prevVector;
               prevVector = currentPosition;
               OnSwipe((int)deltaVector.x, (int)deltaVector.y);
                totalDeltaVector = Vector2.zero;
       void OnSwipe(int deltaX, int deltaY)
            if (OnSwipeXEvent != null)
            if (OnSwipeYEvent != null)
            if (OnSwipeXYEvent != null)
                OnSwipeXYEvent.Invoke(deltaX, deltaY);
    public class SwipeSingleEvent : UnityEvent<int> { }
    public class SwipeDoubleEvent : UnityEvent<int, int> { }


Outfits and speakers Andrej Krebs

Mito created some outfits concepts for “techies” that would distinguish them from the “farmers”. So this week I was occupied with modeling and weight painting the new outfits. They put more metal pieces on themselves as armour is made of junk pieces of sheet metal.

various “techies” outfits

After that I modeled propaganda speakers, which will appear in the world. The speakers will emit propaganda messages and other sounds.


propaganda speakers


Extra robot concepts Mito Horvat

Currently there is only one type of enemy robots. Simple humanoid machines that wield various weapon types (from snipers to grenadiers etc), they roam around and attack anything in sight. In the near future we’ll add sturdy, hard to destroy robots that will challenge the player. In addition, we’ll also add small spider like robots that will be quick and unforgiving with their melee attacks. Those enemies will surely test your aim. You can see the first glimpse of concept sketches below.

a different kind of enemy robots


Mining drone in action tadej vranesic floatlands

This week I’ve been playing around with drones, particularly “mining” drone which Andrej beautifully modeled. Mining drone will represent a fine touch to resource collecting. Upon destruction its loot will be dropped and ready for collection, which allows the player to gather resources faster. Tweaking its avoidance system makes it fly smootly regardless of any obstacles on its path. Finishing touches were also made for the drill rotation. More nuts and bolts next week.

mining drone in action

NPC battles vili ikona

Humans are already alive and fighting each other (Farmers vs. Techies). They have 3 different weapons for now: fists, single shot pistol and revolver. They can also melee attack with pistols!

NPCs fighting

I also just started working on ‘Hint nodes’, which will have different geometric shapes. Those hint nodes will provide information about the world – safe spots, danger spots, sniper spots and so on.

basic gizmos

More about Floatlands: website, facebook, twitter, instagram

Time for a new video? Sure is!Domen Koneski

It’s time to produce a new dev update in video format, introducing new Electricity system, Humans of Floatlands, Vendors and world improvements. Game is shaping up nicely and becoming more alive. Stay tuned for more stuff!

UI changesDomen Koneski

I have made a new UI redesign phase, combining similiar UI elements together and changing texts and images to so-called Signed Distance Field system. The only problem right now with the UI is the brightness of the environment – everything seems so bright in the middle of the day so it covers the UI and becomes invisible – to solve this problem I have to create a system that calculates overall brightness of the screen (by getting some of pixel colors and averaging the sum of color components) and change the color of UI elements using the calculated value.

Changed and simplified UI with a problem of bright environemnt, system in the works!

Scouting and mining drones concept Mito Horvat

I have decided to completely rework the drones in the game, since I wasnt really pleased with their look. Domen agreed with the revamp idea so I began sketching a couple of variations that would fit the game more. While I was doodling, I figured out it would be cool if we’d implement two different drones. The first one would be a scouting drone, simple looking aerial drone that would just fly around and stop occasionally to “scan” the area. The second one would be a mining drone, but instead of scouting the area, it would descend to the ground level and use the drill to mine rocks. Below you can see the concept sketches.

Scouting & mining drones concept

Since Vili is close to finishing the “farmers” AI we will soon implement the “techies” faction which means I’ll be responsible for creating outfits that would distinguish them from the “farmers”. You can see some of the concept sketches in previous blog posts. Domen requested more outfit variations and some helmets to characterize them more.


Techies outfit concept


New drone models Andrej Krebs

I finished up the player 3rd person character from the previous week and tested it. After that I imported and tested the animations for the enemy NPC robots and added the IK systems to the assault droid NPC, so Vili can later add them to the game. The droids now have similar IK features to the player’s 3rd person character like aiming, grounding and recoil. I also modeled two of the Mito’s new drone designs that will roam arround the islands.

Scouting & mining drones


NPC interactions vili ikona

A lot of work has already been done on Humans of Floatlands aspect of the game – NPCs. They already feel enjoyable and fun (see the latest dev video update). They can interact and react to the world and others NPCs as well.


For more curious readers, those are internal details of current Behavior Tree and Animator. (Caution, images are extra large)

Behaviour Tree


Bug Tracking vili ikona

We are close to delivering a working prototype so it is good to have a bug tracking system in place. Uptil now we were writting down bugs on paper which was okay. Now when the game is quite a large sandbox place a lot of bugs can occur so I started looking for a solid bug tracking software that is:

  • Easy to use interface, pictures of bugs supported
  • Visually appealing
  • Free

We decided to go with LeanTesting 

Some of the bugs already live on bug tracking software!

More about Floatlands: website, facebook, twitter, instagram


Vendors Domen Koneski

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 Andrej Krebs

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 Andrej Krebs

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_fist_lowpoly_floatlands.gif?resize  robot_player_lowpoly_floatlands.gif?resi

Human fighting animation  &  New robot player character


NPCs relationship & last seen position vili ikona

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 Mito Horvat

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


[font=arial]Procedural grass level of detail[/font]


[font=arial]The world outlook from farther distance kind of felt boring and dull. Some games just increase the fog level just to hide this dullness. There was zero detail in the distance so I started increasing draw distance for trees and rocks. I have created a new simple mesh (actually a rectangle with two triangles) and populated it with a simple grass cutout texture. I proceeded with creating procedural LODs, placing both simple mesh and complex in one spot, baking the same ones together in patches and adding UnityaEUR(TM)s LODGroup on top of that. The distance is busy now which enables us to decrease the fog level. LOD levels (for world objects) and other settings (such as shadows) are going to be tweakable via config file.[/font]




Busier look in the distance aEUR" more grass at the back, but with less detail.



[font=arial]Terrain Shader[/font]


[font=arial]I have also managed to create a color variety on the terrain itself by writing a custom terrain surface shader. The shader enables us to input three different colors aEUR" one for the lowest points of the island, second one is meant for middle/ground heights and the last one is meant for hills and mountain tops. To interpolate colors smoothly I have transformed the colors from RGB to HSL space and used this code bit for interpolation (_Middle is a float [0, 1] that sets the aEURoemiddle groundaEUR? height):[/font]

[/color]float3 interpolatedHSL = lerp(bottomHSL, middleHSL, h / _Middle) * step(h, _Middle);interpolatedHSL += lerp(middleHSL, topHSL, (h - _Middle) / (1 - _Middle)) * step(_Middle, h); fixed4 tintColor = fixed4(hsl2rgb(interpolatedHSL), 1);





Terrain shading with 3 different colors





[font=arial]Me and Andrej added a new kind of non-hostile NPCs to the world that actually have no purpose as regards to gameplay aEUR" they will only make skies more busy and immersive. They are called Prospecting drones. They will fly around the island, stopping at the rocks and try to mine them with their laser. Yes, you can destroy and scrap them, but why would you do that to these beautiful robot creatures?




Non-hostile Prospecting drone in action



Domen Koneski



[font=arial]Randomized human NPCs[/font]


[font=arial]Since there will be a lot of NPCs that will populate various settlements, we decided to make a system that randomizes the characters by using shape keys (blend shapes / morph targets, whatever your software calls itaEUR|) on the face to change different facial features of the character and effectively makes each character have a unique face. Of course the character will also have a variety of different outfits.




Randomized human characters



[font=arial]I started out by making a model with about average features and then modeled the extremes for every feature, so the game can blend between individual shapes, Then I made a script that randomizes the features and chooses a random combination of an outfit, shoes, a hat and facial hair. I also made a brand new animation rig for the human NPCs that will support the variety of animations that I have already started making for them. At the beginning of the week I concluded the work on aEUR~techiesaEUR(TM) buildings by finishing up the shop model.



[color=#444444][font=Roboto]Techies shop[/font][/color]


[font=arial]Andrej Krebs[/font]



[font=arial]Adding lamps[/font]


[font=arial]Every device that we have in our electricity starter pack needs proper implementation. Previously I worked on repair and charging stations, but this week I focused on bringing functionality to light lamps, actually two types of those lamps aEUR" wall lamp & standing lamp. A quick preview in the picture below:




A wall light lamp & a standing light lamp.



[font=arial]We have improved the indicators, so those basic electric components are considered done for now. In this example I filled up the generator with fat, and it started to generate electricity. Very easy!



[color=#444444][font=Roboto]Filling up the generator.[/font][/color]


[font=arial]Vili VolA?ini[/font]



[font=arial]Icons for electric devices[/font]


[font=arial]We are slowly finishing up the electricity which will be an exciting new addition to enhance the gameplay. The newly added electric devices will need icons to display them in the players HUD. Below you can see a set of new icons, including bolts which will have a special use in the game.




Icons for electric devices, wheat and corn.



Mito Horvat



[color=#000000]More about Floatlands: website, facebook, twitter, instagram[/color]



[font=arial]The Techies[/font]


[font=arial]I started implementing the second stage of humans of Floatlands aEUR" the Techies clan. In our previous updates we presented the Farmers clan, or rather buildings and props that they will be using. aEUR~The TechiesaEUR(TM) are innovative people that want to simplify their life with the aid of machines and technology. After the split they found shelter in old factories which they rebuilt and used as a center of their future settlement.[/font]




Techies settlement



[font=arial]The shelters and other buildings are constructed and carefuly fused together mostly from scrap materials they could gather. Strong metal foundations and steel plated walls are often reinforced with thick layers of metal plates to protect the inhabitants from the outside world. For example, a settlement will usualy consist of several living shacks accompanied with a clan vendor shop, and of course a large factory complex.[/font]




[font=arial][color=#000000]Continuing with dungeons[/color][/font]


[font=arial]I also made refinements to the dungeon system by adding itaEUR(TM)s own pathfinding using Unity3DaEUR(TM)s new NavMesh system that was introduced in the latest stable build (5.6.) aEUR" it allows you to bake and manipulate NavMeshes in realtime. The bad thing about the system is lack of good documentation so I had to figure everything out by trial and error.[/font]



Procedurally generated navmesh, including obstacles


[font=arial]Here is a quick video preview/dev vlog of features IaEUR(TM)ve been working on aEUR" Techies, Farmers and dungeons (currently caves only, including its procedural generation and navigation mesh system):[/font]





[font=arial]Domen Koneski[/font]


[font=arial]Electricity starter pack & Techies houses[/font]


[font=arial]IaEUR(TM)ve been putting the finishing touches on the cave and electrical devices. For the cave I made LODs (level of details models) and we added path finding meshes that mark walkable floors in the dungeons, so the NPCs can find their way. For the electrical system I made some lights, an animated charging station and a charge indicator that will be placed on various devices to show the charge level of the device. All electrical pieces also got their item models (models that show in the world when they are dropped by the player or as loot).[/font]




[font=Roboto]Electricity starter pack[/font]



[font=arial]After that I also made some structures and models for the Techies clan: two houses, a firepit, some clutter items that will be lying around and wheat that they will grow as their main food source under their growhouse.[/font]




[font=Roboto]Techies houses and clutter items[/font]




[font=arial]Andrej Krebs[/font]



[font=arial]Repair station implemented[/font]


[font=arial]Lots of electrical devices models needed implementation so I focused on the repair station (a device which heals a player). The animations for repair station work very smoothly aEUR" if you are hurt, you just need to step on it and the device starts repairing you. Remember, the station needs to be properly powered up by electricity or else itaEUR(TM)s going to do a poor job. This is a short preview of how it works.[/font]



I also added critters to the game aEUR" they were a bit difficult to implement, because they are so tiny and itaEUR(TM)s hard to navigate around an island. For now, critters in the game include rabbits and chickens. Rabbits will hop around on the grass and run away from scary things. Chickens will mostly be eating and showing off in front of you.



Rabbit and chicken



Vili VolA?ini


[font=arial][color=#000000]Props for Techies[/color][/font]


[font=arial]Techies will also come with their own set of unique props. You can see some of them on a quick concept sketch below.[/font]



[color=#444444][font=Roboto]concepts for Techies props[/font][/color]


Mito Horvat


[font=arial]Chris Plexidas joins our team[/font]


I recently joined the team and, as this is my first post here, I owe a few words on who I am. I am making music for 15-some odd years and have worked with a few bands over time, while still making my own stuff under the name aEURoeWhelpaEUR?. The past year IaEUR(TM)ve scored a few documentaries and launched aEURoeGhost AirplaneaEUR?, an electro-pop project with which we released our first EP. As an avid fan of videogames and catchy tunes I am excited to have the opportunity to score the original soundtrack for Floatlands.



[font=arial]As the previous dev logs suggest, I will be aiming for a vast ambient sound that will be gently modulated to give a feeling of unease while still feeding you with curiosity on what is behind the world of Floatlands. My major inspiration is the music of Boards of Canada, with a hint of Brian Eno and Jon Brion. But as Floatlands evolves, so will the music and I hope you will stay tuned for it.[/font]

[font=arial][color=#000000]You can hear some of my stuff on [/color][color=#000000]Soundcloud[/color][color=#000000] and you can always follow me on twitter [/color][color=#000000]@whelpsounds[/color][/font]

More about Floatlands: website, facebook, twitter, instagram.

[font=arial]Farmers village placement[/font]

[color=#000000][font=arial]WeaEUR(TM)ve been working on the Farmers village placement aEUR" placing various objects such as buildings, props and loot on an island. [/font][font='Open Sans']This was already showcased in our previous [/font][/color][font=arial][color=#000000]Youtube dev video[/color][color=#000000]. [/color][/font]

[color=#000000][font=arial]To spice things up IaEUR(TM)ve also added various props for villages, to enhance the whole aspect of having a primitive type of friendly NPCs. An example of this are harvestable corn, destroyable barrels, interactable squeaky doors and cozy firepit.[/font][/color][color=#000000]

[font='Open Sans'] The same will follow with our second aEURoeclanaEUR? of people, called Techies. They will also have the same set of buildings and props but with a twist.[/font]



Farmers village with cornfields


[font=arial]Dungeons are coming to life [/font]

[font=arial]ItaEUR(TM)s been a while since I started working on the dungeon system. You can check out what will the dungeon be by reading our Devblog 33 which explains its concept. In it we mention the first steps on how the dungeon generator will actually work aEUR" creating rooms and corridors then connecting them together. The first dungeon style will be a cave-like dungeon. Andrej created new cell objects which can tile correctly. The result is nothing special but itaEUR(TM)s a foundation for everything else.[/font]



Dungeon tiled cell objects


[font=arial]The next thing was to add vegetation and set the overall looks for caves. I started thinking and researching about vegetation in caves (I know, it is not so natural to spot patches of grass in caves, but we really want to include life into every aspect of the game). IaEUR(TM)ve made some rules where and how grass/moss and vines can spawn. I added some rocks and dripstones as well and lastly the puddle of water has also been added.[/font]



Overall looks of a cave system




Dungeon aEUR" cave and its ambient


[font=arial]Domen Koneski[/font]

[font=arial]Techies buildings & new cave entrances [/font]


[font=arial]I finished the corn I started working on last week, which has already been added to the farmer villages. The corn cobs can be picked from the plants and the plants react to the wind like other plants so far. I also made some new dungeon entrances that will lead into the proceduraly generated dungeons.[/font]



Revamped cave entrance with mist particle effect


[font=arial]After that I started working on the Techies settlement buildings. So far IaEUR(TM)ve made the greenhouse, where the techies will grow their food, and one of the houses.[/font]



Techies residence and greenhouse


I am now continuing the work on devices that will plug into the electric system, and I made an animated healing station, that will activate and start fixing playeraEUR(TM)s robot character when he steps in it.

[font=arial]Andrej Krebs[/font]

[font=arial]Electricity update [/font]

[font=arial]IaEUR(TM)ve been refining electric system, fixing bugs, and adding new components. ItaEUR(TM)s possible to switch buttons now and add fuel to the generator. A lot of electrical consumers will be added and their style will also be refined. Here is first glimpse of generator, battery, switches, lights and some wiring. The system will be flexible enough to add additional elements on the go, we will just need to brainstorm an idea, model and code the new element and thats it. We think electric system will be a very fun feature of Floatlands.[/font]



Electric system in action


[font=arial]Vili VolA?ini[/font]

[font=arial]Techies buildings concept [/font]


[font=arial]Below you can see some of the concept sketches for the Techies buildings that you will find around the world. They are constructed and carefuly fused together mostly from scrap materials they could gather. Strong metal foundations and steel plated walls are often reinforced with thick layers of metal plates to protect the inhabitants from the outside world.[/font]



Techies buildings concept


[font=arial]Mito Horvat[/font]

[font=arial]More about Floatlands: website, facebook, twitter, instagram[/font]

[font=arial]Humans of Floatlands in action[/font]

[font=arial]IaEUR(TM)ve started working on Humans of Floatlands aspect of the game aEUR" friendly zones on the islands that provide you with loot, quests, vendors and perhaps a little bit of action. Andrej did an excellent job modeling aEUR~FarmersaEUR(TM) buildings and my job was implementing them in the world.[/font]


[font=arial][color=#444444]Farmer shop[/color][/font]

[font=arial]The hardest thing is placing buildings, since they are large meshes that need to fit perfectly on a bumpy terrain. I wrote an algorithm that bruteforces an optimal position and rotation of an object to be placed on a terrain. It also checks if it collides with other objects so we donaEUR(TM)t have any weird placements inside other buildings. Next up: spawning various props, spawning NPCs, vendors and quest givers, loot spawning. A quick preview of how it works so far:[/font]

[font=arial]Domen Koneski[/font]

[font=arial]Farmer props[/font]

[font=arial]Continuing with the humans of Floatlands, I started to work on props that will spawn in the farming villages to add detail and make it feel more genuine. Haystacks, bales of hay, wooden barrels and carts are just some of the objects that you will find lying arround on a farm and will be placed around the proceduraly generated villages by Domen.



Farmer props: haystacks, bales of hay, wooden barrels and carts


[font=arial]Assets for electric system[/font]

[font=arial]I also made some assets for the electric system that Vili is implementing. These are various devices that generate, use or store electric power and connect together with cables, so I had to make connecting ports that will be placed on the devices and have wires plugged into them.



Generator, battery stack, light, charging station


[font=arial]Andrej Krebs[/font]

[font=arial]Electric system[/font]

[font=arial]There is a global graph where node represents an electric device (battery, generator, light.. ) and a link (cable connection). Links are bidirectional. When you modify the electric system (add a connection or a new device), graph gets rebuilt. With that I mean global graph is split into groups. Each group represents a single electric system.

Every device has a battery aEUR" there are two kinds of batteries: external and internal. External batteries give up energy, internal are parasitic and they keep it for themselves (they donaEUR(TM)t send it back to the network). Generators and storages have external batteries, electricity users have internal battery. Electric nodes/devices also have a transfer rate, which tells you how much energy they can transfer in one second. An example of what can be done so far with a battery, generator, 4-switch and a light:


ItaEUR(TM)s also easy to connect things in build mode:

1. Select first connector (cable is blue)
2. Select second connector and thataEUR(TM)s it (cable is green)



Connecting electric elements in build mode


[font=arial]Vili VolA?ini[/font]

[font=arial]Concept for electricity elements[/font]

[font=arial]Vili is currently working on electricity which we will add to the game very soon. He asked me and Andrej to come up with some concept sketches and some prototype 3D models. Since the electricity is still work in progress these presented elements will most likely be just placeholders and will be a subject to change in the near future. Players will be able to use electricity to illuminate the shelters and protect them with turrets. YouaEUR(TM)ll even be able to rejuvenate yourself with some of the components. Below you can see some of the electricity elements, from various hubs and switches to batteries and fuel generators. These will all be connectable with the cables system that is already in place.



Concept for electrical system elements


[font=arial]Since the electricity is still work in progress these presented elements will most likely be just placeholders and will be a subject to change in the near future.

Mito Horvat[/font]

[font=arial]More about Floatlands:


[color=#000000][font=arial]Furnace is a aEUR~machineaEUR(TM), that converts primitive materials, found in the world of Floatlands, to a more uncommon one. This conversion is defined by internal recipes and it takes time to produce.[/font][/color]


We have already added furnaces in the early stages of the development. Check them out HERE. They were obsolete and their design didnaEUR(TM)t fit properly with other objects in the game, so we managed to recreate a furnace model with revamped background functionality. We also added new particles for the furnace as seen below:



Furnace in action


[font=arial]Item stacking[/font]


[font=arial]WeaEUR(TM)ve seen a performance drop whenever you wanted to drop a lot of items out of your inventory. To optimize this IaEUR(TM)ve created a world item stacking, this means that nearby items with the same ID get merged. To add a sugar on top of it, IaEUR(TM)ve managed to increase the size of a stack aEUR" the bigger the stack, the bigger a certain item is in the game:




single item; smaller stack; bigger stack


[font=arial]Domen Koneski[/font]


[font=arial][color=#000000]We have decided to rewamp the electric system used in the game aEUR" you can have a look at our initial electricity implementation with generators [/color][color=#000000]HERE[/color][color=#000000]. Our new direction is to have cables and the whole system will be more dynamic as well. I was mostly designing & planning though, so not a lot of programming was done. Still, I managed to finish up the cable connectivity aEUR" the cable is done with cylinder bending shader (wrote by aEUR~MetapyziksaEUR(TM)), bending is done with cubic bezier (4 control point).



cables used for electricity



[font=arial]I also added capsule colliders through the existing cables, they are needed because cables will be destroyable (either in build menu or by a player raiding). Still lots of work awaits though, I have drawn some technical sketches of electronic devices, those sketches will then be retouched by Mito and finally 3D modelled by Andrej.[/font]




capsule colliders


[font=arial]Vili VolA?ini[/font]

[font=arial]Villager buildings[/font]


[font=arial]In preparation for adding humans to Floatlands I started modeling buildings for their villages. So far I made two barns, water tower, granary and a central firepit.




Villager buildings: barn 1, water tower, barn 2, granary




firepit with smoke particle effect



[font=arial]When making models for a game we also need to make LOD models (levels of detail) which get swapped when the player is further away to save system resources and so the world can be fuller. I start by making the most detailed model first and then copy it and start removing details in two ways aEUR" by hand and by using modifiers, depends on what works best for the given model.[/font]




LOD (level of detail) models for granary



[font=arial]The last LOD is usualy made from scratch, since itaEUR(TM)s usually just the general outside shape. After that, larger models like buildings also need a collider model, which is an optimized mesh that serves as an approximation for the physics engine.[/font]


[font=arial]Andrej Krebs[/font]

[font=arial]More about Floatlands:

Weekly update #16

[font=arial]Night-time improvements[/font]

[font=arial]I did a lot of tweaks on how the night actually looks. Before the lighting was dull was dull and weird and now the night has its own source of volumetric light aEUR" moon. We find it much better this way and sometimes you just have to stop and admire the beautiful scenery.



Floatlands night-time comparison with and without volumetric lightning.


[font=arial]To give you a more clear look of how drastically lighting and colors of the scenery change during a one day-night cycle, here is a quick day-night cycle preview:[/font]

We have also implemented fireflies and dust particles that will spawn randomly around the player to create a more immersive world. Naturally fireflies will also serve as some kind of small source of light.

[font=arial]Fireflies particle system[/font]

[font=arial]New biome: Scorched Forest [/font]

[font=arial]To make a more diverse world we have successfully implemented a new biome type called Scorched Forest. This was once a beautiful green land aEUR" a little jungle aEUR" with great trees and dense grass but the sudden change to the world burned/scorched everything down to the point vegetation adapted to it with its redaEUR(TM)ish color scheme.[/font]

[font=arial]Domen Koneski[/font]

[font=arial]Modeling trees for Scorched forest biome[/font]

[font=arial]Domen was working on a new biome, so I modeled some new trees for the flora and scenery of it. To anyone who is interested in how to make trees in Blender I prepared a quick tip[/font]



[font=arial]I start with a mesh that only has vertices connected with edges where the trunk and the branches go and then add a skin modifier and a subdivision surface modifier to thicken it out. I then thicken and slim down the branches by selecting vertices and using Ctrl+A to shape the tree further. At the end I add a decimate modifier to get the lowpoly look. The tree tops are sculpted to give them a rough shape and then also decimated for the final look.[/font]

[font=arial]Rabbit ragdoll physics[/font]

[font=arial]I finished the work on the rabbit at the start of the week, made some more animations and added ragdoll physics to it in Unity3D aEUR" let me explain my work process:[/font]


[font=arial]After I import an animated or at least rigged character I put it on my workbench scene and start with the default ragdoll tool which generates the basic ragdoll. This tool is primariliy intended for humanoid characters, but most vertebrates have similar bone structures so it can easily be modified. The tool opens a window, where you simply drag and drop the coresponding bones and it adds rigidbody, character joint and a collider to each of the added bones. This can be done manualy for strange creatures, but I find that the tool saves quite a lot of time and I just tweak the character joints settings and colliders so that it behaves like I want the creatureaEUR(TM)s anatomy to behave. Afterwards I add some extra joints and colliders to parts of the creatures that arenaEUR(TM)t covered in the tool, like the floppy ears of a rabbit in this case. I test the ragdoll continuosly during the entire process, by just running the runtime. The ragdoll is later enabled by a script in the game.



Testing rabbit ragdoll physics


[font=arial]I then continued working on critters and am now modeling chickens that will appear in the NPC villages.[/font]


[font=arial]Andrej Krebs[/font]

[font=arial]Concepts for villager assets[/font]

[font=arial]With the new content slowly pouring in, we will soon start adding the first humans into the world of floatlands. First on the list are aEURoethe farmersaEUR? clan. They will be easy to recognize by their rural styled wooden structures. The center of the settlement will be a large bonfire encircled by various buildings such as barns which will house animals, residental shacks with loot crates and beds inside and even a vendor which will sell materials and even rare items. There will be several quest givers nearby and NPCs roaming around doing their daily tasks and even chickens which will walk around the area.[/font]


[font=arial]Villager assets (bonfire, barn, cart)[/font]

[font=arial]Mito Horvat[/font]

[font=arial]More about Floatlands:[/font]


Weekly update #15

[font=arial]World changes[/font]

[font=arial]IaEUR(TM)ve focused primarly on optimizing and improving the floating islands. There is still work to do with adding new decorative nature elements such as tree stumps, tree trunks that are laying around the island and other eyecandy things.[/font]
[font=arial]I did alot of optimizations on the world itself. IaEUR(TM)ve managed to bake together procedurally generated stones, grass and other combinable objects, programmatically created LODs for them and pack them with UnityaEUR(TM)s standard LOD script/tool called LODGroup.[/font]



Procedural mesh baking and LOD generator


[font=arial]Here is an example of procedurally generated bunch of rocks with generated LOD levels for when being near or far with the camera/player (bear in mind the rocks behind the obvious changed one are static).[/font]


The other thing I did was to create a more beautiful environment for the father islands aEUR" the biggest one you will encounter in the game. Andrej subdivided the mesh of a generic father island for me and then I ran a set of simplex noises over the terrain/top of the island. We are really happy with the results!





[font=arial][color=#444444]Terrain manipulation using set of simplex noises[/color][/font]

[font=arial]And how it looks in-game:[/font]



Terrain manipulation in-game



Domen Koneski


[font=arial]Particle effects & Critters [/font]

[font=arial]Until now, our scene/world was missing those little things that you donaEUR(TM)t pay attention to, but they make the game experience better. So this week I was preparing various particle effects aEUR" some smoke and fire particles and a few dusty wind effects for different biomes. We also intend to add fireflies which will brighten up the night scene a bit. The efects were made with mesh particles, in order to work well with the poligonal look of the rest of the game instead of using the more traditional sprite particles.


[font=arial]Snow dust effect[/font]


[font=arial]Dropship exhaust smoke[/font]

[font=arial]I also started working on smaller critters that will inhabit the game, starting with a rabbit. The critters are similar to the other animals so far, but will be smaller and have less detail.


[font=arial]Rabbit hop animation[/font]


Andrej Krebs


[font=arial]Doors & windows [/font]

[font=arial]Recently we updated our build mode elements, but they still lacked windows and doors constructables to make the buildings look complete. So this week I implemented the missing elements and fixed some bugs.


[font=arial]Open windows and doors[/font]

[font=arial]I also made it possible to interract with those, you can open and close them! Like all other elements, these can also be upgraded to higher tiers.


[font=arial]Upgraded doors and windows[/font]


Vili VolA?ini


[font=arial]New biome concept [/font]

[font=arial]To further extend the world and add some variety, we will add new biomes. One of those will be a really dense and vast forest. To make everything seem diverse we had to come up with a list of unique assets to characterise the biome. Tall trees and lush foilage will populate these islands, and little sunlight will peak through the tree tops. HereaEUR(TM)s a quick concept sketch:


[font=arial]New biome concept[/font]

[font=arial]We played with the color palette to create a distinct mood, sun scorched grass and trees which will look very appealing once theyaEUR(TM)ll get added into the game. On the ground level you will find numerous rock shapes and sizes, tall grass and bushes and even new biom specific animals.


[font=arial]Biome assets[/font]


Mito Horvat



More about Floatlands:


Weekly update #14

[font=arial]Disclaimer: Please be aware that these ideas and concepts are a work in progress and will most likely subject to change.[/font]

[font=arial]THE HUMANS OF FLOATLANDS[/font]

[font=arial]To give Floatlands some more depth we have decided to add human NPCs in the game. NPC's will be split into clans which will be scattered around the islands. You'll learn more about the clans and their backstory as you'll interact with them via quests. We sat down, wrote some lore and started defining the factions:[/font]

[font=arial]The Farmers[/font]

[font=arial]The first clan will be more traditional, simple farmers who have shunned technology, because they blame it for the apocalyptic event that caused the world to break into floating islands. They live simple lives, rebuilding their settlements and farming the land for survival. They are a closed community with strict rules that prohibit outside technology and exploring dangerous forts of Floatlands.[/font]

[color=#444444]The farmers concept[/color][/font]

[font=arial]The Techies[/font]

[font=arial]The "techies" will be a second clan you'll encounter in the game. "The farmers" banished them from their settlement because of their reckless nature and progressive way of thinking. They are innovative people that want to simplify their life with the aid of machines and technology. After the split they found shelter in old factories which they rebuild and used as a center of their future settlement. The shelters and other buildings are constructed mostly out of scrap metal and concrete they managed to find in the area. For example, a settlement will usualy consist of several living shacks accompanied with a clan vendor shop, and of course a large factory complex.[/font]


[font=arial][color=#444444]The techies buildings[/color][/font]


To make the settlement seem alive there will be several NPCs walking around and doing various tasks, some of them will even have quests for you to complete. You'll be able to easily recognize them by their unique appearance. Instead of rustic and rugged clothes, they'll wear more neoteric clothes enhanced with various steel elements. For instance, the militia group that will frequently patrol around, will wear steel armor plates and helmets to protect themselves. Robotic/machine farmers will gather crops for food and even chop wood. If you'll need some supplies you will be able to stop by at the vendor and purchase clan specific equipment.


[font=arial][color=#444444]The techies NPC concept[/color][/font]

[font=arial]We also started researching ways to make random NPC characters, by dynamically blending different body shapes and facial features in combination with different outfits. This is made by making blend shapes which are then randomly blended inside the game engine or accessed and set individually.[/font]

[color=#444444]Random NPC characters[/color][/font]

[font=arial]Andrej Krebs, Mito Horvat[/font]

[font=arial]more about Floatlands[/font]

[font=arial][color=#3e3e3e]Part of our team attended the EGX Rezzed event in London to showcase and let people try Floatlands for the first time. If you managed to drop by and have a go at the game, thank you aEUR" we had a blast. We also took a 2 week break from the development to get some rest from hard work.[/color][/font]


You were able to find us at the Excalibur games booth alongside with the Dad quest, Jalopy, Laser disco defenders and Shoppe keep VR. The build that we had was pre-alpha but the audience still managed to enjoy the game. We have recieved a very positive feedback from the people at the booth. We also did a couple of interviews with various Youtubers and media journalists. You can find one of the first impressions HERE[color=#3e3e3e].[/color]


EGX Rezzed was a fantastic experience, the event was well organized and the variety of games you could try was overwhelming. Thanks to everyone that stopped by and tried the game, took the posters and gave us feedback. We even had the chance to meet many great developers and made a bunch of friends.



[font=arial]Domen Koneski (Game Director), Arvydas A 1/2 emaitis (Strange Fire CEO), Mito Horvat (Concept Artist)[/font]


[font=arial]Stay tuned for the next devblog![/font]

More about Floatlands:

[font=arial]Assembling the world[/font]

[font=arial]The world of Floatlands will consist of Clusters. Each Cluster has its own set of islands and debris. Island sizes and their biomes depend on the Cluster seed which spawns and deforms every island in there. This technique is very efficient, because if we want to load a game, we simply use the seed that created the Cluster, then we apply the changes to the Cluster (certain trees were chopped down, metal veins were mined, building elements were placed, etc.)[/font]


[font=arial]Island Cluster[/font]

[font=arial]The shape of the Cluster is not yet finalized, but what we have done so far is ready for showcasing to the public. It looks even better ingame![/font]



[font=arial]Domen Koneski[/font]


[font=arial]Floatlands will have procedurally generated quests. A quest is a gameplay feature where you will be able to interact with some NPCs, learn about the world, do a task and get rewarded with items and/or experience points (not yet implemented). There will be 3 types of quests available; gather, location (go somewhere/explore) and kill quests. Another feature of the quest system is that a certain quest can chain with the other one: first chop down some trees then explore the nearest island. This allows more immersive experience and more possibilities when building a quest. The system is very raw right now, but simple gather quests are working as intended.[/font]

Farmer quest giver[/font]

[font=arial]Quests will be triggered by talking to NPCs. These are friendly human characters that have a large role in quests and delivering a story. Right now we only have two, but we are planing to later add an NPC generation system, that will allow to us to procedurally generate human characters that will populate the world and make it feel even more alive.[/font]

Farmer NPC talking[/font]

[font=arial]Domen Koneski, Andrej Krebs[/font]

[font=arial]Robot NPC animations[/font]

[font=arial]I have mostly been preparing various animations for the enemy robots, to make them work in any situation. I added run cycles, crouch aiming and made a damaged version of all animations, so we can blend between normal and damaged animations, depending on how much damage they have already taken.[/font]



[font=arial]Robot notifying others of a danger[/font]



[font=arial][color=#444444]Damaged assault robot walk[/color][/font]

So far I have finished the animation for the basic assault droid, but I will add it to the other two I already made and will also serve as an animation list for other enemies we will make later. Right now I started copying and modifying the first animations to the other droid, that uses the same animation rig I created for most humanoid characters.



[color=#444444]Damaged grenadier robot strafe[/color]



[font=arial][color=#444444]Grenadier robot weapon check[/color][/font]

[font=arial]Andrej Krebs[/font]


To defend the camp you worked hard to build, you will need some sort of protection. You will be able to construct static defense turrets, that will help you repel enemy NPCs with ease. There will be total of 3 tiers of turrets, each tier being more sturdy and powerful than other. Here you can see a couple of really rough sketches I made that helped us pick the right turret shape and style to fit the game better.


[font=Gudea]After the short discussion with Domen, we picked the right turret style, and then I further expanded the rough doodles into quick concept sketches seen below.[/font]



[font=arial]Mito Horvat[/font]

[font=arial]more about Floatlands[/font]

For Floatlands we decided to go with a polygonal look, which means the models don't use smooth shading or textures and this gives the game a specific visual style. As my main tool for creating assets I use Blender, since it's supported by Unity, has great tools for modeling, rigging and animation, and I am personally very familiar and experienced with it.

[font=arial]Andrej Krebs[/font]


For most hard surface models I just model them freely with all sorts of modifiers and optimize them later or just retopologise them when I'm satisfied with the shape. I make different material submeshes, that can later be individually changed in Unity, I then add all sorts of chips and scratches with either boolean modifier or knife tool and add detail like rivets and various "damage patches". For simpler object I just model the mesh directly.

[font=arial]Foundation model with planks out of order. [/font]



[font=arial][color=#444444]Simple repair kit model[/color][/font]

When I make organic models I usually start by sculpting them with dynamic topology. (Using a graphic tablet helps with this step.) After that I have to reduce the insane sculpt polygon count to something reasonable that can be managed by a game. If I'm working on solid objects like rocks I often use decimate modifier, because it usually looks more chaotic than a manual retopology. If I'm working on more smooth organic models like animal characters I do a manual retopology, especially if I plan to rig and animate them later, because I need more control over placement of edges that I plan to deform later with a skeleton rig.

[color=#444444]step 1: Dynamic topology sculpt[/color]

step 2: Manual retopology of the rhino

For character and creature rigs the first thing I do is research some anatomy to know where the bones and joints should be placed and how they move. I try keeping the amount of bones down, to keep it simple and optimised for the game. I then make IK (inverse kinematic) control handles that make animation easier and more like controlling a marionette than just positioning individual bones on the timeline. I then bind it to a character or creature mesh and do some test animations to see where the rig breaks and fix it up and add some limitations (how far the joints can bend). The character's mesh is then finely weight-painted to make the deformations of the mesh with the bone look as good as possible.

step 3: Testing the rig with bones and IK control handles

Rhino taunt animation


[font=arial]After I had received a concept sketch I started making quick proxy models of all moving parts and checking how they fit and move together, then I continued the work with detailed models. I checked how the doors and landing gear open up and make sure there is minimal cliping (object going one through another).[/font]

[color=#444444]Airship sketch[/color]

Overall oustide shape

When the overall outside shape was confirmed, I started modeling detailed parts of the ship more or less by the proxy and concept sketch, building the ship model part by part. The moving parts will later be accessible to the programer who will handle them, so he can rotate the individual parts to open the doors, run the propelers and steer the engines.

[color=#444444]Moving parts & the overall outside shape[/color]

Once I was satisfied with overall shape of all the parts, I added different materials and details that made the ship look worn, damaged and patched up again. I added rivets and the occasional patch of sheet metal as patchwork over damage.

[color=#444444]Finished model[/color]

After the overall model was finished, I took on the LOD models (level of detail) which will replace the detailed model when the ship is further away from the player in order to save resources and keep the game running as smooth as possible even with more objects in the scene.

[color=#444444]LOD 2 model[/color]

LOD 3 model

The ship also needs collider models for all the parts. These are simplified models of the objects that will be used for Unity's physics engine, instead of the detailed models.

[color=#444444]Collider main part[/color]

Collider moving parts

[font=arial]To anyone who strives towards making 3D content[/font]

[font=arial]The best way to learn 3D is by doing and trying. A good way to start is by following tutorials on whichever part you want and try doing it yourself. Luckily there are tons of tutorials available on almost every subject. Every time you get stuck, first try to solve it yourself, but always remember that there is probably someone on the internet who already encountered and solved the same problem, so there is no need to reinvent the wheel.[/font]

3D art is a skill that takes practice like all other skills. No one is good right from the start, so don't be afraid to mess up, that is just part of the learning process. Sometimes it's better to just throw away or scrap a piece you're working on and start over. Just consider it a lesson on what not to do or what to avoid.

Learning everything is near impossible, that's why large studios have very specialized roles (modeler, texturer, rigger, animator...), but these are usually masters of their field. You can learn to understand most steps without completely mastering all the nuances or try a bit of all and then specialize and master one.

"Jack of all trades, master of none is oftentimes better than master of one."

  • Advertisement