Build 6085 is Live - MelvinJ
The Attendance Topic - thejames
Free Agency Question - thejames
UHS Dark Deployment Tonight - thejames
How i create new league? - sunny
Farm Team Question - MelvinJ
NHL 2013 Playoff Predictions - thejames
New Players in the New UHS - thejames
UHS Build 5016 Released - thejames
UHS Build 5008 Released - thejames
No open issues.
So one of the biggest problems we’ve faced… for a very long time… is that as leagues age, the size of their databases grow. Our first / original league: the TJHL, was at around 2.5 GB. Now when you think of SavePoints… each SavePoint is a snapshot… so you have each one running around 2.5GB (or less for older ones)… and consider that we have quite a few savepoints… that’s a LOT of storage space. Since we are now updating SavePoints as part of our release process, it also makes the load / save time a lot longer.
So we’re using gzdeflate and gzinflate to compress the PlayByPlay data found in the Game Details (regular and live) tables… When we consider the table went from 1.1GB to 233MB with a very minimal increase in load time, I’d say we’re looking pretty good. It was a necessary evil to do the conversion during prime time but for a release like this I absolutely needed all of my faculties.
As we’re still in the process of backing up the existing savepoints as this blog post is being written, I’ve decided to temporarily disable SavePoints so that we can bring UHS back online for everyone to use again. Once the backups have been completed, I’ll kick off the compression script and start converting the savepoints over night. Hopefully when I wake up tomorrow morning there won’t be any errors and we’ll be good to go. I’m pretty sure the entire compression process is going to take around 8 hours or so.
Once SavePoints are available I’ll send out an email letting everyone know.
Thank you all for your patience.
UHS Build 6085 – March 2 2014
Here’s our first build since releasing UHS Dark. We had a ton of hotfixes go out pretty quickly…. Thanks to everyone that reported the issues… it really did help us out. On top of the hotfixes we also put out a bunch of changes which you’ll see below. I’m also starting to plan out a few other developments that I think would be helpful / beneficial for everyone but they’re a little more complex and need to be done right.
Access to accounts has been moved for GMs. We’ve returned it back to the login-info panel up at the top-right of the page. Whether you are a COM or GM you can access your own account preferences by clicking on your user name.
The attendance logic was updated again (it had changed with the release of UHS Dark) so that total wins and losses no longer factor into the attendance formula. Team streaks will now factor differently into how the attendance is modified: +2% / game for a winning streak, +1% / game for an unbeaten or tie streak, -1% / game for a winless streak and -2% / game for a losing streak. Teams must have played at least 10 games in the current season in order for the winning percentage to be considered. If this is not true, we look at the previous season’s winning percentage. If that’s not true, we default to 0.500.
The goal for the attendance changes was to reduce the number of sell-outs. For the good teams they should be happening… for the not-so-good teams they should be a rarity. I’m sure I’ll need to tweak the formula again.
Also, I’m thinking of lowering the game threshold from 10 games to 5 games as there might be some leagues that want to play fairly short / quick seasons… if that’s the case their records would never impact the attendance generator.
AutoGM Augmentation – Moving Players to Farm
We’ve added additional logic for the AutoGM to move players down to the farm team (or farm level for those leagues with no farm system). There is already logic to move players to the pro team if they’re needed to fix a game roster issue. A player will be moved to the farm if the following condition-tree has been met:
- Player is not on the pro game roster. Must also meet following criteria:
- Moving the player will not put the team under the Salary Cap Minimum. Must also meet following criteria:
- The player is a “Farm” player (they’ve already passed through waivers once before). Player Moves to Farm.
- The team has already lost enough players to waivers to allow players to be moved without going through waivers. Player Moves to Farm.
- The player is a “Pro” player AND meet the following criteria:
- The player’s age is higher than the average pro game roster age. If this is true the following criteria must also be met.
- The player’s skill is lower than the average pro game roster skill. Player Moves to Farm.
- The player’s age is lower than the Max Age Protected age. Player Moves to Farm.
- The player’s age is higher than the average pro game roster age. If this is true the following criteria must also be met.
COM Team Management
- The list of teams has an additional sort of Club.
- Fixed an issue where the salaries being shown for teams were not using the proper Farm and Junior salary percentages, so were reporting incorrect team salaries.
When attempting to move players to free agency from a team that is going defunct, if that team had no players no message was being shown. Added a success (green) message indicating the team does not have any players to move.
When viewing the Draft page, the header will now show you whether the Draft is complete or the current round.
Free Agency Minimum Offers
Players that have been in free agency for at least one year without playing a game will have their minimum offer values reduced by 25%. This is to help bring back in players that were signed to an overly high price, hit free agency and require a minimum value that is out of the ball-park. This should bring those players back in with more reasonable minimum offer values after 4-5 seasons… in which one would hope they aren’t too rusty.
You may notice that eventually you will see a uhshelpgm or a uhshelpcom account appear in your league’s account list and/or UHS Messenger List… these are used exclusively by me to go in and investigate issues you are reporting with your league. Please do not send any messages to the account via the Messenger as I will likely not receive them. You are free to delete those accounts if you want, however, I’d ask that you refrain from doing so, especially if I’m in the middle of investigating an issue for your league.
Live Games – Out of Town Scores
The Out of Town scores are now clickable. If you want to switch to watch that live game instead, just click on whichever live game interests you.
Report – Team Salaries
Commissioners will now be able to view a list of all pro teams and show their salaries. This information is already available in the Team Management page, however, I thought it might be useful to allow COMs to only see pro teams and not have to deal with the rest of them.
Report – Three Stars
Commissioners will now be able to see a summary of the three-stars for any given Season – SeasonType – Level combination. Points are awarded to players for the type of star they earn: First Star: 5pts, Second Star: 3pts, Third Star: 1pt. If folks remember the Molson Cup Three Star award way back in the day (not sure they do this anymore), its set up to mimic this. You may notice that goalies will tend to be at the top of the list… at least for the time being goalies are weighted a little bit heavily vs. skaters. It may be something I revisit in the future.
Rookies are now denoted in the statistic pages of All Players and All Goalies.
Roster / Line Status Clickable
On your team page, you’ll find the status of your pro and farm team’s roster and lines. Regardless of whether they are correct or not, you will be able to click the icon for each one to take you to that particular section. You won’t need to use the drop-down if you don’t want to.
Sim Engine Logic Updated
I’ve updated the sim engine logic to consider player skills when passing the puck. Basically it works like this: if the puck is going to end up in the offensive zone, the passing player will consider players that have a better shooting skill as we’d want to get the puck to someone that can score; otherwise the player will consider players with better passing skills so that the puck can be moved up easier. This puts a slight de-emphasis on the Skating skill, however, it is still going to be important… as the player will be relying on either their Passing or Skating skill to move the puck up the ice.
I wanted to put this in as I felt that the top goal-scorers in any given season were a little too random… I’d like to see the known goal scorers get their chances and be higher up on the goals list.
I also added a bit more debugging output information behind the scenes for attendance generation.
Teams with Same City Names
Games where both teams originate from the same city will instead use the team’s club names in place of spots that only refer to the team’s city. For instance, in the Three Stars list, typically only the city name is shown, however, in the case of both teams having the same city name, the list will instead show the club names.
Trade details are now visible to all teams with the exception of the GM comments. If you are not one of the teams involved in the trade you will see text that says **hidden** for the comment area. In the old UHS, trades AND comments were visible to all teams, however, in UHS Dark I accidentally blocked the entire trade from being viewed unless you were involved. Commissioners and higher will also have access to the comments.
- Fixed an issue where three star selections were using players from other games being played on the same day. Released February 9 2014.
- Fixed an issue where leagues with at least 2-3 seasons played would timeout when navigating to the Manage > Players section. Released February 9 2014.
- Fixed an issue where leagues were only able to see Pro teams in the assignment drop-down in the Players section. Released February 10 2014.
- Fixed an issue where teams using 4-Line were causing the sim engine to crash. Released February 10 2014.
- Fixed an issue where the full salary of each team was being charged after a game was played instead of the Game Day Salary. Released February 10 2014.
- Fixed an issue where Farm Team Lines were being incorrectly reported as having errors. Released February 10 2014.
- Fixed an issue where the Game Day Salary function was returning warnings when run via cron job. Released February 10 2014.
- Fixed an issue where players were passing through waivers almost immediately. Released February 10 2014.
- Fixed an issue where making a claim via Waivers would show the sql query (legacy from testing). Released February 10 2014.
- Fix for three-stars that was applied on Feb.9 was reverted. Reapplied / released February 11 2014.
- Fixed an issue where opposing team player appeared to receive a successful pass. Only occurred in the play-by-play for passes that were using Check for the interception type. Released February 11 2014.
- Found issue where faceoff player is blank… added more code for 0 ID or blank player. Released February 11 2014.
- Fixed an issue where searching to fill a blank faceoff player would cause the sim engine to enter an infinite loop. Released February 12 2014.
- Fixed an issue where the incorrect conference & division was being used for the standings when the season changed. Released February 12 2014.
- Fixed an issue where League Standings were not being sorted properly… was using GF instead of GF-GA (difference of goals). Released February 12 2014.
- Updated the attendance logic to factor in gametype and visitor winning percentage. Attendance no longer considers total wins or losses. Team win/loss streaks now modify the attendance by a set percentage (2% / gp for winning, 1% / gp for unbeaten or tie streak, -1% / gp for winless, -2% / gp for losing). Home & Away winning percentages now add or remove attendance based on where they are to 0.500. Minimum of 10GP is required for current season stats to be considered, otherwise, we use previous season stats. If previous season stats are not 10GP or more we default to 0.500. Released February 12 2014.
- Fixed an issue where scouting own players was resulting in a warning behind-the-scenes. Released February 12 2014.
- Fixed a warning in the AutoGM logic where salary checking was reporting a divide-by-zero warning. Released February 13 2014.
- Fixed an issue where more than one player was being allowed to get injured on a team in a single game. Released February 13 2014.
- Fixed Face-off ghost player issue. Released February 13 2014.
- Fixed an issue where teams were not being charged for their waiver claims. Released February 14 2014.
- Fixed an issue where live games would not update if one of the teams did not get any penalties. Released February 14 2014.
- Fixed an issue where teams would see an error message if placing a player on waivers while they were still in the team’s game lines. Released February 17 2014.
- Fixed an issue where playoff games would not be created once all series were ready. Released February 19 2014.
- Fixed an issue where the AutoGM could get stuck once drafting 19 players in the inaugural draft. Released on February 20 2014.
- Fixed an issue where PlayOff series stats were not being updated after a game. Released on February 21 2014.
- Fixed an issue where Injuries that lasted more than the current game were not being checked. Released February 21 2014.
- Fixed an issue where players were not being shown in the Available Prospects report for Inaugural Drafts. Released February 22 2014.
- Fixed an issue where players were not being suspended despite getting a game misconduct penalty. Released February 23 2014.
- Fixed an issue where trades were not being voided when assets were moved via another trade. Released February 26 2014.
- Added additional checking for ghost players on face-off recipients. Released February 26 2014.
- Added additional debug code to the sim engine to display goalie injuries. Released February 26 2014.
- Fixed an issue where the number of games for an injury was not being reset, so the previous number was being used as the base number. Released February 26 2014.
- Fixed an issue where the number of games a player is suspended was not being correctly set if there were multiple injuries in the game. Released February 26 2014.
- Fixed an issue where the Distribution Draft tool to move players from a defunct team to free agency was not working properly. Released February 27 2014.
- Fixed an issue where old structure information was being referenced when moving a team. Released February 27 2014.
- Fixed an issue where players being moved to free agency via the Distribution Draft tool would cause an error if their name had an apostrophe. Released February 27 2014.
- Fixed an issue where an accepted contract offer would not be recorded properly when sent by the AutoGM. Released February 27 2014.
- Fixed an issue where attempting to view the list of available coach free agents resulted in an error. Released March 1 2014.
So it’s not quite been a month but here we are with our first post since UHS went “Dark”. I can’t lie… my focus has pretty much been on taking my son out of kindergarten to watch the Men’s and Women’s ice hockey games. The games against the USA were especially important… the Americans had solid (if not, better!) teams than we did… but somehow we pulled out wins. The most important (and touching) of the two was the Women’s Gold Medal victory.
Being down 2-0 against the US with a mere 4 minutes left to go… I started to question if the ladies could pull it off… I kept telling my son, they have to score a goal NOW… Very soon, otherwise they would simply run out of time. Scoring a goal with 10 seconds left would be pretty much useless. Sure enough fortune smiled upon us as our first goal went in off an American player. That was the spark we needed.
Then… I gasped in HORROR as I witnessed the lineswoman look behind her and then skate directly into our defenseman… the puck careened down the ice to the empty net… I thought for sure it was in. Fortune once again smiled down on us… Off the post. Can you imagine what would have happened if that went in? The game would have been done. That Lineswoman would have been killed -if she lived here and we were Colombia.
The tying goal and winner were at least decent skilled goals… although I was upset that no penalty shot was called I think the power play worked far better for us.
The ladies had me in tears (and to some extent the men, too)… I was invested in both teams emotionally… I jumped at each missed opportunity, swore at the refs for bad or missed calls (Japan’s goal on Russia anyone??) and my heart sank anytime the other team scored on us. In the end we got it done. We dug in and pulled out victories. I keep hearing the saying “Canadian hockey players have heart.” Of this I have no doubt.
On the UHS Front
I’ve been busy applying quite a few hotfixes, 29 in total as of this writing, from between February 9 to February 23. For the most part I’d like to think that we’re pretty much clear of anything major… but, as always, if anything comes up, I’ll get on it as soon as humanly possible.
The next build will be coming out this weekend… very likely around the late night Saturday / early morning Sunday time frame. You can stay tuned to our Facebook or Twitter feed to find out when we’re looking at UHS being back up.
This build will contain quite a few new things and some UI enhancements to make things a little easier to manage. If you have a look at our Development fourm you’ll see quite a few items marked as “Done. Will be released with next build.” If you see anything that you want us to get a move on, please comment on those topics… if there’s something you want or need that isn’t already in UHS or in the development forum, please feel free to start a new topic.