Nothing showable yet, but I'm working on carrying treasure still! There are three types of entities involved: Carryables, Carriers, and CarryDestinations. Largely self-explanatory I think, but Carryables are things like treasures and food, Carriers are the Pikbugs themselves, and CarryDestinations are where the Carriers want to bring Carryables.
Each Carrier has a list of CarryDestinations, sorted by most to least desired target. When it's time for a Carryable to be carried somewhere, the Carryable asks every Carrier attached to it to vote on where they're going. Each Carrier has a vote weight (so some Carriers might have more influence on where a Carryable goes) which is added to the score of whichever CarryDestination they select.
When voting, the Carryable gives each Carrier a list of candidate destinations. This lets us abstract out "treasures go to one place, food goes to another" and possibly extend further. The Carriers will select the first CarryDestination on their priority list that is also in the list of candidates and vote for that.
Once all the votes are in, whichever CarryDestination has the highest score is selected as the destination. Relatively simple voting scheme that should hopefully allow for emergent behavior based on who grabs each Carryable.
Next Goal: Instructing Pikbugs to grab a treasure!
First Day | Previous Day | Next Day (Soon!)
