Thomas30
Squad number 30, club colours

Ryan Thomas

PlayerNZL Contracted to 2027Home-grown —
112 Current ability
126 Potential ability
£0Estimated value
£1,728Weekly wage
19Caps

Attributes

Technical

  • Corners— 11
  • Crossing— 11
  • Dribbling— 14
  • Finishing— 6
  • First touch— 13
  • Free kicks— 8
  • Heading— 10
  • Long shots— 10
  • Long throws— 7
  • Marking— 7
  • Passing— 15
  • Penalties— 13
  • Tackling— 5
  • Technique— 15
  • Versatility— 17

Mental

  • Aggression— 10
  • Anticipation— 13
  • Bravery— 8
  • Composure— 11
  • Concentration— 12
  • Consistency— 11
  • Decisions— 12
  • Determination— 15
  • Dirtiness— 7
  • Flair— 11
  • Important matches— 7
  • Leadership— 14
  • Off the ball— 15
  • Positioning— 10
  • Team work— 14
  • Vision— 12
  • Work rate— 14

Physical

  • Acceleration— 12
  • Agility— 14
  • Balance— 12
  • Injury proneness— 20
  • Jumping reach— 9
  • Natural fitness— 4
  • Pace— 12
  • Stamina— 9
  • Strength— 9
15–2011–146–101–5Not recorded▲ ▼ change across versions

This is the first version of its game, so there is no earlier database in the same game to compare with. A + marks a value this version records and the earlier one does not; a ! marks a stored value outside the 1–20 scale, which is left unsubtracted.

Positions

  • GKgoalkeeper—not recorded
  • DLdefender_left—not recorded
  • DCdefender_central—not recorded
  • DRdefender_right11competent
  • DMdefensive_midfielder14competent
  • MLmidfielder_left12competent
  • MCmidfielder_central17accomplished
  • MRmidfielder_right13competent
  • AMLattacking_mid_left12competent
  • AMCattacking_mid_central20natural
  • AMRattacking_mid_right12competent
  • STstriker13competent
  • WBLwing_back_left—not recorded
  • WBRwing_back_right11competent
Competency on the game's 1–20 scale. A dashed ring is a position with no recorded competency.
AMC 20 MC 17 DMC 14 MR 13 FC 13 ML 12 AML 12 AMR 12 DR 11 WBR 11

Best roles

FMDB calculation
Best roles for the strongest position
Role Duty Suitability
Advanced PlaymakerAMCSupport13.3 / 20
Inverted WingerAMLSupport13.2 / 20
Attacking MidfielderAMCAttack13.2 / 20
MezzalaMCAttack13.1 / 20
WingerAMLAttack12.9 / 20
Complete Wing BackWBRAttack12.8 / 20
Deep-Lying ForwardFCSupport12.7 / 20
Deep-Lying PlaymakerDMCSupport12.7 / 20

The FMDB's own figure, not a game scouting star: the weighted mean of the recorded attributes for each role, on the source's own 1–20 scale, with a role's key attributes counted 2× its preferable ones. Roles are offered only for positions with a recorded competency of at least 10, and a role scored from under 70% of its attributes is withheld rather than published from a handful of values.

Personal information

Full name
—
Common name
—
Date of birth
1994-12-20
Nationality
New Zealand
Other nationalities
England (second · eligible for nation), Netherlands (third · eligible for nation), Netherlands (resident · eligible for nation)
Birth city
Te Puke
Height and weight
174 cm
Youth club
—
Agent
—
Languages
English, Dutch

Club contract

Squad number
30
Type
—
Squad status
—
Joined
2024-08-01
Contract start
2025-05-16
Expires
2027-06-30
Weekly wage
£1,728
Estimated value
£0
Transfer status
—
Asking price
—

Joined is the club-join date on the person row. Contract start is the date the current contract was last signed, as the modern export records it; CSV-era versions record only the join date. Type comes from person_contract_detail where the version decodes it.

Player profile

Current ability
112
Potential ability
126
Home reputation
110
Current reputation
110
World reputation
58
Personality
—
Media handling
—
Favourite squad number
—

Ability and reputation are stored on the game's internal scale, which runs to about 200, and shown unchanged; the stars in the header are that figure out of five.

Home-grown and training

Exported; UI pending
Trained in Days Since
———
Home-grown at club
—
Home-grown in nation
—
Trained in the EU
—
Qualifies as
—

Modern exports include training days and recorded trained status. This panel has not integrated them; eligibility must respect the recorded rule and location type.

Personality

  • Adaptability —
  • Ambition —
  • Controversy —
  • Loyalty —
  • Pressure —
  • Professionalism —
  • Sportsmanship —
  • Temperament —

Personality is stored on the same 1–20 scale as the attributes. A dash is a value the export did not record.

Feet

  • Left foot 10
  • Right foot 20

Goalkeeping

No goalkeeping attributes recorded

Shown only when at least one value in player_goalkeeper_attributes is recorded.

Across versions

Recorded
Ryan Thomas current and potential ability across versions0100200 FM14 UFM16 RFM17 UFM19 RFM20 UFM22 RFM26 RFM26 UCurrent ability, FM14 Update: 106 Current ability, FM15 Release: 115 Current ability, FM15 Update: 115 Current ability, FM16 Release: 115 Current ability, FM16 Update: 115 Current ability, FM17 Release: 113 Current ability, FM17 Update: 113 Current ability, FM18 Release: 117 Current ability, FM18 Update: 121 Current ability, FM19 Release: 125 Current ability, FM19 Update: 125 Current ability, FM20 Release: 125 Current ability, FM20 Update: 129 Current ability, FM21 Release: 129 Current ability, FM21 Update: 129 Current ability, FM22 Release: 129 Current ability, FM23 Release: 129 Current ability, FM24 Release: 114 Current ability, FM26 Release: 112 Current ability, FM26 Update: 112 Potential ability, FM16 Update: 132 Potential ability, FM17 Release: 135 Potential ability, FM17 Update: 131 Potential ability, FM18 Release: 130 Potential ability, FM18 Update: 137 Potential ability, FM19 Release: 137 Potential ability, FM19 Update: 137 Potential ability, FM20 Release: 137 Potential ability, FM20 Update: 135 Potential ability, FM21 Release: 135 Potential ability, FM21 Update: 135 Potential ability, FM22 Release: 135 Potential ability, FM23 Release: 135 Potential ability, FM24 Release: 126 Potential ability, FM26 Release: 126 Potential ability, FM26 Update: 126
Current ability 112Potential ability 126
Recorded ability in each database where this uid resolves. Missing values remain gaps. Negative potential codes are listed in the data table, not plotted as fixed abilities.
Ryan Thomas current and potential ability across versions
VersionCurrent abilityPotential ability
FM14 Update106-7
FM15 Release115-7
FM15 Update115-7
FM16 Release115-7
FM16 Update115132
FM17 Release113135
FM17 Update113131
FM18 Release117130
FM18 Update121137
FM19 Release125137
FM19 Update125137
FM20 Release125137
FM20 Update129135
FM21 Release129135
FM21 Update129135
FM22 Release129135
FM23 Release129135
FM24 Release114126
FM26 Release112126
FM26 Update112126
Ryan Thomas weekly wage across versions£0£11.8K FM14 UFM16 RFM17 UFM19 RFM20 UFM22 RFM26 RFM26 UWeekly wage, FM18 Update: £2,418 Weekly wage, FM19 Update: £11,221 Weekly wage, FM20 Update: £11,806 Weekly wage, FM21 Release: £1,723 Weekly wage, FM21 Update: £11,806 Weekly wage, FM22 Release: £11,640 Weekly wage, FM24 Release: £2,143 Weekly wage, FM26 Release: £1,728 Weekly wage, FM26 Update: £1,728
Recorded weekly wage (GBP) in each database where this uid resolves. Missing values remain gaps. The table below the chart also carries the recorded estimated value in each of those databases.
Ryan Thomas weekly wage across versions
VersionWeekly wageEstimated value
FM14 Update——
FM15 Release——
FM15 Update——
FM16 Release——
FM16 Update——
FM17 Release——
FM17 Update——
FM18 Release——
FM18 Update£2,418£1,702,400
FM19 Release——
FM19 Update£11,221£2,842,400
FM20 Release——
FM20 Update£11,806£3,982,400
FM21 Release£1,723—
FM21 Update£11,806£4,592,000
FM22 Release£11,640£4,600,000
FM23 Release—£4,600,000
FM24 Release£2,143£400,000
FM26 Release£1,728£0
FM26 Update£1,728£0

Attribute summary

Attribute summary Attribute summary: 6 of 6 values recorded, plotted on a 1 to 20 scale. Attribute summary: 6 of 6 values recorded, plotted on a 1 to 20 scale.
6 of 6 recorded Derived by thefmdb by averaging the attributes listed below. The Football Manager database stores no such summary.
Attribute summary — every value plotted above, plus the ones that are not recorded.
AttributeValueCoverage
Pace 12.0 2 of 2 recorded
Physical 9.5 6 of 6 recorded
Technical 13.6 5 of 5 recorded
Mental 13.1 9 of 9 recorded
Defending 8.0 5 of 5 recorded
Shooting 9.7 3 of 3 recorded
Axis Mean Coverage
Pace12.02 of 2 recorded
Physical9.56 of 6 recorded
Technical13.65 of 5 recorded
Mental13.19 of 9 recorded
Defending8.05 of 5 recorded
Shooting9.73 of 3 recorded

Percentile wheel

Percentile wheel Percentile wheel: 6 of 6 values recorded, plotted on a 0 to 100 scale. Percentile wheel: 6 of 6 values recorded, plotted on a 0 to 100 scale.
6 of 6 recorded Each wedge is the mean of its attributes' percentiles against attacking_mid_central at tier 0 clubs in this version — derived by thefmdb from the same six groups as the summary above. The Football Manager database stores no such figure. A wedge reaching the rim is the top of the cohort; the centre is the bottom.
Percentile wheel — every value plotted above, plus the ones that are not recorded.
AttributeValueMeasured against
Pace 52.0 pct 2 of 2 attributes
Physical 47.0 pct 6 of 6 attributes
Technical 78.0 pct 5 of 5 attributes
Mental 77.5 pct 9 of 9 attributes
Defending 51.7 pct 5 of 5 attributes
Shooting 39.3 pct 3 of 3 attributes
Axis Percentile Measured against
Pace52.0 pctattacking_mid_central at tier 0 clubs · 2 of 2 attributes
Physical47.0 pctattacking_mid_central at tier 0 clubs · 6 of 6 attributes
Technical78.0 pctattacking_mid_central at tier 0 clubs · 5 of 5 attributes
Mental77.5 pctattacking_mid_central at tier 0 clubs · 9 of 9 attributes
Defending51.7 pctattacking_mid_central at tier 0 clubs · 5 of 5 attributes
Shooting39.3 pctattacking_mid_central at tier 0 clubs · 3 of 3 attributes

Injuries

19 recorded
2014 2016 2018 2020 2022 2024
hernia
torn knee ligaments
moderate thigh strain
torn medial meniscus
torn anterior cruciate ligament
groin strain
twisted ankle
fractured ankle
concussion
torn knee ligaments
bruised head
cut leg
torn knee ligaments
thigh strain
flu
sprained foot
tight hamstring
sprained ankle ligaments
hip injury

Each bar runs from the recorded start date to the recorded return date; bars of 30 days or more and of 90 days or more are coloured.

Injury history from player_injury, most recent first
Injury From Returned Side Severity Flags
hernia2025-11-022025-11-30unknown0—
torn knee ligaments2024-01-162024-06-30not set0—
moderate thigh strain2023-12-102023-12-31not set0—
torn medial meniscus2023-08-012023-10-15not set0—
torn anterior cruciate ligament2021-10-122022-12-30not set0—
groin strain2021-09-072021-09-14not set0—
twisted ankle2021-07-252021-08-13not set0—
fractured ankle2021-03-062021-06-30unknown0—
concussion2020-11-072020-12-28not set0—
torn knee ligaments2018-08-222019-03-01unknown0—
bruised head2018-01-302018-02-05not set0—
cut leg2016-09-292016-10-20unknown0—
torn knee ligaments2015-12-122016-08-01unknown0—
thigh strain2015-04-172015-04-25not set0—
flu2015-02-192015-02-26not set0—
sprained foot2014-12-182015-01-01unknown0—
tight hamstring2014-03-212014-03-26not set0—
sprained ankle ligaments2014-02-172014-02-28unknown0—
hip injury2014-02-032014-02-08unknown0—

Bars are the recorded absence; amber is over three weeks, red over two months. severity is a raw number from the source.

Clauses and bonuses

None recorded
Clause Amount Applies
———

Recorded clauses come from person_contract_clause and clause_type. Modern person_contract_bonus rows, where a contract has them, are counted here and wait for clause-specific interpretation before any amount is shown.

International

Youth level pending
Senior caps and goals
19 caps, 3 goals
Under-21
6 caps, 1 goal
Youth
—
Declared for
New Zealand
Eligible for
England, Netherlands
Debut
—
First goal
—

Caps, goals, previous nations, debut and first goal come from person_international_record where the version exports it; debut and first-goal dates are decoded in FM24 and rarely elsewhere. Versions without the table show senior caps from the player row only. Eligibility lists the nations person_nationality marks eligible-for. No export establishes youth-level records. Missing fields stay blank.

Honours

Partial export
—

FM24 exports achievements with event codes and date precision in starting_person_history and starting_person_history_date. Other versions remain unsupported, and this panel still needs validated event interpretation. A club spell during a winning season does not prove a personal medal. The awards panel below shows recorded placings.

Career

1 marked current
Career spells from staff_history
Club Role From To Status
Melville United AFCPlayer2010-01-012011-01-01Ended
Waikato FCPlayer2011-01-012012-07-01Ended
Western Suburbs FCPlayer2012-07-012013-06-30Ended
PEC ZwollePlayer2013-07-012018-07-01Ended
PSVPlayer2018-07-012022-06-30Ended
PEC ZwollePlayer2022-07-01—Current
Career apps and goals
224 (17)
Clubs
5
Loans
0
First professional contract
—

Career appearances and goals combine the recorded player_history rows this page has checked do not overlap: every detail row, plus a summary row only where no detail row covers the same season at the same club. The clubs count is the distinct clubs in the career spells above. The date of a first professional contract is not derivable from the earliest history row.

Season record

Season record

One row per season as the export recorded it. A transfer fee is shown where a figure was stored; where the source recorded only a sentinel — "Undisclosed fee", "Unknown fee" — that sentinel is printed instead. A fee of zero is a fee of zero, not a missing one.

Season-by-season record from player_history.
Season Club Division Apps Goals Transfer fee Joined Left
2010–11 Melville United AFC New Zealand Northern League — — Unknown fee 2010-01-01 2011-01-01
2011–12 Waikato FC New Zealand Premiership 13 3 Unknown fee 2011-01-01 —
2012–13 Waikato FC New Zealand Premiership 5 1 Unknown fee — —
2012–13 Waikato FC New Zealand Premiership 6 1 Unknown fee — 2012-07-01
2013–14 Western Suburbs FC New Zealand Central League — — £0 2012-07-01 2013-06-30
2013–14 PEC Zwolle VriendenLoterij Eredivisie 19 1 Unknown fee 2013-07-01 —
2014–15 PEC Zwolle VriendenLoterij Eredivisie 30 3 Unknown fee — —
2015–16 PEC Zwolle VriendenLoterij Eredivisie 14 2 Unknown fee — —
2016–17 PEC Zwolle VriendenLoterij Eredivisie 31 1 Unknown fee — —
2017–18 PEC Zwolle VriendenLoterij Eredivisie 31 1 £2,432,691 — 2018-07-01
2018–19 PSV VriendenLoterij Eredivisie 0 0 Unknown fee 2018-07-01 —
2019–20 PSV VriendenLoterij Eredivisie 11 2 Unknown fee — —
2020–21 PSV VriendenLoterij Eredivisie 16 1 Unknown fee — —
2021–22 PSV VriendenLoterij Eredivisie 6 1 £0 — 2022-06-30
2022–23 PEC Zwolle Keuken Kampioen Divisie 18 0 Unknown fee 2022-07-01 —
2023–24 PEC Zwolle VriendenLoterij Eredivisie 7 0 £0 — 2024-06-30
2024–25 PEC Zwolle VriendenLoterij Eredivisie 17 0 Unknown fee — —

Similar players

FMDB calculation

Nearest recorded attribute profiles among 120 players in VriendenLoterij Eredivisie within 15 current ability, compared on the attributes both record. Not a whole-database search. The match is the mean absolute difference over those attributes expressed against the 1–20 scale; an attribute only one of the two records is left out rather than counted as a gap of fourteen.

National-team spells

No national-team spells recorded

Nothing in person_nation_contract for this person, although 19 international appearances are recorded on the player row.

Bans and absences

Bans and absences from person_ban
Type From To Matches Competition Nation
——————

Awards

0 recorded
Season Award Placed
———

Likes and dislikes

In the export
Favoured clubs
—
Disliked clubs
—
Disliked people
—

Other relations

Typed relations from person_other_relation
Target type Target Rating
nation (object type 8)England100
nation (object type 8)Netherlands100
nation (object type 8)Netherlands100
competitionVriendenLoterij Eredivisie15
clubPEC Zwolle1
nation (object type 8)New Zealand1
nation (object type 8)Netherlands1

Familiarity

Familiarity from person_familiarity
Target type Target Level Linked
clubPEC Zwolle24No
nationNetherlands24Yes
nationNew Zealand58No

Preferred moves

Needs mapping

The source records preferred moves as bits. Names need a validated export mapping.

Data wishlist for this page

18 data pointsWhole site
  • person_days_at_location, person_trained_status Training days and recorded home-grown status Exported; UI pendingThe modern schema includes days, age bands and trained-at-club or trained-in-nation relationships. Rule codes and target kinds must be respected; these rows do not prove eligibility under every competition rule.
  • person names, date_of_birth, height_cm, weight_kg Names, birth date, height and weight Now liveRecorded identity and measurements are displayed; missing values stay blank.
  • export_meta.reference_date Age at the in-game date No reference dateThe base .dat source does not store an authoritative reference date. Birth year alone cannot establish an exact age.
  • person_nationality, person.declared_nation_uid Additional nationalities and declared nation Now liveSecond, third and resident nationalities with their source relationship labels, and the declared nation, are displayed where the version exports them; CSV-era versions say so.
  • person_contract_detail, person_club_status Contract type, squad status and explicit unattached status Partial exportContract type is displayed where contract_status is decoded (FM24); the FM26 exports carry the column as NULL on every row. squad_status has no lookup table and has_no_club is not yet used; a missing contract is not evidence of free agency.
  • playing-time promises and market status Playing-time promise, transfer or loan listing and asking price Needs source dataThese facts are not established by the current contract-detail or club-status columns.
  • person_contract_clause, person_contract_bonus Contract clauses and bonuses Partial exportRecorded clauses are displayed. Starting-contract bonus rows are counted with their raw type codes; cash and misc need clause-specific interpretation before any amount or condition is shown.
  • agent identity and representation Agent Needs source dataThe current catalog has no agent identity or representation relation.
  • player attribute tables and PlayerRoles Role suitability Now liveFMDB calculates its own weighted attribute scores for competent positions, with coverage thresholds; these are not stored scouting stars.
  • attribute tables in the previous version of the same game Attribute changes since the previous version Now liveComparisons distinguish a changed value, newly recorded data, missing data and off-scale values.
  • player and person_club_contract across versions Ability, potential, value and wage across versions Now liveCharts use recorded values after identity checks in each target database. Missing values and coded potential are not invented chart points.
  • person personality attributes; preferred_move.bit_index Personality, media handling and preferred-move labels Needs validationPersonality scores and move bits are recorded. Validated labels and era-specific mappings are still missing.
  • person_international_record Senior and under-21 goals, caps and debut details Now liveSenior and under-21 caps and goals, previous nations, debut and first goal are displayed where the version exports them; CSV-era versions fall back to senior caps from the player row. Youth categories are not established.
  • starting_person_history, starting_person_history_date Personal honours and milestones Partial exportFM24 achievements include record_type, job, flags and date precision. Other versions remain unsupported; the page still needs validated event interpretation. Club membership in a winning season does not prove a medal.
  • player_history Career totals and recorded season history with fees Now liveTotals use bounded history and exclude overlapping summary rows. Coverage depends on the selected player and version.
  • player attribute vectors within a bounded division cohort Similar players Now liveFMDB compares shared recorded attributes within the documented ability band and candidate cap; this is not a whole-database search.
  • award_history_winner and person relationship tables Recorded awards, liked and disliked clubs and people Now liveOnly resolving identities are linked; missing relationships remain missing.
  • explicit youth and first-professional-contract events Youth club and first professional contract Needs source dataAn earliest career row, current contract start or forced initial contract date does not establish either fact.

Reviewed 30 September 2026 against the current schema and page implementation. “Now live” means implemented where data is recorded; “Exported; UI pending” means the schema has data this page does not yet use. Tables and coverage vary by version. Missing values stay blank.