diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md new file mode 100644 index 0000000..d840b07 --- /dev/null +++ b/DOCUMENTATION.md @@ -0,0 +1,7 @@ +# Documentation + +## Header + +

+ Editor Header +

diff --git a/README.md b/README.md index b429628..43f34c2 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,16 @@ --- +## 📚 Documentation +**[Explore the Full Documentation](docs/index.md)** + +- **[Getting Started](docs/user-guide/getting-started.md)** +- **[User Guide & Features](docs/user-guide/features.md)** +- **[Analyst Mode](docs/user-guide/analyst-mode.md)** +- **[Video Tutorials](docs/tutorials/use-cases.md)** + +--- + **Football Manager Forge** is a modern, cross-platform tool built to simplify the process of editing `.edt` files for the Football Manager series. These files are used to configure **regens** (newly generated players) before starting a new game. ### ❓ What are Regens? diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..09f2e5d --- /dev/null +++ b/docs/index.md @@ -0,0 +1,33 @@ +# 📚 FM Forge Documentation + +Welcome to the official documentation for **Football Manager Forge**. + +FM Forge is a powerful, modern editor for Football Manager `.edt` files, designed to make managing custom databases and regens easier, faster, and less error-prone. + +## 📖 Contents + +### [🚀 Getting Started](user-guide/getting-started.md) +- Installation +- Loading your first file +- Understanding the interface + +### [🛠️ User Guide](user-guide/features.md) +- **[Core Features](user-guide/features.md)**: Filtering, Sorting, and Searching. +- **[Editing Players](user-guide/features.md#editing-players)**: Quick Edit, Full Edit, and Mass Edit. +- **[Analyst Mode](user-guide/analyst-mode.md)**: Visualizing your database. + +### [🎥 Tutorials & Use Cases](tutorials/use-cases.md) +- How to fix player attributes quickly. +- Updating an entire team's roster. +- Balancing a retro database. +- *Video guides included.* + +### [🆚 Why FM Forge?](reference/edt-comparison.md) +- Comparison with traditional text editing. +- Why `.edt` files are still relevant. +- Safety and validation features. + +--- + +## 🆘 Need Help? +If you encounter any bugs or have feature requests, please open an issue on our GitHub repository. diff --git a/docs/reference/edt-comparison.md b/docs/reference/edt-comparison.md new file mode 100644 index 0000000..0839a2c --- /dev/null +++ b/docs/reference/edt-comparison.md @@ -0,0 +1,32 @@ +# 🆚 FM Forge vs. Text Editing + +Why should you use FM Forge instead of editing `.edt` files in Notepad? + +| Feature | 📝 Text Editor (Notepad) | ⚒️ FM Forge | +| :--- | :--- | :--- | +| **Ease of Use** | Difficult. Requires memorizing command syntax. | **Easy**. Graphical interface with dropdowns and sliders. | +| **Validation** | None. Typos break the file. | **Automatic**. Prevents invalid values (e.g., CA > 200). | +| **IDs & Codes** | Must look up Club/Nation IDs manually. | **Built-in**. Search clubs and nations by name. | +| **Visualization** | None. Just text. | **Rich**. Charts, graphs, and stats. | +| **Bulk Editing** | Find & Replace (risky). | **Mass Edit**. Smart relative or absolute changes. | +| **Safety** | No undo. Easy to overwrite data. | **Safe**. Changes are staged before saving. | +| **Search** | Basic text search. | **Advanced**. Filter by attributes, position, age, etc. | + +## The "Old Way" (EDT Syntax) + +Traditionally, you would write lines like this: + +```text +"DETAILED_FUTURE_REGEN" "John" "" "Doe" "20/05/2000" "5" "10" "15" ... +``` + +One missing quote or comma would cause the game to ignore the file or crash. You also had to know that `"5"` corresponds to "English" nationality and `"10"` is "Arsenal". + +## The FM Forge Way + +With FM Forge, you simply: +1. Select "Arsenal" from a dropdown. +2. Select "England" from a dropdown. +3. Use sliders or inputs for attributes. + +The application handles the complex syntax generation for you when you save. diff --git a/docs/tutorials/use-cases.md b/docs/tutorials/use-cases.md new file mode 100644 index 0000000..11a62bd --- /dev/null +++ b/docs/tutorials/use-cases.md @@ -0,0 +1,61 @@ +# 🎥 Tutorials & Use Cases + +Here are some common scenarios where FM Forge shines, with video guides to help you master the workflow. + +## 1. Fixing Player Attributes Quickly +*Scenario: You noticed a winger has very low Pace or a Goalkeeper is too short.* + +**Workflow:** +1. Search for the player by name. +2. Double-click the attribute cell. +3. Type the new value. +4. Press Enter. + +![Video Placeholder: Quick Edit Workflow](../static/docs/video_quick_edit_placeholder.png) +*(Video coming soon)* + +--- + +## 2. Buffing an Entire Team +*Scenario: You want to boost the Potential Ability of all youth players in a specific club.* + +**Workflow:** +1. Open Filters. +2. Select the Club. +3. Set Age filter (e.g., max 18). +4. Select All players (checkbox in header). +5. Click **Mass Edit**. +6. In the PA field, enter `+10` (to add 10 to everyone) or `160` (to set everyone to 160). +7. Click Apply. + +![Video Placeholder: Mass Edit Team](../static/docs/video_mass_edit_placeholder.png) +*(Video coming soon)* + +--- + +## 3. Creating a "Class of '92" Scenario +*Scenario: You want to add a group of high-potential players appearing in the same year.* + +**Workflow:** +1. Click **Add Player**. +2. Fill in details for the first player. +3. Set the **Birth Year** to your target year. +4. Repeat for other players. +5. Use **Analyst Mode > Temporal** to verify the spike in talent for that year. + +![Video Placeholder: Adding Players](../static/docs/video_add_players_placeholder.png) +*(Video coming soon)* + +--- + +## 4. Balancing a Retro Database +*Scenario: You are converting a database from 2005 to FM24.* + +**Workflow:** +1. Open **Settings**. +2. Set FM Edition to `24` and Retro Year to `2005`. +3. Enable **Show Real Birth Dates**. +4. Now, when you edit Birth Years, you can input "1988" (real year) instead of calculating the in-game year manually. + +![Video Placeholder: Retro Settings](../static/docs/video_retro_settings_placeholder.png) +*(Video coming soon)* diff --git a/docs/user-guide/analyst-mode.md b/docs/user-guide/analyst-mode.md new file mode 100644 index 0000000..de0c1e2 --- /dev/null +++ b/docs/user-guide/analyst-mode.md @@ -0,0 +1,51 @@ +# 📊 Analyst Mode + +Switch to the **Analyst View** using the toggle in the top-right corner to visualize your database. This mode is essential for balancing your custom database and ensuring realistic distributions of talent. + +![Analyst View Placeholder](../static/docs/analyst_view.png) + +## Sections + +### 1. Overview +A high-level summary of the current dataset (or filtered subset). +- Total player count. +- Most common nationality and club. +- Average CA/PA. +- Dominant foot distribution. + +### 2. Geography +Interactive map and list showing where your players come from. +- **Map**: Visual density of player nationalities. +- **List**: Sortable list of countries by player count. + +### 3. Clubs +Analyze club representation. +- See which clubs have the most regens. +- Identify clubs that might be overpowered or underrepresented. + +### 4. Positional Analysis +Breakdown of players by their natural position. +- Ensure you have enough Goalkeepers, Defenders, Midfielders, and Attackers. +- Visual bar charts for easy comparison. + +### 5. Physical Stats +Distribution of Height and Weight. +- **Scatter Plot**: Visualize the correlation between height and weight. +- **Extremes**: See the tallest, shortest, heaviest, and lightest players. + +### 6. Abilities (CA/PA) +Deep dive into player quality. +- **Distribution Curves**: See the spread of Current and Potential Ability. +- **Quartiles**: Box-plot style analysis (Top 25%, Median, Bottom 25%). +- **Top Prospects**: List of the highest PA players. + +### 7. Temporal (Birth Years) +Analyze the age structure of your database. +- **Birth Year Distribution**: Ensure you don't have "gap years" where no regens appear. +- **Month Distribution**: Check for birth month bias. + +--- + +## 💡 Tips +- **Filters apply to Analyst Mode!** You can filter by "Brazil" and switch to Analyst Mode to see stats specifically for Brazilian players. +- Use this mode to check if your "Wonderkid" distribution is realistic (e.g., not too many 190+ PA players). diff --git a/docs/user-guide/features.md b/docs/user-guide/features.md new file mode 100644 index 0000000..c351534 --- /dev/null +++ b/docs/user-guide/features.md @@ -0,0 +1,85 @@ +# 🛠️ Core Features + +## 🔍 Browsing & Filtering + +FM Forge provides powerful tools to find exactly the players you are looking for. + +### Filters Panel +Click the **Filters** bar to expand the advanced search options. + +![Filters Panel Placeholder](../static/docs/filters_panel.png) + +- **Name Search**: Type to search by First, Last, or Common name. Supports partial matches. +- **Country**: Filter by nationality. +- **Club**: Filter by current club or favourite club. +- **Position**: Select specific positions (e.g., "Goalkeeper", "Striker"). +- **Attributes**: Set ranges for Current Ability (CA) and Potential Ability (PA). +- **Physical**: Filter by Preferred Foot. +- **Personal**: Filter by Birth Year or Favourite Number. + +### Sorting +Click any column header to sort the table. Click again to reverse the order. +- **Sortable Columns**: Name, Nationality, Club, CA, PA, Age, Height, Weight. + +--- + +## ✏️ Editing Players + +There are three ways to edit player data in FM Forge. + +### 1. Quick Edit (Inline) +Perfect for making small adjustments without leaving the list view. +- **Double-click** on any cell in the table (e.g., a player's CA or Club). +- The row will switch to **Edit Mode**. +- Modify the values directly. +- Press **Enter** or click the **Save** icon to confirm. +- Press **Escape** to cancel. + +![Quick Edit Placeholder](../static/docs/quick_edit.gif) + +### 2. Full Edit +For comprehensive changes to a player's profile. +- Click the **Edit (Pencil)** icon on the right side of a player row. +- All fields become editable. +- You can change: + - **Personal**: Names, Birth Date, City. + - **Club**: Current Club, Favourite Club. + - **Attributes**: CA, PA, Foot, Position. + - **Appearance**: Ethnicity, Skin Tone, Hair Color, Height, Weight. + +### 3. Mass Edit +Apply changes to multiple players at once. +1. **Select Players**: Use the checkboxes on the left to select players. + * *Tip: Use Shift+Click to select a range.* +2. Click the **"Mass Edit"** button in the floating action bar. +3. **Configure Changes**: + * **Set Value**: Enter a number (e.g., `150`) to set all selected players to that value. + * **Relative Change**: Enter `+10` or `-5` to increase/decrease values relative to each player's current stats. +4. Click **Apply**. + +![Mass Edit Placeholder](../static/docs/mass_edit.png) + +--- + +## ➕ Adding & Deleting + +### Adding a Player +- Click the **"Add Player"** button in the header. +- A new row will appear at the top of the list. +- Fill in the details and save. + +### Deleting a Player +- Click the **Delete (Trash)** icon on a player row. +- The row will be marked for deletion (strikethrough style). +- **Note**: The player is not removed from the file until you **Save**. You can undo the deletion before saving. + +--- + +## 🔄 Change Tracking + +FM Forge keeps track of your changes visually: +- **Yellow**: Modified player. +- **Green**: Newly added player. +- **Red**: Player marked for deletion. + +The header shows a counter of how many unsaved changes you have. diff --git a/docs/user-guide/getting-started.md b/docs/user-guide/getting-started.md new file mode 100644 index 0000000..89d3992 --- /dev/null +++ b/docs/user-guide/getting-started.md @@ -0,0 +1,38 @@ +# 🚀 Getting Started + +## Installation + +FM Forge is a cross-platform application available for macOS, Windows, and Linux. + +1. Download the latest release for your operating system from the [Releases page](../../releases). +2. **macOS**: Drag the `.app` file to your Applications folder. +3. **Windows**: Run the installer `.exe`. +4. **Linux**: Run the `.AppImage` or install the `.deb` package. + +## First Launch + +When you first open FM Forge, you will be greeted by the main dashboard. The table will be empty until you load a file. + +![Dashboard Placeholder](../static/docs/dashboard_empty.png) +*(Screenshot of empty dashboard)* + +## Loading Data + +1. Click the **"Load File"** button in the top-left corner. +2. Navigate to your Football Manager data folder (usually where you keep your `.edt` files). +3. Select one or more `.edt` files. + * *Tip: You can select multiple files to merge them into a single view.* +4. The application will parse the files and display the player records in the table. + +### Mod Settings (Optional) +If you are working with a **Retro Database**, you might want to configure the date offsets: +1. Click the **Settings** (gear icon) in the header. +2. Enter the **FM Edition** (e.g., `24` for FM24). +3. Enter the **Retro Year** (e.g., `2005` for the database year). +4. Toggle **"Show Real Birth Dates"** to see birth years adjusted to the retro era. + +## Saving Your Work + +1. Click the **"Save File"** button. +2. Choose a location and filename. +3. **Important**: You can choose to save **All Players** or only **Filtered Players**. This is useful if you want to extract a specific subset of players into a new file. diff --git a/static/docs/header.png b/static/docs/header.png new file mode 100644 index 0000000..e55152f Binary files /dev/null and b/static/docs/header.png differ