Files
VRyHungry1/kanban_tasks_data.kanban
T
algodoogle 5e0b58a984 add kanban
2026-07-16 15:52:34 +01:00

168 lines
6.0 KiB
Plaintext

{
"categories": [
{
"uuid": "bf4ec62e-526e-4027-876f-0b22bd17f79a",
"title": "Task",
"color": "569eff"
}
],
"stages": [
{
"uuid": "94333de9-ebf5-4f38-b95b-9477f4bb9dde",
"title": "Todo",
"tasks": [
"eee1990e-f957-4499-84b6-e68003fcb78e",
"854c7e1e-7521-4bcd-83ff-bb3fecec3142",
"4ab36c89-a377-4f25-86a1-ac276aadf4a2",
"cde44fb1-3fdf-4ea0-8267-d28d894e4e7d"
]
},
{
"uuid": "211e4050-31cd-4425-a2ba-8ca56b4764cd",
"title": "Doing",
"tasks": [
"d9cebd68-792e-4d01-a916-7df5f128b4a8"
]
},
{
"uuid": "fab8a81b-7ca9-4026-96bb-ed66ea58ef2e",
"title": "Done",
"tasks": []
}
],
"tasks": [
{
"uuid": "eee1990e-f957-4499-84b6-e68003fcb78e",
"title": "Implement YAML-based Recipe System & Static RecipeManager",
"description": "Description: Move all recipe definitions out of hardcoded scripts and into a centralized recipes.yaml file. Create a static RecipeManager class to load this file at startup and handle recipe lookups (including handling symmetry so that combining A + B is the same as B + A).",
"category": "bf4ec62e-526e-4027-876f-0b22bd17f79a",
"steps": [
{
"details": "Create recipes.yaml with structures for combining, cooking, augmenting, chopping, and rolling.",
"done": false
},
{
"details": " Create static RecipeManager that parses the YAML on game start.",
"done": false
},
{
"details": "Implement RecipeManager.getCombination(item_a, item_b) which returns the resulting product regardless of input order (symmetry).",
"done": false
},
{
"details": "Implement lookup helper functions for other recipe types (e.g., get_cooking_recipe(item_id)).",
"done": false
}
]
},
{
"uuid": "854c7e1e-7521-4bcd-83ff-bb3fecec3142",
"title": "Create Interactive Counter Stations (Chopping, Rolling, etc.)",
"description": "Description: Implement a base Counter class (and/or specific station child classes like ChopCounter, RollCounter) that interact with the player. These stations should query the RecipeManager to see if the placed item can be processed and require a \"work\" threshold to be met via hand gestures (action inputs) before converting the item.",
"category": "bf4ec62e-526e-4027-876f-0b22bd17f79a",
"steps": [
{
"details": "Station detects placed FoodItem.",
"done": false
},
{
"details": "Station queries RecipeManager to check if a valid recipe exists for the interaction type (e.g., Chopping).",
"done": false
},
{
"details": "Implement a \"work\" accumulator that increases when the player performs hand gestures/inputs.",
"done": false
},
{
"details": "Item converts into the recipe output once accumulated work reaches the required threshold (e.g., work: 50 for lettuce).",
"done": false
}
]
},
{
"uuid": "4ab36c89-a377-4f25-86a1-ac276aadf4a2",
"title": "Implement Plate Container System & Dynamic Combination Logic",
"description": "Description: Create a Plate item that acts as a dynamic container holding a list of FoodItems. Expand the combination logic so plates can accept specific items (e.g., adding Chips to a plate with a Hamburger to make a combo, or adding Cheese to a hamburger on a plate to toggle its has_cheese attribute).",
"category": "bf4ec62e-526e-4027-876f-0b22bd17f79a",
"steps": [
{
"details": "Plate class holds a list of FoodItems.",
"done": false
},
{
"details": "Implement logic for adding items to the plate, checking if the plate's current contents can legally accept the incoming item.",
"done": false
},
{
"details": "Support both appending new items to the plate (e.g., [Hamburger] + [Chips] -> [Hamburger, Chips]) and augmenting existing items on the plate (e.g., toggling has_cheese = true on the burger).",
"done": false
}
]
},
{
"uuid": "cde44fb1-3fdf-4ea0-8267-d28d894e4e7d",
"title": "Implement Dirty Plates & Sink Station",
"description": "Description: Add a state to plates to handle the cleaning loop. Plates should become \"dirty\" after being cleared by a customer. Dirty plates must be cleaned at a Sink station before they can be used again.",
"category": "bf4ec62e-526e-4027-876f-0b22bd17f79a",
"steps": [
{
"details": "Add is_dirty boolean property to Plate.",
"done": false
},
{
"details": "Add is_dirty boolean property to Plate.",
"done": false
},
{
"details": " Create a Sink station interaction.",
"done": false
},
{
"details": "Processing a dirty plate in the Sink resets is_dirty to false and makes it usable again.",
"done": false
}
]
},
{
"uuid": "d9cebd68-792e-4d01-a916-7df5f128b4a8",
"title": "Implement Multiplayer Synchronization (Network Architecture)",
"description": "Establish the client-server (or P2P) networking model for the game. Focus on syncing critical game state: physics objects (FoodItems), player actions (gestures/work progress), and station states (Chopping progress).",
"category": "bf4ec62e-526e-4027-876f-0b22bd17f79a",
"steps": [
{
"details": "Choose a networking model (e.g., Server-Authoritative or Peer-to-Peer).",
"done": false
},
{
"details": "Implement basic state synchronization for FoodItems (Position, Rotation, and state changes like is_dirty).",
"done": false
},
{
"details": "Synchronize player gesture/work progress across all clients (so players see the same progress bar on stations).",
"done": false
},
{
"details": "Ensure \"Authority\" logic: Determine who owns the RecipeManager data and how conflicts are handled (e.g., if two players try to grab the same item).",
"done": false
},
{
"details": "Test latency handling for high-frequency inputs like the \"wave arms\" gesture.",
"done": false
}
]
}
],
"layout": {
"columns": [
[
"94333de9-ebf5-4f38-b95b-9477f4bb9dde"
],
[
"211e4050-31cd-4425-a2ba-8ca56b4764cd"
],
[
"fab8a81b-7ca9-4026-96bb-ed66ea58ef2e"
]
]
}
}