Skip to content

Commit caf6c83

Browse files
committed
Add GUI version with enhanced features
- New createCustomIniGUI.py with full graphical interface - Mod preview tree showing mods organized by INI section - Real-time path validation with visual indicators - Dark mode toggle with theme persistence - Settings save/load functionality - Drag & drop support (optional tkinterdnd2) - Open output folder button for quick access - Tabbed interface for mod preview and output log - Updated README.md with GUI documentation - Updated changelog.md with GUI release notes
1 parent dcbcc1c commit caf6c83

File tree

4 files changed

+678
-9
lines changed

4 files changed

+678
-9
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,5 @@ build
66
*.7z
77
*.omod
88
*.fomod
9-
*.exe
9+
*.exe
10+
createCustomIni_settings.json

README.md

Lines changed: 78 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,43 @@ This tool scans your Fallout 76 data directory and creates a properly formatted
1212

1313
## Quick Start
1414

15+
### GUI Version (Recommended for Beginners)
16+
1. **Backup** your existing `Fallout76Custom.ini` (if you have one)
17+
2. **Copy** `createCustomIniGUI.py` to your `Fallout76\Data` directory
18+
3. **Run**: `py createCustomIniGUI.py`
19+
4. **Use the interface** to browse folders, scan mods, and create your INI
20+
5. **Verify** the generated file using the "Open Output Folder" button
21+
22+
### CLI Version (For Advanced Users)
1523
1. **Backup** your existing `Fallout76Custom.ini` (if you have one)
1624
2. **Copy** `createCustomIni.py` or `createCustomIni.exe` to your `Fallout76\Data` directory
1725
3. **Run** the script:
1826
- Python: `py createCustomIni.py`
1927
- Executable: `createCustomIni.exe`
2028
4. **Verify** the generated `Fallout76Custom.ini` in your Documents folder
2129

22-
The script automatically detects your Fallout 76 directory, including OneDrive locations.
30+
Both versions automatically detect your Fallout 76 directory, including OneDrive locations.
31+
32+
## Versions Available
33+
34+
### GUI Version (`createCustomIniGUI.py`) - NEW!
35+
Perfect for users who prefer a graphical interface:
36+
- **Visual Interface**: Browse folders with buttons, no typing needed
37+
- **Mod Preview**: See exactly which mods will be included before creating
38+
- **Real-time Validation**: Visual indicators show if paths are valid
39+
- **Dark Mode**: Toggle between light and dark themes
40+
- **Settings Memory**: Saves your preferences for next time
41+
- **Drag & Drop**: Drag folders directly onto input fields (optional)
42+
- **One-Click Access**: Open output folder button after creation
43+
44+
See [GUI_README.md](GUI_README.md) for detailed GUI documentation.
45+
46+
### CLI Version (`createCustomIni.py`)
47+
Traditional command-line interface for power users:
48+
- **Fast Execution**: Quick command-line operation
49+
- **Scriptable**: Easy to integrate into batch files or automation
50+
- **Lightweight**: No GUI dependencies
51+
- **Full Control**: All options available via command-line flags
2352

2453
## Key Features
2554

@@ -70,27 +99,41 @@ Automatically categorizes mods into the correct INI sections:
7099

71100
## Usage Examples
72101

73-
### Basic Usage
102+
### GUI Version
103+
```bash
104+
# Launch the GUI
105+
py createCustomIniGUI.py
106+
107+
# Then use the interface to:
108+
# 1. Browse to your data folder
109+
# 2. Click "Scan Mods" to preview
110+
# 3. Click "Create Custom INI"
111+
# 4. Click "Open Output Folder" to view result
112+
```
113+
114+
### CLI Version
115+
116+
#### Basic Usage
74117
```bash
75118
py createCustomIni.py
76119
```
77120

78-
### Custom Data Folder
121+
#### Custom Data Folder
79122
```bash
80123
py createCustomIni.py --datafolder "C:\Games\Fallout76\Data"
81124
```
82125

83-
### Custom INI Location
126+
#### Custom INI Location
84127
```bash
85128
py createCustomIni.py --inifolder "D:\MyConfigs"
86129
```
87130

88-
### Run as Administrator
131+
#### Run as Administrator
89132
```bash
90133
py createCustomIni.py --runasadmin
91134
```
92135

93-
### Import Existing Settings
136+
#### Import Existing Settings
94137
```bash
95138
py createCustomIni.py --copyinicontents "backup.ini"
96139
```
@@ -122,10 +165,29 @@ Check that you have write permissions to your Documents folder and that the path
122165

123166
## Technical Details
124167

168+
### CLI Version
125169
- **Language**: Python 3
126170
- **Encoding**: UTF-8 (supports international characters)
127171
- **Compiled Version**: Built with PyInstaller for standalone execution
128-
- **Platform**: Windows
172+
- **Platform**: Windows (primary), cross-platform compatible
173+
174+
### GUI Version
175+
- **Language**: Python 3 with tkinter
176+
- **Dependencies**:
177+
- tkinter (included with Python)
178+
- tkinterdnd2 (optional, for drag & drop)
179+
- **Settings Storage**: JSON file (`createCustomIni_settings.json`)
180+
- **Platform**: Cross-platform (Windows, macOS, Linux)
181+
182+
## Installation
183+
184+
### Basic (Both Versions)
185+
No installation needed - Python 3 is the only requirement.
186+
187+
### GUI with Drag & Drop (Optional)
188+
```bash
189+
pip install tkinterdnd2
190+
```
129191

130192
## Notes
131193

@@ -134,6 +196,15 @@ Check that you have write permissions to your Documents folder and that the path
134196
- The tool creates necessary directories if they don't exist
135197
- Console output shows progress and confirms successful creation
136198

199+
## Files in This Repository
200+
201+
- `createCustomIni.py` - Original CLI version
202+
- `createCustomIniGUI.py` - New GUI version with enhanced features
203+
- `GUI_README.md` - Detailed documentation for GUI version
204+
- `requirements-gui.txt` - Optional dependencies for GUI
205+
- `README.md` - This file
206+
- `changelog.md` - Version history and changes
207+
137208
## Contributing
138209

139210
This is a community tool maintained for Fallout 76 modders. Feel free to report issues or suggest improvements on the Nexus Mods page.

changelog.md

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,36 @@ All notable changes to Fallout76CreateCustomIni are documented here.
44

55
---
66

7-
## [Latest] - 2025-10-23 - Documentation Overhaul
7+
## [Latest] - 2025-10-23 - GUI Version Release
8+
9+
### Added
10+
- **Complete GUI Application** (`createCustomIniGUI.py`)
11+
- User-friendly graphical interface for non-CLI users
12+
- Browse buttons for easy folder/file selection
13+
- Real-time path validation with visual indicators (✓/✗)
14+
- Mod scanning and preview functionality
15+
- Threading to prevent GUI freezing during operations
16+
17+
- **Enhanced GUI Features**
18+
- **Mod Preview Tree**: Hierarchical view showing which mods go in which INI section
19+
- **Real-time Mod Counter**: Live count of detected .ba2 mods
20+
- **Dark Mode Toggle**: Switch between light and dark themes
21+
- **Settings Persistence**: Save/load folder paths and preferences to JSON file
22+
- **Drag & Drop Support**: Drag folders directly onto input fields (requires tkinterdnd2)
23+
- **Open Output Folder**: Quick access button to created INI file location
24+
- **Tabbed Interface**: Separate tabs for "Mod Preview" and "Output Log"
25+
- **Auto-detection**: Same smart path detection as CLI version
26+
27+
### Technical Details
28+
- Built with tkinter (included with Python)
29+
- Optional tkinterdnd2 for drag and drop (graceful fallback if not installed)
30+
- Settings stored in `createCustomIni_settings.json`
31+
- Threaded operations for responsive UI
32+
- Cross-platform compatible (Windows, macOS, Linux)
33+
34+
---
35+
36+
## [Previous] - 2025-10-23 - Documentation Overhaul
837

938
### Changed
1039
- **Complete README.md Rewrite**

0 commit comments

Comments
 (0)