{"action":"created","issue":{"url":"https://api.github.com/repos/HearthSim/python-hearthstone/issues/27","repository_url":"https://api.github.com/repos/HearthSim/python-hearthstone","labels_url":"https://api.github.com/repos/HearthSim/python-hearthstone/issues/27/labels{/name}","comments_url":"https://api.github.com/repos/HearthSim/python-hearthstone/issues/27/comments","events_url":"https://api.github.com/repos/HearthSim/python-hearthstone/issues/27/events","html_url":"https://github.com/HearthSim/python-hearthstone/issues/27","id":324045213,"node_id":"MDU6SXNzdWUzMjQwNDUyMTM=","number":27,"title":"Hidden CHANGE_ENTITY results in invalid initial_card_id","user":{"login":"beheh","id":929769,"node_id":"MDQ6VXNlcjkyOTc2OQ==","avatar_url":"https://avatars2.githubusercontent.com/u/929769?v=4","gravatar_id":"","url":"https://api.github.com/users/beheh","html_url":"https://github.com/beheh","followers_url":"https://api.github.com/users/beheh/followers","following_url":"https://api.github.com/users/beheh/following{/other_user}","gists_url":"https://api.github.com/users/beheh/gists{/gist_id}","starred_url":"https://api.github.com/users/beheh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/beheh/subscriptions","organizations_url":"https://api.github.com/users/beheh/orgs","repos_url":"https://api.github.com/users/beheh/repos","events_url":"https://api.github.com/users/beheh/events{/privacy}","received_events_url":"https://api.github.com/users/beheh/received_events","type":"User","site_admin":false},"labels":[{"id":258154810,"node_id":"MDU6TGFiZWwyNTgxNTQ4MTA=","url":"https://api.github.com/repos/HearthSim/python-hearthstone/labels/bug","name":"bug","color":"fc2929","default":true}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-05-17T14:21:02Z","updated_at":"2018-07-04T15:37:41Z","closed_at":null,"author_association":"MEMBER","body":"Hidden CHANGE_ENTITY's result in non-collectible cards being in the initial deck. More specifically, `entities = player.initial_deck` will have entities where `entity.initial_card_id` is a card that was changed in the opponents hand. For some cards, such as transformed Worgens/identitied items/upgraded Spellstones we can reasonably assume that the cards were their non-transformed/unidentified/base Spellstone at the beginning of the game.\r\n\r\nIn hsredshift, we use a [manually maintained map](https://github.com/HearthSim/hsredshift/blob/eeeed17decceefc7160ead5dbfdf1c5eebab788a/hsredshift/etl/records.py#L173-L229) to correct these deck lists. We should make sure we also apply this for all games processed on HSReplay.net. For the sake of having a single source of truth, we could implement this map in HSReplay.net.\r\n\r\nIf we think this doesn't make sense in the library, we should reopen an issue on HSReplay.net and implement the map there as well. In that case we'd need to maintain two lists though (one in hsredshift and one in HSReplay.net), as the Redshift exporter directly uses the `python-hearthstone` exporter and does not pass through the HSReplay.net codebase."},"comment":{"url":"https://api.github.com/repos/HearthSim/python-hearthstone/issues/comments/402511934","html_url":"https://github.com/HearthSim/python-hearthstone/issues/27#issuecomment-402511934","issue_url":"https://api.github.com/repos/HearthSim/python-hearthstone/issues/27","id":402511934,"node_id":"MDEyOklzc3VlQ29tbWVudDQwMjUxMTkzNA==","user":{"login":"joolean","id":799596,"node_id":"MDQ6VXNlcjc5OTU5Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/799596?v=4","gravatar_id":"","url":"https://api.github.com/users/joolean","html_url":"https://github.com/joolean","followers_url":"https://api.github.com/users/joolean/followers","following_url":"https://api.github.com/users/joolean/following{/other_user}","gists_url":"https://api.github.com/users/joolean/gists{/gist_id}","starred_url":"https://api.github.com/users/joolean/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joolean/subscriptions","organizations_url":"https://api.github.com/users/joolean/orgs","repos_url":"https://api.github.com/users/joolean/repos","events_url":"https://api.github.com/users/joolean/events{/privacy}","received_events_url":"https://api.github.com/users/joolean/received_events","type":"User","site_admin":false},"created_at":"2018-07-04T15:37:41Z","updated_at":"2018-07-04T15:37:41Z","author_association":"NONE","body":"@beheh What is the incorrect behavior we're currently seeing in HSReplay.net? (Or elsewhere?)"}}
{"actor":{"display_login":"joolean"}}