Code Monkey home page Code Monkey logo

trackobot.com's People

Contributors

coleww avatar denton avatar dependabot[bot] avatar emilesilvis avatar julianeberius avatar luxflux avatar mislav avatar pencil avatar stevschmid avatar tardisgreenhs avatar theanine avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

trackobot.com's Issues

Possibility to send decks when adding a game via API

Hi,

It would be great to have an ability to send player's and opponent's decks when adding new games via API. To my understanding decks have IDs. So another useful feature would be a service that returns profile decks with their IDs when you send username and token.

One of the main features that I like in Track-o-bot is the ability to have deck statistics. Quite often I play on a phone and I created a simple site where I can upload games to trackobot.com so I have better statistics. Unfortunately, I'm missing the feature of having deck statistics for mobile games because I can set only class when adding a game via API. No major plans yet on making that site public. It's more like a playground at the moment where I learn some web related technologies.

Best regards,
Alexey.

RFC: Ability to track misplays

Hi there,

I'm happy to implement this feature myself but I wanted to get feedback on how well you think it fits into your roadmap for the application. There are often cases where I've made a misplay, and it's apparent either on that turn, or after the game is over. Any tracking of this would have to be entirely manual, but it'd be nice to input them, and then at the end of the day review the misplays that I've made so I can learn from them. It'd serve a similar function to a leak tracker in poker.

For this, we'd probably need to add a "matches#show" and "matches#edit" route. While this would add some slightly heavy feeling pages to the currently light UX, I think that future feature development will necessitate the addition of those regardless.

(As a side note, I'm the maintainer of Active Record and I'd love to submit a few PRs to clean up the models if you'd be open to that.)

Request: share stats with friends

Quickly: Thank you for this indispensable software.

The other product I use frequently is arena mastery, which has a "Share these stats with friends" link. I'd love to be able to do the same with trackobot.

Improvements to Decks feature

I'd like to develop a feature I'd find very useful myself:

  • Allow a more convenient way of importing/exporting decks.

This could be a simple JSON file dump option from your current deck list, with the ability to also import the file. Would allow users to conveniently share deck lists, in time providing the ability for everyone to see statistics not only versus classes, but versus specific decks instead.

Request: manually choose decks in an existing result

First of all, thank you so much for Track-o-bot! I'm on a Mac, and this is the first Hearthstone tracking app I've used that's been stable and felt good.

Anyways, my request: I just had a game that went like this:

Turn 3 Ragnaros rules, but the game was over so quick, Track-o-bot wasn't able to identify my deck :( I'd love it if there were a way to choose which deck I used so that I don't have to add key cards to my deck that don't really identify it (Wild Growth, Innervate, and Ragnaros are probably run in every Druid deck, and The Black Knight doesn't really distinguish between any of them either).

I write Rails full-time, so if you could suggest a strategy for implementing this, I'd be happy to give it a shot when I have some spare time!

Request: GET .json by uniq_id

Hi,

I open here a request for a GET function in the API to get game JSON by its unique ID, this way allowing for data analyst or webportals could access the game results and game data, allowing to create complete season reports, meta analysis, etc.

Some sites already offers this work by having their visitors trust their personal API's and usernames to the site, making the number of access you have in your server higher than it should be, but they also do not share the raw data they get fto create theirs analysis.

A feature such as this could work on the projects behalf: - A special api-key of this kind could be monetized and limited by a certain amount of requests per hour.

It will benefit the application in three fronts

  • Data analysts and tech writers would pay to access those data, creating a budget for servers.
  • Reports and analysis created using this feature will bring real game value to players on the field.
  • Users would not have to trust their personal api-keys to third parties in order to allow access to this amazing data track-o-bot has.

Idea: Filter deck stats by rank and time of day

I'm really interested to get more detailed statistics on how my decks perform at different ranks, and how my win rate changes over the course of the day.

This helps put the deck's win rates into perspective, and helps users to pick the right times to play specific game modes.

Just a thought...

Keep up the good work, and thanks for the last update with the overlays!

Reorder search logic / find all matches of search term

The search function on the history page doesn't seem to return the results the way I would expect.

My example was I would search for "Rogue" and expect it to find all results for or against the Rogue class. But it was matching my decks that are called "Oil Rogue" or "Aggro Rogue" and then only returning results for the first one.

Would it make sense to:
a. switch the order of the if statements, so that it searches by hero name first, before deck name? and
b. do something like where('deck_id in (... instead of just using the first deck match?

Then I could search for "Midrange" and get all decks marked as Midrange. And I could search "Rogue" and get all Rogue results.

Undefined decks in deck stats

I incorrectly opened an issue in the main track-o-bot repo.

The link the the previous issue:
stevschmid/track-o-bot#78

The gist of it is that I would like stats of how decks I have entered into trackobot match up against unknown decks/decks I have not entered into trackobot.

Thanks for working on a great tracker!

Best,
Rustom

Deck vs. Class

Would anyone else care for a stat view that lists the win percentages of one deck against the other classes (rather than against other decks)?

I think it would be neat and in some cases more accurate, as decks are not always identified correctly and different deck types often melt into each other. It's not really interesting to know how well you perform with a particular class. You're always worried about the performance of individual decks. So the more information you get about how a different deck performs in specific scenarios, the better.

Show match tags in JSON/CSV output

Any added tags are currently not shown in JSON/CSV, which means if one wanted to programmatically fetch these it would require html scraping.

Uninstalling does not stop application

When you uninstall the program it does not stop the running application and says "some files could not be removed". This results in the application entry getting removed, but the application still remains (and actually started on boot).

Happens on Windows 8.1
Solution: Stop application before uninstalling.

Request: create an open database of hearthstone matches

Thank you for developing track-o-bot, great stuff!

Currently, there's no open database of hearthstone match history data (that i know of). Such an open database would be immensely useful for people wanting to do statistical analysis and machine learning work around hearthstone.

I suggest adding an opt-in way for a user to make his match history publicly available. Adding a "make my match history public" checkbox in the settings page will do the trick.

We could then display the match history of all users who opted-in, in a similar way to how your personal match history is displayed in your profile.

If this seems like a reasonable idea to you (from a privacy/product standpoint), I'm willing to implement this feature.

Get history starting from ID

Getting history by page is nice, but it would be great if I could specify an ID to start from and have that game and any games since that game returned.

Options for editing a match do not show class but only deck name

When editing a match, the control by which you can select a different deck than the one recognized by the system only shows the deck names instead of showing both the deck name and the class name. Naming a deck with the class name also (e.g. "Freeze Mage" instead of "Freeze") can be redundant in the UI because deck names are always shown alongside their class name... except in the mentioned widget.

Rank indicators in history are low-res

I am on my MacBook with Retina display, and I see sharp images for class indicators, but rank indicators are low-resolution in comparison:

screen shot 2016-06-23 at 12 41 24 am

The CSS for these images suggests that there was some attempt of image swapping for high-resolution displays, but the separate CSS rule simply loads the same (low-res) image again.

My suggestion would be that, due to the lack of high-res images for this, simple numbers as text could be used instead? I don't think it's really visually important that the rank indicators be identical to how they look in the game.

Arena stats not showing runs

I have two arena runs this month. You can see them on the main arena stats page.

capture

However, if you click on Warlock, that page shows my W/L count, but says I have 0 runs.

capture

Average match duration

Something I would love to see in trackobot would be a display of average match duration for each deck/class. It would be very useful for helping select a deck for laddering

Possibility to Manually Add Matches to the History

While I like the simplicity of your website and especially the option to define certain decks for the statistics, I feel like the option to manually add games might be worth considering. Just now, Track-o-Bot was not able to submit a match I got temporarily disconnected from. Resuming and finishing it, Hearthstone showed me the ususal dialogue along the lines "You got disconnected mid-game, and you now need to restart the client because it failed to fetch some data from the utility servers. Your recent outcome still counts". Track-o-Bot ran the entire time but seemed unable to get its required information to submit them. Of course, not having connection issues would be one way to address the problem, but seldom do we choose to lag or dc, I guess :)

Additionally, now that HS is out for mobile devices, keeping track of the games played on-the-go or just not on your computer is not possible as of now.

Being a compete layman and only having found threads about removing entries here, I do not know how much of a hassle it might pose to implement this feature but I thought I'd just chime in to bring up the issue.

Issue with double history

since Yesterday i get every match twice in the history list which messes up the list and the amount of matches (of course not the ratio). I had to remove the doubles by hand but there must be a soulution.

MAC 0.8.6 Yosemite
(HDTracker is also running but this was no issue before)

Filter decks by class

It would be nice to show only, for example, paladin decks when user is changing a deck type for paladin in match history. Now the list of options contains all decks configured before.

Rank not being displayed

I can see in the debug logs the data sent to the site and it includes the correct rank number, but on the server end when I update to see the game the rank is not displayed and I have to manually add it.

Playing on Windows 10.

Remember stats page filter

When I go to the stats page I always do the same thing – set filter to Ranked for Current month. It would be nice to save this as preferred filter for user (store in cookies, session, wherever).

screenshot 2015-12-19 18 25 21

Export game history to JSON/CSV in date range

Currently you can do it by page, which is great, and it is easily retrieved by the API, but it would be great if it were possible to do a mass export to either CSV or JSON for a specific date range rather than just the current page.

Time summary

It would be nice to see time total played for deck/class on the stats page.

API auth

Hello!

First of all, good job on track-o-bot! That's also great to open source it.

I began working on a little companion Android App that will use the API.

At first, I'll show a "login" screen so the user enters his username and token. I'd like to have a way to ask the API if these credentials are valid.

As for now, I could try to get the history or any other json, and if it does return an error I would take for granted that the credentials are not correct.

But I think that would be a nice addition to have a simple "auth".

Thanks!

A recent ranked game curiously doesn't have rank indicator

This is how I see it:

screen shot 2016-06-23 at 8 46 08 pm

The loss vs. “other hunter” doesn't have a rank indicator, although it was clearly at rank 5.

This is not a huge issue; just wondering if anyone else has seen something similar. Wondering how to debug this?

In Progress: Delete Results from History

I'm opening this thread to start communication on where you would like to see this feature be taken (delete results from History).

I have nearly all the back-end stuff done but need to work on the UI/UX ( here is mock-up https://cloudup.com/c8cpSYkSnW6 ). I'm imagining that there will be an edit "mode" such that when the user clicks "Edit History" the checkboxes and "Delete Selected" button will appear. The "Edit History" button will have to change to say something like "Cancel Edit."

EDIT: I was thinking of an alternative approach inspired by Google Inbox: When the user hovers over the player hero's icon it will switch to a checkbox. When the user checks one or more rows it will display the bulk edit controls (e.g. Delete).

For now, Arena results cannot be deleted since there are further considerations. I didn't dig into the result submission code yet, but I'm guessing the arena gets created after the first arena result is created. Not sure if there can be an empty arena. I noticed in the arena view it calls arena.results.created_at which will error if the last result in an arena is deleted. But that's something we can discuss how to handle. I will have the checkboxes disabled on Arena results for now.

Decks are not saved when match result is uploaded manually

When I post results to /profile/results.json decks used in the match are ignored and are returned as null in the response. Example:

{
  "result": {
    "mode": "ranked",
    "hero": "Warlock",
    "hero_deck": "RenoLock",
    "opponent": "Mage",
    "opponent_deck": "TempoMage",
    "win": false,
    "duration": "300",
    "rank": "16",
    "added": "2016-03-02T12:20:14.532Z"
  }
}

Result:

{
  "result": {
    "id": 21614152,
    "mode": "ranked",
    "hero": "Warlock",
    "hero_deck": null,
    "opponent": "Mage",
    "opponent_deck": null,
    "coin": null,
    "result": "loss",
    "duration": 300,
    "rank": 16,
    "legend": null,
    "added": "2016-03-02T12:20:14.532Z",
    "card_history": []
  }
}

It would be nice to have this feature, cause this is the only blocker for a potential mobile application for track-o-bot

Make Decks available in the API

Hi,

I've started working on a tiny iOS companion app for Track-o-Bot, since I play a lot of HS on iPad.

Basic functionality (authenticating & creating new results) works fine. As a next step, I wanted to be able to pick the Deck used in each game, and for that I need to be able to access the list of user-defined decks via the API. At the moment, this seems impossible. Using a URL like

https://trackobot.com/profile/settings/decks.json?username=<username>&token=<token>

leads to an internal server error

{"status":"500","error":"Internal Server Error"}

Would be real nice if you could at some point enable access to the decks via the API.

Anyway, thanks for this nice, clean and minimal HS tracker!

Card tooltips in Timeline view

I was thinking it would be nice if card tooltips were shown when the user hovers over a card in the timeline view. I have something like this in mind:

I know of two sites that provide Javascript tooltip service for HS cards: HearthPwn and Hearthhead. Unfortunately, both of them require you to know the site-specific IDs for cards to construct the url.

However, I might have found a bit of a loophole. The url format for Hearthhead card images contains the HearthStone card IDs. Something like:

http://wow.zamimg.com/images/hearthstone/cards/enus/original/BRMC_91.png

So we can obtain card images using the Cards.ref field. The show/hide and positioning logic can be implemented with some simple Javascript (or we can use a lightweight plugin.)

What do you think? If this sounds like a good idea to you, I would be interested in working on it.

Store and expose region

The newest Track-o-Bot client detects and sends the region along with every result. Store it and expose via API.

Deck stats show lines for decks that have never been played/encountered

The table in the deck stats page shows lines for every defined deck, even decks that have never been played/encountered. In the case many decks have been defined, the page results unnecessarily long. Please show only stats for relevant decks, i.e. decks played and decks with actual matches against played decks.

Detailed statistics via JSON

Hi,

I'd like to be able to download more detailed data from what I've submitted to track-o-bot— basically a paginated JSON response with an array of every game I've tracked with the date/time, class, deck name (if any), and opposing class/deck. This way I could do something like build a script to track statistics on a per-season basis using my personal data. If I built this feature would you consider merging & deploying it to the production site and if so where would you want me to wire it up on the front-end?

Request: storing Arena decks

I've recently had a good Arena run and a friend asked me which deck I used. I didn't screenshot it at the time, so I thought that Trackobot might have the info. I can get the info about cards played during that entire Arena run, and from the JSON dump I can manually extract some statistics about which cards I played the most, but I can't tell generated cards (spells from Conjurer, for instance) from those I actually had in the deck. It would be great if deck information would be readily available for a single Arena run.

  1. Does Track-o-bot client have access to this data?
  2. Does it report it to the data collection API?
  3. Could Trackobot.com show the deck used during a certain Arena run?

If we have the data, I would be willing to add this feature to Trackobot.com. However if Track-o-bot client doesn't collect this data yet, I understand that making this feature might require a lot more work. Let me know what you think. Thanks!

Add new (Karazhan) archetypes

Hi,

as posted on reddit I think it would be necessary (or at least nice) to have updated archetypes now that KARA is out.

I can write a pull request if you like (am I right that only trackobot.com/db/decks.json needs to be updated?).

As pointed out in the reddit post, a probably even better idea would be to have an automatically updated list of archetypes. However, a reliable source has to be decided upon. TempoStorm's Meta Snapshot seems reasonable, ViciousSyndicate's Data Reaper Report that relies on trackobot might also be quite good.

Tell me what you think, and if I can help (I'm not a rubyist, but that wouldn't be the first time I have to write a pull-request in a language I don't use :P).

Invalid card history rendering

If some opponent moves were skipped without any card play of hero power use, previous and next of your moves will be combined in one turn.
wrong_order
I think it will also clue opponents moves in one if your skip one turn, but I don't test this. It suppose to be rendering problem, because in json raw data this error doesn't exist:

{"card_history": [
{
    "card": {
        "id": "FP1_011",
        "mana": 1,
        "name": "Webspinner"
    },
    "player": "me",
    "turn": 1
},
{
    "card": {
        "id": "DS1h_292",
        "mana": 2,
        "name": "Steady Shot"
    },
    "player": "me",
    "turn": 2
},
{
    "card": {
        "id": "CS2_034",
        "mana": 2,
        "name": "Fireblast"
    },
    "player": "opponent",
    "turn": 2
}]}

Remove Deck Association?

There are a few rare instances where an opponent's deck is wrongly recognized as a specific deck, and you don't want to create a new deck type, because a) it's either not a deck you want in your list or b) you just don't know which one the other guy played. In this case there does not seem to be a way to remove the deck association (so that the stats are not skewed) or did I overlook something?

Not a big issue, just a minor thing to help maximize stat accuracy.

[Linux] Trackobot compiles and runs. Can access GUI, but program isn't uploading match results

Please see topic/subject. Not sure where to proceed from here? What info would you like on my system?

http://i.imgur.com/gJaayyg.png - Please note that it says Hearthstone found.
http://i.imgur.com/uyGcw1K.png - Clicking check for updates now doesn't seem to do anything.

I'm not getting any error messages at all in terminal. Just some warnings:

gnum@vincent-desktop ~/src/track-o-bot-master/build $ ./Track-o-Bot
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
Fontconfig warning: FcPattern object size does not accept value 10(i)
Fontconfig warning: FcPattern object size does not accept value 10(i)
Created new window in existing browser session.
Fontconfig warning: FcPattern object size does not accept value 10(i)
Fontconfig warning: FcPattern object size does not accept value 10(i)
Created new window in existing browser session.
Fontconfig warning: FcPattern object size does not accept value 10(i)
Fontconfig warning: FcPattern object size does not accept value 10(i)
Created new window in existing browser session.
Fontconfig warning: FcPattern object size does not accept value 10(i)
Fontconfig warning: FcPattern object size does not accept value 10(i)
Created new window in existing browser session.
Fontconfig warning: FcPattern object size does not accept value 10(i)
Fontconfig warning: FcPattern object size does not accept value 10(i)
Created new window in existing browser session.

Is this simply a java permissions issue? How can I diagnose this?

gnum@vincent-desktop ~/src/track-o-bot-master/build $ uname -a
Linux vincent-desktop 4.0.4-gentoo #17 SMP PREEMPT Thu Jun 4 17:54:01 EDT 2015 x86_64 Intel(R) Core(TM)2 Quad CPU Q9550 @ 2.83GHz GenuineIntel GNU/Linux

Thanks in advance.

Edit: Is it possible I'm missing a dependency somehow?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.