Merge branch 'neutralino' into 'main'

Merge neutralino to main

See merge request KRypt0n_/an-anime-game-launcher!20
This commit is contained in:
Observer KRypt0n_ 2022-01-12 17:39:44 +00:00
commit 8cade1a391
186 changed files with 10280 additions and 5549 deletions

31
.gitignore vendored
View file

@ -1,16 +1,17 @@
node_modules
dist
public/css/*
!public/css/hint.min.css
public/js
repository-pics/logo.xcf
repository-pics/logos
package-lock.json
.lite_workspace.lua
yarn.lock
wineprefix-installation.log
deletefiles.txt
predownload_resources.json
package-lock.json
Audio_English(US)_2.3.0.zip
*.AppImage
/bin
/dist
/bundle
/node_modules
/repository-pics/**/*.xcf
neutralino.js
.storage
.tmp
*.log

148
README.md
View file

@ -14,7 +14,7 @@
| Game version | Launcher version | Patch version |
| :---: | :---: | :---: |
| 2.3.0 | 1.9.1 | 2.3.0 stable ✅ |
| 2.4.0 | 2.0.0 beta | 2.4.0 stable ✅ |
We have our own [An Anime Game](https://discord.gg/ck37X6UWBp) discord server where you can ask any questions
@ -24,7 +24,7 @@ Download AppImage from [Releases](https://gitlab.com/KRypt0n_/an-anime-game-laun
### For arch users
This launcher is also available as the [an-anime-game-launcher](https://aur.archlinux.org/packages/an-anime-game-launcher) AUR repository
This launcher is also available as the [an-anime-game-launcher-bin](https://aur.archlinux.org/packages/an-anime-game-launcher-bin) AUR repository
<br>
@ -34,7 +34,7 @@ This launcher is also available as the [an-anime-game-launcher](https://aur.arch
<img src="repository-pics/stats/2.2.0.png">
### 2.3.0 — 73 total
### 2.3.0 — 99 total
<img src="repository-pics/stats/2.3.0.png">
@ -48,24 +48,34 @@ To work this launcher requires
| Name | Description |
| --- | --- |
| webkit2gtk | To run Neutralino apps |
| libappindicator-gtk3 | To run Neutralino apps |
| unzip | To unpack zip archives (DXVKs / wines) |
| tar | To unpack tar archives (DXVKs / wines) |
| git | To check for new versions of the launcher |
| curl | To download archives with game, voice data, runners and so on |
| xdelta3 | To apply the patch to the game |
| cabextract | To install fonts to the wine prefix |
| notify-send | To send system notifications |
## Install
### apt-get
```sh
sudo apt-get install unzip tar git xdelta3 cabextract
sudo apt-get install unzip tar git curl xdelta3 cabextract notify-send
```
### pacman
```sh
sudo pacman -Syu unzip tar git xdelta3 cabextract
sudo pacman -Syu unzip tar git curl xdelta3 cabextract notify-send
```
### dnf
```sh
sudo dnf install unzip tar git curl xdelta cabextract notify-send
```
### dnf
@ -88,65 +98,103 @@ They're required only for some specific functions
# Development
## Build from source
## Download
```sh
npm run build
git clone https://gitlab.com/KRypt0n_/an-anime-game-launcher
cd an-anime-game-launcher
yarn
yarn neu update
```
## Run from source
## Run
```sh
npm start
yarn dev
```
## Build
```sh
yarn build
```
## Bundle to AppImage
```sh
yarn bundle
```
# Roadmap
### ✓ <s>To 1.0.0 release</s>
This is our current roadmap goals. You can find older ones [here](ROADMAP.md)
* <s>Fix AppImage builds</s> *(0.3.0)*
* <s>Parse background banners from the game's API ([notabug issue #1](https://notabug.org/nobody/an-anime-game-launcher/issues/1), [notabug pull request #2](https://notabug.org/nobody/an-anime-game-launcher/pulls/2))</s> *(0.3.0)*
* <s>Update launcher logo</s> *(0.4.0)*
* <s>Cache launcher background picture ([notabug pull request #6](https://notabug.org/nobody/an-anime-game-launcher/pulls/6))</s> *(0.4.0)*
* <s>Make Proton-GE default compatibility tool and fix game input issues</s> (added runners manager) *(0.5.0)*
* <s>Add preferences menu</s> *(0.5.0)*
* <s>Add additional telemetry checking</s> *(0.6.0)*
* <s>Add DXVK downloading in settings</s> *(0.6.0)*
* <s>Make participation in the anonymous analytics request</s> *(0.8.0)*
* <s>Add launcher updates notifications</s> *(1.0.0-rc1)*
* <s>Make automatic patch state parsing</s> *(1.0.0-rc1)*
## ➤ To 3.0.0 release
### ➤ To 2.0.0 release
### 2.0.0 release goals - moving launcher to Neutralino
* <s>Add runners environmental variables manager</s> *(1.1.0)*
* <s>Add outdated files deletion when new game's update releases</s> *(1.1.0)*
* <s>Add installed packages deletion</s> *(1.2.0)*
* <s>Add voice packs support</s> (Thank @Maroxy for the developments in the previous versions) *(1.3.0)*
* <s>Color variants for progress bar's downloading text dependent on the background picture primary color</s> *(1.4.0, LAB-based in 1.5.3)*
* <s>Playing statistics</s> *(1.4.1)*
* <s>MangoHud support</s> (added HUD selector) *(1.5.0)*
* <s>Add vkBasalt support and "shaders library"</s> *(1.5.0)*
- [yagocl's](https://notabug.org/Krock/GI-on-Linux/src/master/static/vkBasalt_yagocl.conf) basic sharpening preset *(without pictures)*
- [notahuman's](https://notabug.org/Krock/GI-on-Linux/src/master/static/vkBasalt_notahuman.conf) prime preset v2
* <s>Make shaders manager hidden if vkBasalt is not installed</s> *(1.5.4)*
* <s>Make MangoHud option hidden if it is not installed</s> *(1.5.4)*
* <s>GameMode integration ([notabug issue 28](https://notabug.org/nobody/an-anime-game-launcher/issues/28), [notabug pull request 30](https://notabug.org/nobody/an-anime-game-launcher/pulls/30))</s> *(1.5.8)*
* <s>Hybrid GPU integration ([notabug issue 29](https://notabug.org/nobody/an-anime-game-launcher/issues/29), [notabug pull request 33](https://notabug.org/nobody/an-anime-game-launcher/pulls/33))</s> *(1.6.0)*
* <s>Add winetricks auto-downloading when new prefix creates so it is no longer required</s> *(1.6.0)*
* <s>DXVK logs auto-deletion option</s> *(1.6.0)*
* <s>Add default wine version to download</s> (Proton-6.20-GE-1) *(1.6.0)*
* <s>Add dark theme support for settings menu</s> *(1.7.0)*
* <s>Add winetricks and winecfg buttons to settings ([notabug issue 35](https://notabug.org/nobody/an-anime-game-launcher/issues/35))</s> *(1.8.0)*
* <s>Wine prefix folder selection ([notabug issue 37](https://notabug.org/nobody/an-anime-game-launcher/issues/37))</s> *(1.8.0)*
* <s>Use auto-downloaded winetricks in settings menu</s> *(1.9.0, !14)*
* <s>Use `winecfg.exe` from the installed runner in settings menu</s> *(1.9.0, !14)*
* <s>Fix voice data installation</s> *(1.9.0, !15)*
* <s>Add fps unlocker option</s> *(1.9.0, !15)*
#### Core functionality
* <s>Make `constants` class to store launcher's constants</s>
* <s>Make `Downloader` class to download files</s>
* <s>Make `Archive` class to work with archives</s>
* <s>Make `DXVK` class to manage DXVK installations</s>
* <s>Make `Runners` class to manage wines installations</s>
* <s>Make `Configs` class to manage launcher's configs</s>
* <s>Make `Game` class to control game-related features</s>
* <s>Ability to parse current installed version</s>
* <s>Ability to get latest available version</s>
* <s>Ability to download and install updates</s>
* <s>Make `Voice` class to control voice packages-related features</s>
* <s>Ability to parse current installed voice packs and get selected one</s>
* <s>Ability to get latest available voice packs</s>
* <s>Ability to download and install updates</s>
* <s>Make `Patch` class to control patch-related features</s>
* <s>Ability to get current installed patch</s>
* <s>Ability to get latest available patch</s>
* <s>Ability to download and install it</s>
* <s>Add project binaries bundling</s>
* <s>AppImage</s>
#### Launcher functions
* <s>Make `Launcher` class to manage launcher-related features</s>
* <s>Downloading progress</s>
* <s>Launcher state functionality</s>
* <s>Game launch available</s>
* <s>Game update (installation) required</s>
* <s>Voice data update (installation) required</s>
* <s>Patch unavailable</s>
* <s>Test patch available</s>
* Make Svelte components
* <s>Checkbox</s>
* <s>Selectbox</s>
* <s>SelectionList</s>
* <s>PropertiesEditor</s>
* <s>Add `svelte-i18n`</s>
* <s>Telemetry checking</s>
* <s>Tooltips for some options</s>
* <s>Debugger</s>
* <s>Splash screen</s>
* <s>Theming system</s>
* <s>Game pre-installation</s>
* <s>Default runner and DXVK auto-installation</s>
* <s>Discord RPC settings</s>
* <s>Proper wine process monitoring</s>
* <s>Ability to hide some runners families</s>
* <s>Ability to change the temp directory where the launcher should download some files</s>
* <s>Shaders menu</s>
* Dark progress bar design
* Statistics window
* Launcher auto-updates
* Changelog window
* Rewrite sass code, provide more flexible theming ability
### Features
* <s>Use `LauncherLib.getGameVersion` function instead of the `config.json`'s `version` property</s> *(deprecated due to the new core functions)*
* <s>Fix button flickering at start when the launcher's state updates</s> *(fixed due to the new framework usage and proper state updating)*
* Add downloading pause button
* Move project to Vue
* Use `LauncherLib.getGameVersion` function instead of the `config.json`'s `version` property
* Fix button flickering at start when the launcher's state updates
* Game's update pre-installation
* Screenshots explorer
* Add Patch category in settings menu with
- Always participate in patches testing

46
ROADMAP.md Normal file
View file

@ -0,0 +1,46 @@
# Roadmap
This file is a roadmap archive. You can see here which journey we made to make the launcher looks like it looks
And that's not a final! Our future goals you can find in [readme](README.md)
## ✓ <s>To 1.0.0 release</s>
* <s>Fix AppImage builds</s> *(0.3.0)*
* <s>Parse background banners from the game's API ([notabug issue #1](https://notabug.org/nobody/an-anime-game-launcher/issues/1), [notabug pull request #2](https://notabug.org/nobody/an-anime-game-launcher/pulls/2))</s> *(0.3.0)*
* <s>Update launcher logo</s> *(0.4.0)*
* <s>Cache launcher background picture ([notabug pull request #6](https://notabug.org/nobody/an-anime-game-launcher/pulls/6))</s> *(0.4.0)*
* <s>Make Proton-GE default compatibility tool and fix game input issues</s> (added runners manager) *(0.5.0)*
* <s>Add preferences menu</s> *(0.5.0)*
* <s>Add additional telemetry checking</s> *(0.6.0)*
* <s>Add DXVK downloading in settings</s> *(0.6.0)*
* <s>Make participation in the anonymous analytics request</s> *(0.8.0)*
* <s>Add launcher updates notifications</s> *(1.0.0-rc1)*
* <s>Make automatic patch state parsing</s> *(1.0.0-rc1)*
## ✓ <s>To 2.0.0 release</s>
* <s>Add runners environmental variables manager</s> *(1.1.0)*
* <s>Add outdated files deletion when new game's update releases</s> *(1.1.0)*
* <s>Add installed packages deletion</s> *(1.2.0)*
* <s>Add voice packs support</s> (Thank @Maroxy for the developments in the previous versions) *(1.3.0)*
* <s>Color variants for progress bar's downloading text dependent on the background picture primary color</s> *(1.4.0, LAB-based in 1.5.3)*
* <s>Playing statistics</s> *(1.4.1)*
* <s>MangoHud support</s> (added HUD selector) *(1.5.0)*
* <s>Add vkBasalt support and "shaders library"</s> *(1.5.0)*
- [yagocl's](https://notabug.org/Krock/GI-on-Linux/src/master/static/vkBasalt_yagocl.conf) basic sharpening preset *(without pictures)*
- [notahuman's](https://notabug.org/Krock/GI-on-Linux/src/master/static/vkBasalt_notahuman.conf) prime preset v2
* <s>Make shaders manager hidden if vkBasalt is not installed</s> *(1.5.4)*
* <s>Make MangoHud option hidden if it is not installed</s> *(1.5.4)*
* <s>GameMode integration ([notabug issue 28](https://notabug.org/nobody/an-anime-game-launcher/issues/28), [notabug pull request 30](https://notabug.org/nobody/an-anime-game-launcher/pulls/30))</s> *(1.5.8)*
* <s>Hybrid GPU integration ([notabug issue 29](https://notabug.org/nobody/an-anime-game-launcher/issues/29), [notabug pull request 33](https://notabug.org/nobody/an-anime-game-launcher/pulls/33))</s> *(1.6.0)*
* <s>Add winetricks auto-downloading when new prefix creates so it is no longer required</s> *(1.6.0)*
* <s>DXVK logs auto-deletion option</s> *(1.6.0)*
* <s>Add default wine version to download</s> (Proton-6.20-GE-1) *(1.6.0)*
* <s>Add dark theme support for settings menu</s> *(1.7.0)*
* <s>Add winetricks and winecfg buttons to settings ([notabug issue 35](https://notabug.org/nobody/an-anime-game-launcher/issues/35))</s> *(1.8.0)*
* <s>Wine prefix folder selection ([notabug issue 37](https://notabug.org/nobody/an-anime-game-launcher/issues/37))</s> *(1.8.0)*
* <s>Use auto-downloaded winetricks in settings menu</s> *(1.9.0, !14)*
* <s>Use `winecfg.exe` from the installed runner in settings menu</s> *(1.9.0, !14)*
* <s>Fix voice data installation</s> *(1.9.0, !15)*
* <s>Add fps unlocker option</s> *(1.9.0, !15)*

178
entry.js
View file

@ -1,178 +0,0 @@
const {
app,
BrowserWindow,
ipcMain,
Notification,
shell,
nativeImage,
nativeTheme,
dialog
} = require('electron');
const path = require('path');
require('electron-store').initRenderer();
let mainWindow, analyticsWindow, settingsWindow, splashWindow;
ipcMain.handle('hide-window', () => mainWindow.hide());
ipcMain.handle('show-window', () => mainWindow.show());
ipcMain.on('notification', (event, args) => {
args.icon = nativeImage.createFromPath(args.icon ?? path.join(__dirname, 'public', 'images', 'baal64-transparent.png'));
new Notification(args).show();
});
ipcMain.on('is-window-dark', (e) => e.returnValue = nativeTheme.shouldUseDarkColors);
ipcMain.handle('open-settings', () => {
settingsWindow = new BrowserWindow ({
width: 900,
height: 600,
webPreferences: {
nodeIntegration: true,
contextIsolation: false
},
icon: path.join(__dirname, 'public', 'images', 'icons', '64x64.png'),
autoHideMenuBar: true,
resizable: false,
parent: mainWindow,
modal: true,
show: false
});
settingsWindow.loadFile(path.join(__dirname, 'public', 'html', 'settings.html'));
settingsWindow.once('ready-to-show', settingsWindow.show);
});
ipcMain.handle('open-analytics-participation', () => {
analyticsWindow = new BrowserWindow ({
width: 700,
height: 500,
webPreferences: {
nodeIntegration: true,
contextIsolation: false
},
icon: path.join(__dirname, 'public', 'images', 'icons', '64x64.png'),
autoHideMenuBar: true,
resizable: false,
parent: mainWindow,
modal: true,
show: false
});
analyticsWindow.loadFile(path.join(__dirname, 'public', 'html', 'analytics.html'));
analyticsWindow.once('ready-to-show', analyticsWindow.show);
});
ipcMain.handle('hide-analytics-participation', () => analyticsWindow.close());
// https://www.electronjs.org/docs/latest/api/browser-window/#class-browserwindow
function createWindow ()
{
// Launcher
mainWindow = new BrowserWindow ({
width: 1280,
height: 700,
webPreferences: {
nodeIntegration: true,
contextIsolation: false
},
icon: path.join(__dirname, 'public', 'images', 'icons', '64x64.png'),
autoHideMenuBar: true,
resizable: false,
show: false
});
mainWindow.loadFile(path.join(__dirname, 'public', 'html', 'index.html'));
// open URLs in Browser instead of an pop-up in electron app.
mainWindow.webContents.setWindowOpenHandler(({ url }) => {
shell.openExternal(url);
return { action: 'deny' };
});
// mainWindow.webContents.openDevTools();
// Splash
splashWindow = new BrowserWindow({
width: 250,
height: 320,
transparent: true,
frame: false,
icon: path.join(__dirname, 'public', 'images', 'icons', '64x64.png'),
autoHideMenuBar: true
});
splashWindow.loadFile(path.join(__dirname, 'public', 'splash', 'index.html'));
splashWindow.center();
}
// This method will be called when Electron has finished
// initialization and is ready to create browser windows.
// Some APIs can only be used after this event occurs.
app.whenReady().then(() => {
createWindow();
app.on('activate', () => {
// On macOS it's common to re-create a window in the app when the
// dock icon is clicked and there are no other windows open.
if (BrowserWindow.getAllWindows().length === 0)
createWindow();
});
ipcMain.handle('loaded', () => {
setTimeout(() => {
splashWindow.close();
mainWindow.show();
}, 1000);
});
// This has to be here otherwise webContents is invalid
ipcMain.on('change-lang', (event, args) => {
mainWindow.webContents.send('change-lang', { 'lang': args.lang });
});
ipcMain.on('change-voicepack', () => {
mainWindow.webContents.send('change-voicepack');
});
ipcMain.on('prefix-select', async () => {
const result = await dialog.showOpenDialog({
properties: ['openDirectory']
});
if (result.filePaths.length > 0)
{
mainWindow.webContents.send('change-prefix', {
'type': 'change',
'dir': result.filePaths[0]
});
}
});
ipcMain.on('prefix-reset', async () => {
mainWindow.webContents.send('change-prefix', {
'type': 'reset'
});
});
ipcMain.on('prefix-changed', async () => {
settingsWindow.webContents.send('prefix-changed');
});
ipcMain.on('rpc-toggle', () => mainWindow.webContents.send('rpc-toggle'));
});
// Quit when all windows are closed, except on macOS. There, it's common
// for applications and their menu bar to stay active until the user quits
// explicitly with Cmd + Q.
app.on('window-all-closed', () => {
if (process.platform !== 'darwin')
app.quit();
});

17
index.html Normal file
View file

@ -0,0 +1,17 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" lang="sass" href="/src/sass/index.sass" />
<link rel="stylesheet" href="/src/css/hint.min.css" />
</head>
<body data-theme="light">
<div id="app"></div>
<script src="neutralino.js"></script>
<script type="module" src="/src/pages/index.ts" lang="ts"></script>
</body>
</html>

43
neutralino.config.json Normal file
View file

@ -0,0 +1,43 @@
{
"applicationId": "com.krypt0nn.an-anime-game-launcher",
"version": "2.0.0-rc1",
"defaultMode": "window",
"port": 0,
"documentRoot": "/bundle/",
"url": "/",
"enableServer": true,
"enableNativeAPI": true,
"exportAuthInfo": true,
"logging": {
"enabled": false,
"writeToLogFile": false
},
"nativeBlockList": [],
"globalVariables": {},
"modes": {
"window": {
"title": "An Anime Game Launcher",
"width": 1280,
"height": 700,
"fullScreen": false,
"alwaysOnTop": false,
"icon": "/public/icons/64x64.png",
"enableInspector": false,
"borderless": false,
"maximize": false,
"hidden": true,
"resizable": false,
"exitProcessOnClose": false
},
"browser": {},
"cloud": {}
},
"cli": {
"binaryName": "an-anime-game-launcher",
"resourcesPath": "/bundle/",
"extensionsPath": "/extensions/",
"clientLibrary": "/public/neutralino.js",
"binaryVersion": "4.1.0",
"clientVersion": "3.0.0"
}
}

View file

@ -1,62 +1,33 @@
{
"name": "an-anime-game-launcher",
"version": "1.9.1",
"description": "An Anime Game Linux Launcher",
"author": "Nikita Podvirnyy <suimin.tu.mu.ga.mi@gmail.com>",
"contributors": [
"Marie Piontek <marie@kaifa.ch> (https://marie.omg.lol)"
],
"license": "GPL-3.0",
"main": "entry.js",
"scripts": {
"dev": "tsc && sass src/sass:public/css -s compressed --no-source-map",
"clear": "rm -r ./public/js",
"start": "npm run dev && electron .",
"build": "npm run clear && npm run dev && electron-builder --linux"
},
"build": {
"productName": "An Anime Game Linux Launcher",
"artifactName": "${productName}-${version}.${ext}",
"appId": "com.krypt0nn.an-anime-game-linux-launcher",
"directories": {
"output": "dist"
},
"files": [
"public/**/*",
"entry.js",
"package.json"
],
"linux": {
"icon": "public/images/icons",
"category": "Game",
"target": [
{
"target": "AppImage",
"arch": [
"x64"
]
}
]
}
},
"devDependencies": {
"@types/command-exists": "^1.2.0",
"@types/discord-rpc": "^4.0.0",
"@types/semver": "^7.3.9",
"electron": "^16.0.4",
"electron-builder": "^22.14.5",
"sass": "^1.45.0",
"typescript": "^4.5.4"
},
"dependencies": {
"cash-dom": "^8.1.0",
"command-exists": "^1.2.9",
"discord-rpc": "^4.0.1",
"dbus-next": "^0.10.2",
"electron-store": "^8.0.1",
"follow-redirects": "^1.14.6",
"get-pixels": "^3.3.3",
"got": "^11.8.3",
"semver": "^7.3.5"
}
"name": "an-anime-game-launcher",
"version": "2.0.0-rc1",
"license": "GPL-3.0",
"type": "module",
"scripts": {
"neu": "neu",
"dev": "vite build && neu run --disable-auto-reload",
"build": "vite build && rm -rf dist/an-anime-game-launcher/public && mkdir -p dist/an-anime-game-launcher/public && cp -r public dist/an-anime-game-launcher && neu build --release",
"bundle": "node scripts/bundle-appimage.cjs",
"check": "svelte-check --tsconfig ./tsconfig.json"
},
"dependencies": {
"js-md5": "^0.7.3",
"semver": "^7.3.5",
"svelte-i18n": "^3.3.13",
"yaml": "^1.10.2"
},
"devDependencies": {
"@neutralinojs/neu": "^9.0.0",
"@sveltejs/vite-plugin-svelte": "^1.0.0-next.34",
"@tsconfig/svelte": "^3.0.0",
"@types/js-md5": "^0.4.3",
"neutralino-appimage-bundler": "^1.3.2",
"sass": "^1.47.0",
"svelte": "^3.45.0",
"svelte-check": "^2.2.12",
"svelte-preprocess": "^4.10.1",
"tslib": "^2.3.1",
"typescript": "^4.5.4",
"vite": "^2.7.10"
}
}

BIN
public/discord-rpc/discord-rpc Executable file

Binary file not shown.

Binary file not shown.

View file

@ -1,57 +1,62 @@
[
{
"version": "1.9.3",
"uri": "https://github.com/doitsujin/dxvk/releases/download/v1.9.3/dxvk-1.9.3.tar.gz",
"recommended": true
},
{
"version": "1.9.2",
"uri": "https://github.com/doitsujin/dxvk/releases/download/v1.9.2/dxvk-1.9.2.tar.gz",
"recommendable": true
"recommended": true
},
{
"version": "1.9.1",
"uri": "https://github.com/doitsujin/dxvk/releases/download/v1.9.1/dxvk-1.9.1.tar.gz",
"recommendable": true
"recommended": true
},
{
"version": "1.9",
"uri": "https://github.com/doitsujin/dxvk/releases/download/v1.9/dxvk-1.9.tar.gz",
"recommendable": true
"recommended": true
},
{
"version": "1.8.1",
"uri": "https://github.com/doitsujin/dxvk/releases/download/v1.8.1/dxvk-1.8.1.tar.gz",
"recommendable": true
"recommended": true
},
{
"version": "1.8",
"uri": "https://github.com/doitsujin/dxvk/releases/download/v1.8/dxvk-1.8.tar.gz",
"recommendable": true
"recommended": true
},
{
"version": "1.7.3",
"uri": "https://github.com/doitsujin/dxvk/releases/download/v1.7.3/dxvk-1.7.3.tar.gz",
"recommendable": false
"recommended": false
},
{
"version": "1.7.2",
"uri": "https://github.com/doitsujin/dxvk/releases/download/v1.7.2/dxvk-1.7.2.tar.gz",
"recommendable": false
"recommended": false
},
{
"version": "1.7.1",
"uri": "https://github.com/doitsujin/dxvk/releases/download/v1.7.1/dxvk-1.7.1.tar.gz",
"recommendable": false
"recommended": false
},
{
"version": "1.7",
"uri": "https://github.com/doitsujin/dxvk/releases/download/v1.7/dxvk-1.7.tar.gz",
"recommendable": false
"recommended": false
},
{
"version": "1.6.1",
"uri": "https://github.com/doitsujin/dxvk/releases/download/v1.6.1/dxvk-1.6.1.tar.gz",
"recommendable": false
"recommended": false
},
{
"version": "1.6",
"uri": "https://github.com/doitsujin/dxvk/releases/download/v1.6/dxvk-1.6.tar.gz",
"recommendable": false
"recommended": false
}
]

View file

@ -1,51 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<!-- CSS styles -->
<link rel="stylesheet" href="../css/components.css">
<link rel="stylesheet" href="../css/analytics.css">
<link rel="stylesheet" href="../css/hint.min.css">
<!-- JS scripts -->
<script>require('../js/lib/components.js');</script>
<script>require('../js/analytics.js');</script>
<title i18id="AnalyticsTitle">Yanfei's commission...</title>
</head>
<body theme="light">
<div class="header">
<img src="../images/yanfei.png">
<h2 i18id="ParticipateInAnalytics">Participate in anonymous data collection</h2>
</div>
<p i18id="AnalyticsText1">To count the active user base for Linux, Yanfei would like to collect your IP address everytime the game updates</p>
<p i18id="AnalyticsText2">The IP address will be hashed for security purpose</p>
<div class="footer">
<div class="hint--top hint--large" data-hint="Allow Yanfei to store the country your IP address registered in to make statistics more detailed. No other data than the country will be stored">
<div class="checkbox checkbox-active selectable-checkbox" id="share-country">
<span i18id="AnalyticsShareCountry">Share country</span>
<div class="checkbox-mark">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="45.701px" height="45.7px" viewBox="0 0 45.701 45.7" xml:space="preserve"><g><g><path d="M20.687,38.332c-2.072,2.072-5.434,2.072-7.505,0L1.554,26.704c-2.072-2.071-2.072-5.433,0-7.504 c2.071-2.072,5.433-2.072,7.505,0l6.928,6.927c0.523,0.522,1.372,0.522,1.896,0L36.642,7.368c2.071-2.072,5.433-2.072,7.505,0 c0.995,0.995,1.554,2.345,1.554,3.752c0,1.407-0.559,2.757-1.554,3.752L20.687,38.332z"/></g></g></svg>
</div>
</div>
</div>
<div class="actions">
<button class="button button-primary" id="participate" i18id="Participate">Participate</button>
<div class="actions-right">
<button class="button" id="skip" i18id="Skip">Skip</button>
<button class="button" id="skip-and-ignore" i18id="SkipAndDontAsk">Skip and don't ask again</button>
</div>
</div>
</div>
</body>
</html>

View file

@ -1,44 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<!-- CSS styles -->
<link rel="stylesheet" href="../css/index.css">
<link rel="stylesheet" href="../css/hint.min.css">
<!-- JS scripts -->
<script>require('../js/index.js');</script>
<title>An Anime Game Linux Launcher</title>
</head>
<body theme="light">
<img class="background">
<div id="downloader-panel" class="dark" style="display: none">
<div id="downloader-label">
<span id="downloaded">Downloading</span>
<span id="speed"></span>
<span id="eta"></span>
</div>
<div class="progress-bar" id="downloader">
<div class="progress"></div>
</div>
</div>
<div id="launcher-content">
<iframe id="social" scrolling="no" style="position: absolute; border: 0; top: 0; left: 0;" width="100%" height="100%"></iframe>
</div>
<div id="settings">
<img src="../images/gear.png" class="unactive">
<img src="../images/gear-active.png" class="active">
</div>
<button class="button" id="launch" i18id="Launch">Launch</button>
</body>
</html>

View file

@ -1,360 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<!-- CSS styles -->
<link rel="stylesheet" href="../css/components.css">
<link rel="stylesheet" href="../css/settings.css">
<link rel="stylesheet" href="../css/hint.min.css">
<!-- JS scripts -->
<script>require('../js/lib/components.js');</script>
<script>require('../js/settings.js');</script>
<title i18id="SettingsTitle">Settings</title>
</head>
<body theme="light">
<div class="menu">
<div class="menu-item menu-item-active" anchor="general" i18id="General">General</div>
<div class="menu-item" anchor="enhancements" i18id="Enhancements">Enhancements</div>
<div class="menu-item" anchor="runners" i18id="WineVersion">Wine version</div>
<div class="menu-item" anchor="dxvks" i18id="DXVK">DXVK</div>
<div class="menu-item" anchor="shaders" i18id="Shaders">Shaders</div>
<div class="menu-item" anchor="environment" i18id="Environment">Environment</div>
<div class="menu-item" id="discord-rpc-conf-btn" anchor="discord-rpc-conf" i18id="DRPConf" style="display: none;">Discord RPC</div>
</div>
<div class="settings">
<div class="settings-item" id="general">
<h2 i18id="General">General</h2>
<div class="launcher-stats">
<img src="../images/rank.png">
<div class="level hint--bottom hint--medium">1</div>
<div class="stats">
<p i18id="Statistics">Statistics</p>
<div class="time-spent">
<span i18id="YouPlayedFor">You've played for</span>
<span id="play-hours"></span>
<span i18id="hours">hours</span>
<span id="play-minutes"></span>
<span i18id="minutes">minutes</span>
</div>
<!--
This is an instrument-surprise which will be used later :D
Please, don't mention it in our discord server
I wanna make a great update at christmas
-->
<!-- <div class="badges">
<div class="hint--bottom hint--medium" data-hint="Pioneer: be one of the first launcher users">
<img src="../images/badges/torch.png">
</div>
<div class="hint--bottom hint--medium" data-hint="Pioneer: be one of the first launcher users">
<img src="../images/badges/torch.png">
</div>
<div class="hint--bottom hint--medium" data-hint="Pioneer: be one of the first launcher users">
<img src="../images/badges/torch.png">
</div>
</div> -->
</div>
</div>
<div class="select" id="language">
<span i18id="Language">Language</span>
<div class="select-options">
<ul>
<li value="en-us">English (US)</li>
<li value="zh-cn">中文(简化)(Chinese Simplified)</li>
<li value="de-de">Deutsch (German)</li>
<li value="fr-fr">Français (French)</li>
<li value="id-id">Indonesia (Indonesian)</li>
<li value="ja-jp">日本語 (Japanese)</li>
<li value="ko-kr">한국어 (Korean)</li>
<li value="pt-pt">Português (Portuguese)</li>
<li value="ru-ru">Pусский (Russian)</li>
<li value="es-es">Español (Spanish)</li>
<li value="th-th">ภาษาไทย (Thai)</li>
<li value="zh-tw">中文(繁體)(Chinese Traditional)</li>
<li value="vi-vn">Tiếng Việt (Vietnamese)</li>
</ul>
</div>
<div class="selected-item">
<span>English (US)</span>
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 330.002 330.002" xml:space="preserve"><path d="M233.252,155.997L120.752,6.001c-4.972-6.628-14.372-7.97-21-3c-6.628,4.971-7.971,14.373-3,21 l105.75,140.997L96.752,306.001c-4.971,6.627-3.627,16.03,3,21c2.698,2.024,5.856,3.001,8.988,3.001 c4.561,0,9.065-2.072,12.012-6.001l112.5-150.004C237.252,168.664,237.252,161.33,233.252,155.997z"/></svg>
</div>
</div>
<br>
<div class="select" id="voicepack">
<span i18id="Voice">Voice Pack</span>
<div class="select-options">
<ul>
<li value="en-us">English (US)</li>
<li value="zh-cn">汉语 (Chinese)</li>
<li value="ja-jp">日本語 (Japanese)</li>
<li value="ko-kr">한국어 (Korean)</li>
</ul>
</div>
<div class="selected-item hint--top hint--medium">
<span>English (US)</span>
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 330.002 330.002" xml:space="preserve"><path d="M233.252,155.997L120.752,6.001c-4.972-6.628-14.372-7.97-21-3c-6.628,4.971-7.971,14.373-3,21 l105.75,140.997L96.752,306.001c-4.971,6.627-3.627,16.03,3,21c2.698,2.024,5.856,3.001,8.988,3.001 c4.561,0,9.065-2.072,12.012-6.001l112.5-150.004C237.252,168.664,237.252,161.33,233.252,155.997z"/></svg>
</div>
</div>
<br>
<div class="select" id="gpu">
<span>GPU</span>
<div class="select-options">
<ul>
<li value="default">Default</li>
</ul>
</div>
<div class="selected-item">
<span>Default</span>
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 330.002 330.002" xml:space="preserve"><path d="M233.252,155.997L120.752,6.001c-4.972-6.628-14.372-7.97-21-3c-6.628,4.971-7.971,14.373-3,21 l105.75,140.997L96.752,306.001c-4.971,6.627-3.627,16.03,3,21c2.698,2.024,5.856,3.001,8.988,3.001 c4.561,0,9.065-2.072,12.012-6.001l112.5-150.004C237.252,168.664,237.252,161.33,233.252,155.997z"/></svg>
</div>
</div>
<br>
<div class="select" id="theme">
<span i18id="Theme">Theme</span>
<div class="select-options">
<ul>
<li value="light" i18id="Light">Light</li>
<li value="dark" i18id="Dark">Dark</li>
<li value="system" i18id="System">System</li>
</ul>
</div>
<div class="selected-item">
<span i18id="System">System</span>
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 330.002 330.002" xml:space="preserve"><path d="M233.252,155.997L120.752,6.001c-4.972-6.628-14.372-7.97-21-3c-6.628,4.971-7.971,14.373-3,21 l105.75,140.997L96.752,306.001c-4.971,6.627-3.627,16.03,3,21c2.698,2.024,5.856,3.001,8.988,3.001 c4.561,0,9.065-2.072,12.012-6.001l112.5-150.004C237.252,168.664,237.252,161.33,233.252,155.997z"/></svg>
</div>
</div>
<br>
<div class="checkbox" id="discord-rpc">
Discord RPC
<div class="checkbox-mark">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="45.701px" height="45.7px" viewBox="0 0 45.701 45.7" xml:space="preserve"><g><g><path d="M20.687,38.332c-2.072,2.072-5.434,2.072-7.505,0L1.554,26.704c-2.072-2.071-2.072-5.433,0-7.504 c2.071-2.072,5.433-2.072,7.505,0l6.928,6.927c0.523,0.522,1.372,0.522,1.896,0L36.642,7.368c2.071-2.072,5.433-2.072,7.505,0 c0.995,0.995,1.554,2.345,1.554,3.752c0,1.407-0.559,2.757-1.554,3.752L20.687,38.332z"/></g></g></svg>
</div>
</div>
<br><br>
<div class="directory-selector" id="prefix">
<span i18id="Prefix">Prefix</span>
<input readonly>
<div>
<button class="button hint--top hint--small" id="choose-location">
<svg width="21px" height="21px" viewBox="0 0 21 21" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" transform="translate(3 4)"><path d="m.5 1.5v9c0 1.1045695.8954305 2 2 2h10c1.1045695 0 2-.8954305 2-2v-6.00280762c.0007656-1.05436179-.8150774-1.91816512-1.8499357-1.99451426l-.1500643-.00468356-5 .00200544-2-2h-4c-.55228475 0-1 .44771525-1 1z"/><path d="m.5 2.5h7"/></g></svg>
</button>
<button class="button hint--top hint--small" id="reset-location">
<svg width="15px" height="15px" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M4.85355 2.14645C5.04882 2.34171 5.04882 2.65829 4.85355 2.85355L3.70711 4H9C11.4853 4 13.5 6.01472 13.5 8.5C13.5 10.9853 11.4853 13 9 13H5C4.72386 13 4.5 12.7761 4.5 12.5C4.5 12.2239 4.72386 12 5 12H9C10.933 12 12.5 10.433 12.5 8.5C12.5 6.567 10.933 5 9 5H3.70711L4.85355 6.14645C5.04882 6.34171 5.04882 6.65829 4.85355 6.85355C4.65829 7.04882 4.34171 7.04882 4.14645 6.85355L2.14645 4.85355C1.95118 4.65829 1.95118 4.34171 2.14645 4.14645L4.14645 2.14645C4.34171 1.95118 4.65829 1.95118 4.85355 2.14645Z" fill="currentColor"/></svg>
</button>
</div>
</div>
<br><br>
<div id="general-action-buttons">
<button class="button" id="launcher-folder" i18id="LauncherFolder">launcher folder</button>
<button class="button" id="winetricks">winetricks</button>
<button class="button" id="winecfg">winecfg</button>
</div>
<br>
</div>
<div class="settings-item" id="enhancements">
<h2 i18id="Enhancements">Enhancements</h2>
<div class="select" id="hud">
<span>HUD</span>
<div class="select-options">
<ul>
<li value="none">None</li>
<li value="dxvk">DXVK</li>
<li value="mangohud">MangoHud</li>
</ul>
</div>
<div class="selected-item">
<span>None</span>
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 330.002 330.002" xml:space="preserve"><path d="M233.252,155.997L120.752,6.001c-4.972-6.628-14.372-7.97-21-3c-6.628,4.971-7.971,14.373-3,21 l105.75,140.997L96.752,306.001c-4.971,6.627-3.627,16.03,3,21c2.698,2.024,5.856,3.001,8.988,3.001 c4.561,0,9.065-2.072,12.012-6.001l112.5-150.004C237.252,168.664,237.252,161.33,233.252,155.997z"/></svg>
</div>
</div>
<br>
<div class="checkbox" id="gamemode">
GameMode
<div class="checkbox-mark">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="45.701px" height="45.7px" viewBox="0 0 45.701 45.7" xml:space="preserve"><g><g><path d="M20.687,38.332c-2.072,2.072-5.434,2.072-7.505,0L1.554,26.704c-2.072-2.071-2.072-5.433,0-7.504 c2.071-2.072,5.433-2.072,7.505,0l6.928,6.927c0.523,0.522,1.372,0.522,1.896,0L36.642,7.368c2.071-2.072,5.433-2.072,7.505,0 c0.995,0.995,1.554,2.345,1.554,3.752c0,1.407-0.559,2.757-1.554,3.752L20.687,38.332z"/></g></g></svg>
</div>
</div>
<br>
<div class="checkbox" id="fps-unlocker">
FPS Unlocker
<div class="checkbox-mark">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="45.701px" height="45.7px" viewBox="0 0 45.701 45.7" xml:space="preserve"><g><g><path d="M20.687,38.332c-2.072,2.072-5.434,2.072-7.505,0L1.554,26.704c-2.072-2.071-2.072-5.433,0-7.504 c2.071-2.072,5.433-2.072,7.505,0l6.928,6.927c0.523,0.522,1.372,0.522,1.896,0L36.642,7.368c2.071-2.072,5.433-2.072,7.505,0 c0.995,0.995,1.554,2.345,1.554,3.752c0,1.407-0.559,2.757-1.554,3.752L20.687,38.332z"/></g></g></svg>
</div>
</div>
<br>
<div class="checkbox" id="autodelete-dxvk-logs">
<span i18id="AutoDeleteDXVKLogs">Auto-delete DXVK logs</span>
<div class="checkbox-mark">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="45.701px" height="45.7px" viewBox="0 0 45.701 45.7" xml:space="preserve"><g><g><path d="M20.687,38.332c-2.072,2.072-5.434,2.072-7.505,0L1.554,26.704c-2.072-2.071-2.072-5.433,0-7.504 c2.071-2.072,5.433-2.072,7.505,0l6.928,6.927c0.523,0.522,1.372,0.522,1.896,0L36.642,7.368c2.071-2.072,5.433-2.072,7.505,0 c0.995,0.995,1.554,2.345,1.554,3.752c0,1.407-0.559,2.757-1.554,3.752L20.687,38.332z"/></g></g></svg>
</div>
</div>
<br>
</div>
<div class="settings-item" id="runners">
<h2 i18id="WineVersion">Wine version</h2>
<div class="checkbox" id="wine-recommendable">
<span i18id="RecommendableOnly">Show recommendable versions</span>
<div class="checkbox-mark">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="45.701px" height="45.7px" viewBox="0 0 45.701 45.7" xml:space="preserve"><g><g><path d="M20.687,38.332c-2.072,2.072-5.434,2.072-7.505,0L1.554,26.704c-2.072-2.071-2.072-5.433,0-7.504 c2.071-2.072,5.433-2.072,7.505,0l6.928,6.927c0.523,0.522,1.372,0.522,1.896,0L36.642,7.368c2.071-2.072,5.433-2.072,7.505,0 c0.995,0.995,1.554,2.345,1.554,3.752c0,1.407-0.559,2.757-1.554,3.752L20.687,38.332z"/></g></g></svg>
</div>
</div>
<br>
<div class="list" id="runners-list"></div>
<br>
</div>
<div class="settings-item" id="dxvks">
<h2>DXVK</h2>
<div class="checkbox" id="dxvk-recommendable">
<span i18id="RecommendableOnly">Show recommendable versions</span>
<div class="checkbox-mark">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="45.701px" height="45.7px" viewBox="0 0 45.701 45.7" xml:space="preserve"><g><g><path d="M20.687,38.332c-2.072,2.072-5.434,2.072-7.505,0L1.554,26.704c-2.072-2.071-2.072-5.433,0-7.504 c2.071-2.072,5.433-2.072,7.505,0l6.928,6.927c0.523,0.522,1.372,0.522,1.896,0L36.642,7.368c2.071-2.072,5.433-2.072,7.505,0 c0.995,0.995,1.554,2.345,1.554,3.752c0,1.407-0.559,2.757-1.554,3.752L20.687,38.332z"/></g></g></svg>
</div>
</div>
<br><br>
<div class="list" id="dxvk-list"></div>
<br>
</div>
<div class="settings-item" id="shaders">
<h2 i18id="Shaders">Shaders</h2>
<div class="select" id="shaders-list">
<span i18id="Shaders">Shaders</span>
<div class="select-options">
<ul>
<li value="none">None</li>
</ul>
</div>
<div class="selected-item hint--top hint--small">
<span>None</span>
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 330.002 330.002" xml:space="preserve"><path d="M233.252,155.997L120.752,6.001c-4.972-6.628-14.372-7.97-21-3c-6.628,4.971-7.971,14.373-3,21 l105.75,140.997L96.752,306.001c-4.971,6.627-3.627,16.03,3,21c2.698,2.024,5.856,3.001,8.988,3.001 c4.561,0,9.065-2.072,12.012-6.001l112.5-150.004C237.252,168.664,237.252,161.33,233.252,155.997z"/></svg>
</div>
</div>
<br>
</div>
<div class="settings-item" id="environment">
<h2 i18id="EnvironmentalVariables">Environmental variables</h2>
<div class="properties-list" id="env-list">
<table>
<tr>
<th i18id="Name">Name</th>
<th i18id="Value">Value</th>
</tr>
</table>
<div class="properties-list-buttons">
<button class="button" id="add" i18id="Add">Add</button>
<button class="button" id="delete" i18id="Delete">Delete</button>
</div>
</div>
<br>
</div>
<div class="settings-item" id="discord-rpc-conf" style="display: none;">
<h2 i18id="DRPConf">Discord RPC</h2>
<h3>Launcher</h3>
<h4>Details/Information</h4>
<input type="text" id="rpc-launch-details" class="text-field" placeholder="Preparing to launch" />
<h3>In-Game</h3>
<div class="checkbox" id="rpc-game-elapsed">
<span>Elapsed Time</span>
<div class="checkbox-mark">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="45.701px" height="45.7px" viewBox="0 0 45.701 45.7" xml:space="preserve"><g><g><path d="M20.687,38.332c-2.072,2.072-5.434,2.072-7.505,0L1.554,26.704c-2.072-2.071-2.072-5.433,0-7.504 c2.071-2.072,5.433-2.072,7.505,0l6.928,6.927c0.523,0.522,1.372,0.522,1.896,0L36.642,7.368c2.071-2.072,5.433-2.072,7.505,0 c0.995,0.995,1.554,2.345,1.554,3.752c0,1.407-0.559,2.757-1.554,3.752L20.687,38.332z"/></g></g></svg>
</div>
</div>
<h4>Details/Information</h4>
<input type="text" id="rpc-game-details" class="text-field" placeholder="In-Game" />
<h4>Extra Text</h4>
<input type="text" id="rpc-game-state" class="text-field" placeholder="" />
</div>
</div>
</body>
</html>

View file

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 76 KiB

View file

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

219
public/locales/de-de.yaml Normal file
View file

@ -0,0 +1,219 @@
# Start Fenster
splash:
title: Starte Launcher
phrases:
- Bruder, lass uns Genshin Impact spielen...
- Paimon am ärgern...
- Versuche Yae zu ziehen...
- Materialien farmen...
- Abyss bewältigen...
- Errungenschaften sammeln...
- Phys Qiqi erstellen...
- Opfer für 5* bringen...
- Freunde für Koop finden...
# Launcher window
launcher:
# Progress bar
progress:
pause: Pausieren
resume: Fortsetzen
# Game installation
game:
downloading: Spiel ist am herunterladen...
unpacking: Spiel wird entpackt...
deleting_outdated: Lösche veraltete dateien...
# Voice packages installation
voice:
deleting: Lösche Sprachpakete...
downloading: Sprachpaket {voice} wird heruntergeladen...
unpacking: Sprachpaket {voice} wird entpackt..
# Launcher states
states:
# When the game should be installed or updated
installation:
install_wine: Wine installieren
install_dxvk: DXVK installieren
install: Installieren
update: Updaten
# When the game should be patched
patching:
# Patch unavailable
unavailable:
title: Patch nicht verfügbar
hint: Diese Spielversion hat kein patch zu verfügung.
Bitte warte ein paar Tage um zusehen ob ein test oder stabil Patch veröffentlicht worde.
# Patch is in testing
test:
title: Test Patch anwenden
hint: Diese Spielversion hat ein Test Patch verfügbar.
Sie können ein paar Tage warten um den Stabilen patch zu installieren oder sie können den Test Patch installieren und ihr Account riskieren.
# Patch is stable
stable: Patch anwenden
# When the game is ready for playing
ready:
launch: Starten
predownload: Update vorinstallieren
# Launcher update
update:
title: 'Launcher update verfügbar: {from} -> {to}'
body: Sie können das update von {repository} herunterladen
# Einstellungs Fenster
settings:
# General
general:
title: General
items:
# Sprach-Auswahl
lang:
# Launcher sprache
launcher:
title: Launcher
items:
en-us: Englisch (US)
ru-ru: Russisch
de-de: Deutsch
fr-fr: Français
it-it: Italiano
uwu: Engwish
# Spiel sprachpaket auswahl
voice:
title: Sprachpaket
tooltip: Bitte wähle im Spiel das Sprachpaket aus um es zu benutzen
items:
en-us: Englisch (US)
ja-jp: Japanisch
ko-kr: Koreanische
zn-cn: Chinesisch
# Launcher thema
theme:
title: Thema
items:
system: System
light: Hell
dark: Dunkel
# Discord RPC
discord:
title: Discord RPC
settings:
title: Discord RPC Einstellung
items:
timer: Zeige geschätzte Zeit
in-launcher: Launcher text
in-game: im Spiel text
selectIcon: Icon auswählen
# Some buttons
buttons:
winetricks: winetricks
winecfg: winecfg
launcher: Launcher Ordner öffnen
game: Spiel Ordner öffnen
# Verberssungen
enhancements:
title: Verbesserungen
items:
# HUD
hud:
title: HUD
items:
none: Aus
dxvk: DXVK
mangohud: MangoHUD
# GameMode
gamemode:
title: Benutze GameMode
tooltip:
enabled: GameMode ist ein Program welches die Leistung verbessert
disabled: ⚠️ Sie haben GameMode nicht installiert
# AMD FSR
fsr:
title: AMD FSR
tooltip: Diese Option aktiviert AMD FidelityFX Super Resolution (FSR),
womit kleine Resolution hochskaliert wird um FPS-verlust zu vermeiden.
# Unlock FPS
fps_unlocker:
title: Entsperre FPS
tooltip: Diese option entsperrt/entfernt die 60 FPS limiterung
# Delete logs
purge_logs:
# Game logs (DXVK)
game:
title: DXVK logs löschen
tooltip: When diese option angeschaltet ist löscht
der Launcher automatisch alle DXVK logs
# Launcher logs
launcher:
title: Launcher logs löschen
tooltip: Launcher logs werden nach diese angegebenen Zeit gelöscht
items:
1d: 1 Tag
3d: 3 Tage
5d: 5 Tage
7d: 1 Woche
14d: 2 Wochen
never: Niemals
# Runners
runners:
title: Wine version
items:
recommended:
title: Nur empfohlene anzeigen
tooltip: Falls diese option eingeschaltet ist werden nur Wine versionen angezeigt
die funktioneren.
# DXVKs
dxvks:
title: DXVK
items:
recommended:
title: Nur empfohlene anzeigen
tooltip: Falls diese option eingeschaltet ist werden alte DXVK versionen nicht angezeigt
# Shaders
shaders:
title: Shaders
items:
shaders:
title: Shaders
tooltip: Benutze die Home/POS1 taste um die Shader in-spiel zu togglen
items:
none: Aus
custom: Custom
author: 'Autor: {author}'
no_images: Keine Bilder verfügbar
not_installed: Sie haben vkBasalt und Reshade-Shader nicht installiert
# Environmantal variables manager
environment:
title: Umgebungsvariablen
items:
# Table rows
table:
name: Name
value: Wert
# Table buttons
buttons:
add: Hinzufügen
delete: Löschen

View file

@ -1,66 +0,0 @@
{
"Install": "Installieren",
"Update": "Updaten",
"Launch": "Starten",
"ResumeDownload": "Download Fortsetzen",
"Runners": "Runners",
"Language": "Sprache",
"Voice": "Sprachpaket",
"VoiceNotification": "Für diese Funktion müssen Sie das neue Sprachpaket manuell im Spiel auswählen.",
"Theme": "Farbschema",
"Light": "Hell",
"Dark": "Dunkel",
"System": "System",
"IsNotInstalled": "{0} ist nicht installiert",
"PreInstallationRequired": "Vorinstallation erförderlich",
"ToggleShadersText": "Verwenden Sie die Home-Taste (POS 1), um Shader im Spiel ein/aus-zuschalten",
"Shaders": "Shadern",
"ReshadeNotInstalled": "Sie haben vkBasalt und Reshade-Shader nicht installiert",
"GameModeNotInstalled": "Sie haben GameMode nicht installiert",
"SwitcherooNotInstalled": "Sie haben switcheroo-control nicht installiert",
"AutoDeleteDXVKLogs": "DXVK-Logs automatisch löschen",
"RecommendableOnly": "Empfohlene Versionen anzeigen",
"LauncherFolder": "Launcher Ordner",
"Prefix": "Prefix",
"SelectDir": "Ordner auswählen",
"ResetDir": "Ordner zurücksetzen",
"Author": "Autor",
"NoImages": "Bilder sind nicht verfügbar",
"SettingsTitle": "Einstellungen",
"General": "Generell",
"Enhancements": "Verbesserungen",
"WineVersion": "Wine Version",
"Environment": "Umgebung",
"EnvironmentalVariables": "Umgebungsvariablen",
"Name": "Name",
"Value": "Wert",
"Add": "Hinzufügen",
"Delete": "Löschen",
"Statistics": "Statistik",
"YouPlayedFor": "Sie haben ungefähr",
"hours": "Stunden und",
"minutes": "Minuten gespielt",
"YourLauncherLevel": "Your launcher's level",
"Downloading": "wird Heruntergeladen",
"Unpacking": "wird Entpackt",
"GameDownloaded": "Spiel würde erfolgreich heruntergeladen",
"ApplyPatch": "Patch wird angewendet",
"PatchRequired": "Patch nicht verfügbar",
"PatchRequiredHint": "Diese Spielversion hat noch kein anti-cheat patch, Bitte warten sie ein paar Tage bevor sie es erneut versuchen",
"TestPatch": "Test Patch anwenden",
"TestPatchHint": "Diese Spielversion hat ein anti-cheat patch aber es befindet sich noch in der Testphase. Sie können noch ein paar Tage warten bis es Stabil ist oder auf eigenen Risiko den Testpatch anwenden",
"AnalyticsTitle": "Yanfei's Kommission...",
"ParticipateInAnalytics": "Nehmen Sie an der anonymen Datenerhebung teil",
"AnalyticsText1": "Um die aktive Nutzerbasis für Linux zu zählen, möchte Yanfei bei jedem Update des Spiels Ihre IP-Adresse erfassen,",
"AnalyticsText2": "Die IP Adresse wird aus Sicherheitsgründen gehasht.",
"AnalyticsShareCountry": "Land teilen",
"Participate": "Teilnehmen",
"Skip": "Überspringen",
"SkipAndDontAsk": "Überspingen und nicht noch mal fragen",
"LauncherUpdateTitle": "Launcher update verfügbar: ",
"LauncherUpdateBody": "Sie können eine neue Version des Launchers aus dem Repository des Projekts unter {uri.launcher} herunterladen.",
"TelemetryNotDisabled": "{placeholders.uppercase.company} Telemetrieserver sind nicht deaktiviert!",
"PatchRepoUnavailableTitle": "Patch's repository is not available",
"PatchRepoUnavailableBody": "Most likely notabug is under attack and is not responding",
"DRPConf": "Discord RPC"
}

View file

@ -1,66 +0,0 @@
{
"Install": "Install",
"Update": "Update",
"Launch": "Launch",
"ResumeDownload": "Resume Download",
"Runners": "Runners",
"Language": "Language",
"Voice": "Voice Pack",
"VoiceNotification": "This feature requires you to manually select the new voice pack in the game",
"Theme": "Theme",
"Light": "Light",
"Dark": "Dark",
"System": "System",
"IsNotInstalled": "{0} is not installed",
"PreInstallationRequired": "pre-installation required",
"ToggleShadersText": "Use Home button to toggle shaders in the game",
"Shaders": "Shaders",
"ReshadeNotInstalled": "You haven't installed vkBasalt and reshade-shaders library",
"GameModeNotInstalled": "You don't have GameMode installed",
"SwitcherooNotInstalled": "You don't have switcheroo-control installed",
"AutoDeleteDXVKLogs": "Auto-delete DXVK logs",
"RecommendableOnly": "Show recommendable versions",
"LauncherFolder": "launcher folder",
"Prefix": "Prefix",
"SelectDir": "Select dir",
"ResetDir": "Reset dir",
"Author": "Author",
"NoImages": "No images added",
"SettingsTitle": "Settings",
"General": "General",
"Enhancements": "Enhancements",
"Downloading": "Downloading",
"WineVersion": "Wine version",
"Environment": "Environment",
"EnvironmentalVariables": "Environmental variables",
"Name": "Name",
"Value": "Value",
"Add": "Add",
"Delete": "Delete",
"Statistics": "Statistics",
"YouPlayedFor": "You've played for",
"hours": "hours",
"minutes": "minutes",
"YourLauncherLevel": "Your launcher's level",
"Unpacking": "Unpacking",
"GameDownloaded": "Game was successfully installed",
"ApplyPatch": "Applying patch...",
"PatchRequired": "Patch required",
"PatchRequiredHint": "This game version doesn't have an anti-cheat patch. Please, wait a few days and try again",
"TestPatch": "Apply test patch",
"TestPatchHint": "This game version has an anti-cheat patch, but it is in the testing phase. You can wait a few days until it is stable or apply it at your own risk",
"AnalyticsTitle": "Yanfei's commission...",
"ParticipateInAnalytics": "Participate in anonymous data collection",
"AnalyticsText1": "To count the active user base for Linux, Yanfei would like to collect your IP address everytime the game updates",
"AnalyticsText2": "The IP address will be hashed for security purpose",
"AnalyticsShareCountry": "Share country",
"Participate": "Participate",
"Skip": "Skip",
"SkipAndDontAsk": "Skip and don't ask again",
"LauncherUpdateTitle": "Launcher update available: ",
"LauncherUpdateBody": "You can download a new version of the launcher from the project's repository at {uri.launcher}",
"TelemetryNotDisabled": "{placeholders.uppercase.company}'s telemetry servers don't disabled!",
"PatchRepoUnavailableTitle": "Patch's repository is not available",
"PatchRepoUnavailableBody": "Most likely notabug is under attack and is not responding",
"DRPConf": "Discord RPC"
}

218
public/locales/en-us.yaml Normal file
View file

@ -0,0 +1,218 @@
# Splash window
splash:
title: Loading launcher
phrases:
- Doing some important stuff...
- Bullying Paimon...
- Pulling for Yae...
- Farming materials...
- Passing Abyss...
- Collecting achievements...
- Building phys Qiqi...
- Making sacrifices for 5*...
- Finding friends for co-op...
# Launcher window
launcher:
# Progress bar
progress:
pause: Pause
resume: Resume
# Game installation
game:
downloading: Downloading game...
unpacking: Unpacking game...
deleting_outdated: Deleting outdated files...
# Voice packages installation
voice:
deleting: Deleting voice packages...
downloading: Downloading {voice} voice package...
unpacking: Unpacking {voice} voice package...
# Launcher states
states:
# When the game should be installed or updated
installation:
install_wine: Install Wine
install_dxvk: Install DXVK
install: Install
update: Update
# When the game should be patched
patching:
# Patch unavailable
unavailable:
title: Patch unavailable
hint: This game version has no anti-cheat patch.
Please, wait a few days before there will be a test or stable version
# Patch is in testing
test:
title: Apply test patch
hint: This game version has an experimental anti-cheat patch.
You can wait a few days until it is stable or apply it at your own risk
# Patch is stable
stable: Apply patch
# When the game is ready for playing
ready:
launch: Launch
predownload: Pre-download update
# Launcher update
update:
title: 'Launcher update available: {from} -> {to}'
body: You can download a new version of the launcher from the project's repository at {repository}
# Settings window
settings:
# General
general:
title: General
items:
# Language selection
lang:
# Launcher language
launcher:
title: Launcher
items:
en-us: English (US)
ru-ru: Русский
de-de: Deutsch
fr-fr: Français
it-it: Italiano
uwu: Engwish
# Game voice pack language
voice:
title: Voice pack
tooltip: You will have to manually select the new voice pack in the game
items:
en-us: English (US)
ja-jp: Japanese
ko-kr: Korean
zn-cn: Chinese
# Launcher theme
theme:
title: Theme
items:
system: System
light: Light
dark: Dark
# Discord RPC
discord:
title: Discord RPC
settings:
title: Discord RPC settings
items:
timer: Show estimated time spent
in-launcher: Launcher text
in-game: In-game text
selectIcon: Select icon
# Some buttons
buttons:
winetricks: winetricks
winecfg: winecfg
launcher: launcher folder
game: game folder
# Enhancements
enhancements:
title: Enhancements
items:
# HUD
hud:
title: HUD
items:
none: None
dxvk: DXVK
mangohud: MangoHUD
# GameMode
gamemode:
title: Use GameMode
tooltip:
enabled: It is a software that can improve the game performance
disabled: ⚠️ You don't have gamemode package installed
# AMD FSR
fsr:
title: Enable AMD FSR
tooltip: This option enables AMD FidelityFX Super Resolution (FSR)
which will scale your game resolution without losing FPS
# Unlock FPS
fps_unlocker:
title: Unlock FPS
tooltip: This option will unlock maximum of the 60 fps limitation
# Delete logs
purge_logs:
# Game logs (DXVK)
game:
title: Delete DXVK logs
tooltip: With this option enabled your launcher will automatically
delete DXVK log files
# Launcher logs
launcher:
title: Delete launcher logs
tooltip: Amount of time after which launcher will delete its old log files
items:
1d: 1 day
3d: 3 days
5d: 5 days
7d: 1 week
14d: 2 weeks
never: Never
# Runners
runners:
title: Wine version
items:
recommended:
title: Show recommended only
tooltip: This option will hide unplayable wine versions
# DXVKs
dxvks:
title: DXVK
items:
recommended:
title: Show recommended only
tooltip: This option will hide old DXVK versions
# Shaders
shaders:
title: Shaders
items:
shaders:
title: Shaders
tooltip: Use Home button to toggle shaders in the game
items:
none: None
custom: Custom
author: 'Author: {author}'
no_images: No images added
not_installed: You haven't installed vkBasalt and reshade-shaders library
# Environmantal variables manager
environment:
title: Environment
items:
# Table rows
table:
name: Name
value: Value
# Table buttons
buttons:
add: Add
delete: Delete

View file

@ -1,66 +0,0 @@
{
"Install": "Install",
"Update": "Update",
"Launch": "Launch",
"ResumeDownload": "Resume Download",
"Runners": "Runners",
"Language": "Language",
"Voice": "Voice Pack",
"VoiceNotification": "This feature requires you to manually select the new voice pack in the game",
"Theme": "Theme",
"Light": "Light",
"Dark": "Dark",
"System": "System",
"IsNotInstalled": "{0} is not installed",
"PreInstallationRequired": "pre-installation required",
"ToggleShadersText": "Use Home button to toggle shaders in the game",
"Shaders": "Shaders",
"ReshadeNotInstalled": "You haven't installed vkBasalt and reshade-shaders library",
"GameModeNotInstalled": "You don't have GameMode installed",
"SwitcherooNotInstalled": "You don't have switcheroo-control installed",
"AutoDeleteDXVKLogs": "Auto-delete DXVK logs",
"RecommendableOnly": "Show recommendable versions",
"LauncherFolder": "launcher folder",
"Prefix": "Prefix",
"SelectDir": "Select dir",
"ResetDir": "Reset dir",
"Author": "Author",
"NoImages": "No images added",
"SettingsTitle": "Settings",
"General": "General",
"Enhancements": "Enhancements",
"WineVersion": "Wine version",
"Environment": "Environment",
"EnvironmentalVariables": "Environmental variables",
"Name": "Name",
"Value": "Value",
"Add": "Add",
"Delete": "Delete",
"Statistics": "Statistics",
"YouPlayedFor": "You've played for",
"hours": "hours",
"minutes": "minutes",
"YourLauncherLevel": "Your launcher's level",
"Downloading": "Downloading",
"Unpacking": "Unpacking",
"GameDownloaded": "Game was successfully installed",
"ApplyPatch": "Applying patch...",
"PatchRequired": "Patch required",
"PatchRequiredHint": "This game version doesn't have an anti-cheat patch. Please, wait a few days and try again",
"TestPatch": "Apply test patch",
"TestPatchHint": "This game version has an anti-cheat patch, but it is in the testing phase. You can wait a few days until it is stable or apply it at your own risk",
"AnalyticsTitle": "Yanfei's commission...",
"ParticipateInAnalytics": "Participate in anonymous data collection",
"AnalyticsText1": "To count the active user base for Linux, Yanfei would like to collect your IP address everytime the game updates",
"AnalyticsText2": "The IP address will be hashed for security purpose",
"AnalyticsShareCountry": "Share country",
"Participate": "Participate",
"Skip": "Skip",
"SkipAndDontAsk": "Skip and don't ask again",
"LauncherUpdateTitle": "Launcher update available: ",
"LauncherUpdateBody": "You can download a new version of the launcher from the project's repository at {uri.launcher}",
"TelemetryNotDisabled": "{placeholders.uppercase.company}'s telemetry servers don't disabled!",
"PatchRepoUnavailableTitle": "Patch's repository is not available",
"PatchRepoUnavailableBody": "Most likely notabug is under attack and is not responding",
"DRPConf": "Discord RPC"
}

View file

@ -1,66 +0,0 @@
{
"Install": "Install",
"Update": "Update",
"Launch": "Launch",
"ResumeDownload": "Resume Download",
"Runners": "Runners",
"Language": "Language",
"Voice": "Voice Pack",
"VoiceNotification": "This feature requires you to manually select the new voice pack in the game",
"Theme": "Theme",
"Light": "Light",
"Dark": "Dark",
"System": "System",
"IsNotInstalled": "{0} is not installed",
"PreInstallationRequired": "pre-installation required",
"ToggleShadersText": "Use Home button to toggle shaders in the game",
"Shaders": "Shaders",
"ReshadeNotInstalled": "You haven't installed vkBasalt and reshade-shaders library",
"GameModeNotInstalled": "You don't have GameMode installed",
"SwitcherooNotInstalled": "You don't have switcheroo-control installed",
"AutoDeleteDXVKLogs": "Auto-delete DXVK logs",
"RecommendableOnly": "Show recommendable versions",
"LauncherFolder": "launcher folder",
"Prefix": "Prefix",
"SelectDir": "Select dir",
"ResetDir": "Reset dir",
"Author": "Author",
"NoImages": "No images added",
"SettingsTitle": "Settings",
"General": "General",
"Enhancements": "Enhancements",
"WineVersion": "Wine version",
"Environment": "Environment",
"EnvironmentalVariables": "Environmental variables",
"Name": "Name",
"Value": "Value",
"Add": "Add",
"Delete": "Delete",
"Statistics": "Statistics",
"YouPlayedFor": "You've played for",
"hours": "hours",
"minutes": "minutes",
"YourLauncherLevel": "Your launcher's level",
"Downloading": "Downloading",
"Unpacking": "Unpacking",
"GameDownloaded": "Game was successfully installed",
"ApplyPatch": "Applying patch...",
"PatchRequired": "Patch required",
"PatchRequiredHint": "This game version doesn't have an anti-cheat patch. Please, wait a few days and try again",
"TestPatch": "Apply test patch",
"TestPatchHint": "This game version has an anti-cheat patch, but it is in the testing phase. You can wait a few days until it is stable or apply it at your own risk",
"AnalyticsTitle": "Yanfei's commission...",
"ParticipateInAnalytics": "Participate in anonymous data collection",
"AnalyticsText1": "To count the active user base for Linux, Yanfei would like to collect your IP address everytime the game updates",
"AnalyticsText2": "The IP address will be hashed for security purpose",
"AnalyticsShareCountry": "Share country",
"Participate": "Participate",
"Skip": "Skip",
"SkipAndDontAsk": "Skip and don't ask again",
"LauncherUpdateTitle": "Launcher update available: ",
"LauncherUpdateBody": "You can download a new version of the launcher from the project's repository at {uri.launcher}",
"TelemetryNotDisabled": "{placeholders.uppercase.company}'s telemetry servers don't disabled!",
"PatchRepoUnavailableTitle": "Patch's repository is not available",
"PatchRepoUnavailableBody": "Most likely notabug is under attack and is not responding",
"DRPConf": "Discord RPC"
}

224
public/locales/fr-fr.yaml Normal file
View file

@ -0,0 +1,224 @@
# Splash window
splash:
title: Changement en cours
phrases:
- En train de faire des choses importantes...
- Cuisson de Paimon en cours...
- Invocation en masse pour Yae...
- Collecte des matériaux...
- Passage de l'Abysse..
- Collecte des succès...
- Équipage de Qiqi qu'en DGT...
- Préparation de sacrifices pour un 5*...
- Recherche d'amis pour de la Co-op...
# Launcher window
launcher:
# Progress bar
progress:
pause: Pause
resume: Continuer
# Game installation
game:
downloading: Téléchargement du jeu...
unpacking: Décompression du jeu...
deleting_outdated: Suppression des fichiers non à jour...
# Voice packages installation
voice:
deleting: Suppression des pack de voix...
downloading: 'Téléchargement du pack de voix : {voice}...'
unpacking: 'Décompression du pack de voix : {voice}...'
# Launcher states
states:
# When the game should be installed or updated
installation:
install_wine: Installer Wine
install_dxvk: Installer DXVK
install: Installer
update: Mise à jour
# When the game should be patched
patching:
# Patch unavailable
unavailable:
title: Patch non disponible
hint: Cette version du jeu n'a pas de patch contre l'anti triche,
merci de bien vouloir patienter quelques jours puis réessayez
# Patch is in testing
test:
title: Appliquer le patch en teste
hint: Cette version du jeu a un patch contre l'anti triche,
mais celui-ci est en période de teste.
Vous pouvez patienter ou bien l'utilisé à vos risques et périls.
# Patch is stable
stable: Appliquer le patch
# When the game is ready for playing
ready:
launch: Lancer
predownload: Pre-téléchargement de mise à jour
# Launcher update
update:
title: 'Mise à jour du Launcher disponible: {from} -> {to}'
body: Vous pouvez télécharger la nouvelle version du launcher via le dépôt ici {repository}
# Settings window
settings:
# General
general:
title: Générale
items:
# Language selection
lang:
# Launcher language
launcher:
title: Launcher
items:
en-us: English (US)
ru-ru: Русский
de-de: Deutsch
fr-fr: Français
it-it: Italiano
uwu: Engwish
# Game voice pack language
voice:
title: Pack de voix
tooltip: Le choix des voix utilisées sont à modifier
manuellement dans le jeu
items:
en-us: Anglaise (US)
ja-jp: Japonaise
ko-kr: Coréen
zn-cn: Chinoise
# Launcher theme
theme:
title: Thème
items:
system: Système
light: Lumineux
dark: Sombre
# Discord RPC
discord:
title: Intégration Discord
settings:
title: Intégration Discord paramètres
items:
timer: Afficher le temps écouler
in-launcher: Texte dans le launcher
in-game: Texte dans le jeu
selectIcon: Sélection d'icone
# Some buttons
buttons:
winetricks: winetricks
winecfg: winecfg
launcher: Dossier du Launcher
game: Dossier du jeu
# Enhancements
enhancements:
title: Améliorations
items:
# HUD
hud:
title: Interface
items:
none: None
dxvk: DXVK
mangohud: MangoHUD
# GameMode
gamemode:
title: Utiliser GameMode
tooltip:
enabled: C'est un logiciel qui permet d'améliorer les performances en jeu
disabled: ⚠️ Vous n'avez pas le paquet "gamemode" d'installer
# AMD FSR
fsr:
title: Activer AMD FSR
tooltip: Cette option active "AMD FidelityFX Super Resolution" (FSR)
ce qui permet d'augmenter votre résolution sans perdre des FPS (images par secondes)
# Unlock FPS
fps_unlocker:
title: Débloquer les IPS (FPS)
tooltip: Cette option permet de débloque le nombre d'image par
secondes (IPS) au-delà de 60
# Delete logs
purge_logs:
# Game logs (DXVK)
game:
title: Supprimer automatiquement les logs de DXVK
tooltip: Cette option supprime automatiquement les
fichiers logs de DXVK
# Launcher logs
launcher:
title: Suppression des fichiers logs
tooltip: Intervalle entre chaque suppression de fichier logs du launcher
items:
1d: Tous les jours
3d: Tous les 3 jours
5d: Tous les 5 jours
7d: Toutes les semaines
14d: Toutes les 2 semaines
never: Jamais
# Runners
runners:
title: Version de Wine
items:
recommended:
title: Afficher les versions recommandées seulement
tooltip: Cette option masque les versions de Wine
non testées ou qui ne fonctionnent pas
# DXVKs
dxvks:
title: DXVK
items:
recommended:
title: Afficher les versions recommandées seulement
tooltip: Cette option masque les versions de DXVK
non testées ou qui ne fonctionnent pas
# Shaders
shaders:
title: Effets Visuels
items:
shaders:
title: Effets Visuels
tooltip: Utilisez la touche début (home) activer
ou désactiver les effets visuels
items:
none: None
custom: Custom
author: 'Auteur: {author}'
no_images: Aucune image ajoutée
not_installed: Vous n'avez les paquets "vkBasalt" et "reshade-shader library" d'installer
# Environmantal variables manager
environment:
title: Environnement
items:
# Table rows
table:
name: Nom
value: Valeur
# Table buttons
buttons:
add: Ajouter
delete: Supprimer

View file

@ -1,66 +0,0 @@
{
"Install": "Install",
"Update": "Update",
"Launch": "Launch",
"ResumeDownload": "Resume Download",
"Runners": "Runners",
"Language": "Language",
"Voice": "Voice Pack",
"VoiceNotification": "This feature requires you to manually select the new voice pack in the game",
"Theme": "Theme",
"Light": "Light",
"Dark": "Dark",
"System": "System",
"IsNotInstalled": "{0} is not installed",
"PreInstallationRequired": "pre-installation required",
"ToggleShadersText": "Use Home button to toggle shaders in the game",
"Shaders": "Shaders",
"ReshadeNotInstalled": "You haven't installed vkBasalt and reshade-shaders library",
"GameModeNotInstalled": "You don't have GameMode installed",
"SwitcherooNotInstalled": "You don't have switcheroo-control installed",
"AutoDeleteDXVKLogs": "Auto-delete DXVK logs",
"RecommendableOnly": "Show recommendable versions",
"LauncherFolder": "launcher folder",
"Prefix": "Prefix",
"SelectDir": "Select dir",
"ResetDir": "Reset dir",
"Author": "Author",
"NoImages": "No images added",
"SettingsTitle": "Settings",
"General": "General",
"Enhancements": "Enhancements",
"WineVersion": "Wine version",
"Environment": "Environment",
"EnvironmentalVariables": "Environmental variables",
"Name": "Name",
"Value": "Value",
"Add": "Add",
"Delete": "Delete",
"Statistics": "Statistics",
"YouPlayedFor": "You've played for",
"hours": "hours",
"minutes": "minutes",
"YourLauncherLevel": "Your launcher's level",
"Downloading": "Downloading",
"Unpacking": "Unpacking",
"GameDownloaded": "Game was successfully installed",
"ApplyPatch": "Applying patch...",
"PatchRequired": "Patch required",
"PatchRequiredHint": "This game version doesn't have an anti-cheat patch. Please, wait a few days and try again",
"TestPatch": "Apply test patch",
"TestPatchHint": "This game version has an anti-cheat patch, but it is in the testing phase. You can wait a few days until it is stable or apply it at your own risk",
"AnalyticsTitle": "Yanfei's commission...",
"ParticipateInAnalytics": "Participate in anonymous data collection",
"AnalyticsText1": "To count the active user base for Linux, Yanfei would like to collect your IP address everytime the game updates",
"AnalyticsText2": "The IP address will be hashed for security purpose",
"AnalyticsShareCountry": "Share country",
"Participate": "Participate",
"Skip": "Skip",
"SkipAndDontAsk": "Skip and don't ask again",
"LauncherUpdateTitle": "Launcher update available: ",
"LauncherUpdateBody": "You can download a new version of the launcher from the project's repository at {uri.launcher}",
"TelemetryNotDisabled": "{placeholders.uppercase.company}'s telemetry servers don't disabled!",
"PatchRepoUnavailableTitle": "Patch's repository is not available",
"PatchRepoUnavailableBody": "Most likely notabug is under attack and is not responding",
"DRPConf": "Discord RPC"
}

View file

@ -1,66 +0,0 @@
{
"Install": "Pasang",
"Update": "Perbarui",
"Launch": "Luncurkan",
"ResumeDownload": "Lanjutkan Unduh",
"Runners": "Runners",
"Language": "Bahasa",
"Voice": "Paket Suara",
"VoiceNotification": "Fitur ini memerlukan kamu untuk memilih paket suara baru di dalam Game",
"Theme": "Tema",
"Light": "Terang",
"Dark": "Gelap",
"System": "Sistem",
"IsNotInstalled": "{0} belum terpasang",
"PreInstallationRequired": "pra-pemasangan dibutuhkan",
"ToggleShadersText": "Gunakan tombol Home untuk menyalakan/mematikan shader di dalam Game",
"Shaders": "Shader",
"ReshadeNotInstalled": "Kamu belum memasang vkBasalt dan library reshade-shaders",
"GameModeNotInstalled": "Kamu belum memasang GameMode",
"SwitcherooNotInstalled": "Kamu belum memasang switcheroo-control",
"AutoDeleteDXVKLogs": "Otomatis hapus log DXVK",
"RecommendableOnly": "Tampilkan pilihan yang disarankan",
"LauncherFolder": "folder peluncur",
"Prefix": "Prefix",
"SelectDir": "Pilih direktori",
"ResetDir": "Setel ulang direktori",
"Author": "Pembuat",
"NoImages": "Tidak ada gambar ditambahkan",
"SettingsTitle": "Pengaturan",
"General": "Umum",
"Enhancements": "Peningkatan",
"WineVersion": "Versi Wine",
"Environment": "Lingkungan",
"EnvironmentalVariables": "Variabel Lingkungan",
"Name": "Nama",
"Value": "Nilai",
"Add": "Tambah",
"Delete": "Hapus",
"Statistics": "Statistik",
"YouPlayedFor": "Kamu sudah bermain selama",
"hours": "jam",
"minutes": "menit",
"YourLauncherLevel": "Level peluncur kamu",
"Downloading": "Mengunduh",
"Unpacking": "Membuka paket",
"GameDownloaded": "Game berhasil dipasang",
"ApplyPatch": "Memasang patch...",
"PatchRequired": "Patch dibutuhkan",
"PatchRequiredHint": "Versi Game ini tidak memiliki patch anti-cheat. Mohon tunggu beberapa hari dan coba lagi",
"TestPatch": "Pasang patch uji coba",
"TestPatchHint": "Versi Game ini memiliki patch anti-cheat, tetapi masih dalam tahap uji coba. Kamu dapat menunggu beberapa hari hingga patch stabil atau memasangnya dengan risiko kamu sendiri",
"AnalyticsTitle": "Komisi Yanfei...",
"ParticipateInAnalytics": "Berpartisipasi dalam pengambilan data anonim",
"AnalyticsText1": "Untuk menghitung pengguna aktif di Linux, Yanfei ingin mengumpulkan alamat IP tiap kali Game diperbarui",
"AnalyticsText2": "Alamat IP akan diacak(hashed) untuk tujuan keamanan",
"AnalyticsShareCountry": "Bagikan negara",
"Participate": "Berpartisipasi",
"Skip": "Lewati",
"SkipAndDontAsk": "Lewati dan jangan tanya lagi",
"LauncherUpdateTitle": "Pembaruan Peluncur tersedia: ",
"LauncherUpdateBody": "Kamu dapat mengunduh versi baru peluncur dari repositori di {uri.launcher}",
"TelemetryNotDisabled": "Peladen telemetri {placeholders.uppercase.company} tidak dimatikan!",
"PatchRepoUnavailableTitle": "Repositori patch tidak tersedia",
"PatchRepoUnavailableBody": "Sepertinya notabug sedang dalam serangan dan tidak merespon",
"DRPConf": "Discord RPC"
}

217
public/locales/it-it.yaml Normal file
View file

@ -0,0 +1,217 @@
# Splash window
splash:
title: Caricando il launcher
phrases:
- Facendo attività molto importanti...
- Bullizzando Paimon...
- Pullando per Yae...
- Farmando materiali...
- Superando l'Abisso...
- Collezionando trofei...
- Buildando Qiqi fisico...
- Facendo sacrifici per un 5*...
- Cercando amici per co-op...
# Launcher window
launcher:
# Progress bar
progress:
pause: Pausa
resume: Riprendi
# Game installation
game:
downloading: Scaricando il gioco...
unpacking: Decomprimendo il gioco...
deleting_outdated: Cancellando file vecchi...
# Voice packages installation
voice:
deleting: Cancellando pacchetto voci...
downloading: Scaricando {voice} pacchetto voci...
unpacking: Decomprimendo {voice} pacchetto voci...
# Launcher states
states:
# When the game should be installed or updated
installation:
install_wine: Install Wine
install_dxvk: Install DXVK
install: Install
update: Update
# When the game should be patched
patching:
# Patch unavailable
unavailable:
title: Patch unavailable
hint: This game version has no anti-cheat patch.
Please, wait a few days before there will be a test or stable version
# Patch is in testing
test:
title: Apply test patch
hint: This game version has an experimental anti-cheat patch.
You can wait a few days until it is stable or apply it at your own risk
# Patch is stable
stable: Apply patch
# When the game is ready for playing
ready:
launch: Launch
predownload: Pre-download update
# Launcher update
update:
title: 'Aggiornamento del launcher disponibile: {from} -> {to}'
body: Puoi scaricare una nuova versione del launcher dalla repository del progetto {repository}
# Settings window
settings:
# General
general:
title: Generale
items:
# Language selection
lang:
# Launcher language
launcher:
title: Launcher
items:
en-us: English (US)
ru-ru: Русский
de-de: Deutsch
fr-fr: Français
es-es: Español
it-it: Italiano
uwu: Engwish
# Game voice pack language
voice:
title: Doppiaggio
tooltip: Dovrai manualmente configurare il voice pack in gioco
items:
en-us: Inglese (US)
ja-jp: Giapponese
ko-kr: Coreano
zn-cn: Cinese
# Launcher theme
theme:
title: Tema
items:
system: Sistema
light: Chiaro
dark: Scuro
# Discord RPC
discord:
title: Integrazione Discord
settings:
title: Impostazioni di integrazione con Discord
items:
timer: Mostra il tempo di gioco
in-launcher: Testo nel launcher
in-game: Testo in gioco
# Some buttons
buttons:
winetricks: winetricks
winecfg: winecfg
launcher: Cartella del launcher
game: Cartella del gioco
# Enhancements
enhancements:
title: Miglioramenti
items:
# HUD
hud:
title: Interfaccia
items:
none: None
dxvk: DXVK
mangohud: MangoHUD
# GameMode
gamemode:
title: Usa GameMode
tooltip:
enabled: È un software che può migliorare le prestazioni in gioco
disabled: ⚠️ Non hai il pacchetto gamemode installato
# AMD FSR
fsr:
title: Attiva AMD FSR
tooltip: Questa opzione attiva AMD FidelityFX Super Resolution (FSR)
che permetterà di scalare la risoluzione del gioco senza perdere FPS
# Unlock FPS
fps_unlocker:
title: Sblocca gli FPS
tooltip: Questa opzione rimuoverà la limitazione di 60 FPS in gioco
# Delete DXVK logs
purge_logs:
# Game logs (DXVK)
game:
title: Cancella i log DXVK
tooltip: Con questa opzione attiva, il launcher cancellerà automaticamente i file di log DXVK
# Launcher logs
launcher:
title: Cancella i log del launcher
tooltip: Quantità di tempo dopo cui il launcher eliminerà i vecchi file di log
items:
1d: 1 giorno
3d: 3 giorni
5d: 5 giorni
7d: 1 settimana
14d: 2 settimane
never: Mai
# Runners
runners:
title: Versione di Wine
items:
recommended:
title: Mostra solo le consigliate
tooltip: Questa opzione nasconderà le versioni di Wine non giocabili
# DXVKs
dxvks:
title: DXVK
items:
recommended:
title: Mostra solo le consigliate
tooltip: Questa opzione nasconderà le vecchie versioni di DXVK
# Shaders
shaders:
title: Shaders
items:
shaders:
title: Shaders
tooltip: Usa il bottone Home per attivare/disattivare le shaders in gioco
items:
none: None
custom: Custom
author: 'Autore: {author}'
no_images: Nessuna immagine aggiunta
not_installed: Non hai installato le librerie vkBasalt e reshade-shaders
# Environmantal variables manager
environment:
title: Environment
items:
# Table rows
table:
name: Name
value: Value
# Table buttons
buttons:
add: Add
delete: Delete

View file

@ -1,66 +0,0 @@
{
"Install": "インストール",
"Update": "アップデート",
"Launch": "打ち上げ",
"ResumeDownload": "履歴書のダウンロード",
"Runners": "Runners",
"Language": "言語",
"Voice": "ボイスパック",
"VoiceNotification": "この機能を使用するには、ゲーム内の新しいボイスパックを手動で選択する必要があります",
"Theme": "テーマ",
"Light": "ライト",
"Dark": "暗い",
"System": "システム",
"IsNotInstalled": "{0}がインストールされていない",
"PreInstallationRequired": "事前インストールが必要",
"ToggleShadersText": "ホームボタンを使用してゲーム内のシェーダを切り替えます",
"Shaders": "シェーダ",
"ReshadeNotInstalled": "vkBasaltとreshade-shadersライブラリをインストールしていません",
"GameModeNotInstalled": "GameModeドがインストールされていません",
"SwitcherooNotInstalled": "Switcheroo-controlがインストールされていません",
"AutoDeleteDXVKLogs": "DXVKログの自動削除",
"RecommendableOnly": "Show recommendable versions",
"LauncherFolder": "launcher folder",
"Prefix": "Prefix",
"SelectDir": "Select dir",
"ResetDir": "Reset dir",
"Author": "著者",
"NoImages": "画像は追加されていません",
"SettingsTitle": "設定",
"General": "一般",
"Enhancements": "拡張機能",
"Downloading": "ダウンロード中",
"WineVersion": "ワインバージョン",
"Environment": "環境",
"EnvironmentalVariables": "環境変数",
"Name": "名前",
"Value": "バリュー",
"Add": "加える",
"Delete": "削除",
"Statistics": "統計",
"YouPlayedFor": "あなたはのためにプレーしてきました",
"hours": "時間",
"minutes": "分",
"YourLauncherLevel": "Your launcher's level",
"Unpacking": "開梱",
"GameDownloaded": "ゲームのインストールに成功しました",
"ApplyPatch": "パッチの適用...",
"PatchRequired": "要パッチ",
"PatchRequiredHint": "このゲームバージョンにはアンチチートパッチがありません。数日待ってから再度お試しください",
"TestPatch": "テストパッチの適用",
"TestPatchHint": "このゲームバージョンにはアンチチートパッチがありますが、テスト段階にあります。安定するまで数日お待ちいただくか、ご自身の責任で適用してください",
"AnalyticsTitle": "ヤンフェイのコミッション...",
"ParticipateInAnalytics": "匿名でのデータ収集に参加",
"AnalyticsText1": "Linuxのアクティブユーザー数をカウントするために、YanfeiはゲームがアップデートされるたびにあなたのIPアドレスを収集したいと思います。",
"AnalyticsText2": "IPアドレスはセキュリティのためにハッシュ化されます。",
"AnalyticsShareCountry": "シェアカントリー",
"Participate": "匿名でのデータ収集に参加",
"Skip": "スキップ",
"SkipAndDontAsk": "スキップして二度と聞かない",
"LauncherUpdateTitle": "ランチャーのアップデートが可能 ",
"LauncherUpdateBody": "ランチャーの新バージョンは、プロジェクトのリポジトリ({uri.launcher})からダウンロードできます。",
"TelemetryNotDisabled": "{placeholders.uppercase.company}のテレメトリサーバは無効になっていません!",
"PatchRepoUnavailableTitle": "Patch's repository is not available",
"PatchRepoUnavailableBody": "Most likely notabug is under attack and is not responding",
"DRPConf": "Discord RPC"
}

View file

@ -1,66 +0,0 @@
{
"Install": "설치",
"Update": "업데이트",
"Launch": "발사",
"ResumeDownload": "이력서 다운로드",
"Runners": "주자",
"Language": "언어",
"Voice": "음성 팩",
"VoiceNotification": "이 기능을 사용하려면 게임에서 새 음성 팩을 수동으로 선택해야합니다",
"Theme": "테마",
"Light": "빛",
"Dark": "어두운",
"System": "시스템",
"IsNotInstalled": "{0} 설치되지 않았습니다",
"PreInstallationRequired": "사전 설치 필요",
"ToggleShadersText": "홈 버튼을 사용하여 게임에서 쉐이더를 전환하십시오",
"Shaders": "쉐이더",
"ReshadeNotInstalled": "vkBasalt 및 reshade-shaders 라이브러리를 설치하지 않았습니다",
"GameModeNotInstalled": "GameMode 가 설치되어 있지 않습니다",
"SwitcherooNotInstalled": "Switcheroo-control 이 설치되어 있지 않습니다",
"AutoDeleteDXVKLogs": "DXVK 로그 자동 삭제",
"RecommendableOnly": "Show recommendable versions",
"LauncherFolder": "launcher folder",
"Prefix": "Prefix",
"SelectDir": "Select dir",
"ResetDir": "Reset dir",
"Author": "저자",
"NoImages": "추가 된 이미지 없음",
"SettingsTitle": "설정",
"General": "일반",
"Enhancements": "향상된 기능",
"WineVersion": "와인 버전",
"Environment": "환경",
"EnvironmentalVariables": "환경 변수",
"Name": "이름",
"Value": "가치",
"Add": "추가",
"Delete": "삭제",
"Statistics": "통계",
"YouPlayedFor": "당신은 위해 연주했습니다",
"hours": "시간",
"minutes": "분",
"YourLauncherLevel": "런처의 레벨",
"Downloading": "다운로드 중",
"Unpacking": "풀기",
"GameDownloaded": "게임이 성공적으로 설치되었습니다",
"ApplyPatch": "패치 적용...",
"PatchRequired": "패치 필요",
"PatchRequiredHint": "이 게임 버전에는 안티 치트 패치가 없습니다. 며칠 기다렸다가 다시 시도하십시오",
"TestPatch": "테스트 패치 적용",
"TestPatchHint": "이 게임 버전에는 안티 치트 패치가 있지만 테스트 단계에 있습니다. 안정 될 때까지 며칠을 기다리거나 자신의 위험에 따라 적용 할 수 있습니다",
"AnalyticsTitle": "Yanfei 의위원회...",
"ParticipateInAnalytics": "익명 데이터 수집에 참여",
"AnalyticsText1": "리눅스에 대한 활성 사용자 기반을 계산하려면,Yanfei 는 게임 업데이트마다 IP 주소를 수집하고 싶습니다",
"AnalyticsText2": "IP 주소는 보안 목적으로 해시됩니다",
"AnalyticsShareCountry": "공유 국가",
"Participate": "참여",
"Skip": "건너 뛰기",
"SkipAndDontAsk": "건너 뛰고 다시 묻지 마십시오",
"LauncherUpdateTitle": "실행기 업데이트 가능: ",
"LauncherUpdateBody": "에서 프로젝트의 저장소에서 실행기의 새 버전을 다운로드 할 수 있습니다 {uri.launcher}",
"TelemetryNotDisabled": "{placeholders.uppercase.company} 의 원격 측정 서버가 비활성화되지 않음!",
"PatchRepoUnavailableTitle": "Patch's repository is not available",
"PatchRepoUnavailableBody": "Most likely notabug is under attack and is not responding",
"DRPConf": "Discord RPC"
}

View file

@ -1,66 +0,0 @@
{
"Install": "Install",
"Update": "Update",
"Launch": "Launch",
"ResumeDownload": "Resume Download",
"Runners": "Runners",
"Language": "Language",
"Voice": "Voice Pack",
"VoiceNotification": "This feature requires you to manually select the new voice pack in the game",
"Theme": "Theme",
"Light": "Light",
"Dark": "Dark",
"System": "System",
"IsNotInstalled": "{0} is not installed",
"PreInstallationRequired": "pre-installation required",
"ToggleShadersText": "Use Home button to toggle shaders in the game",
"Shaders": "Shaders",
"ReshadeNotInstalled": "You haven't installed vkBasalt and reshade-shaders library",
"GameModeNotInstalled": "You don't have GameMode installed",
"SwitcherooNotInstalled": "You don't have switcheroo-control installed",
"AutoDeleteDXVKLogs": "Auto-delete DXVK logs",
"RecommendableOnly": "Show recommendable versions",
"LauncherFolder": "launcher folder",
"Prefix": "Prefix",
"SelectDir": "Select dir",
"ResetDir": "Reset dir",
"Author": "Author",
"NoImages": "No images added",
"SettingsTitle": "Settings",
"General": "General",
"Enhancements": "Enhancements",
"WineVersion": "Wine version",
"Environment": "Environment",
"EnvironmentalVariables": "Environmental variables",
"Name": "Name",
"Value": "Value",
"Add": "Add",
"Delete": "Delete",
"Statistics": "Statistics",
"YouPlayedFor": "You've played for",
"hours": "hours",
"minutes": "minutes",
"YourLauncherLevel": "Your launcher's level",
"Downloading": "Downloading",
"Unpacking": "Unpacking",
"GameDownloaded": "Game was successfully installed",
"ApplyPatch": "Applying patch...",
"PatchRequired": "Patch required",
"PatchRequiredHint": "This game version doesn't have an anti-cheat patch. Please, wait a few days and try again",
"TestPatch": "Apply test patch",
"TestPatchHint": "This game version has an anti-cheat patch, but it is in the testing phase. You can wait a few days until it is stable or apply it at your own risk",
"AnalyticsTitle": "Yanfei's commission...",
"ParticipateInAnalytics": "Participate in anonymous data collection",
"AnalyticsText1": "To count the active user base for Linux, Yanfei would like to collect your IP address everytime the game updates",
"AnalyticsText2": "The IP address will be hashed for security purpose",
"AnalyticsShareCountry": "Share country",
"Participate": "Participate",
"Skip": "Skip",
"SkipAndDontAsk": "Skip and don't ask again",
"LauncherUpdateTitle": "Launcher update available: ",
"LauncherUpdateBody": "You can download a new version of the launcher from the project's repository at {uri.launcher}",
"TelemetryNotDisabled": "{placeholders.uppercase.company}'s telemetry servers don't disabled!",
"PatchRepoUnavailableTitle": "Patch's repository is not available",
"PatchRepoUnavailableBody": "Most likely notabug is under attack and is not responding",
"DRPConf": "Discord RPC"
}

217
public/locales/ru-ru.yaml Normal file
View file

@ -0,0 +1,217 @@
# Окно загрузки
splash:
title: Загрузка лаунчера
phrases:
- Делаем всякие важные штуки...
- Издеваемся над Паймон...
- Пытаемся получить Яэ...
- Собираем материалы...
- Проходим бездну...
- Коллекционируем достижения...
- Собираем физ чичу...
- Делаем жертвоприношения ради 5*...
- Ищем друзем для коопа...
# Окно лаунчера
launcher:
# Прогресс бар
progress:
pause: Пауза
resume: Продолжить
# Установка игры
game:
downloading: Скачивание игры...
unpacking: Распаковка игры...
deleting_outdated: Удаление устаревших файлов...
# Установка звуковых пакетов
voice:
deleting: Удаление звуковых пакетов...
downloading: Скачивание звукового пакета {voice}...
unpacking: Распаковка звукового пакета {voice}...
# Launcher states
states:
# Когда игра должна быть установлена или обновлена
installation:
install_wine: Установить Wine
install_dxvk: Установить DXVK
install: Установить
update: Обновить
# Когда игра должна быть пропатчена
patching:
# Патч недоступен
unavailable:
title: Патч недоступен
hint: Эта версия игры не имеет патча анти-чита.
Пожалуйста, подождите несколько дней пока не будет выпущена тестовая или стабильная версия
# Патч тестируется
test:
title: Применить тестовый патч
hint: Эта версия игры имеет экспериментальный патч анти-чита.
Вы можете подождать пару дней пока не выйдет стабильная версия, или применить этот патч на свой страх и риск
# Патч стабилен
stable: Применить патч
# Когда всё готово
ready:
launch: Запустить
predownload: Предзагрузить обновление
# Обновление лаунчера
update:
title: 'Доступно обновление лаунчера: {from} -> {to}'
body: Вы можете загрузить новую версию лаунчера из репозитория проекта по ссылке {repository}
# Окно настроек
settings:
# Основное
general:
title: Основное
items:
# Выбор языка
lang:
# Лаунчер
launcher:
title: Лаунчер
items:
en-us: English (US)
ru-ru: Русский
de-de: Deutsch
fr-fr: Français
it-it: Italiano
uwu: Engwish
# Язык озвучки в игре
voice:
title: Язык озвучки
tooltip: Вам будет нужно вручную изменить язык озвучки в игре
items:
en-us: Английский (США)
ja-jp: Японский
ko-kr: Корейский
zn-cn: Китайский
# Тема лаунчера
theme:
title: Тема
items:
system: Системная
light: Светлая
dark: Тёмная
# Discord RPC
discord:
title: Discord RPC
settings:
title: Настройки Discord RPC
items:
timer: Отображать потраченное время
in-launcher: Текст в лаунчере
in-game: Текст в игре
selectIcon: Выберите иконку
# Some buttons
buttons:
winetricks: winetricks
winecfg: winecfg
launcher: папка лаунчера
game: папка игры
# Улучшения
enhancements:
title: Улучшения
items:
# HUD
hud:
title: HUD
items:
none: Отключён
dxvk: DXVK
mangohud: MangoHUD
# GameMode
gamemode:
title: Использовать GameMode
tooltip:
enabled: Это программа, которая может улучшить производительность игры
disabled: ⚠️ У вас не установлен пакет gamemode
# AMD FSR
fsr:
title: Включить AMD FSR
tooltip: Эта опция включает AMD FidelityFX Super Resolution (FSR),
который может увеличить разрешение игры без потери кадров
# Разблокировать FPS
fps_unlocker:
title: Разблокировать FPS
tooltip: Эта опция позволит разблокировать лимит на отрисовку не более чем 60 кадров в секунду
# Удалять логи
purge_logs:
# Игры (DXVK)
game:
title: Удалять логи DXVK
tooltip: Если включено, лаунчер будет автоматически удалять логи DXVK
# Лаунчера
launcher:
title: Удалять логи лаунчера
tooltip: Время, после которого удалять старые логи лаунчера
items:
1d: 1 день
3d: 3 дня
5d: 5 дней
7d: 1 неделя
14d: 2 недели
never: Никогда
# Версии Wine
runners:
title: Версия Wine
items:
recommended:
title: Показывать только рекомендуемое
tooltip: Эта опция будет скрывать неиграбельные версии Wine
# DXVK
dxvks:
title: DXVK
items:
recommended:
title: Показывать только рекомендуемое
tooltip: Эта опция будет скрывать устаревшие версии DXVK
# Шейдеры
shaders:
title: Шейдеры
items:
shaders:
title: Шейдеры
tooltip: Используйте кнопку Home чтобы переключать шейдеры в игре
items:
none: Отключены
custom: Кастомные
author: 'Автор: {author}'
no_images: Нет добавленных изображений
not_installed: У вас не установлены пакеты vkBasalt и reshade-shaders
# Менеджер переменных среды
environment:
title: Переменные среды
items:
# Столбцы таблицы
table:
name: Имя
value: Значение
# Кнопки таблицы
buttons:
add: Добавить
delete: Удалить

View file

@ -1,66 +0,0 @@
{
"Install": "Установить",
"Update": "Обновить",
"Launch": "Запустить",
"ResumeDownload": "Продолжить загрузку",
"Runners": "Версии Wine",
"Language": "Язык",
"Voice": "Озвучка",
"VoiceNotification": "Эта настройка требует ручного переключения языка озвучки в настройках игры",
"Theme": "Тема",
"Light": "Светлая",
"Dark": "Тёмная",
"System": "Системная",
"IsNotInstalled": "{0} не установлен",
"PreInstallationRequired": "требуется предустановка",
"ToggleShadersText": "Используйте кнопку Home для переключения шейдеров в игре",
"Shaders": "Шейдеры",
"ReshadeNotInstalled": "Вы не установили vkBasalt и библиотеку reshade-shaders",
"GameModeNotInstalled": "Вы не установили GameMode",
"SwitcherooNotInstalled": "Вы не установили switcheroo-control",
"AutoDeleteDXVKLogs": "Автоудаление логов DXVK",
"RecommendableOnly": "Отображать только рекомендуемые",
"LauncherFolder": "Папка лаунчера",
"Prefix": "Префикс",
"SelectDir": "Выбрать папку",
"ResetDir": "Восстановить по умолчанию",
"Author": "Автор",
"NoImages": "Изображения не добавлены",
"SettingsTitle": "Настройки",
"General": "Общее",
"Enhancements": "Улучшения",
"WineVersion": "Версии Wine",
"Environment": "Окружение",
"EnvironmentalVariables": "Переменные окружения",
"Name": "Название",
"Value": "Значение",
"Add": "Добавить",
"Delete": "Удалить",
"Statistics": "Статистика",
"YouPlayedFor": "Вы играли",
"hours": "часов",
"minutes": "минут",
"YourLauncherLevel": "Уровень вашего лаунчера",
"Downloading": "Загрузка",
"Unpacking": "Распаковка",
"GameDownloaded": "Игра была успешно установлена",
"ApplyPatch": "Применение патча...",
"PatchRequired": "Необходим патч",
"PatchRequiredHint": "Эта версия игры не имеет патча античита. Пожалуйста, подождите несколько дней и попробуйте снова",
"TestPatch": "Применить тестовый патч",
"TestPatchHint": "Эта версия игры имеет лишь тестовый патч античита. Вы можете подождать пару дней до того, как он станет стабильным, либо применить его на свой страх и риск",
"AnalyticsTitle": "Просьба Янь Фэй...",
"ParticipateInAnalytics": "Примите участие в анонимном сборе данных",
"AnalyticsText1": "Чтобы посчитать число активных игроков на Linux, Янь Фэй просит их поделиться IP адресом после каждого обновления игры",
"AnalyticsText2": "IP адрес будет хэширован для обеспечения его безопасности",
"AnalyticsShareCountry": "Поделиться названием страны",
"Participate": "Участвовать",
"Skip": "Пропустить",
"SkipAndDontAsk": "Пропустить и не спрашивать",
"LauncherUpdateTitle": "Доступно обновление лаунчера: ",
"LauncherUpdateBody": "Вы можете скачать новую версию лаунчера с репозитория проекта: {uri.launcher}",
"TelemetryNotDisabled": "Серверы сбора телеметрии {placeholders.uppercase.company} не отключены!",
"PatchRepoUnavailableTitle": "Репозиторий патча недоступен",
"PatchRepoUnavailableBody": "Скорее всего notabug находится под атакой и не отвечает",
"DRPConf": "Discord RPC"
}

View file

@ -1,66 +0,0 @@
{
"Install": "Install",
"Update": "Update",
"Launch": "Launch",
"ResumeDownload": "Resume Download",
"Runners": "Runners",
"Language": "Language",
"Voice": "Voice Pack",
"VoiceNotification": "This feature requires you to manually select the new voice pack in the game",
"Theme": "Theme",
"Light": "Light",
"Dark": "Dark",
"System": "System",
"IsNotInstalled": "{0} is not installed",
"PreInstallationRequired": "pre-installation required",
"ToggleShadersText": "Use Home button to toggle shaders in the game",
"Shaders": "Shaders",
"ReshadeNotInstalled": "You haven't installed vkBasalt and reshade-shaders library",
"GameModeNotInstalled": "You don't have GameMode installed",
"SwitcherooNotInstalled": "You don't have switcheroo-control installed",
"AutoDeleteDXVKLogs": "Auto-delete DXVK logs",
"RecommendableOnly": "Show recommendable versions",
"LauncherFolder": "launcher folder",
"Prefix": "Prefix",
"SelectDir": "Select dir",
"ResetDir": "Reset dir",
"Author": "Author",
"NoImages": "No images added",
"SettingsTitle": "Settings",
"General": "General",
"Enhancements": "Enhancements",
"WineVersion": "Wine version",
"Environment": "Environment",
"EnvironmentalVariables": "Environmental variables",
"Name": "Name",
"Value": "Value",
"Add": "Add",
"Delete": "Delete",
"Statistics": "Statistics",
"YouPlayedFor": "You've played for",
"hours": "hours",
"minutes": "minutes",
"YourLauncherLevel": "Your launcher's level",
"Downloading": "Downloading",
"Unpacking": "Unpacking",
"GameDownloaded": "Game was successfully installed",
"ApplyPatch": "Applying patch...",
"PatchRequired": "Patch required",
"PatchRequiredHint": "This game version doesn't have an anti-cheat patch. Please, wait a few days and try again",
"TestPatch": "Apply test patch",
"TestPatchHint": "This game version has an anti-cheat patch, but it is in the testing phase. You can wait a few days until it is stable or apply it at your own risk",
"AnalyticsTitle": "Yanfei's commission...",
"ParticipateInAnalytics": "Participate in anonymous data collection",
"AnalyticsText1": "To count the active user base for Linux, Yanfei would like to collect your IP address everytime the game updates",
"AnalyticsText2": "The IP address will be hashed for security purpose",
"AnalyticsShareCountry": "Share country",
"Participate": "Participate",
"Skip": "Skip",
"SkipAndDontAsk": "Skip and don't ask again",
"LauncherUpdateTitle": "Launcher update available: ",
"LauncherUpdateBody": "You can download a new version of the launcher from the project's repository at {uri.launcher}",
"TelemetryNotDisabled": "{placeholders.uppercase.company}'s telemetry servers don't disabled!",
"PatchRepoUnavailableTitle": "Patch's repository is not available",
"PatchRepoUnavailableBody": "Most likely notabug is under attack and is not responding",
"DRPConf": "Discord RPC"
}

217
public/locales/uwu.yaml Normal file
View file

@ -0,0 +1,217 @@
# Splash window
splash:
title: woading waunchew
phrases:
- d-doing some i-impowtant s-stuff.. (≧◡≦)
- buwwying p-paimon.. xD
- p-puwwing fow yae.. (o^▽^o)
- fawming matewiaws.. uguu..
- passing abyss.. (o^▽^o)
- cowwecting achievements...
- buiwding phys qiqi.. (* ^ ω ^)
- making sacwifices fow 5*...
- finding fwiends fow co-op.. (≧◡≦)
# Launcher window
launcher:
# Progress bar
progress:
pause: pause
resume: wesume
# Game installation
game:
downloading: downwoading game... -.-
unpacking: unpacking g-game (o^▽^o)
deleting_outdated: deweting outdated fiwes...
# Voice packages installation
voice:
deleting: deweting voice packages...
downloading: downwoading {voice} voice package...
unpacking: u-unpacking {voice} voice package...
# Launcher states
states:
# When the game should be installed or updated
installation:
install_wine: install wine O
install_dxvk: install DXVK (◕ ω ◕✿)
install: install
update: u-update (/≧ ω\)
# When the game should be patched
patching:
# Patch unavailable
unavailable:
title: patch unavaiwable
hint: this game vewsion has no anti-cheat patch.
pwease, w-wait a few days b-before there will b-be a t-test ow s-stable vewsion (>⁄▽⁄<)
# Patch is in testing
test:
title: appwy test patch
hint: t-this game vewsion has an expewimentaw anti-cheat p-patch.
you can wait a few days untiw i-it is stable ow appwy it at youw own w-wisk
# Patch is stable
stable: appwy patch
# When the game is ready for playing
ready:
launch: launch (◕▿◕✿)
predownload: pwe-downwoad update
# Launcher update
update:
title: 'waunchew update avaiwable: {from} -> {to}'
body: you can downwoad the new vewsion of the waunchew fwom the pwoject's wepositowy at {repository}
# Settings window
settings:
# General
general:
title: genewaw
items:
# Language selection
lang:
# Launcher language
launcher:
title: waunchew
items:
en-us: English (US)
ru-ru: Русский
de-de: Deutsch
fr-fr: Français
it-it: Italiano
uwu: Engwish
# Game voice pack language
voice:
title: voice pack
tooltip: you will have to manuawwy sewect the new voice pack in the game
items:
en-us: engwish (us)
ja-jp: japanese
ko-kr: kowean
zn-cn: chinese
# Launcher theme
theme:
title: theme
items:
system: system
light: wight
dark: dawk
# Discord RPC
discord:
title: discowd wpc
settings:
title: discowd wpc s-settings
items:
timer: show e-estimated time spent
in-launcher: waunchew text
in-game: In-game text
selectIcon: s-sewect icon
# Some buttons
buttons:
winetricks: winetwicks
winecfg: winecfg
launcher: waunchew f-fowdew
game: game f-fowdew
# Enhancements
enhancements:
title: enhancements
items:
# HUD
hud:
title: h-hud
items:
none: n-none
dxvk: DXVK
mangohud: MangoHUD
# GameMode
gamemode:
title: use G-GameMode
tooltip:
enabled: it i-is a software t-that can impwove the game pewfowmance
disabled: ⚠️ you don't h-have g-gamemode package instawwed
# AMD FSR
fsr:
title: enable amd fsw
tooltip: this option enables a-amd fidewityfx s-super wesowution (fsw) which will scale youw game wesowution without wosing fps
# Unlock FPS
fps_unlocker:
title: unwock FPS
tooltip: this option w-will unwock 60 f-fps w-wimitation o-of the game
# Delete logs
purge_logs:
# Game logs (DXVK)
game:
title: dewete DXVK wogs
tooltip: with this option enabwed youw waunchew will a-automaticawwy
dewete dxvk wog f-files
# Launcher logs
launcher:
title: dewete w-waunchew wogs
tooltip: amount of time after which waunchew will dewete i-it's owd wog files
items:
1d: 1 day
3d: 3 days
5d: 5 days
7d: 1 week
14d: 2 weeks
never: Never
# Runners
runners:
title: wine vewsion
items:
recommended:
title: show wecommended onwy
tooltip: this option will hide unpwayable wine vewsions
# DXVKs
dxvks:
title: DXVK
items:
recommended:
title: show wecommended onwy
tooltip: this option w-will hide owd dxvk vewsions
# Shaders
shaders:
title: s-shaders
items:
shaders:
title: s-shaders
tooltip: use home button t-to toggle shaders i-in the game
items:
none: n-none
custom: custom
author: 'a-authow: {author}'
no_images: no images avaiwable
not_installed: you haven't instawwed vkbasawt and weshade-shaders wibwawy
# Environmantal variables manager
environment:
title: enviwonment
items:
# Table rows
table:
name: name
value: vawue
# Table buttons
buttons:
add: add
delete: dewete

View file

@ -1,66 +0,0 @@
{
"Install": "Install",
"Update": "Update",
"Launch": "Launch",
"ResumeDownload": "Resume Download",
"Runners": "Runners",
"Language": "Language",
"Voice": "Voice Pack",
"VoiceNotification": "This feature requires you to manually select the new voice pack in the game",
"Theme": "Theme",
"Light": "Light",
"Dark": "Dark",
"System": "System",
"IsNotInstalled": "{0} is not installed",
"PreInstallationRequired": "pre-installation required",
"ToggleShadersText": "Use Home button to toggle shaders in the game",
"Shaders": "Shaders",
"ReshadeNotInstalled": "You haven't installed vkBasalt and reshade-shaders library",
"GameModeNotInstalled": "You don't have GameMode installed",
"SwitcherooNotInstalled": "You don't have switcheroo-control installed",
"AutoDeleteDXVKLogs": "Auto-delete DXVK logs",
"RecommendableOnly": "Show recommendable versions",
"LauncherFolder": "launcher folder",
"Prefix": "Prefix",
"SelectDir": "Select dir",
"ResetDir": "Reset dir",
"Author": "Author",
"NoImages": "No images added",
"SettingsTitle": "Settings",
"General": "General",
"Enhancements": "Enhancements",
"WineVersion": "Wine version",
"Environment": "Environment",
"EnvironmentalVariables": "Environmental variables",
"Name": "Name",
"Value": "Value",
"Add": "Add",
"Delete": "Delete",
"Statistics": "Statistics",
"YouPlayedFor": "You've played for",
"hours": "hours",
"minutes": "minutes",
"YourLauncherLevel": "Your launcher's level",
"Downloading": "Downloading",
"Unpacking": "Unpacking",
"GameDownloaded": "Game was successfully installed",
"ApplyPatch": "Applying patch...",
"PatchRequired": "Patch required",
"PatchRequiredHint": "This game version doesn't have an anti-cheat patch. Please, wait a few days and try again",
"TestPatch": "Apply test patch",
"TestPatchHint": "This game version has an anti-cheat patch, but it is in the testing phase. You can wait a few days until it is stable or apply it at your own risk",
"AnalyticsTitle": "Yanfei's commission...",
"ParticipateInAnalytics": "Participate in anonymous data collection",
"AnalyticsText1": "To count the active user base for Linux, Yanfei would like to collect your IP address everytime the game updates",
"AnalyticsText2": "The IP address will be hashed for security purpose",
"AnalyticsShareCountry": "Share country",
"Participate": "Participate",
"Skip": "Skip",
"SkipAndDontAsk": "Skip and don't ask again",
"LauncherUpdateTitle": "Launcher update available: ",
"LauncherUpdateBody": "You can download a new version of the launcher from the project's repository at {uri.launcher}",
"TelemetryNotDisabled": "{placeholders.uppercase.company}'s telemetry servers don't disabled!",
"PatchRepoUnavailableTitle": "Patch's repository is not available",
"PatchRepoUnavailableBody": "Most likely notabug is under attack and is not responding",
"DRPConf": "Discord RPC"
}

View file

@ -1,66 +0,0 @@
{
"Install": "安装",
"Update": "更新",
"Launch": "发射",
"ResumeDownload": "Resume Download",
"Runners": "Runners",
"Language": "语言",
"Voice": "语音包",
"VoiceNotification": "This feature requires you to manually select the new voice pack in the game",
"Theme": "Theme",
"Light": "Light",
"Dark": "Dark",
"System": "System",
"IsNotInstalled": "{0} is not installed",
"PreInstallationRequired": "pre-installation required",
"ToggleShadersText": "Use Home button to toggle shaders in the game",
"Shaders": "Shaders",
"ReshadeNotInstalled": "You haven't installed vkBasalt and reshade-shaders library",
"GameModeNotInstalled": "You don't have GameMode installed",
"SwitcherooNotInstalled": "You don't have switcheroo-control installed",
"AutoDeleteDXVKLogs": "Auto-delete DXVK logs",
"RecommendableOnly": "Show recommendable versions",
"LauncherFolder": "launcher folder",
"Prefix": "Prefix",
"SelectDir": "Select dir",
"ResetDir": "Reset dir",
"Author": "Author",
"NoImages": "No images added",
"SettingsTitle": "设置",
"General": "一般的",
"Enhancements": "Enhancements",
"Downloading": "下载",
"WineVersion": "葡萄酒版",
"Environment": "Environment",
"EnvironmentalVariables": "Environmental variables",
"Name": "Name",
"Value": "Value",
"Add": "Add",
"Delete": "Delete",
"Statistics": "Statistics",
"YouPlayedFor": "You've played for",
"hours": "hours",
"minutes": "minutes",
"YourLauncherLevel": "Your launcher's level",
"Unpacking": "开箱",
"GameDownloaded": "游戏安装成功",
"ApplyPatch": "应用补丁...",
"PatchRequired": "需要补丁",
"PatchRequiredHint": "此游戏版本没有防作弊补丁。请等待几天,然后重试",
"TestPatch": "应用测试补丁",
"TestPatchHint": "此游戏版本有防作弊补丁,但处于测试阶段。您可以等待几天直到它稳定或自担风险应用它",
"AnalyticsTitle": "燕飞的委托...",
"ParticipateInAnalytics": "参与匿名数据收集",
"AnalyticsText1": "为了统计Linux的活跃用户群燕飞想在每次游戏更新时收集你的IP地址。",
"AnalyticsText2": "为安全起见该IP地址将被加密。",
"AnalyticsShareCountry": "分享国家",
"Participate": "参与",
"Skip": "省略",
"SkipAndDontAsk": "跳过,不要再问",
"LauncherUpdateTitle": "启动器更新可用:",
"LauncherUpdateBody": "你可以从项目的资源库中下载新版本的启动器,网址是:{uri.launcher}",
"TelemetryNotDisabled": "{placeholders.uppercase.company}'s telemetry servers don't disabled!",
"PatchRepoUnavailableTitle": "Patch's repository is not available",
"PatchRepoUnavailableBody": "Most likely notabug is under attack and is not responding",
"DRPConf": "Discord RPC"
}

View file

@ -1,66 +0,0 @@
{
"Install": "安裝",
"Update": "更新",
"Launch": "啟動遊戲",
"ResumeDownload": "Resume Download",
"Runners": "執行器",
"Language": "界面語言",
"Voice": "語音包",
"VoiceNotification": "This feature requires you to manually select the new voice pack in the game",
"Theme": "Theme",
"Light": "Light",
"Dark": "Dark",
"System": "System",
"IsNotInstalled": "{0} is not installed",
"PreInstallationRequired": "pre-installation required",
"ToggleShadersText": "Use Home button to toggle shaders in the game",
"Shaders": "Shaders",
"ReshadeNotInstalled": "You haven't installed vkBasalt and reshade-shaders library",
"GameModeNotInstalled": "You don't have GameMode installed",
"SwitcherooNotInstalled": "You don't have switcheroo-control installed",
"AutoDeleteDXVKLogs": "Auto-delete DXVK logs",
"RecommendableOnly": "Show recommendable versions",
"LauncherFolder": "launcher folder",
"Prefix": "Prefix",
"SelectDir": "Select dir",
"ResetDir": "Reset dir",
"Author": "Author",
"NoImages": "No images added",
"SettingsTitle": "設定",
"General": "一般設定",
"Enhancements": "Enhancements",
"Downloading": "下載",
"WineVersion": "Wine 版本",
"Environment": "Environment",
"EnvironmentalVariables": "Environmental variables",
"Name": "Name",
"Value": "Value",
"Add": "Add",
"Delete": "Delete",
"Statistics": "Statistics",
"YouPlayedFor": "You've played for",
"hours": "hours",
"minutes": "minutes",
"YourLauncherLevel": "Your launcher's level",
"Unpacking": "解壓縮中...",
"GameDownloaded": "遊戲安裝成功",
"ApplyPatch": "套用補丁...",
"PatchRequired": "需要補丁",
"PatchRequiredHint": "此遊戲版本沒有防作弊補丁。請等待幾天後再重試。",
"TestPatch": "套用測試補丁",
"TestPatchHint": "該遊戲版本有一個防作弊補丁,但處於測試階段,較不穩定。",
"AnalyticsTitle": "Yanfei 數據收集",
"ParticipateInAnalytics": "參與匿名數據收集",
"AnalyticsText1": "為了統計Linux活躍使用者Yanfei想在每次遊戲更新時收集您的IP位置。",
"AnalyticsText2": "為安全起見該IP位置將被加密。",
"AnalyticsShareCountry": "分享國家或地區",
"Participate": "參與",
"Skip": "跳過",
"SkipAndDontAsk": "跳過,不要再詢問我",
"LauncherUpdateTitle": "啟動器有新的更新可用:",
"LauncherUpdateBody": "您可以從此專案的資源庫中下載新版本的啟動器,網址是:{uri.launcher}",
"TelemetryNotDisabled": "{placeholders.uppercase.company}'s telemetry servers don't disabled!",
"PatchRepoUnavailableTitle": "Patch's repository is not available",
"PatchRepoUnavailableBody": "Most likely notabug is under attack and is not responding",
"DRPConf": "Discord RPC"
}

View file

@ -1,138 +1,227 @@
[
{
"title": "Wine-GE",
"runners": [
{
"family": "Wine-GE",
"name": "lutris-ge-6.21-1-x86_64",
"title": "Wine 6.21 GE 1",
"uri": "https://github.com/GloriousEggroll/wine-ge-custom/releases/download/6.21-GE-1/wine-lutris-ge-6.21-1-x86_64.tar.xz",
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": false
},
{
"family": "Wine-GE",
"name": "lutris-ge-6.20-1-x86_64",
"title": "Wine 6.20 GE 1",
"uri": "https://github.com/GloriousEggroll/wine-ge-custom/releases/download/6.20-GE-1/wine-lutris-ge-6.20-1-x86_64.tar.xz",
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"family": "Wine-GE",
"name": "lutris-ge-6.19-1-x86_64",
"title": "Wine 6.19 GE 1",
"uri": "https://github.com/GloriousEggroll/wine-ge-custom/releases/download/6.19-GE-1/wine-lutris-ge-6.19-1-x86_64.tar.xz",
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"family": "Wine-GE",
"name": "lutris-ge-6.18-1-x86_64",
"title": "Wine 6.18 GE 1",
"uri": "https://github.com/GloriousEggroll/wine-ge-custom/releases/download/6.18-GE-1/wine-lutris-ge-6.18-1-x86_64.tar.xz",
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"family": "Wine-GE",
"name": "lutris-ge-6.16-1-x86_64",
"title": "Wine 6.16 GE 1",
"uri": "https://github.com/GloriousEggroll/wine-ge-custom/releases/download/6.16-GE-1/lutris-ge-6.16-1-x86_64.tar.xz",
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
}
]
},
{
"title": "Lutris",
"runners": [
{
"name": "Lutris 6.21-5",
"version": "6.21-5",
"family": "Lutris",
"name": "lutris-6.21-6-x86_64",
"title": "Lutris 6.21-6",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.21-6/wine-lutris-6.21-6-x86_64.tar.xz",
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"family": "Lutris",
"name": "lutris-6.21-5-x86_64",
"title": "Lutris 6.21-5",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.21-5/wine-lutris-6.21-5-x86_64.tar.xz",
"archive": "tar",
"folder": "lutris-6.21-5-x86_64",
"makeFolder": false,
"executable": "bin/wine64",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"name": "Lutris 6.21-4",
"version": "6.21-4",
"family": "Lutris",
"name": "lutris-6.21-4-x86_64",
"title": "Lutris 6.21-4",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.21-4/wine-lutris-6.21-4-x86_64.tar.xz",
"archive": "tar",
"folder": "lutris-6.21-4-x86_64",
"makeFolder": false,
"executable": "bin/wine64",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": false
},
{
"name": "Lutris 6.21-3",
"version": "6.21-3",
"family": "Lutris",
"name": "lutris-6.21-3-x86_64",
"title": "Lutris 6.21-3",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.21-3/wine-lutris-6.21-3-x86_64.tar.xz",
"archive": "tar",
"folder": "lutris-6.21-3-x86_64",
"makeFolder": false,
"executable": "bin/wine64",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": false
},
{
"name": "Lutris 6.21-2",
"version": "6.21-2",
"family": "Lutris",
"name": "lutris-6.21-2-x86_64",
"title": "Lutris 6.21-2",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.21-2/wine-lutris-6.21-2-x86_64.tar.xz",
"archive": "tar",
"folder": "lutris-6.21-2-x86_64",
"makeFolder": false,
"executable": "bin/wine64",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": false
},
{
"name": "Lutris 6.21",
"version": "6.21",
"family": "Lutris",
"name": "lutris-6.21-x86_64",
"title": "Lutris 6.21",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.21/wine-lutris-6.21-x86_64.tar.xz",
"archive": "tar",
"folder": "lutris-6.21-x86_64",
"makeFolder": false,
"executable": "bin/wine64",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": false
},
{
"name": "Lutris 6.14-4",
"version": "6.14-4",
"family": "Lutris",
"name": "lutris-6.14-4-x86_64",
"title": "Lutris 6.14-4",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.14-4/wine-lutris-6.14-4-x86_64.tar.xz",
"archive": "tar",
"folder": "lutris-6.14-4-x86_64",
"makeFolder": false,
"executable": "bin/wine64",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": true
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"name": "Lutris 6.14-3",
"version": "6.14-3",
"family": "Lutris",
"name": "lutris-6.14-3-x86_64",
"title": "Lutris 6.14-3",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.14-3/wine-lutris-6.14-3-x86_64.tar.xz",
"archive": "tar",
"folder": "lutris-6.14-3-x86_64",
"makeFolder": false,
"executable": "bin/wine64",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": true
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"name": "Lutris 6.14-2",
"version": "6.14-2",
"family": "Lutris",
"name": "lutris-6.14-2-x86_64",
"title": "Lutris 6.14-2",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.14-2/wine-lutris-6.14-2-x86_64.tar.xz",
"archive": "tar",
"folder": "lutris-6.14-2-x86_64",
"makeFolder": false,
"executable": "bin/wine64",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": true
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"name": "Lutris 6.14",
"version": "6.14",
"family": "Lutris",
"name": "lutris-6.14-x86_64",
"title": "Lutris 6.14",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.14/wine-lutris-6.14-x86_64.tar.xz",
"archive": "tar",
"folder": "lutris-6.14-x86_64",
"makeFolder": false,
"executable": "bin/wine64",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": true
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"name": "Lutris 6.13-3",
"version": "6.13-3",
"family": "Lutris",
"name": "lutris-6.13-3-x86_64",
"title": "Lutris 6.13-3",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.13-3/wine-lutris-6.13-3-x86_64.tar.xz",
"archive": "tar",
"folder": "lutris-6.13-3-x86_64",
"makeFolder": false,
"executable": "bin/wine64",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": false
},
{
"name": "Lutris 6.13-2",
"version": "6.13-2",
"family": "Lutris",
"name": "lutris-6.13-2-x86_64",
"title": "Lutris 6.13-2",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.13-2/wine-lutris-6.13-2-x86_64.tar.xz",
"archive": "tar",
"folder": "lutris-6.13-2-x86_64",
"makeFolder": false,
"executable": "bin/wine64",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": false
},
{
"name": "Lutris 6.13",
"version": "6.13",
"family": "Lutris",
"name": "lutris-6.13-x86_64",
"title": "Lutris 6.13",
"uri": "https://github.com/lutris/wine/releases/download/lutris-6.13/wine-lutris-6.13-x86_64.tar.xz",
"archive": "tar",
"folder": "lutris-6.13-x86_64",
"makeFolder": false,
"executable": "bin/wine64",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "bin/wine64",
"wineserver": "bin/wineserver",
"winecfg": "lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": false
}
]
},
@ -140,137 +229,89 @@
"title": "Proton-GE",
"runners": [
{
"family": "Proton-GE",
"name": "Proton-6.21-GE-2",
"version": "6.21-GE-2",
"title": "Proton 6.21 GE 2",
"uri": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/6.21-GE-2/Proton-6.21-GE-2.tar.gz",
"archive": "tar",
"folder": "Proton-6.21-GE-2",
"makeFolder": false,
"executable": "files/bin/wine64",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "files/bin/wine64",
"wineserver": "files/bin/wineserver",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"family": "Proton-GE",
"name": "Proton-6.20-GE-1",
"version": "6.20-GE-1",
"title": "Proton 6.20 GE 1",
"uri": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/6.20-GE-1/Proton-6.20-GE-1.tar.gz",
"archive": "tar",
"folder": "Proton-6.20-GE-1",
"makeFolder": false,
"executable": "files/bin/wine64",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": true
"files": {
"wine": "files/bin/wine64",
"wineserver": "files/bin/wineserver",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"family": "Proton-GE",
"name": "Proton-6.19-GE-2",
"version": "6.19-GE-2",
"title": "Proton 6.19 GE 2",
"uri": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/6.19-GE-2/Proton-6.19-GE-2.tar.gz",
"archive": "tar",
"folder": "Proton-6.19-GE-2",
"makeFolder": false,
"executable": "files/bin/wine64",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "files/bin/wine64",
"wineserver": "files/bin/wineserver",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"family": "Proton-GE",
"name": "Proton-6.19-GE-1",
"version": "6.19-GE-1",
"title": "Proton 6.19 GE 1",
"uri": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/6.19-GE-1/Proton-6.19-GE-1.tar.gz",
"archive": "tar",
"folder": "Proton-6.19-GE-1",
"makeFolder": false,
"executable": "files/bin/wine64",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "files/bin/wine64",
"wineserver": "files/bin/wineserver",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"family": "Proton-GE",
"name": "Proton-6.18-GE-2",
"version": "6.18-GE-2",
"title": "Proton 6.18 GE 2",
"uri": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/6.18-GE-2/Proton-6.18-GE-2.tar.gz",
"archive": "tar",
"folder": "Proton-6.18-GE-2",
"makeFolder": false,
"executable": "files/bin/wine64",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "files/bin/wine64",
"wineserver": "files/bin/wineserver",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"family": "Proton-GE",
"name": "Proton-6.18-GE-1",
"version": "6.18-GE-1",
"title": "Proton 6.18 GE 1",
"uri": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/6.18-GE-1/Proton-6.18-GE-1.tar.gz",
"archive": "tar",
"folder": "Proton-6.18-GE-1",
"makeFolder": false,
"executable": "files/bin/wine64",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
"files": {
"wine": "files/bin/wine64",
"wineserver": "files/bin/wineserver",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
},
{
"family": "Proton-GE",
"name": "Proton-6.16-GE-1",
"version": "6.16-GE-1",
"title": "Proton 6.16 GE 1",
"uri": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/6.16-GE-1/Proton-6.16-GE-1.tar.gz",
"archive": "tar",
"folder": "Proton-6.16-GE-1",
"makeFolder": false,
"executable": "files/bin/wine64",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
},
{
"name": "Proton-6.15-GE-2",
"version": "6.15-GE-2",
"uri": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/6.15-GE-2/Proton-6.15-GE-2.tar.gz",
"archive": "tar",
"folder": "Proton-6.15-GE-2",
"makeFolder": false,
"executable": "files/bin/wine64",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
},
{
"name": "Proton-6.15-GE-1",
"version": "6.15-GE-1",
"uri": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/6.15-GE-1/Proton-6.15-GE-1.tar.gz",
"archive": "tar",
"folder": "Proton-6.15-GE-1",
"makeFolder": false,
"executable": "files/bin/wine64",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
},
{
"name": "Proton-6.14-GE-2",
"version": "6.14-GE-2",
"uri": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/6.14-GE-2/Proton-6.14-GE-2.tar.gz",
"archive": "tar",
"folder": "Proton-6.14-GE-2",
"makeFolder": false,
"executable": "files/bin/wine64",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
},
{
"name": "Proton-6.14-GE-1",
"version": "6.14-GE-1",
"uri": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/6.14-GE-1/Proton-6.14-GE-1.tar.gz",
"archive": "tar",
"folder": "Proton-6.14-GE-1",
"makeFolder": false,
"executable": "files/bin/wine64",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": false
},
{
"name": "Proton-5.21-GE-1",
"version": "5.21-GE-1",
"uri": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/5.21-GE-1/Proton-5.21-GE-1.tar.gz",
"archive": "tar",
"folder": "Proton-5.21-GE-1",
"makeFolder": false,
"executable": "files/bin/wine64",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe",
"recommendable": true
"files": {
"wine": "files/bin/wine64",
"wineserver": "files/bin/wineserver",
"winecfg": "files/lib64/wine/x86_64-windows/winecfg.exe"
},
"recommended": true
}
]
}
]
]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 MiB

View file

@ -1,18 +0,0 @@
{
"name": "Prime Preset v2",
"author": "notahuman",
"uri": "https://notabug.org/Krock/GI-on-Linux/issues/200",
"images": [
{
"file": "preview.png",
"caption": {
"en": "Characters' faces",
"en-us": "Characters' faces",
"de": "Gesichter der Charaktere",
"ja": "キャラクターの顔",
"ko": "캐릭터의 얼굴",
"ru": "Лица персонажей"
}
}
]
}

View file

@ -0,0 +1,11 @@
name: Prime Preset v3
author: notahuman
uri: https://notabug.org/notahuman/presets/raw/master/Resin-Impact/vkBasalt.conf
images:
- file: preview.png
caption:
en-us: Character's faces
de-de: Gesichter der Charaktere
ja-jp: キャラクターの顔
ko-kr: 캐릭터의 얼굴
ru-ru: Лица персонажей

View file

@ -1,37 +1,40 @@
# Prime Preset v2 by notahuman
# Prime Preset v3 by notahuman
# https://notabug.org/notahuman/presets
# Hotkey: Home
effects = clarity:fakeHDR:sharp
effects = FakeHDR:Clarity:AdaptiveSharpen
reshadeTexturePath = "/usr/share/reshade/textures"
reshadeIncludePath = "/usr/share/reshade/shaders"
## FakeHDR ##
HDRPower=1.39841
radius1=0.85213
radius2=0.88853
## AdaptiveSharpen ##
curve_height=0.37657
L_compr_low=0.24841
L_compr_high=0.43627
D_compr_low=1.301
D_compr_high=0.3203
# Setting HDRPower higher makes dark things darker.
HDRPower=1.22039
# The difference between radius1 and radius2 decides the peak brightness.
# Setting radius2 higher than radius1 makes bright things brighter.
radius1=0.98731
radius2=1.00693
## Clarity ##
ClarityRadius=4
ClarityOffset=8.0
ClarityBlendMode=0
ClarityBlendIfDark=60
ClarityBlendIfLight=137
ClarityStrength=0.42023
ClarityDarkIntensity=0.6101
ClarityLightIntensity=5.2453
ClarityRadius=2
ClarityOffset=0.7
ClarityBlendMode=2
ClarityBlendIfDark=59
ClarityBlendIfLight=157
ClarityStrength=0.60449
ClarityDarkIntensity=0.5
ClarityLightIntensity=0.2
sharp = /usr/share/reshade/shaders/AdaptiveSharpen.fx
clarity = /usr/share/reshade/shaders/Clarity.fx
fakeHDR = /usr/share/reshade/shaders/FakeHDR.fx
## AdaptiveSharpen ##
curve_height=0.52501
L_compr_low=0.17477
L_compr_high=0.43627
D_compr_low=0.60133
D_compr_high=0.10459
FakeHDR = /usr/share/reshade/shaders/FakeHDR.fx
Clarity = /usr/share/reshade/shaders/Clarity.fx
AdaptiveSharpen = /usr/share/reshade/shaders/AdaptiveSharpen.fx
depthCapture = off
toggleKey = Home

View file

@ -1,6 +0,0 @@
{
"name": "Basic sharpening preset",
"author": "yagocl",
"uri": null,
"images": []
}

View file

@ -0,0 +1,2 @@
name: Basic sharpening preset
author: yagocl

View file

@ -1,18 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<!-- CSS styles -->
<link rel="stylesheet" href="../css/settings.css">
<title>An Anime Game Launcher</title>
</head>
<body theme="dark" style="text-align: center;">
<video src="./loading.webm" style="padding-top: 15%; padding-left: 5%;" width="60%" height="60%" loop muted autoplay></video>
<h4 style="color: white; padding-top: 6%;">Starting Launcher...</h4>
</body>
</html>

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 438 KiB

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 KiB

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 157 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

After

Width:  |  Height:  |  Size: 70 KiB

View file

@ -0,0 +1,46 @@
const path = require('path');
// Require bundler
const { Bundler } = require('neutralino-appimage-bundler');
// Create an object with some params
const bundler = new Bundler({
// .desktop file properties
desktop: {
// Name field
name: 'An Anime Game Launcher',
// Path to the icon
icon: path.join(__dirname, '../public/icons/64x64.png'),
// Categories (defult is Utilities)
categories: ['Game']
},
// Neutralino binary info
binary: {
// Name of the binary (cli.binaryName)
name: 'an-anime-game-launcher',
// Dist folder path
dist: path.join(__dirname, '../dist')
},
// Should AppImage contain Neutralino's dependencies or not
// If true, then AppImage will contain binary's shared libraries
includeLibraries: false,
// Some files or folders to copy inside of the the AppImage
copy: {
'public': path.join(__dirname, '../dist/an-anime-game-launcher/public')
},
// Path to the appimage to save
output: path.join(__dirname, '../dist/An Anime Game Launcher.AppImage'),
// Application version
version: '2.0.0-rc1'
});
// Bundle project
bundler.bundle();

18
settings.html Normal file
View file

@ -0,0 +1,18 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" lang="sass" href="/src/sass/settings.sass" />
<link rel="stylesheet" lang="sass" href="/src/sass/components.sass" />
<link rel="stylesheet" href="/src/css/hint.min.css" />
</head>
<body data-theme="light">
<div id="app"></div>
<script src="neutralino.js"></script>
<script type="module" src="/src/pages/settings.ts" lang="ts"></script>
</body>
</html>

16
splash.html Normal file
View file

@ -0,0 +1,16 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" lang="sass" href="/src/sass/splash.sass" />
</head>
<body data-theme="light">
<div id="app"></div>
<script src="neutralino.js"></script>
<script type="module" src="/src/pages/splash.ts" lang="ts"></script>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

BIN
src/assets/gifs/loading.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 645 KiB

View file

Before

Width:  |  Height:  |  Size: 274 KiB

After

Width:  |  Height:  |  Size: 274 KiB

View file

Before

Width:  |  Height:  |  Size: 257 KiB

After

Width:  |  Height:  |  Size: 257 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

View file

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB

View file

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

View file

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

View file

Before

Width:  |  Height:  |  Size: 654 B

After

Width:  |  Height:  |  Size: 654 B

View file

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View file

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View file

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 64 KiB

View file

Before

Width:  |  Height:  |  Size: 289 KiB

After

Width:  |  Height:  |  Size: 289 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 MiB

View file

@ -0,0 +1 @@
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 330.002 330.002" xml:space="preserve"><path d="M233.252,155.997L120.752,6.001c-4.972-6.628-14.372-7.97-21-3c-6.628,4.971-7.971,14.373-3,21 l105.75,140.997L96.752,306.001c-4.971,6.627-3.627,16.03,3,21c2.698,2.024,5.856,3.001,8.988,3.001 c4.561,0,9.065-2.072,12.012-6.001l112.5-150.004C237.252,168.664,237.252,161.33,233.252,155.997z"/></svg>

After

Width:  |  Height:  |  Size: 466 B

View file

@ -0,0 +1 @@
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="45.701px" height="45.7px" viewBox="0 0 45.701 45.7" xml:space="preserve"><g><g><path d="M20.687,38.332c-2.072,2.072-5.434,2.072-7.505,0L1.554,26.704c-2.072-2.071-2.072-5.433,0-7.504 c2.071-2.072,5.433-2.072,7.505,0l6.928,6.927c0.523,0.522,1.372,0.522,1.896,0L36.642,7.368c2.071-2.072,5.433-2.072,7.505,0 c0.995,0.995,1.554,2.345,1.554,3.752c0,1.407-0.559,2.757-1.554,3.752L20.687,38.332z"/></g></g></svg>

After

Width:  |  Height:  |  Size: 524 B

View file

@ -0,0 +1,9 @@
<script lang="ts">
import { _ } from 'svelte-i18n';
export let lang: string = '';
export let click: () => void = () => {};
</script>
<button class="button" on:click={click}>{$_(lang)}</button>

View file

@ -0,0 +1,42 @@
<script lang="ts">
import { _ } from 'svelte-i18n';
export let active: boolean = false;
export let disabled: boolean = false;
export let prop: string = '';
export let lang: string = '';
export let tooltip: string = '';
export let valueChanged: (value: boolean) => void = () => {};
import Checkmark from '../assets/svgs/checkmark.svg';
import Configs from '../ts/Configs';
Configs.get(prop).then((value) => active = value as boolean);
function updateCheckbox()
{
active = !active;
if (prop)
Configs.set(prop, active);
if (valueChanged)
valueChanged(active);
}
</script>
<div class="checkbox" class:checkbox-active={active} class:checkbox-disabled={disabled}>
<span
class:hint--bottom={tooltip !== ''}
class:hint--medium={tooltip !== ''}
aria-label={$_(tooltip)}
>{ $_(lang) }</span>
<div class="checkbox-mark" on:click={updateCheckbox}>
<!-- svelte-ignore a11y-missing-attribute -->
<img src={Checkmark} />
</div>
</div>

View file

@ -0,0 +1,123 @@
<script lang="ts">
import { _ } from 'svelte-i18n';
export let recommendable = true;
import DXVK from '../ts/core/DXVK';
import constants from '../ts/Constants';
import type {
DXVK as TDXVK
} from '../ts/types/DXVK';
import Delete from '../assets/images/delete.png';
import Download from '../assets/images/download.png';
import Loading from '../assets/gifs/loading.gif';
let dxvks: TDXVK[] = [],
installedDxvks = {},
disabledDxvks = {},
selectedVersion;
DXVK.list().then((list) => {
dxvks = list;
list.forEach((dxvk) => {
installedDxvks[dxvk.version] = dxvk.installed;
disabledDxvks[dxvk.version] = false;
});
});
DXVK.current().then((current) => selectedVersion = current?.version);
let progress = {}, applying = {};
const downloadDxvk = (dxvk: TDXVK) => {
DXVK.download(dxvk).then((stream) => {
stream?.downloadStart(() => disabledDxvks[dxvk.version] = true);
stream?.downloadProgress((current, total) => {
progress[dxvk.version] = `${Math.round(current / total * 100)}%`;
});
stream?.unpackProgress((current, total) => {
progress[dxvk.version] = `${Math.round(current / total * 100)}%`;
});
stream?.unpackFinish(async () => {
installedDxvks[dxvk.version] = true;
progress[dxvk.version] = undefined;
applying[dxvk.version] = true;
DXVK.current(dxvk);
DXVK.apply(await constants.paths.prefix.current, dxvk).then(() => {
applying[dxvk.version] = false;
disabledDxvks[dxvk.version] = false;
selectedVersion = dxvk.version;
});
});
});
};
const deleteDxvk = (dxvk: TDXVK) => {
disabledDxvks[dxvk.version] = true;
applying[dxvk.version] = true;
DXVK.delete(dxvk).then(() => {
installedDxvks[dxvk.version] = false;
disabledDxvks[dxvk.version] = false;
applying[dxvk.version] = false;
});
};
const selectDxvk = async (dxvk: TDXVK) => {
disabledDxvks[dxvk.version] = true;
applying[dxvk.version] = true;
DXVK.current(dxvk);
DXVK.apply(await constants.paths.prefix.current, dxvk).then(() => {
disabledDxvks[dxvk.version] = false;
applying[dxvk.version] = false;
selectedVersion = dxvk.version;
});
};
</script>
<div class="list">
{#each dxvks as dxvk}
<div
class="list-item"
class:list-item-downloaded={installedDxvks[dxvk.version]}
class:list-item-active={dxvk.version === selectedVersion}
class:list-item-hidden={recommendable && !dxvk.recommended}
class:list-item-downloading={progress[dxvk.version]}
class:list-item-applying={applying[dxvk.version]}
class:list-item-disabled={disabledDxvks[dxvk.version]}
on:click|self={() => {
if (installedDxvks[dxvk.version] && selectedVersion !== dxvk.version)
selectDxvk(dxvk);
}}
>
{ dxvk.version }
<div>
<span>{progress[dxvk.version] ?? ''}</span>
<!-- svelte-ignore a11y-missing-attribute -->
<img class="item-loading" src={Loading}>
<!-- svelte-ignore a11y-missing-attribute -->
<img class="item-delete" src={Delete} on:click={() => deleteDxvk(dxvk)}>
<!-- svelte-ignore a11y-missing-attribute -->
<img class="item-download" src={Download} on:click={() => downloadDxvk(dxvk)}>
</div>
</div>
{/each}
</div>

View file

@ -0,0 +1,178 @@
<script lang="ts">
import { _ } from 'svelte-i18n';
import Configs from '../ts/Configs';
export let visible: boolean = false;
export let valueChanged: (field: 'in-game' | 'in-launcher', value: string) => void = () => {};
export let iconChanged: (field: 'in-game' | 'in-launcher', icon: string) => void = () => {};
import Checkbox from './Checkbox.svelte';
// Discord RPC icons imports
// We must import them manually because otherwise
// neutralino won't be able to load them because of its restrictions
const icons = {
'bGF1bmNoZXI=': import('../../public/icons/256x256.png'),
'Z2ktaWNvbg==': import('../assets/images/discord/anime-icon.jpg'),
'Z2FtZQ==': import('../assets/images/discord/game.jpg'),
'YXJ0Z2FtZQ==': import('../assets/images/discord/chr-ms-ab-1.jpg'),
'YXJ0Z2FtZTM=': import('../assets/images/discord/chr-ms-ab-2.jpg'),
'YmVpZG91Z2FtZQ==': import('../assets/images/discord/chr-ly-bd-1.jpg'),
'a2xlZWdhbWU=': import('../assets/images/discord/chr-ms-kl-1.jpg'),
'a2xlZWdhbWUy': import('../assets/images/discord/chr-ms-kl-2.jpg'),
'YXJ0Z2FtZTI=': import('../assets/images/discord/chr-ms-kl-3.jpg'),
'YmFhbDE=': import('../assets/images/discord/chr-in-rs-1.webp'),
'eWFlbWlrbzE=': import('../assets/images/discord/chr-in-ym-1.webp'),
'eWFlbWlrbzI=': import('../assets/images/discord/chr-in-ym-2.jpg'),
'bGl5dWVnYW1l': import('../assets/images/discord/loc-ly-1.jpg'),
'aW5henVtYTE=': import('../assets/images/discord/loc-in-1.jpg'),
'aW5henVtYTI=': import('../assets/images/discord/loc-in-2.jpg'),
'aW5henVtYTM=': import('../assets/images/discord/loc-in-3.jpg'),
'aW5henVtYTQ=': import('../assets/images/discord/loc-in-4.jpg'),
'aW5henVtYTU=': import('../assets/images/discord/loc-in-5.jpg')
};
let iconSelector: 'in-game' | 'in-launcher' | null = null;
let states = {
'in-game': {
text: '',
icon: 'Z2FtZQ=='
},
'in-launcher': {
text: '',
icon: 'bGF1bmNoZXI='
}
};
Configs.get('discord.states').then((settings) => {
states = {
'in-game': {
text: settings!['in-game']['details'],
icon: btoa(settings!['in-game']['icon'])
},
'in-launcher': {
text: settings!['in-launcher']['details'],
icon: btoa(settings!['in-launcher']['icon'])
}
};
if (settings!['in-game']['state'] != '')
states['in-game']['text'] += `\n${settings!['in-game']['state']}`;
if (settings!['in-launcher']['state'] != '')
states['in-launcher']['text'] += `\n${settings!['in-launcher']['state']}`;
});
const textareaHandler = (event: KeyboardEvent, field: 'in-game' | 'in-launcher') => {
const textArea = event.srcElement as HTMLTextAreaElement;
const content = textArea.value;
if (event.key === 'Enter')
{
if (content.split('\n').length > 2)
textArea.value = content.substring(0, content.length - 1);
}
else valueChanged(field, content.trim());
};
const selectIcon = (icon: string) => {
states[iconSelector!]['icon'] = icon;
iconChanged(iconSelector!, atob(icon));
iconSelector = null;
};
</script>
<div style="display: {visible ? 'block' : 'none'}">
<h3>{$_('settings.general.items.discord.settings.title')}</h3>
<Checkbox lang="settings.general.items.discord.settings.items.timer" prop="discord.timer" />
<table class="table" style="margin-top: 16px">
<tr>
<td>
<span>{$_('settings.general.items.discord.settings.items.in-launcher')}</span>
</td>
<td>
<textarea rows="2" on:keyup={(e) => textareaHandler(e, 'in-launcher')}>{states['in-launcher']['text']}</textarea>
{#await icons[states['in-launcher']['icon']] then iconUri}
<img src={iconUri.default} alt="" on:click={() => iconSelector = iconSelector ? null : 'in-launcher'} />
{/await}
</td>
</tr>
<tr>
<td>
<span>{$_('settings.general.items.discord.settings.items.in-game')}</span>
</td>
<td>
<textarea rows="2" on:keyup={(e) => textareaHandler(e, 'in-game')}>{states['in-game']['text']}</textarea>
{#await icons[states['in-game']['icon']] then iconUri}
<img src={iconUri.default} alt="" on:click={() => iconSelector = iconSelector ? null : 'in-game'} />
{/await}
</td>
</tr>
</table>
<div class="icon-selection" style="display: {iconSelector ? 'block' : 'none'}">
<h4>{$_('settings.general.items.discord.settings.items.selectIcon')}</h4>
<div>
{#each Object.keys(icons) as icon}
{#await icons[icon] then iconUri}
<img src={iconUri.default} alt="" on:click={() => selectIcon(icon)} />
{/await}
{/each}
</div>
</div>
</div>
<style lang="sass">
.icon-selection
div
display: flex
flex-wrap: wrap
width: 100%
img
width: 48px
height: 48px
border-radius: 24px
margin: 4px
cursor: pointer
&:hover
box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.45)
table.table
td:last-child
display: inline-flex
align-items: center
width: 100%
img
width: 40px
height: 40px
border-radius: 20px
</style>

View file

@ -0,0 +1,81 @@
<script lang="ts">
import { _ } from 'svelte-i18n';
import Configs from '../ts/Configs';
export let prop: string = '';
export let lang: string = '';
export let tooltip: string = '';
export let selected: string|undefined;
export let items = {};
export let selectionUpdated: (property: string, value: boolean, list: object) => void = () => {};
import Arrow from '../assets/svgs/arrow.svg';
import Checkmark from '../assets/svgs/checkmark.svg';
let selectionOpen = false;
let selectedValue = selected;
let selectedValues = {};
Object.keys(items).forEach((key) => selectedValues[key] = false);
Configs.get(prop).then((values) => {
(values as string[]).forEach((key) => selectedValues[key] = true);
});
const updateCheckbox = (value: string) => {
selectedValues[value] = !selectedValues[value];
let activeVoices: string[] = [];
Object.keys(selectedValues).forEach((key) => {
if (selectedValues[key])
activeVoices.push(key);
});
Configs.set(prop, activeVoices);
selectionUpdated(value, selectedValues[value], selectedValues);
};
</script>
<div class="select dropdown-checkboxes" class:select-active={selectionOpen}>
<span>{ $_(lang) }</span>
<div class="select-options">
<ul>
{#each Object.keys(items) as value}
<li>
<div class="checkbox" class:checkbox-active={selectedValues[value]}>
<span>{ $_(items[value]) }</span>
<div class="checkbox-mark" on:click={() => updateCheckbox(value)}>
<!-- svelte-ignore a11y-missing-attribute -->
<img src={Checkmark} />
</div>
</div>
</li>
{/each}
</ul>
</div>
<div
class="selected-item"
class:hint--left={tooltip !== ''}
class:hint--medium={tooltip !== ''}
aria-label={$_(tooltip)}
on:click={() => selectionOpen = !selectionOpen}
>
<span>{ selectedValue ? $_(items[selectedValue]) : '' }</span>
<!-- svelte-ignore a11y-missing-attribute -->
<img src={Arrow} class:selection-empty={selectedValue === undefined} />
</div>
</div>
<style>
.dropdown-checkboxes .selected-item img.selection-empty
{
margin-left: 0;
}
</style>

View file

@ -0,0 +1,64 @@
<script lang="ts">
import { _ } from 'svelte-i18n';
import Configs from '../ts/Configs';
import Button from './Button.svelte';
let last_id = 0, variables = {}, selected;
Configs.get('env').then((env) => {
for (const key of Object.keys(env as object))
{
variables[last_id++] = {
key: key,
value: env![key]
};
}
});
const updateEnv = () => {
let env = {};
for (const key of Object.keys(variables))
if (variables[key].key && variables[key].value)
env[variables[key].key] = variables[key].value;
Configs.set('env', env);
};
</script>
<div>
<table class="table properties-table" style="margin-top: 16px">
<tr>
<th>{$_('settings.environment.items.table.name')}</th>
<th>{$_('settings.environment.items.table.value')}</th>
</tr>
{#each Object.keys(variables) as key}
<tr on:click={() => selected = key} class:selected={selected === key}>
<td>
<span>{variables[key].key}</span>
<input bind:value={variables[key].key} on:change={updateEnv} />
</td>
<td>
<span>{variables[key].value}</span>
<input bind:value={variables[key].value} on:change={updateEnv} />
</td>
</tr>
{/each}
</table>
<div style="margin-top: 16px">
<Button lang="settings.environment.items.buttons.add" click={() => variables[last_id++] = { key: '', value: '' }} />
<Button lang="settings.environment.items.buttons.delete" click={() => {
delete variables[selected];
selected = undefined;
updateEnv();
}} />
</div>
</div>

View file

@ -0,0 +1,124 @@
<script lang="ts">
import { _ } from 'svelte-i18n';
export let recommendable = true;
import type { Runner, RunnerFamily } from '../ts/types/Runners';
import Runners from '../ts/core/Runners';
import Delete from '../assets/images/delete.png';
import Download from '../assets/images/download.png';
import Arrow from '../assets/svgs/arrow.svg';
let runners: RunnerFamily[] = [],
installedRunners = {},
disabledRunners = {},
openedFamily,
selectedVersion;
Runners.list().then((list) => {
runners = list;
for (const family of runners)
for (const runner of family.runners)
{
installedRunners[runner.name] = runner.installed;
disabledRunners[runner.name] = false;
}
});
Runners.current().then((current) => {
selectedVersion = current;
if (current)
openedFamily = current.family;
});
let progress = {}, applying = {};
const downloadRunner = (runner: Runner) => {
Runners.download(runner).then((stream) => {
stream?.downloadStart(() => disabledRunners[runner.name] = true);
stream?.downloadProgress((current, total) => {
progress[runner.name] = `${Math.round(current / total * 100)}%`;
});
stream?.unpackProgress((current, total) => {
progress[runner.name] = `${Math.round(current / total * 100)}%`;
});
stream?.unpackFinish(() => {
installedRunners[runner.name] = true;
disabledRunners[runner.name] = false;
progress[runner.name] = undefined;
selectedVersion = runner;
Runners.current(runner);
});
});
};
const deleteRunner = (runner: Runner) => {
disabledRunners[runner.name] = true;
applying[runner.name] = true;
Runners.delete(runner).then(() => {
installedRunners[runner.name] = false;
disabledRunners[runner.name] = false;
applying[runner.name] = false;
});
};
</script>
<div class="list">
{#each runners as family}
<div
class="list-title"
class:list-title-open={openedFamily === family.title}
on:click={() => openedFamily = openedFamily != family.title ? family.title : null}
>
<span>{family.title}</span>
<img src={Arrow} alt="" />
</div>
{#if openedFamily === family.title}
{#each family.runners as runner}
<div
class="list-item"
class:list-item-downloaded={installedRunners[runner.name]}
class:list-item-active={runner.name === selectedVersion.name}
class:list-item-hidden={recommendable && !runner.recommended}
class:list-item-downloading={progress[runner.name]}
class:list-item-applying={applying[runner.name]}
class:list-item-disabled={disabledRunners[runner.name]}
on:click|self={() => {
if (installedRunners[runner.name] && selectedVersion.name !== runner.name)
{
selectedVersion = runner;
Runners.current(runner);
}
}}
>
{ runner.title }
<div>
<span>{progress[runner.name] ?? ''}</span>
<!-- svelte-ignore a11y-missing-attribute -->
<img class="item-delete" src={Delete} on:click={() => deleteRunner(runner)}>
<!-- svelte-ignore a11y-missing-attribute -->
<img class="item-download" src={Download} on:click={() => downloadRunner(runner)}>
</div>
</div>
{/each}
{/if}
{/each}
</div>

View file

@ -0,0 +1,73 @@
<script lang="ts">
import { _ } from 'svelte-i18n';
import Configs from '../ts/Configs';
export let prop: string = '';
export let lang: string = '';
export let tooltip: string = '';
export let items = {};
export let valueChanged: (value: string) => void = () => {};
import Arrow from '../assets/svgs/arrow.svg';
let selectionOpen = false;
let selectedValue;
const selectionChanged = (e: MouseEvent) => {
const li = e.target as HTMLElement;
if (!li.classList.contains('selected'))
{
const lis = li.parentElement!.children!;
for (let i = 0; i < lis.length; i++)
lis[i].classList.remove('selected');
li.classList.add('selected');
Configs.set(prop, li.getAttribute('data-value'));
selectionOpen = false;
}
};
Configs.get(prop).then((value) => selectedValue = value);
</script>
<div class="select" class:select-active={selectionOpen}>
<span>{ $_(lang) }</span>
<div class="select-options">
<ul>
{#each Object.keys(items) as itemLang}
<li
data-value={itemLang}
on:click={selectionChanged}
on:click={() => {
selectedValue = itemLang;
valueChanged(selectedValue);
}}
class:selected={itemLang === selectedValue}
>{ $_(items[itemLang]) }</li>
{/each}
</ul>
</div>
<div
class="selected-item"
class:hint--left={tooltip !== ''}
class:hint--medium={tooltip !== ''}
aria-label={$_(tooltip)}
on:click={() => selectionOpen = !selectionOpen}
>
<span>{ $_(items[selectedValue]) }</span>
<img src={Arrow} alt="" />
</div>
</div>

View file

@ -0,0 +1,68 @@
<script lang="ts">
import { _, locale } from 'svelte-i18n';
import type { Shader } from '../ts/types/Shaders';
import Shaders from '../ts/launcher/Shaders';
import Launcher from '../ts/Launcher';
import SelectionBox from './SelectionBox.svelte';
let shaders: Shader[] = [],
reshadeInstalled = true,
shadersOptions = {
'none': 'settings.shaders.items.shaders.items.none'
};
Shaders.list().then((list) => {
shaders = list;
for (const shader of list)
shadersOptions[shader.folder] = shader.name;
shadersOptions['custom'] = 'settings.shaders.items.shaders.items.custom';
});
Launcher.isPackageAvailable('reshade').then((available) => reshadeInstalled = available);
</script>
<div>
{#if !reshadeInstalled}
<p>{$_('settings.shaders.items.not_installed')}</p>
{:else}
<SelectionBox
lang="settings.shaders.items.shaders.title"
tooltip="settings.shaders.items.shaders.tooltip"
prop="shaders"
items={shadersOptions}
/>
{#each shaders as shader}
<h3>{shader.name}</h3>
<p>{$_('settings.shaders.items.author', { values: { author: shader.author } })}</p>
{#if !shader.images}
<p>{$_('settings.shaders.items.no_images')}</p>
{:else}
{#each shader.images as image}
{#await Shaders.getPicture(shader.folder, image.file) then picture}
<img class="shader-image" src={picture} alt="" />
<p class="shader-image-title">{$locale && image.caption[$locale] ? image.caption[$locale] : image.caption['en-us']}</p>
{/await}
{/each}
{/if}
{/each}
{/if}
</div>
<style lang="sass">
.shader-image
width: 100%
.shader-image-title
text-align: center
margin-top: 8px
</style>

167
src/defaultSettings.ts Normal file
View file

@ -0,0 +1,167 @@
import Configs from './ts/Configs';
import constants from './ts/Constants';
import promisify from './ts/core/promisify';
promisify(async () => {
Configs.defaults({
lang: {
launcher: 'en-us',
voice: [
'en-us'
]
},
folders: {
/**
* Path to wine prefix
*
* @default "~/.local/share/anime-game-launcher/game"
*/
prefix: await constants.paths.prefix.default,
/**
* Path to game installation folder
*
* @default "~/.local/share/anime-game-launcher/game/drive_c/Program Files/[An Anime Game]"
*/
game: `${await constants.paths.prefix.default}/drive_c/Program Files/${constants.placeholders.uppercase.first} ${constants.placeholders.uppercase.second}`,
/**
* Path to some temp folder
*
* @default "~/.local/share/anime-game-launcher"
*/
temp: await constants.paths.launcherDir
},
/**
* Runner name to use, or null if runner is not specified
*
* @default null
*/
runner: null,
/**
* DXVK name to use, or null if DXVK is not specified
*
* @default null
*/
dxvk: null,
/**
* Environment variables
*
* null to disable any
*
* @default { WINEESYNC: 1 }
*/
env: {
WINEESYNC: 1
},
/**
* Launcher theme
*
* Can be "system", "light" and "dark"
*
* @defaul "system"
*/
theme: 'system',
/**
* HUD
*
* "none" if not in use. Otherwise it's "dxvk" or "mangohud"
*
* @default "none"
*/
hud: 'none',
/**
* vkBasalt preset to use
*
* "none" if not in use. Otherwise it should be a folder name from the "shaders" folder
*
* @default "none"
*/
shaders: 'none',
/**
* Discord RPC integration
*/
discord: {
/**
* If it is enabled
*
* @default false
*/
enabled: false,
/**
* Should it display amount of spent time or not
*
* @default true
*/
timer: true,
/**
* Discord RPC states
*/
states: {
'in-launcher': {
details: 'Preparing to launch',
state: '',
icon: 'launcher'
},
'in-game': {
details: 'Exploring the landscape',
state: 'of Teyvat',
icon: 'game'
}
}
},
/**
* If the launcher should use GameMode
*
* @default false
*/
gamemode: false,
/**
* If the launcher should enable AMD FSR
*
* @default true
*/
fsr: true,
/**
* If the launcher should unlock FPS
*
* @default false
*/
fps_unlocker: false,
/**
* If the launcher should automatically delete log files
*/
purge_logs: {
/**
* Should launcher delete some game logs (DXVK .log and .dmp files)
*
* @default true
*/
game: true,
/**
* Period of time launcher should delete its logs
*
* Can be in "*d" format, where * is amount of days (e.g. 5d = 5 days), or "never" to never delete logs
*
* @default "5d"
*/
launcher: '5d'
}
});
});

Some files were not shown because too many files have changed in this diff Show more