|
Pokered Save Editor 2
Pokemon Red & Blue save file editor - Qt 6 C++/QML
|
← All months (index) · 216 commit(s) this month.
e87bdf4 - Twilight
Corrects the tile animation direction; with that, the tileset engine is considered complete.
0fe36d7 - Twilight
Nails the animation speed but finds the wave animation playing backwards, to be flipped next.
4927f75 - Twilight
Resolves many tileset engine/provider issues, including blurriness – a big improvement overall.
fd7f8df - Twilight
Fixes most of the tileset issues, leaving a tile-numbering problem for next.
5d7d2d7 - Twilight
Trims the test screen down ahead of trying out the tileset engine.
22baf52 - Twilight
Introduces the TilesetEngine and TilesetProvider (~460 lines) – the C++ side that builds and serves animated tileset images to QML. Brand new and untested; this becomes the engine behind the TilesetDisplay previews.
6c5cfc2 - Twilight
Renames the outside-animation tiles to flower tiles and prunes some unused frames.
73322ba - Twilight
A tidy-up relocating the boot code (boot, bootDatabase, bootQmlLinkage) into a dedicated boot/ folder.
19db2b1 - Twilight
Cleans up the main window code and moves the random helper into a common/ folder; the many one-line edits across the codebase just follow that move.
d452098 - Twilight
A broad asset reorganization, sorting icons into app/fontawesome/mon-icons subfolders.
bfdf0eb - Twilight
Adds a test Trainer Card page in QML as a launching pad for the work ahead.
c7a9d05 - Twilight
Makes the font search accessible from QML.
ed36242 - Twilight
A large asset overhaul: removes the old contrast/font/pic-tileset/splash images and replaces them with the cleaner tilesets/ set (per-location PNGs plus the font and outside-animation frames), updating the resource file accordingly.
2f2375e - Twilight
A modest pass at UI animations across the app, About, File Tools, New File and the nav-bar buttons – didn't get far but helped.
62a3cf0 - Twilight
A one-line tweak dropping the longer title, leaving the footer button just "Re-Roll".
3c581d1 - Twilight
Adds the About screen to credit everyone and every resource used, backed by a new credits.json, a Credits database and CreditsModel.
543a0bb - Twilight
A routine merge of the master branch from the remote.
3045d0c - Twilight
Adds the starters wallpaper image (and its attribution) for the About screen.
af3bf28 - Twilight
A README image update showing the populated home screen.
019bde4 - Twilight
Fills in the home screen's initial navigation icons.
21aeaa1 - Twilight
Introduces the tooltip system (MainToolTip) and info buttons across the app, File Tools and New File screens.
aca223f - Twilight
A small README update adding a before/after image.
49a0dcd - Twilight
A README image update referencing the new File Tools screen.
fe8c460 - Twilight
Adds the File Tools modal (save/revert/scrub/save-as), backed by tweaks to file management.
ff9ffc1 - Twilight
Connects the home button and the randomize-all footer button to their actions.
24764c0 - Twilight
Cleans up the recent-files feature with a proper RecentFilesModel, making it work much better.
8f1550b - Twilight
Finishes the recent-files menu (RecentFilesTile), ahead of refactoring it into a proper model and view.
dc9d659 - Twilight
Connects several New File screen buttons to file-management actions.
207edcf - Twilight
A one-line README preview update.
6626d25 - Twilight
A big UI step: finishes the look of the first screen, adds the ability to switch between screens and modals, brings in new icons and Creative Commons wallpapers, and adds the tile button, modal close and credit-work fragments.
7bb8143 - Twilight
Reorganizes the footer into a randomize footer and renames Footer to Footer1.
7fb4686 - Twilight
A routine merge of the master branch from the remote.
f832a27 - Twilight
Turns the entire randomization footer area into one large button, with tooltip support.
3553cb3 - Twilight
A short README progress note.
65b665b - Twilight
Various changes tidying the navigation bar and footer button sections.
8ed57d1 - Twilight
Adds a set of custom "other" icons (edit-file, new-file, question).
e7ff140 - Twilight
Updates the QML to the newer Qt version's conventions.
74a7a27 - Twilight
Adds the navigation-bar buttons.
466fa63 - Twilight
Renames main.qml to App.qml and sorts the early UI files into common/sections folders.
4ff7861 - Twilight
The first UI scaffolding: an initial Footer, NavBar and Style.js, wired into the boot path. The starting point for the whole front end.
8d3a09c - Twilight
Revises how shininess is determined (based on new information) and adds the retroactive nature calculation, in the Pokemon box.
8e74cc6 - Twilight
A huge asset drop: the full set of 151 Pokemon icons (each with a shiny variant) plus the Pokemon-GO-style navigation icons, alongside the inclusion of the shiny- determination algorithm. These are the mon icons every species grid and preview uses.
3b321cb - Twilight
Adds the first batch of FontAwesome icons (dice, file, save, undo, etc.) used throughout the UI.
528773c - Twilight
A routine merge of the master branch from the remote.
d8dbbc1 - Twilight
Scaffolds the FontAwesome icons folder and license ahead of importing icons.
64c98a8 - Twilight
A one-line README note marking 300 commits.
5a26ff4 - Twilight
A README "victory image" celebrating the reboot's progress after two major milestones and nearing 300 commits.
64b81af - Twilight
A milestone: the first successful QML test, plus a quick fix for a bug the refactor had introduced in the pokedex object.
5bd9372 - Twilight
Removes some now-unneeded save-file methods as part of the QML-friendliness pass.
522e4dc - Twilight
Converts the entire world subtree (general, hidden, missables, scripts, towns, trades, etc.) to expose its data the way QML needs.
73484b4 - Twilight
The same conversion for the player subtree (basics, items, pokedex, pokemon).
25b9953 - Twilight
Small fixes to get the in-progress refactor compiling for a test.
e858cf9 - Twilight
A broad pass converting the area and fragment objects (sprite data, Pokemon box/ party/storage, etc.) to QML-exposed properties.
93c9fa7 - Twilight
Continued QML conversion of the item-storage and Pokemon-box fragments.
17b2da1 - Twilight
More QML-compatibility fixes across the area objects, Hall of Fame fragments and storage.
e998d0d - Twilight
Completes the expanded/area subtree's conversion to work cleanly with QML from C++.
80c22cf - Twilight
Continues converting the area data (audio, general, loaded sprites, map, NPC) to be QML-compliant.
85dca1b - Twilight
A round of changes prompted by newly-discovered QML limitations, touching the Hall of Fame, storage, file management and save file objects.
65c732a - Twilight
Works around a QML quirk: Qt Quick only accepts strictly int-typed numbers and chokes on 8/16/32-bit integer types, so the Hall of Fame fields are adjusted accordingly. The commit message is an exasperated note about the limitation.
5dd65b1 - Twilight
A broad pass touching the area, Hall of Fame, storage and save-file objects, still fighting to get a single number to display in Qt Quick.
c841edf - Twilight
A tiny revert in main.qml; the message is a frustrated note about needing to walk away from the "display one number" problem and come back later.
d7e34f7 - Twilight
Another small main.qml change accompanied by a strongly-worded message about frustration with Qt.
9fb2775 - Twilight
Changes the data's enum classes into plain enums inside structs so QObject can expose them, and registers them with Qt's meta system as creatable – a key step for QML to read the model's enumerated fields.
19c2dd5 - Twilight
Finishes the QML linkage boot file that registers the C++ types with the QML engine.
99c4a15 - Twilight
Continued work wiring the C++ types into Qt.
75dac23 - Twilight
Adds the bootQmlLinkage file where QML type registration will live.
fed070b - Twilight
Adds the new bootDatabase file holding the database initialization.
d180518 - Twilight
Moves the database setup out of boot.cpp into its own file, trimming boot down.
edf9e5e - Twilight
Various changes preparing to move from back-end work to the front end (removes an old Navigation QML stub).
c5de7bd - Twilight
Reworks the main window in preparation for front-end work, dropping the old .ui form.
5e26514 - Twilight
Backs out part of a boot change after hitting another Qt quirk, keeping a few bits.
055974a - Twilight
Reverts the boot-side of adding everything to the Qt meta system, undone because of yet another Qt gotcha.
2a22158 - Twilight
Reverts the change that had registered every database header with the Qt meta system (the matching half of the revert above).
7afb452 - Twilight
Finishes wiring the boot code into the Qt meta system – the commit message cheerfully notes it's about to be undone because of another Qt gotcha (which the reverts above then do).
57a9c2a - Twilight
Registers every database header with Qt's meta system without making them QObjects. Reverted shortly after (see 2a22158) due to a Qt gotcha.
6e5c9b7 - Twilight
Completes the world subtree's conversion to the Qt meta system (general, hidden, missables, other, scripts, towns, trades).
be8fc2f - Twilight
Converts more of the world subtree (world, completed, events, general).
39c032f - Twilight
Brings the player subtree (basics, items, pokedex, pokemon) into the Qt meta system.
eca6829 - Twilight
Converts the fragment objects (Pokemon storage box/set, sign, sprite, warp data) to the Qt meta system.
3acc2f0 - Twilight
Converts the map-connection data and the Pokemon box/party fragments.
1fb01e1 - Twilight
Brings the Hall of Fame and item fragments under QObject.
31aa833 - Twilight
Completes the area subtree's conversion to QObject (pokemon, puzzle, sign, sprites, tileset, warps).
7eac8c8 - Twilight
Converts more area objects (audio, general, loaded sprites, map, NPC, player) to the Qt meta system.
6f60446 - Twilight
Converts the area and area-audio/general objects.
824c4bd - Twilight
Minor tweaks to the expanded root and storage objects.
edaf9a4 - Twilight
Adds the change-signal plumbing (daycare, Hall of Fame, rival, storage) that QML bindings rely on to update.
d11dfd5 - Twilight
The opening of the long QObject integration: starts figuring out how to expose the expanded data through QObject, the Qt meta system, Qt Quick and Qt's model/view – the architecture that underpins the whole QML UI.
33fe9f5 - Twilight
A one-line fix in the sign data.
9447aa9 - Twilight
Improves how sign data is randomized.
ee8a8a5 - Twilight
Drops the mostly-unused ExpandedInterface abstraction, which hadn't worked out, cleaning it out of every expanded object.
e1543c3 - Twilight
Completes the switch away from calling QRandomGenerator directly, routing all randomization across the codebase through the new Random helper's cleaner interface.
58c7cba - Twilight
Partway through replacing direct QRandomGenerator use with the Random helper across the databases and area objects.
2ce044e - Twilight
Cleans out leftover old code that heap-allocated lists and entries (keeping one deliberate exception), across the Hall of Fame, Pokemon box, pokedex and pokemon objects and the save-file iterator.
70f9207 - Twilight
Introduces the random helper class (the wrapper around the RNG used everywhere since).
30cea6d - Twilight
Consolidates the various item structs into one reusable Item class, simplifying the item-storage box and player-items objects.
cfd56ca - Twilight
Removes some long-forgotten old code (in the Pokemon database and box) that had started causing problems – believed to be the last of it.
559f549 - Twilight
A consistency pass renaming the load variables uniformly across every database.
bd1bc54 - Twilight
A large reorganization of many databases (moves, music, pokemon, scripts, sprite sets, tilesets, trades, trainers, types).
735cdfb - Twilight
Restores a few more lines accidentally dropped in the maps database during the refactor.
0abd487 - Twilight
Puts back several important lines that the refactor had accidentally deleted across a handful of databases.
8681d93 - Twilight
Reorganizes the missables database code.
7993099 - Twilight
Adds a startOver operation to the font and map search helpers (the "show everything again" reset).
511e552 - Twilight
A big needed refactor reorganizing the database code (events, fly, fonts, hidden items/coins and more) into a cleaner shape.
01f82e1 - Twilight
Adds more to the project's goals document.
811c4d3 - Twilight
Adds cross-references ("deep links") between database entries across many databases, so e.g. a map entry can point straight at its related records.
3fe78d5 - Twilight
Finishes the item/Pokemon storage objects (boxes and sets) and the storage root – completing the entire expanded-data model that parses a save into editable objects.
dfab644 - Twilight
Adds the rival object to the expanded data.
a48adfa - Twilight
Adds the Hall of Fame object to the expanded data.
44d3598 - Twilight
Adds the daycare object to the expanded data.
e52a655 - Twilight
Adds the world-trades object, finishing the entire world subtree of the expanded data.
4ee96bb - Twilight
Adds the world-towns object.
8e8e5bc - Twilight
A one-line safety tweak in the events database to guard against broken deep-links.
362d2e0 - Twilight
Tidies the script names in scripts.json so each fully connects to its associated map.
24c8afd - Twilight
Adds the world-other and world-scripts objects (with a small scripts-database refactor).
138f0ad - Twilight
Finishes reworking the events data and the world-events object.
8366d27 - Twilight
Rounds out the events database and its links to maps.
31bfc72 - Twilight
A substantial reshaping of the events data.
604ff72 - Twilight
A huge cleanup of events.json, collapsing it from ~15,000 lines to ~4,500 by removing redundancy.
7d0cc6a - Twilight
Adds a new, untouched game save file to the non-app assets for testing.
45f09f7 - Twilight
A one-line tweak to the world-missables object.
ef71d91 - Twilight
Adds the world-missables object to the expanded data.
1791976 - Twilight
Adds the world-hidden object (hidden items/coins state) to the expanded data.
b9ea31f - Twilight
Swaps the cumbersome ad-hoc map-search methods for a dedicated MapSearch class (~390 lines) handling searching and randomization, used by the area/warp code.
4cc493b - Twilight
Adds the world-general object to the expanded data.
8d83fbc - Twilight
Records new goals and features in NewGoals.md and the README.
6ae3893 - Twilight
Adds the world-events object to the expanded data.
7e1d1cf - Twilight
Adds the world-completed object (game-completion flags).
5fc85ec - Twilight
Starts the world subtree of the expanded data, adding the world root object.
e582f61 - Twilight
Adds the area-warps object, completing the entire area subtree of the expanded data.
301d02b - Twilight
Adds the area-tileset object.
721551f - Twilight
Adds the tileset index number to the tileset data.
e77c1f2 - Twilight
A large expansion of tileset.json and the tileset database.
5c978d5 - Twilight
Completes the area-sprites object and overhauls how sprite-data changes are handled.
cee31b5 - Twilight
A large data and code change: reworks sprite handling, adds missables with default values and updated names, and reshapes the maps/missables data. Sprite data is still a work in progress.
810c69c - Twilight
A first mostly-complete area-sprites object.
e8ae1a4 - Twilight
Assorted fixes across the Pokemon box/party and player objects.
51d8ac9 - Twilight
Adds the area-signs object to the expanded data.
15626c1 - Twilight
Adds the area-puzzle object (later renamed/relocated to world-local).
666a323 - Twilight
Adds the area-pokemon object (the wild/loaded Pokemon for the current map).
1954c9f - Twilight
Adds the area-player object (the player's per-map position/state).
bc7511f - Twilight
Adds the area-NPC object and makes various changes for a better randomization experience, with supporting tweaks to the player objects.
e6547aa - Twilight
A small fix in the map-connection data.
0c4a40b - Twilight
Adds a one-line method that had been left out of the map-connection data.
ff26f3b - Twilight
Reworks the area expanded data and adds the area-map object (which map is loaded and its connections).
fe04d0e - Twilight
A short README note marking 200 commits.
0173b27 - Twilight
Expands the area object's randomization logic.
d121e6d - Twilight
Adds a documentation note about the VRAM pointer in the area code.
14a73be - Twilight
Records the formula for the current tile-block map-view pointer (at D35F / save offset 260B) – a reverse-engineering find captured in the area code.
efcd331 - Twilight
Adds another sensitive file to .gitignore.
8bc3630 - Twilight
Adds the area-general object to the expanded data.
f6ba6c9 - Twilight
Adjusts how the loaded sprite set is randomized.
ed728f7 - Twilight
Turns off randomization for some audio options – not everything needs to be randomized.
e29a16b - Twilight
Adds the area loaded-sprites object.
6f8bb92 - Twilight
Starts the area loaded-sprites object in the expanded data.
26790cd - Twilight
Adds the sprite-set database and its data, integrating it with the maps.
f263b53 - Twilight
Verifies a north map-connection against the real game and adds alias names in comments (since this connection data goes by many different names).
7a821cb - Twilight
Adds the area-audio object to the expanded data.
a089a16 - Twilight
Wires item pricing into the items database.
a0d4eff - Twilight
Brings the wild-Pokemon map data into the maps database and cross-links it.
01e9f2a - Twilight
A data update adding prices to a portion of the items.
0e0b0f0 - Twilight
A large maps.json update adding the wild-Pokemon encounter data per map.
de7ba21 - Twilight
Adds the warp-in points to the map data (~3,800 lines) and cross-links them.
5759b79 - Twilight
Investigates two apparent map-data problems and documents that they're actually how the game is programmed, not bugs.
76e68da - Twilight
Adds and cross-links most of the per-map sprite data, leaving a couple of odd deep-linking errors for later.
0908843 - Twilight
A huge maps.json update (~8,700 lines) adding sprite data to each map, ahead of integrating it.
74c302b - Twilight
Adds the per-map sign data to the maps data and database.
bcfcbb6 - Twilight
Adds a forgotten glitch warp-out entry (there's one glitch warp in Celadon City).
7371fcc - Twilight
Adds the warp-out entries to every map in the right order (~5,500 lines of data).
96d3293 - Twilight
Adds the border-block field to the map data.
fe93f78 - Twilight
Finishes integrating the map-connection data, deep-linking, and the full connection calculations in the maps database.
63d595b - Twilight
A data rename of the toMap field to map in the connection data.
cbf0ed3 - Twilight
Adds the map-to-map connection data to maps.json.
5080621 - Twilight
Loads the maps, music and tileset JSON into their databases and cross-links them.
85518d3 - Twilight
Reworks the tileset data file into a more usable structure.
44ee0a1 - Twilight
Adds tilesets, the modern map names from the pokered disassembly team, and unused map names to the map data, and marks map copies as glitch maps.
decee16 - Twilight
Adds a few entries to .gitignore.
2d5884c - Twilight
Starts the area subtree of the expanded data, adding the area root and area-audio objects.
7bfa409 - Twilight
A one-line resource update registering music.json.
0c80be4 - Twilight
Adds music information to the map data plus a music.json database and research notes about the different tracks and where they play.
89ea598 - Twilight
Restores the base test save file to match the original.
aa70bd0 - Twilight
Adds more cross-links from the expanded fragments (map connection, sprite, warp data) to their related database entries.
94938b2 - Twilight
Adds virtual methods to the Pokemon box/party objects so party stats update correctly (for valid, non-glitch Pokemon).
f4bc91d - Twilight
A big change: splits names into separate player and Pokemon sets (200+ unique each) and replaces the player names with a new generator's output. Random Pokemon now use random Pokemon names and a random player name for the OT, with randomized types – the whole randomization feels better.
52810a3 - Twilight
Continued memory and code cleanup in the boot path and save-file objects.
d3f2bb7 - Twilight
Brings over the important non-app assets from the original editor: the base save, the growth notes, and the 010 Editor save-structure template.
6e09161 - Twilight
Reworks the file-management and main-window code with better memory handling and revised classes.
70f0c23 - Twilight
Small memory-management cleanups across boot and several expanded objects.
ec5ce06 - Twilight
A sweeping pass improving memory usage, footprint and cleanup across virtually every database and several expanded objects.
b57b04a - Twilight
A mixed batch touching several databases and building out the player-pokemon object.
9f579e2 - Twilight
Adds the warp-data fragment, completing the entire expanded fragment-data set.
05573fd - Twilight
Adds the sign-data and sprite-data fragments to the expanded data.
6c950b7 - Twilight
Finishes the Pokemon box and party fragments – the single most painful object in the model – with a heartfelt "may I never have to do that again."
4d7ff8f - Twilight
More work on the Pokemon box (the message conveys the exhaustion).
26823f3 - Twilight
A large addition to the Pokemon box; the message vents about the file's ever-growing length.
69b02b2 - Twilight
Thinks the Pokemon box is mostly complete, while acknowledging there may be more to add.
3c6f7e8 - Twilight
Continued additions to the Pokemon box.
33a0bf9 - Twilight
A big push on the Pokemon box (~530 lines), still in progress.
7f1d2bb - Twilight
Lays down the first of the Pokemon box object.
1300d06 - Twilight
Adds the map-connection data fragment.
a573506 - Twilight
Adds the Hall of Fame record/pokemon fragments and adjusts the expanded-data deep-linking.
1b2a6a3 - Twilight
Small tweaks to the player basics/items objects.
7bb8f42 - Twilight
Adds the player-pokedex object to the expanded data.
0510194 - Twilight
Adds the player-items object to the expanded data.
9f68f16 - Twilight
Fixes a bug where an object was constructed before its dependencies, plus a save mistake with the starter and a few other things.
1e2c3ba - Twilight
A checkpoint building the player and player-basics objects, noting a bug that's wiping the save data and crashing on startup – left to investigate later.
dca5e08 - Twilight
Cleans up and ports in an extra set of non-expanded code that had been stashed in the old JavaScript version.
690f9c8 - Twilight
A small optimization and fix to the save-file iterator.
20cf4d5 - Twilight
A one-line fix to the save-file iterator.
846ffe1 - Twilight
Finishes the save-file iterator, completing the first part of the second milestone (the raw, non-expanded save data) – with the larger expanded-data part next.
a94a739 - Twilight
Builds out the save-file toolset, nearly finishing the first part of the milestone ahead of the save-file iterator.
88f61df - Twilight
Continued work on the save-file toolset (the smallest part of the milestone).
1bb6cc2 - Twilight
Adds hex to/from conversion helpers to the save-file toolset.
f366bd4 - Twilight
Finishes the copyRange and setStr save-file toolset methods.
70c3cb1 - Twilight
Adds and tests reading strings out of the save file.
41a45a9 - Twilight
Finishes the font data conversion and search – the machinery that turns save bytes into Game Boy font characters and back.
f6c14a3 - Twilight
Most of the font and string conversion code lands (the fonts database and search).