Jak 2: Finnish translations (#3533)
Some checks failed
Build / 🖥️ Windows (push) Has been cancelled
Build / 🐧 Linux (push) Has been cancelled
Build / 🍎 MacOS (push) Has been cancelled
Inform Pages Repo / Generate Documentation (push) Has been cancelled
Lint / 📝 Formatting (push) Has been cancelled
Lint / 📝 Required Checks (push) Has been cancelled
Lint / 📝 Optional Checks (push) Has been cancelled

Finnish translations for Jak 2. These include cutscenes and all game
text.

All subtitle timings for cutscenes as well as non-cutscenes have been
edited for a better flow and to fit the 4x3 ratio.
I've been working on these solo for the most part so any input from
other finns would be appreciated.

A few issues in the progress menu I mentioned in #3504 still persist

I couldn't figure out how to add Finnish to the options menu, so I'm
gonna need someone else to do that part. 💀
But I was able to add them to the debug menu.

I also increased subtitle heap so hopefully that doesn't break anything.

Fixes #3620

---------

Co-authored-by: Tyler Wilding <xtvaser@gmail.com>
This commit is contained in:
Aloqas 2024-08-11 20:01:06 +03:00 committed by GitHub
parent 1ba3fa7cda
commit 9d2a23effe
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
18 changed files with 19998 additions and 703 deletions

View file

@ -127,7 +127,7 @@ Unfortunately you'll still need task runner on your local machine to run the gam
Install packages and init repository:
```sh
sudo apt install gcc make cmake build-essential g++ nasm clang-format libxrandr-dev libxinerama-dev libxcursor-dev libpulse-dev libxi-dev python libgl1-mesa-dev libssl-dev
sudo apt install gcc make cmake ninja-build build-essential g++ nasm clang-format libxrandr-dev libxinerama-dev libxcursor-dev libpulse-dev libxi-dev python libgl1-mesa-dev libssl-dev
sudo sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b /usr/local/bin
```

View file

@ -1156,6 +1156,25 @@ static std::vector<ReplaceInfo> s_replace_info_jak2 = {
"<FLAG_KOREA>"},
{"~Y~1L<FLAG_PART_FILL>~]~-1H~Y~1L<FLAG_PART_FILL>~Z~-11H~3L<FLAG_PART_JAPAN_SUN>~Z~+26H",
"<FLAG_JAPAN>"},
{"~Y~1L<FLAG_PART_FILL>~Z~7L<FLAG_PART_HORZ_STRIPE_MIDDLE>~Z~7L<FLAG_PART_VERT_STRIPE_RIGHT>~]"
"~-1H~Y~1L<FLAG_PART_FILL>~Z~7L<FLAG_PART_HORZ_STRIPE_MIDDLE>~Z~+26H",
"<FLAG_FINLAND>"},
{"~Y~7L<FLAG_PART_FILL>~Z~5L<FLAG_PART_HORZ_STRIPE_MIDDLE>~Z~5L<FLAG_PART_VERT_STRIPE_RIGHT>~]"
"~-1H~Y~7L<FLAG_PART_FILL>~Z~5L<FLAG_PART_HORZ_STRIPE_MIDDLE>~Z~+26H",
"<FLAG_SWEDEN>"},
{"~Y~3L<FLAG_PART_FILL>~Z~1L<FLAG_PART_HORZ_STRIPE_MIDDLE>~Z~1L<FLAG_PART_VERT_STRIPE_RIGHT>~]"
"~-1H~Y~3L<FLAG_PART_FILL>~Z~1L<FLAG_PART_HORZ_STRIPE_MIDDLE>~Z~+26H",
"<FLAG_DENMARK>"},
{"~Y~1L<FLAG_PART_FILL>~Z~3L<FLAG_PART_TOP_BOTTOM_STRIPE>~]~-1H~Y~1L<FLAG_PART_FILL>~Z~3L<FLAG_"
"PART_TOP_BOTTOM_STRIPE>~Z~-19H~1L<FLAG_PART_VERT_STRIPE_MIDDLE>~Z~-23H~7L<FLAG_PART_VERT_"
"STRIPE_RIGHT>~Z~-23H~7L<FLAG_PART_HORZ_STRIPE_MIDDLE>~Z~7L<FLAG_PART_HORZ_STRIPE_MIDDLE>~Z~"
"+26H",
"<FLAG_NORWAY>"},
{"~Y~1L<FLAG_PART_FILL>~Z~7L<FLAG_PART_TOP_BOTTOM_STRIPE>~]~-1H~Y~1L<FLAG_PART_FILL>~Z~7L<FLAG_"
"PART_TOP_BOTTOM_STRIPE>~Z~-19H~1L<FLAG_PART_VERT_STRIPE_MIDDLE>~Z~-23H~3L<FLAG_PART_VERT_"
"STRIPE_RIGHT>~Z~-23H~3L<FLAG_PART_HORZ_STRIPE_MIDDLE>~Z~3L<FLAG_PART_HORZ_STRIPE_MIDDLE>~Z~"
"+26H",
"<FLAG_ICELAND>"},
// weird stuff
// - descenders

View file

@ -52,14 +52,28 @@
(defenum language-enum
:type int64
(english)
(french)
(german)
(spanish)
(italian)
(japanese)
(korean)
(uk-english)
(english 0)
(french 1)
(german 2)
(spanish 3)
(italian 4)
(japanese 5)
(korean 6)
(uk-english 7)
;; custom
(portuguese 8)
(finnish 9)
(swedish 10)
(danish 11)
(norwegian 12)
(dutch 13)
(br-portuguese 14)
(hungarian 15)
(catalan 16)
(icelandic 17)
(russian 18)
(polish 19)
(lithuanian 20)
)
(defenum runtime-exit-status
@ -8787,6 +8801,7 @@ Unlike [[engine]], users can use [[engine-pers]] as a parent class."
(progress-graphics-ps2-lod-dist #x1337)
(progress-graphics-msaa-off #x1338)
(progress-graphics-display #x1339)
(language-name-finnish #x133a)
)
;; ---text-id-h:text-id
@ -9433,18 +9448,6 @@ Unlike [[engine]], users can use [[engine-pers]] as a parent class."
;; settings-h ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defenum language-enum
:type int64
(english)
(french)
(german)
(spanish)
(italian)
(japanese)
(korean)
(uk-english)
)
(defenum game-feature
:type uint64
:bitfield #t

View file

@ -54,4 +54,11 @@
:lines "game/assets/jak2/subtitle/subtitle_lines_en-GB.json"
:meta "game/assets/jak2/subtitle/subtitle_meta_en-GB.json"
:lines-base "game/assets/jak2/subtitle/subtitle_lines_en-US.json"
:meta-base "game/assets/jak2/subtitle/subtitle_meta_en-US.json")
(file-json
:language-id 9
:text-version "jak2"
:lines "game/assets/jak2/subtitle/subtitle_lines_fi-FI.json"
:meta "game/assets/jak2/subtitle/subtitle_meta_fi-FI.json"
:lines-base "game/assets/jak2/subtitle/subtitle_lines_en-US.json"
:meta-base "game/assets/jak2/subtitle/subtitle_meta_en-US.json"))

View file

@ -21,7 +21,8 @@
(file-json 7 jak2 "common" '("game/assets/jak2/text/game_custom_text_en-GB.json"))
;; custom languages
(file-json 8 jak2 "common" '("game/assets/jak2/text/game_custom_text_pt-PT.json"))
(file-json 9 jak2 "common" '("game/assets/jak2/text/game_custom_text_fi-FI.json"))
(file-json 9 jak2 "common" '("game/assets/jak2/text/game_custom_text_fi-FI.json"
"game/assets/jak2/text/game_base_text_fi-FI.json"))
(file-json 10 jak2 "common" '("game/assets/jak2/text/game_custom_text_sv-SE.json"))
(file-json 11 jak2 "common" '("game/assets/jak2/text/game_custom_text_da-DK.json"))
(file-json 12 jak2 "common" '("game/assets/jak2/text/game_custom_text_no-NO.json"))

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,7 @@
{
"1a3": "138",
"1b5": "161",
"133a": "1113",
"1200": "1031",
"1201": "1032",
"1202": "1034",

View file

@ -0,0 +1,531 @@
{
"0100": "Lopeta",
"0101": "Tauko~",
"0102": "Tekstityksen kieli",
"0103": "Ääniformaatti",
"0104": "Mono",
"0105": "Stereo",
"0106": "Surround",
"0107": "Äänitehosteet",
"0108": "Musiikki",
"0109": "Puhe",
"010a": "Kieli",
"010b": "Värinätoiminto",
"010c": "Vinkit",
"010d": "Keskitä ruutu",
"010e": "Päällä",
"010f": "Pois",
"0110": "Käytä suuntanäppäimiä",
"0111": "<FLAG_USA> English",
"0112": "<FLAG_FRANCE> Fran,cais",
"0113": "<FLAG_GERMAN> Deutsch",
"0114": "<FLAG_SPAIN> Español",
"0115": "<FLAG_ITALIAN> Italiano",
"0116": "<FLAG_KOREA> ~Y~Z<K32e>~Z<K31a>~Z<K3c8>~Y~Z<K35e>~Z<K36b>~Z<K3de>~Y~Z<K30f>~Z<K31d>",
"0117": "<FLAG_JAPAN> にほんご",
"0118": "Kuvasuhde",
"0119": "Progressiivinen skannaus",
"011a": "Videotila",
"011b": "Peliasetukset",
"011c": "Grafiikan asetukset",
"011d": "Ääniasetukset",
"011e": "4x3",
"011f": "16x9",
"0120": "60Hz",
"0121": "50Hz",
"0122": "Jak II",
"0123": "Poistu demosta",
"0124": "Kyllä",
"0125": "Ei",
"0126": "Takaisin",
"0127": "OK",
"0128": "Seuraava",
"0129": "Edellinen",
"012a": "Jatka tallentamatta",
"012b": "Valitse tallennuspaikka",
"012c": "Valitse ladattava tallennus",
"012d": "Lataa peli",
"012e": "Tallenna peli",
"012f": "Tyhjä",
"0130": "Asetukset",
"0131": "Uusi peli",
"0132": "Paina START-näppäintä",
"0133": "Lopeta peli",
"0134": "Kartta",
"0135": "Valitse aloitus",
"0136": "Ennätykset",
"0137": "1. sija",
"0138": "2. sija",
"0139": "3. sija",
"013a": "4. sija",
"013b": "5. sija",
"013c": "6. sija",
"013d": "7. sija",
"013e": "8. sija",
"013f": "NYFE-leijuri",
"0140": "Luokka 1",
"0141": "Luokka 2",
"0142": "Luokka 3",
"0143": "Harjoitusrata",
"0144": "Haulikko",
"0145": "Läjäytin",
"0146": "Vulkanus-piippu",
"0147": "Rauhantekijä",
"0148": "Oninin haaste",
"0149": "Metallipää-mäiskintä",
"014a": "JET-lauta-haaste",
"014b": "Oninin teltta",
"014c": "Sikahevon saluuna",
"014d": "Stadion",
"014e": "Luokka 1 - käänteinen",
"014f": "Luokka 2 - käänteinen",
"0150": "Luokka 3 - käänteinen",
"0151": "Sataman kisa",
"0152": "Kaupungin kisa",
"0153": "Salaisuudet",
"0154": "Avattu",
"0155": "Poista Jakin pukinparta",
"0156": "Käänteinen maailma",
"0157": "Loputtomat ammukset",
"0158": "Haavoittumattomuus",
"0159": "Sankaritila",
"015a": "Välinäytösten 1. näytös",
"015b": "Välinäytösten 2. näytös",
"015c": "Välinäytösten 3. näytös",
"015d": "Leikekirja",
"015e": "Mega-leikekirja",
"015f": "Leikekirja 3",
"0160": "Tehtävän valinta",
"0161": "Loputon Raivo-Jak",
"0162": "Vulkanus-tykin harjoitusrata",
"0163": "Rauhantekijän harjoitusrata",
"0164": "Käänteiset kisat",
"0165": "Isopäinen Jak",
"0166": "Pienipäinen Jak",
"0167": "Saatavilla",
"0168": "Kerätty",
"0169": "Tehtävät",
"016a": "Valitse esialoitus",
"016b": "Valitse kioski-aloitus",
"016c": "Valitse kohtaus",
"016d": "Tekstitys",
"016e": "Aloita uudelleen",
"016f": "<ICON_MISSION_TODO>",
"0170": "<ICON_MISSION_COMPLETE>",
"0171": "Ei mitään",
"0172": "Peli",
"0173": "Aloita/lopeta",
"0174": "Osta",
"0175": "Voitto",
"0176": "Häviö",
"0177": "Kokonaisaika",
"0178": "Kierros ",
"0179": "Palauta painamalla <PAD_SQUARE>",
"017a": "Kiireinen",
"017b": "Jatka painamalla <PAD_X>",
"017c": "____~%Suoritetut tehtävät",
"017d": "Suorittamattomat tehtävät",
"017e": "Yritä uudelleen?",
"017f": "Salaisuus saatavilla päävalikosta",
"0180": "<PAD_X> = Kyllä, <PAD_TRIANGLE> = Ei",
"0181": "Paina <PAD_TRIANGLE> puhuaksesi.",
"0182": "Paina <PAD_TRIANGLE> käyttääksesi.",
"0183": "Paina <PAD_TRIANGLE> matkustaaksesi.",
"0184": "Valitse taso suuntanäppäimellä",
"0185": "Paina <PAD_TRIANGLE> poistuaksesi.",
"0186": "Paina <PAD_TRIANGLE> pelataksesi.",
"0187": "Halutako pelata uudelleen?",
"0188": "Tehtävä suoritettu",
"0189": "Tehtävä epäonnistui",
"018a": "Yritä uudelleen?",
"018b": "Ruutu ottaa nyt käyttöön 60Hz-tilan",
"018c": "Ruutu ottaa nyt käyttöön progressiivisen skannauksen",
"018d": "Jos kuva näkyy virheellisenä, televisiosi ei tue tätä tilaa",
"018e": "Jos niin käy, odota 10 sekuntia, niin ruutu palautuu takaisin",
"018f": "Ruutu on nyt 60Hz-tilassa",
"0190": "Ruutu on nyt Progresiivinen skannaus -tilassa",
"0191": "Haluatko pitää tämän tilan käytössä?",
"0192": "Levy poistettiin",
"0193": "Syötä Jak II -levy sisään, jotta voit jatkaa pelaamista",
"0194": "Virhe tietojen lukemisessa",
"0195": "Tarkista Jak II -levysi ja yritä uudelleen",
"0196": "Haluatko varmasti lopettaa?",
"0197": "Haluatko aloittaa pelin?",
"0198": "Ei tarpeeksi tilaa muistikortilla Memory__Card__(PS2) paikassa Memory__Card__Slot__~D",
"0199": "Ei Memory__Card__(PS2) liitettynä paikassa Memory__Card__slot__~D",
"019a": "Memory__Card__(PS2) paikassa Memory__Card__slot__~D on alustamaton",
"019b": "Jak II vaatii ~D Kt vapaata tilaa",
"019c": "Syötä Jak II -pelitietoja sisältävä Memory__Card__(PS2) paikkaan Memory__Card__slot__~D",
"019d": "Syötä Memory__Card__(PS2) jossa on tarpeeksi tilaa, muuten pelitietojasi ei voida tallentaa",
"019e": "Ilman alustamista pelitietoja ei voida tallentaa",
"019f": "Tallennetaan tietoja",
"01a0": "Ladataan tietoja",
"01a1": "Alustetaan",
"01a2": "Luodaan tallennustiedostoa",
"01a3": "Älä poista Memory__Card__(PS2) paikassa Memory__Card__slot__~D tai sammuta laitettasi",
"01a4": "Jak II -tallennus on jo olemassa valitsemassasi tiedostossa",
"01a5": "Haluatko korvata sen?",
"01a6": "Alusta?",
"01a7": "Jatka?",
"01a8": "Takaisin?",
"01a9": "Virhe ladattaessa",
"01aa": "Virhe tallentaessa",
"01ab": "Virhe alustaessa",
"01ac": "Virhe luodessa tallennustiedostoa",
"01ad": "Tarkista Memory__Card__(PS2) paikassa Memory__Card__slot__~D",
"01ae": "Tarkista Memory__Card__(PS2) paikassa Memory__Card__slot__~D ja yritä uudelleen",
"01af": "Memory__Card__(PS2) paikasta Memory__Card__slot__~D poistettiin",
"01b0": "Automaattinen tallennus on poistettu käytöstä",
"01b1": "Tallenna pelisi manuaalisesti, niin automaattinen tallennus palautetaan käyttöön",
"01b2": "Jak II -tallennustietoja ei löytynyt kortilta Memory__Card__(PS2) paikassa Memory__Card__slot__~D",
"01b3": "Haluatko luoda uuden Jak II -tallennuksen?",
"01b4": "Kun oheinen kuvake ilmestyy, edistykesi tallennetaan",
"01b5": "Kun tämä kuvake on ruudulla, älä irrota Memory__Card__(PS2) tai sammuta laitettasi",
"01b6": "Pakene <COLOR_WHITE>linnoituksesta",
"01b7": "Suojele Koria ja lasta",
"01b8": "Nouda lippu <COLOR_WHITE>aavekaupungista",
"01b9": "Etsi <COLOR_WHITE>pumppaamon<COLOR_PROGRESS> venttiili",
"01ba": "Räjäytä ammukset <COLOR_WHITE>linnoituksessa",
"01bb": "Kuljeta toimitus <COLOR_WHITE>Sikahevon saluunaan",
"01bc": "Läpäise haulikon <COLOR_WHITE>harjoitusrata",
"01bd": "Suojele Sigiä <COLOR_WHITE>pumppaamolla",
"01be": "Tuhoa tykit <COLOR_WHITE>viemärissä",
"01bf": "Etsi <COLOR_WHITE>läjäytin<COLOR_PROGRESS>-modi",
"01c0": "Pelasta Vin <COLOR_WHITE>avolouhoksella",
"01c1": "Voita aika <COLOR_WHITE>kisatalliin",
"01c2": "Läpäise läjäyttimen <COLOR_WHITE>harjoitusrata",
"01c3": "Tuhoa munat <COLOR_WHITE>poralautalla",
"01c4": "Etsi <COLOR_WHITE>pumppaamon<COLOR_PROGRESS> partio",
"01c5": "Nouda rahat Krewille",
"01c6": "Voita JET-lauta-haaste <COLOR_WHITE>stadionilla",
"01c7": "Etsi Linssi <COLOR_WHITE>vuoristotemppelissä",
"01c8": "Etsi Siru <COLOR_WHITE>vuoristotemppelissä",
"01c9": "Etsi Ratas <COLOR_WHITE>vuoristotemppelissä",
"01ca": "Käynnistä 5 virtakytkintä",
"01cb": "Nouse hissillä <COLOR_WHITE>palatsiin",
"01cc": "Päihitä paroni <COLOR_WHITE>palatsissa",
"01cd": "Kuljeta Vastarinnan jäsenet",
"01ce": "Suojele paikkaa <COLOR_WHITE>aavekaupungissa",
"01cf": "Nappaa tarkkailijat <COLOR_WHITE>Havenin metsässä",
"01d0": "Saata lapsi <COLOR_WHITE>voimalaan",
"01d1": "Pelasta vaanijoita Brutterille",
"01d2": "Tuhoa lasti <COLOR_WHITE>satamalla",
"01d3": "Pysäytä tankkeri",
"01d4": "Tuhoa välineistö <COLOR_WHITE>kaivannolla",
"01d5": "Räjäytä ecokaivot <COLOR_WHITE>avolouhoksella",
"01d6": "Tyhjennä <COLOR_WHITE>viemäri<COLOR_PROGRESS> löytääksesi patsaan",
"01d7": "Tuhoa alus <COLOR_WHITE>poralautalla",
"01d8": "Pelasta vaanijat <COLOR_WHITE>kaivannolla",
"01d9": "Tapa Metallipäät <COLOR_WHITE>Havenin metsässä",
"01da": "Voita luokan 3 kisa <COLOR_WHITE>stadionilla",
"01db": "Nouda sinetin pala <COLOR_WHITE>kaivannolla",
"01dc": "Nouda sinetin pala <COLOR_WHITE>vesislummeilla",
"01dd": "Tuhoa 5 Villikissa-leijuria",
"01de": "Voita Oninin haaste",
"01df": "Käytä esineitä <COLOR_WHITE>Ei-kenenkään-kanjonissa",
"01e0": "Kohtaa testit <COLOR_WHITE>Marin haudassa",
"01e1": "Avaa holvin ovi <COLOR_WHITE>Marin haudassa",
"01e2": "Läpäise ensimmäinen <COLOR_WHITE>miehuuden testi",
"01e3": "Läpäise toinen <COLOR_WHITE>miehuuden testi",
"01e4": "Päihitä paroni <COLOR_WHITE>Marin haudassa",
"01e5": "Pelasta ystävät <COLOR_WHITE>linnoituksesta",
"01e6": "Saata miehet <COLOR_WHITE>viemärien<COLOR_PROGRESS> läpi",
"01e7": "Etsi <COLOR_WHITE>Rauhantekijä",
"01e8": "Voita luokan 2 kisa <COLOR_WHITE>stadionilla",
"01e9": "Suojele piilopaikkaa pommiboteilta",
"01ea": "Tutki <COLOR_WHITE>rakennustyömaa",
"01eb": "Kiipeä <COLOR_WHITE>rakennustyömaata",
"01ec": "Voita Erol kisahaasteessa",
"01ed": "Tuhoa munat <COLOR_WHITE>avolouhoksella",
"01ee": "Nouda Elämän siemen <COLOR_WHITE>aavekaupungissa",
"01ef": "Vie Elämän siemen <COLOR_WHITE>Havenin metsään",
"01f0": "Suojele Samosia <COLOR_WHITE>Havenin metsässä",
"01f1": "Tuhoa <COLOR_WHITE>poralautan<COLOR_PROGRESS> torni",
"01f2": "Voita luokan 1 kisa <COLOR_WHITE>stadionilla",
"01f3": "Tutki <COLOR_WHITE>palatsia",
"01f4": "Hanki Marin sydän <COLOR_WHITE>asetehtaalla",
"01f5": "Päihitä Krew <COLOR_WHITE>asetehtaalla",
"01f6": "Voita peli <COLOR_WHITE>Sikahevon saluunassa",
"01f7": "Etsi Sig <COLOR_WHITE>satamanpohjalla",
"01f8": "Saata Sig <COLOR_WHITE>satamanpohjan<COLOR_PROGRESS> läpi",
"01f9": "Puolusta <COLOR_WHITE>stadionia",
"01fa": "Puolusta vaanijapalloa",
"01fb": "Tuhoa tunnelit <COLOR_WHITE>satamanpohjalla",
"01fc": "Taistele tiesi <COLOR_WHITE>pesän muurille",
"01fd": "Löydä Paroni <COLOR_WHITE>rakennustyömaalla",
"01fe": "Tuhoa <COLOR_WHITE>pesän muuri",
"01ff": "Tuhoa Metalli-Kor <COLOR_WHITE>pesällä",
"0200": "Puhu <COLOR_WHITE>Korille",
"0201": "Puhu <COLOR_WHITE>Tornille",
"0202": "Puhu <COLOR_WHITE>Krewille",
"0203": "Puhu <COLOR_WHITE>Oninille",
"0204": "Puhu <COLOR_WHITE>Vinille",
"0205": "Puhu <COLOR_WHITE>Varjolle",
"0206": "Puhu <COLOR_WHITE>Sigille",
"0207": "Puhu <COLOR_WHITE>Mekaanikolle",
"0208": "Puhu <COLOR_WHITE>Keiralle",
"0209": "Puhu <COLOR_WHITE>Brutterille",
"020a": "Tarkista <COLOR_WHITE>basaari",
"020b": "Tarkista <COLOR_WHITE>vesislummit",
"020c": "Mene <COLOR_WHITE>Ei-kenenkään-kanjonille",
"020d": "Mene <COLOR_WHITE>Marin hautaan",
"020e": "Voita <COLOR_WHITE>Metallipää-mäiskintä",
"020f": "Puolusta <COLOR_WHITE>sataman muuria",
"0210": "Tarkista <COLOR_WHITE>rakennustyömaa",
"0211": "Hyökkää <COLOR_WHITE>Metallipäiden pesään",
"0212": "Käy <COLOR_WHITE>Oraakkelin<COLOR_PROGRESS> luona",
"0213": "Haven City",
"0214": "Linnoitus",
"0215": "Laskeutumisalusta",
"0216": "Palatsin katto",
"0217": "Palatsi",
"0218": "Asetehdas",
"0219": "Aavekaupunki",
"021a": "Pumppaamo",
"021b": "Viemäri",
"021c": "Avolouhos",
"021d": "Vuoristotemppeli",
"021e": "Havenin metsä",
"021f": "Poralautta",
"0220": "Marin hauta",
"0221": "Kaivanto",
"0222": "Satamanpohja",
"0223": "Pesä",
"0224": "Hyppää painamalla <PAD_X>",
"0225": "Kieri painamalla <PAD_L1> liikkeessä",
"0226": "Paina <PAD_X> ja sitten <PAD_X> uudelleen ilmassa",
"0227": "Hyökkää painamalla <PAD_SQUARE> tai <PAD_CIRCLE>",
"0228": "Kieri ja paina sitten <PAD_X> syöksyhyppyyn",
"0229": "Hyppää ja paina <PAD_SQUARE> ilmassa",
"022a": "Paina <PAD_L1> ja sitten <PAD_X> korkeaan hyppyyn",
"022b": "Ammu painamalla <PAD_R1>",
"022c": "<PAD_DPAD_UP> laittaa aseen pois",
"022d": "<PAD_DPAD_UP> tai <PAD_R1> tuo aseen esiin",
"022e": "Pelaa haulikon harjoitusrata painamalla <PAD_X>",
"022f": "<PAD_X> = Haulikon harjoitus~%<PAD_SQUARE> = Vulkanus-tykin harjoitus",
"0230": "Vaihda asetta painamalla <PAD_DPAD_DOWN>",
"0231": "Pelaa läjäyttimen harjoitusrata painamalla <PAD_X>",
"0232": "<PAD_X> = Läjäyttimen harjoitus~%<PAD_SQUARE> = Rauhantekijän harjoitus",
"0233": "Potkaise kohdetta ja paina <PAD_R1> tehdäksesi pikatulisarjan",
"0234": "Ammu laatikoita",
"0235": "Tavoite",
"0236": "Kulta",
"0237": "Hopea",
"0238": "Pronssi",
"0239": "Käytä lautaa painamalla <PAD_R2>",
"023a": "Hyppy: Paina <PAD_X>",
"023b": "Kyykkyhyppy: Paina <PAD_L1> ja sitten <PAD_X>",
"023c": "Voimahyppy: Paina <PAD_X> hieman laskeuduttuasi hypystä",
"023d": "Kaideliuku: Paina <PAD_SQUARE> ja <PAD_ANALOG_ANY>",
"023e": "Pyörähdys: Paina <PAD_X> ja sitten <PAD_R1> ja <PAD_ANALOG_LEFT_RIGHT>",
"023f": "Voltti: Paina <PAD_X> ja sitten <PAD_R1> ja <PAD_ANALOG_UP_DOWN>",
"0240": "Temppu: Paina <PAD_X> ja sitten <PAD_L1> ja <PAD_ANALOG_ANY>",
"0241": "Saat paljon pisteitä, jos liu'ut ja teet tempun liukuaksesi uudestaan",
"0242": "Aloita haaste aktivoimalla tuomari",
"0243": "Yritä uudelleen!",
"0244": "Palaa talliin",
"0245": "Tehtävä suoritettu: Palaa Krewin luo",
"0246": "Vaihda leijuvyöhykettä painamalla <PAD_R2>",
"0247": "Sukella painamalla <PAD_CIRCLE> pohjassa uidessasi",
"0248": "<PAD_CIRCLE> = Turbo~%<PAD_R1> tai <PAD_L1> = Hyppy",
"0249": "Iske Titaaniasulla painamalla <PAD_SQUARE>",
"024a": "Tartu Titaaniasulla lohkareisiin painamalla <PAD_R1>",
"024b": "Heitä nostetut esineet painamalla <PAD_SQUARE>",
"024c": "Paina <PAD_X> rampin yläpäässä",
"024d": "Liu'u kaidetta JET-laudalla painamalla <PAD_SQUARE> tai <PAD_CIRCLE>",
"024e": "Käytä <PAD_DPAD_ANY> ja <PAD_X> <PAD_CIRCLE> <PAD_SQUARE> <PAD_TRIANGLE>",
"024f": "Pumppaamo",
"0250": "Avolouhos",
"0251": "Katso traileri",
"0252": "<PAD_R2> mennäksesi laudan päälle tai pois",
"0253": "Käytä pimeää voimaa painamalla <PAD_L2>",
"0254": "Sony Computer Entertainment America~%presents",
"0255": "Sony Computer Entertainment Europe~%presents",
"0256": "Sony Computer Entertainment Korea~%presents",
"0257": "Sony Computer Entertainment Inc.~%presents",
"0258": "A game by",
"0259": "Jak II",
"025a": "Kaksi vuotta myöhemmin...",
"025b": "Viikko myöhemmin...",
"025c": "Asepäivitys hankittu",
"025d": "Haulikko hankittu",
"025e": "Läjäytin-modi mankittu",
"025f": "Vulkanus-piippu hankittu",
"0260": "Rauhantekijä hankittu",
"0261": "Haulikon tulinopeus päivitetty",
"0262": "Aseiden ammuskapasiteetti päivitetty",
"0263": "Aseiden vahinkoa päivitetty",
"0264": "Tehtävä suoritettu",
"0265": "Punainen turvapassi hankittu",
"0266": "Vihreä turvapassi hankittu",
"0267": "Keltainen turvapassi hankittu",
"0268": "Palatsin turvapassi hankittu",
"0269": "Musta turvapassi hankittu",
"026a": "Linssi hankittu",
"026b": "Ratas hankittu",
"026c": "Siru hankittu",
"026d": "Tuo 25 metallipäiden kallohelmeä",
"026e": "Tuo 200 metallipäiden kallohelmeä",
"026f": "Tuo 25 metallipäiden kallohelmeä",
"0270": "Tuo 200 metallipäiden kallohelmeä",
"0271": "Tuo 200 metallipäiden kallohelmeä",
"0272": "Tuo 100 metallipäiden kallohelmeä",
"0273": "Raivopommi: Paina <PAD_X> ja sitten <PAD_SQUARE>",
"0274": "Raivopurkaus: Paina <PAD_SQUARE> ja sitten <PAD_X>",
"0275": "Raivo-Jak on nyt haavoittumaton!",
"0276": "Raivojätti: Paina <PAD_L2> raivotilassa",
"0277": "Ohi",
"0278": "Valitse tapahtuma",
"0279": "Skeittipuisto",
"027a": "Luokan 3 kisa",
"027b": "Luokan 2 kisa",
"027c": "Luokan 1 kisa",
"027d": "Käänteinen luokan 3 kisa",
"027e": "Käänteinen luokan 2 kisa",
"027f": "Käänteinen luokan 1 kisa",
"0280": "Daxter saa suupalan",
"0281": "Tavataan Torn",
"0282": "Noutamassa lippua",
"0283": "Suojele pyhää paikkaa",
"0284": "Meidän maailmamme!",
"0285": "Vanhoja muistoja",
"0286": "Vin tarvitsee apua",
"0287": "Tavataan Vin",
"0288": "Hyviä ja huonoja uutisia",
"0289": "Suuri murskaus",
"028a": "Meillä on yhä ongelmia",
"028b": "Kaivot posahtavat!",
"028c": "Tavataan Kor ja lapsi",
"028d": "Vastarinta",
"028e": "Villikissa-tehtävä",
"028f": "Tornin toimitus",
"0290": "Tavataan Krew ja Sig",
"0291": "Yllätyshyökkäys!",
"0292": "Ashelin on huolissaan",
"0293": "Vin, kamu. Tarvitsemme palveluksen.",
"0294": "Kuka on verhojen takana?",
"0295": "Tiedonjyvä",
"0296": "Iloinen jälleennäkeminen",
"0297": "Kissatappelu",
"0298": "Jak poistuu paikalta",
"0299": "Daxterin suuri voitto",
"029a": "Keira paljastaa suunnitelmansa",
"029b": "Suuri kilpailu",
"029c": "Voittajan piiri",
"029d": "Tavataan Oraakkeli",
"029e": "Jak saa pimeän voiman",
"029f": "Jak saa toisen pimeän voiman",
"02a0": "Jak saa kolmannen pimeän voiman",
"02a1": "Jak saa neljännen pimeän voiman",
"02a2": "Valitus, naiset, ja laulu",
"02a3": "Rahankerääjät",
"02a4": "Mikä tämän lapsen tarina on?",
"02a5": "Krewilla on uusi keikka",
"02a6": "Tavataan Brutter",
"02a7": "Krewin kilpailusopimus",
"02a8": "Mitä te kaksi oikein teitte?",
"02a9": "Oninin haaste",
"02aa": "Marin sinetti on valmis",
"02ab": "Pelasta lisää vaanijoita",
"02ac": "Suojele piilopaikkaa",
"02ad": "Krew uhkailee",
"02ae": "Pelaaja astelee esiin",
"02af": "Saadaan aikakartta",
"02b0": "Brutter pelastaa päivän",
"02b1": "Leijutaan pois",
"02b2": "Saadaan keltainen ase",
"02b3": "Saadaan JET-lauta",
"02b4": "Jak laittaa JET-laudan pois",
"02b5": "Ihka oma Rauhantekijämme!",
"02b6": "Ulosmeno",
"02b7": "Jak matkaa pesään",
"02b8": "Paluu",
"02b9": "Ashelin kuljettaa Jakin",
"02ba": "Pala sinettiä",
"02bb": "Erol inhoaa häviötä",
"02bc": "Torn ja ammusvarasto",
"02bd": "Metallipäitä kaupungissa?",
"02be": "Nyt räjähtää!",
"02bf": "Torn myöntää petoksensa",
"02c0": "Aikakaksoset",
"02c1": "Krewin viemärikeikka",
"02c2": "Mikä on tuo löyhkä?",
"02c3": "Taiteenkeräilijä",
"02c4": "Että kaipaankin housuja!",
"02c5": "Sig paljastaa sielunsa",
"02c6": "Patsaanposauttelua",
"02c7": "Se on ansa!",
"02c8": "Daxter saa suupalan",
"02c9": "Daxter matkustaa putkea",
"02ca": "Työtarjous",
"02cb": "Torn tarjoaa tehtävän",
"02cc": "Tavataan Ashelin",
"02cd": "Daxter tekee siirtonsa",
"02ce": "Tästä tulee hauskaa!",
"02cf": "Boom, beibi!",
"02d0": "Peukut alas",
"02d1": "Heihei",
"02d2": "Temppu",
"02d3": "Hyvää yötä",
"02d4": "Toimit hienosti, tulokas",
"02d5": "Vin tahtoo munakokkelia",
"02d6": "Kor on huolissaan",
"02d7": "Poika on kadoksissa",
"02d8": "Ohjaustorni räjähtää",
"02d9": "Tavataan Onin ja Pecker",
"02da": "Vekotin romahtaa",
"02db": "Hyvät fiilikset",
"02dc": "Daxter kärventyy",
"02dd": "Salatapaaminen",
"02de": "Paroni kohtaa Jakin",
"02df": "Minä tuhoan sinut!",
"02e0": "Takaisin mistä aloitimme",
"02e1": "Salaisuus pommin rakentamiseen",
"02e2": "Krewin kaunotar",
"02e3": "Oi voi...",
"02e4": "Lentoon",
"02e5": "Laskeutumisalusta",
"02e6": "Jak löytää Marin haudan!",
"02e7": "tomb-open-door-res",
"02e8": "tomb-open-door-2-res",
"02e9": "Haudan ovet",
"02ea": "Ensimmäinen säde",
"02eb": "Toinen säde",
"02ec": "Ovet avautuvat",
"02ed": "Edeltäjäkivi!",
"02ee": "Paroni varastaa show'n",
"02ef": "Daxter ojentaa auttavan kätensä",
"02f0": "Daxterin karvainen takaa-ajo",
"02f1": "Tavataan Varjo",
"02f2": "Daxterin pöhkötarina",
"02f3": "Pecker haastaa riitaa",
"02f4": "Samos ja siemen",
"02f5": "Näky",
"02f6": "Kor ja lapsi",
"02f7": "Pelasta lisää vaanijoita",
"02f8": "Marin haudan legenda",
"02f9": "Se on kirous, eikö vain?",
"02fa": "Pora romahtaa",
"02fb": "Valotorni nousee",
"02fc": "Sinetti avaa portin",
"02fd": "Sig on ongelmissa",
"02fe": "Juokse!",
"02ff": "Sigin vahva käsi",
"0300": "Sieltä se taas tulee!",
"0301": "Sigin viimeinen hetki",
"0302": "Kivi... ase... pesä!",
"0303": "Jak matkaa pesään",
"0304": "Poistutaan pesästä",
"0305": "Kor hyppää esiin",
"0306": "Etkö tunnista häntä?",
"0307": "Outo uusi maailma",
"0308": "Juhlinta",
"0309": "<ICON_MISSION_COMPLETE>",
"030a": "<ICON_MISSION_TODO>",
"030b": "<FLAG_UK> English",
"030c": "Ota tekstitys käyttöön painamalla <PAD_SQUARE>",
"030d": "Tekstitys käytössä",
"030e": "Tekstitys ei käytössä",
"030f": "JET-lauta",
"0310": "Jatka"
}

View file

@ -232,5 +232,6 @@
"1336": "Fast Progress Menu",
"1337": "PS2 LOD Distance",
"1338": "Off",
"1339": "Display"
"1339": "Display",
"133a": "<FLAG_FINLAND> Suomi"
}

View file

@ -5,7 +5,7 @@
"1101": "Pelataan bonustehtävää",
"1102": "Haulikon harjoitusrata",
"1103": "Läjäyttimen harjoitusrata",
"1104": "Vulkanusraivon harjoitusrata",
"1104": "Vulkanus-tykin harjoitusrata",
"1105": "Rauhantekijän harjoitusrata",
"1106": "Oninin haaste",
"1107": "Metallipää-mäiskintä",
@ -18,8 +18,8 @@
"1206": "4x3 (PS2)",
"1207": "16x9 (PS2)",
"1208": "Valitse leveys- ja korkeussuhde",
"1209": "Paina <PAD_X> vahvistaaksesi ja poistuaksesi.",
"120a": "Paina <PAD_CIRCLE> vahvistaaksesi ja poistuaksesi.",
"1209": "Vahvista ja poistu painamalla <PAD_X>.",
"120a": "Vahvista ja poistu painamalla <PAD_CIRCLE>.",
"120b": "Kuvasuhde ei saa olla pienempi kuin 4x3!",
"120c": "Musiikkisoitin",
"120d": "Pystytahdistus",
@ -34,7 +34,7 @@
"1216": "Muuntoase",
"1217": "JET-lauta",
"1218": "Titaaniasu",
"1219": "Pimeä Jak",
"1219": "Raivo-Jak",
"121a": "Ajoneuvo",
"121b": "Vaara",
"121c": "Ei mikään",
@ -85,10 +85,10 @@
"124a": "Ohjaimen LED-asetukset",
"124b": "Näytä pelaajan tila",
"124c": "Näytä terveyden määrä",
"124d": "Lopeta auto-tallennus",
"124e": "Auto-tallennus pois päältä",
"124d": "Lopeta autom. tallennus",
"124e": "Autom. tallennus pois",
"124f": "Haluatko varmasti lopettaa automaattisen tallentamisen?",
"1250": "Turbo JET-lauta Haven Cityssä",
"1250": "Turbo-JET-lauta Haven Cityssä",
"1251": "Vihollisten terveyspalkit",
"1252": "Ajoneuvojen terveyspalkit",
"1253": "Ajoneuvojen haavoittumattomuus",
@ -96,13 +96,13 @@
"1255": "Kerää kerättävät automaattisesti",
"1256": "Musiikkisoitin",
"1257": "Tekstuuriton tila",
"1258": "Nopeat välianimaatiot",
"1259": "Hitaat välianimaatiot",
"1258": "Nopeat välinäytökset",
"1259": "Hitaat välinäytökset",
"125a": "Nopea pelattavuus",
"125b": "Hidas pelattavuus",
"125c": "Pikamatkustus Haven Cityssä",
"125d": "Edeltäjähelmien seuranta",
"125e": "Todellinen vuorokauden aika",
"125e": "Todellinen vuorokaudenaika",
"125f": "Tyyni Haven City",
"1260": "Näytä JET-laudan temput",
"1261": "Huono sää",
@ -112,14 +112,14 @@
"1265": "Käännä kaikki 3 venttiiliä ja löydä Marin patsas tehtävässä \"~S\" alle ~D sekunnissa",
"1266": "Vähennä Haven Cityn asukaslukua ~D kappaleella",
"1267": "Vähennä Haven Cityn ajoneuvojen määrää ~D kappaleella",
"1268": "Metsästä jokaista Metallipäälajia",
"1269": "Käytä JET-lautaa rikkoaksesi säiliöt auki",
"126a": "Siirrä repeämäkuljetin jättäen Samos ja nuori Samos vaurioitta",
"1268": "Metsästä jokaista metallipää-lajia",
"1269": "Riko säiliöt auki JET-laudalla",
"126a": "Siirrä repeämävaunu jättäen Samos ja nuori Samos vaurioitta",
"1280": "Kuvakulma-asetukset",
"1281": "Vasen/oikea (ensimmäinen persoona)",
"1282": "Ylös/alas (ensimmäinen persoona)",
"1283": "Vasen/oikea (kolmas persoona)",
"1284": "Ylös/alas (kolmas persoona)",
"1281": "Vasen/oikea (1. persoona)",
"1282": "Ylös/alas (1. persoona)",
"1283": "Vasen/oikea (3. persoona)",
"1284": "Ylös/alas (3. persoona)",
"1285": "Palauta oletukset",
"1286": "Normaali",
"1287": "Käänteinen",
@ -137,15 +137,15 @@
"1293": "Ohjainasetukset",
"1294": "Valitse ohjain",
"1295": "Analogisauvan katvealue",
"1296": "Älä huomioi, kun ikkuna ei aktiivinen",
"1296": "Älä huomioi työpöydällä",
"1297": "Ohjaimen LED terveydelle",
"1298": "Ohjaimen LED muihin tiloihin",
"1299": "Salli näppäimistö",
"129a": "Salli hiiri",
"129b": "Hiiriasetukset",
"129c": "Kameran ohjaus hiirellä",
"129d": "Vaakasuuntainen herkkyys",
"129e": "Pystysuuntainen herkkyys",
"129d": "Herkkyys (vaakasuunta)",
"129e": "Herkkyys (pystysuunta)",
"129f": "Pelaajan ohjaus hiirellä",
"12a0": "Objektien varjot",
"12a1": "Normaali",
@ -156,25 +156,25 @@
"12a6": "Muut tilastot",
"12a7": "Tappoja yhteensä",
"12a8": "Jakin tappamia",
"12a9": "Pimeän Jakin tappamia",
"12a9": "Raivo-Jakin tappamia",
"12aa": "Daxterin tappamia",
"12ab": "Muiden tappamia",
"12ac": "Läjäytin",
"12ad": "Haulikko",
"12ae": "Vulkanusraivo",
"12ae": "Vulkanus-tykki",
"12af": "Rauhantekijä",
"12b0": "JET-lauta",
"12b1": "JET-lautatemppu",
"12b1": "JET-lauta-temppu",
"12b2": "Titaaniasun isku",
"12b3": "Titaaniasun runko",
"12b4": "Tykki",
"12b5": "Isku",
"12b6": "Lyyhistyi",
"12b6": "Maaisku",
"12b7": "Kohokoukku",
"12b8": "Pyörähdys",
"12b9": "Kierintä",
"12bf": "Pimeä pommi",
"12c0": "Pimeä purkaus",
"12bf": "Raivopommi",
"12c0": "Raivopurkaus",
"12c3": "Karmiinivartija",
"12c4": "Sig",
"12c5": "Ashelin",
@ -191,7 +191,7 @@
"1304": "Hiiren kytkennät",
"1305": "Ei asetuksia",
"1306": "Odotetaan",
"1307": "Määrittämätön",
"1307": "Tyhjä",
"1308": "Tuntematon",
"1309": "Korkeampi taivaan resoluutio",
"130a": "Nopeat ilmalukot ja ovet",
@ -208,24 +208,24 @@
"1315": "Tämä asetus on erittäin kokeellinen. Kun peliä ei pelata 60 Hz:n kuvataajuudella, visuaalisia sekä pelattavuuden ongelmia voi ilmaantua sen seurauksena.",
"1316": "Paikallinen tulos",
"1320": "Ei mitään",
"1321": "Spin",
"1322": "Buusti",
"1321": "Pyörähdys",
"1322": "Nopeuslisä",
"1323": "Voltti",
"1324": "Kaideliuku",
"1325": "Kaidehyppy",
"1326": "Nosegrab",
"1327": "Method",
"1328": "Board Spin",
"1329": "Board Flip",
"1328": "Lautapyörähdys",
"1329": "Lautavoltti",
"132a": "Noseflip",
"132b": "Kickflip",
"132c": "Hyppy",
"132d": "Kyykkyhyppy",
"132e": "Pikahyppy",
"132f": "Pimeä Jak",
"1330": "Pimeä pommi",
"1331": "Pimeä purkaus",
"1332": "Pimeä jätti",
"132f": "Raivo-Jak",
"1330": "Raivopommi",
"1331": "Raivopurkaus",
"1332": "Raivojätti",
"1333": "PS2-asetukset",
"1334": "Objektien vähennys",
"1335": "Pakota ympäristökartoitus",

View file

@ -3416,6 +3416,7 @@
(flag "japanese" 5 dm-setting-subtitle-language)
(flag "korean" 6 dm-setting-subtitle-language)
(flag "uk-english" 7 dm-setting-subtitle-language)
(flag "finnish" 9 dm-setting-subtitle-language)
)
(flag
"play-hints "

View file

@ -828,6 +828,7 @@
(progress-graphics-ps2-lod-dist #x1337)
(progress-graphics-msaa-off #x1338)
(progress-graphics-display #x1339)
(language-name-finnish #x133a)
)
;; ---text-id

View file

@ -28,14 +28,28 @@
(defenum language-enum
:type int64
(english)
(french)
(german)
(spanish)
(italian)
(japanese)
(korean)
(uk-english)
(english 0)
(french 1)
(german 2)
(spanish 3)
(italian 4)
(japanese 5)
(korean 6)
(uk-english 7)
;; custom
(portuguese 8)
(finnish 9)
(swedish 10)
(danish 11)
(norwegian 12)
(dutch 13)
(br-portuguese 14)
(hungarian 15)
(catalan 16)
(icelandic 17)
(russian 18)
(polish 19)
(lithuanian 20)
)
(defenum runtime-exit-status

View file

@ -896,6 +896,7 @@
(flag "japanese" (the binteger (pc-language japanese)) dm-text-language)
(flag "korean" (the binteger (pc-language korean)) dm-text-language)
(flag "uk-english" (the binteger (pc-language uk-english)) dm-text-language)
(flag "finnish" (the binteger (pc-language finnish)) dm-text-language)
)
(flag "Discord RPC" #t ,(dm-lambda-boolean-flag (-> *pc-settings* discord-rpc?)))
(flag "Speedrunner Mode" #t ,(dm-lambda-boolean-flag (-> *pc-settings* speedrunner-mode?)))

View file

@ -347,10 +347,27 @@ This gives us more freedom to write code how we want.
(text-id language-name-italian)
(text-id language-name-japanese)
(text-id language-name-korean)
(text-id language-name-english-uk))
:get-item-index-fn (lambda () (-> *setting-control* user-default subtitle-language))
(text-id language-name-english-uk)
(text-id language-name-finnish))
:get-item-index-fn (lambda ()
;; workaround until all languages are added
(if (<= (-> *setting-control* user-default subtitle-language) (language-enum uk-english))
(-> *setting-control* user-default subtitle-language)
(case (-> *setting-control* user-default subtitle-language)
(((language-enum finnish)) 8)
(else
(format 0 "PROGRESS: Forgot to add subtitle language to workaround switch case, defaulting to english")
0))))
:on-confirm (lambda ((index int) (the-progress progress))
(set! (-> *setting-control* user-default subtitle-language) (the-as language-enum index)))))
;; workaround until all languages are added
(if (<= index (language-enum uk-english))
(set! (-> *setting-control* user-default subtitle-language) (the-as language-enum index))
(set! (-> *setting-control* user-default subtitle-language)
(case index
((8) (language-enum finnish))
(else
(format 0 "PROGRESS: Forgot to add subtitle language to workaround switch case, defaulting to english")
(language-enum english))))))))
(defmacro game-options-pc-sound-language ()
`(new 'static 'menu-generic-carousel-option
@ -378,13 +395,30 @@ This gives us more freedom to write code how we want.
(text-id language-name-italian)
(text-id language-name-japanese)
(text-id language-name-korean)
(text-id language-name-english-uk))
:get-item-index-fn (lambda () (-> *pc-settings* text-language))
(text-id language-name-english-uk)
(text-id language-name-finnish))
:get-item-index-fn (lambda ()
;; workaround until all languages are added
(if (<= (-> *pc-settings* text-language) (pc-language uk-english))
(-> *pc-settings* text-language)
(case (-> *pc-settings* text-language)
(((pc-language finnish)) 8)
(else
(format 0 "PROGRESS: Forgot to add text language to workaround switch case, defaulting to english")
(pc-language english)))))
:on-confirm (lambda ((index int) (the-progress progress))
;; workaround until all languages are added
(if (<= index (pc-language uk-english))
(set! (-> *pc-settings* text-language) (the-as pc-language index))
;; NOTE - this doesn't actually work (naughty dog tried it too in their progress code)
(load-level-text-files (the-as int (-> *pc-settings* text-language)))
(pc-settings-save))))
(set! (-> *pc-settings* text-language)
(case index
((8) (pc-language finnish))
(else
(format 0 "PROGRESS: Forgot to add text language to workaround switch case, defaulting to english")
(pc-language english)))))
;; NOTE - this doesn't actually work (naughty dog tried it too in their progress code)
(load-level-text-files (the-as int (-> *pc-settings* text-language)))
(pc-settings-save))))
(defmacro misc-options-pc-discord-rpc ()
`(new 'static 'menu-generic-boolean-option

View file

@ -29,7 +29,7 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defconstant PC_SUBTITLE_FILE_SIZE (* 384 1024)) ;; 384K heap for subtitles. adjust later if necessary.
(defconstant PC_SUBTITLE_FILE_SIZE (* 600 1024)) ;; 600K heap for subtitles. adjust later if necessary.
(defconstant PC_SUBTITLE_FILE_NAME "subti2")
(defconstant PC_SUBTITLE_QUEUE_SIZE 5) ;; up to 8 things that display subtitles can be detected at once
(defconstant PC_SUBTITLE_QUEUE_MAX_LINES 2) ;; up to 2 lines can be queued per queueable thing

View file

@ -77,7 +77,7 @@ JAK2_ALLOWED_CHARACTERS = [
JAK2_ALLOWED_CODES = [
"<TIL>", "<SUPERSCRIPT_QUOTE>",
"<PAD_X>", "<PAD_TRIANGLE>", "<PAD_CIRCLE>", "<PAD_SQUARE>", "<PAD_DPAD_UP>", "<PAD_DPAD_DOWN>", "<PAD_DPAD_ANY>", "<PAD_L1>", "<PAD_R1>", "<PAD_R2>", "<PAD_L2>", "<PAD_ANALOG_ANY>", "<PAD_ANALOG_LEFT_RIGHT>", "<PAD_ANALOG_UP_DOWN>", "<ICON_MISSION_COMPLETE>", "<ICON_MISSION_TODO>", "<FLAG_ITALIAN>", "<FLAG_SPAIN>", "<FLAG_GERMAN>", "<FLAG_FRANCE>", "<FLAG_UK>", "<FLAG_USA>", "<FLAG_KOREA>", "<FLAG_JAPAN>"
"<PAD_X>", "<PAD_TRIANGLE>", "<PAD_CIRCLE>", "<PAD_SQUARE>", "<PAD_DPAD_UP>", "<PAD_DPAD_DOWN>", "<PAD_DPAD_ANY>", "<PAD_L1>", "<PAD_R1>", "<PAD_R2>", "<PAD_L2>", "<PAD_ANALOG_ANY>", "<PAD_ANALOG_LEFT_RIGHT>", "<PAD_ANALOG_UP_DOWN>", "<ICON_MISSION_COMPLETE>", "<ICON_MISSION_TODO>", "<FLAG_ITALIAN>", "<FLAG_SPAIN>", "<FLAG_GERMAN>", "<FLAG_FRANCE>", "<FLAG_UK>", "<FLAG_USA>", "<FLAG_KOREA>", "<FLAG_JAPAN>", "<FLAG_FINLAND>", "<FLAG_SWEDEN>", "<FLAG_DENMARK>", "<FLAG_NORWAY>", "<FLAG_ICELAND>"
]
JAK2_AUTO_REPLACEMENTS = {