| 53 |
|
- `game_name`: Curated/local display name. |
| 54 |
|
- `game_name_scraped`: Scraped/alternate name from external sources. |
| 55 |
|
- `container_file_name`: Stored ROM container filename. |
| 56 |
+ |
- `favorite_game`: User-controlled favorite flag (`1` favorite, `0`/blank not favorite). |
| 57 |
+ |
- `release_date`: User override release date (`YYYY-MM-DD` storage format). |
| 58 |
+ |
- `release_date_scraped`: Scraped release date (`YYYY-MM-DD` expected). |
| 59 |
+ |
- `game_genre`: User override genre value. |
| 60 |
+ |
- `game_genre_scraped`: Scraped genre value. |
| 61 |
+ |
- `cooperative`: User override cooperative value (`Yes`/`No`). |
| 62 |
+ |
- `cooperative_scraped`: Scraped cooperative value (`Yes`/`No`). |
| 63 |
+ |
- `max_players`: User override max players value. |
| 64 |
+ |
- `max_players_scraped`: Scraped max players value. |
| 65 |
|
- `description`: Curated/local description text. |
| 66 |
|
- `description_scraped`: Imported/scraped description text. |
| 67 |
|
- `system_console`: Foreign key-like system pointer (`main_app_system.id`). |
| 74 |
|
- `container_md5_hash`: Primary hash used for de-duplication and metadata matching. |
| 75 |
|
- `version`: Version/revision marker for the entry. |
| 76 |
|
|
| 77 |
+ |
Metadata precedence in UI: |
| 78 |
+ |
- For dual fields, app uses user field first, then `_scraped` fallback: |
| 79 |
+ |
`release_date`, `game_genre`, `cooperative`, `max_players`, `description`. |
| 80 |
+ |
|
| 81 |
|
### `main_app_file_hash` |
| 82 |
|
- `id`: Stable key for a hash record. |
| 83 |
|
- `file_name`: Filename associated with the hashed file. |
| 141 |
|
| game_name | TEXT | Yes | | | |
| 142 |
|
| game_name_scraped | TEXT | Yes | | | |
| 143 |
|
| container_file_name | TEXT | Yes | | | |
| 144 |
+ |
| favorite_game | INTEGER | Yes | | User favorite flag | |
| 145 |
+ |
| release_date | TEXT | Yes | | User value, `YYYY-MM-DD` | |
| 146 |
+ |
| release_date_scraped | TEXT | Yes | | Scraped value, `YYYY-MM-DD` | |
| 147 |
+ |
| game_genre | TEXT | Yes | | User value | |
| 148 |
+ |
| game_genre_scraped | TEXT | Yes | | Scraped value | |
| 149 |
+ |
| cooperative | TEXT | Yes | | User value, `Yes`/`No` | |
| 150 |
+ |
| cooperative_scraped | TEXT | Yes | | Scraped value, `Yes`/`No` | |
| 151 |
+ |
| max_players | TEXT | Yes | | User value | |
| 152 |
+ |
| max_players_scraped | TEXT | Yes | | Scraped value | |
| 153 |
|
| description | TEXT | Yes | | | |
| 154 |
|
| description_scraped | TEXT | Yes | | | |
| 155 |
|
| system_console | INTEGER | Yes | | App system pointer | |