CAB Fleet Boss Battles Combo Node Helper (Crew Finder)
(A) Traveling Man
✭✭✭✭✭
This sheet will identify any crew that meet the trait requirements for a specific combo node in Fleet Boss Battles. At this time, it doesn't account for multiple crew being used to unlock a single node (it only lists crew who meet the requirements on their own).
Like other Google Spreadsheets, please make a copy of this and save to your own Drive.
v4.01 (05 Dec 2022)
https://cabtools.app/combo-chain-helper/
Feedback is welcome.
Like other Google Spreadsheets, please make a copy of this and save to your own Drive.
v4.01 (05 Dec 2022)
https://cabtools.app/combo-chain-helper/
Feedback is welcome.
CABTools.app
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
6
Comments
I am only at normal difficulty. But, what I have seen every-time is there is one crew who will match the combo. I have used crew to cover as many traits as possible. With the remaining combos, my other account, I usually can see one or two crew who will match say one remaining combo. So with 3 crew if there is two combos left, I will get one more combo with a 50/50 chance on the last. My last account will finish the combos if needed.
It does help to realize that one crew exits for one combo. But it really helps small fleets that are in communication with each other (or not in communication, just might mean an attempt with no combo unlocked) to be able to cover as many traits as possible with the crew and have two or more crew combine on combos.
Edit: your tool should help over trying to use crew retrieval which does not have all possible crew (3* one; 4* and 5* many)
Edit: my last Easy battle had Ktarian ended up being Wildman 2* , but I only figured that out from traits remaining and knowing which traits I had tried.
BTW, not sure if you have the unshown traits or not?
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
Few suggestions, could the list be sorted by number of traits (easy enough to do with a SORT function)
And could there be a dropdown box with some Data Validation with each trait (just make a list that can dynamically grab from datacore and have the validation grab from that list) so we can just use the dropdown instead of typing it all in manually.
But aside from that this is going to be extremely useful!
Absolutely on both of those. Time was the limiting factor on the SORT. Skill is the limiting factor on the "dynamically grabbing" thing. But I love both ideas. If you want to shoot me some pointers on the latter, I'd definitely be interested!
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
I'll have to dig up the piece of code I used but it was a lengthy query formula that took all the traits from all crew in the came, parsed out the unique variants and then tranposed them out.
I think I have the trait list licked from my Power Ratings spreadsheet data. It's the whole "Auto-populating from Datacore" that would give me fits.
Maybe not worth the effort anymore, since I'm already manually adding crew when they come in, but I'm always willing to learn. Or just let smarter people do the work...
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
Something like an intersection
Certainly an idea, but a little outside the focus so far of this. I think if you leave the Primary field blank, it will just pull up the crew who have all of the other listed traits, sorted by number of matches (that is one-too-high for each). That might work for you if you are just looking to throw spaghetti at the wall (a valid tactic).
As far as generating specific groups of crew that can unlock a single node in combination ... that sounds like it would require a re-imagining of the sheet. Maybe useful, but not something I'll be able to implement on this sheet in the near-term.
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
Not as hard as you might think, I do it with CIDAS.
Use this on a hidden sheet to import data
Then this one for listing (and counting if you need it) the traits on that page
Because on CIDAS I have the count for purely interest purposes you could take the count column out for just a dynamic trait list. As the ImportData will auto update once in a while when Datacore does it should stay relevant with minimal amount of work.
Edit: I should mention, take out the transpose if you just want it as a vertical line of traits.
Edit Edit: You can also use this datacore link to keep your crew lists up to date. Maximum automation!
This is quite useful indeed. Just knowing that sheet exists is a huge help on a lot of levels. Heck, even for CAB ratings, I'd still have to manually import the final list to the site, but this auto-import eliminates all typos and secret changes.
And I had just talked myself out of retooling the whole Google Sheet for that. Thanks
Sheet is missing some info though that I'd need, but I can certainly make use of it.
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
Preface: This is way easier than it sounds once you get the hang of it. It only took me a while because I'm not code savvy.
If what you're missing is in a separate file or in the JSON and just needs to be output in a sheet, you can do like I did and gap it onto a separate file.
Needing info not in a CSV? Set up a completely separate sheet to run a script to pull whatever source JSON file at timed intervals and output what you want, how you want. Then, you can make another tab in that sheet that all of the work and heavy lifting is done in. This becomes a source for import in the final sheet. In the end, your users have a sheet with the import function. That pulls data from a page that uses an import html to get the raw file and then convert to usable format.
For an example, see this: https://docs.google.com/spreadsheets/d/1cyxS2wZRJPfUn5gGjBR6DhbGdqymAkgGPOWkS2IvNDo/edit?usp=sharing
If it's just needing info from another csv, then you can import both into the master file, tinker and reformat how you want it into another tab, and then import that tab into the user-facing file.
You wouldn't need to publish a new version every time a crew changes, just pull the data direct and change all your formulae to be more adaptive.
The only reason I don't do that for Hyper Backend is....wait why don't I do that for Hyper Backend?
Yes! Check the latest version.
https://docs.google.com/spreadsheets/d/1QseMgulxQ7WHrbHDFMskNVHEivkUwXTqXo9dVMcY4F0
Redid the logic from scratch on this one, so please let me know if you find errors. It now:
1. Has checkmarks to mark out crew on the list you've already tried
2. Includes a list of all traits of matching crew, for your reference.
3. The feature/bug where you could leave the Known trait blank has been fixed.
4. It pulls from Datacore now, so new crew should update automatically.
Questions or bugs, feel free to post. Or you can pop on the CAB Discord Server and let me know in #engineering.
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
I made an addition to my copy, which others may find useful too.
I wanted to quickly see, which crew satisfies the same traits so we only check one of them.
I came up with this solution.
'X' means crew matches trait at this position, '_' means no match.
Crew with the same pattern matches the same traits
In Sheet "CrewImport" I added column CX with the following formula
=TEXTJOIN(" ", false,"[",
IF(BZ2<>true,"_","X"),
IF(CA2<>true,"_","X"),
IF(CB2<>true,"_","X"),
IF(CC2<>true,"_","X"),
IF(CD2<>true,"_","X"),
IF(CE2<>true,"_","X"),
IF(CF2<>true,"_","X"),
IF(CG2<>true,"_","X"),
IF(CH2<>true,"_","X"),
IF(CI2<>true,"_","X"),
IF(CJ2<>true,"_","X"),
IF(CK2<>true,"_","X"),
IF(CL2<>true,"_","X"),
IF(CM2<>true,"_","X"),
IF(CN2<>true,"_","X"),
IF(CO2<>true,"_","X"),
IF(CP2<>true,"_","X"),
IF(CQ2<>true,"_","X"),
IF(CR2<>true,"_","X"),
IF(CS2<>true,"_","X"),
IF(CT2<>true,"_","X"),
IF(CU2<>true,"_","X"),
IF(CV2<>true,"_","X"),
IF(CW2<>true,"_","X"),"]")
And a small change in Sheet "Eligable Crew", so the additional column will be displayed
=IFERROR(SORT(QUERY({CrewImport!A2:CX},"SELECT Col1, Col77, Col54, Col102 WHERE (Col75=TRUE and Col76=TRUE and Col78=TRUE)"), 2, FALSE), "None")
It doesn't yet. Working on something that will do something similar, but that won't be for a future update.
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
Now it looks like this, which makes it easy to elimate all crew with the same trait combination.
Just changed the sorting on the main sheet.
=IFERROR(SORT(QUERY({CrewImport!A2:CX},"SELECT Col1, Col77, Col54, Col102 WHERE (Col75=TRUE and Col76=TRUE and Col78=TRUE)"), 2, FALSE, 4, FALSE), "None")
Very nice! I was messing with Muad'Dave's and made a system to convert all of the trait strings via split, then match against listed traits from the board, rejoin, then alphabetize before splitting out again to a list of pertinent traits. Then, I use query to sort crew by number of hidden traits matched and by alpha. Then end result looks like this...
It does the same thing with a lot more processing, but due to query can more easily be adjusted and catered. What I'd love to see from any tool is an indication of crew in multiple nodes at once. Doesn't look like this one allows for looking at more than one node in a combo at a time. Great work on this to all contributing.
Yikes - thanks for pointing it out! I'll get a new version pushed today with a fix.
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
https://docs.google.com/spreadsheets/d/12kKwz5a75Cnae7d2F7xab6f8NtES88li9D_nbKU5eMc
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
It will. Working on both items for the next version!
Ov (Overall) | Vo (Voyage) | Fa (Faction) | Ga (Gauntlet)
Sb (Ship Battle) | Bt (Boss Battle Traits) | Co (Collection) | (Cd (Cadet)
Great! I've already added those to my current version of Muad'Dave's. The big riddle is if there is any way to make check boxes feed info forward and be dynamic without JS. I think the answer is a big fat "No".
The best I could come up with reasonably was ordering the traits to make it easy to track one's you should mark out because they are redundant. Here was a situation early when we were using my version where we could easily work out the pathing...
The only way I'd know to match up what all combos a crew covers and remove redundancy would be to list all of the combos and cross reference them all. That would get extremely verbose. I know I had a node where Gangster Spock hit 8 hidden traits yesterday. That would be 28 combinations, i think. Since that pool size would be variable, i would think you could run into issues on rare occasions. You would, once again, have to script a function to not have to write tons of data.