Custom Match Engine Review
Overall Direction
The Custom Match Engine retains the core framework of the Original while adjustments have been made to ensure player attributes and situational decision-making exert a stronger influence on the match.
The modifications focus on four main areas:
Adjusting shooting parameters and xG (Expected Goals) values to encourage more proactive goal-scoring scenarios.
Expanding QME distribution data to ensure player attributes are reflected in match statistics with greater granularity.
Adding supplementary system files to enable AI managers to judge match flow, momentum, and substitution options in a more systematic manner.
Adjusting squad selection and substitution weight parameters so that elements like current ability (CA), potential ability (PA), condition, form, and youth player utilization function more distinctly.
In short, rather than simply being a mod designed to "force more goals," this Custom Match Engine is built to utilize player attributes and match situations across a much wider and more dynamic spectrum.
Shooting & xG (Expected Goals) Adjustments
The Custom Match Engine does not overhaul the entire calculation formula of the shooting model. Instead, it adjusts the base success probability values for specific shot types.
This approach is highly stable. It preserves the criteria the existing shot model uses to evaluate situations, while boosting values only in specific scenarios where shots were previously too weak or xG values were under-calculated.
The adjusted shot types are as follows:
Standard shots
Volleys
Headers
Shots blocked or obscured by defenders/vision
Open goal situations
Penalties
Direct free kicks
The intentions behind these adjustments are clear:
Standard shots and volleys are tuned to be slightly more threatening.
Headers and open goal situations are reflected as more decisive chances compared to the Original.
Penalties operate at a more realistic, high-success probability rate.
Direct free kicks have been adjusted to revive direct scoring threats compared to the Original.
Crucially, the detailed sub-coefficients for shooting remain untouched; only the baseline success rates have been adjusted. Consequently, the core decision-making structure regarding shot distance, angle, and situation remains fully intact.
Expanding QME Distribution Data
The most significant change lies in the QME (Quantitative Match Event) distribution data.
The Original engine groups player abilities and attributes into relatively broad brackets to generate match statistics. The Custom Match Engine subdivides these brackets into much more granular segments.
The distribution data, which was around 3,000 entries in the Original, has been expanded to over 40,000 entries in the Custom Match Engine. This does not simply mean the file size is larger; it means the engine reads the differences between player attributes with far greater precision.
For example, players who behave similarly in the Original will now perform differently in the Custom Match Engine based on:
Position
Current Ability (CA) bracket
Relevant attribute brackets
Detailed action types (such as passing, pressing, tackling, crossing, headers, dribbling, etc.)
The ultimate goal of this adjustment is to make the performance gap between top-class players and average players much more visible on the pitch.
Impact on Match Statistics
The Custom Match Engine does not blindly boost all match statistics. Instead, different metrics scale in different directions.
Metrics related to work rate and aggressiveness have been enhanced:
Pressing attempts & successes
Tackling attempts
Aerial (header) attempts
Clearances & blocks
Dribbles
Forward passes
Sprints & total distance covered
These areas have been adjusted to manifest more clearly when a player possesses high attributes. Consequently, quality players will be more active in matches, press more frequently, and engage in duels more aggressively.
Conversely, certain success rate metrics have been tuned down or calculated more conservatively:
Pass completion rate
Tackle success rate
Certain interceptions and key passes
This serves as a crucial balance check. While increasing attempt frequencies and overall activity, the engine prevents every single action from being overly successful. As a result, the gameplay becomes much more active and dynamic without breaking the balance by inflating overall success rates.
Winger & Attacking Midfielder Adjustments
The Custom Match Engine specifically adjusts the involvement levels of wingers and attacking midfielders.
Left and Right Attacking Midfielders (AM L/R) are tuned to show more activity in:
Crossing attempts & crossing quality
Key passes & forward passes
Overall passing involvement
Central Attacking Midfielders (AM C) have been adjusted for higher passing involvement.
This encourages wingers and second-line attackers to create chances more proactively. Attack routes become more diverse than in the Original, making wing play and forward passing far more prominent during matches.
Crossing Balance Correction
The Custom Match Engine does not simply increase the quantity of crosses without checks.
After the initial QME expansion, certain crossing-related values ended up excessively low or deviated from the Original. To fix this, these values were recalibrated based on the Original's upper-bracket standards.
The purpose of this correction is to:
Prevent crossing from being rendered obsolete.
Ensure that players with high crossing attributes can showcase their strengths.
Avoid inflating crossing success rates randomly.
Maintain positional characteristics.
This is a post-processing balance check applied to crossing to ensure realistic gameplay.
Squad Selection & Substitution Logic Adjustments
The Custom Match Engine modifies team selection weight parameters as well.
The following elements are evaluated with greater weight compared to the Original:
Current Ability (CA)
Potential Ability (PA)
Match condition
Recent form
Youth player utilization
Substitute utilization & match fitness recovery
These changes prompt the AI to apply more active and logical criteria when selecting starting lineups and making substitutions. For the first team, AI managers will heavily favor ability and form. For rotations or reserve-squad decisions, youth utilization and player fitness recovery are heavily weighed.
Additionally, risk factors such as impending suspensions carry heavier penalties. The AI does not just blindly field the strongest player; it evaluates squad management risks more clearly.
Role of the Newly Added QME System Files
The Custom Match Engine includes QME system definition files that are absent in the Original.
These files serve as the rulebook connecting player attributes to on-pitch decision-making.
Key objectives of these files include:
Ensuring no player attribute is wasted or ignored in match calculations.
Evaluating important attributes differently depending on position and role.
Translating raw 1-20 attributes into optimized in-match calculation values.
Consolidating attacking, defending, off-the-ball movement, stamina, kickoff, and goalkeeper decisions into a unified ruleset.
Ensuring hidden attributes and specific personality traits exert actual influence in relevant situations.
For instance, this system does not simply look at "Finishing" for shot outcomes. It is designed to evaluate decisions, composure, off-the-ball movement, physical context, and situational pressure collectively.
These files are essential to the core philosophy of the Custom Match Engine. To utilize player attributes on a wider scale and let diverse attributes influence outcomes dynamically, the default distribution data alone is insufficient. This is why the QME calculation principles and role-based attribute translations have been defined in a separate system.
Key Refinements in the QME System
These added QME system files are not just documentation; they represent the actual engine configurations.
Key details include:
The evaluation range for finishing-related attributes has been expanded.
Shooting bonuses are applied more strongly than before.
Environmental conditions (stamina, weather, pitch state) are mapped to affect the specific attributes they naturally influence, rather than being locked to a single parameter.
Attribute aliases have been added to bridge mismatches between role-based attribute names and actual runtime attribute variables.
Momentum data references have been corrected to match the actual distributed filenames.
These refinements reduce the occurrence of "broken links" where data exists but fails to resolve in calculations. This ensures that the developer's intended attribute-use logic flows consistently through runtime match calculations.
Role of the Momentum-Based Decision-Making System
Another additional file is the momentum-based decision-making system.
This file structures the factors that AI managers evaluate during matches.
Included decision factors are:
Manager tendencies/personality
Current match situation
Current tactical status
Opposition tactical analysis
Match momentum
Tactical instruction options
Substitution options
Crucially, this system does not force the AI to use a specific preset tactic.
Instead, it presents options, analyzes the situation, and links reference data. The final choice of when to adjust, which sub to make, and what instruction to change is left entirely to the AI manager's logic.
Thus, the goal of this system is not to force specific tactical behaviors on the AI, but to enable the AI to read the match flow and consider a wider array of options.
Why These Additional Files Are Necessary
The Custom Match Engine is not a simple tweak of numbers.
When you expand the QME distribution, you need a philosophy on how to interpret that distribution. If you adjust xG, you must define the system in which shooting decisions and finishing bonuses operate. If you want the AI to make active substitutions and tactical shifts, you must structure the data and decision flows they reference.
Thus, the roles of these files are as follows:
QME System File: The rulebook connecting player attributes to match events.
Momentum Decision System File: The analytical system providing options to help AI managers make in-match decisions.
These two files provide the foundation for the Custom Match Engine. They were added to fully realize the developer's goal of creating a "more attribute-driven, situation-responsive, and AI-advanced match engine."
Unchanged Areas
The Custom Match Engine does not change every single file.
The following areas are confirmed to be identical to the Original or remain unchanged in comparisons:
Tactic presets
Physics parameters
Match rating (player rating) calculation data
OOP (Out of Possession) scoring parameters
Original baseline momentum weights
Positional attribute weight mappings
The Custom Match Engine does not overturn the physics engine or preset tactical systems; rather, it refines match decisions, statistics generation, expected goal logic, and AI selection criteria.
Summary
This Custom Match Engine is designed to ensure player attributes translate much more distinctively into on-pitch actions.
Quality players will move more, press more, and create chances more aggressively, with shooting situations yielding more realistic, threatening results. Involvements from wing play and the second line are boosted, making the overall flow of the match more dynamic.
However, success rates are not blindly inflated. Certain metrics like pass completion and tackle success are tuned conservatively to keep the game balanced—meaning players will attempt more, but actions will not succeed too easily.
The newly introduced system files support this direction: one is the QME system rulebook that dynamically maps attributes to gameplay, and the other is a decision-making assistant that enables AI managers to react to match momentum.
In summary, this engine aims to deliver "more active play, visible attribute differences, and richer AI decision-making."
Except for the match_events.xml file, the previous vanilla engine is identical to the 26.3.1 original engine.
Applied the modified match_events.xml file from version 26.3.1 to the custom match engine
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
May 29, 2026 Update
Goal of the Update
This update to the Custom Match Engine aims to resolve issues where defenders and goalkeepers react too slowly or position themselves poorly during shooting situations inside the penalty box.
In the default settings, defenders tended to initiate blocks only after detecting a shooting motion, while goalkeepers leaned heavily towards covering the near post during angled shots. This often resulted in defenders failing to press a ball-carrier who was already in a shooting position, or goalkeepers getting caught off-balance (wrong-footed) after over-committing to the near post.
First Modification: Reacting to the Ball-Carrier Inside the Box
The first adjustment shifts the trigger from "reacting after detecting a shooting motion" to "reacting the moment the opponent gains possession inside the penalty box."
- Defenders are now configured to have the nearest player immediately press and block the shooting lane if the ball-carrier inside the box has a shooting angle. If there is not enough time to close down, they will attempt standing blocks, body blocks, or diving blocks.
- To prevent block attempts from being suppressed due to penalty risks, defensive actions are not completely restricted. Heavy direct tackles on the ball-carrier, late sliding tackles, and tackles making contact from the back or side first are restricted. In contrast, actions that strictly block the shooting path are permitted.
- The goalkeeper's logic has been aligned with this change as well. If a ball-carrier inside the box creates a shooting angle, instead of waiting passively in a set position, the keeper will close down the angle, move forward if necessary to smother the ball, or perform reactive saves.
Second Modification: Resolving Near-Post Over-commitment
The second adjustment addresses the goalkeeper's tendency to over-commit to the near post during angled shots.
- Previously, goalkeepers were configured to prioritize covering the near post first. This caused them to move towards the near post prematurely rather than positioning themselves relative to the shooter and the entire goal. Consequently, if the ball went straight at them or towards the far post, they were often wrong-footed due to their weight already shifting in one direction.
- In this update, the near-post priority command has been removed. The goalkeeper now positions themselves based on the bisector of the shooting angle formed by the shooter, the near post, and the far post. This means the keeper will block the near post using their body positioning while keeping the far post within diving range.
- During angled shots, the keeper remains balanced in the center of the shooting cone rather than drifting too close to the goal line or near post. Even if the shot comes straight at the keeper, they will maintain forward balance and attack the ball rather than backing off or leaning to one side.
Summary
The core of this modification lies in two key areas:
- Inside the penalty box, defenders and goalkeepers now react the moment the opponent controls the ball and creates a shooting angle, rather than waiting for the shot to be released.
- The goalkeeper no longer over-prioritizes the near post. Instead, they position themselves logically based on the shooter and both posts, reducing instances of over-committing to the near post during angled shots or getting wrong-footed on central shots.
Locate your game installation folder.
Go to the \Football Manager 26\shared\data\ folder and make a backup of the original simatch.fmf file.
Extract the downloaded zip file and place the contents into the folder.
Support my work by buying me a coffee! buymeacoffee.com/skogr
Credits
Comments
You'll need to Login to comment
skogr
"Please understand that since I write my messages using an AI translator to convert Korean to English, some of the phrasing might be awkward or my exact meaning might not be conveyed perfectly."
cephas.88
As mentioned before, what I am trying to tell you is that the QME files are not what you think they are. The QME files only apply for leagues that are not in full detail. It is a simplified version of the match engine. It doesn't apply to the leagues that are playable and in full detail. The QME files have existed for some time and they are inside the simatch file to provide the necessary code to simulate and process all the data for those leagues never selected as playable and not in full detail. Changing those files or adding more files related with QME will not have any effect whatsoever for what players see during their saves in the leagues they play in. Any comparative analysis is moot since, once again, the files will not be applicable during the 90 minutes players see when they play a match.
This means you can spend all the time in the world working on those files, even adding new ones, but you will be wasting your own time which can be used to alter the actual files that influence people's saves.
This, in summary, means that everything you wrote about the QME is not applicable. It doesn't work like that. You are missing the fundamental point here: the QME files are not what you think it is. To change the match engine you need to change the files that actually impact the gameplay.
This is not a translation issue between Korean and English, it is a fundamental point. The same with the match events file. That file doesn't have any effect during the 90 minutes of a match. It only changes stuff related with the audio and for possible commentary mods.
So if you wish to release a match engine mod then you should change the files that actually have an impact although you can try and do stuff in the margins which you did, fair play to you and good work on that…
skogr
"I understand the point you are trying to make."
"Are you referring to
qme_distribution_data? Do you fully understand whatqme_distribution_dataactually does?""This file calibrates action attempts and success rates based on a player's ability (CA) and attributes for each position during specific match actions."
"Contrary to your claim, this file doesn't just apply to non-active/unplayed leagues. It also applies to matches within your own active league that you do not directly participate in (AI vs AI matches)."
"This is precisely why modifying this file is necessary."
"Have you actually run tests on season statistics for at least one full season after editing
qme_distribution_datain FM26? Or are you just assuming it behaves the same way now simply because it did in the past?""Before releasing any of my mods, I simulate at least one to three full seasons in spectator mode. I only make them public after reviewing the league data to verify the changes. I don't just upload files on the blind assumption that 'since I edited this, it must be working.'"
cephas.88
You continue to fundamentally misunderstand what the QME is. The quick match engine. Well, here you have three links from the SI forum that tells you what the QME is which is not what you think it is
First link - https://community.sports-interactive.com/forums/topic/592948-how-many-divisionsleagues-do-you-run-fm-with/#findComment-14779032
Second link - https://community.sports-interactive.com/forums/topic/590981-why-am-i-hogging-possession-with-nothing-happening/#findComment-14673901
Third link - https://community.sports-interactive.com/forums/topic/583592-best-fm/page/2/#findComment-14516753
Yes I do fully understand what the QME is and what the QME distribution data does. It is, bar some changes, the same as in FM24. Those two files, QME distribution data and QME stat relevant attribute data are used in leagues with no full detail. The leagues that players do not play in. That’s it, nothing more than that. It is the code that allows the game to calculate results and ratings in the wider FM universe, that slice of the universe that it is not in full detail.
This means you make another fundamental mistake.
If I am managing Chelsea in the Premier League, and if there’s a game between Arsenal and Man Utd, so two AI teams, that match will be using the full match engine since it is a league being playable and in full detail.
If I am managing in the Premier League but then I have the Championship as a selected league but with no detail at all (all detail removed) then the whole Championship will be using the QME while the Premier League uses the full match engine.
And this is your fundamental mistake. I am pointing this out to you so that you can correct it and focus on what actually changes what players see when they play a match
skogr
Thank you for sharing the document and your comments. I appreciate the useful information, and I realize there were some details that I did not clearly distinguish before.
As you mentioned, I understand that qme_distribution_data may not be a file that directly alters player movement or scene generation logic during matches played in full detail (3D/2D spectator mode). I agree that I should have been more careful with my phrasing regarding this.
However, my stance is that this file is not entirely meaningless. It can affect action attempts by position, success rates, and post-match statistical calculations for matches processed via QME. Especially in situations where matches are not run in full detail, such as text-only commentary, instant results, or low/no detail simulations, I believe the calibrated values in qme_distribution_data are likely reflected in actual match outcomes and cumulative statistics.
In my previous tests, I observed changes in season cumulative data, such as cross attempts and crossing success rates, after modifying qme_distribution_data. However, since I cannot present reproducible, objective test data right here, it is fair to treat this as my own observation and hypothesis.
To verify this accurately, we would need to simulate multiple seasons under identical conditions using both the vanilla and modified files, and then compare metrics like cross attempts, success rates, passes, pressing, and tackles through the Data Hub or cumulative league records.
In summary, I am not arguing that qme_distribution_data directly alters frame-by-frame movement in full-detail matches. However, it can influence statistical calculations in QME-processed matches and low-detail/text commentary scenarios, which is why I believe there is a reason to modify this file.
For player behaviour and decision-making during on-pitch situations, my custom match engine handles that separately through qme_stat_system. So I see qme_distribution_data more as a statistical calibration layer, while qme_stat_system is intended to handle behavioural logic.
Thank you once again for your constructive feedback and for sharing the resources.
"I hope the translation conveys my meaning clearly."
cephas.88
Thank you for your comment and I appreciate your time and patience. This discussion is really useful and it can provide very valuable insights.
Any QME file, either being the QME distribution data, or the QME stat system, only handle leagues that are not in full detail. This means that this will not affect the player because that’s not the match engine being used when you, my or any other player uses with their own team.
This is what I’m trying to tell you. You are only changing values regarding all the leagues not in full detail, leagues that are not being played.
Although one can argue that there’s an added value in that (for example, how AI players develop) it doesn’t change what the player sees during their own games. It might help improve the sense of immersion but it is not a true match engine mod that changes what players see during their own games. Or the league games in the league they play in or any other league with full detail.
For you to release any match engine mod that directly affects what the player sees during a match, then you need to shift your focus away from the QME. And focus on the files that truly allows you to do what was possible in FM24 with the match engine mods that were released back then
franck69
i play FM since 15 years, i play FM 26 for 4 seasons. And yes, this mod makes some (good) changes when i watch my games. 100% affirmative. It’s not placebo.
skogr
Thank you for the great review
skogr
"I see what you mean."
"My goal with this custom match engine is just to make the game more realistic and fun, rather than building overpowered tactics or copying previous versions of the engine. I'm happy with how it is now, and I will continue to tweak it as I play and find things to improve."
"Thanks for taking an interest in my work."
simizu
Many people are saying that the movements they see in matches have changed considerably.
The mod creator is not trying to deceive us at all.
I think you should give it a try.