Compare commits

..

No commits in common. "main" and "1.2.4" have entirely different histories.
main ... 1.2.4

8 changed files with 129 additions and 149 deletions

1
.gitignore vendored
View file

@ -11,7 +11,6 @@ savedata/
Settings.json Settings.json
# Misc. Files # Misc. Files
*.tar.gz
*.info *.info
*.nexe *.nexe
*.dump *.dump

View file

@ -705,7 +705,17 @@ temp_DESIGN = {
document.getElementById('CHECKBOX_settingsExternalWindowPrompt').disabled = !0; document.getElementById('CHECKBOX_settingsExternalWindowPrompt').disabled = !0;
} }
// Get number of all homebrews + normal titles
const
cCompat_cusa = Object.keys(APP.gameList.cCompatList.cusacode).length,
cCompat_homebrew = Object.keys(APP.gameList.cCompatList.cusacode).length;
// Check if needs to update game compat and update settings GUI
if (APP.settings.data.enableCompatStatusCheck === !0 && Number(cCompat_cusa + cCompat_homebrew) === 0){
APP.gameList.createCompatList();
}
this.updateLauncherSettingsGUI(); this.updateLauncherSettingsGUI();
}, },
// Update settings GUI without loading / save data // Update settings GUI without loading / save data

View file

@ -19,7 +19,10 @@ temp_GAMELIST = {
cGameSettings: {}, cGameSettings: {},
// Current compat list // Current compat list
cCompatList: [], cCompatList: {
cusacode: {},
homebrew: {},
},
// Create compat list // Create compat list
createCompatList: function(){ createCompatList: function(){
@ -34,11 +37,28 @@ temp_GAMELIST = {
// Check if can create list // Check if can create list
if (proceedCheck.indexOf(!1) === -1){ if (proceedCheck.indexOf(!1) === -1){
// Reset the current compat list // Create main vars
APP.gameList.cCompatList = []; var cGameList = '',
cHomebrewList = '';
// fetch database // Reset current compat list and process current game list
fetch(`https://api.fpps4.net/database.json`) APP.gameList.cCompatList = { cusacode: {}, homebrew: {} };
Object.keys(APP.gameList.list).forEach(function(cGameId){
// Create main vars and check if current title is homebrew
const cGameData = APP.gameList.list[cGameId];
if (cGameData.isHomebrew === !0){
cHomebrewList = `${cHomebrewList},${cGameData.name}`;
} else {
cGameList = `${cGameList},${cGameData.paramSfo.TITLE_ID}`;
}
});
// Trim strings and make search
cGameList = cGameList.slice(1);
cHomebrewList = cHomebrewList.slice(1);
fetch(`https://fpps4.net/_scripts/api.php?token=3g4YNf7XvchD&cusa=${cGameList}&homebrew=${cHomebrewList}`)
.then(function(resp){ .then(function(resp){
return resp.json(); return resp.json();
}) })
@ -46,14 +66,7 @@ temp_GAMELIST = {
// If response data exists, update current compat list // If response data exists, update current compat list
if (respData !== void 0){ if (respData !== void 0){
APP.gameList.cCompatList = respData;
// renames some variables and discards unneeded ones
APP.gameList.cCompatList = respData.map(({title, code, status, labels}) => ({
title: title,
id: code,
status: status,
labels: labels // maybe you can do something cool with this ;)
}));
} }
}); });
@ -550,20 +563,52 @@ temp_GAMELIST = {
searchQuery = cGame.name; searchQuery = cGame.name;
} }
// get the current issues matching either the id or title // If current title isn't on local compat list, try get data from fpps4.net
let foundIssues = APP.gameList.cCompatList.filter( issue => issue.id.toUpperCase() === searchQuery.toUpperCase() || issue.title.toUpperCase() === searchQuery.toUpperCase() ); if (APP.gameList.cCompatList.cusacode[searchQuery] === void 0 && APP.gameList.cCompatList.homebrew[searchQuery] === void 0){
// Check if the current title isn't on the compat list // Get current game conde and try getting data
if (foundIssues.length <= 0) { fetch(`https://fpps4.net/_scripts/search.php?q=${searchQuery}`)
.then(function(resp){
return resp.json();
}).then(function(gData){
cGameComapStatus = 'UNKNOWN'; // Check if data is defined
APP.log(APP.lang.getVariable('warnUnableFindGameCompatDb', [APP.gameList.list[searchQuery].name, searchQuery])); if (gData !== void 0){
updateCompat();
// Process game list
var gFound = !1;
for (let i = 0; i < gData.games.length; i++){
// Check if current game code matches
if (gData.games[i].code === searchQuery){
cGameComapStatus = gData.games[i].tag.toUpperCase();
gFound = !0;
break;
}
}
// Log warn if failed to find game compat and set status to unknown
if (gFound === !1){
cGameComapStatus = 'UNKNOWN';
APP.log(APP.lang.getVariable('warnUnableFindGameCompatDb', [APP.gameList.list[searchQuery].name, searchQuery]));
}
updateCompat();
}
});
} else { } else {
// Get data from current database and update compat mode // Get data from current database and update compat mode
cGameComapStatus = foundIssues[0].status.toUpperCase(); cGameComapStatus = APP.gameList.cCompatList.cusacode[searchQuery];
if (APP.gameList.cCompatList.cusacode[searchQuery] === void 0){
cGameComapStatus = APP.gameList.cCompatList.homebrew[searchQuery];
}
cGameComapStatus = cGameComapStatus.toUpperCase();
updateCompat(); updateCompat();
} }
} else { } else {

View file

@ -54,52 +54,52 @@ temp_LANGUAGE = {
"labelEnableHack": "Enable", "labelEnableHack": "Enable",
"emuStatusRunning": "Running", "emuStatusRunning": "Running",
"logWindowTitle": "Running fpPS4", "logWindowTitle": "Running fpPS4",
"killEmuStatus": "Main process closed - close the fpPS4 log window to go back", "killEmuStatus": "Main process closed - close fpPS4 log window to go back",
"logCleared": "INFO - Previous log was cleared!", "logCleared": "INFO - Previous log was cleared!",
"about": "fpPS4 Temmie\'s Launcher - Version: %VARIABLE_0%\n\nCreated by TheMitoSan [Previously known as TemmieHeartz]\n(https://twitter.com/themitosan)\n\nfpPS4 is created by red-prig\n(https://github.com/red-prig/fpPS4)\n\nPlugin memoryjs is created by Rob--\n(https://github.com/rob--/memoryjs)\n\nPlugin node-stream-zip is created by antelle\n(https://github.com/antelle/node-stream-zip)\n\nSVG icons were obtained from https://www.svgrepo.com/", "about": "fpPS4 Temmie\'s Launcher - Version: %VARIABLE_0%\n\nCreated by TheMitoSan [Previously known as TemmieHeartz]\n(https://twitter.com/themitosan)\n\nfpPS4 is created by red-prig\n(https://github.com/red-prig/fpPS4)\n\nPlugin memoryjs is created by Rob--\n(https://github.com/rob--/memoryjs)\n\nPlugin node-stream-zip is created by antelle\n(https://github.com/antelle/node-stream-zip)\n\nSVG icons were obtained from https://www.svgrepo.com/",
"mainLog": 'fpPS4 Temmie\'s Launcher - Version: %VARIABLE_0%\nRunning on nw.js version %VARIABLE_1% [%VARIABLE_2%]', "mainLog": 'fpPS4 Temmie\'s Launcher - Version: %VARIABLE_0%\nRunning on nw.js version %VARIABLE_1% [%VARIABLE_2%]',
"settingsErrorCreatePath": "ERROR - Unable to create path!\n(%VARIABLE_0%)\n%VARIABLE_1%", "settingsErrorCreatePath": "ERROR - Unable to create path!\n(%VARIABLE_0%)\n%VARIABLE_1%",
"settingsErrorfpPS4NotFound": "ERROR - Unable to locate the main fpPS4 executable!\nMake sure to select it in Settings or insert it in the \"Emu\" folder and click OK.", "settingsErrorfpPS4NotFound": "ERROR - Unable to locate main fpPS4 executable!\nMake sure to select it in Settings or insert it in \"Emu\" folder and click OK.",
"settingsConfirmRemoveAllGameSettings": "WARNING - This option will remove all saved settings from your game list.\nDo you want to continue?", "settingsConfirmRemoveAllGameSettings": "WARNING - This option will remove all saved settings from your game list.\nDo you want to continue?",
"settingsRemovedGameSettings": "INFO - ( %VARIABLE_0% ) Settings file was removed successfully!", "settingsRemovedGameSettings": "INFO - ( %VARIABLE_0% ) Settings file was removed successfully!",
"settingsConfirmRemoveGameSettings": "WARNING - This action will delete all saved settings for %VARIABLE_0%\n\nDo you want to continue?", "settingsConfirmRemoveGameSettings": "WARNING - This action will delete all saved settings for %VARIABLE_0%\n\nDo you want to continue?",
"settingsRemoveGameSettingsError": 'ERROR - ( %VARIABLE_0% ) Unable to delete settings file!\nReason: %VARIABLE_1%', "settingsRemoveGameSettingsError": 'ERROR - ( %VARIABLE_0% ) Unable to delete settings file!\nReason: %VARIABLE_1%',
"settingsRemoveGameSettings404": 'WARNING - ( %VARIABLE_0% ) Unable to find the settings file for this app / game!', "settingsRemoveGameSettings404": 'WARNING - ( %VARIABLE_0% ) Unable to find settings file for this app / game!',
"infoProcessComplete": "INFO - Process complete!\nCheck the log for more details", "infoProcessComplete": "INFO - Process complete!\nCheck the log for more details",
"infoSettingsUpdated": "INFO - Settings file was updated successfully!", "infoSettingsUpdated": "INFO - Settings file was updated successfully!",
"settingsLoadError": "ERROR - Unable to load the settings file!\n %VARIABLE_0%", "settingsLoadError": "ERROR - Unable to load settings file!\n %VARIABLE_0%",
"settingsSaveError": "ERROR - Unable to save the settings file!\n %VARIABLE_0%", "settingsSaveError": "ERROR - Unable to save settings file!\n %VARIABLE_0%",
"runEmuArgs": "\nINFO - Running fpPS4 with args: %VARIABLE_0%\nEmu location: %VARIABLE_1%", "runEmuArgs": "\nINFO - Running fpPS4 with args: %VARIABLE_0%\nEmu location: %VARIABLE_1%",
"closeEmuStatus": "INFO - %VARIABLE_0% was closed, returning code %VARIABLE_1%", "closeEmuStatus": "INFO - %VARIABLE_0% was closed, returning code %VARIABLE_1%",
"removedLibModules": "INFO - All the previously imported modules using this launcher were removed since it can be harmful to your game dumps.", "removedLibModules": "INFO - All previous imported modules using this launcher were removed since it can be harmful to your game dumps.",
"removeLibModule": "INFO - ( %VARIABLE_0% ) Removing module: %VARIABLE_1%", "removeLibModule": "INFO - ( %VARIABLE_0% ) Removing module: %VARIABLE_1%",
"removeModuleError": "ERROR - Unable to remove modules!\nReason: %VARIABLE_0%", "removeModuleError": "ERROR - Unable to remove modules!\nReason: %VARIABLE_0%",
"updateGameSettings": "INFO - ( %VARIABLE_0% ) Settings file was updated successfully!", "updateGameSettings": "INFO - ( %VARIABLE_0% ) Settings file was updated successfully!",
"updateGameSettingsError": "ERROR - Unable to update the settings file for %VARIABLE_0% at %VARIABLE_1%!\nReason: %VARIABLE_2%", "updateGameSettingsError": "ERROR - Unable to update settings file for %VARIABLE_0% at %VARIABLE_1%!\nReason: %VARIABLE_2%",
"skipUpdateGameSettings": "INFO - ( %VARIABLE_0% ) Skipped updating the settings file since it has no changes!", "skipUpdateGameSettings": "INFO - ( %VARIABLE_0% ) Skip updating settings file since it has no changes!",
"errorSaveFile": "ERROR - Unable to save the file!\nReason: %VARIABLE_0%", "errorSaveFile": "ERROR - Unable to save file!\nReason: %VARIABLE_0%",
"saveSucessfullPath": "INFO - Save successful!\nPath: %VARIABLE_0%", "saveSucessfullPath": "INFO - Save successful!\nPath: %VARIABLE_0%",
"createdSettingsFile": "INFO - Settings file was created successfully for %VARIABLE_0%", "createdSettingsFile": "INFO - Settings file was created successfully for %VARIABLE_0%",
"errorCreateSettingsFile": "ERROR - Unable to create the settings file for %VARIABLE_0% at %VARIABLE_1%!\nReason: %VARIABLE_2%", "errorCreateSettingsFile": "ERROR - Unable to create settings file for %VARIABLE_0% at %VARIABLE_1%!\nReason: %VARIABLE_2%",
"patchLoadedSucessfully": "INFO - Patch loaded successfully!\nName: %VARIABLE_0%\nType: %VARIABLE_1%", "patchLoadedSucessfully": "INFO - Patch loaded successfully!\nName: %VARIABLE_0%\nType: %VARIABLE_1%",
"patchLoadErrorMismatch": "ERROR - This isn\'t a patch or it isn't made for this app / game!\nPatch ID: %VARIABLE_0%\nSelected app / game: %VARIABLE_1%", "patchLoadErrorMismatch": "ERROR - This isn\'t a patch or it does not match for this app / game!\nPatch ID: %VARIABLE_0%\nSelected app / game: %VARIABLE_1%",
"patchLoadErrorParamSfo404": "ERROR - Unable to find the PARAM.SFO for this patch!", "patchLoadErrorParamSfo404": "ERROR - Unable to find PARAM.SFO for this patch!",
"gameListLoadWarnPlayGo": "WARNING - Unable to locate the playgo-chunk.dat for %VARIABLE_0%!\nIf this isn\'t a homebrew, check if this app / game was dumped properly.", "gameListLoadWarnPlayGo": "WARNING - Unable to locate playgo-chunk.dat for %VARIABLE_0%!\nIf this isn\'t a homebrew, check if this app / game was dumped properly.",
"gameListLoadWarnParamSfo": "WARNING - Unable to locate the PARAM.SFO for %VARIABLE_0%!\nIf this isn\'t a homebrew, check if this app / game was dumped properly.", "gameListLoadWarnParamSfo": "WARNING - Unable to locate PARAM.SFO for %VARIABLE_0%!\nIf this isn\'t a homebrew, check if this app / game was dumped properly.",
"gameListDoubleIdError": "WARNING - Unable to add %VARIABLE_0% to game list because another app / game with the same title ID already exists! ( %VARIABLE_1% )", "gameListDoubleIdError": "WARNING - Unable to add %VARIABLE_0% to game list because another app / game with the same title ID exists! ( %VARIABLE_1% )",
"gameListNoGameFound": "INFO - No apps / games were detected on current path ( %VARIABLE_0% )", "gameListNoGameFound": "INFO - No apps / games were detected on current path ( %VARIABLE_0% )",
"gameListSearch404": "Unable to find", "gameListSearch404": "Unable to find",
"checkDumpPlayGoOnApp": "INFO - ( %VARIABLE_0% ) playgo-chunk.dat was found inside sce_sys/app - a new copy was created in sce_sys.", "checkDumpPlayGoOnApp": "INFO - ( %VARIABLE_0% ) playgo-chunk.dat was found inside sce_sys/app - a new copy was created in sce_sys.",
"gameListLoadSuccessful": "INFO - Game list was loaded successfully! ( %VARIABLE_0% entries found )", "gameListLoadSuccessful": "INFO - Game list was loaded successfully! ( %VARIABLE_0% entries found )",
"gameListVersion": "Version", "gameListVersion": "Version",
"selectGameLoadPatchErrorParamSfo": "ERROR - Unable to read the PARAM.SFO from this patch!\n%VARIABLE_0%", "selectGameLoadPatchErrorParamSfo": "ERROR - Unable to read PARAM.SFO from this patch!\n%VARIABLE_0%",
"path": "Path", "path": "Path",
"gamelistGamePath404": "ERROR - Unable to find the selected app / game path!\n%VARIABLE_0%", "gamelistGamePath404": "ERROR - Unable to find selected app / game path!\n%VARIABLE_0%",
"updateEmuFetchActionsError": "ERROR - Unable to fetch GitHub actions data!", "updateEmuFetchActionsError": "ERROR - Unable to fetch GitHub actions data!",
"updateEmuIsLatestVersion": "INFO - You are already using the latest fpPS4 version available!\nCommit ID (SHA): %VARIABLE_0%", "updateEmuIsLatestVersion": "INFO - You are using the latest fpPS4 version available!\nCommit ID (SHA): %VARIABLE_0%",
"updateEmuShaAvailable": "INFO - A new fpPS4 update is available!\n\nLocal version: %VARIABLE_0%\nUpstream version: %VARIABLE_1%\n\nDo you want to update?", "updateEmuShaAvailable": "INFO - A new update is available!\n\nLocal version: %VARIABLE_0%\nNew version: %VARIABLE_1%\n\nDo you want to update?",
"updateEmuShaUnavailable": "INFO - This Launcher detected that you didn\'t updated fpPS4 yet (or the fpPS4 executable was not found!)\n\nYou can fix this by running the fpPS4 updater process.\nDo you want to proceed?", "updateEmuShaUnavailable": "INFO - This Launcher detected that you didn\'t updated fpPS4 yet (or fpPS4 executable was not found!)\n\nYou can fix this by running fpPS4 updater process.\nDo you want to proceed?",
"updateEmuDownloadFailed": "ERROR - Unable to download the fpPS4 update!\nResponse status: %VARIABLE_0% - OK: %VARIABLE_1%", "updateEmuDownloadFailed": "ERROR - Unable to download fpPS4 update!\nResponse status: %VARIABLE_0% - OK: %VARIABLE_1%",
"updateEmuProcessComplete": "INFO - Update complete! - New fpPS4 version (Commit ID / SHA): %VARIABLE_0%", "updateEmuProcessComplete": "INFO - Update complete! - New fpPS4 version (Commit ID / SHA): %VARIABLE_0%",
"updateEmu-1-4": "Downloading fpPS4 update (<label class=\"LABEL_monospace\">%VARIABLE_0%</label>)", "updateEmu-1-4": "Downloading fpPS4 update (<label class=\"LABEL_monospace\">%VARIABLE_0%</label>)",
"updateEmu-2-4": "Extracting update", "updateEmu-2-4": "Extracting update",
@ -109,11 +109,11 @@ temp_LANGUAGE = {
"dumpStatus_OK": "Fine", "dumpStatus_OK": "Fine",
"dumpStatus_WARN": "Missing files", "dumpStatus_WARN": "Missing files",
"dumpStatus_HB": "Homebrew", "dumpStatus_HB": "Homebrew",
"updateEmuWorkflow404": "ERROR - (Updater) Unable to load the workflow list from the fpPS4 GitHub!", "updateEmuWorkflow404": "ERROR - (Updater) Unable to load workflow list from fpPS4 GitHub!",
"updater_noWorkflowListAvailable": "No workflow list available", "updater_noWorkflowListAvailable": "No workflow list available",
"Sdl2NotFound": "SDL2.dll is not found in the Emu folder, please install it to use SDL2.", "Sdl2NotFound": "SDL2.dll is not found in the Emu folder, please install it to use SDL2.",
"errorListUnableLocateGamePath": "ERROR - Unable to locate \"%VARIABLE_0%\" settings path! In order to prevent issues, the game list will be reloaded.\nPath: %VARIABLE_1%", "errorListUnableLocateGamePath": "ERROR - Unable to locate \"%VARIABLE_0%\" settings path! In order to prevent issues, game list will be reloaded.\nPath: %VARIABLE_1%",
"updateEmuSettingsWorkflow404": "ERROR - (Updater) Unable to find (%VARIABLE_0%) on the fpPS4 workflow list! %VARIABLE_1% will be used as a fallback.", "updateEmuSettingsWorkflow404": "ERROR - (Updater) Unable to find (%VARIABLE_0%) on the fpPS4 workfow list! %VARIABLE_1% will be used as a fallback.",
"nonWindowsOsWarn": "WARN - You are running fpPS4 Temmie's Launcher on a non-windows operating system!\n\nIn order to run fpPS4, you will need Wine installed on your OS.\n\nBe aware that running fpPS4 through tools like Wine can result in more glitches and a degraded performance / experience.", "nonWindowsOsWarn": "WARN - You are running fpPS4 Temmie's Launcher on a non-windows operating system!\n\nIn order to run fpPS4, you will need Wine installed on your OS.\n\nBe aware that running fpPS4 through tools like Wine can result in more glitches and a degraded performance / experience.",
"cGameCompatStatus_BOOTS": "Boots", "cGameCompatStatus_BOOTS": "Boots",
"cGameCompatStatus_MENUS": "Menus", "cGameCompatStatus_MENUS": "Menus",
@ -121,13 +121,13 @@ temp_LANGUAGE = {
"cGameCompatStatus_UNKNOWN": "Unknown", "cGameCompatStatus_UNKNOWN": "Unknown",
"cGameCompatStatus_NOTHING": "Nothing", "cGameCompatStatus_NOTHING": "Nothing",
"cGameCompatStatus_PLAYABLE": "Playable", "cGameCompatStatus_PLAYABLE": "Playable",
"warnUnableFindGameCompatDb": "WARN - Unable to find the compatibility status for \"%VARIABLE_0%\" (%VARIABLE_1%) on the fpPS4 database!", "warnUnableFindGameCompatDb": "WARN - Unable to find the compatibility status for \"%VARIABLE_0%\" (%VARIABLE_1%) on the fpPS4 game database!",
"warnUserOffline": "WARN - You are offline! Some features (like the game compatibility status and the fpPS4 updater) will not be available until you reconnect to the internet." "warnUserOffline": "WARN - You are offline! Some features (like the game compatibility status and the fpPS4 updater) will not be available until you are reconnected to the internet."
}, },
"title": { "title": {
"DIV_selectedGameStatus_dump": "Green: All files are present\nYellow: Some files are missing - check the log for more details\nCyan: Executable is a .elf file", "DIV_selectedGameStatus_dump": "Green: All files are present\nYellow: Some files are missing - check log for more details\nCyan: Executable is a .elf file",
"DIV_selectedGameStatus_compat": "Playable: You can play this title from start to finish.\nIn-game: You can play parts / segments of this title, but you can't finish it.\nMenus: This title boots into the main menu, but you can't play the main game.\nBoots: This title starts loading the game, but fails at some point.\nNothing: This title doesn't do anything.\nUnknown: There is no data about this title on the fpPS4 database." "DIV_selectedGameStatus_compat": "Playable: You can play this title from start to end.\nIn-game: You can play parts / segments of this title, but you can't finish it.\nMenus: This title boots into the main menu, but you can't play the main game.\nBoots: This title starts loading the game, but fails at some point.\nNothing: This title doesn't do anything or there is no data about this title on the fpPS4 database.\nUnknown: fpPS4 Temmie's Launcher was unable to retreive information about this title."
} }
}, },

View file

@ -135,8 +135,8 @@
"LABEL_SETTINGS_GUI_ZOOM_SCALE_INFO": "Avertissement : La modification de ce paramètre n'est pas recommandée si la résolution de votre écran est inférieure à <code>1920x1080</code>", "LABEL_SETTINGS_GUI_ZOOM_SCALE_INFO": "Avertissement : La modification de ce paramètre n'est pas recommandée si la résolution de votre écran est inférieure à <code>1920x1080</code>",
"LABEL_SETTINGS_START_EMU_FULLSCREEN": "Démarrer fpPS4 en mode plein écran", "LABEL_SETTINGS_START_EMU_FULLSCREEN": "Démarrer fpPS4 en mode plein écran",
"LABEL_SETTINGS_ENABLE_GAME_COMPAT_CHECK": "Activer la vérification de compatibilité des titres / jeux", "LABEL_SETTINGS_ENABLE_GAME_COMPAT_CHECK": "Activer la vérification de compatibilité des titres / jeux",
"LABEL_SETTINGS_GAMEPAD_LED_COLOR": "Possibilité de modifier le code de contrôle (demander <code>SDL2.dll</code>)", "LABEL_SETTINGS_GAMEPAD_LED_COLOR": "",
"LABEL_FPPS4_OPTIONS_SELECT_GAMEPAD_LED_COLOR": "(Contrôle) Couleur de LED :" "LABEL_FPPS4_OPTIONS_SELECT_GAMEPAD_LED_COLOR": ""
}, },
"select": { "select": {

View file

@ -82,7 +82,7 @@
"title": { "title": {
"DIV_selectedGameStatus_dump": "Groen: Alle bestanden zijn aanwezig\nGeel: Sommige bestanden ontbreken - Bekijk de logs voor meer details.\nCyaan: Executable is een .elf-bestand", "DIV_selectedGameStatus_dump": "Groen: Alle bestanden zijn aanwezig\nGeel: Sommige bestanden ontbreken - Bekijk de logs voor meer details.\nCyaan: Executable is een .elf-bestand",
"DIV_selectedGameStatus_compat": "Speelbaar: Deze titel is volledig speelbaar.\nIn-Game Je kunt delen of segmenten spelen, maar je kunt deze titel niet voltooien.\nMenu: Deze titel werkt tot het menu maar kan de rest niet laden.\nOpent: Deze titel start met laden, maar faalt op een gegeven moment.\nNiks: deze titel doet niks\nOnbekend: Er zijn geen gevens over deze titel in de fpPS4 database gevonden." "DIV_selectedGameStatus_compat": "Speelbaar: Deze titel is volledig speelbaar.\nIn-Game Je kunt delen of segmenten spelen, maar je kunt deze titel niet voltooien.\nMenu: Deze titel werkt tot het menu maar kan de rest niet laden.\nOpent: Deze titel start met laden, maar faalt op een gegeven moment.\nNiks: deze titel doet niks of er zijn geen gevens over deze titel in de fpPS4 database.\nOnbekend: fpPS4 Temmie's Launcher kon geen informatie vinden over deze titel."
}, },
"innerHTML": { "innerHTML": {

View file

@ -26,35 +26,27 @@ Created by [TheMitoSan](https://github.com/themitosan) <sup>_(Previously known a
- Extract all files from `nw` on `Nwjs` folder - Extract all files from `nw` on `Nwjs` folder
- Run `launcher.bat` - Run `launcher.bat`
### Linux ### Linux [WIP]
> [!WARNING]\
> Running fpPS4 / Launcher on a Non-Windows OS <u>**isn't the best way / recommended to test / use this software!**</u> The main compatibility layer is being developed to <u>**run only on Windows**</u>. In order to run fpPS4, you will need [Wine](https://www.winehq.org) installed - <ins>but be aware that it may result in **less performance with bugs / glitches**</ins>. **WARNING**: Running fpPS4 / Launcher on a Non-Windows OS <u>**isn't the best way / recommended to test / use this software!**</u> The main compatibility layer is being developed to <u>**run only on Windows**</u>. In order to run fpPS4, you will need [Wine](https://www.winehq.org) installed - but be aware that it will result in <u>**less performance with bugs / glitches**</u>.
[Click here to know how to install Wine](https://wiki.winehq.org/Download) [Click here to know how to install Wine](https://wiki.winehq.org/Download)
#### Release Version ### Simple Method
- Download latest release _(you can get it [here](https://github.com/themitosan/fpPS4-Temmie-s-Launcher/releases))_
- Extract all files on your desired location
- Run `chmod +x launcher.sh && ./launcher.sh`
#### Installer Method (recomended)
> [!IMPORTANT]\
> Make sure to have `curl`, `tar` and `unzip` packages installed on your system!
- [Download / Clone this repo](https://github.com/themitosan/fpPS4-Temmie-s-Launcher/archive/refs/heads/main.zip) - [Download / Clone this repo](https://github.com/themitosan/fpPS4-Temmie-s-Launcher/archive/refs/heads/main.zip)
- To run installer script, run `chmod +x install.sh && ./install.sh` - To run installer script, run `chmod +x install.sh && ./install.sh`
### Manual Installation ### Manual Installation
- [Download / Clone this repo](https://github.com/themitosan/fpPS4-Temmie-s-Launcher/archive/refs/heads/main.zip) - [Download / Clone this repo](https://github.com/themitosan/fpPS4-Temmie-s-Launcher/archive/refs/heads/main.zip)
- Download latest [nw.js](https://nwjs.io/) version - Download [nw.js](https://dl.nwjs.io/v0.70.1/nwjs-sdk-v0.70.1-linux-x64.tar.gz) version `0.70.1`
- Extract all files from `nw` on `Nwjs` folder - Extract all files from `nw` on `Nwjs` folder
- Open terminal on main project path and run `chmod +x ./launcher.sh` - Open terminal on main project path and run `chmod +x ./launcher.sh`
In order to start, run `./launcher.sh` In order to start, run `./launcher.sh`
## General Tips ### General Tips
- You can add `launcher.sh` as a *non-steam game* in your **Steam**! - You can add `launcher.sh` as a *non-steam game* in your **Steam**!
- You can hide a specific title to show on list by appending `!` before folder name _(Example: `!Apollo Save Tool`)_ - You can hide a specific title to show on list by appending `!` before folder name _(Example: `!Apollo Save Tool`)_

View file

@ -1,113 +1,48 @@
#########################################################################
### === Variables ===
#########################################################################
# NW.js Version
NWJS_VER="0.92.0"
# SDL Version
SDL_VER="2.30.7"
# Files / dirs to be removed
REM_FILES_DIR_LIST=(
"sdl2"
"sdl2.zip"
"nwjs.tar.gz"
"nwjs-sdk-v$NWJS_VER-linux-x64"
)
#########################################################################
### === Functions ===
#########################################################################
# Remove files and dirs
removeFilesDirs(){
# Process remove list
for entry in "${REM_FILES_DIR_LIST[@]}"
do
# Check if file / dir exists. If so, remove it.
if [ -f $entry ]; then
echo -e "Removing $entry"
rm "$entry"
fi
if [ -d $entry ]; then
echo -e "Removing $entry"
rm -rf "$entry"
fi
done
}
#########################################################################
### === Main Script ===
#########################################################################
clear clear
echo echo
echo " #=============================================================#" echo " #===========================================================#"
echo echo
echo " fpPS4 Temmie's Launcher - Install Script" echo " fpPS4 Temmie's Launcher - Install Script"
echo " Written by @themitosan" echo " Written by @themitosan"
echo echo
echo " IMPORTANT: This script requires internet connection and" echo " IMPORTANT: This script requires internet connection and"
echo " curl, tar and unzip packages installed to work!" echo " curl / tar packages installed to work!"
echo echo
echo " #=============================================================#" echo " #===========================================================#"
echo echo
echo "=== Removing possible leftover files / folders" echo "=== Removing previous files"
removeFilesDirs rm nwjs.tar.gz
rm -rf nwjs-sdk-v0.86.0-linux-x64
echo Done! echo Done!
echo echo
echo "=== Downloading nw.js (Ver. $NWJS_VER)" echo "=== Downloading nwjs"
curl https://dl.nwjs.io/v$NWJS_VER/nwjs-sdk-v$NWJS_VER-linux-x64.tar.gz -o nwjs.tar.gz curl https://dl.nwjs.io/v0.86.0/nwjs-sdk-v0.86.0-linux-x64.tar.gz -o nwjs.tar.gz
echo Done! echo Done!
echo echo
echo "=== Downloading SDL2 (Ver. $SDL_VER)" echo "=== Extracting nwjs"
curl -L https://github.com/libsdl-org/SDL/releases/download/release-$SDL_VER/SDL2-$SDL_VER-win32-x64.zip -o sdl2.zip
echo Done!
echo
echo "=== Extracting nw.js"
tar -xvzf nwjs.tar.gz tar -xvzf nwjs.tar.gz
echo Done! echo Done!
echo echo
echo "=== Extracting SDL2" echo "=== Prepare nwjs folder"
unzip -d sdl2 sdl2.zip
echo Done!
echo
echo "=== Prepare nw.js folder"
cd Nwjs cd Nwjs
rm -rf * rm -rf *
echo "" > .gitkeep echo "" > .gitkeep
cd .. cd ..
echo Done! echo Done!
echo
echo "=== Checking if Emu folder exists"
if ! [ -d Emu ]; then
echo "Creating Emu dir..."
mkdir Emu
fi
echo Done!
echo echo
echo "=== Moving files" echo "=== Moving files"
mv -f nwjs-sdk-v$NWJS_VER-linux-x64/* Nwjs/ mv -f nwjs-sdk-v0.86.0-linux-x64/* Nwjs/
mv -f sdl2/SDL2.dll Emu/
echo Done! echo Done!
echo echo
echo "=== Removing leftover files / folders" echo "=== Removing leftover files"
removeFilesDirs rm nwjs.tar.gz
rm -rf nwjs-sdk-v0.86.0-linux-x64
echo Done! echo Done!
echo echo
@ -118,7 +53,7 @@ chmod +x Nwjs/nw
echo Done! echo Done!
echo echo
echo -e "\033[1;32m==== Process Complete! ====\033[0m" echo "==== Process Complete! ===="
echo '---> In order to start Launcher, run "./launcher.sh"' echo '---> In order to start Launcher, run "./launcher.sh"'
echo '---> To update, run "./update.sh"' echo '---> To update, run "./update.sh"'
echo echo
@ -127,5 +62,4 @@ echo
echo Also - You will need wine to run fpPS4 on non-windows systems! echo Also - You will need wine to run fpPS4 on non-windows systems!
echo The installation process may change depending of which distro you are running. echo The installation process may change depending of which distro you are running.
echo echo
read -p "Press [ENTER] to exit" read -p "Press [ENTER] to exit"
clear