-
-
Notifications
You must be signed in to change notification settings - Fork 53
Main GUI
As the name suggests, this is the primary tool that you would be using in this package.
It is used for either applying modifications in the form of patches to apps OR running some extensions utilizing information from the apps.
On Windows, the tool is available as WARP.exe inside the win32 folder.
On Linux (Debian-based), the tool is available as WARP inside the deb32 OR deb64 folder (depending on which OS & branch you have).
The timestamp on the title reflects the latest update (i.e. last commit time).
If you remove or mess up the .git folder the timestamp might not appear
This section of the interface is used for entering the exe files.
-
Source
Enter the application which needs to be loaded & queried. You can use the folder button to browse and select an existing file.
Alternatively, you can drag & drop the file in the box to copy it's path. If you drop the file anywhere else, the tool will ask if you want to load it directly.
-
Target
Enter the file name to use for the revamped source. WARP tries to use the source name suffixed with _patched by default.
You can use the same path as the source if you want, but at your own risk. You can use the folder button to browse and select a new file name.
Similar to Source, you can drag & drop a file in the box to copy it's path.
Once the Source exe has been loaded, the patch list gets filled with all defined patches valid for the loaded app.
Patches are defined in 'Patches.yml' file . See Patch Guide for more details.
Apart from the Selection actions mentioned below, you can also use the Filter & Sort field to help with the patch selection process.
Associated with the Patch List are a bunch of 'Quick Action' buttons.
-
Load Source
Loads the application specified as Source into the Exe & populates the Patch List. Also loads the scripts (if not done already) prior to loading the Source.
Once the app is loaded, all the scripts from 'Init' folder gets executed again. This is done before the Patch List is populated.
-
Select Recommended
Select Patches marked as 'Recommended'. Other patches are unaffected.
-
Select Previous
Select Patches used in a previous session (available in 'LastSession.yml'). All others gets deselected.
-
Apply Patches
Apply all selected patches on the loaded app and save the output to Target path.
-
Load Scripts
Load all changed/modified QJS scripts (since last time they were loaded) provided under 'Scripts' folder hierarchy (except for 'Init').
While the above 2 sections is the most used parts of the tool the header and footer are equally important.
The header consists of 2 buttons for the 2 drawers respectively on left and right edges as well as the value displays mentioned below:
-
Loaded Date & Version
Displays the build date and linker version of the loaded exe. This is also available in Script-Window's header as well.
By default the version is not visible. To make it visible, you need to turn ON the Show loaded version setting.
-
Selected Patches
Displays the number of patches currently selected.
The Action drawer is housed on the left side of the tool. To open it you can either:
-
Click the button OR
-
Swipe rightwards from the left edge.
The available actions are
-
Scripts
-
Load from 'Patches'
Load all QJS files provided in the 'Scripts/Patches' folder.
-
Load from 'Extensions'
Load all QJS files provided in the 'Scripts/Extensions' folder.
-
Load from 'Support'
Load all QJS files provided in the 'Scripts/Support' folder.
-
Load All Scripts
Load all QJS files provided in the aforementioned 3 folders.
-
Show Script Window
Display the window which allows you to run QJS code interactively. See more at Script Window.
-
-
Refresh
-
Refresh Languages
Refresh the list of languages provided via YAML files in the 'Languages' folder.
-
Refresh Styles
Refresh the list of styles provided via YAML files in the 'Styles' folder.
-
Load Extensions
Refresh the list of extensions defined in 'Extensions.yml' file . See Extension Guide for more details.
-
-
Session
-
Load Session file
Load a previously saved session YAML file. See Session File for more details.
Similar to the
Source
exe, you can also drag & drop the session file on top of the tool to load it directly. -
Save Session file
Save the current session to a YAML file. See Session File for more details.
-
The Extension drawer is housed on the right side of the tool. To open it you can either:
-
Click the button OR
-
Swipe leftwards from the right edge.
In addition to Load Extensions
(which is the same as in Action Drawer), there are 2 inbuilt extensions available in the drawer.
-
Convert Profile to Session
This is used for converting a NEMO profile (.log & .db) into an equivalent Session File for use with WARP.
-
Generate Security file
This is used for generating a
.secure.txt
file (containing all the MD5, SHA & CRC checksums) corresponding to the file you provide. There is no restriction on the input file for this extension.
When you click Load Extensions
all the new extensions get added under the From Scripts
category
The footer is composed of 2 selectors and 5 buttons as explained below: Going from left to right, we have.
-
Style selector
Sets the style i.e. Colors & Font (specified via YAML file) for the tool.
An inbuilt light style is available as default and a style file for Dark Mode has been provided as well.
See Style file for more details. Any changes are common to both GUIs and gets saved in 'Settings.yml'.
-
Ko-fi button
In case you are interested in supporting the project click this and it will open my Ko-fi page :)
-
Discord button
Opens the invite link for WARP's discord server.
-
Github button
Opens the Github page for WARP.
-
Settings button
Opens the Settings dialog for the tool.
-
Info button
Opens an About dialog with some info about the tool.
-
Language selector
Sets the language (specified via YAML file) for the tool. English is provided in-built as a default.
See Language file for more details. Any changes are common to both GUIs and gets saved in 'Settings.yml'.
There are 5 options and 1 action available in the settings dialog as explained below.
-
Options
-
Show loaded version
If ON, makes the build/linker version of the loaded application also visible.
-
Enable EPI
EPI are extra files that help the tool with keeping track of patches in an exe, allowing removal or modification of existing patches and even restoring the patched app to original state.
EPI files will be loaded with the Source as well as generated along with the Target only if this option has been turned ON.
-
Generate <target>.secure.txt
If ON, then the tool will generate a
.secure.txt
file for the Target app which has all the checksums. -
Generate target's session
If ON, then the tool will generate a Session File containing the set of patches applied and the user inputs used.
You will be able to use this session in future to reapply the same patches to the same or perhaps a different exe.
-
Keep session inputs
If ON, then the user inputs specified in a Session File will be kept as-is without asking the user whether they want to change the values.
-
Report Patch Modifications
If ON, then the changes made by each patch will get reported when you
Apply Patches
.The information will be added to both the Script Window as well as the log file if logging has started. Make sure to keep it off to avoid sluggishness, unless you are debugging something.
-
-
Actions
-
Save Resolutions
Saves the current resolution of both Main GUI and Script Window as default respectively.
-