Devlog #3 - Build System & Dragging

Posted by Ponzel on 2025-06-18

Hello everyone!

Today I want to show you the building system we developed for our next game. If you’re new here and want to know what the game is about, check out Devlog 1.

Goals

HavenCraft is a third-person sandbox town-building game.

So what should the building system be like for such a game? When you’re building a town from this perspective, it’s important that…

  • You have to create a lot of buildings, so you should have some tools to build the town quickly. Some players are more in it for the management than for the building, so there should be some tools to get it done more quickly.
  • You should have a decent amount of freedom to build the buildings how you like them. If you’re just stamping down pre-made buildings, it would not be sandbox.
  • There should be some decoration elements for players who like to get into that. Things like curtains, carpets, etc.
  • The building system should be easy enough to use.

Grid-Based

The first thing we decided is that the building system has to be grid-based for this game.

With our game, there are many good reasons for grid-building:

  • Grids are less finicky. Some games do free-form building really well, but it would be annoying to build 3 or 4 buildings in them quickly in the free-form mode.
  • A lot of players like grids. We saw this in InfraSpace, which was free-form at first, but we had to add a grid because so many people wanted to build even more straight than our angle tools allowed.
  • Grids are easier to program. That’s the truth and we’d rather spend that time on village management gameplay.
  • Not everything has to be grid-based. In InfraSpace, train lines especially looked good if they were nice and curved and the same could be true for this game. As long as it’s still easy to build for the player we could have some elements off-grid.
  • Grid-based building keeps the door open for all kinds of future features. What if we want to add terraforming? Water simulation? An advanced lighting system? Player-made ships? A ton of features get a lot easier to program and more efficient to compute if the building system follows a grid.
  • No promises yet, but a feature like copy-paste would be a lot easier to make work with grids.
  • It allows for better optimization. Sometimes you see especially free-form sandbox games struggle with big player builds. That’s because every placed object has to be treated as a separate object when rendering. When you do grid-based building, you can do things like grouping all floor tiles into one big floor box, making it easier on the graphics card.

Dragging

So, how do you make it easy to build houses a little more quickly?

One thing we added is the ability to drag building elements, check it out:

Currently, we’re playtesting a drag distance of 12 meters in each direction, so you can place up to 144 building pieces at once.

Dragging everything

Once we implemented the first prototype of the dragging system, we noticed how good it feels to play with it and then we wanted to expand it to all kinds of other building elements. The first step was things like stairs and roofs, which are diagonal in their nature, so they should be dragged diagonally:

Then we thought, why stop here? If we have the dragging code already, why not just enable it for furniture?

So now you can also drag things like chairs, tables, and other furniture:

But what about things on the terrain? Dragging furniture on a grid-aligned terrace is nice, but the terrain height is not grid-aligned so how do you easily build and drag on it?

We made it so that dragging on the terrain automatically snaps to the proper terrain height, so you can easily build fields even on slopes:

Pipette

During my time playing building games, I’ve come to love the pipette feature. It took some getting used to, but if you’re regularly playing building games, you should really try the pipette in the games that have them!

Basically, you can look at any construction element and then press a key to select it for building.

Currently, it’s set to the Q hotkey, so it’s easy to reach.

Other ideas

Do you have other ideas about how to make the building system easy and powerful? We’ve played many building games in our time, but not as much as you, the community. Let us know if there is a building tool you’d love to have, so we don’t miss any opportunities here.

Thanks for your time and see you soon!

Subscribe by Email Discuss on the Forum
Imprint Privacy EULA

Copyright © 2025 Dionic Software.

All Rights Reserved.

Copyright © 2025 Dionic Software. All Rights Reserved.