folklorelabs / pockest-helper

Pockest Helper is a browser extension/addon that tracks and automatically cares for Street Fighter Pockest Monsters.
11 stars 1 forks source link

[Bug] Auto-care doesn't work for the new target after failing initial target #96

Closed techygrrrl closed 2 months ago

techygrrrl commented 3 months ago

I had targeted for Zangief, went away for a weekend (neglecting my monster since the computer wasn't left on), so auto-care wasn't able to work. When I got back, I noticed the dropdown no longer showed Zangief in it, but it was enabled and showed only a subset of monsters (probably only ones attainable from the current state), and I was able to choose a new target. I chose Dhalsim. I was on the yellow polka dot egg.

Since I was able to choose a new target, I assumed auto-care would work for this new target. It does not work, and the game reset to the egg purchase screen. I'm assuming that means it died. I saw the grey symbol near its head, no ducks like in SF6 so I don't think it was stunned yet. The stun counter was close so I assumed I would've seen it in its stunned state, but it did not live 6 hours after stun, the game reset to the egg purchase screen. Is the 6-hours after stun assumption still correct? Or did something go wrong in the auto-care logic? Any idea what happened?

This is the target plan:

{
  "monsterId": 4008,
  "planId": "Y6ARS",
  "statPlanId": "SSSSSS",
  "planAge": 6,
  "autoPlan": true,
  "autoFeed": true,
  "cleanFrequency": 2,
  "feedFrequency": 4,
  "feedTarget": 6,
  "autoClean": true,
  "autoTrain": true,
  "autoCure": true,
  "matchPriority": 0,
  "stat": 2,
  "autoMatch": true,
  "cleanOffset": 0,
  "feedOffset": 0
}

These are the logs for this monster's lifetime as well as the monster before it. Not sure if there's something off about the hatching events:

Care log for previous monster (Poison, success) & current failed monster (Zangief, then Dhalsim) ```json [ { "logType": "hatching", "timestamp": 1721424417000, "monsterId": 3, "monsterBirth": 1721424417000, "eggType": 6 }, { "logType": "meal", "timestamp": 1721424425751, "monsterId": 3, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 1 }, { "logType": "meal", "timestamp": 1721424427548, "monsterId": 3, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 2 }, { "logType": "meal", "timestamp": 1721424429190, "monsterId": 3, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 3 }, { "logType": "meal", "timestamp": 1721424430960, "monsterId": 3, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 4 }, { "logType": "meal", "timestamp": 1721424432178, "monsterId": 3, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 5 }, { "logType": "meal", "timestamp": 1721424433393, "monsterId": 3, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "training", "timestamp": 1721424434976, "monsterId": 3, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 110 }, { "logType": "age", "timestamp": 1721428380823, "monsterId": 1002, "monsterBirth": 1721424417000, "monsterBefore": { "age": 1, "exchange_time": -62135596800000, "exchange_time_par": 0, "garbage": 0, "hash": "0003-dSvVgxBC", "live_time": 1721424417000, "live_time_d": 1721424417000, "max_memento_point": 0, "memento_flg": 0, "memento_hash": "", "memento_name": "", "memento_name_en": "", "memento_point": 0, "name": "ぷみ", "name_en": "Wiggles", "power": 110, "speed": 0, "status": 1, "stomach": 6, "technic": 0, "training_is_fever": false, "training_time": 1721467634000, "training_time_par": 0 } }, { "logType": "meal", "timestamp": 1721438863522, "monsterId": 1002, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "meal", "timestamp": 1721453263634, "monsterId": 1002, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "age", "timestamp": 1721467617723, "monsterId": 2007, "monsterBirth": 1721424417000, "monsterBefore": { "age": 2, "exchange_time": -62135596800000, "exchange_time_par": 0, "garbage": 5, "hash": "1002-YLyllNZK", "live_time": 1721424417000, "live_time_d": 1721424417000, "max_memento_point": 0, "memento_flg": 0, "memento_hash": "", "memento_name": "", "memento_name_en": "", "memento_point": 0, "name": "もそもそ", "name_en": "Squirmy", "power": 110, "speed": 0, "status": 1, "stomach": 6, "technic": 0, "training_is_fever": false, "training_time": 1721467634000, "training_time_par": 99 } }, { "logType": "cleaning", "timestamp": 1721467620254, "monsterId": 2007, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 6 }, { "logType": "meal", "timestamp": 1721467622020, "monsterId": 2007, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "error", "timestamp": 1721467634580, "monsterId": 2007, "monsterBirth": 1721424417000, "error": "undefined" }, { "logType": "training", "timestamp": 1721467836981, "monsterId": 2007, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 156 }, { "logType": "training", "timestamp": 1721511315516, "monsterId": 2007, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 169 }, { "logType": "age", "timestamp": 1721554034524, "monsterId": 3010, "monsterBirth": 1721424417000, "monsterBefore": { "age": 3, "exchange_time": -62135596800000, "exchange_time_par": 0, "garbage": 11, "hash": "2007-mnfnfkFJ", "live_time": 1721424417000, "live_time_d": 1721424417000, "max_memento_point": 0, "memento_flg": 0, "memento_hash": "", "memento_name": "", "memento_name_en": "", "memento_point": 0, "name": "ウパー", "name_en": "Forte", "power": 435, "speed": 0, "status": 1, "stomach": 1, "technic": 0, "training_is_fever": false, "training_time": 1721554515000, "training_time_par": 96 } }, { "logType": "cleaning", "timestamp": 1721554037191, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 12 }, { "logType": "meal", "timestamp": 1721554038760, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 1 }, { "logType": "meal", "timestamp": 1721554041085, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 2 }, { "logType": "meal", "timestamp": 1721554042547, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 3 }, { "logType": "meal", "timestamp": 1721554045110, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 4 }, { "logType": "meal", "timestamp": 1721554046534, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 5 }, { "logType": "meal", "timestamp": 1721554049214, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "training", "timestamp": 1721554517068, "monsterId": 3010, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 196 }, { "logType": "exchange", "timestamp": 1721554519706, "monsterId": 3010, "monsterBirth": 1721424417000, "egg_get": false, "egg_hash": "0003-qYaoQCHI", "egg_id": 3, "egg_name": "黄水玉のタマゴ", "egg_name_en": "Yellow Polka-dot Egg", "egg_point_per_after": 32.01, "egg_point_per_before": 29.11, "get_egg_point": 290, "get_memento_point": 0, "is_spmatch": false, "memento_get": false, "memento_hash": "", "memento_point_per_after": 0, "memento_point_per_before": 0, "target_monster_hash": "3003-vpjFpQoJ", "target_monster_id": 3003, "totalStats": 1453, "target_monster_name_en": "Mirth" }, { "logType": "cleaning", "timestamp": 1721561240105, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721568420508, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721568442825, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721575696310, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721590937946, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 2 }, { "logType": "meal", "timestamp": 1721597253778, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 5 }, { "logType": "meal", "timestamp": 1721597255723, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "training", "timestamp": 1721597731660, "monsterId": 3010, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 210 }, { "logType": "cleaning", "timestamp": 1721598153637, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721605355894, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721611620697, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721612613982, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "error", "timestamp": 1721617046415, "monsterId": 3010, "monsterBirth": 1721424417000, "error": "SyntaxError: Unexpected token 'I', \"Internal S\"... is not valid JSON" }, { "logType": "cleaning", "timestamp": 1721619817843, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721626020173, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721627020109, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721634223946, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721640420154, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "error", "timestamp": 1721640931762, "monsterId": 3010, "monsterBirth": 1721424417000, "error": "undefined" }, { "logType": "training", "timestamp": 1721641146844, "monsterId": 3010, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 210 }, { "logType": "exchange", "timestamp": 1721641149059, "monsterId": 3010, "monsterBirth": 1721424417000, "egg_get": false, "egg_hash": "0003-qYaoQCHI", "egg_id": 3, "egg_name": "黄水玉のタマゴ", "egg_name_en": "Yellow Polka-dot Egg", "egg_point_per_after": 35.3, "egg_point_per_before": 32.01, "get_egg_point": 329, "get_memento_point": 0, "is_spmatch": false, "memento_get": false, "memento_hash": "", "memento_point_per_after": 0, "memento_point_per_before": 0, "target_monster_hash": "3001-bcOuNZGT", "target_monster_id": 3001, "totalStats": 1647, "target_monster_name_en": "Scowler" }, { "logType": "cure", "timestamp": 1721641150775, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1 }, { "logType": "cleaning", "timestamp": 1721641426261, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721648629153, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721654854602, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721655874249, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721663076695, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721669254481, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721670334473, "monsterId": 3010, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "age", "timestamp": 1721683618214, "monsterId": 4037, "monsterBirth": 1721424417000, "monsterBefore": { "age": 4, "exchange_time": 1721727549000, "exchange_time_par": 48, "garbage": 1, "hash": "3010-ooEcyIcX", "live_time": 1721424417000, "live_time_d": 1721424417000, "max_memento_point": 0, "memento_flg": 0, "memento_hash": "", "memento_name": "", "memento_name_en": "", "memento_point": 0, "name": "タツジン", "name_en": "Virtuoso", "power": 1051, "speed": 0, "status": 1, "stomach": 6, "technic": 0, "training_is_fever": false, "training_time": 1721684346000, "training_time_par": 97 } }, { "logType": "cleaning", "timestamp": 1721683620134, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721683621854, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "training", "timestamp": 1721684347313, "monsterId": 4037, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 345 }, { "logType": "cleaning", "timestamp": 1721690875431, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721698020717, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721698078794, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "training", "timestamp": 1721746661786, "monsterId": 4037, "monsterBirth": 1721424417000, "is_ferver": false, "type": 1, "up_status": 230 }, { "logType": "exchange", "timestamp": 1721746663688, "monsterId": 4037, "monsterBirth": 1721424417000, "egg_get": false, "egg_hash": "0003-qYaoQCHI", "egg_id": 3, "egg_name": "黄水玉のタマゴ", "egg_name_en": "Yellow Polka-dot Egg", "egg_point_per_after": 40.67, "egg_point_per_before": 35.3, "get_egg_point": 537, "get_memento_point": 1344, "is_spmatch": false, "memento_get": false, "memento_hash": "4037-ovtcPpje", "memento_point_per_after": 26.88, "memento_point_per_before": 0, "target_monster_hash": "4092-pzusoJlb", "target_monster_id": 4092, "totalStats": 2689, "target_monster_name_en": "Captain Sawada" }, { "logType": "cure", "timestamp": 1721746665434, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1 }, { "logType": "cleaning", "timestamp": 1721748529419, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 7 }, { "logType": "meal", "timestamp": 1721755621047, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 3 }, { "logType": "meal", "timestamp": 1721755622467, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 4 }, { "logType": "meal", "timestamp": 1721755624029, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 5 }, { "logType": "meal", "timestamp": 1721755625650, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721755732681, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721762935058, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721770019854, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721770138557, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721777340843, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721784420538, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721784600591, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "training", "timestamp": 1721789878564, "monsterId": 4037, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 253 }, { "logType": "cleaning", "timestamp": 1721791860510, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721798819901, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721799063874, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721806266276, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721813220293, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721813468535, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721820671837, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721827620836, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721827874554, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "training", "timestamp": 1721833079641, "monsterId": 4037, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 276 }, { "logType": "exchange", "timestamp": 1721833082261, "monsterId": 4037, "monsterBirth": 1721424417000, "egg_get": false, "egg_hash": "0003-qYaoQCHI", "egg_id": 3, "egg_name": "黄水玉のタマゴ", "egg_name_en": "Yellow Polka-dot Egg", "egg_point_per_after": 48.73, "egg_point_per_before": 40.67, "get_egg_point": 806, "get_memento_point": 2015, "is_spmatch": false, "memento_get": false, "memento_hash": "4037-ovtcPpje", "memento_point_per_after": 67.17, "memento_point_per_before": 26.88, "target_monster_hash": "4102-wpDoRkXg", "target_monster_id": 4102, "totalStats": 4031, "target_monster_name_en": "Felicia" }, { "logType": "error", "timestamp": 1721836329695, "monsterId": 4037, "monsterBirth": 1721424417000, "error": "TypeError: Failed to fetch\n at yf (chrome-extension://ikilomhljdaidkcklkmgmlmjjbghbilb/assets/index.jsx.15eae010.js:40:2321)\n at Lm (chrome-extension://ikilomhljdaidkcklkmgmlmjjbghbilb/assets/index.jsx.15eae010.js:40:6298)\n at chrome-extension://ikilomhljdaidkcklkmgmlmjjbghbilb/assets/index.jsx.15eae010.js:47:9181\n at chrome-extension://ikilomhljdaidkcklkmgmlmjjbghbilb/assets/index.jsx.15eae010.js:47:10012" }, { "logType": "cleaning", "timestamp": 1721836554099, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721844617999, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721844619316, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721851820794, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721856420724, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721859023208, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721866226703, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721870820528, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721873428983, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "training", "timestamp": 1721876280641, "monsterId": 4037, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 299 }, { "logType": "cleaning", "timestamp": 1721880632472, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721885221045, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721887834576, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721895038061, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721915611506, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 2 }, { "logType": "meal", "timestamp": 1721915612771, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 5 }, { "logType": "meal", "timestamp": 1721915618840, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "training", "timestamp": 1721919481311, "monsterId": 4037, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 322 }, { "logType": "exchange", "timestamp": 1721919483713, "monsterId": 4037, "monsterBirth": 1721424417000, "egg_get": false, "egg_hash": "0003-qYaoQCHI", "egg_id": 3, "egg_name": "黄水玉のタマゴ", "egg_name_en": "Yellow Polka-dot Egg", "egg_point_per_after": 58.84, "egg_point_per_before": 48.73, "get_egg_point": 1011, "get_memento_point": 2528, "is_spmatch": false, "memento_get": true, "memento_hash": "4037-ovtcPpje", "memento_point_per_after": 100, "memento_point_per_before": 67.17, "target_monster_hash": "4090-LatxvlCI", "target_monster_id": 4090, "totalStats": 5056, "target_monster_name_en": "JP" }, { "logType": "cure", "timestamp": 1721919486277, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1 }, { "logType": "cleaning", "timestamp": 1721922839046, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721928479192, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721930099258, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721937314395, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721942880498, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721944559430, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721951820436, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721957279462, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721959080568, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "training", "timestamp": 1721962739707, "monsterId": 4037, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 345 }, { "logType": "cleaning", "timestamp": 1721966339846, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1721971620797, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1721973600029, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1721993596706, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 2 }, { "logType": "meal", "timestamp": 1722000420437, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 5 }, { "logType": "meal", "timestamp": 1722000421663, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1722000799117, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "error", "timestamp": 1722005939999, "monsterId": 4037, "monsterBirth": 1721424417000, "error": "undefined" }, { "logType": "training", "timestamp": 1722006033767, "monsterId": 4037, "monsterBirth": 1721424417000, "is_ferver": true, "type": 1, "up_status": 345 }, { "logType": "exchange", "timestamp": 1722006036394, "monsterId": 4037, "monsterBirth": 1721424417000, "egg_get": false, "egg_hash": "0003-qYaoQCHI", "egg_id": 3, "egg_name": "黄水玉のタマゴ", "egg_name_en": "Yellow Polka-dot Egg", "egg_point_per_after": 71.26, "egg_point_per_before": 58.84, "get_egg_point": 1242, "get_memento_point": 0, "is_spmatch": false, "memento_get": false, "memento_hash": "4037-ovtcPpje", "memento_point_per_after": 100, "memento_point_per_before": 100, "target_monster_hash": "4070-gcFFkqvd", "target_monster_id": 4070, "totalStats": 6211, "target_monster_name_en": "Seth " }, { "logType": "cleaning", "timestamp": 1722008002001, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1722014859613, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "cleaning", "timestamp": 1722015219416, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1722022422315, "monsterId": 4037, "monsterBirth": 1721424417000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "hatching", "timestamp": 1722301201000, "monsterId": 3, "monsterBirth": 1722301201000, "eggType": 3 }, { "logType": "meal", "timestamp": 1722301214664, "monsterId": 3, "monsterBirth": 1722301201000, "result": 1, "type": 1, "stomach": 1 }, { "logType": "meal", "timestamp": 1722301216631, "monsterId": 3, "monsterBirth": 1722301201000, "result": 1, "type": 1, "stomach": 2 }, { "logType": "meal", "timestamp": 1722301218380, "monsterId": 3, "monsterBirth": 1722301201000, "result": 1, "type": 1, "stomach": 3 }, { "logType": "meal", "timestamp": 1722301220297, "monsterId": 3, "monsterBirth": 1722301201000, "result": 1, "type": 1, "stomach": 4 }, { "logType": "meal", "timestamp": 1722301222240, "monsterId": 3, "monsterBirth": 1722301201000, "result": 1, "type": 1, "stomach": 5 }, { "logType": "meal", "timestamp": 1722301224702, "monsterId": 3, "monsterBirth": 1722301201000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "training", "timestamp": 1722301226857, "monsterId": 3, "monsterBirth": 1722301201000, "is_ferver": true, "type": 1, "up_status": 110 }, { "logType": "age", "timestamp": 1722304853719, "monsterId": 1002, "monsterBirth": 1722301201000, "monsterBefore": { "age": 1, "exchange_time": -62135596800000, "exchange_time_par": 0, "garbage": 0, "hash": "0003-dSvVgxBC", "live_time": 1722301201000, "live_time_d": 1722301201000, "max_memento_point": 0, "memento_flg": 0, "memento_hash": "", "memento_name": "", "memento_name_en": "", "memento_point": 0, "name": "ぷみ", "name_en": "Wiggles", "power": 110, "speed": 0, "status": 1, "stomach": 6, "technic": 0, "training_is_fever": false, "training_time": 1722344426000, "training_time_par": 7 } }, { "logType": "cleaning", "timestamp": 1722308455755, "monsterId": 1002, "monsterBirth": 1722301201000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "cleaning", "timestamp": 1722315659971, "monsterId": 1002, "monsterBirth": 1722301201000, "result": 1, "type": 1, "garbageBefore": 1 }, { "logType": "meal", "timestamp": 1722315661974, "monsterId": 1002, "monsterBirth": 1722301201000, "result": 1, "type": 1, "stomach": 6 }, { "logType": "training", "timestamp": 1722357700499, "monsterId": 2007, "monsterBirth": 1722301201000, "is_ferver": false, "type": 2, "up_status": 100 }, { "logType": "training", "timestamp": 1722400901455, "monsterId": 2007, "monsterBirth": 1722301201000, "is_ferver": true, "type": 2, "up_status": 110 }, { "logType": "cure", "timestamp": 1722405604103, "monsterId": 2007, "monsterBirth": 1722301201000, "result": 1, "type": 1 }, { "logType": "cure", "timestamp": 1722409207160, "monsterId": 2007, "monsterBirth": 1722301201000, "result": 1, "type": 1 }, { "logType": "cure", "timestamp": 1722412809477, "monsterId": 2007, "monsterBirth": 1722301201000, "result": 1, "type": 1 }, { "logType": "cure", "timestamp": 1722416412139, "monsterId": 2007, "monsterBirth": 1722301201000, "result": 1, "type": 1 }, { "logType": "cure", "timestamp": 1722420058062, "monsterId": 2007, "monsterBirth": 1722301201000, "result": 1, "type": 1 }, { "logType": "cure", "timestamp": 1722423718080, "monsterId": 2007, "monsterBirth": 1722301201000, "result": 1, "type": 1 }, { "logType": "death", "timestamp": 1722427376092, "monsterId": 2007, "monsterBirth": 1722301201000 } ] ```

I guess I was expecting that since a new target pick was available, that I could still use the extension to get this new target after failing the initial one, but it doesn't work to perform the appropriate actions for this new target. I don't think it was fed or cleaned at all during the new target lifetime because there was max poops and the meal counter might've been at 1 last I checked.

Any idea what went wrong? Is the extension expected to follow the new path? If so, I'm wondering if there's a problem with the auto-care instruction calculation/schedule when targeting a new monster.

Let me know if you need anymore information.

folklorelabs commented 3 months ago

Hey, unfortunately Pockest isn't flexible like that. With some manual intervention you would have only been able to recover and successfully evolve Rolento, but you would have needed to manually override and set either "Y6BLP" as your planId or set the manual feed/clean until age 4.

A long time ago I started building out logic to have the extension automatically recover based on available options, but we discovered a number of path exceptions that exponentially complicate the work required to handle all of the edge cases. So right now the preset select menu only limits based on the parent node in the evolution tree. Here's the evolution tree for the egg you selected: image

And if you're interested in the logic, SHIII3rd put together this amazing guide which the extension was built based on: https://steamcommunity.com/sharedfiles/filedetails/?id=3003515624

folklorelabs commented 3 months ago

Actually, after thinking about this further. It might make sense to just limit the select menu to the originally selected monster to avoid this sort of confusion. Going to re-open and add that to the to-do list. Thanks again.

techygrrrl commented 3 months ago

Thanks for clarifying @folklorelabs! I was optimistic it could work since I saw it in the dropdown, but I figured it was quite a difficult task programming-wise, so I kinda figured it probably wasn't gonna work, was just hopeful lol.

But yeah, while now I know personally, maybe the extension could benefit from some kind of UI indication that you've failed and it's not recoverable since the current UI makes it look like we can choose a new target to pick up where we left off.

folklorelabs commented 2 months ago

One of my latest ideas is to actually add a "simple mode" which would be a lot friendlier of an introduction for new users without affecting existing functionality. The idea is that "simple mode" would have a lot of guard rails for people brand new to Pockest and the helper and/or those looking to just use the presets. Right now I'm thinking of something like this (undecided on whether the toggle makes sense here or in the log panel): image

techygrrrl commented 2 months ago

That's a neat idea for people who maybe don't want all the details, although I really like seeing all the stats, but I could use advanced mode in that case.

Here's a possible design for the toggles using react-icons/bi/BiToggleLeft and react-icons/bi/BiToggleRight.

image image

Here's the code below. You'll need to use camelCase for those kebab-case properties, and maybe continue with the existing pattern of passing the size to width and height (leaving the viewbox alone). And replace black with currentColor.

Left

<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M8 9C6.372 9 5 10.372 5 12C5 13.628 6.372 15 8 15C9.628 15 11 13.628 11 12C11 10.372 9.628 9 8 9Z" fill="black"/>
<path d="M16 6H8C4.7 6 2.011 8.689 2 12V12.016C2.009 15.316 4.699 18 8 18H16C19.303 18 21.995 15.312 22 12.006C22 12.004 22 12.002 22 12C21.991 8.691 19.301 6 16 6ZM16 16H8C5.798 16 4.004 14.208 4 12.01C4.004 9.799 5.798 8 8 8H16C18.202 8 19.996 9.799 20 12.006C19.996 14.208 18.202 16 16 16ZM20 12.016L20.443 12.012L21 12.016H20Z" fill="black"/>
</svg>

Right

<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16 9C14.372 9 13 10.372 13 12C13 13.628 14.372 15 16 15C17.628 15 19 13.628 19 12C19 10.372 17.628 9 16 9Z" fill="black"/>
<path d="M16 6H8C4.704 6 2.018 8.682 2 11.986C2 11.991 2 11.995 2 12V12.016C2 12.02 2 12.024 2 12.028C2.015 15.322 4.703 18 8 18H16C19.309 18 22 15.309 22 12C22 8.691 19.309 6 16 6ZM16 16H8C5.798 16 4.004 14.208 4 12.01C4.004 9.799 5.798 8 8 8H16C18.206 8 20 9.794 20 12C20 14.206 18.206 16 16 16Z" fill="black"/>
</svg>
techygrrrl commented 2 months ago

Also if you like that design, I can add the icons and a tabbed layout that implements that design, which is essentially:

I did it this way because sometimes I'd get confused, e.g. if I see <TOGGLE> Advanced mode it's hard to tell if it's currently in advanced mode or if I need to press it to put it in advanced mode.

Anyhow, if you like this and want it, I could do a PR with the design implementation and toggle icons. If you wanted to set up the state in the reducer, you could do that ahead of time and let me know which one it is and the selector. Alternatively we could use component state with useState for the toggle. Have you ever used Storybook? It takes a bit of time to set up and might be overkill for a project with only one person and the occasional contributor, but it makes things like contributing UI easier. Then you can implement it when you're ready if you wanted to get help with UI elements. If that's too much overhead, I could also just implement it nearby kinda but not really, and maybe leave it commented out, and you could finish the implementation once simple/advanced mode is working.

folklorelabs commented 2 months ago

I'm the same way with toggles and appreciate these style switches; Much better UX. I used your svgs and design and only needed to tweak styling slightly from what you had. Thanks a ton! image

folklorelabs commented 2 months ago

As for storybook, I've definitely used it and love it for big projects with lots of engineers/designers in the mix, but am not the biggest fan for solo or smaller projects. Especially projects with lots of experimentation and a lack of well-established visual language like this one haha.

folklorelabs commented 2 months ago

New rc version up with "simple mode" https://github.com/folklorelabs/pockest-helper/releases/tag/v1.2.1-rc.0

techygrrrl commented 2 months ago

Nice! It looks good. The grey looks better than the white.

As for the icons, I'd probably put them in the icons.jsx file for reuse in case you wanted to use them elsewhere in a different colour.

folklorelabs commented 2 months ago

Simple mode added in v1.2.1! https://github.com/folklorelabs/pockest-helper/releases/tag/v1.2.1