Hive Time

2019-10-31 Devlog

Buzz buzz!

Get ready for upgraded nurseries! These 4 cell upgrades give a significant boost to population limits and have a 20% chance to spawn twins. I have plans for adding some extra things to upgraded nurseries, but I want to give this time to settle before fiddling more.

Today's update also includes a big materials overhaul, where I unified most of the game's materials into one, and added a swatch texture/sprite atlas type thing to give variation. Based on my previous experiments with separating out mesh geometry based on material so that no meshes contained multiple materials, I expected this to have a big impact on the number of draw calls, but gains ended up being pretty small.

I haven't gotten to the bottom of it yet, but bees seem to be the current source of material changes (which is odd since they're two meshes with a material each now - some poking around seems to suggest that maybe the skeleton itself is resulting in a bunch of material changes/draw calls, but that makes no sense to me).

On the upside, this did give me the chance to throw some textures onto some of the game's flat surfaces, such as the blackboards in the map rooms and framed pictures in the nurseries. I had a blast painting a few baby bee drawings to adorn the walls of the upgraded nursery.


Full changelog:

  • Added upgraded nursery
  • Added chance for twins at upgraded nurseries
  • Added notice for manually paused production to production screen
  • Added detail textures to map rooms, upgraded map rooms, and nurseries
  • Added 'dual elevators' to object substitution list
  • Updated most meshes to use a single material (except for obstacles, bee wings, crown, and liquid resources)
  • Tweaked defender ai for small optimisation
  • Tweaked construction costs for workshop and map room upgrades
  • Removed show_coloured_floors setting (checkbox will linger until reset to defaults is pressed)
  • Removed unused materials
  • Removed invisible faces from resource storage cells
  • Fixed tweens not being removed properly from bees in stop_and_acquire_target()
  • Fixed bee lifetime distance travelled not being incremented properly
  • Fixed another case where production animations would not stop when all worker bees have left
  • Fixed collision mesh on upgraded nursery

2019-10-29 Devlog

Hark, a Hive Time update.

Today's update brings in a first pass on the production screen, which charts resources produced and available storage space over time. There are also some indicators to help explain why production might not be happening at any point in time, which hopefully will highlight the key factors involved in production (available destination storage, available source resources, and available workers).

There's some UI for managing production priority as well, but they're locked behind upgraded production facilities, which aren't in the game just yet.

Also included in this update are a few UX changes. Holding Shift now allows the last build action to be repeated, no matter when Shift was pressed. This removes the ability to repeat non-build actions like Info, but in exchange makes it more consistent/discoverable.

Holding Alt while a radial menu is up will now show shortcut keys if the "always show shortcuts" setting isn't enabled. In preview-140, that setting was "show radial shortcuts." The old setting will hang around until reset to defaults button is pressed or the settings file is otherwise cleared.

Last, but not least, the foraging screen now has a button for selecting/deselecting foraging zones. Previously this was an implicit state when exploration and pollination weren't selected, but that proved to be fairly difficult to read.


Full changelog:

  • Added explicit select/deselect button to foraging screen
  • Added first pass on production screen
  • Added music field to debug event selector
  • Added production history
  • Added shortcut visibility shortcut to radial menus (hold Alt)
  • Added reverse upgrade mappings, and upgraded cells to reverse storage mappings
  • Updated repeat shortcut to always use last build action when shift is held (regardless of when shift is pressed)
  • Updated order of bee radial menu items
  • Updated font of legend text in foraging, defence and activity screens
  • Renamed show_radial_shortcuts setting to always_show_shortcuts (old setting will linger until reset to defaults is pressed)
  • Fixed stop production animations not being used since payload target refactor
  • Fixed dying bees not stopping production animations
  • Fixed existing payload resource values being overridden when foraging or producing
  • Fixed isProducing logic returning true when non-workers were at a production facility
  • Fixed isProducing logic not paying attention to parent cell for multicell facilities
  • Fixed crash when trying to queue follow up events for effects without follow up events
  • Fixed radial menu shortcuts triggering debug keys

2019-10-28 Devlog

Buzz buzz!

Today's update adds a first pass on keyboard shortcuts for radial menus. Eventually I'd like to use an underscore to indicate shortcut keys (like traditional mnemonic shortcut indicators), but I've been noticing some weirdness with underlines and custom fonts in Godot that I haven't found a solution for yet. I need to rework a bunch of how radial menus are constructed at some point in the future, so hopefully I'll be able to find some workarounds when I do that.

There's also a fix for the repeat shortcut allowing multicell upgrades to be built on single cells, destroying anything adjacent to them. Pretty sure that's a regression, but it was easier to just fix than track down.


Full changelog:

  • Added shortcuts for radial menu items
  • Added settings option for showing radial menu shortcuts
  • Updated right mouse click to select radial menu's back item if one exists
  • Fixed inspect mode shortcut (Space) working when in a radial menu or a cell-specific screen
  • Fixed scene input handler gobbling up radial menu right mouse clicks
  • Fixed repeat upgrading not respecting multi cell requirements
  • Fixed debug shortcuts working when in a radial menu or a cell-specific screen

2019-10-27 Devlog

Hi friends!

Today's update includes all the late changes I made in the lead up to exhibiting at Kid I Am yesterday.

All cells now have info screen background images (some of them probably need a bit more polish, and there's room for upgraded cells to have alternate backgrounds, but that's optional polish), and the vignettes for production facilities now have foreground bees (storage cells would too if any of them had vignettes attached). There's still a lot of event art to go in, but this feels like a nice art milestone to have crossed :)

Peter's been working on a new music track for negatively framed events. The previous one felt a bit too ominous/gloomy for stuff like "Cold season" reducing foraging rates or fruit flies stealing a tiny bit of honey in "Like the tiny, deadly wind," and this new one is a much better fit. The old one is still hanging around for really bad events like "Bear attack" or the worst outcome from "Wasp attack."

The event went well, and Hive Time got a steady stream of attention. I was initially planning to show off three of my games (In the Snowy Winter's Wake, Honeycomb CRUNCH and Hive Time), but at the last minute the organisers offered me the use of some more space, so I brought along a game I did contract work on and love very much (The Away Team) and a second computer for Hive Time.

Kid I Am attracts a much younger audience that I'm used to exhibiting for/observing, so the event gave an interesting opportunity to see which parts of the game are interesting to kids that might not be up to reading the tutorials, or who haven't been exposed to the diversity and representation concepts that end up emerging from population dynamics. Some were just happy to make and destroying empty cells (I leaned over and used the give-lots-of-resources cheat when I saw that happening), but plenty more were able to grok what was going on and get into growing a hive/researching new stuff to build.

My favourite moments came from watching older people assisting younger people (whether that was a parent reading to a child who wasn't quite up to reading it themselves or an older sibling letting a younger sibling drive while they both planned out how to expand and grow). It's a pretty nice feeling to see your work bring people together :)


Full changelog:

  • Added bee sound count setting (should allow people on high end systems to have lots more bee sounds before Godot's audio engine starts losing its marbles)
  • Added WIP pass on new generic bad event track (old bitey and the worst wasp attack outcomes still use the previous one)
  • Added vignette/info background images for wax, pollen, nectar, honey, and jelly storage cells
  • Added worker foreground image for wax assembler and honey vignettes
  • Added horizontal pop to foraging screen buttons when selected
  • Added upgraded map room info screen
  • Removed placeholder foraging zone text
  • Removed automatic freeing of resource/research/construction particles and rely on maxDuration instead (increases efficiency of particle scenes)
  • Removed bad event music from 'Rainy season' event
  • Reduced target zoom level in zoom_to_cell() to initial zoom
  • Updated map room info screen to mention exploration and foraging tiles
  • Updated barracks description to mention outside deployment
  • Updated ambient sound loops to use ogg encoding
  • Fixed typo in defence menu legend
  • Fixed typo in upgraded map room description
  • Fixed typo in 'Late night rendezvous' vignette

2019-10-24 Devlog

Hello, hive friends!

Today's update brings in a bunch of changes to the tutorial system. Tutorials now have an activity indicator (botton left of the HUD) with some details about the currently active tutorial. Clicking on this will bring back the tutorial prompt, so no more forgetting what you had to do. The new implementation automatically handles situations where tutorial goals have already been met, so if you build your first Wax Assembler before the tutorial prompts you to, then you'll get a slightly different tutorial prompt talking about Wax Assemblers immediately followed by the next one in sequence - no more stalling the tutorial by building stuff out of order.

These changes make use of the existing effect handling system, and pushes all the tutorial events into the normal special event list rather than the tutorial list they used to live in. All of the previously hard coded event conditions are now handled via json effect definitions and use existing event condition handling code to determine what is/isn't done.

The changes to tutorials here will eventually find their way into other/new events to allow for event structures that weren't previously possible. Making events that ask the player to achieve a goal (whether that's within a timeframe or not) are now nice and simple. This could be explicit in a way that's visible to players (I might change the negative branch of the slug outlaw chain to have the slugs hassle your hive until you've produced the jelly they want, and at that point, an event exposing the option to give it to them would appear), or it could be implicit in a way that's not visible to players (the Old Bitey event might be replaced with a "Here comes Old Bitey" event that shows a countdown to when he arrives, and in turn triggers different events depending on the number of deployed Defenders). This stuff's been on the roadmap for a long time, and I'm looking forward to diving in next time I do an event writing pass.

Today's update will probably be the last before the Kid I Am expo this weekend, so fingers crossed I've nailed all the critical bugs :D


Full changelog:

  • Added research and research_locked conditions
  • Added activity indicator for active tutorial
  • Added invisible condition effects that track the current state of conditions and fire follow up events once met
  • Added condition controlled variants to tutorial events to reflect to tutorial goals already being met
  • Removed all hard coded tutorial tracking
  • Removed some unused variables
  • Removed logging of condition checks
  • Fixed case where special events could end up added to the special event queue multiple times
  • Fixed embarrassing pollen related typos
  • Fixed flicker in build preview materials
  • Fixed tutorial conditions being added to the back of the special event queue (didn't happen in live builds)
  • Fixed follow up events for effects without conditons not being added to the special event queue (didn't happen in live builds)
  • Fixed roles sliders not being unlocked and roles not being added to population HUD (didn't happen in live builds)
  • Updated tutorial events to trigger condition effects that then call the following tutorial
  • Refactored tutorial handling to include tutorial events in the special events list

2019-10-20 Dev stream

Cheese plays Hive Time and works on some bug fixes on

2019-10-20 Devlog


Today's update brings in more defence mechanics and the long awaited foraging screen, which means that with the exception of exits, every cell in the hive exposes some kind of interactivity. Since these are a bit intertwined and deep reaching, I've held off on my usual update schedule until I had it all nailed down.

There's still a lot of work left to do and both of these will definitely need a bunch of tweaking, but the current state of the game has every major mechanic I'd had on my wishlist for the full version of Hive Time back when I decided that I was going to make a full version of Hive Time. I don't see much value in subscribing to popular conventions regarding labels for development phases (in my experience, every project is different and you only box yourself in by trying to apply the exact same structure to everything), but this is a hugely significant milestone for Hive Time - moving forward, I'll be able to inform gameplay and balancing decisions with a more complete picture of what the game as a whole is/will be.

The new foraging screen displays an abstract map of the immediate area around the hive, with players able to extend the visible range by sending out exploration parties (which currently costs 8 Foragers) to nearby unexplored foraging zones. Revealed zones become available for selection for foraging, with the number of Map Rooms determining how many foraging zones can be selected at any given time. With an upgraded Map Room, pollenation teams can be sent out to explored zones to add bonus resources to a zone that become available after a short period (depending on how far away that zone is from the hive). Foraging zones also have a danger rating, and foraging in a dangerous zone can result in Foragers and Worker bees dying. The most dangerous zones can self-pollenate, potentially resulting in resources beyond Pollen and Nectar being attainable.

The new defence mechanics allow Defender bees to be deployed from the hive to protect Foragers and Workers as they gather resources in dangerous foraging zones. If a Worker or Forager would have died, a Defender will take the hit instead, making the Defender population a consumable resource and safety net for gathering high risk resources.

These new bits are still a bit rough round the edges so far as UI goes. The foraging screen feels pretty cluttered, and the explore/pollenate buttons don't clearly communicate when they're in their pressed state. I'm feeling like it's ready to go out though, and I can tweak things over the coming week ahead of exhibiting at Kid I Am next weekend.

Balancing-wise, I think that new Defenders will need to automatically replenish defenders deployed outside, since right now, it requires far too much micromanagement in order to be useful (I've already written code for this, but wanted to give it more testing before putting it in a build). The threat of dangerous zones probably needs to be increased as well so that high Forager spawn rates aren't a free pass to ignore foraging dangers.

Looking ahead, exploring foraging zones will also unlock certain kinds of events, and I'm toying with the idea of limiting the buildable area in order to allow foraging zones adjacent to the hive to be converted into usable hive space (not sure that this one is worth the effort, but it's an idea I'll let bounce around until I can noodle through all the ins and outs).

Also included in this update is a new background track from Peter, called Quiet Evening, which we've currently popped in as backing for the game's credits as well. As usual, here are some thoughts from Peter on the new track:

"I wanted to find a way of getting the ukelele to feature more in a piece after using it in Beeginnings and the Queen's half-life celebration, which some how led me to this slightly bluesier piece for the background. I'm continuing my theme of being inspired by parts of the day for background pieces - I like the idea that the music sort of implies a passage of time even if it's not part of the gameplay. The foragers have come home, the night shift has started and the bee bartender is handing out advice to a lovesick builder on his 3rd cup of nectar."

There are a lot of other miscellaneous tweaks and fixes (some of which are addressing things spotted during today's dev stream and don't address problems that were present in any live builds), so have a look over the changelog. Particularly of note, construction related AI should now be behaving properly with regards to leaving construction sites immediately after construction is completed.


Full changelog:

  • Added background to defender map
  • Added background to foraging map
  • Added placeholder foraging menu script
  • Added upgraded maproom model
  • Added foraging screen
  • Added cheat (F) for setting all unexplored foraging zones to explored
  • Added ACTIVITY_LEAVE_AND_DIE behaviour to bee AI
  • Added bumble fallback for when foragers can't find an exit or valid foraging zone
  • Added foraging resource boosts from pollenated foraging zones
  • Added death chance for foraging in dangerous zones
  • Added outside deployment options to defence screen
  • Added legend to defence screen
  • Added handling of bee costs
  • Added some sanity checks for when saved cooldown costs from old saves get out of sync with current game data
  • Added sanity check for when saved populationCount is not equal to the number of saved bees
  • Added bee costs to resource list
  • Added QuietEvening background music track
  • Added upgraded map room
  • Added map room upgrade research option
  • Added defender AI for outside deployment
  • Added defender death in place of foragers in dangerous zones when defenders are deployed
  • Added locking/unlocking of foraging screen pollenation button depending on whether upgraded maprooms are present
  • Added transition between menu music and QuietEvening when viewing credits
  • Added +12 to all storage from throne upgrade
  • Added inventory fluff for defenders exiting the hive
  • Added sounds to defence menu's deploy and recall buttons
  • Added reset to deploy slider when opening defence menu
  • Added reset to explore/pollenate actions when opening foraging menu
  • Tweaked size of defence map
  • Tweaked some more things to hopefully address music transition pop
  • Tweaked research costs for workshop upgrade and throne upgrade
  • Tweaked building costs for workshop upgrade
  • Updated bee hover event to use correct sound name
  • Updated Barracks description to mention defence management
  • Refactored tempRole handling
  • Refactored forage resource collection to be more generic/reusable
  • Refactored hex and line drawing functions into draw_funcs library
  • Refactored resource list logic into resource list scene
  • Refactored build_mappings scene management
  • Removed auto play on menu music until after user volume is set function to work around delay in volume setting
  • Removed some logging
  • Fixed workers and builders not taking breaks when no workshops exist
  • Fixed workers and builders lingering at completed construction sites
  • Fixed research costs indicators not always updating
  • Fixed log output suggesting that saves failed when they didn't
  • Fixed unprotected tiles not being cleared when cells are destroyed
  • Fixed possible crash when mousing over destroy options (shouldn't have been present in a live build?)
  • Fixed upgraded maproom floor UV
  • Fixed more bees than exist getting deployed when deploying less than the full population twice
  • Fixed deploy slider showing higher than available population values after deploying
  • Fixed saved file hover state preventing foraging tiles from properly receiving mouse over events
  • Fixed dangerous foraging tiles not being tracked properly when loading a save
  • Fixed crash when trying to resolve deleted bees
  • Fixed deployed defenders not being properly undeployed when undergoing role swap
  • Fixed bee lifetime stats not using new resource list properly

2019-10-11 Devlog

Buzz buzz!

Today's update brings in some new features for inspecting and keeping track of bees. When in "inspect bee mode" (space or the button middle bottom of the screen), clicking on a bee will now bring up a radial menu that allows some extra numbers to be viewed (right now, how far bees have travelled in their life, how many times they've exited the hive, and how much of each resource they've foraged or produced), and an option to have the camera follow a specific bee.

There are also fixes for a few misc bugs, including a fairly hefty one where workers and builders would only bumble if no workshops were present that was introduced a couple of days ago. Whoops!


Full changelog

  • Added radial menu for bees
  • Added bee lifetime info pop-up
  • Added bee follow camera mode
  • Added lifetime travel, exit, and payload tracking for bees
  • Added 'fake' build mode for invisible radial menu placeholders
  • Updated position of bee details pop-up
  • Updated bee details to show "flowers" as the destination for foraging bees outside the hive
  • Fixed bad processing of jelly production multipliers
  • Fixed bad processing of nectar harvest multipliers
  • Fixed cells and bees not getting mouse over events when closing radial menus
  • Fixed bee details pop-up shifting slightly when panning
  • Fixed cooldowns being misapplied on saves from prior to preview-120 (would have prevented thrones from being upgraded)
  • Fixed bad cell type ids from saves from prior to preview-120 (saves from preview-120, preview-121, and preview-123 will be weird, but hardly anybody downloaded those)
  • Fixed crash when a worker tries to check payload target on an exit
  • Fixed builders and workers bumbling when there is stuff to be built

2019-10-09 Devlog

Hey hive friends!

Super small update today to fix a problem with foragers not dying in preview-120. I also added in a fix for a case where Worker bees would not progress below Builder behaviour when construction was in progress regardless of whether construction sites were already full or not. Last, but not least, there's a fix that will hopefully address cases where event music would not play when queued.


Full changelog:

  • ​Fixed foragers not dying (sorry, bee friends)
  • Fixed music fade tween sometimes staying active forever
  • Fixed worker bees getting a bumble target when construction sites are full
  • Tweaked which research requires an upgraded throne room

2019-10-07 Devlog

Buzz buzz buzz buzz buzz buzz buzz!

Another slow week for published updates, but a pretty productive week for me.

The biggest addition in this build is the new Bee Activity screen, which allows the idle and active state of bee populations to be reviewed. This helps identify possible areas for efficiency increases and potential problems. Very early on, I'd hoped that this would be inferrable by observing the hive, and for a dozen or two bees, it nearly is. As the hive grows and it becomes pretty much impossible to track individual bees, and the ebb and flow of role populations is just as hard to see.

I'm on the fence at the moment about how much direct advice/information this screen should give players, since I want players to feel like they can pursue their own strategies and discover what works/what doesn't rather than have me tell them a single way to do things. I'm sure I'll do a lot of iteration, but for now, I think it's a good start.

The Bee Activity screen is exposed from the new Throne Room upgrade, and currently unlocks jelly related research options (providing upgraded workshops are present). The current research and building costs require a hive that's got storage cells and upgraded workshops, and I'm hoping that this will break up the sense of the upgraded workshop just unlocking everything.

Peter's popped in a new music track that plays during the "Midlife Crisis" event that triggers when the current Queen reaches half her lifespan, and has this to say about it:

"For halfway through the queen's life we wanted something a little bit more celebratory. I created a more upbeat, folksy tune which uses the queen's motif (which also appears in Beeginnings, Peace, the main menu music among others) in the bass line (and later on piano). The tune takes on a momentarily more uncertain tone in its second half. I didn't want it to be all smiles, after all, being halfway through life has implications."

Last, but not least, on top of a bunch of other misc fixes and tweaks, I've added a small UX update that I've been meaning to do for a while: having vignettes be cleared when right clicking on their activity indicators (previously, that would just remove the activity indicator, leaving no way to get rid of the vignette itself without clicking on it or waiting for it to go away). I know that currently, the small pool of vignettes makes them a little annoying for some players. I hope that this won't stop people from checking them out from time to time, but I do appreciate that having them forced isn't so much fun.


Full changelog:

  • Added throne upgrade
  • Added bee activity screen to upgraded throne room
  • Added activity and idle descriptons for activity screen to role_descriptions.json
  • Added min_population_space and max_population_space conditions
  • Added panel behind resource screen graph
  • Added WIP halfabee music track to 'midlife crisis' event
  • Added bumble count and role tracking to bees
  • Added type to activity indicators
  • Added new radial menu icons for upgrade build options
  • Added radial menu icon for activity screen
  • Removed log error regarding bee role 'all'
  • Removed unused wall material
  • Updated research requirements to add dependencies on upgraded throne room
  • Updated research descriptions to reflect new changes
  • Updated music player to set volume to -80db when a music track ends in hopes of fixing music fade in pop
  • Updated music player to play a random background track when loading a game
  • Updated lost_brethren effect to give a maximum of 20 bees
  • Updated 'friends we didn't know we had' event to use the min_population_space condition
  • Updated vignette activity indicators to clear cell vignette when dismissed
  • Updated workshop upgrade info text to mention cell screen
  • Added throne upgrade info text
  • Fixed worker bees never descending below production priorities when construction is in progress
  • Fixed worker and forager bees sometimes dying while travelling to/from the hive
  • Fixed possible crash when debug event handler processes an event with no conditions
  • Fixed stock_swap effect consuming as many source resources as possible regardless of how many target resources are generated
  • Fixed events with no conditions always failing condition checks
  • Fixed queen midlife and queen twighlight flags being reset when loading a game
  • Fixed resource reserve slider icons staying transparent when slider is enabled
  • Fixed costs not being applied when upgrading cells
  • Fixed crash when construction of a throne completes (never happened in a released build, as initial throne construction is forced)
  • Fixed janky shadow edges
  • Refactored radial menu handling code to reduce duplication for upgraded cells
  • Reduced the amount of time that builder and worker bees will hang around at a construction site after construction is complete
  • Tweaked layout in the population menu
  • Tweaked base throne model to be visually distinct from upgraded throne
  • Moved cell list to upgraded workshop