olimorris
Do you guys have an Excel or Google Sheet of the MDW22 ratings? I want to cross check they’re the ones I put in PyScoutFM.
olimorris said: I've just added a section around how you can install this in the cloud with minimal effort - here. I recommend doing that and then following the guide on how to Generate a Scout Report.

@Floppyaams this is probably going to be the easier way of using PyScoutFM. Reach out to me if you need any help.
I've just added a section around how you can install this in the cloud with minimal effort - here. I recommend doing that and then following the guide on how to Generate a Scout Report.

Appreciate not many people have experience working with Python and it can messy to install if you're on Windows.

I've added an FAQ section comparing PyScoutFM to Squirrel's, here. Hard not to make it look like a d*ck measuring contest but I think it's the best way to show how the tools differ. I'll stand by the outputs from PyScoutFM compared to Squirrel's as it uses the ykykykyky_balanced ratings that @Mark put together in the Genie Scout filter file all those months ago.

Watching how Squirrel explains his rating system (I've also linked to this in the FAQ section), they're mostly based on how FM colours various attributes for a given role. With the exception of Acceleration, Pace and Finishing for an F9 which Squirrel marks as "Key" and multiplies by 5. He also grades other attributes as "Green" and "Blue", which he multiplies by 3 and 1, respectively. Unless I've missed something in his previous videos, I don't understand the delta of 2 between the Key and Green and the Green and Blue. In other words, why is it 2 and not 3.7 or some other made up number?!

Anyway, I've created this tool to scratch my own itch as I prepare to do an English Level 10 LLM adventure in FM24. I wanted to share it with this thread as thanks for all of the amazing effort and content that so many people have put in. I'm likely to expand it in the coming weeks with some Moneyball stats and ratings.

If you're hitting any weird issues or can't get it loaded, open up a discussion in the repo and I'll be happy to help.
Gracolas said: No offense to everyone putting the effort on building these pyton scripts. I can only imagine how many hours you've put into this, since im a dumbass in terms of programming.

But honest question: why would i use any of these methods, if i have genie scout doing exactly the same plus more features?


I find the GS workflow to be really slow. Loading the DB takes ages. If I wish to change the ratings I have to go into so many different windows + tabs and I have to remember to apply them each time I load the tool up .

I can't speak for other projects but I plan on including a MoneyBall element soon and combining that with the machine learning ratings.
Hi Everyone.

It's been a while and I took that time to turn the cruddy Jupyter Notebook into a command line app. It's wayyyy easier to use than a Jupyter Notebook and I've put a detailed usage guide over in the repository.

You can access it here.

It uses the machine learning weights by default and outputs to a HTML file that you can open and search in the browser...otherwise it's the exact same as the Jupyter Notebook.
HVS said: @olimorris On the ykykyky balanced, I think someone playing as D/WB (L) should not have FB rating of zero. When I see the json file, maybe adding "D/" can fix that.

Great spot and completely agree. Will fix later!
Lights123 said: I am not familiar with Python/coding so I assume this is something specific to people who are and not a everyone can use type of thing? Apologies if that's a misunderstanding on my part

No I don't think so but if you want to attempt to play with it and post any issues on here and I can walk you through.

I will be turning it into an app in the next week or two.
I'll add the ykykyk_balanced ratings to the notebook later and push to GitHub. I've also added in two new columns, Best Position and Best Rating to make it a little more Genie Scout esque. The ratings are now stored in a ratings.json file which is probably a bit easier to edit and allows for ratings to be easily shared between folk.

Conscious that the Jupyter Notebooks will suck for most people so I will turn it into a Python utility which can be run from the command line as an intermediate step before potentially turning it into a web app.
owing said: I get what you're saying. There probably is some kind of workaround to make it happen, but I can't really tell how. On another note, the ykykyk ratings are to my understanding relative to the player roles in the ZAZ - Blue tactic, which uses IWB's, Wingers and a RPM. If I wanted to get a more specific rating for the meta roles (DM, SV, WB, IW, etc..) would I need to add different ratings to the code?

Ah, I hadn't explored ZAZ Blue enough to realise that. But you're absolutely right, alter the dictionary values (in the attribute weightings section) in the notebook. If it doesn't make sense, let me know on here or via a GitHub issue and I can take a look.
owing said: IIRC @Mark showed somewhere in this thread exactly how he calculated the offset, but I can't tell on which page. I can look into it at a later point when I have time.

Yes I remember reading that. What I can't workout is how you get at the underlying data. For example, how do I know that a player is only Accomplished as an "AM (C)" as opposed to Natural
Mark said: I am tied up with other FM stuff at the moment, so unfortunately haven't had the chance to look at your work. It does sound like something very beneficial to the community. I do have one question, ideally the tool would have the offset for the positional rating which I don't think you can download. I have always calculated this manually for my teams and key scouted players. Do you somehow derive this?

Good question and currently a limitation of the tool. It assumes that a player who been given a rating, is a natural in that position.

I don't think you can get at that data using the standard views in FM, but I believe if you have the in-game editor, you can access hidden data points. Hoping when that arrives on 6 November I'll be able to add them. Will be very easy to do in the current version of the tool.

EDIT: Just seen that in FM23 those positional attributes aren't available in a view :(
owing said: I've been playing around with the Python script for a decent amount during the last couple of days, and I've also found it great fun and very useful. I've changed a decent amount of the original script, and the plan was to incorporate the ykykykyky ratings, or @Mark's ratings to get a more precise result. As I haven't gotten around to do it yet, it's great to see someone with the same idea executing it. Since the ykykykyky ratings mainly are derived from one specific tactic, it could also be interesting to how the results differ when using a different set of ratings.

Yeah would be really interesting to see that comparison. In my notebook it's possible to have multiple weightings dictionaries defined. You can then select which one to use and run the notebook to generate the output for each.

Would value your feedback on the tool so far. I'm mulling over turning it into a web based tool if enough people value its output.
thepunisher23 said: Hello, very good tools however I have players who remain at 0 even though the position is well noted in the script. and I would like to know if it was possible to create a similar script to calculate staff levels?

Really good spot. You've stumbled across a current shortcoming in my weightings dictionary. I hadn't added "D (R)" into the "fb" part of the weightings dictionary. This is something you can manually do yourself in the notebook and there will likely be other gaps for other positions.

I'll push an update to the GitHub repo later today. I've added the ability to filter out attributes which are below a certain threshold (e.g. any attribute that has a value of less than 50; why should a striker be measured on their ability to take a corner for example) and it handles missing columns more elegantly.
Background

I've digested a lot of this content over the weekend, mainly thanks to squirrel_plays, on YouTube.

Historically, I've used Genie Scout to reasonable success. However I've found its laggy interface and static rating files in recent editions to be cumbersome. I've also never been 100% confident that the players it rates highly would be right for my team...something I recall not having an issue with in earlier Football Managers.

Anyway, the comments on this thread and the work done by ykykykyky and squirrel_plays inspired me somewhat to make a small Python tool which I am now using in place of Genie Scout.

How the tool works

The principle is simple. Use the supplied views in Football Manager and export to a HTML file which you then run through the Python tool (which I've called PyScoutFM for now) which outputs a HTML file you can open and start filtering / sorting within.

I've taken an initial approach of loading in ykykykyky's findings into the tool. I then multiply the rankings by a given player's attributes to calculate the weighted attributes. If a striker has 18 pace, given that has a score of 70 in the ykykykyky findings, then the striker would have a weighted attribute for pace of 12.6 (18 * 70/100). The tool then sums up all of the striker's weighted attributes and divides them by the maximum possible score. This gives the player a score out of 100. This is then repeated for the other player positions.

I'm aware of the findings talking about "multiplying by 20 and subtracting 121" but given that math just proportionally inflates all numbers then it makes no sense to include it (unless I've missed something catastrophic).

The output file

The output is a HTML file which allows you to search for specific players and sort by ratings. It has some basic pagination built in so can work across big datasets (I've tried it across 4000 players) but don't expect it to have the robustness of Genie Scout just yet

Limitations

Firstly, this is a WIP. I've not built anything in around a player being anything less than a natural in their given position. The file is a Jupyter Notebook currently, which is less than ideal to use for a potentially widely distributed piece of software...however it easily allows for my workings to be critiqued by the community. Which I am hoping those of you in this thread are kind enough to do. I've initially run this on FM24 but see no reason why it wouldn't work on earlier versions.

Credit

I want to give a shout out to squirrel_plays who inspired this rabbit hole I went on. I took the principles of their attempts with Python and Football Manager and tried to build a tool which would be adaptable for other players.
Nice! Glad to see the Brazilian box is still popular. Imo it seems way more effective in FM24 than FM23.

I'm using IWB in mine for certain games and I'm averaging 57% possession in games.