collin-li / pokemon-go-iv-calculator

This is a Pokemon GO IV calculator and results tracker developed in a MS Excel/VBA environment
MIT License
17 stars 5 forks source link

Gen 3 #6

Closed MizeryMade closed 6 years ago

MizeryMade commented 6 years ago

Hey Collin,

I know you're not much of a PoGo'er these days and mentioned in the other thread that you may not be around to promptly update for Gen 3. That said, a subset of the generation is dropping in the immediate future (as in, 11ish hours from now haha) and the rest are on the horizon... I was wondering if you might have a little bit of time to give this project another update to add support?

I was able to figure out how to adjust for the Mewtwo and Ho-oh nerfs (or it seems as simple as changing the Stats on the Pokemon Data sheet), but expanding for Gen 3 I think is over my head. I've spent the last 2 hours or so trying to dig into the files, comparing changes that you made when you added Gen 2, etc and... I've gotten nowhere but frustrated, haha. Maybe it's simpler than I'm making it out to be, but... I've got like 0.5% experience with Excel and 0% with VBA, haha.

Thought it couldn't hurt to reach out, either to see if you'd have the time to make the changes or maybe point me in the right direction in doing so myself (as the other guy was porting to Google Sheets and doesn't look like he made much progress anyway?)

If you do take a look at it, some resources:

Ho-Oh stat change information: https://www.reddit.com/r/TheSilphRoad/comments/77ae2m/ho_oh_base_stats_nerfed/

Mewtwo stat change information: https://www.reddit.com/r/TheSilphRoad/comments/6tgafs/mewtwos_base_stats_was_changed_in_the_latest_game/

Spreadsheet that has the stats for Gen 3 (but Candy/Distance hasn't been determined yet -- but might be easy to plug in later?) https://docs.google.com/spreadsheets/d/1CHgn6BY7ljCUB9kycocZ0d3d4ttSZ4JiN6-k-fsGdvw/edit#gid=1301057068

Anyway, thanks for even taking the time to give this a read.

collin-li commented 6 years ago

Thanks for making it easy. I've had a crazy week but will look at it this weekend.

collin-li commented 6 years ago

In terms of architecture of the spreadsheet - VBA is only relevant for cycling through the 4096 possible IVs to help you find your IV ranges (unless the calculation for CP fundamentally changes, or the bounds of IVs can change, then this will never really need to be touched).

All new Pokemon data is just spreadsheet structure (adding new rows in the Evolver tab, Perfect IV CPs tab, Pokemon Data hidden tab), and the values in the Pokemon Data tab itself.

There is some logic I've set up in the Pokemon Data tab to get the Evolver tab to work as intended, but as long as you only fill out the "blue" columns and drag down the formulas in the "white" columns, it should be automated. Each column in this tab is quite self-explanatory, but let me know if you had any questions. But you're right that it is as simple as changing the base stats for Mewtwo and Ho-Oh for smaller changes.

And for Gen 3 I'd be adding the new Pokemon into that tab, and you can easily update the candy cost column later.

I'm working on this now. Expect an update in the next hour or two (hopefully)

collin-li commented 6 years ago

Quick question @MizeryMade: I'm spending time trying to locate the best source of Gen 3 stats... the spreadsheet above seems to have all these duplicates, e.g. Sceptile has 2 different possible base stats... can you help me out with what's going on here?

MizeryMade commented 6 years ago

That was a spreadsheet someone offered up on the Silph reddit when some others were asking if anyone had Gen 3 data in a spreadsheet. That first set of Stats look like they're the ones ported directly from the main games, whereas the next set (listed "PoGo Stamina," "PoGo Atk" and "PoGo Def") are the relevant ones. This might be a more concise source for you: https://pokemongohub.net/generation-3/

Seems I missed it previously, but they've added Candy Cost and Distance for the entire Gen already too. Candy cost: https://pokemongohub.net/generation-3/pokemon-go-generation-3-evolution-chart/

Not sure of a nice clean list of buddy distance, but they're in the Game Master... https://raw.githubusercontent.com/apavlinovic/go-hub-re-toolkit/7d922b6df433b487416822be3e90980185f03dc2/go-hub-game-master-decompiler/game-master-files/decoded/2017-10-19.txt

I see that in the Game Master, they have Deoxys stats listed at 1, 1, 1. Perhaps they haven't figured out how to handle it's different forms.

MizeryMade commented 6 years ago

So when you're updating it, do you make changes directly in the Excel file or do you make modifications in the XML files that are on here. When I was trying to figure out how to shoehorn the new ones in myself, I was trying to examine the "difference" back when you added Gen 2 and trying to read those XML files was a nightmare, haha.

collin-li commented 6 years ago

The XML files are for reference only. I upload them so open source geeks can see what's in the file before downloading it (and so you can see the difference on Github too). But I work purely out of the Excel spreadsheet, then extract the XML from it later.

collin-li commented 6 years ago

This has now been done in the latest commit: https://github.com/collin-li/pokemon-go-iv-calculator/commit/6e527db1bd1e880f80e8eb52dda62edb84b22f95

Please feel free to raise an issue if there are any bugs that you notice.

MizeryMade commented 6 years ago

Appreciate you taking the time to go through and make the update. Now just got to port my data over and make a few personal stylistic edits. That said, looking through the Pokemon Data tab, I did find a couple small things (only one that I think affects actual usage).

With the introduction of Azurill, Marill to Azumarill's cost went from 25 candy to 50 candy. Simple enough to change locally, but thought worth mentioning so that if you make some edits down the road, the new "build" has the correct figure to start out.

The other small changes are ones that I don't think affect anything because I don't think the data is actually used? Legendary buddy distance was set at 20km when they started releasing them, and Bellosum's was update at some point to match the rest of the family at 3km. Also, looks like something happened with Lunatone's typing when putting the data into the sheet, because it's Rock/Psychic but has Poison listed (maybe carried down from Seviper when inputting?)

Haven't found any broken functionality yet, but have only briefly tinkered. Will report back if anything major crops up. Thanks again for taking time out, still prefer your sheet to all the other options out there. Shame it didn't get more traction on the Silph... much more responsive than the Google Sheets. 👍

collin-li commented 6 years ago

Thanks! Will fix them on next release. Types and KM don't matter, and as you can see I've left KM out to Gen3. I had them in there in case I wanted to build extra functionality with it... But at this stage I doubt I'll be adding functions!