T1 Match History

1 view
Skip to first unread message

Giuseppina Worster

unread,
Jul 26, 2024, 2:22:16 AM7/26/24
to bfq-iosched

Where do you go when you want to check match history for a game you recently played? Chances are, it's probably the client or a community website. Very few players use our official Match History site, and we're okay with that.

Web match history is in a similar situation as Clubs was: Community sites have done amazing things with the match data provided by our APIs, far surpassing our site. So, as with Clubs, we're going to fully hand things over to these experts. On September 7 around 10:00 AM PST, the League Web Match History site will be permanently taken offline.

It has ben stated multiple times on the Bug Report forum that Blizzard simply does not store game information at such a detailed level. Once the game is over, the only thing Blizzard keeps on its servers is the match result.

It is of course at least theoretically possible for Blizzard to build a system to log the games at such level, and then allow players access to that logged data. But that would obviously only catch the games played after it is made.
Realistically, I do not expect this to happen. Too much cost for too little gain for the company.

Before I wrote this thread, I actually did send Blizzard this data acquisition request (they have a separate form to fill out on their website), not sure if its GDPR related or not, but I would guess not because I live and play Hearthstone from Canada.

Blizzard is a business. Their purpose is to make money. Make money by investing into something that pays more than it costs.
When I think about HotS, I see action scenes and I understand the appeal of people wanting to review those. Check whether what they saw in a split second was correct or whether they made the wrong decisions. Show off their cool moves to their friends. Learn from their mistakes.

I think that feature is WAY overdue, the number of time game is 100% fine and I lose on 1 card ( or a combo ) i have never seen before and have no way to know what it was because the game is over is silly - basic analysis of your own game is a good feature.

As far as Blizzard not storing history is a lame excuse - That feature can easily be 100% client side and likely less than 3 Days of dev. The history is already sent play by play to the client during the game ( and displayed during the game ) , writing an event log client side is half a day of work to allow the client to look back at these after the game.

I just played an amazing match, where the opponent made a play just to point out something that I'd missed before beating them. I want to send a friend request to them to say "that was awesome, thanks!", and maybe play them again - but there's no way for me to find their full ID#.

However, I would highly advise against personal messages to people that are not on your friends list. For the players that like to utilize "hate" decks, I feel they would be targeting for some unpleasant messages.

All of your personal information, including email address, name, and IP address will be deleted from this site. Any feedback you have provided that others have supported will be attributed to "Anonymous". All of your ideas without support will be deleted.

Trading would likely break a ton of stuff while not fixing the economy problem. Meanwhile, the economy itself could be easily fixed with better design decisions and almost no changes to underlying code.

If it bothers you, just play in a different language. All other languages call it a CCG instead. The only reason "trading" is in the name is because it was the more popular of the two phrases in English in the 90s. It never actually referred to trading, which is why you can't offer to trade cards with your opponent mid-game.

I completely agree with adding a feature for match history. I want to get better at this game, and the only way I can do so is to review my mistakes. I don't want to record my matches because it will take a lot of memory. I would greatly appreciate a match history feature that shows not only my cards but my opponent's cards too. Other games like LoL and chess have this and I think it's a fantastic tool to help people get better.

With an average three-set tennis match lasting 90 minutes, tennis players are some of the fittest athletes in the world, and American John Isner and Frenchman Nicolas Mahut put on an exhibition of fitness, grit, and endurance at the 2010 Wimbledon.

The players returned on the following day and began their long vigil in the fifth set, relentlessly holding their serves before play had to be suspended again due to no natural light, stretching the match to an unprecedented third day.

The American eventually prevailed, holding serve in the 137th game of the fifth set, and then broke Mahut in the 138th to prevail in the marathon match and progress to the second round. The fifth set alone lasted eight hours and 11 minutes.

However, new scoring systems have been put in place at different Grand Slams now. At the Australian Open, in case the final set is tied at 6-6, a super tie-break (first player to reach 10 points) is employed to determine the winner.

I just checked out the Steam Web API documentation and wrote a little program to get Data and write it in a file, but I have an issue with the commands GetMatchHistoryBySequenceNum and GetMatchHistory, so I have two questions about that.

Somehow, the parameter start_at_match_seq_num does not work. I always get the same results. I know I need the sequence id instead of the match id, but the sequence id is a number in between 0 and 100 when using GetMatchHistoryBySequenceNum.

I want to use GetMatchHistoryBySequenceNum instead of GetMatchHistory because GetMatchHistory shows weird behaviour: It returns you the latest finished games, ordered by the starting time, not the finishing time. This is extremely unsuited, because it returns you many games with game length under 10 minutes, and rarely games over 30 minutes.

If you are developing your actual dynamic API calls, (first make sure you have implemented a suitable request limit as above) consider using the Dota2 Beta TEST API, which works identically to the Dota2 Beta API, except its urls are different:

The match player ratings use the WhoScored rating algorithm, which is considered the most respected and accurate rating system in football. The algorithm is their own, but the stats the rating is based on are sourced straight from Opta.

Again, SofaScore is powered by Opta stats - the only difference being that their key pass stats also include Opta's "Second Assist" in addition to passes that lead to shots. The definition for this is "a pass that creates an opportunity for another player to assist a goal", however this is a relatively rare occurrence.

I would like to know are there examples or suggested ways to store a match state history after a game has ended, for example into a database for analytics, or for a client to be able to later retrieve and replay what happened in the match?

I am doing a turn-based game, so my idea was to use a LinkedList - so during a change to nakama match state i would store an additional field called prevState which contains the whole previous state, all the way to the beginning. Just as an example, match state would look something like:

Is your game deterministic? For example, would Player A taking Action X always have the same impact on the game state or is there an element of randomness? If it is deterministic then I would suggest simply storing an array of actions which can later be replayed by the client if they wanted to review the match.

With regards to the shuffling, you can likely represent this as an entry in the state history too. Once the shuffle has been performed, store the result as an entry in the state history. You could for example have an entry that looks something like:

A match is a tool for starting a fire. Typically, matches are made of small wooden sticks or stiff paper. One end is coated with a material that can be ignited by friction generated by striking the match against a suitable surface.[1] Wooden matches are packaged in matchboxes, and paper matches are partially cut into rows and stapled into matchbooks. The coated end of a match, known as the match "head", consists of a bead of active ingredients and binder, often colored for easier inspection. There are two main types of matches: safety matches, which can be struck only against a specially prepared surface, and strike-anywhere matches, for which any suitably frictional surface can be used.

The word match derives from Old French mche, referring to the wick of a candle.[2]Historically, the term match referred to lengths of cord (later cambric) impregnated with chemicals, and allowed to burn continuously.[1] These were used to light fires and fire guns (see matchlock) and cannons (see linstock)[3] and to detonate explosive devices such as dynamite sticks. Such matches were characterised by their burning speed i.e. quick match and slow match. Depending on its formulation, a slow match burns at a rate of around 30 cm (1 ft) per hour and a quick match at 4 to 60 centimetres (2 to 24 in) per minute.

The modern equivalent of a match (in the sense of a burnable cord) is the simple fuse such as a visco fuse, still used in pyrotechnics to obtain a controlled time delay before ignition.[4] The original meaning of the word still persists in some pyrotechnics terms, such as black match (a black-powder-impregnated fuse) and Bengal match (a firework akin to sparklers producing a relatively long-burning, colored flame). However, when friction matches became commonplace, the term match came to refer mainly to these.

If there occurs an emergency at night it may take some time to make a light to light a lamp. But an ingenious man devised the system of impregnating little sticks of pinewood with sulfur and storing them ready for use. At the slightest touch of fire, they burst into flame. One gets a little flame like an ear of corn. This marvelous thing was formerly called a "light-bringing slave", but afterward when it became an article of commerce its name was changed to 'fire inch-stick'.[5]

Reply all
Reply to author
Forward
0 new messages