April 9th, 2015 by

sap centerThis shot is from November 2012 (I think)… or is it 2013?  Ugh… time is going by too quickly! My bucket list included attending a San Jose Sharks game in San Jose. It was great! :)

UHS Build 7956 – April 9 2015
After pumping out a release every 3 weeks or so, I need a bit of a break. Most of the time I was looking at stability issues that happened because of the move to our new Dedicated Server. There are a few issues that happen now and then that I’m still trying to track down… for instance: a particular job runs once a minute… so just over 10,000 times a week. I get one library error. One. Why? I made no changes on my end. Tracking down these mysterious errors drives me nuts. There must have been SOMETHING that happened to have the library error spit out but how does that happen when no one else has access to my machine except me? The error didn’t even happen at the same time… it was maybe 2-3 hours off… ugh.

Anyway, it’s fairly evident that time spent on development is going to be cut down again. There is no way I can stay at the computer long enough to do a release every three weeks… so time between developments will definitely increase but I think overall they might be bigger? Who knows… I’ll likely be keeping an eye more on stability and scaling issues… our usage has spiked and honestly the move to the dedicated server saved us. This is a good problem to have but still a problem nonetheless.

As the playoffs are almost upon us, I’m going to be doing a roster update and simming through the NHL Playoffs for some crits and giggles.

Idle League Deletion Thresholds (starts February 26 2015)
We’re going to change out Idle League Deletion thresholds to help better accommodate people that might be away for an entire month or more. The new thresholds are:

League Idle: 60 days (up from 30). A warning will be sent to all league members.
League Deletion: 7 days (up from 4). The league will now be deleted 7 days after the warning email was sent out.
New Leagues with No Logins: 4 days. Newly created leagues with no logins will be deleted after 4 days (no change).

Waivers Disabled (Released March 11 2015)
The Place on Waivers option will be hidden and the Send to Farm option will be shown for GMs when the Commissioner changes the Waiver Clear Days setting to 0. This will essentially disable Waivers for all HUMAN teams. This does not apply to AutoGM teams yet.

Contract Offer Chances
When offering new contracts to players (either immediate or extensions), the Minimum Value Required will now show the chance that offer value has of actually getting accepted. We’ve also added a new row to show the Offer Value required in order to hit the 90% acceptance chance.

These chance estimations are just that… ESTIMATIONS. It assumes you are offering exactly the same salary value as their last salary. If you choose to have the contract take effect immediately, there is a -20% chance that is not factored into this estimation. These estimations are there to help guide you with more successful contract negotiations with your players.

Salary / Contract Toggle
COMs now have the ability to toggle Player & Coach Salaries & Contracts. By default Salaries & Contracts will be enabled. When disabling, there are quite a number of substantial changes to how your league is going to operate.

– All Contract Lengths will now show up as 1 year, however, they will never expire.
– Salaries are still shown / used so that you can use the Salary values as part of a points / value structure to keep teams balanced.
– Salaries will not be charged at the end of any game.
– The Salary Cap is in effect… since you can use it to penalize GMs that are beyond the Salary Cap thresholds you set out.
– Teams will still earn money from games to spend on Lawyers, Medical Facilities, Free Agency Bids, Waivers and Scouting.
– Free Agency changes to a bid system… the team that wins a Free Agent will be immediately billed the bid value.
– You can acquire players normally via Draft, Free Agency, Trades or Waivers.
– Players will not leave your team due to a contract running out, however, you can move them via Trade or Waivers.
– Teams can Release a player… that player will be moved to Free Agency as a UFA… there is no such thing as a RFA with Salaries & Contracts disabled. There is no refund of the Bid Amount when Releasing a player.
– Players can still retire… that’s the only method a player can be removed from a team where the team has no control over the situation.

Allow C/LW/RW to Occupy Any Forward Spot in Game Roster
In the Game Roster you’ll have noticed that for the Center, Left Wing, or Right Wing spots can only be occupied by a player that is a Forward or that particular position spot… so for example the Left Wing spots can only be occupied by a Left Winger or a Forward. COMs can now toggle a setting found in Game Settings that will allow a GM to put any Center, Left Winger, Right Winger or Forward in any of the forward spots… so in our example the Left Wing spots can now also be occupied by Centers and Right Wingers.

Players not in their natural position will still receive a negative position modifier in the game unless the COM disables that setting.

By default this setting is disabled. AutoGMs are not affected by this setting.

Bug Fixes
– Fixed an issue where retirements in the League Activity report on the Public Website would cause that page to prematurely end with an error.
– Retired players will no longer show up on Scouting Reports for Teams in Leagues where Skills are shown.
– Lawyer maintenance fees will now be charged during the season transition along with Medical and Arena maintenance fees.
– Fixed a rare error where ice times were being saved as MM:SS when it should have been saved as total seconds. Leagues should not have noticed this issue.
– Fixed an issue where the incorrect GP values were being shown for Coach Stats on the public websites.

Hot Fixes
– Fixed an issue where deleting a team already placed into a Conference / Division would result in subsequent schedule creations to run in an infinite loop and time out after 30 seconds. If you see this issue, please let me know ASAP. Released on March 4 2015.
– Fixed an issue where leagues were allowed to use spaces in the league abbreviation. This resulted in stagnant league cleanup issues. Released on March 4 2015.
– Fixed an issue where offering AutoGM teams trades that involved draft picks could result in either the AutoGM crashing or unexpected responses (Acceptance or Declines). Released on March 5 2015.
– Fixed an issue where 20-year olds were not appearing on the Available Prospects page. Released on March 11 2015.
– Fixed an issue where it was possible under some very special circumstances to sim games for teams that had incorrect rosters. Released on March 25 2015.
– Fixed an issue where Junior-Aged players holding out for free agency would be sent back to the juniors but their original teams will continue to own the player’s rights. Released on April 3 2015.
– Additionally, Junior-Aged players holding out for free agency will no longer be removed from free agency when being sent back down to the juniors. This will allow teams to bid on the player. Released on April 3 2015.

February 18th, 2015 by

serversUHS Build 7851 – February 18 2015
Yep… another technical build release. It’s really to update the build number with all the hotfixes I had to put out after the last build. The last build made it painfully clear that remaining on the VPS just was no longer an option. We have successfully moved everything over to a Dedicated Server. Being the sole occupant of a server is great…  we get FULL CPU usage… our cron jobs went from 25 seconds on average to FOUR seconds. Crazy stuff… never thought it would be such a huge improvement.

Our databases remain on a dedicated VPS… we can move those over to our new Dedicated Server if needed. So far everything is looking pretty stable.

Also, I’ve added a Patreon link to the right side of the page. This is to allow folks to donate a monthly contribution to helping keep UHS up and running. I have put up some Milestones as well. As always, UHS will be free regardless of whether you want to help contribute. All folks that contribute have my gratitude and sincere thanks. We continue to grow (hence the necessity of moving to a dedicated box) and I’m hoping with some additional funding we can continue along the path to do some truly awesome things. Thank you for your support!

SavePoints & League Advancement
Leagues will no longer be allowed to advance past the Playoff if they have 5 or more SavePoints. Currently the SavePoint maximum is 5… transitioning between PlayOff and Off-Season requires a SavePoint to be created, so the league can only have 4 by the end of the season.

Bug Fixes
– None

Hot Fixes
– Several (read: metric crapton) cron and system hotfixes immediately after deployment of build 7802 on February 12 2015.

February 12th, 2015 by

cloudy-full-moon-1440x900-4b87It’s the middle of the night… the build has been released. Things look good…  I’m tired… but not tired enough to sleep… OHHH…  Happy Birthday to my youngest boy… he’s a whopping FIVE years old now. I just realized we’re after midnight, so today is his big day. 😀

UHS Build 7802 – February 12 2015
This is another mostly technical build. We briefly tested out grouping leagues based on their DB size and setting up a cron job for each league… now I’m going a step further to add a cron job for each league. What does this mean to you? Not much hopefully… other than when the system gets super busy, you won’t need to wait for your games to be simmed… each league will have it’s own sim job kick off.

I’ve also added a new custom error reporting tool to let me know immediately when there is a sim error with detailed information. I’m hoping that once this is deployed I can get rid of some of the more elusive bugs that have troubled some users.

I think should be one of the last major technical upgrades I need to do… our scaling should be good and it should free up some more of my time to concentrate on adding more enhancements and such.

GM Team Home
The Upcoming Games section for both Pro and Farm teams have been updated to show the number of games remaining in the season. Upcoming Games will now only show you the games in the current stage of the Season: PreSeason, Regular, PlayOff…. previously, Upcoming Games showed any unplayed games in the schedule.

Sim Engine
I’ve replaced the default error handler with a custom one to email me directly on any error, warning or even a notice when the simulator encounters issues. I’ve already identified a handful of minor issues that will be addressed as a bug fix in this build or as a hotfix. As the user, you should NOT see any of these errors… if you do, please copy and paste them into a ticket to UHS Support.

Contract Offers – technical change
Nothing to really see here… just moved the Contract Offer logic into it’s own function… should not impact anything when you make offers to your players.

Bug Fixes
– Fixed an issue where the Goalie Change on Goal Difference will no longer give 0 goals as an option.
– Fixed an issue where an Away player would sometimes not have their PIM updated when receiving a Game Misconduct.

Hot Fixes
– Released a set of admin tools and updated code to configure UHS Group sizes through the UI. Released as hotfix on January 18 2015.
– Fixed an issue where All-Star games could not be played. Released as hotfix on February 1 2015.
– Fixed an issue that prevented teams from being changed to AutoGM while a season was in progress. Released February 3 2015.
– Fixed an issue that prevented leagues from advancing from Off-Season to Pre-Season if they had active All-Star teams. The error messaging would also falsely indicate a problem with the Farm league’s conference / division structure. Released February 3 2015.
– Fixed an issue where a team’s abbreviation could change when saving an edit to the team while the league’s schedule / season was in progress. Released February 4 2015.