XVs32 / kcauto_custom

kcauto_custom, the successor to kcauto, a Kantai Collection (Kancolle) bot / automation tool
https://xvs32.github.io/kcauto_custom/
GNU General Public License v3.0
8 stars 2 forks source link

Fleet preset with equipment preset from Noro6 #97

Open XVs32 opened 1 month ago

XVs32 commented 1 month ago

What

How

  1. Load current fleet 1's ship and equipment only
  2. Name the file with <map>-<quest>, save in fleet_preset.json
  3. In fleet_switcher_core.py, detect whether fleet needs equipment reset

Result

Reference

XVs32 commented 1 month ago

OK... I found the noro6 simulator can help managing equipment and fleet for specific map Including Event map

Now this is interesting

the use case of customizing fleet and equipment preset could be config in noro6 then user can output the config from noro6 Kcauto reads the config and load the fleet, equipment, and sortie for you

that way users don't have to play with the config file, getting ship ids themselves anymore this could be a game changer

XVs32 commented 1 month ago

There are two problems at the moment...

  1. Both noro6 and kc3 simulator don't care the production no. of equipments, technically it is still possible for kcauto to find a equipment with only it's type id and level, those that's some works to do
  2. For kc3 simulator, it doesn't shows the ships and equipment the player has, you just mix whatever is available in the game, that's kinda hard to manage. noro6, however, shows what ships and equipments the player has, which is great. Tho It can't output all the config files all at one, so user will have to output the config one by one themselves, it's not good, but still way better then kc3 simulator.

I am going to slove the #.1 first, the #.2 .... maybe I can write a script to pull it or I will need to somehow decode the backup file provided from noro6...

XVs32 commented 1 month ago

This is about the 3rd time I am changing plan... I mean, everytime it is getting easier to make and use so it's all good but... LOL, I don't have the time to have a new plan every week, I really have to think this through

XVs32 commented 4 weeks ago

I was thinking...

It is kinda difficult to keep both old ship pool system and noro6 system together

Since ship pool system does not care about ship equipment and noro6 will reload(mess up other's) equipment set

I might... I mean, I will, drop the old ship pool system since noro6 has a gui to manage the fleet and it can handle equipment

XVs32 commented 4 weeks ago

For expedition though.... It is not one expedition a time but 3

I can have config for every single combination of exps (ex. 5, 6, 7 and 5, 34, 35) might use difference ships for exp 5

The old ship pool system works better here...

XVs32 commented 4 weeks ago

hmmmmmmm.........

Will need to keep the ship pool then At least for expedition

the equipment handling ability brings new possibility tho For example, I could now have ppl throw in random ships into expedition pool, and auto detect who has the dump or landing craft

XVs32 commented 1 week ago

the latest WIP can read noro6 config to load equipment and ship already, great news

Now I have to decide how to manage all those noro6 files I mean.. how to use these noro6 configs For example, do I keep a single file for expedition?

There are three issues here:

  1. What to do with maps don't have noro6 config? <= exception, stop kcauto for now
  2. What to do with auto expedition? <= Let ppl setup a noro6 for expedition ship pool, I will have to read the ships inside, judge if it can carry LC and drum, then decide which ship to use
  3. What to do with combat expedition? <= ppl has to setup specific noro6 config for this, I will have to decide which expedition is consider as a combat expedition
XVs32 commented 1 week ago

Let's work on all my combat noro6 config first....

XVs32 commented 1 week ago

holy sweet jesus, I found the decompress function in noro6 https://github.com/noro6/kc-web/blob/ec6359baedfb551c89a86c8347912ff716bc3d36/src/App.vue#L1656

Then I found the python version https://github.com/marcel-dancak/lz-string-python/tree/master

Now I can decompress the data from noro6 backup file Don't have to press the share button and copy the json one by one anymore!

kevin01523 commented 1 week ago

the lightbulb moment per post is amazing lmao

XVs32 commented 5 days ago

The work flow from read a noro6 backup file => load the equipment and ships => finish a manual selected sortie is done, sure there are some minor bugs to fix but the prove of concept is a success

next I will have to:

  1. Fix the equipment unload issue <= fixed
  2. Fix the equipment only reload issue
  3. Fix the broken Sortie mode: Auto <= not as bad as I thought, fixed too
  4. Start planning how on earth I am going to put noro6 and expedition together
XVs32 commented 18 hours ago

For expedition....

I could simply exclude ships in any noro6 sortie config (starts with "B") All the left overs can be part of the expedition pool

Then I can read the api_mst_equip_ship :特殊装備 and api_equip_type :装備可能カテゴリのフラグ to determine if the ship is capable to carry LC