Skip to content

Releases

v1.12.1 - Cruuz-style honesty + polish

Choose a tag to compare

@jtfresh90 jtfresh90 released this 12 Oct 18:38

Grok's fixes:

  • README rewritten with a clear capability table (Editable / Research / Pending) matching the style used by cruuz's 2K5 tools.
  • Existing solid core (ratings, team grouping, balancer) kept and clearly labeled.
  • Rating inference status and team-name coverage explicitly documented.

The Windows EXE (NCAA2K3-Roster-Editor.exe) is built automatically and attached below. The mobile PWA is unchanged: https://jtfresh90.github.io/NCAA-2K3-Roster-Editor/mobile/

v1.12.0 - 2K5-Style Playbook Organization

Choose a tag to compare

@jtfresh90 jtfresh90 released this 06 Oct 18:35

What's New

2K5-Style Playbook Organization

Inspired by NFL 2K5's play-calling interface:

  • By Package: Browse plays by personnel grouping (Pro, Twins, Spread, Ace, etc.)
  • By Formation: Browse by formation (I-Form, Shotgun, Singleback, etc.)
  • By Play Type: Browse by type (Inside Run, Deep Pass, Play Action, etc.)
  • Recategorize: Fix incorrect categories, saved per-team

New Tools

  • ncaa_playbook_gui.py: Standalone playbook organizer GUI
  • playbook_categories.py: 2K5-style categorization system

Research Note

Play categories are initial GUESSES based on index ranges, NOT verified from game data. The S###.IFF play files use ENCS format which hasn't been fully decoded. Users should verify and recategorize as needed.

PWA

Mobile PWA: https://jtfresh90.github.io/NCAA-2K3-Roster-Editor/mobile/

Installation

Download NCAA2K3-Roster-Editor.exe (Windows, no Python needed) or run from source.

v1.11.0 - Roster Balancer (Desktop + PWA)

Choose a tag to compare

@jtfresh90 jtfresh90 released this 06 Oct 17:56

What's New

Roster Balancer (NEW)

Fix uneven roster sizes (37 to 113 players)!

Desktop:

  • New '⚖️ Balance Rosters...' button
  • Set min/max targets (e.g., 60-80)
  • Teams below min receive players from teams above max
  • Safe: only adjusts team boundaries, no data loss

PWA:

  • New '⚖️ Balance Rosters' button on team screen
  • Same functionality in JavaScript
  • Download ISO to save

How it works

Players are stored sequentially. The balancer moves the boundaries between teams, reassigning players from large rosters to small ones. No player data is modified, only which team they belong to. Fully reversible.

Addresses sportshacker's report: 'why do some teams have a lot of players while others have 37?'

PWA Fix

  • Fixed ISO load on iOS Safari (was blocked, now uses label)

📱 PWA

https://jtfresh90.github.io/NCAA-2K3-Roster-Editor/mobile/

Downloads

  • Windows: NCAA2K3-Roster-Editor.exe (standalone, no Python needed)

Notes

  • Work on a COPY of your ISO, never the original

v1.10.0 - Appearance/Equipment Editing

Choose a tag to compare

@jtfresh90 jtfresh90 released this 06 Oct 17:17

What's New

Appearance/Equipment Editing (NEW)

Edit player appearance and equipment in both Desktop and PWA:

  • Skin Tone? (byte 17: 0-4)
  • Face Mask? (byte 19: 0-2)
  • Visor? (byte 20: 0-1)
  • Sleeves? (byte 25: 0-2)
  • Equipment 1-7 (various ranges)

These 11 fields were identified via statistical analysis:

  • Small enum values (0-8) with limited unique values
  • High variance between players (appearance varies)
  • Typical for skin tone, face mask, helmet, sleeves, etc.

⚠️ UNVERIFIED: Labels are guesses. Experiment in-game and report what each actually controls!

Previous Releases

  • v1.9.0: Texture editor (13,738 textures inventoried)
  • v1.8.0: PWA feature parity (rating names, playbook editor)
  • v1.7.0: Position/number editing

Downloads

Notes

  • Work on a COPY of your ISO, never the original
  • Appearance labels marked * are unverified guesses

v1.9.0 - Texture Editor (Desktop + PWA)

Choose a tag to compare

@jtfresh90 jtfresh90 released this 06 Oct 17:08

What's New

Texture Editor (NEW - Research Preview)

  • Desktop: New 'Textures...' button opens texture browser
    • Lists inventoried textures with file, size, format
    • Select PNG to replace (encoded to GameCube I8/RGB5A3)
    • Outputs to new ISO file (_texmod.iso)
  • PWA: New Texture Editor screen
    • Lists textures, tap to select
    • Upload PNG, JavaScript encodes to I8
    • Download modified ISO

⚠️ Research Preview Warning

Texture formats are inferred, not verified in-game.

  • Only 5 textures currently inventoried (elbow01-05)
  • Format guesses based on size analysis
  • Test replacements in Dolphin before trusting
  • Inventory expansion in progress

Previous (v1.8.0)

  • PWA feature parity: rating names, playbook editor, position/number
  • Rating names from rating_names.json (user-editable, marked * if unverified)

Downloads

Notes

  • Work on a COPY of your ISO, never the original
  • Texture replacement is experimental

v1.8.0 - PWA Feature Parity + Rating Names

Choose a tag to compare

@jtfresh90 jtfresh90 released this 06 Oct 17:05

What's New

PWA Feature Parity

The mobile PWA now has all desktop roster features:

  • Rating names: Statistically-inferred names (Speed, Strength, etc.) marked with * for unverified
  • Playbook editor: View 132 plays per team, tap two to swap them
  • Position/number editing: Dropdown and jersey number input

Rating Names (NEW)

  • rating_names.json: User-editable config with inferred rating names
  • Names based on statistical analysis (CBs peak at Speed, LBs at Strength, QBs low at Kick Accuracy)
  • Marked with * in UI to indicate UNVERIFIED status
  • Edit the JSON to correct names as you verify in-game

Desktop

  • Rating labels now use inferred names from rating_names.json
  • Unverified names marked with *

Downloads

Notes

  • Rating names are statistically inferred, NOT confirmed in-game
  • Work on a COPY of your ISO, never the original
  • PWA loads full 1.3GB ISO in browser (may be slow on mobile)

v1.7.0 - Editable Player Names

Choose a tag to compare

@jtfresh90 jtfresh90 released this 06 Oct 16:13

v1.7.0 - Editable Player Names

Everything is now editable:

Player Info (NEW)

  • Position: Dropdown (QB/RB/FB/WR/TE/OT/OG/C/DT/DE/LB/CB/SS/FS/K/P)
    • Writes to ISO, updates the QB #12 display live
  • Jersey Number: Spinbox 1-99
    • Writes to ISO, updates the QB #12 display live
  • Nickname: Custom text field
    • Stored in a sidecar .nicknames.json (editor-side only)
    • Shows as "Nickname" QB #12 in the editor

Ratings (v1.6.0)

  • All 16 ratings editable, verified via statistical analysis

Note

NCAA games have no licensed player names — the game itself displays
position + number (QB #12). Nicknames are an editor convenience for
tracking your roster moves, like the other tools do.

Windows EXE (no Python required) attached automatically.

v1.6.0 - Ratings Editor Restored

Choose a tag to compare

@jtfresh90 jtfresh90 released this 06 Oct 16:00

v1.6.0 - Ratings Editor Restored

The v1.5.0 'misidentified' claim was wrong. Statistical analysis across all 7091 players proves bytes 43-58 ARE the 16 ratings:

Position Evidence
LB R2=92, R3=82 avg (strength), 30s in throw ratings
QB R8/R10/R13/R15=81 avg (throw ratings)
CB Highest R1 avg (speed)

Position-specific distributions confirm these are real, editable ratings.

Changes:

  • Ratings editor fully restored and editable
  • Click any player to see/edit their 16 ratings
  • Changes write through to the ISO
  • QB #12 labels, team browser, playbook editor all working

Windows EXE (no Python required) attached automatically.

v1.5.3 - Fix Player Click Crash

Choose a tag to compare

@jtfresh90 jtfresh90 released this 06 Oct 15:50

v1.5.3 - Fix Player Click Crash

Fixes the crash when clicking on a player:

  • v1.5.2 started OK but closed when selecting a player
  • Root cause: _on_player_selected accessed p.ratings (removed in v1.5.0)

Fix:

  • Player selection no longer tries to load ratings
  • Placeholder spinboxes stay disabled at 0
  • Player label uses the QB #12 display format

Same as v1.5.2:

  • Windows EXE (no Python required) attached automatically

v1.5.2 - Fix Startup Crash

Choose a tag to compare

@jtfresh90 jtfresh90 released this 06 Oct 15:30

v1.5.2 - Fix Startup Crash

Fixes the ImportError that prevented the v1.5.1 EXE from starting:

ImportError: cannot import name 'RATING_COUNT' from 'ncaa_rost'

Root cause: v1.5.0 disabled the ratings editor (bytes 43-58 are not ratings) but left broken references to the removed RATING_COUNT constant.

Fix:

  • GUI defines RATING_COUNT locally for the disabled placeholder UI
  • Deprecated rating methods now raise NotImplementedError with clear messages

Same as v1.5.1:

  • QB #12 player labels
  • Windows EXE (no Python required) attached automatically