polygons

DT: Personal Space II

Hey everyone! Progress on Alpha 22 continues! Over the last few weeks, Engineer Albert has been working hard to make water’s infrastructure thoroughly robust, in anticipation of using it for gameplay in later alphas. However, if we made a desktop Tuesday about that this week, there would be very little to see: just the absence of the horrible water body merging errors, and a bunch of brand new errors in edge cases. Let’s save that for another week. Instead, let’s talk about a feature he did revise with your feedback between Alphas 20 and 21: improved spaciousness!

Personal Space, Improved

Recap from the video:

  • One of the reasons we’re really grateful to be developing Stonehearth in early access with all of you is because your feedback allows us to change the game for the better while it’s in flight.
  • For example in Alpha 20, we added hearthling awareness of their personal space. If hearthlings were in spacious interior areas, their happiness improved. If they were in cramped corridors, they got cranky. We did this by casting a series of rays out from the hearthling’s head, and using these to form a polygon around them. If this polygon was fully formed, the hearthling would consider their surroundings spacious. If the volume of the polygon decreased, they’d be unhappy.
  • Soon after releasing this, we got feedback from many of you that creating the polygon centered around the hearthling meant that they’d always be upset if they spent any amount of time in the corners of otherwise spacious rooms, leading many of you to put your beds, workbenches, and other furniture in the center of rooms. While cool, this was not at all what we intended! We want you to put your furniture wherever you want! So engineer Albert went back to work to refine the algorithm to allow for a more flexible interpretation of personal space.
  • There are several ways we could have accomplished this. For example, we could have allowed the polygon to squash itself like a really flexible water balloon: as long as there was enough room for all the volume to fit, the hearthling would still feel unconstrained. This, however, didn’t feel right to us, because people really do feel claustrophobic in long, but narrow corridors.
  • So instead, Albert went for a hula-hoop model, very similar to the one stonehearth discourse user agon described: one in which hearthlings are satisfied with their personal space only when they have the full and unsquashed polygon around them, but in which they can stand anywhere in the polygon that they want.
  • In A21, for example, your hearthlings can sleep in corners and still feel spaciousness as the room around them is large enough to contain their polygon. Rooms that used to feel cramped in A20 are now perfectly fine, as long as they’re big enough overall to fit the hearthling’s whole polygon. However, in small rooms and narrow corridors, the edges of the polygon get clipped, leaving them feeling appropriately cramped.
  • Kudos and thanks to agon, yetichow, hyrule_symbol, gilth, superjes, genboom, fitzik, and more on the discourse for talking through a number of options, to MichaelHandy and Bruno Supremo who sent us screenshots of the effects of personal space on their cities, and to Kythandra for sending us a magnificent underground city against which to test the effects of tiny rooms on hearthlings happiness. Though it’s possible this change might have come out in our own playtests, we’re biased towards our own designs so it’s often much easier to see the things we need to fix through your eyes. So thanks again for helping us make the game stronger through your experiences and insight!

 

Other Announcements

Our Thursday stream should happen as usual this week at 6:00pm PST. Artist Malley is working on a bunch of animations; let’s see what he’s got for us next!

Desktop Tuesday SHOULD happen next week as usual, but we are moving offices down the peninsula over the weekend, so there’s a chance it may be delayed depending on what happens to all the equipment, internet connectivity, etc. Stay tuned!