KCDS 0.2.3 (work in progress)

A work-in-progress build of milestone 0.2.3: crafting, cooking, gathering and dice ruled by the server and seen by every player. The milestone stays open; parts of it still wait for live acceptance, and the next 0.2.3 build follows as 0.2.3.1.

Servers need the 0.2.3 server as well. The launcher updates itself to 0.2.3 on the next start.

Highlights

  • Smithing seen by everyone (#193). The forge, the sparks, the glowing workpiece, the smith's tools and sounds show in every game; one smith works a station at a time, and a late joiner finds the station as it is.
  • Alchemy seen by everyone (#194). The brewer's table, the herb in hand and the table's sounds show in every game; one player per table.
  • Crafting through the server (#87, #88, #89, #90, #267). Opening a station, starting a batch or a workpiece and finishing it ask the server (craftingStarting, craftingStarted, craftingCompleting, craftingCompleted, craftingEnded). Each alchemy step is checked against the ingredients the server holds; the game's failed potion ends a batch as failed, a broken workpiece ends failed, and a session left halfway settles with what it kept. Crafting.recipes, Crafting.cancel and recipe learning from the SDK.
  • Custom recipes and stations (#221, KCDS). A server adds its own recipes and stations; a recipe can need learning (Crafting.learnRecipe, forgetRecipe, knowsRecipe) or a sketch the player reads.
  • Cooking pots (#92). Every stew pot's stock is the server's: players eat from a pot with the game's own spoon animation, a pot's fire and look follow its stock, and resources refill, poison and disable pots (CookPot).
  • Herb drying, smoking and cooking (#229). Everyone sees them with their results; the game's AI queue works again with other players in the world, so the game's own activities (washing at a tub, sitting down) run as they should.
  • Gathering (#91). Herb picks go through the server, and plants regrow for everyone.
  • Dice (#93, #270). Two players play the server's dice match at the game's own table: they sit down with the game's animation, throw in step, watch each other's dice, joker dice and the game's badges included; players nearby watch the cup. "Play dice" shows only on servers whose resource runs the tables (the dice resource ships with the server).
  • Item config (#262). A server's item config sets the game's own weights, prices, stats, alcohol, decay time and ammunition damage, and limits how many units a player holds; the inventory, shops and containers show the limit in their own max column.
  • NPCs fight back (#60). A struck NPC attacks its striker (npc.fightsBack, on by default for people). Not finished: after a few swings the game's own brain can still pull it out of the fight.

Known gaps

  • Milestone 0.2.3 is not closed; issues stay open until their live acceptance.
  • An NPC's whole fight (#60), the replicas' look of a slowed, injured player (#47) and a broken workpiece seen live (#89) are still being worked on.