As promised, below is an overview of some of the new features of the Editor. There are some things that might not immediately be obvious along with a couple of pointers I think might be useful. This update has been something I've worked on intermittently over the past six months in between roster work and real life - so my apologies if I miss something below. Once the Editor is nearer being complete (and it is certainly getting there), I want to write a user manual so that the learning curve is a little less steep.
You can click on any of the screenshots below to view larger versions.
Reputation Auto-Rating
At the request of
BKarchitect and
xECK29x, I have added player/non-player auto-calculation to various of the screens. Before you apply any calculations, you should set your default from the Settings screen. Click on File -> Settings -> General and you will find the 'Reputation Algorithm' setting (see screenshot below).
There are two ways in which you can apply the Reputation auto-calculation:
1. When viewing a player or non-player in the Editor, either: (a) Click on the Tools menu from the bottom right corner of the screen and click on the Set Player / Non-Player Reputations items (there are two - one for players and one for non-players); or (b) on the Player Details and Non-Player Details tab you'll find a button in the Tools list. The algorithm used is determined by which algorithm you selected via the Settings screen (mentioned above).
2. Via the Mass Edit menu on the People tab. This will allow you to choose the algorithm (e.g. if you don't want to use the default one you selected in the Settings screen), scope (entire DB, club contracted or league contracted) and filter (chosen club or league).
In a future version, I want to add the option to auto-set Reputations when importing players via the Importer spreadsheets.
Player Auto-Rating
Via People -> Mass Edit -> Auto-rate players
This is very much a work in progress and something I plan to develop in future versions of the Editor. The Editor will calculate a score for each entry of a player's career history based on the reputation of the club and league along with how good the player's stats are for that season. You'll see the 'Score' column in the far right of a player's career history entries on the Players & Staff editing screen. I think I'll make this column optional in the future as I can see how it could be confusing. The overall scores are listed when exporting the Players & Non-Players spreadsheet via the Export Spreadsheet screen provided that you do not tick the Research Spreadsheet option).
The Editor will then apply a weighting to the player career history scores and then rank the players by primary position (i.e. G / LD / RD / LW / C / RW). Once the players have been ranked, the Editor will then distribute player CA ratings according to the rank. I.e. each of the top ranked G, LD, RD, LW, C and RW will get the top CA and so on. By ranking players by individual position, instead of by G / D / F, there should be a relatively even spread of ratings.
The Editor will allow you to preview the ratings by clicking on the 'Preview/Export Ratings' button. You could then tweak the ratings and then copy and paste these into a Player Update importer spreadsheet if you wanted.
In a future version I'd like to add options to calculate things like PA, Strength, Aggression and Pass Tendency.
Synonyms & Ignore Lists
I have expanded Synonyms from just first names to include clubs, leagues and surnames. A Synonym provides for alternative spellings of club/league/person names to be matched when importing spreadsheets via the Import Spreadsheets screen. The lists of Synonyms can be edited in the 'Synonym' sub-folder of the EHM Editor folder.
The Ignore Lists allow you to list out team and league names which you want to be treated as '_None' (i.e. Unknown/No Team/League) when importing spreadsheets. The Ignore Lists can be edited in the 'Ignore_List' sub-folder of the EHM Editor folder.
The Synonym and Ignore List settings can be changed via the Import Spreadsheet screen (see screenshot below). Most of these will default to disabled each time you load the Editor because they could potentially cause issues if you unintentionally enable these settings when importing data (i.e. they can mask No Match errors which you might have wanted to fix).
These settings primarily intended for importing large amounts of player career histories. For example, you might have a lot of career histories that refer to different spellings of names (e.g. Univ. of Alberta instead of Alberta Golden Bears) or old franchise names (e.g. Mighty Ducks of Anaheim instead of Anaheim Ducks). It's a really time-consuming task having to manually correct all of these team names ane league names every season in order to correct the 'No Match' errors. The same goes for alternative spellings of players (e.g. Evgeni Malkin and Evgeny Malkin / Nikolai Kulyomin and Nikolay Kulemin).
Synonyms solve this problem by allowing alternative spellings to team names, league names, first names and surnames. Each alternative spelling is listed on the same line (separated by commas) in the various text files in the 'Synonym' folder in the EHM Editor folder. The Editor will then treat those spellings as meaning the same thing. For example, any career history entries referring to Mighty Ducks of Anaheim will be imported as Anaheim Ducks.
A similar issue arises with those very minor or defunct teams or leagues that you don't necessarily want to add to the database - for example, you might not want to add every Canadian under 11s team to the database. Rather than having the same 'No Match' errors every year when importing career histories, you can add those team or league names to the Ignore Lists. Any team or league on an Ignore List will be treated as '_None' when importing (i.e. Unknown Club). This avoid a 'No Match' error whilst allowing the player career history entry to be imported.
The Ignore Lists are only used when importing player career histories whereas Synonyms can be used when importing any type of importer spreadsheet. Note that the first name and surname Synonyms are always used by the Editor - they cannot be disabled.
Any changes to any of the text files must be made before you load the Editor. If anybody makes any changes to any of the text files then please do share the changes and/or the text files. I can then merge the changes into the text files released with the Editor. I have been collating club and league Synonym data for around five years now - the clubs Synonyms consist of nearly 2,300 groups of names and the leagues Synonyms around 400 groups - so there is likely some duplication in there.
You can also see Synonyms attached to an item in the database on the First Names, Second Names, Clubs and Competitions screens in the Editor. This allows you to check what Synoynms have been successfully loaded by the Editor.
Club/League Histories
These can now be imported using Importer spreadsheets (via the Import Spreadsheet button). I have found that the game can be a bit temperamental when adding histories. Adding histories for a club where the entry has no league set appears to make the game crash IIRC (I need to add some more sanity/error checking to the Editor to prevent users from importing invalid entries.). Using certain leagues as a club's history entry can also cause a crash when viewing the histories in-game. I don't know whether this just coincided with the extra_config.cfg and records_config.cfg issues we were having with the TBL Rosters whilst testing these recently. Alternatively, perhaps it does not like particular types of league appearing in a club's history - perhaps if they're defunct or have no nation set, etc. More investigation is required.
Histories and records can now be mass deleted via the Mass Edit menus on the Clubs and Competitions tabs.
Player/Non-Player Filtering
This is fairly rudimentary at the moment. Let me know if anybody has any particular items they'd like to filter by. I don't currently propose to make every single attribute filterable because the number of filterable items has a significant impact on how slow/fast the Players & Staff screen will filter. Even with just the few additional items that can now be filtered, it seems that a text search on the Players & Staff screen is now slower than before. I'm going to have a think about whether the performance could be improved a little.
Club and National Team Errors
Two new items are now visible in the status bar at the bottom of the Editor. These will turn red if there are any issues (see screenshot below):
1. Club Errors: If any clubs have an invalid nation/league combination or a zero Reputation then the status bar will turn red. You can find any such issues by clicking on the Filter button on the Clubs -> Clubs screen and selecting the 'Validity: Has Errors' filter. The erroneous items will be highlighted in yellow on the club's screen.
2. National Team Errors: Quite a few users have encountered the National Teams Count Mismatch error which is caused by having the wrong number of teams with a Professional Status set as 'National (Senior)' or 'National (U20)' (there should be 223 teams per category - i.e. 446 national teams in total). The status bar will turn red if the number of national teams is invalid.
Extended Logging
Via File -> Settings -> General -> Extended logging
This will add some additional debug output to the Editor Log on the Home screen (and also the saved log.txt file in the Editor folder). I suggest disabling this unless you really want to see all of this additional debugging information. I added it to help me debug an issue with Nino's DB relating to league structures. The additional output is pretty limited at the moment but I'll be adding more to it when I revisit Nino's issue (which related to chunks of a league structure somehow disappearing - I don't yet know how and it seems restricted solely to this one version of the DB - I've never seen it with any other DB).
League Structure Sorting
Via File -> Settings -> Database -> Sort league structure data
This re-sorts the league structure table by Club ID. I don't think this is necessary and I simply added this to help debug an issue which I was finding with Nino's DB. It shouldn't do any harm enabling this setting but it's not strictly necessary.