Player creator

Dabo is working on a project to create an unofficial successor to EHM 2007. Use this forum to discuss his project and any features you would like to see in either the initial version or in a future version.
Post Reply
Hossmann
Junior League
Posts: 7
Joined: Tue Oct 26, 2010 10:11 pm

Post by Hossmann »

HoldenC wrote:
23qwerty wrote:
ElQuapo wrote:Is it possible to decide where players appearing (getting created) at various clubs are born?

In Denmark, and probably in many other nations, hockey is very local. For example I would imagine, that at least 90% of all youth players at Danish clubs are born in, or very close to, the city/town where the club they start playing hockey for is located.

In EHM this did not work very well, and players appearing at clubs would often have a birth city hundreds of miles away from the club they spawned at.
From what I noticed, in Canadian youth leagues, the players were born in or near the city they play in.
Sort of. The CHL (which is the WHL, OHL, and QMJHL) have fairly strict borders that force players born(or developed from a certain age) within those borders to play for teams from within those borders. So all players from Manitoba, Saskatchewan, Alberta, BC and western US states must play for WHL, all from Ontario and select states(I am a bit fuzzy on the US borders but luckily so is the CHL. For example Trevor Lewis from Utah played for Owen Sound in OHL after an appeal to CHL, not sure why as he should have been WHL) all play in OHL and QUebec, Nova Scotia, New Brunswick, PEI, Newfoundland and select states play in QMJHL.

The only exception to these rules is if a player gets released and subsquently every SINGLE team in a certain league passes on a player, can he go to another league. I cannot think of any examples of this off the top of my head and though they do happen, those players are not NHL or usually even AHL prospects. This possibility is so remote I would not bother programming it. I can see if I can find the US borders based on league a little later.

And if Junior A leagues(AJHL(where Joe Colbourne was drafted from), BCHL(Kyle Turris), etc) are going to be programmed in, I know all the rules from those as well so let me know.
I believe the only player I know of that went on to become a decent NHL prospect was Chris DiDomenico. Otherwise, I really don't know any.
User avatar
Javs
Minor League
Posts: 238
Joined: Mon Mar 07, 2005 11:48 pm
Location: Ontario

Post by Javs »

Hossmann wrote:
HoldenC wrote:
23qwerty wrote:
Same provience yes, near city not at all. The AAA midget leagues should be having players born in direct correspondance with the teams locations, which means players would come from around that cities area. For Junior A leagues (same as AAA) in EHM the players come from everywhere, which is simply not true. The NOJHL will draw from a wider range but still most players born north of sudbury and south of kapasaking will play in the NOJHL with a few players (maybe 25%) will go play in the SIJHL in thunder bay or down in the OPJHL.

If players are drafted to the OHL, the players normally would try and make a team local to the OHL squad, but this is all something I am more then willing to help on.
23qwerty
Prospect
Posts: 60
Joined: Tue Feb 10, 2009 6:31 am

Post by 23qwerty »

Javs wrote:
Hossmann wrote:
HoldenC wrote:
I wasn't talking about Junior, but in the BCHL, for example the Vernon Vipers have players from all over North America.
New York, New Jersey, Colorado, California, Ontario, Saskatchewan, Alberta, and of course BC.
User avatar
Javs
Minor League
Posts: 238
Joined: Mon Mar 07, 2005 11:48 pm
Location: Ontario

Post by Javs »

Same can be said for all Jr.A teams in the country.
23qwerty
Prospect
Posts: 60
Joined: Tue Feb 10, 2009 6:31 am

Post by 23qwerty »

Javs wrote:Same can be said for all Jr.A teams in the country.
Which is exactly the opposite of what you said..
For Junior A leagues (same as AAA) in EHM the players come from everywhere, which is simply not true.
User avatar
Javs
Minor League
Posts: 238
Joined: Mon Mar 07, 2005 11:48 pm
Location: Ontario

Post by Javs »

sorry i was talking about ehm, not real life

sorry for the confusion, just a little misunderstanding
Nightmare
Junior League
Posts: 29
Joined: Fri Jul 11, 2008 1:03 pm

Post by Nightmare »

I would like to add a request which implies a variation in talent production based on the evolution of facilities, national leagues, national team results(as a result rep of the national team and of the sport locally) and so on in each country. To give specific examples, we can all observe how Switzerland, Belarus, Latvia are steadily growing(the most spectacular being the swiss) while the Slovakia, even the Czech Rep. are on steady declines(most evidently the slovaks). There should also be a sort of periodicity, in talent production and results. For 3 years it's Russia on top, than Canada, than Sweden, that is what I see in not only the world of hockey, but the world of sports, and in life, in general. One day you're on top, the other you're not.
Back to my first point, it should all be the result in investment, this is why a simulated global economy is needed, coupled with the interest for hockey in each country and the willingness to invest of the different governments/federations in new arenas and such.
dabo
Dabo Hockey Manager
Posts: 511
Joined: Mon Dec 07, 2009 10:51 pm
Location: Västerås, Sweden

Post by dabo »

Good idea, will be something to look at in later versions, but not the first one.
LordTC
Junior League
Posts: 6
Joined: Sun May 01, 2011 11:49 pm

Re: Player Creator

Post by LordTC »

This is an ambitious suggestion but if it's something that's possible to do it will put you way ahead of any of the SI games.

Instead of having a CA and PA for overall ability due the following:

1. For each attribute have a current score and a maximum score.
2. Allow scouts to see both of these.
3. At the end of each year update the maximum score for players according to a reasonable probability distribution:

Something like: 1. Below 22 +1 25% 0 70% -1 5%
2. Below 28 +1 10% 0 85% -1 5%
3. Below 35 +1 5% 0 85% -1 10%
4. 35+ -1 15% 0 85%

Although you'll want separate distributions for physical, mental, technical (or possibly even attribute by attribute). If you want to use continuous distributions and then truncate you might want to consider assigning attributes as normal distributions and then updating with normal distributions because this lets you use Kalman filtering to reason about the distribution of prospects being created, but discrete distributions are reasonably simple as well.

This adds some noise that the scouts can't detect which makes drafting more interesting and it gets rid of silly things like trying to decrease certain attributes in order to raise others because of the CA/PA formula being broken.

You could also allow role directed increases of these attributes, so if you assign someone a defensive roll they are more likely to increase defensive skill potentials and vice versa.
dabo
Dabo Hockey Manager
Posts: 511
Joined: Mon Dec 07, 2009 10:51 pm
Location: Västerås, Sweden

Re: Player creator

Post by dabo »

We don't use overall CA and PA but we also don't use current/max score for each attribute. Currently those attributes that can be improved by means of practicing are grouped together in different practice areas. Each group has a number of slots assigned to it and as long as there are free slots the attributes in the group may improve. Some of these groups actually only contain one attribute so those attributes do in fact have individual "current/max scores". The attributes that are likely to improve as a player gains experience are grouped in a similar fashion as described above. As you suggest in #3 the max score, or the number of slots in our case, should not be constant; currently it is but this is one of the things that will be improved in the future. The way things are set up right now I don't expect it to require too much work we just need to figure out a proper way of determining when a number-of-slots-change is due.

I also have plans for short-term attribute boosts when a player is on a hot streak(Stamkos comes to mind) and perhaps the opposite too; but this is definitely one for the future.
Djungelurban
Prospect
Posts: 58
Joined: Thu Nov 26, 2009 9:57 am

Re: Player creator

Post by Djungelurban »

I really suggest you reconsider your choice to not use CA at all, it's gonna make filling out a database really difficult and even more so to get a balanced database, especially when it comes to players from small leagues. Otherwise you're gonna need to have a concrete opinion about every player's every attribute that you enter into the database and that's just not possible, especially when doing retro leagues. It's one thing to not have it play a part during simulation, but atleast when setting up a new game it really is necessary.

Or maybe I've misunderstood something...
dabo
Dabo Hockey Manager
Posts: 511
Joined: Mon Dec 07, 2009 10:51 pm
Location: Västerås, Sweden

Re: Player creator

Post by dabo »

I don't know what is involved in adding players to an ehm database but the way we have set it up only a small part of all the development fields in the database are mandatory to set. For each practice/experience area you have to set the number of development slots depending on how much a player is likely to improve in that area. You can see the number of slots field as PA for that particular area, setting it to 0 will mean the player will not improve anymore while setting it to 20 for a potential max improvement. Setting how quickly a player is likely to improve (not every area takes the same amount of time to improve even if practiced equally much) or regress (in case of injury etc.) in a specific area is optional; if nothing is set default values will be used.

Perhaps this is not the optimal solution for database researchers but I believe it will provide great support for individual development curves for players which will make the game more interesting.
Djungelurban
Prospect
Posts: 58
Joined: Thu Nov 26, 2009 9:57 am

Re: Player creator

Post by Djungelurban »

Actually as far as "skill points" in EHM goes, nothing is actually mandatory... If you don't enter anything it will just assign values randomly... But you can also just enter someone's CA and in those cases the game itself will assign the player appropriate values based on that... Meaning you can be as accurate or vague as you want for every player cause every value set to zero will be assigned by the database... But in order to do that somewhat well it needs something to go on and that something is the CA... I think your set up looks really good there, will give people a lot more customization when creating databases and in theory, improve accuracy... But I don't think the two setups need to be mutually exclusive...

But let's say I'll be doing that retro db... Now if I'm gonna try and enter into the database a second line right wing playing in the Czech second division 15 years ago... I mean, other than his stats, I have no idea what kind of a player he was. And odds are there's no one I would ever be able to ask cause no one remembers that random guy anyway... Based on his stats alone I can only get a very vague idea about who he was, his general skill level. This is where CA is so useful, instead of spending half an hour trying to figure out how I could design him to give make him somewhat accurate and balance the guy and so forth, I can just give him an overall value and bam, it's done. Maybe 30 seconds... And if you don't want it to restrict things too much, you can just use it as a database value to help fill out any value in pre game setup that's left unassigned in the database. If something is set to 0 it'll consult the CA or PA to get a hint what would be appropriate, but once every player has every value assigned already, it doesn't really serve much of a purpose so during gameplay it can be completely ignored or even thrown out by the game... It's just in the database creation phase that it would be useful...

Basically, I just think it should be as easy as possible to contribute, that's how you create an active community, and having a CA and PA in the db would do that... And since it actually doesn't create a conflict with what you've come up with, I don't really understand why one wouldn't...
dabo
Dabo Hockey Manager
Posts: 511
Joined: Mon Dec 07, 2009 10:51 pm
Location: Västerås, Sweden

Re: Player creator

Post by dabo »

Hmm so the database editor software you are using lets you set CA/PA and then it calculates player attributes for you based on that and adds the player to the database? I don't remember what the CA/PA intervals are but say 0-200 so if you want an average player you set for example 100 and the editor outputs a player for you? If you want this player to be a great goal scorer you can input attributes affecting that manually and leave the others blank to be randomly assigned?
Djungelurban
Prospect
Posts: 58
Joined: Thu Nov 26, 2009 9:57 am

Re: Player creator

Post by Djungelurban »

dabo wrote:Hmm so the database editor software you are using lets you set CA/PA and then it calculates player attributes for you based on that and adds the player to the database? I don't remember what the CA/PA intervals are but say 0-200 so if you want an average player you set for example 100 and the editor outputs a player for you? If you want this player to be a great goal scorer you can input attributes affecting that manually and leave the others blank to be randomly assigned?
Yup, pretty much yeah... :)

Edit: Yeah, think bruins below here said it best. In addition though there was also two values called "offensive role" and "defensive role"... Now, this is mostly just me speculating, but I think these values, depending how you set them (on a 1-20 scale), both regarding how high you set them aswell as the ratio between them, would influence how the randomized values were distributed... So like if you didn't know the specifics about a player, but sort of knew how good he was and that he was defensive minded, you could like assign "offensive role" to like 5 and "defensive role" to 20 and you'd get a randomly generated very defensive minded player out of it... Pretty sweet... :)
Last edited by Djungelurban on Thu Aug 11, 2011 7:29 pm, edited 1 time in total.
User avatar
bruins72
TBL Admin Team
Posts: 14513
Joined: Fri Jan 20, 2006 3:13 pm
Custom Rank: Challenge Guy
Favourite Team: Boston Bruins
Location: Taunton, MA

Re: Player creator

Post by bruins72 »

dabo wrote:Hmm so the database editor software you are using lets you set CA/PA and then it calculates player attributes for you based on that and adds the player to the database? I don't remember what the CA/PA intervals are but say 0-200 so if you want an average player you set for example 100 and the editor outputs a player for you? If you want this player to be a great goal scorer you can input attributes affecting that manually and leave the others blank to be randomly assigned?
To an extent, yes. In any areas you wish to be left as random, you enter a zero in it's place in the editor. When you start a new game, it will generate values for those attributes for the player. Here is the rub though... in some attributes (like mental attributes) it would generate a number between 1 and 20. In your technical skills, I believe it's supposed to factor in the average level an attribute is supposed to be for that CA.

I'm pretty sure this is correct but if I'm wrong, someone please say so. :nerd:
dabo
Dabo Hockey Manager
Posts: 511
Joined: Mon Dec 07, 2009 10:51 pm
Location: Västerås, Sweden

Re: Player creator

Post by dabo »

But by the time the game loads the database all players have all the attribute values assigned to them right? Otherwise if the game randomly assigns attributes while loading the database that the editor didn't wouldn't it get different everytime you load the database?
User avatar
nino33
Mr. Goalie
Posts: 6088
Joined: Sat Aug 07, 2010 3:37 am
Custom Rank: Retro Rosters Specialist
Favourite Team: 1970s hockey

Re: Player creator

Post by nino33 »

dabo wrote:But by the time the game loads the database all players have all the attribute values assigned to them right?
Yes. The "variable" attribute of "0" is determined by the game at game start up (the first time you start a brand new career).
That is why you can look in the Pre-Game Editor and see many places where "0' is entered for CA/PA and for various individual player/staff Attributes
BUT in the Saved-Game Editor these same places always have an actual number determined (no "0" anywhere in a Saved Game).


I have been working for awhile on a 1974 db for EHM07, and I've done some testing on using "0" as a CA/PA (default db has a few thousand of such players).....my results showed the game did not create every possible player from the full 0-200 range....
The game never seemed to make a really good player (140-200 CA/PA), and for every few thousand it only made a couple 120-130 CA/PA players and about a hundred 100-120 CA/PA players .
Through multiple tests, of the few thousands of "0" CA/PA players at start up, the game never made "the next Crosby/Ovechkin" (never made a high PA player, regardless of starting CA).

ALSO I'll say (in working on a historical db) I find using a "0" for various individual player Attributes helpful sometimes
just because filling out 25-40 attributes accurately for thousands of players is a lot to do (especially when Attributes interact with the game engine in ways that I don't fully understand...allowing the game to be "involved" I'm hoping makes the db more playable)
I'm thinking/hoping I can set CA/PA and OFF/DEF and 5-15 attributes of historical players and produce reasonable representations based on the fact I'm basing what I'm doing on what the game already does; "so far so good"
Part of the issue I'm facing is not knowing how the game handles the progression of overall development + individual skill development (and height/weight too) based on age (what are the numbers at 6-8 years of age? 10-12? 15-16? etc)

Regards
User avatar
archibalduk
TBL Admin Team
Posts: 20372
Joined: Tue Jul 06, 2004 8:44 pm
Custom Rank: Seaside + Fruit Juice Mode
Favourite Team: Guildford (EPL) / Invicta (NIHL)
Location: United Kingdom
Contact:

Re: Player creator

Post by archibalduk »

Any zero attribute in the database is randomly generated by EHM when starting a new game. The CA affects the generation of technical attributes only. For each CA there is a pre-determined average the technical attributes should be. For example, a player with a CA of 100 should have an average of 9 for his technical attributes. When it generates the attributes for players (those which have been set as zero) it will generate a number that maintains the average.

In addition, each technical attribute should not be more than six plus/minus the average. So for a player with a CA of 100, not only must his technical attributes average 9 but none of them should be any lower than 3 or higher than 15. This is another rule EHM follows when randomly generating the zero attributes.

Not only do these two rules affect any technical attributes set to zero, it also affects those attributes that have been set as 1-20 in the database. If, for example, you create a player with a CA of 100 and set all of his technical attributes to 20, EHM will alter the technical attributes so that they range between 3-15 and an overall average of 9. The reason EHM does this is to ensure that players have technical skills appropriate for their CA.

Edit: Just for completeness (this has already been mentioned above however); any other attributes that are not technical attributes are completely randomly generated (as far as I know) and are not dependent upon the CA.
Djungelurban
Prospect
Posts: 58
Joined: Thu Nov 26, 2009 9:57 am

Re: Player creator

Post by Djungelurban »

This obviously doesn't mean that DHM need to work the same way though...
dabo
Dabo Hockey Manager
Posts: 511
Joined: Mon Dec 07, 2009 10:51 pm
Location: Västerås, Sweden

Re: Player creator

Post by dabo »

I think we will use some of these ideas but have all the final attributes set before the database is loaded into the game. We can create a stand-alone editor application/site (jatahati) where you input CA/PA and have position and player type optional; this editor will use the same logic as the in-game player creator. So in the end you only have to enter two values and at most four and if you are unhappy about something you can just tweak the attributes after the generation has taken place.
User avatar
archibalduk
TBL Admin Team
Posts: 20372
Joined: Tue Jul 06, 2004 8:44 pm
Custom Rank: Seaside + Fruit Juice Mode
Favourite Team: Guildford (EPL) / Invicta (NIHL)
Location: United Kingdom
Contact:

Re: Player creator

Post by archibalduk »

Djungelurban wrote:This obviously doesn't mean that DHM need to work the same way though...
Absolutely. :thup: My post was just to answer the question with regards to how EHM does it - I didn't mean to suggest that this is how it would have to work in any other hockey game.
Dron
Junior League
Posts: 6
Joined: Sat Sep 17, 2011 9:18 pm
Location: Linköping

Re: Player creator

Post by Dron »

I haven´t read the entire thread, but i read the first few posts, this may have been posted, i dont know.

To make "bad/small" countries able to get top players you could do something similiar to this:

Player A retires
a regen of Player A is put in a pool of regens
at a certain date in the game all new regens are added, a certain number of players for each country, each country randomly picks regens from the pool which would mean there's a higher chance for bigger countries to get good players but still the small countries have a chance to get monsters.
dabo
Dabo Hockey Manager
Posts: 511
Joined: Mon Dec 07, 2009 10:51 pm
Location: Västerås, Sweden

Re: Player creator

Post by dabo »

In my most recent update I touched upon the subject of normal distribution and how to assign player height. I ended up doing what I wrote I had no interest in doing and calculated a mean value and standard deviation based on players of the ECHL (seemed to be a league of average height seeing as NHL has a high average and most EURO leagues have a low one). This is what I ended up with:

Mean: 183.97011952191235 cm
Standard deviation: 5.7636986991755483 cm

Generating the height of 1 000 000 players gave me the following result (in cm):

N: 1000000
Min: 157
Max: 212
<140: 0 0%
140-149: 0 0%
150-159: 8 0,0008%
160-169: 4681 0,4681%
170-179: 189152 18,9152%
180-189: 615017 61,5017%
190-199: 186595 18,6595%
200-209: 4540 0,454%
>209: 7 0,0007%

If you think this data should be based on another league or more than one league let me know your thoughts and I would appreciate any help. I also need to find height data for 14-15 year olds and do the same calculations; I know where to find data for swedish players but if anyone know where to find some for north american players (preferably in cm) please let me know.
User avatar
Manimal
TBL Admin Team
Posts: 6344
Joined: Thu Apr 24, 2008 4:01 am
Custom Rank: EHM Rosters Man
Favourite Team: Djurgårdens IF
Location: Karlstad, Sweden

Re: Player creator

Post by Manimal »

dabo wrote: I also need to find height data for 14-15 year olds and do the same calculations; I know where to find data for swedish players but if anyone know where to find some for north american players (preferably in cm) please let me know.
Try looking at the CHL drafts. WHL has only 14 year olds; OHL has only 15 year olds and QMJHL has 15 and 16 year olds(going by birthyear)
Post Reply