besteon / Ironmon-Tracker

A Lua script for the Bizhawk/mGBA emulator compatible with Pokemon Fire Red, Leaf Green, Ruby, Sapphire, and Emerald that tracks relevant data for the IronMon challenge.
MIT License
123 stars 44 forks source link

Feature Request: Full Party Pokemon Tracking #348

Closed rootbear75 closed 1 year ago

rootbear75 commented 1 year ago

While I do understand this is 100% intended for the Ironmon challenge and that the primary pokemon is really the only one that is important, I would love to see the tracker be able to view or output the information about the entire party.

I use this over other trackers like PokeLink for non-ironmon play, and i think it would be a great feature to have.

My initial thoughts is to output the data that you use for the main pokemon, but into text files instead -- at least in terms of minimal information (dex#, Name/Nickname, level, Current/Max HP, Experience/Experience to next level, status (poison,para,etc), held item, etc.) At least that way, whoever wants can act on that information and display it on their stream can do so, even if it's just displaying changing text. In this instance - multiple text files would be better than less -- 01dex#, 01nickname, 01status, - - -etc.

Additional feature would be to add a separate browsersource or window for OBS to capture all the party pokemon, but I know this is probably far outside the scope of what this tracker is meant to do.

UTDZac commented 1 year ago

This would be very easy to do if you wanted just six text files, one for each Pokémon. I have already made a Custom Extension for someone else that spits out the lead Pokémon's information (Name, HP, stats, BST) into a text file, which they then use to custom display information on OBS.

Poochyena
20
7
8
8
8
11
11
220

If you have ideas on what you'd imagine a full-team display to look like, we could make that work. We can expand the Tracker screen to be larger and fit more information.

As someone that doesn't have a need for a full-team view, I'm not entirely sure what information would be helpful here. Or how you'd expect it to work, in and out of battle.

If you are interested in a similar Extension, I can provide this for you no problem at all.

rootbear75 commented 1 year ago

For the party Pokemon display, I do not see needing all of the stats output as it is not something typically cared about --

Apps like PokeLink show only a few of the stats that a normal display would for the main leader.

Pokemon Name / Nickname / # (converted to a sprite) Pokemon Level Pokemon Experience / next level xp bar Nature (maybe) Pokemon HP / Max HP bar Pokemon Held Item

I feel like these would be the bare minimum for a display -- the primary leader is usually the one you care about the most. For runs like Nuzlocke - the individual stats are not as important for streamers, so adding these to a party display would be unneccessary. However, outputting all the stats to a file to use would not necessarily be bad as who knows, maybe someone wants it output.

The reason I mentioned individual files for each output is that if you just want to add the text directly to OBS, outputting the file for 1 stat is better than multiple stats in 1 file. I do realize this would lead to clutter but, i do not think it should affect performance to update 1 file on a stat change versus a specific line in a file.

UTDZac commented 1 year ago

If you have an image that shows what you would expect to see, that would be helpful. The main problem for me is I haven't played or watched people play a Pokemon game where they want to see the whole team. So I don't know what to show.

Is all of the info you listed supposed to be shown at all times for a six Pokemon on the team? What about the ability? I'm curious why exp is helpful, I don't think currently we show this anywhere on the Tracker, but its definitely doable. I plan to add that in anyway at some point.

rootbear75 commented 1 year ago

Not everything is expected to be displayed for everyone. The ones I've used I just have the HP, Level, and pokemon name showing, but I'm thinking about what others may want to have displayed.

This is a sample of what one of the others do - they make browser sources with various information displayed on them. I do not feel like you need to make these custom sources, but having all the information available to someone who wants to use it to make their sources as custom as possible would open the tracker up to more widespread use for various custom playthroughs. This first one is what the program itself shows. pokelink_FDFEV8tKBa

All the below are the various sources and display options it gives you. chrome_J3P1QN35TN chrome_Pf0zyNPq90 chrome_pTZFsm9FLS chrome_PZ6WqBvN00 pokelink_E5C1YvaMYR

And before it is asked why I don't use this other program -- the browser sources are the only things i like about it. There are a lot of interactions and other things about it I do not like which is why i prefer the ironmon tracker that you've made. Having the information made available for use however someone would like to use it would be more than enough in my opinion.

UTDZac commented 1 year ago

I'm still working on this, but slowly. Spending a lot of time trying to figure out how to display all of the information, and make it all fit. Learning what information is helpful for people and what information is not-so-helpful is key.

As of #352 the Tracker now completely tracks all exp for your whole team. So that's one step closer to having all the information needed for this party-style display

UTDZac commented 1 year ago

Here is this initial mock-up. What are you thoughts on this? @rootbear75

The idea behind using this is that it would be an option under Tracker Settings -> Setup, to enable "Full Party View" (name pending, open to suggestions). When enabled, it will be drawn below the screens.

I tried to make it as condensed as possible to show as much helpful information as I could, or that I thought would be useful. As such, I omitted the actual Pokémon's name since that's a bit redundant with the icon + types. Open to any feedback here.

image

UTDZac commented 1 year ago

Feature complete as of v7.4.0

rootbear75 commented 1 year ago

apologies, github updates go to a weird folder in my email. this looks fantastic Thanks so much!

NoelDavies commented 11 months ago

Not everything is expected to be displayed for everyone. The ones I've used I just have the HP, Level, and pokemon name showing, but I'm thinking about what others may want to have displayed.

This is a sample of what one of the others do - they make browser sources with various information displayed on them. I do not feel like you need to make these custom sources, but having all the information available to someone who wants to use it to make their sources as custom as possible would open the tracker up to more widespread use for various custom playthroughs. This first one is what the program itself shows. pokelink_FDFEV8tKBa

All the below are the various sources and display options it gives you. chrome_J3P1QN35TN chrome_Pf0zyNPq90 chrome_pTZFsm9FLS chrome_PZ6WqBvN00 pokelink_E5C1YvaMYR

And before it is asked why I don't use this other program -- the browser sources are the only things i like about it. There are a lot of interactions and other things about it I do not like which is why i prefer the ironmon tracker that you've made. Having the information made available for use however someone would like to use it would be more than enough in my opinion.

You do realize the data is made available for anyone to use how ever they see fit. To make extensions, custom overlays, anything. Have you asked the team or looked into the dev chat channel?

If documentation is the issue, then surely asking a group who work on every game, every gen, and make general data available - to extend their documentation (for example), is @ much better use of time than asking for a tool used for a niche use case, to completely extend their featureset?