ksaa 2025.5.23.2__py3-none-any.whl → 2025.6.8.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. kotonebot/backend/bot.py +3 -3
  2. kotonebot/backend/context/context.py +21 -11
  3. kotonebot/backend/debug/server.py +3 -3
  4. kotonebot/backend/flow_controller.py +195 -0
  5. kotonebot/client/implements/windows.py +18 -13
  6. kotonebot/kaa/common.py +21 -0
  7. kotonebot/kaa/main/gr.py +184 -28
  8. kotonebot/kaa/metadata.py +22 -0
  9. kotonebot/kaa/resources/__pycache__/__init__.cpython-310.pyc +0 -0
  10. kotonebot/kaa/resources/game.db +0 -0
  11. kotonebot/kaa/resources/game_ver.txt +0 -0
  12. kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-012_0.png +0 -0
  13. kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-012_1.png +0 -0
  14. kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-014_0.png +0 -0
  15. kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-014_1.png +0 -0
  16. kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-012_0.png +0 -0
  17. kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-012_1.png +0 -0
  18. kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-013_0.png +0 -0
  19. kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-013_1.png +0 -0
  20. kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-013_0.png +0 -0
  21. kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-013_1.png +0 -0
  22. kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-012_0.png +0 -0
  23. kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-012_1.png +0 -0
  24. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-012_0.png +0 -0
  25. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-012_1.png +0 -0
  26. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-013_0.png +0 -0
  27. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-013_1.png +0 -0
  28. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-013_0.png +0 -0
  29. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-013_1.png +0 -0
  30. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-013_0.png +0 -0
  31. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-013_1.png +0 -0
  32. kotonebot/kaa/tasks/R.py +133 -133
  33. kotonebot/kaa/tasks/end_game.py +14 -0
  34. kotonebot/kaa/tasks/produce/common.py +1 -0
  35. kotonebot/kaa/tasks/produce/in_purodyuusu.py +21 -6
  36. kotonebot/kaa/tasks/produce/non_lesson_actions.py +1 -1
  37. kotonebot/kaa/tasks/start_game.py +49 -1
  38. {ksaa-2025.5.23.2.dist-info → ksaa-2025.6.8.0.dist-info}/METADATA +38 -1
  39. {ksaa-2025.5.23.2.dist-info → ksaa-2025.6.8.0.dist-info}/RECORD +176 -154
  40. {ksaa-2025.5.23.2.dist-info → ksaa-2025.6.8.0.dist-info}/WHEEL +1 -1
  41. ksaa-2025.6.8.0.dist-info/licenses/LICENSE +674 -0
  42. /kotonebot/kaa/sprites/{207c9bc9-d89f-4fa5-8b9a-5dd084708c1f.png → 02e0aa0d-4094-4bdc-8625-1a063733615b.png} +0 -0
  43. /kotonebot/kaa/sprites/{3a267e0c-d644-410d-a889-cea60ab5e206.png → 03458cf9-8ab0-4908-9a56-9c5c7e06bc9b.png} +0 -0
  44. /kotonebot/kaa/sprites/{26c544a9-8e09-454d-8ddf-9358f83354e0.png → 0439399f-5fca-43f9-a105-99342ff04d2e.png} +0 -0
  45. /kotonebot/kaa/sprites/{6624e6af-81d0-47aa-be7c-b03fa1ebed71.png → 05bfd235-2077-479a-8c43-11fb49316000.png} +0 -0
  46. /kotonebot/kaa/sprites/{824ee5ae-b3c0-4839-b277-f6be5a968f30.png → 05f8f996-a38a-45d9-8ff9-720b6c4fd599.png} +0 -0
  47. /kotonebot/kaa/sprites/{5d86c075-3156-48c8-8cb2-66be1e32d97b.png → 05ff5efd-0f76-47ce-bc89-237266bc17c0.png} +0 -0
  48. /kotonebot/kaa/sprites/{4281236e-1fee-48ca-9a5a-70dbd5971801.png → 09433024-3dfe-4fcb-9d67-cf442b58f31b.png} +0 -0
  49. /kotonebot/kaa/sprites/{69a0d1e3-4a97-494a-a1fe-cf85d1412ccb.png → 0a430873-8c12-4ce2-a5de-ab9790c08344.png} +0 -0
  50. /kotonebot/kaa/sprites/{ea291981-d7ac-433a-8703-2e7cc6ad5303.png → 0bab7080-9a37-4c27-9821-8df36d49b678.png} +0 -0
  51. /kotonebot/kaa/sprites/{9255b257-16b6-4c2e-ad93-3fc0ef5aac32.png → 0bbfb5b0-f0f7-4ad9-86f7-a2adb01a6371.png} +0 -0
  52. /kotonebot/kaa/sprites/{637f8470-1780-4f74-8a4c-d2fdb1fe5b9b.png → 0decaa6a-b9a9-4d9b-829a-0fc1f67538b4.png} +0 -0
  53. /kotonebot/kaa/sprites/{3436165b-94cb-4fe4-929f-51f3dbe4b7c8.png → 111a03e6-e401-4ad5-b5dc-d5124e8f1ab0.png} +0 -0
  54. /kotonebot/kaa/sprites/{1630ce5d-cdb1-42b5-9dcb-57aaeabcd46f.png → 12e8d3f1-494a-46f5-908f-f621a0c57ec6.png} +0 -0
  55. /kotonebot/kaa/sprites/{d7916e81-7de3-49d5-91a7-2ecbba93835e.png → 13535ecd-bdf5-4ff7-aa2c-6ecb20fe9c06.png} +0 -0
  56. /kotonebot/kaa/sprites/{8314ad8f-1ac4-4ce6-86b5-4d3f11b9ed87.png → 157dd58d-e319-4e0c-a37a-638e1a31c60b.png} +0 -0
  57. /kotonebot/kaa/sprites/{701f9931-d33f-4443-9b31-24e9553f5133.png → 1a3d18a4-7d91-4182-9e40-e60d73fed365.png} +0 -0
  58. /kotonebot/kaa/sprites/{2e173b48-333e-44e6-a29f-28f1e8ca450d.png → 1bfce48a-b151-406e-a6f5-863cb68cbbf2.png} +0 -0
  59. /kotonebot/kaa/sprites/{03f46f59-a90e-4d78-b218-474473e4ec6e.png → 1f8f8c46-43ec-4449-be9f-2e96da11da1e.png} +0 -0
  60. /kotonebot/kaa/sprites/{0b0ee4bd-78f6-42cd-ae40-ad232bf6e33c.png → 1f9165e6-77ee-403e-9b76-99c114527dbb.png} +0 -0
  61. /kotonebot/kaa/sprites/{43b335ee-9c0f-4b70-8d22-e1aa209a384c.png → 22d5a7d5-59a0-4137-b02e-1a7af86d4250.png} +0 -0
  62. /kotonebot/kaa/sprites/{61ed91d6-b4d9-4e82-9155-da706b700ce7.png → 22ee3f1b-ddcb-48bf-85dd-8423f85e3199.png} +0 -0
  63. /kotonebot/kaa/sprites/{426dcc3e-2556-45b6-9ca9-b9acce8b0222.png → 24cd42fd-bb3b-4fc6-b40d-d3e3e36fe9f1.png} +0 -0
  64. /kotonebot/kaa/sprites/{9ff6e594-b4c6-4aae-a412-52c83fc5bc3c.png → 2f81e70a-f2af-420f-9b6b-6338c391911f.png} +0 -0
  65. /kotonebot/kaa/sprites/{99a48c79-ab3a-4688-bed6-1d4c35e720fc.png → 309105d4-073a-47c9-8c5c-d593aa497723.png} +0 -0
  66. /kotonebot/kaa/sprites/{c96f3076-918f-4dd2-bb01-e74e07086812.png → 31a52dc8-b7fb-4ff6-a261-eb90a918603c.png} +0 -0
  67. /kotonebot/kaa/sprites/{a26ca6a4-2a8d-4472-86d7-990cc5df01de.png → 321b54c8-c69b-4437-931d-655882dabeed.png} +0 -0
  68. /kotonebot/kaa/sprites/{d21d3557-6238-4ceb-a53d-3f9147421e80.png → 333fe6d3-0be7-40fb-a2a3-364f98758f2a.png} +0 -0
  69. /kotonebot/kaa/sprites/{a6e18008-0caa-42d5-ae04-6f015f04a6df.png → 371a3192-101c-45ef-9da4-2ed389770c0f.png} +0 -0
  70. /kotonebot/kaa/sprites/{3c75ffa8-c197-4e88-949e-75b48621ae20.png → 38b8f119-8de1-49bf-8a5f-a44371de4569.png} +0 -0
  71. /kotonebot/kaa/sprites/{9d2b4c3f-aa77-4aec-8f78-b25bbd650d5b.png → 43d65b3f-bbae-4e29-a7bf-539379c1b072.png} +0 -0
  72. /kotonebot/kaa/sprites/{6f4cd73b-dc7d-4671-9481-793d12c606bb.png → 469006bc-a011-46e4-bcde-992be888456e.png} +0 -0
  73. /kotonebot/kaa/sprites/{71ef7bee-9b67-4968-80a8-f5b658458651.png → 48c257f8-3583-49f7-b01a-ba7d251086ac.png} +0 -0
  74. /kotonebot/kaa/sprites/{27b26162-2eb6-4513-aa8b-72d1baefd5f7.png → 48d2f007-8c1b-43fc-bd3f-f0b10d2a0c88.png} +0 -0
  75. /kotonebot/kaa/sprites/{50d923e8-d647-4741-a81d-7ad8ac67a79f.png → 4a235eaa-46f1-4f71-b54d-ada0ade44572.png} +0 -0
  76. /kotonebot/kaa/sprites/{9b4ea9ad-0d0a-4f0c-8018-da8a24fe4e5f.png → 4bd66b38-78d3-4a27-816b-d315039a8bb6.png} +0 -0
  77. /kotonebot/kaa/sprites/{95a5c724-2f9f-4d6f-ad44-b5b5d29b9c89.png → 4c72f39e-1182-4479-867f-8207744ee4fd.png} +0 -0
  78. /kotonebot/kaa/sprites/{fdf42d81-645a-41b5-868e-0a733f32992e.png → 4d6c198a-0e34-4c80-86d1-7789b2082d64.png} +0 -0
  79. /kotonebot/kaa/sprites/{2888b46f-ab47-4f57-9342-74f3d434a585.png → 4e21f02d-d5e1-49eb-946a-8edc74d0f1f7.png} +0 -0
  80. /kotonebot/kaa/sprites/{eaa079be-6b26-4e25-ac63-328d6f400c35.png → 4f58031c-36b9-4baf-bccf-11c05d83bd19.png} +0 -0
  81. /kotonebot/kaa/sprites/{e58f5357-dd17-4498-8643-0c15c433d23e.png → 52620946-b92c-42c7-9fcc-0ff13388fd0d.png} +0 -0
  82. /kotonebot/kaa/sprites/{32a92eb3-8bc8-4021-ade4-d633deabb8b9.png → 54bb5fcf-be61-4af8-bb19-a3c5113cf9e1.png} +0 -0
  83. /kotonebot/kaa/sprites/{26159619-42da-42d6-af30-c3d07e6a4a7b.png → 550fc45d-22c0-4a7c-a324-2c4ff107ab39.png} +0 -0
  84. /kotonebot/kaa/sprites/{f32d9ece-4fef-48a8-9be0-55f23acc5e6b.png → 559df9b9-e74d-45af-a300-77d3424e69c6.png} +0 -0
  85. /kotonebot/kaa/sprites/{1c18153e-8207-4dc6-a057-ad06c626003d.png → 56a8c0ca-4659-4de2-9bce-55ce86a40d75.png} +0 -0
  86. /kotonebot/kaa/sprites/{09f7e1c8-9ba3-40fb-b135-b3908956cb63.png → 572077d4-7ee2-449a-b4f0-66239b0d7aff.png} +0 -0
  87. /kotonebot/kaa/sprites/{c952a585-1004-48d7-b870-e144a60626b5.png → 5be4f6c7-2baa-42f3-a5a5-99ca0830cc30.png} +0 -0
  88. /kotonebot/kaa/sprites/{c158004f-7e76-4f8d-95e8-deea12251cbe.png → 5bf00cba-9aab-4ffe-b20b-8f5e74279276.png} +0 -0
  89. /kotonebot/kaa/sprites/{f220b5c7-432d-4fd0-abde-ec0a3a569489.png → 5ca50448-cc21-499a-a685-c5e1c4240c48.png} +0 -0
  90. /kotonebot/kaa/sprites/{bbc002f3-4c6c-40b1-bfbc-891d8a407412.png → 5edef075-4843-4dc9-840f-ae445cbe0730.png} +0 -0
  91. /kotonebot/kaa/sprites/{112db090-fb51-413f-8f7b-6859b98bc1eb.png → 624555b9-31e3-46a3-8078-55619eaa40b9.png} +0 -0
  92. /kotonebot/kaa/sprites/{38030889-3d17-4648-8f37-572da43944cf.png → 645744c4-3bbf-4ea2-8f46-4725fff874b3.png} +0 -0
  93. /kotonebot/kaa/sprites/{fb2be5fb-f70f-4bfc-8ef9-d08440fafcab.png → 668002b6-805b-467b-a703-203fb75444f4.png} +0 -0
  94. /kotonebot/kaa/sprites/{b5931274-f987-4bc5-bd00-2296a9be6f68.png → 67a81c23-4ce4-45e3-bfa8-1136fb14b831.png} +0 -0
  95. /kotonebot/kaa/sprites/{31c249b7-05ef-4e2a-b157-91976f564bef.png → 695f8d57-b2c9-4a6d-9ae9-1b49ee3eb22a.png} +0 -0
  96. /kotonebot/kaa/sprites/{fc146a5c-c154-4b44-b690-23470d9662e3.png → 6a7d061e-682b-42c1-97d5-121c52921e8b.png} +0 -0
  97. /kotonebot/kaa/sprites/{b6660670-834a-499d-85c8-a51d8ac2f951.png → 6bf5556a-8f4e-41d7-8ab5-d683ad1b47a8.png} +0 -0
  98. /kotonebot/kaa/sprites/{bbb5b48b-ba98-4fa3-bd6d-f079c42acabf.png → 705d9ecf-faf8-40f4-b701-637cec822c1e.png} +0 -0
  99. /kotonebot/kaa/sprites/{685e377b-3108-44a3-a384-1b527fb4c980.png → 72c1804f-db8c-40fa-bc79-6533f2861a5d.png} +0 -0
  100. /kotonebot/kaa/sprites/{a885df26-00d6-4e4c-8bb2-626f68ea06ad.png → 7344e180-251b-465a-a8cf-974477f7ad44.png} +0 -0
  101. /kotonebot/kaa/sprites/{0673f22f-a766-4f05-a32e-6ae92d9ebd6f.png → 73af305f-840f-4325-abae-b3519fba672a.png} +0 -0
  102. /kotonebot/kaa/sprites/{99090cad-ca7e-4bd3-b38f-1f8ed6f01ed4.png → 73f4204e-8281-47cc-9dce-6bb8280c4ce5.png} +0 -0
  103. /kotonebot/kaa/sprites/{654e8eaf-e83c-41a4-a55e-6c4cdd0d8fdc.png → 74521b6f-de5e-4ba8-a3c9-c6ba01070498.png} +0 -0
  104. /kotonebot/kaa/sprites/{c5c16303-3858-4d5c-bc3c-18b7196ba030.png → 7736a171-9221-4cda-8288-908997abeff2.png} +0 -0
  105. /kotonebot/kaa/sprites/{86538a9c-d267-48d8-935f-ae9ec05073e3.png → 79bc56c5-eae6-4389-9116-4a9e182d6bf3.png} +0 -0
  106. /kotonebot/kaa/sprites/{bdca0571-b1be-4c97-a59d-016512f412b1.png → 7a479871-547e-4098-9cdd-6c9bb9f7449a.png} +0 -0
  107. /kotonebot/kaa/sprites/{7ce714eb-7380-4069-bacb-25d68b9aa895.png → 7b3c6860-fbbe-48aa-aadf-8062fa88f1fe.png} +0 -0
  108. /kotonebot/kaa/sprites/{e4c6780b-798d-4298-bf6a-5e33c9ca1e8f.png → 7cea265a-fca5-43d0-b2da-067c8fff4d72.png} +0 -0
  109. /kotonebot/kaa/sprites/{37690104-f535-4a19-8640-bf310e4b6a52.png → 7e8164f6-a9e4-4600-b776-77b35a490933.png} +0 -0
  110. /kotonebot/kaa/sprites/{db9f5641-1afb-4b02-89e8-222390c4cfca.png → 804a4b05-1ca3-4915-bf23-a66ccdc34404.png} +0 -0
  111. /kotonebot/kaa/sprites/{edaf2b11-38e3-4d2b-b34f-2c01d23c2c35.png → 80fb515c-4323-422d-a24c-80a3bf702f1d.png} +0 -0
  112. /kotonebot/kaa/sprites/{50d91433-f3a0-4264-8719-289de3739c6c.png → 826bf80a-112e-4356-9111-4b7e692ccc82.png} +0 -0
  113. /kotonebot/kaa/sprites/{de71582f-4de3-450b-b4e8-dd9028b82f40.png → 82a5e224-a161-43d4-8e15-2946480336dd.png} +0 -0
  114. /kotonebot/kaa/sprites/{48dc8d02-ea41-49a2-b993-2af26979183c.png → 869b1771-b2ce-4872-ab75-2157c47c5b13.png} +0 -0
  115. /kotonebot/kaa/sprites/{8e3a97d3-d34a-4c78-a08b-2cacb4da42bc.png → 89c0e675-3fd4-456a-8ae7-3bfb248b7281.png} +0 -0
  116. /kotonebot/kaa/sprites/{2b9f424d-2c5e-4d84-900a-2646fc131527.png → 8e8a0b57-0231-4ed6-958e-3196f7c9ca7b.png} +0 -0
  117. /kotonebot/kaa/sprites/{329013cc-7bf0-45e3-bb24-a38cbcf0d2f9.png → 90a9c819-ee6b-4b3e-a0e4-ce484c6e413d.png} +0 -0
  118. /kotonebot/kaa/sprites/{94f21a05-154b-44a6-9f93-ca41dce3b5de.png → 910d307b-6461-4950-badb-509975d0b797.png} +0 -0
  119. /kotonebot/kaa/sprites/{99fee062-0d95-4d47-8266-d8649c3c3ff4.png → 92b7d830-3db5-434e-b156-0ac855db480d.png} +0 -0
  120. /kotonebot/kaa/sprites/{0e1150eb-e6cf-4ee1-a5e2-2610111bb460.png → 96cf0633-6531-499b-b1cc-6670ab710293.png} +0 -0
  121. /kotonebot/kaa/sprites/{ba583fe8-7334-47b3-8c19-6394bfeee16d.png → 994aa6a6-0189-4a79-8125-56136973b581.png} +0 -0
  122. /kotonebot/kaa/sprites/{e2809286-fbf5-40da-b442-ae8fae4babd3.png → 9bb1a400-935a-4c5e-838b-fca502c49aba.png} +0 -0
  123. /kotonebot/kaa/sprites/{39f36c02-8132-42d5-91fb-59dc57ceea70.png → 9c1fa1d4-2ae5-4093-abaa-cebb51135721.png} +0 -0
  124. /kotonebot/kaa/sprites/{cdd6e06c-741d-4341-a080-51ce89d34a5d.png → a00fcf77-2800-4f7d-993d-4636b36045bb.png} +0 -0
  125. /kotonebot/kaa/sprites/{c8ca0c53-a94d-4e7c-8bd8-bdd9912760e2.png → a105d17d-d44c-4798-aeff-70808c91cb47.png} +0 -0
  126. /kotonebot/kaa/sprites/{6e75aa68-7b5a-4e8a-9c11-778ea3a04acf.png → a33ae1c3-ac69-4783-977e-9f0f1b1a2f8d.png} +0 -0
  127. /kotonebot/kaa/sprites/{4a163f23-a48c-46eb-b03e-ab0b269d5216.png → a3c12040-2b11-4038-b830-215fb7b6f359.png} +0 -0
  128. /kotonebot/kaa/sprites/{fff0c75d-8819-48c6-adb5-97c79d2be401.png → a82e06fb-a02e-4be5-a7b4-4d2758914fcf.png} +0 -0
  129. /kotonebot/kaa/sprites/{aadb0941-88b4-4333-9571-7caf97782e75.png → ad784a29-f0e2-4037-976b-45143db8441c.png} +0 -0
  130. /kotonebot/kaa/sprites/{c02c9b66-cecb-4bcb-b016-654a891b0ef4.png → ad8ee599-88a8-429c-8982-99086e552dcc.png} +0 -0
  131. /kotonebot/kaa/sprites/{5931b4e7-abd4-414f-a27a-357916bf9999.png → afa0f85f-dcb7-48a1-a1ae-624456b9b65c.png} +0 -0
  132. /kotonebot/kaa/sprites/{d7481c1c-736a-41f5-afcf-e79bea74f881.png → b1d1dfab-51f5-4ae9-b718-cdf46774c0ff.png} +0 -0
  133. /kotonebot/kaa/sprites/{3d13cc4d-30d3-4044-bdc2-da932581fa4f.png → b1e88fda-434a-4d06-8891-883a7beafa12.png} +0 -0
  134. /kotonebot/kaa/sprites/{b2b36034-4f08-4826-835a-b97d7641529f.png → b2f7a430-5777-4861-8435-5419394e5ee8.png} +0 -0
  135. /kotonebot/kaa/sprites/{27b15f5e-e803-4bcc-bf55-2d5829df73ab.png → b3d1f8d4-1393-4206-b78e-a5495d8fb930.png} +0 -0
  136. /kotonebot/kaa/sprites/{1a1b970e-9cf0-49b6-a765-45170689f427.png → b3e72de2-e103-49a3-b0f2-8593cff87c4e.png} +0 -0
  137. /kotonebot/kaa/sprites/{82cc8881-1e3a-41a1-9845-135a40521558.png → b44f5e5b-e999-4427-8a9f-f76c6485f4a5.png} +0 -0
  138. /kotonebot/kaa/sprites/{0e7b4802-c445-4baa-bf38-f2589b39527b.png → b604e25d-680a-4e02-a012-2e593b5bc276.png} +0 -0
  139. /kotonebot/kaa/sprites/{655ffd1b-88bb-4174-9e98-82fc40ab86b6.png → ba955365-1328-4018-83a2-bfe818f8f172.png} +0 -0
  140. /kotonebot/kaa/sprites/{347c5a29-b1d2-40ab-a385-ff42a36e1ea7.png → c0fc7de5-b842-4c70-9cf2-89d833bfe7a6.png} +0 -0
  141. /kotonebot/kaa/sprites/{240152d2-fd3e-40f7-8023-5f105f215d5c.png → c1ad996a-925e-41b5-b26c-d48b8ded21d2.png} +0 -0
  142. /kotonebot/kaa/sprites/{d7167e88-c5b0-4aaf-a8f5-29977c3062aa.png → c1b1125f-542b-4e63-9c86-5d2e35a89a10.png} +0 -0
  143. /kotonebot/kaa/sprites/{593503e0-a673-4910-83a9-b7e4f7c43568.png → c2667677-cbff-4dd4-a401-e0963e7224f4.png} +0 -0
  144. /kotonebot/kaa/sprites/{b590b94b-8b76-466a-809d-0a16a37e2eb7.png → c4f28132-4aba-40ba-be6c-b1a31d014635.png} +0 -0
  145. /kotonebot/kaa/sprites/{e7683a0b-d4f7-4bcf-9b5d-ae73c41f0a78.png → c7aa3f89-8a5e-4685-9297-4fc892bfdd81.png} +0 -0
  146. /kotonebot/kaa/sprites/{fedc068b-148c-4e39-9f1f-6b4d6c055c66.png → cc829886-23e8-4d47-b4c4-37ca20381180.png} +0 -0
  147. /kotonebot/kaa/sprites/{097346ef-9951-4989-8df3-7b71459e2230.png → cd4cbd7b-df80-45bb-a053-cc333a806934.png} +0 -0
  148. /kotonebot/kaa/sprites/{ad6de3fd-8486-46e5-b2eb-27c5f73b146a.png → cd8d3d55-f102-419e-a6fd-2ad5ecc4fd2e.png} +0 -0
  149. /kotonebot/kaa/sprites/{fd2bdf99-47c0-4ac6-9495-6c6be084d9c7.png → d22ca9e0-001d-43d6-a557-1c76c5a27c81.png} +0 -0
  150. /kotonebot/kaa/sprites/{d43f13a4-6160-4acd-8732-d614e3150807.png → d58d9987-b1ca-4669-a9a6-9a0fd1847fa6.png} +0 -0
  151. /kotonebot/kaa/sprites/{c3540ea8-70e3-409e-ba83-9761d238ae14.png → d747239f-7620-4f23-9ac7-cf2d34889266.png} +0 -0
  152. /kotonebot/kaa/sprites/{6c332793-741c-49a1-bd60-a9533de744fc.png → d7f604a6-c663-44db-b1d3-c9792eb3daa4.png} +0 -0
  153. /kotonebot/kaa/sprites/{664ecf07-b3cf-4d61-9ea8-288b1b3bccb9.png → d8136469-6d73-4f82-a79c-fee83c3e93a8.png} +0 -0
  154. /kotonebot/kaa/sprites/{f220084e-939d-4505-b41a-f71d5ff89286.png → da3e7cee-d77b-4e62-b703-ed257706dd39.png} +0 -0
  155. /kotonebot/kaa/sprites/{f7c1ee7f-62cf-4654-b684-19995570aa8a.png → db94ffb7-a09d-4a51-b420-b930851c9db4.png} +0 -0
  156. /kotonebot/kaa/sprites/{0fe025ae-98be-48f0-9c23-e47ddc69d932.png → de709296-e411-465f-86fc-5daf5ca83cef.png} +0 -0
  157. /kotonebot/kaa/sprites/{1157e138-6b65-497d-8b51-0a37ebf77b91.png → e2fae2a4-bb19-4f49-b382-47e504ec26d3.png} +0 -0
  158. /kotonebot/kaa/sprites/{d6dede34-0b2f-4803-bb9b-4da8a9c10b68.png → e41bb5df-164d-4760-9db6-d5d5d763bb5f.png} +0 -0
  159. /kotonebot/kaa/sprites/{edd85973-ee6f-450f-85fa-102e78c806a5.png → e5d15c50-45ee-4de9-8b97-4630cbd8f01a.png} +0 -0
  160. /kotonebot/kaa/sprites/{e8d97522-852c-48d6-970b-fb60e23336e6.png → e7022542-4317-4a61-8098-f3f733d8400e.png} +0 -0
  161. /kotonebot/kaa/sprites/{38f9d826-4a3f-4bab-87fc-b55a49cbc2a1.png → e866d8b1-4f61-45bf-8170-5229f53c047a.png} +0 -0
  162. /kotonebot/kaa/sprites/{e91455c0-4b5a-49b0-b9e7-29ef5456ddc3.png → ecd44a4a-e1ca-4a86-ae0d-2306a672613f.png} +0 -0
  163. /kotonebot/kaa/sprites/{85aba299-2625-47e1-a016-b25298fbb688.png → ed5d2bf3-405c-4165-88d0-9f8a4be968c6.png} +0 -0
  164. /kotonebot/kaa/sprites/{4255d2b3-5ee5-46e5-a35c-515500199d50.png → ef39804e-8d2d-40f6-8d13-bd2877d1353a.png} +0 -0
  165. /kotonebot/kaa/sprites/{9229fe6b-f0bd-4502-be35-5818dfdbc732.png → f0786a26-81b5-4e76-b577-db70ab3fab50.png} +0 -0
  166. /kotonebot/kaa/sprites/{13b25df3-9bba-4195-8a49-3c41d6d1ef0d.png → f65a4495-f044-44de-bf0d-c869e637d5d3.png} +0 -0
  167. /kotonebot/kaa/sprites/{f8c87b1e-87b6-491e-b22e-0409b98bd165.png → f74fc514-61f1-4068-bdf4-754fcaf8ac89.png} +0 -0
  168. /kotonebot/kaa/sprites/{c9c09edf-312f-4776-80fd-2571052a8894.png → f8cbb089-a63e-4e40-9238-26d14da2c459.png} +0 -0
  169. /kotonebot/kaa/sprites/{5ece0028-7af2-4b13-bcbc-6a923a2149db.png → f9b2f64d-f829-4b13-9704-c5f00fb956be.png} +0 -0
  170. /kotonebot/kaa/sprites/{18a55200-aee1-4dfc-867b-8958137a1ecd.png → fb927b92-7a82-4869-8c61-581d49cd7201.png} +0 -0
  171. /kotonebot/kaa/sprites/{fe7d4d8b-03cf-4d73-8049-ab9e9a296b7f.png → fbd816df-7ae6-40a4-b4d4-5708f5ba4a7c.png} +0 -0
  172. /kotonebot/kaa/sprites/{0b49fc7d-fe42-44b9-9f2e-69e39cd1b267.png → fd610de1-b023-4747-8c1b-72f89b1c5647.png} +0 -0
  173. /kotonebot/kaa/sprites/{e1a156d6-874e-4a72-b5b1-05ea11bb1647.png → fdfecda8-2fe0-487e-b5fe-6358274bb9ff.png} +0 -0
  174. /kotonebot/kaa/sprites/{bb9fbfe9-f913-4220-8704-157095456f06.png → ff77d221-8444-4d0f-8c93-0223a97e2a98.png} +0 -0
  175. {ksaa-2025.5.23.2.dist-info → ksaa-2025.6.8.0.dist-info}/entry_points.txt +0 -0
  176. {ksaa-2025.5.23.2.dist-info → ksaa-2025.6.8.0.dist-info}/top_level.txt +0 -0
@@ -277,7 +277,7 @@ def enter_outing():
277
277
  buttons = ui.all()
278
278
  if not buttons:
279
279
  raise UnrecoverableError("Failed to find any buttons.")
280
- target_btn = buttons[1]
280
+ target_btn = buttons[min(1, len(buttons) - 1)]
281
281
  logger.debug('Clicking "%s".', target_btn.description)
282
282
  if target_btn.selected:
283
283
  device.click(target_btn)
@@ -1,4 +1,5 @@
1
1
  """启动游戏,领取登录奖励,直到首页为止"""
2
+ import json
2
3
  import os
3
4
  import ctypes
4
5
  import logging
@@ -14,6 +15,37 @@ from kotonebot import task, action, sleep, device, image, ocr, config
14
15
 
15
16
  logger = logging.getLogger(__name__)
16
17
 
18
+ def locate_game_path() -> str | None:
19
+ """自动获取 DMM 版游戏路径。"""
20
+ logger.info('Locating DMM game path...')
21
+ app_data = os.getenv('APPDATA')
22
+ if not app_data:
23
+ logger.info('APPDATA not found. Location failed.')
24
+ return None
25
+ dmm_config_path = os.path.join(app_data, 'dmmgameplayer5', 'dmmgame.cnf')
26
+ if not os.path.exists(dmm_config_path):
27
+ logger.warning('DMM config does not exist. Location failed.')
28
+ return None
29
+ with open(dmm_config_path, 'r', encoding='utf-8') as f:
30
+ dmm_config = json.load(f)
31
+ for content in dmm_config.get('contents', []):
32
+ if content.get('productId') == 'gakumas':
33
+ game_path = content.get('detail', {}).get('path')
34
+ if game_path:
35
+ break
36
+ else:
37
+ logger.warning('Game "gakumas" not found in DMM config.')
38
+ return None
39
+ logger.info(f'Game path: {game_path}')
40
+ if game_path:
41
+ game_path = os.path.join(game_path, 'gakumas.exe')
42
+ if game_path and not conf().start_game.dmm_game_path:
43
+ logger.info('Saving game path to config...')
44
+ conf().start_game.dmm_game_path = game_path
45
+ config.save()
46
+ return game_path
47
+
48
+
17
49
  @action('启动游戏.进入首页', screenshot_mode='manual-inherit')
18
50
  def wait_for_home():
19
51
  """
@@ -106,7 +138,23 @@ def windows_launch():
106
138
  is_admin = ctypes.windll.shell32.IsUserAnAdmin() != 0
107
139
  if not is_admin:
108
140
  raise PermissionError("Please run as administrator.")
109
-
141
+
142
+ # 处理汉化插件
143
+ if conf().start_game.disable_gakumas_localify:
144
+ logger.info('Disabling Gakumas Localify...')
145
+ game_path = conf().start_game.dmm_game_path or locate_game_path()
146
+ logger.debug('Game path: %s', game_path)
147
+ if not game_path:
148
+ raise ValueError('dmm_game_path unset and auto-locate failed.')
149
+
150
+ plugin_path = os.path.join(os.path.dirname(game_path), 'version.dll')
151
+ logger.debug('Plugin path: %s', plugin_path)
152
+ if not os.path.exists(plugin_path):
153
+ logger.warning('Gakumas Localify not found. Skipped disable.')
154
+ else:
155
+ os.rename(plugin_path, plugin_path + '.disabled')
156
+ logger.info('Gakumas Localify disabled.')
157
+
110
158
  from ahk import AHK
111
159
  from importlib import resources
112
160
  ahk_path = str(resources.files('kaa.res.bin') / 'AutoHotkey.exe')
@@ -1,9 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ksaa
3
- Version: 2025.5.23.2
3
+ Version: 2025.6.8.0
4
4
  Summary: Kotones Auto Assistant(kaa) is a script for game 'Gakuen Idol M@ster' that automates the dailies and produces.
5
5
  Requires-Python: ~=3.10
6
6
  Description-Content-Type: text/markdown
7
+ License-File: LICENSE
7
8
  Requires-Dist: opencv-python==4.10.0.84
8
9
  Requires-Dist: rapidocr_onnxruntime==1.4.3
9
10
  Requires-Dist: av==14.0.1
@@ -25,6 +26,7 @@ Requires-Dist: onnxruntime==1.14.0
25
26
  Requires-Dist: numpy<2.0
26
27
  Requires-Dist: pywin32==310
27
28
  Requires-Dist: ahk==1.8.3
29
+ Dynamic: license-file
28
30
 
29
31
  # Kotone's Auto Assistant 琴音小助手
30
32
  ## 功能
@@ -96,6 +98,41 @@ TODO
96
98
  > 建议**使用亲密度至少为 7 的偶像**进行培育,
97
99
  > 因为琴音小助手暂时无法处理亲密度提升事件。
98
100
 
101
+ ## 开源协议
102
+ kaa 本体及框架(kotonebot 文件夹)、相关辅助脚本(tools 文件夹)使用 **GPLv3 协议**开源。kaa 开发工具(kotonebot-devtool)、启动器(bootstrap 文件夹)以 **MIT 协议**开源。
103
+
104
+ kaa 的开发主要用到了以下开源项目:
105
+ * [GkmasObjectManager
106
+ ](https://github.com/AllenHeartcore/GkmasObjectManager):用于提取游戏图像资源,以 GPLv3 协议开源。
107
+ * [gakumasu-diff](https://github.com/vertesan/gakumasu-diff):游戏数据。
108
+
109
+
110
+ ## 免责声明
111
+ **请在使用本项目前仔细阅读以下内容。使用本脚本将带来包括但不限于账号被封禁的风险。**
112
+
113
+ ### 总则
114
+ 本项目(琴音小助手)是一个为游戏 **《学园偶像大师》(学園アイドルマスター)** 设计的自动操作脚本。本项目的创建目的仅为技术学习与研究,并非为了提供商业服务或鼓励不正当的游戏行为。
115
+
116
+ ### 版权声明
117
+ 本项目所使用的部分资源文件,包括但不限于图像、音频、模型等,其版权归属于其原始权利人。该游戏的开发商为 **QualiArts**,发行商为**万代南梦宫娱乐(Bandai Namco Entertainment Inc.)**。
118
+
119
+ 1. **权利归属**:本项目中使用的所有相关游戏资源文件的版权、商标权及其他一切知识产权,均归 **QualiArts**、**万代南梦宫娱乐**或其相关权利方所有。
120
+
121
+ 2. **非官方性质**:本项目为非官方、非商业性质的开源项目。本项目的开发者与 **QualiArts** 及 **万代南梦宫娱乐**没有任何形式的关联、合作或官方授权。
122
+
123
+ ### 核心风险与责任限制
124
+ 1. **账号封禁风险**:**您必须清楚地认识到,使用任何形式的第三方自动操作脚本(包括本项目)都有违反《学园偶像大师》的用户协议(利用規約)的潜在风险。游戏运营商有权对使用此类脚本的账号采取惩罚措施,包括但不限于临时或永久封禁账号。对于因使用本脚本而导致的任何账号损失(如封号、数据回滚等),项目作者概不负责。**
125
+
126
+ > ・对本服务的服务器等进行非法访问、窃取数据、使用使软件进行非法处理的程序、使用工具等获取信息或使用工具等不正当推进游戏的行为。
127
+
128
+ > ・本サービスのサーバー等への不正アクセス行為、データ窃取行為、ソフトウェアに不正な処理を行わせるプログラムを使用する行為、ツール等を使用して情報を取得する行為またはツール等を使用して不正にゲームを有利に進める行為
129
+
130
+ 2. **使用限制**:本项目的全部内容**严禁用于任何商业用途或恶意破坏游戏平衡的行为**。任何将本项目用于此类活动的行为,均可能构成对版权方的侵权和对游戏运营商的违约,由此产生的一切法律责任由使用者自行承担。
131
+
132
+ 3. **无担保与责任限制**:本项目按“原样”提供,不附带任何形式的明示或暗示担保,包括其功能的稳定性、准确性或持续可用性。对于因使用或无法使用本项目而导致的任何直接、间接、偶然、特殊或继发性损害(**包括但不限于账号封禁**),项目作者概不负责。
133
+
134
+ **继续下载、安装或使用本项目,即表示您已完全阅读、理解并同意承担以上所有风险和条款。如果您不同意,请立即停止使用并删除本项目的所有相关文件。**
135
+
99
136
  ## 开发
100
137
  见 [DEVELOPMENT.md](./docs/DEVELOPMENT.md)
101
138