HTs on Global/Clone bug

From Hattrick

Keywords: (Clone bug), (Youth pull)

By: HT-Mattias 3391068.32 as reply to 3391068.6
To: GetAssista 22-06-2005, at 01:39
He-he, nice! Must be indeed some time seed in YP RNG

You are correct. The bug that creates the clones is that when two players make a youth pull within the same 3 milliseconds, the same random seed will be used. Therefore the players will be identical. This does not happen often, but with 600,000 active players it does happen sometimes.

We will fix this bug shortly.

Keywords: (Clone bug), (Youth pull)

By: HT-Mattias 3391068.36 as reply to 3391068.35
To: Grischenko 22-06-2005, at 01:58
You are correct. We will construct the seed out of the time and the team number, so that all youth pulls get a unique seed.

Keywords: (Clone bug), (Youth pull)

By: HT-Mattias 3391068.52 as reply to 3391068.37
To: ballord 22-06-2005, at 11:23
Should that really prevent clones from being pulled? I think in some way that's impossible. Like, let's say you use time divided by team id to get the random seed. Well, in that case different times could, divided by proportional team ids, result in the same seed.

The trick is to construct a seed not by dividing time by teamID, but rater in this way: time*C+teamID, where C is a number that is larger than the largest teamID. This will always create a unique seed.

Keywords: (Clone bug), (Youth pull)

By: HT-Mattias 3391068.53 as reply to 3391068.46
To: _Diegol_ 22-06-2005, at 11:25
Maybe that seed will make some teams more propitious to pull better players than others.

No, the random function is random enough, so that won't be the case.

Keywords: (Clone bug), (Youth pull)

By: HT-Mattias 3391068.84 as reply to 3391068.71
To: Ratsia 23-06-2005, at 02:44
It is correct that the first number (and arguably another few numbers) after reseeding typically has a detectable link to the seed.

To counter that, we call the random function a couple of times to "shuffle the deck" before we start using the numbers.

Due to the parallel nature of Hattrick, where many youth pulls can happen simultaneously, the practical solution is to reseed every time. And to make sure that we have a unique seed.

Regarding your fear that the random generator might only use the last few bits of the seed, let me assure you that we have made sure that in fact the whole seed is used.

We have made a statistical analysis of the youth pulls, and the distribution is in fact very random and is shaped as we want it.

Now, the change we have made (implemented tonight), only affects the selection of the seed. The way the player skills are calculated is unchanged. So the only difference will be the fact that there will be no more clones, since the same seed will not be used twice in the future.

Keywords: (Clone bug), (Player faces)

By: HT-Bjorn 2606121.12 as reply to 2606121.3
To: Sir_Maertens 21-02-2005, at 01:46
I do not have time to dig deeply into every single example provided here, so I just dove into comparing two of them, that you seem to imply are identical to the extent that they need to have been generated by an identical random sequence. I took the first two from your list that had identical faces, namely number two and three:

Evert Tähkämaa (55448998)
Giorgio Tischler (55252860)

True, these two are the same age and also happens to have exactly identical faces and seem to have the same skill levels. However, as you probably know, the skills are actually stored with loads of decimals and when I compare these two, all the skills differs in the decimals. This cannot possibly be due to training, so in every literal sense, these two players are completely different (except for the face and some attributes that do not have decimals, such as the age).

The hypothesis of an Attack of the Clones can hereby be firmly refuted :)

If there seems to be an upsurge in similar players, it is no doubt because of the Transfer Compare feature that makes it easier to spot them.

Keywords: (Clone bug), (Player creation)

By: HT-Bjorn 2606121.27 as reply to 2606121.26
To: PatoBravo 21-02-2005, at 03:41
There is a recurrent theory that players are not individually and randomly generated, istead they are selected randomly from a pre-created database.

Do you wish to clarify this?

They are generated on the fly randomly.

The only thing that is selected randomly from a pre-created database is the names, which realistically only can be created this way of course.

Keywords: (Clone bug)

By: HT-Bjorn 2606121.17 as reply to 2606121.16
To: LA-Tsukumo 21-02-2005, at 02:14
I've seen a similar thing happening in a larger scale with some non-bot teams. Most of their players were very alike, too much to be just a coincidence.

Didn't you guys read my post?

Two players being "very much alike" is a pure coincidence unless they are identical. I can see the decimals, you can't. I see that they are totally different. if one player has 6.06384764 and another 6.3658374764 you are saying (although you use several such parameters of course) - "Hey, these guys have both 6 - how can that be a coincidence!?".

I say that from a “randomness working properly perspective" 6.06384764 is no more similar to 6.3658374764 than is say 5.274646373.

Keywords: (Clone bug)

By: HT-Bjorn 2606121.24 as reply to 2606121.22
To: LA-Tsukumo 21-02-2005, at 02:53
I know, Bjorn, but it was not the very same case. There were two teams (they had been just created for 2 new users) with like 9 or 10 players with same names and skills alike is something I cannot accept as a coincidence. If you use chi-square tests or something like that, you will see this goes out of any possible range of the weirdest coincidence.

Too bad I don't have the link to the teams, I saw this like 2 seasons ago. Until I have these links, I doubt I can prove you this really happened.

OK, you didn't mention that. However, something that happened 2 seasons ago or more is hardly anything we'd look into now anyway (nor could we). :)

The issue here was weather there is a sudden upsurge in this, and I see no signs about this, except that people are noticing SIMILAR (but not identical players) to a larger extent than before because of the Transfer Compare feature.

Having seen that there is no such new and current problem, I will leave the issue here.

Keywords: (Clone bug), (Skills)

By: HT-Bjorn 2606121.30 as reply to 2606121.29
To: dudup 21-02-2005, at 05:34
Are the skills independently generated?


Keywords: (Clone bug)

By: HT-Bjorn 2606121.216 as reply to 2606121.53
To: Sir_Maertens 21-02-2005, at 17:04
Mikkel Randen (54787289)

Dimitri Barrink (55589885)
Marlon Mumment (55439977)
Henrik Robertsson

17 years, passable form, healthy

Total Skill Index (TSI): 3 300
Wage: 900 €/week

Stamina: passable Goaltending: disastrous
Playmaking: solid Passing: solid
Winger: weak Defending: passable
Scoring: wretched Set Pieces: weak

Benny Molquist (55174303)
Mattias Andersson (55599178)
Hidde Philippe (55569014)
Dickee Johnson (55605164)
Mo van der Varst
Barry van Hassel
Ezio Ciappesoni
17 years, passable form, healthy

Total Skill Index (TSI): 1 650
Wage: 716 €/week

Stamina: poor Goaltending: disastrous
Playmaking: solid Passing: passable
Winger: weak Defending: inadequate
Scoring: poor Set Pieces: weak

Frank Grensjö (55596208)
Gregorio Van Den Abeele (55518127)
Kjell Dahle
Romicã Ispas
17 years, passable form, healthy

Speciality: Quick

Total Skill Index (TSI): 4 900
Wage: 1 021 €/week

Stamina: inadequate Goaltending: disastrous
Playmaking: solid Passing: passable
Winger: solid Defending: weak
Scoring: passable Set Pieces: wretched

Peter Säflind (54925974)
David Egerton (55379964)
Bucky Hirsh (55716955)
Corné Doeleman (55646015)
Hanspeter Bossard (55433841)
Eduardo Effgen
17 years, passable form, healthy

Total Skill Index (TSI): 460
Wage: 558 €/week

Stamina: wretched Goaltending: disastrous
Playmaking: solid Passing: passable
Winger: poor Defending: wretched
Scoring: poor Set Pieces: weak

Bert Maessen (55025183)
Joe van Tilborg (55627094)
Zsolt Csont
17 years, passable form, healthy

Total Skill Index (TSI): 1 710
Wage: 712 €/week

Stamina: poor Goaltending: disastrous
Playmaking: solid Passing: passable
Winger: poor Defending: wretched
Scoring: solid Set Pieces: poor

Knud-Erik Vinkler (55600707)
Benone Negrea (55499014)
Stefan Wade (55520713)
17 years, passable form, healthy

Total Skill Index (TSI): 1 130
Wage: 661 €/week

Stamina: weak Goaltending: disastrous
Playmaking: solid Passing: passable
Winger: inadequate Defending: wretched
Scoring: wretched Set Pieces: poor

Luís Pessoa (54873726)
Evert Tähkämaa (55448998)
Giorgio Tischler (55252860)
Edo Coppens (55585560)
Pancracio Tagle (55636835)
Rutger Bertl
17 years, passable form, healthy

Speciality: Unpredictable

Total Skill Index (TSI): 1 220
Wage: 645 €/week

Stamina: weak Goaltending: disastrous
Playmaking: solid Passing: passable
Winger: weak Defending: weak
Scoring: poor Set Pieces: poor

Tue Frederiksen (55603674)
Patrik Ramfeldt (55605965)
Mike van Sorge (55636327)
Piero Bianchi (55500606)
Sammie Walker
17 years, passable form, healthy

Speciality: Quick

Total Skill Index (TSI): 1 240
Wage: 628 €/week

Stamina: weak Goaltending: disastrous
Playmaking: solid Passing: passable
Winger: inadequate Defending: poor
Scoring: inadequate Set Pieces: weak

Dom Wainwright (55090255)
Frank Nilsen (55385407)
Martin Strand (55378490)
Adrián Ruiz
17 years, passable form, healthy

Total Skill Index (TSI): 1 420
Wage: 644 €/week

Stamina: weak Goaltending: disastrous
Playmaking: solid Passing: passable
Winger: poor Defending: poor
Scoring: passable Set Pieces: poor

Need more?

Ah, finally some solid examples! :-)

Thanks dude, these examples are very helpful.

I've looked into the first two sets of player you have there. The interesting thing is that, yes, some of their skills are identical into the last decimals. This cannot be a coincidence so it is clearly some sort of bug. The interesting thing is that some other attributes, such as the psychological attributes, of these players are not identical. Since these attributes are created at the same routine as the other ones, it should give me a good way of both finding the reason why this happens as well as a workaround for this problem.

Keywords: (Clone bug), (U-20)

By: HT-Bjorn 2606121.236 as reply to 2606121.235
To: Sir_Maertens 21-02-2005, at 18:50
U-20 teams will be much more exiting without those clones.

My goal is achieved, many people are angry at me now.

I'm not sure I understand what you mean here. Why will U-20 teams be better off and why would people be angry?

Keywords: (Clone bug), (U-20), (Youth pull)

By: HT-Bjorn 2606121.245 as reply to 2606121.238
To: Sir_Maertens 21-02-2005, at 19:23
because many 17 year old superpulls have clones in a few different countries. there is a winger type (TSI around 4000) that has been pulled at least 4 times in 4 different countries. If those guys are trained well, they will probably all reach their U-20 teams.

and people who were exploiting the clone thing for many months/years won't be happy if that will disappear... (they will blame me for doing so)

But what the bug did was not to create more of a certain kind of player, for instance very good ones, just that there are clones. But crappy clones have been just as common as good ones, so the general level of YPs has not been affected. I agree though that the U-20 teams could look silly with identical players opposing each other. :-)

As for people taking advantage of bugs, I will shed no tear for them just because that opportunity is taken away from them. :)

Anyhow. The bug is now fixed. The HT equivalent of the clone factory at planet Kamino has now been destroyed by the forces of good (me).


Thanks to all who helped with providing useful example thus helping me to track down this nasty old bug (yeah it must have been there for ages).

Keywords: (Clone bug)

By: HT-Bjorn 2606121.248 as reply to 2606121.241
To: bolla 21-02-2005, at 19:26
and we have in some cases selected players with high passing skill proven by clone-theory before others that we don't know.

Ah, I see... Well, it keeps amazing me how there always seems to be ways of taking advantage of even the most insignificant things somehow. With 500k users, there is always some clever type who comes up with a smart trick. :)

Keywords: (Clone bug)

By: HT-Bjorn 2606121.266 as reply to 2606121.262
To: Devil-insanity 21-02-2005, at 19:49
i little bit to quick fixed to be the total truth of the story imo , i just cant believe they would only spot it now and the fix it that easy ??? people are saying this for months maybe even years , tbh i still dont think u told us the truth and i also think we never will find out.

Is your login name perhaps related to the fact that what you just wrote sounds truly paranoid? ;)

I seems the world is full of people who have a world-view similar to the X Files and see government conspiracies and mysterious cover-ups everywhere, but your suspicion is, sorry to spoil the fun, utterly unfounded. We have no reason to do some mysterious cover-up by such a thing and yes, this was an easy fix. Most fixes are easy as soon as you have...

a) Been able to identify that there is actually is a problem, not just some incorrect and diffuse reports
b) Understand why it is happening
c) Can isolate the problem

As it happened, the examples provided in this thread turned out to indicate all three things in one go. After that all that was needed was to make some changes.

Keywords: (Clone bug)

By: HT-Bjorn 2606121.280 as reply to 2606121.273
To: Devil-insanity 21-02-2005, at 20:10
the evidence haves been given a million times in treads in the past. so please don’t come whit that.

The "evidence" I've seen previously have invariably shown that there is NO problem, because, like the examples I was first given in this thread, they were NOT clones. Then we finally got some real clones.

I am sure that there have been some proper evidence among the "million times" alleged clones have been posted, but unfortunately, we do not have time to read a million postings, let alone read them, dive into the database and then compare every single one of them.