Developing trades feature
Finally I've begun to develop some new cool features for the game. First one out will be the trades feature. Here are some thoughts going through my head
I've given this feature some thought ever since I've started developing the game. It's one feature that is a must have in a full featured hockey manager game. But I have not been completely sure on how to solve the core of trades in a promotion and relegation type league structure.
At first I thought I'd develop two sets of game worlds. One European and one North American styled where trades and such features only would be available in the American one. But I have now decided not to go that way. I will instead combine the best features of the both worlds and create what will become this game's unique competition style.
Trades between teams in different leagues?
Do that mean I have to find a way to trade players between leagues? The easiest answer would be no. Trades should then only work between teams in the same league. But I'm not entirely satisfied with that solution. Players know they risk being relegated to a lower level, that's why there are a release on relegation contract clause. But there ain't no sense in trades between multiple league levels either. A player would never accept a move from Golden Hockey League to the Lower Iron Hockey League. Well that just leaves the answer then. Trades will be available between teams in the same league and teams in one league level up or down. Players with a release on relegation clause will be excluded for down trades.
Btw, the name of release on relegation clause will change its name to one way contract. This will also come in handy when introducing farm/affiliation teams.
Possibility of cheating
At first I played around with the idea to let players decide completely on their own if a trade was fair or not. Then it hit me, there is always some idiot that will take over multiple teams just to make cheat trades. So I'll have to make some logic that will prevent unfair trades. This logic will also be useful when making trades with computer teams. So players will be given a trade value that will be including everything from player ratings, traits, age to contract situation. This value will not be displayed in detail but will be hinted of on the player page. Hopefully this will help creating more realistic trades too.
To let other managers know that a certain player is available for trades players can be put on the trade block. These players will be listed on the transfer page along with current free agents. A manager can also set the transfer status to Untouchable to really let other know that there is no point of asking for a trade including that player. If no transfer status is set player will be listed as status Unknown. That will mean that player could be included in a trade request.