The Blue Line

Dabo Hockey Manager

Dabo Hockey Manager

Dabo Hockey Manager (DHM) is a community project led by Dabo to create an unofficial successor to Eastside Hockey Manager 2007. The project is still in a very early stage development and a first alpha version is not expected for a long time indeed. However in the meantime we are brainstorming and developing ideas on what we would ideally like to see in the game. So if you have any suggestions then please do post them.

Get involved!

Want to help out with the development of the game? Dabo and his team are always looking for volunteers to assist with researching data for the game; such as teams, rosters, names, cities, etc.

Recent Topics

Development team information
by dave1927p » Fri Dec 27, 2013 2:33 am
Scouting & Drafting
by dejaqwho » Mon Jul 08, 2013 5:07 am
Non-Arbitrary Player Ability Ratings
by batdad » Sun Jan 27, 2013 1:35 am
Dabo Hockey Manager (WIP)
by CM0304 » Wed Jan 23, 2013 1:14 am
Researchers needed
by dabo » Sat Jan 12, 2013 12:11 pm
Youth Training / Development
by CM0304 » Fri Jan 04, 2013 7:16 pm
by Animal31 » Sat Dec 29, 2012 3:05 pm
Rating system
by Animal31 » Sat Dec 29, 2012 2:59 pm
Player creator
by Animal31 » Sat Dec 29, 2012 2:53 pm
Official researcher recruitment - Europe, Asia and Africa
by CM0304 » Thu Sep 20, 2012 9:14 am
Match Engine / Simulation
by Linden16 » Tue Sep 11, 2012 1:03 am
DABO,something you must read
by dabo » Sat Aug 25, 2012 3:18 pm
I will be contributing to the project
by m.alavoie88 » Wed Jul 25, 2012 4:34 pm
by CM0304 » Wed May 30, 2012 4:24 am
Online/Network Gameplay
by CM0304 » Fri Nov 25, 2011 2:38 am

24 July 2012 Update

by dabo @ Tue Jul 24, 2012 12:04 pm
Hello everyone,

I was planning on writing this update a long time ago but for some reason I didn't and then I went away on vacation. Anyway before I get into the main topic of this update, the match engine, I want to mention a few updates regarding the development team.

forza_ambri has joined the project as a programmer and will start working on how to load data from the database into the game as well as handling new games, loading and saving etc.

CircularTheory is now part of the team and will help us plan this project; this is something I should have done better from the start but having a person join the team that actually wants to do this will help a lot.

As I mentioned in the previous update my new focus is the match engine. This is a major part of a hockey simulator thus it is very important to get this right and it is going to require lots of work. I have looked into several levels of detail for the match engine, from instantly simulating a game by pressing a button to a 2d rink with coaching capabilities. Although I knew from the start that the latter would require lots and lots of work and was not planned for the first version I could not help but check out the possibility of realizing this in WPF. With my knowledge, WPF is not optimal for this but I know it can be done, I even did a test implementation where I am able to shoot the puck around in the rink and it bounces off the boards and slides along the corners smoothly. The tough part will be to add players and have them play realistically, realizing how time consuming this will be, based on the time it took to just implement the puck physics, I will stop here and continue when we feel we have time to put this much time into one single feature albeit an important one.

Instead for the first version I will focus on something simpler. My plan right now is to implement two versions:

  • Basic - Quick sim the entire game, you leave control to the coaches and get a result instantly.
  • Advance - Allows you to coach (or perhaps just watch) the team during a game, including making tactical- and line changes etc. The visual details of this version are not yet decided.

I want to be able to use the same engine for both versions and on top of that have either human or coach ai control depending on the version. This is going to require a good design to get right that is why I am going to let the design phase take its time and don't rush anything. I have already started this process and even made some small implementations to try and verify that I am on the right track. More about this in the next update.

Take care
9 comments  •  Post comment

15 April 2012 Update

by dabo @ Sun Apr 15, 2012 8:36 pm
Hi everyone this is the first update this year (not a day too soon), it appears everyone working on this project has been lacking motivation and/or free time lately but speaking for myself that is about to change.

In order to find some motivation I will put the integration of the player development part on the shelf for awhile and start on other tasks; both project management and development related ones. Dron has expressed the desire to come back and work on the game so I will be looking to find a suitable task for him to work on.

The main task I will start to work on is the match engine. On match day you will have two options, either quick-sim where you get the result directly (also used if you go on vacation) or a more detailed option where you can follow the match in real-time (or only the highlights). It is still undecided how detailed the advanced version will be at this point but I will have our future goals in mind when implementing it so that we don't have to do a complete rewrite in the future. I will provide more information in the next update. Go to the Match Engine / Simulation thread to discuss this, we want to know what you would expect in the first version.

YZG and I have started to look into the financial aspect of the game. Right now we are trying to indentify what should be included in the first version of the game so that we can setup appropriate tables in the pre-game database. Ticket prices is one thing that needs some planning, we could use some help from you guys so go check out the Finances thread at the forum if you want to help us.

YZG has also been working on formulas to handle dynamic reputations for nations, leagues and teams. This is an important feature and from what I have seen so far I think it looks very promising.

That's it for now.
0 comments  •  Post comment

17 December 2011 Update

by dabo @ Sat Dec 17, 2011 3:50 pm
Hello everyone,

A couple of months have passed since the last update and it really feels like time flies by. I will start this update with some bad news; Dron who recently joined the project has left the team due to personal reasons and the fact that he didn't feel he had enough experience to be part of a big project like this. Hopefully he will be able to come back one day when he feels more ready for the task.

Initially I was planning on going into details about the player creator in this update but I realized that there is quite a lot to integrate of what I have been doing lately so if chances are required I better carry them out before explaining how it works in case things change. I hope to be able to include this in the next update instead.

Jatahati's main focus has been on creating a replacement for the online database editor which we no longer can use. The new solution is a standalone database editor/importer software which will make it possible to add data from csv-files and excel-files or enter data directly into the database. The reasearchers have done an amazing job so far but all data are yet to be imported to the database hence the need for this software. Jatahati let me try it the other week so I know it has come a long way and should be ready soon.

In the mean time I have been working on implementing a way for players to gain weight, as I mentioned I would in the previous update. This turned out to be more time consuming and challenging than dealing with player height growth; after all we do not want unrealistic height/weight combinations. The implementation I have come up with now takes height growth and strength changes into consideration; mostly the latter (players will be able to lose weight too). I have done lots and lots of tweaking, and I believe there will be more, at this point and generating millions after millions of players just to make sure no unrealistic output is generated. Given bad input unrealistic output is still possible though. In order to limit or hopefully prevent players with strange body proportions I have introduced modified BMI. Regular BMI would consider many hockey players of good size being overweight or even obese but by modifying the intervals of what is considered underweight or overweight etc. I have manage to get pretty good results and a good way to limit the risk of players becoming emaciated or obese. Players who are outside the normal interval are likely to stay in the interval they currently are or move towards the normal interval thanks to a compensation factor which is included in the calculation of a weight increment/decrement. I do want to point out that we will still end up with players like Dustin Byfuglien who is actually interpreted as obese by BMI but not by my modified version. I am going to conclude this part by showing some numbers. The starting values, which are based on data from the Swedish Tv-Pucken tournament, for each player below are 178 cm (constant height growth) and 76 kg. A total of one million players were created.

Height (cm)Weight (kg)QuantityPercentageBMI

Finally I have some news regarding the research. We are happy to announce that YZG has been assigned the Head Researcher position where he will coordinate the research going forward with assistance from our newly appointed Assistant Head Researcher scout1982. YZG is preparing the research spreadsheets for phase two as we speak and will together with scout1982 start looking for researchers to help out. If you are interested keep an eye on the forum as YZG will make an announcement with more information when everything is ready.

Since this is the last update this year everyone involved in this project wants to take this opportunity and wish you all a Merry Christmas and a Happy New Year!
2 comments  •  Post comment

Dead or alive?

by dabo @ Sat Nov 05, 2011 1:42 pm

I have read on this forum recently and on other forums as well that people think this project is dying (or hinting that it is getting there) because we do not post news/screenshots every other week or seem to make progress as quickly as people would like. I just have to say that it annoys me a little when people with no information on how we work when we are not active posting here draw such conclusions; I know there are plenty of projects that have been started and died this way (and pretty quickly) but we have not been part of any of them. Some things we have been working on cannot be illustrated on a screenshot yet and thus we have decided not to post any news about it; so there are things that have not been revealed yet or at least directly. If this project somehow died I would be the first one to tell you, we would not just disappear and never post again. Because we are not posting news/screenshots every week does not mean nothing is happening. Of course our project cannot be compared to a project where the developers work 40hrs a week in regard to development speed; we have jobs/studies and some have kids that need to be prioritized. As a result, yes, there are weeks where no progress is made but there are also weeks where lots of progress is made. If we were planning on giving up on this project we would have done so a long time ago and not wasted this much of our free time and involved lots of researchers. Speaking for myself I am as commited, if not more, to release a playable version as I was when I first started this; partly thanks to the great feedback we have received here. So everyone has to have patience with this project even though a likely release date is further ahead in the future than everyone wishes. We have never asked for anyone's money (nor do we plan to) or given false hope on a release date that has not come through, all we ask for is time.

5 comments  •  Post comment

2 October 2011 Update

by dabo @ Sun Oct 02, 2011 3:46 pm

It has been roughly three month since the last update thus I think a status update is warranted. Without further ado let us move on to the interesting part of this update.

I am pleased to announce that the development team has doubled since the last update. In June I mentioned that Forward had left the team and that I was considering looking for people to help out with the programming but fortunately I did not have to. People who keep up to date with what is posted at the forum already knows who the two new developers are. Xalfen joined the team back in July and has been introduced to the project and what we have done so far. Dron on the other hand joined not long ago and is yet to be introduced to the project but will be shortly. Since we are now four we have to move our project to a new host which we will be looking to do as soon as possible; we are actually looking at different alternatives as we speak, both free and paid hosts.

Now let us go into some details about the progress of the actual game. We have finalized the first version of the database and expect no more significant changes for the first version of the game; if however something important has been overlooked we will do the necessary changes.

The code to handle practice and non-practice related player development is close to implemented. One of the major things left to implement is handling of natural regression. Another thing that the player development simulator does not handle is events that affect player attributes. The code is there to handle it but no events are present yet in the simulator. Events I am talking about could be for example a fighter fighting in games which will affect his fighting tendency/ability, games and injuries. Finally the logic for attribute changes will need a lot of tweaking and this is a process that I anticipate will take some time to get satisfactory; the current logic works but was mostly thrown together quickly for testing purposes only.

Another important thing that change over time for a player is his body. Me and jatahati had a discussion awhile back on how to properly implement this and for the height growth part I believe we have come up with a pretty good solution. When determining the starting height of created players, teenagers or adults, we use normal distribution (bell curve). In order to calculate the height according to the mentioned method we need two parameters, the mean (the peak of the curve) and the variance (width of the distribution). The player creator also supports individual parameters for each country if that ever becomes desirable. One can do a study of a collection of players and calculate these parameters but since I currently have no interest in doing so nor have I been able to find one on the internet I will be using values that appear to generate adequate results. I have been able to find studies of the general population but hockey players tend to be a bit taller than the average. If anyone know of any study of hockey players' height (teenagers and/or adults) where I can find out these parameters do not hesitate to contact me. I know some of you are statistics nerds so I am not giving up hope. ;)

After doing some research I have come to the conclusion that humans do not grow any taller after approximately the age of 20. I also found a height growth chart between the ages of 4 to 20 so what I did was extract the part between age 14 and 20 and used the least squares method to fit a third degree polynomial to the extracted part of the curve. What I ended up with is a curve that approximates the chart pretty well. Every player who is yet to be 20-21 years of age will grow taller according to this curve but in order to not get the same adult height for all players who have the same height when they are for example 15 I had to introduce a deviation factor. A player's height will be updated on a monthly basis so after a month has passed a height increment will be calculated; this increment will use the deviation factor to determine the actual increment which will be added to a players height. Both these values will weigh equally much towards the end result which means we could end up with an increment anywhere between 0 or double the initial increment. Using this algorithm I have done some tests with the following results:

Initial ageDeviationHeight (15 years old)Min height (adult)Max height (adult)
15No180 cm189 cm189 cm
15Yes180 cm185 cm193 cm

The data in the table above are based on 1 000 000 players and show that the current deviation factor gives an adult height in the range of +/- 4 cm from the perfect curve (no deviation). The deviation factor is currently determined by the default random generator in C# and I am yet to test normal distribution for this part but I will (have to save something for the next update). The interval will still be the same but the distribution within this interval will be different.

I have not given much thought on how players gain weight yet thus no implementation attempts have been made but I plan on doing this next. But a player's muscle mass (strength) has to be considered somehow. I hope to have figured something out in time for the next update. Any input on this is welcome!

I will finish this update by showing you some screenshots of the player development simulator. Please keep in mind that the missing parts mentioned above such as games, injuries, natural regression and player weight changes do not affect player development yet. Once they do, how good a player becomes in the end may be affected. Mental attributes are not improved like they should yet either. Note, the GUI has nothing to do with the actual game.

In order to shorten the post I will link to the screenshots.

Starting attributes for center Mark Johnson

Peak attributes

Practice schedule

Starting attributes for goalkeeper Johan Svensson

Peak attributes

Practice schedule

Starting attributes for defenceman Tomas Straka

Peak attributes (notice he can now play right defence too)

If you want to use attributes in the interval of 1-125 instead of 1-25 and different attributes colors you can

Practice schedule (position practice set to right defence)

I hope you found this post interesting, see you next time.
19 comments  •  Post comment

03 August 2011 Update

by Xalfen @ Wed Aug 03, 2011 9:47 am
Not really an important update about the project, but I thought good to tell you.
I just created a french blog to keep you in touch with the project, even if you're not an english speaker. You can check it here. Of course, it's still empty right now, but I hope i'll be able to add some content by next week.

Have a great day.
6 comments  •  Post comment

A new user joins the DHM Development Team

by archibalduk @ Fri Jul 22, 2011 9:27 pm
Some great news from Dabo earlier this evening:

Dabo wrote:It feels good to bring you some good news again by officially welcoming Xalfen to the development team. Xalfen has among other things experience working with C# which is a great fit for us. This means we are three developers again and I will be looking to add even more developers down the road.

Welcome Xalfen! :)
0 comments  •  Post comment

30 June 2011 Update

by dabo @ Thu Jun 30, 2011 6:20 pm

Time for a well overdue update. In this update I have both good and bad news to write about; let's start with the bad news.

Since the last update the development team has lost one member in Forward and are now down to two. Forward left the project due to personal problems and me and jatahati support his decision and wish everything works out well for him and maybe our roads will cross again in the future. Meanwhile the two remaining developers are still very much determined to move this project forward although perhaps not as quickly as we would have liked now that we are only two again. As a result I am seriously considering recruiting more developers in a near future if we can find qualified and dedicated people.

In other news, both me and jatahati have been busy lately, and speaking for myself, lacking motivation so not much has been done since the last update. At around the same time we found out Forward was leaving the project me and jatahati sat down and discussed more in detail what we should do moving forward to a first release. In short what we decided was that the first release is gonna be a basic one consisting of core functionality only which will help us move forward with a well tested and solid foundation. This also means that features such as trading, player development etc. will need a couple of versions until the outcome is at the level that we want it to be while plenty of features of course will be left out entirely. More information regarding this will be released at a later point in time.

Some good news is that starting last week I slowly continued with the player development part of the game. When it comes to the attributes affected by practicing I am starting to reach a point where I am satisfied enough with the first draft to move on to other parts such as how “non-practice” attributes should improve and by how much, how attributes should be affected by injuries, player performance, natural decline etc. Without promising too much I might be able to show some screenshots of the player development simulator and how I have been working with it in the next update.

Finally, I am happy to announce that DHM will be/is featured at; we believe this is a great opportunity to generate more interest around the project and not only from hockey fans but also from fans of other sports. Cv81 has done a great job during the short period of time has existed and we are excited about this partnership moving forward. Apart from showcasing our project I expect to also write articles about experiences aquired during the development; so make sure to visit every once in awhile.

Have a nice summer everyone!
3 comments  •  Post comment