July 19th, 2015 by

asstgmThis is a bigger build than I would have liked but deciding to do the Assistant GM development meant a lot of code changes to accommodate the new security level. The development also uses ajax for the Asst.GM account permissions so you don’t have to constantly refresh the entire page when changing a single setting. Once you click the permission to change, it’s changed in the system.

I was able to do a few other things like add account locking at the COM level and modified the Undraft option to be a true full Undraft function… when a pick is undrafted, the team can go back and re-use that pick. The current pick will now be highlighted in green so it’ll be easier to see who’s pick it is… this is especially useful when a pick was Undrafted.

Assistant General Managers Have Arrived!
A long-standing development idea was to give a GM the ability to hire their own Assistants. One of the requirements for introducing such a role was the ability for the GM to set permissions. Anyone that is NOT an Asst.GM will be able to create an Assistant GM account and assign it to a team. The COM or the GM of the team the Asst.GM is assigned to can edit their Permissions. If a GM wants to hire an Assistant, they are not required to wait for the COM to add their account… the GM can do it from the Team > Assistants menu.

The COM / GM can edit the Assistant GM’s permissions, basically their ability to manage certain sections of the team. By default, all Permissions are set to Enabled… this means the Asst.GM will be able to function as a FULL GM for the team. You can edit the Permissions by clicking the “Perm.” button for the user you want to manage. With Permissions you can get your Assistants focused on particular areas of your team… perhaps one that only focuses on Scouting and Draft picks and another on just Rosters and Lines.

You can toggle the following 28 Permissions On or Off:
– Setting the team’s Draft List.
– Making Draft Picks.
– Managing Free Agent Offers.
– Making Waiver Claims.
– Buying new Arena Seats.
– Setting Team Ticket Prices.
– Managing Lawyer Settings and Initiating Suspension Appeals.
– Managing Medical Facilities and Staff.
– Changing the Junior Scouting Investment.
– Setting Pro or Farm Roster, Lines and Shoot-Out lists (each are individually).
– Coach Management (which includes Coach Free Agency, Hiring, Firing and Scouting other Coaches).
– Setting Player Protection.
– Retiring Jerseys.
– Ability to Create Makeweights if they’re needed.
– Train Junior Players.
– Make decisions on RFA Compensation (*COUGH* David)
– Make, Void, Accept or Decline Trade Offers.
– Scout Individual Players.
– Buy Out or Release Players from the Team.
– Offer New Contracts to Players.
– Place Players on Waivers.
– Move Players between Pro, Farm or Juniors.
– Change Positions on Junior Players.

Account Locking
COMs now have the ability to lock a user’s account instead of simply re-assigning the team, deleting them or changing the password. Accounts that are locked out will not receive emails from UHS, even if it is to reset a password or receive trade notifications.

Goalie Fatigue Injuries
Goalies sustaining injuries due to Fatigue (playing in too many consecutive games) will now use a different table of injuries to describe what has happened instead of using the regular injury table (sustained from another player or blocking a shot). The injuries will be one of: Neck, Shoulder, Groin, Hip, Hamstring, Upper Body, Lower Body, Biceps, Back, Quadriceps, Thigh, Knee, Calf.

UnDraft and Pick Highlighting
The UnDraft option will now also completely reverse the team’s draft pick used for the UnDrafted player selected. This will also mean that the draft will skip back to the earliest available draft pick… typically the team you just UnDrafted for. It sometimes might be hard to see who’s pick it is next when undrafting a player since a pick can be undrafted from anywhere in the draft, so we’ve added a green high-light on the team who’s pick it is next.

Players selected by Ad Hoc method are not applicable for UnDrafting since it doesn’t actually take up a draft pick. To reverse these players the COM will need to release them from the team via the Teams page.

Bug Fixes & Miscellaneous Changes
– Corrected text in the Regular Season -> PlayOff advance league screens that incorrectly showed pre-season schedule not being completed instead of regular season.
– Fixed an issue where the Draft Player for GM button was not using the correct css id.
– The Movement History when viewing a player’s profile will now appear even if you are looking at the player’s Awards or Scouting reports.
– Team shoot-out lists can now be set during the Off-Season.
– Added proper error messages for when players are not available for drafting.

Hot Fixes
– Fixed an issue where it was possible to double-click on Schedule creation and cause duplicate games to be created. Released June 29 2015.
– Fixed an issue where it was possible to for a league to be created using the NHL or NHL/AHL/OHL templates and not have draft picks created. Released July 11 2015.
– Fixed an issue where Will Acton’s age was 3. Released on July 15 2015.
– Fixed an issue where COMs attempting to place players on waivers on behalf of teams would result in an error. Released on July 15 2015.

June 28th, 2015 by

chicago-blackhawks-win-2015-stanley-cupCongratulations to the Chicago Blackhawks for winning their third Stanley Cup in six years! Yes, it’s been over two months since I released some new stuff. Between managing a number of other websites and my own personal health issues, I barely had time to deploy anything. I’m not sure how things are going to happen over the next 2-3 months, especially with my boys out of school for the summer… I’m hoping I will be able to deliver a small build similar to this one at the very least.

Two-Way Contracts
UHS has added support for Two-Way Contracts. The COM now has two settings available to them… the Two-Way Value and the Two-Way Penalty. Any player with a yearly salary that is over the Two-Way value will be paid the full amount of their contract regardless of whether they are on the Farm or Junior team. The Two-Way Penalty is a modifier that applies to the signing chance is the yearly salary being offered to the player is equal to or lower than the Two-Way Value.

By default we are disabling this (Two-Way Value is set to $20.000 million and Two-Way Penalty is set to 0%) so that leagues can choose whether they want to implement this feature. If your league allows contract values exceeding $20 million / year, you can still disable this the Two-Way salary option by making the Two-Way Value higher than your league’s Salary Maximum.

Pre-Season No Longer Mandatory
The Pre-Season is no longer mandatory. Previously a Pro-level Pre-Season schedule was required to be created and played through in order to advance to the Regular Season. You will still be prompted / reminded that a schedule can be created only during the Off-Season. If you are already playing a Pre-Season schedule and decide you just want to skip ahead, you will be able to do so… you’ll just get a reminder saying the schedule isn’t completed, however, you will still be able to advance to the Regular Season.

RFA Compensation and Draft Picks
We have put in a fix to remove Draft Picks attached to unresolved RFA Compensation decisions from being offered as part of a trade or other RFA Compensation packages. The draft picks attached with the RFA Compensation decision will be made available again once the decision has been made to Keep the Player or Accept Compensation.

Bug Fixes
– Fixed an issue where sometimes a PK Pct would appear as 999.99% in the League Standings.
– Fixed an issue where Farm Team names would appear twice when double-clicking the Log In button.
– Fixed several issues (stats not showing, stats misplaced) with the Hall of Fame page on the Public Sites.
– Team Club names will now also appear in the Activity Report for players that were injured or suspended instead of just the Team City.
– Teams will now require a Club name upon creation or edits unless they are an All-Star level team.

Hot Fixes
– Fixed an issue where the Contract drop-down was empty for Free Agency offers. Released on April 16 2015.
– Fixed an issue where the Wages appearing the Salary leagues were only showing the Salary value. Released on May 2 2015.
– Fixed an issue where the RFA Min Offer pct value for Contract Offers was always showing 0. Released on May 2 2015.
– Fixed an issue where RFA compensation was not being transferred to the original team. Released on May 2 2015.
– Fixed a behind-the-scenes issue where the AutoGM would attempt to insert coaches into free agency even though they were already there. Released on May 3 2015.
– Fixed an issue where Auto-GMs were still moving players down to the farm team even if the COM has Farm Leagues disabled. Released on May 7 2015.
– Fixed an issue where new Players and Coaches could be retired early (and subsequently deleted). Released on May 7 2015.
– Fixed an issue where 21-year olds were not being shown in the Available Prospects report. Released on May 9 2015.
– Fixed an issue where unbalanced leagues could sometimes time-out when creating schedules. Going forward there is no longer a division requirement for removing games when leagues are unbalanced. Released on May 18 2015.

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.