diff --git a/static/webui/script.js b/static/webui/script.js
index a03783f2..1f831512 100644
--- a/static/webui/script.js
+++ b/static/webui/script.js
@@ -128,7 +128,7 @@ function setActiveLanguage(lang) {
document.querySelector("[data-lang=" + lang + "]").classList.add("active");
window.dictPromise = new Promise(resolve => {
- const webui_lang = ["en", "ru", "fr"].indexOf(lang) == -1 ? "en" : lang;
+ const webui_lang = ["en", "ru", "fr", "de"].indexOf(lang) == -1 ? "en" : lang;
let script = document.getElementById("translations");
if (script) document.documentElement.removeChild(script);
diff --git a/static/webui/translations/de.js b/static/webui/translations/de.js
new file mode 100644
index 00000000..f0d44d87
--- /dev/null
+++ b/static/webui/translations/de.js
@@ -0,0 +1,136 @@
+// German translation by Animan8000
+dict = {
+ general_inventoryUpdateNote: `Hinweis: Änderungen, die hier vorgenommen werden, werden erst im Spiel angewendet, sobald das Inventar synchronisiert wird. Die Sternenkarte zu besuchen, sollte der einfachste Weg sein, dies auszulösen.`,
+ general_addButton: `Hinzufügen`,
+ general_bulkActions: `Massenaktionen`,
+ code_nonValidAuthz: `Deine Anmeldedaten sind nicht mehr gültig.`,
+ code_changeNameConfirm: `In welchen Namen möchtest du deinen Account umbenennen?`,
+ code_deleteAccountConfirm: `Bist du sicher, dass du deinen Account |DISPLAYNAME| (|EMAIL|) löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.`,
+ code_archgun: `Arch-Gewehr`,
+ code_melee: `Nahkampf`,
+ code_pistol: `Pistole`,
+ code_rifle: `Gewehr`,
+ code_shotgun: `Schrotflinte`,
+ code_kitgun: `Kitgun`,
+ code_zaw: `Zaw`,
+ code_moteAmp: `Anfangsverstärker`,
+ code_amp: `Verstärker`,
+ code_sirocco: `Sirocco`,
+ code_kDrive: `K-Drive`,
+ code_legendaryCore: `Legendärer Kern`,
+ code_traumaticPeculiar: `Kuriose Mod: Traumatisch`,
+ code_starter: `|MOD| (Defekt)`,
+ code_badItem: `(Fälschung)`,
+ code_maxRank: `Max. Rang`,
+ code_rename: `Umbenennen`,
+ code_renamePrompt: `Neuen benutzerdefinierten Namen eingeben:`,
+ code_remove: `Entfernen`,
+ code_addItemsConfirm: `Bist du sicher, dass du |COUNT| Gegenstände zu deinem Account hinzufügen möchtest?`,
+ code_noEquipmentToRankUp: `Keine Ausstattung zum Rangaufstieg verfügbar.`,
+ code_succAdded: `Erfolgreich hinzugefügt.`,
+ code_buffsNumber: `Anzahl der Buffs`,
+ code_cursesNumber: `Anzahl der Flüche`,
+ code_rerollsNumber: `Anzahl der Umrollversuche`,
+ code_viewStats: `Statistiken anzeigen`,
+ code_rank: `Rang`,
+ code_count: `Anzahl`,
+ code_focusAllUnlocked: `Alle Fokus-Schulen sind bereits freigeschaltet.`,
+ code_focusUnlocked: `|COUNT| neue Fokus-Schulen freigeschaltet! Ein Inventar-Update wird benötigt, damit die Änderungen im Spiel sichtbar werden. Die Sternenkarte zu besuchen, sollte der einfachste Weg sein, dies auszulösen.`,
+ code_addModsConfirm: `Bist du sicher, dass du |COUNT| Mods zu deinem Account hinzufügen möchtest?`,
+ code_succImport: `Erfolgreich importiert.`,
+ login_description: `Melde dich mit deinem OpenWF-Account an (denselben Angaben wie im Spiel, wenn du dich mit diesem Server verbindest).`,
+ login_emailLabel: `E-Mail-Adresse`,
+ login_passwordLabel: `Passwort`,
+ login_loginButton: `Anmelden`,
+ navbar_logout: `Abmelden`,
+ navbar_renameAccount: `Account umbenennen`,
+ navbar_deleteAccount: `Account löschen`,
+ navbar_inventory: `Inventar`,
+ navbar_mods: `Mods`,
+ navbar_quests: `Quests`,
+ navbar_cheats: `Cheats`,
+ navbar_import: `Importieren`,
+ inventory_addItems: `Gegenstände hinzufügen`,
+ inventory_suits: `Warframes`,
+ inventory_longGuns: `Primärwaffen`,
+ inventory_pistols: `Sekundärwaffen`,
+ inventory_melee: `Nahkampfwaffen`,
+ inventory_spaceSuits: `Archwings`,
+ inventory_spaceGuns: `Archwing Primärwaffen`,
+ inventory_spaceMelee: `Archwing Nahkampfwaffen`,
+ inventory_mechSuits: `Necramechs`,
+ inventory_sentinels: `Wächter`,
+ inventory_sentinelWeapons: `Wächter-Waffen`,
+ inventory_operatorAmps: `Verstärker`,
+ inventory_hoverboards: `K-Drives`,
+ inventory_bulkAddSuits: `Fehlende Warframes hinzufügen`,
+ inventory_bulkAddWeapons: `Fehlende Waffen hinzufügen`,
+ inventory_bulkAddSpaceSuits: `Fehlende Archwings hinzufügen`,
+ inventory_bulkAddSpaceWeapons: `Fehlende Archwing-Waffen hinzufügen`,
+ inventory_bulkAddSentinels: `Fehlende Wächter hinzufügen`,
+ inventory_bulkAddSentinelWeapons: `Fehlende Wächter-Waffen hinzufügen`,
+ inventory_bulkRankUpSuits: `Alle Warframes auf Max. Rang`,
+ inventory_bulkRankUpWeapons: `Alle Waffen auf Max. Rang`,
+ inventory_bulkRankUpSpaceSuits: `Alle Archwings auf Max. Rang`,
+ inventory_bulkRankUpSpaceWeapons: `Alle Archwing-Waffen auf Max. Rang`,
+ inventory_bulkRankUpSentinels: `Alle Wächter auf Max. Rang`,
+ inventory_bulkRankUpSentinelWeapons: `Alle Wächter-Waffen auf Max. Rang`,
+
+ currency_RegularCredits: `Credits`,
+ currency_PremiumCredits: `Platinum`,
+ currency_FusionPoints: `Endo`,
+ currency_PrimeTokens: `Reines Aya`,
+ currency_owned: `Du hast |COUNT|.`,
+ powersuit_archonShardsLabel: `Archon-Scherben-Slots`,
+ powersuit_archonShardsDescription: `Du kannst diese unbegrenzten Slots nutzen, um eine Vielzahl von Verbesserungen anzuwenden.`,
+ mods_addRiven: `Riven hinzufügen`,
+ mods_fingerprint: `Fingerabdruck`,
+ mods_fingerprintHelp: `Benötigst du Hilfe mit dem Fingerabdruck?`,
+ mods_rivens: `Rivens`,
+ mods_mods: `Mods`,
+ mods_bulkAddMods: `Fehlende Mods hinzufügen`,
+ cheats_administratorRequirement: `Du musst Administrator sein, um diese Funktion nutzen zu können. Um Administrator zu werden, füge |DISPLAYNAME|
zu administratorNames
in der config.json hinzu.`,
+ cheats_server: `Server`,
+ cheats_skipTutorial: `Tutorial überspringen`,
+ cheats_skipAllDialogue: `Alle Dialoge überspringen`,
+ cheats_unlockAllScans: `Alle Scans freischalten`,
+ cheats_unlockAllMissions: `Alle Missionen freischalten`,
+ cheats_infiniteCredits: `Unendlich Credits`,
+ cheats_infinitePlatinum: `Unendlich Platinum`,
+ cheats_infiniteEndo: `Unendlich Endo`,
+ cheats_infiniteRegalAya: `Unendlich Reines Aya`,
+ cheats_infiniteHelminthMaterials: `Unendlich Helminth-Materialien`,
+ cheats_unlockAllShipFeatures: `Alle Schiffs-Funktionen freischalten`,
+ cheats_unlockAllShipDecorations: `Alle Schiffsdekorationen freischalten`,
+ cheats_unlockAllFlavourItems: `Alle Sammlerstücke freischalten`,
+ cheats_unlockAllSkins: `Alle Skins freischalten`,
+ cheats_unlockAllCapturaScenes: `Alle Photora-Szenen freischalten`,
+ cheats_universalPolarityEverywhere: `Universelle Polarität überall`,
+ cheats_unlockDoubleCapacityPotatoesEverywhere: `Orokin Reaktor & Beschleuniger überall`,
+ cheats_unlockExilusEverywhere: `Exilus-Adapter überall`,
+ cheats_unlockArcanesEverywhere: `Arkana-Adapter überall`,
+ cheats_noDailyStandingLimits: `Kein tägliches Ansehenslimit`,
+ cheats_instantResourceExtractorDrones: `Sofortige Ressourcen-Extraktor-Drohnen`,
+ cheats_noDojoRoomBuildStage: `Kein Dojo-Raum-Bauvorgang`,
+ cheats_fastDojoRoomDestruction: `Schnelle Dojo-Raum-Zerstörung`,
+ cheats_noDojoResearchCosts: `Keine Dojo-Forschungskosten`,
+ cheats_noDojoResearchTime: `Keine Dojo-Forschungszeit`,
+ cheats_fastClanAscension: `Schneller Clan-Aufstieg`,
+ cheats_spoofMasteryRank: `Gefälschter Meisterschaftsrang (-1 zum deaktivieren)`,
+ cheats_saveSettings: `Einstellungen speichern`,
+ cheats_account: `Account`,
+ cheats_unlockAllFocusSchools: `Alle Fokus-Schulen freischalten`,
+ cheats_helminthUnlockAll: `Helminth vollständig aufleveln`,
+ cheats_changeSupportedSyndicate: `Unterstütztes Syndikat`,
+ cheats_changeButton: `Ändern`,
+ cheats_none: `Keines`,
+ cheats_quests: `Quests`,
+ cheats_quests_unlockAll: `Alle Quests freischalten`,
+ cheats_quests_completeAll: `Alle Quests abschließen`,
+ cheats_quests_completeAllUnlocked: `Alle freigeschalteten Quests abschließen`,
+ cheats_quests_resetAll: `Alle Quests zurücksetzen`,
+ cheats_quests_giveAll: `Alle Quests erhalten`,
+ import_importNote: `Du kannst hier eine vollständige oder teilweise Inventarantwort (Client-Darstellung) einfügen. Alle Felder, die vom Importer unterstützt werden, werden in deinem Account überschrieben.`,
+ import_submit: `Absenden`,
+ prettier_sucks_ass: ``
+};
\ No newline at end of file