From b331873cfebb8a38f1cad0ba514104ec8c6e87f7 Mon Sep 17 00:00:00 2001 From: Yair Morgenstern Date: Thu, 4 Sep 2025 14:20:21 +0300 Subject: [PATCH] Version rollout (#13887) * Bump version and create initial changelog entry * Update Brazilian_Portuguese.properties (#13886) * Update Vietnamese Translation (#13878) * vietnamese-hotfix-autosave (we are so back) nah, i'm back. wouldn't be often as before, but still. * aight, should be good now. * Update French.properties (#13875) * Update Bangla.properties (#13874) * Update Bangla.properties * Update Bangla.properties * Update Italian.properties (#13872) * Update Indonesian.properties (#13871) * Update Indonesian.properties * Update Indonesian.properties --------- Co-authored-by: yairm210 Co-authored-by: Vitor Gabriel Co-authored-by: theperfectoast Co-authored-by: Ouaz Co-authored-by: Shinigami-alt <76843162+Shinigami-alt@users.noreply.github.com> Co-authored-by: Giuseppe D'Addio <41149920+Smashfanful@users.noreply.github.com> Co-authored-by: X2003 <158255876+Xenia2003@users.noreply.github.com> --- .../jsons/translations/Bangla.properties | 53 +++++++------------ .../Brazilian_Portuguese.properties | 24 +++------ .../jsons/translations/French.properties | 20 +++---- .../jsons/translations/Indonesian.properties | 42 +++++++-------- .../jsons/translations/Italian.properties | 27 ++++------ .../jsons/translations/Vietnamese.properties | 32 +++++------ buildSrc/src/main/kotlin/BuildConfig.kt | 4 +- changelog.md | 26 +++++++++ core/src/com/unciv/UncivGame.kt | 2 +- .../android/en-US/changelogs/1161.txt | 25 +++++++++ 10 files changed, 136 insertions(+), 119 deletions(-) create mode 100644 fastlane/metadata/android/en-US/changelogs/1161.txt diff --git a/android/assets/jsons/translations/Bangla.properties b/android/assets/jsons/translations/Bangla.properties index 34425d05fe..a5ecd27543 100644 --- a/android/assets/jsons/translations/Bangla.properties +++ b/android/assets/jsons/translations/Bangla.properties @@ -96,10 +96,8 @@ New [civName]\n(formerly known as [cityName]) = নতুন [civName]\n(পূ Requires [buildingName] to be built in the city = শহরে [buildingName] নির্মাণ করা প্রয়োজন Requires [buildingName] to be built in all cities = সব শহরে [buildingName] নির্মাণ করা প্রয়োজন Provides a free [buildingName] in the city = শহরে বিনামূল্যে [buildingName] প্রদান করে - # Requires translation! -Requires improved [resource] near city = - # Requires translation! -Requires at least one of the following resources improved near the city: = +Requires improved [resource] near city = শহরের কাছে উন্নত [resource] দরকার +Requires at least one of the following resources improved near the city: = শহরের ক্ছে এদের মধ্যে কমলক্ষে একটি দরকার Wonder is being built elsewhere = আশ্চর্যটি অন্য কোথাও নির্মাণ করা হচ্ছে National Wonder is being built elsewhere = জাতীয় আশ্চর্যটি অন্য কোথাও নির্মাণ করা হচ্ছে Requires a [buildingName] in all [cityFilter] cities = সব [cityFilter] শহরে [buildingName] প্রয়োজন @@ -115,12 +113,9 @@ Requires [PolicyOrNationalWonder] = [PolicyOrNationalWonder] প্রয়ো Cannot be purchased = ক্রয় করা যাবে না Can only be purchased = শুধু ক্রয় করা যাবে See also = আরো দেখুন - # Requires translation! -Use default promotions = - # Requires translation! -Default promotions for [unitName] = - # Requires translation! -Statuses = +Use default promotions = সাধারণ প্রমোশনগুলো ব্যাবহার করুন +Default promotions for [unitName] = [unitName] এর জন্য সাধারণ প্রমোশন +Statuses = অবস্থা Requires at least one of the following: = এগুলোর মধ্যে অন্তত একটি প্রয়োজনঃ Requires all of the following: = এগুলোর সবগুলি প্রয়োজনঃ @@ -131,8 +126,7 @@ Disables: = নিষ্ক্রিয় করেঃ Current construction = বর্তমান নির্মাণ Construction queue = নির্মাণ সারি - # Requires translation! -Queue = +Queue = সারিবদ্ধ Pick a construction = একটি নির্মাণ নির্বাচন করুন Queue empty = শূন্য সারি Add to queue = সারিতে যোগ করুন @@ -334,18 +328,14 @@ Gold per turn = চাল প্রতি সোনা Cities = শহরগুলো Technologies = প্রযুক্তিগুলো Declarations of war = যুদ্ধের ঘোষণাগুলো - # Requires translation! -Peace Proposals = - # Requires translation! -Accept Embassy = -Introduction to [nation] = [nation] এর পরিচিতি +Peace Proposals = শান্তি প্রস্তাব +Accept Embassy = দূতাবাস গ্রহণ করুন +Introduction to [nation] = [nation] এর সাথে পরিচিতি Declare war on [nation] = [nation] এর উপর যুদ্ধ ঘোষণা করুন - # Requires translation! -Make peace with [nation] = +Make peace with [nation] = [nation] এর সাথে শান্তি স্থাপন করুন Luxury resources = বিলাসদ্রব্যগুলো Strategic resources = কৌশলগত সম্পদগুলো - # Requires translation! -Stockpiled resources = +Stockpiled resources = মজুদ করা সম্পদ Owned by you: [amountOwned] = আপনার মালিকানাধীনঃ [amountOwned] Non-existent city = অস্তিত্বহীন শহর @@ -356,8 +346,7 @@ Lost ability (vs [originalUnit]): [ability] = হারানো সক্ষম Upgrade all [count] [unit] ([cost] gold) = সব [count]টি [unit] উন্নতি করুন ([cost] সোনা) National ability = জাতীয় সক্ষমতা [firstValue] vs [secondValue] = [firstValue] বনাম [secondValue] - # Requires translation! -[amount1]% [stat1] vs [amount2]% [stat2] = +[amount1]% [stat1] vs [amount2]% [stat2] = [amount1]% [stat1] বনাম [amount2]% [stat2] Gained = অর্জিত Lost = হারানো @@ -377,8 +366,7 @@ Start game! = খেলা শুরু করুন! Map Options = মানচিত্রের বিকল্পগুলো Game Options = খেলার বিকল্পগুলো Civilizations = সভ্যতাগুলো - # Requires translation! -Shuffle Civ Order at Start = +Shuffle Civ Order at Start = শুরুতে রাজ্য ক্রম এলোমেলো করুন Map Type = মানচিত্রের ধরণ Map file = মানচিত্র ফাইল Max Turns = সর্বোচ্চ চাল @@ -390,10 +378,8 @@ Existing = বিদ্যমান Custom = কাস্টম Map Generation Type = মানচিত্র উৎপন্নের ধরণ Enabled Map Generation Types = উৎপন্নের জন্য সক্রিয় করা ধরণগুলো - # Requires translation! -Example map = - # Requires translation! -Scenario file [name] is invalid. = +Example map = উদাহরণ মানচিত্র +Scenario file [name] is invalid. = [name] দৃস্যকল্প ফাইলটি অবৈধ। # Map types Default = ডিফল্ট @@ -405,10 +391,8 @@ Four Corners = চারকোণা Archipelago = দ্বীপপুঞ্জ Inner Sea = আন্তঃসমুদ্র Perlin = পার্লিন - # Requires translation! -Small Continents = - # Requires translation! -Fractal = +Small Continents = ক্ষুদ্র মহাদেশগুল +Fractal = ফ্র্যাক্টাল Select players from starting locations = শুরুর অবস্থান থেকে খেলোয়াড় নির্বাচন করুন Random number of Civilizations = এলোমেলো সভ্যতার সংখ্যা @@ -512,8 +496,7 @@ Invalid Player ID! = অবৈধ খেলোয়াড় আইডি! No victory conditions were selected! = কোনো জয়ের উপায় নির্বাচিত করা হয়নি! Mods: = মডগুলোঃ Extension mods = এক্সটেনশন মডগুলো - # Requires translation! -Search mods = +Search mods = মডগুলো খুঁজুন Base ruleset: = মৌলিক নিয়মসমূহঃ # Note - do not translate the colour names between «». Changing them works if you know what you're doing. The mod you selected is incorrectly defined! = আপনি যে মডগুলো নির্বাচন করেছেন সেগুলো ভুল ভাবে সংজ্ঞায়িত করা হয়েছে! diff --git a/android/assets/jsons/translations/Brazilian_Portuguese.properties b/android/assets/jsons/translations/Brazilian_Portuguese.properties index 9f4ddeb742..e40af25388 100644 --- a/android/assets/jsons/translations/Brazilian_Portuguese.properties +++ b/android/assets/jsons/translations/Brazilian_Portuguese.properties @@ -893,10 +893,8 @@ Could not download music! = Não foi possível baixar a música! ## Advanced tab Advanced = Avançado Number of autosave files stored = Número de arquivos de salvamento automático armazenados - # Requires translation! -Autosave turns must be larger than 0! = - # Requires translation! -Autosave turns over 200 may take a lot of space on your device. = +Autosave turns must be larger than 0! = Os turnos de salvamento automático devem ser maiores que 0! +Autosave turns over 200 may take a lot of space on your device. = O salvamento automático de mais de 200 pode ocupar muito espaço no seu dispositivo. Turns between autosaves = Turnos entre salvamentos automáticos # Requires translation! Enter = @@ -2071,8 +2069,7 @@ ConditionalsPlacement = after [relativeAmount]% [stat] = [relativeAmount]% [stat] [relativeAmount]% [stat] [cityFilter] = [relativeAmount]% de [stat] em [cityFilter] [relativeAmount]% [stat] from every [tileFilter/buildingFilter] = [relativeAmount]% [stat] de cada [tileFilter/buildingFilter] - # Requires translation! -[positiveAmount]% of [stat] from every [improvementFilter/buildingFilter] in the city added to [resource] = +[positiveAmount]% of [stat] from every [improvementFilter/buildingFilter] in the city added to [resource] = [positiveAmount]% de [stat] de todos os [improvementFilter/buildingFilter] da cidade adicionada a [resource] [relativeAmount]% Yield from every [tileFilter/buildingFilter] = [relativeAmount]% de rendimento de cada [tileFilter/buildingFilter] [relativeAmount]% [stat] from every follower, up to [relativeAmount2]% = [relativeAmount]% [stat] de cada seguidor, até [relativeAmount2]% [relativeAmount]% [stat] from City-States = [relativeAmount]% de [stat] da cidade-estado @@ -2796,16 +2793,11 @@ Units ending their turn on [Mountain] tiles take [50] damage = Unidades que term Maya Long Count calendar cycle = Ciclo do calendário Longa Contagem Maia Prophet = Profeta Meet another civilization = Conheça outra civilização - # Requires translation! -policy = - # Requires translation! -wagon = - # Requires translation! -promote = - # Requires translation! -coin = - # Requires translation! -choir = +policy = política +wagon = vagão +promote = promover +coin = moeda +choir = coro Triggerable = Acionável UnitTriggerable = Unidade Acionável Global = Global diff --git a/android/assets/jsons/translations/French.properties b/android/assets/jsons/translations/French.properties index ff8c3cc474..dc444bf018 100644 --- a/android/assets/jsons/translations/French.properties +++ b/android/assets/jsons/translations/French.properties @@ -791,7 +791,7 @@ Windowed = Fenêtré Fullscreen = Plein écran Borderless = Sans bordure -UI Scale = Taille de l'interface +UI Scale = Rapport d'échelle de l'IU ### Enable panning the map when you move the mouse to the edge of the window Map mouse auto-scroll = Défilement auto. de la carte avec la souris @@ -894,12 +894,12 @@ Could not download music! = Impossible de télécharger la musique ! Advanced = Avancé Number of autosave files stored = Nombre de sauvegardes automatiques stockées # Requires translation! -Autosave turns must be larger than 0! = +Autosave turns must be larger than 0! = Le nombre de sauvegardes automatiques doit être supérieur à 0 ! # Requires translation! -Autosave turns over 200 may take a lot of space on your device. = +Autosave turns over 200 may take a lot of space on your device. = Un nombre de sauvegardes automatiques supérieur à 200 peut occuper beaucoup d'espace sur votre appareil. Turns between autosaves = Tours entre les sauvegardes automatiques # Requires translation! -Enter = +Enter = Valider Screen orientation = Orientation de l'écran Landscape (fixed) = Paysage (fixe) @@ -2072,7 +2072,7 @@ ConditionalsPlacement = after [relativeAmount]% [stat] [cityFilter] = [relativeAmount]% [stat] [cityFilter] [relativeAmount]% [stat] from every [tileFilter/buildingFilter] = [relativeAmount]% [stat] pour chaque [tileFilter/buildingFilter] # Requires translation! -[positiveAmount]% of [stat] from every [improvementFilter/buildingFilter] in the city added to [resource] = +[positiveAmount]% of [stat] from every [improvementFilter/buildingFilter] in the city added to [resource] = [positiveAmount]% de [stat] de chaque [improvementFilter/buildingFilter] dans la ville ajouté à [resource] [relativeAmount]% Yield from every [tileFilter/buildingFilter] = [relativeAmount]% Rendement pour chaque [tileFilter/buildingFilter] [relativeAmount]% [stat] from every follower, up to [relativeAmount2]% = [relativeAmount]% [stat] pour chaque fidèle, jusqu'à [relativeAmount2]% [relativeAmount]% [stat] from City-States = [relativeAmount]% [stat] de la part des Cités-États @@ -2797,15 +2797,15 @@ Maya Long Count calendar cycle = Compte Long du calendrier Maya Prophet = Prophète Meet another civilization = Rencontrer une autre civilisation # Requires translation! -policy = +policy = doctrine # Requires translation! -wagon = +wagon = wagon # Requires translation! -promote = +promote = promotion # Requires translation! -coin = +coin = pièce # Requires translation! -choir = +choir = chœur Triggerable = Déclenchable UnitTriggerable = UnitéDéclenchable Global = Global diff --git a/android/assets/jsons/translations/Indonesian.properties b/android/assets/jsons/translations/Indonesian.properties index f7faf7d2c8..a858df149a 100644 --- a/android/assets/jsons/translations/Indonesian.properties +++ b/android/assets/jsons/translations/Indonesian.properties @@ -28,7 +28,7 @@ Fastlane_short_description = Permainan membangun peradaban 4X sumber terbuka # Documentation: https://f-droid.org/en/docs/Build_Metadata_Reference/#Description # English to translate: https://github.com/yairm210/Unciv/blob/master/fastlane/metadata/android/en-US/full_description.txt -Fastlane_full_description = Implementasi ulang bersumber terbuka dari permainan membangun peradaban paling terkenal yang pernah ada - cepat, kecil, tanpa iklan, gratis selamanya!\n\nBangun peradabanmu, teliti teknologi, perluas kotamu dan kalahkan musuhmu!\n\nPermintaan? Kutu? Daftar hal-hal yang akan dilakukan ke depannya ada di https://github.com/yairm210/Unciv/issues\n\nPertanyaan? Komentar? Bergabunglah dengan kami di https://discord.gg/bjrB4Xw.\n\nMau membantu menerjemahkan permainan ini ke dalam bahasamu? Kunjungi https://yairm210.github.io/Unciv/Other/Translating/.\n\nDunia menunggumu! Akankah kamu akan membangun peradabanmu menjadi sebuah peradaban yang akan bertahan dalam ujian waktu?\n\nIzin 'memiliki akses jaringan penuh' diperlukan untuk unduhan yang dilakukan pengguna dan fitur multipemain. Semua izin terdaftar lainnya disertakan secara otomatis oleh API yang digunakan untuk mengimplementasikan notifikasi giliran multipemain. Izin jaringan digunakan untuk membuat daftar mod, mengunduh mod, mengunduh musik dan mengunggah/mengunduh permainan multipemain. Tidak ada komunikasi internet lain yang dilakukan oleh Unciv. +Fastlane_full_description = Implementasi ulang bersumber terbuka dari permainan membangun peradaban paling terkenal yang pernah ada - cepat, kecil, tanpa iklan, gratis untuk selamanya!\n\nBangun peradabanmu, teliti teknologi, perluas kotamu dan kalahkan musuhmu!\n\nPermintaan? Kutu? Daftar hal-hal yang akan dilakukan ke depannya ada di https://github.com/yairm210/Unciv/issues\n\nPertanyaan? Komentar? Bergabunglah dengan kami di https://discord.gg/bjrB4Xw.\n\nMau membantu menerjemahkan permainan ini ke dalam bahasamu? Kunjungi https://yairm210.github.io/Unciv/Other/Translating/.\n\nDunia menunggumu! Akankah engkau membangun peradabanmu menjadi sebuah peradaban yang akan bertahan dalam ujian waktu?\n\nIzin 'memiliki akses jaringan penuh' diperlukan untuk unduhan yang dilakukan pengguna dan fitur multipemain. Semua izin terdaftar lainnya disertakan secara otomatis oleh API yang digunakan untuk mengimplementasikan notifikasi giliran multipemain. Izin jaringan digunakan untuk membuat daftar mod, mengunduh mod, mengunduh musik dan mengunggah/mengunduh permainan multipemain. Tidak ada komunikasi internet lain yang dilakukan oleh Unciv. # Starting from here normal translations start, as described in @@ -609,7 +609,7 @@ Spread Resources = Sebarkan Sumber Daya Create ancient ruins = Buat reruntuhan kuno Floodfill = Isi Banjir [nation] starting location = Tempat mulai [nation] -Any Civ = Peradaban apa pun +Any Civ = Peradaban apa saja Remove features = Hapus fitur Remove improvement = Hapus peningkatan Remove resource = Hapus sumber daya @@ -894,12 +894,12 @@ Could not download music! = Tidak dapat mengunduh musik! Advanced = Lanjutan Number of autosave files stored = Jumlah berkas simpanan otomatis yang tersimpan # Requires translation! -Autosave turns must be larger than 0! = +Autosave turns must be larger than 0! = Giliran simpanan otomatis harus lebih besar dari 0! # Requires translation! -Autosave turns over 200 may take a lot of space on your device. = -Turns between autosaves = Jumlah Giliran tiap simpanan otomatis +Autosave turns over 200 may take a lot of space on your device. = Giliran simpanan otomatis yang melebihi 200 dapat memakan banyak ruang di perangkatmu. +Turns between autosaves = Jumlah Giliran di antara simpanan otomatis # Requires translation! -Enter = +Enter = Masukkan Screen orientation = Orientasi layar Landscape (fixed) = Lanskap (tetap) @@ -1097,7 +1097,7 @@ A new barbarian encampment has spawned! = Sebuah perkemahan orang barbar telah m Barbarians raided [cityName] and stole [amount] Gold from your treasury! = Orang-orang Barbar telah menyerang [cityName] dan merampas [amount] Emas dari perbendaharaanmu! Received [goldAmount] Gold for capturing [cityName] = Menerima [goldAmount] Emas karena merebut [cityName] Our proposed trade is no longer relevant! = Penawaran perdagangan kita tidak lagi relevan! -[defender] could not withdraw from a [attacker] - blocked. = [defender] tidak bisa mundur dari [attacker] - terhalang. +[defender] could not withdraw from a [attacker] - blocked. = [defender] tidak dapat mundur dari [attacker] - terhalang. [defender] withdrew from a [attacker] = [defender] mundur dari [attacker] By expending your [unit] you gained [Stats]! = Dengan menggunakan [unit]mu, kamu mendapatkan [Stats]! Your territory has been stolen by [civName]! = Wilayahmu telah dicuri oleh [civName]! @@ -2072,7 +2072,7 @@ ConditionalsPlacement = after [relativeAmount]% [stat] [cityFilter] = [relativeAmount]% [stat] [cityFilter] [relativeAmount]% [stat] from every [tileFilter/buildingFilter] = [relativeAmount]% [stat] dari setiap [tileFilter/buildingFilter] # Requires translation! -[positiveAmount]% of [stat] from every [improvementFilter/buildingFilter] in the city added to [resource] = +[positiveAmount]% of [stat] from every [improvementFilter/buildingFilter] in the city added to [resource] = [positiveAmount]% [stat] dari setiap [improvementFilter/buildingFilter] di kota ditambahkan ke [resource] [relativeAmount]% Yield from every [tileFilter/buildingFilter] = [relativeAmount]% Penghasilan dari setiap [tileFilter/buildingFilter] [relativeAmount]% [stat] from every follower, up to [relativeAmount2]% = [relativeAmount2]% [stat] dari setiap pengikut, hingga [relativeAmount]% [relativeAmount]% [stat] from City-States = [relativeAmount]% [stat] dari Negara-Kota @@ -2158,7 +2158,7 @@ All newly-trained [baseUnitFilter] units [cityFilter] receive the [promotion] pr [relativeAmount]% XP required for promotions = [relativeAmount]% XP diperlukan untuk promosi [relativeAmount]% City Strength from defensive buildings = [relativeAmount]% Kekuatan Kota dari bangunan-bangunan pertahanan [relativeAmount]% Strength for cities = [relativeAmount]% Kekuatan untuk kota -Costs [amount] [stockpiledResource] = Biayanya [amount] [stockpiledResource] +Costs [amount] [stockpiledResource] = Menghabiskan [amount] [stockpiledResource] [relativeAmount]% [resourceFilter] resource production = [relativeAmount]% produksi sumber daya [resourceFilter] Enables establishment of embassies = Memungkinkan pendirian kedutaan Requires establishing embassies to conduct advanced diplomacy = Memerlukan pendirian kedutaan untuk melakukan diplomasi lanjutan @@ -2276,7 +2276,7 @@ No defensive terrain bonus = Tidak ada bonus medan perlindungan No defensive terrain penalty = Tidak ada penalti medan perlindungan No damage penalty for wounded units = Tidak ada penalti kerusakan untuk unit yang terluka Uncapturable = Tidak dapat ditawan -Withdraws before melee combat = Tarik sebelum pertempuran jarak dekat +Withdraws before melee combat = Mundur sebelum pertempuran jarak dekat Unable to capture cities = Tidak dapat merebut kota Unable to pillage tiles = Tidak dapat menjarah ubin No movement cost to pillage = Tidak menghabiskan pergerakan untuk menjarah @@ -2797,15 +2797,15 @@ Maya Long Count calendar cycle = Siklus kalender Perhitungan Panjang Maya Prophet = Nabi Meet another civilization = Temui peradaban lain # Requires translation! -policy = +policy = kebijakan # Requires translation! -wagon = +wagon = wagon # Requires translation! -promote = +promote = promosikan # Requires translation! -coin = +coin = koin # Requires translation! -choir = +choir = paduan suara Triggerable = DapatDipicu UnitTriggerable = DapatDipicuUnit Global = Global @@ -4761,7 +4761,7 @@ Meritocracy = Meritokrasi Liberty Complete = Libertas Lengkap Liberty = Libertas -Warrior Code = Kode Pejuang +Warrior Code = Kode Prajurit Discipline = Disiplin Military Tradition = Tradisi Militer Military Caste = Kasta Militer @@ -4773,7 +4773,7 @@ Organized Religion = Agama Terorganisir Mandate Of Heaven = Mandat Langit Theocracy = Teokrasi Reformation = Reformasi -Free Religion = Agama Gratis +Free Religion = Agama Bebas Piety Complete = Kesalehan Lengkap Piety = Kesalehan @@ -5671,7 +5671,7 @@ Guided Missile = Peluru Kendali Nuclear Missile = Rudal Nuklir -Helicopter Gunship = Helikopter Tempur +Helicopter Gunship = Helikopter Serbu Nuclear Submarine = Kapal Selam Nuklir @@ -7297,10 +7297,10 @@ Your unit will always draw an Interception, if one can reach the target tile, ev If the Interceptor is not an Air Unit (eg Land or Sea), the Air Sweeping unit and Interceptor take no damage! = Jika Pencegat bukan merupakan Unit Udara (seperti Unit Darat atau Laut), unit Sweeping Udara dan Pencegat tidak mendapat kerusakan! If the Interceptor is an Air Unit, the two units will damage each other in a straight fight with no Interception bonuses. And only the Attacking Air Sweep Unit gets any Air Sweep strength bonuses. = Jika Pencegat merupakan Unit Udara, kedua unit akan saling melukai dalam pertempuran langsung tanpa bonus Pencegatan. Hanya Unit Sweeping Udara Penyerang yang mendapatkan bonus kekuatan Sweeping Udara. -Fortify, Guard, Withdraw = Bertahan, Kawal, Tarik +Fortify, Guard, Withdraw = Bertahan, Kawal, Mundur Most Land units have the ability to Fortify. As they spend time without moving, they will slowly gain a Fortification Bonus to their Combat Strength representing digging in and preparing in case of an attack. = Kebanyakan unit Darat memiliki kemampuan untuk Bertahan. Karena mereka menghabiskan waktu tanpa perlu bergerak, mereka perlahan-lahan akan mendapatkan sebuah Bonus Pertahanan untuk Kekuatan Tempur mereka yang mewakili beraksi dan bersiap dalam hal penyerangan. -Some units have the ability to Withdraw before a melee attack is struck. However, perhaps you wish for them to stand their ground to protect a particular tile. If you do, then give them the Guard command and they will stay fixed until they die or you give them fresh orders. = Beberapa unit memiliki kemampuan untuk Tarik sebelum terkena serangan jarak dekat. Tetapi, mungkin kamu berharap mereka untuk bertahan melindungi ubin tertentu. Jika kamu melakukannya, berikanlah mereka perintah Kawal dan mereka akan tetap seperti itu hingga mereka mati atau kamu memberikan mereka perintah baru. -This is NOT the same as Fortify but they will still gain the Fortification Bonus. They will simply not utilize their Withdraw ability. Fortified units with the Withdraw ability will try to flee when attacked. = Ini TIDAK sama seperti Bertahan tetapi mereka tetap akan mendapatkan Bonus Pertahanan. They hanya tidak akan memanfaatkan kemampuan Tarik mereka. Unit yang bertahan dengan kemampuan Tarik akan mencoba untuk kabur saat diserang. +Some units have the ability to Withdraw before a melee attack is struck. However, perhaps you wish for them to stand their ground to protect a particular tile. If you do, then give them the Guard command and they will stay fixed until they die or you give them fresh orders. = Beberapa unit memiliki kemampuan untuk Mundur sebelum terkena serangan jarak dekat. Tetapi, mungkin kamu berharap mereka untuk bertahan melindungi ubin tertentu. Jika kamu melakukannya, berikanlah mereka perintah Kawal dan mereka akan tetap seperti itu hingga mereka mati atau kamu memberikan mereka perintah baru. +This is NOT the same as Fortify but they will still gain the Fortification Bonus. They will simply not utilize their Withdraw ability. Fortified units with the Withdraw ability will try to flee when attacked. = Ini TIDAK sama seperti Bertahan tetapi mereka tetap akan mendapatkan Bonus Pertahanan. Mereka hanya tidak akan memanfaatkan kemampuan Mundur mereka. Unit yang bertahan dengan kemampuan Mundur akan mencoba untuk kabur saat diserang. City Tile Blockade = Blokade Ubin Kota One of your tiles is blocked by an enemy: when an enemy unit stands on a tile you own, the tile will not produce yields and cannot be worked by a city this turn. City will reallocate population from a blocked tile automatically. = Salah satu ubinmu diblokade musuh: saat ada unit musuh yang menempati ubin yang kamu miliki, ubin tersebut tidak akan membuat penghasilan dan tidak bisa dikerjakan oleh kotanya pada giliran ini. Kotanya akan merealokasi populasi dari ubin yang diblokade secara otomatis. diff --git a/android/assets/jsons/translations/Italian.properties b/android/assets/jsons/translations/Italian.properties index db21139c6b..9133a6f25d 100644 --- a/android/assets/jsons/translations/Italian.properties +++ b/android/assets/jsons/translations/Italian.properties @@ -899,13 +899,10 @@ Could not download music! = Impossibile scaricare musica! ## Advanced tab Advanced = Avanzate Number of autosave files stored = Numero di autosalvataggi immagazzinati - # Requires translation! -Autosave turns must be larger than 0! = - # Requires translation! -Autosave turns over 200 may take a lot of space on your device. = +Autosave turns must be larger than 0! = Il numero turni autosalvataggio deve essere maggiore di 0! +Autosave turns over 200 may take a lot of space on your device. = Un turno salvataggio di numero oltre 200 potrebbe occupare molto spazio sul tuo dispositivo. Turns between autosaves = Turni tra autosalvataggi - # Requires translation! -Enter = +Enter = Inserisci Screen orientation = Orientamento schermo Landscape (fixed) = Panorama (fisso) @@ -2077,8 +2074,7 @@ ConditionalsPlacement = after [relativeAmount]% [stat] = [relativeAmount]% [stat] [relativeAmount]% [stat] [cityFilter] = [relativeAmount]% [stat] [cityFilter] [relativeAmount]% [stat] from every [tileFilter/buildingFilter] = [relativeAmount]% [stat] da ogni [tileFilter/buildingFilter] - # Requires translation! -[positiveAmount]% of [stat] from every [improvementFilter/buildingFilter] in the city added to [resource] = +[positiveAmount]% of [stat] from every [improvementFilter/buildingFilter] in the city added to [resource] = [positiveAmount]% di [stat] da ogni [improvementFilter/buildingFilter] nella città aggiuntosi a [resource] [relativeAmount]% Yield from every [tileFilter/buildingFilter] = [relativeAmount]% resa per ogni [tileFilter/buildingFilter] [relativeAmount]% [stat] from every follower, up to [relativeAmount2]% = [relativeAmount]% [stat] per ogni seguace, fino al [relativeAmount2]% [relativeAmount]% [stat] from City-States = [relativeAmount]% [stat] dalle Città-Stato @@ -2802,16 +2798,11 @@ Units ending their turn on [Mountain] tiles take [50] damage = Le unità che fin Maya Long Count calendar cycle = Ciclo del Conto Lungo del calendario maya Prophet = Profeta Meet another civilization = Incontra un'altra civiltà - # Requires translation! -policy = - # Requires translation! -wagon = - # Requires translation! -promote = - # Requires translation! -coin = - # Requires translation! -choir = +policy = politica +wagon = vagone +promote = promuovi +coin = moneta +choir = coro Triggerable = Attivabile UnitTriggerable = Unità Attivabile Global = Globale diff --git a/android/assets/jsons/translations/Vietnamese.properties b/android/assets/jsons/translations/Vietnamese.properties index d4ab4381de..b679668d5c 100644 --- a/android/assets/jsons/translations/Vietnamese.properties +++ b/android/assets/jsons/translations/Vietnamese.properties @@ -442,7 +442,7 @@ Legendary Start = Khởi đầu Huyền thoại This is used for painting resources, not in map generator steps: = Điều này được sử dụng để vẽ tài nguyên, không phải trong các bước tạo bản đồ: Advanced Settings = Cài đặt nâng cao -RNG Seed = RNG Seed +RNG Seed = RNG seed Map Elevation = Chiều cao bản đồ Temperature intensity = Độ khắc nghiệt của nhiệt độ Temperature shift = Sự thay đổi nhiệt độ @@ -530,7 +530,7 @@ Map editor = Trình chỉnh sửa bản đồ View = Xem Generate = Tạo Partial = Một phần -Generator steps = Các bước của máy phát điện +Generator steps = Các bước tạo thế giới Edit = Chỉnh sửa Rivers = Sông Load = Tải @@ -561,7 +561,7 @@ Import a Wesnoth map = Nhập bản đồ Wesnoth Brush ([size]): = Cọ vẽ ([size]): # The single letter shown in the [size] parameter above for setting "Floodfill". # Please do not make this longer than one character, the associated slider will not handle well. -Floodfill_Abbreviation = Floodfill_Abbreviation +Floodfill_Abbreviation = floodfill_viếttắt Error loading map! = Lỗi khi tải bản đồ! Map saved successfully! = Bản đồ đã được lưu thành công! Current map RNG seed: [amount] = Hạt giống RNG của bản đồ hiện tại: [amount] @@ -894,12 +894,12 @@ Could not download music! = Không thể tải nhạc! Advanced = Nâng cao Number of autosave files stored = Số lượng tệp trò chơi tự động lưu được lưu trữ # Requires translation! -Autosave turns must be larger than 0! = +Autosave turns must be larger than 0! = Lượt Tự động Lưu phải lớn hơn 0! # Requires translation! -Autosave turns over 200 may take a lot of space on your device. = +Autosave turns over 200 may take a lot of space on your device. = Tự đồng lưu trên 200 lượt có thể sử dụng rất nhiều bộ nhớ trong thiết bị của bạn. Turns between autosaves = Chuyển giữa các lần lưu tự động # Requires translation! -Enter = +Enter = Nhận vào Screen orientation = Hướng màn hình Landscape (fixed) = Phong cảnh (cố định) @@ -929,15 +929,15 @@ Hit the desired key now = Nhấn phím mong muốn ngay bây giờ ## Locate mod errors tab Locate mod errors = Xác định lỗi mod Check extension mods based on: = Kiểm tra các mod của tiện ích mở rộng dựa trên: --none- = -none- --declared requirements- = -declared requirements- +-none- = -không- +-declared requirements- = -yêucầuđưara- Requirements could not be determined.\nChoose a base to check this Mod. = Các yêu cầu không thể được xác minh. \nChọn một base để kiểm tra mod này. Reload mods = Tải lại mod # Currently unused Checking mods for errors... = Đang kiểm tra các bản mod để tìm lỗi ... No problems found. = Không tìm thấy vấn đề. Autoupdate mod uniques = Tự động cập nhật tính năng của mod -Uniques updated! = Các mặt hàng được cập nhật! +Uniques updated! = Các tính năng đã được cập nhật! ## Debug tab Debug = Gỡ lỗi @@ -2797,15 +2797,15 @@ Maya Long Count calendar cycle = Chu kỳ lịch Đếm dài Maya Prophet = Nhà Tiên tri Meet another civilization = Gặp một nền văn minh khác # Requires translation! -policy = +policy = chinhsách # Requires translation! -wagon = +wagon = xengựa # Requires translation! -promote = +promote = nângcấp # Requires translation! -coin = +coin = xèng # Requires translation! -choir = +choir = hợpxướng Triggerable = Có thể kích hoạt UnitTriggerable = đơnvịkíchhoạt Global = Toàn cầu @@ -6869,7 +6869,7 @@ Uluru = Uluru #################### Lines from TileImprovements from Civ V - Gods & Kings #################### -Polder = Polder +Polder = Đất thấp có Đê bọc #################### Lines from TileResources from Civ V - Gods & Kings #################### @@ -7154,7 +7154,7 @@ Certain Buildings will also provide Specialist Slots. These slots will show up i Each Specialist will generate a certain amount of yield as indicated to the right of the available slots. = Mỗi Chuyên gia đều tạo ra một lượng sản phẩm nhất định, cái mà được trưng ở các chỗ có sẵn. While these are a great way to specialize the yield production of a City outside of the surrounding Tile Yields, Specialists have an additional value. Each one also generates Great Person Points each turn. With enough of them, a new Great Person will join your Nation. = Trong khi đây là các cách rất hiệu quả trong việc nâng năng suất khai thác tài nguyên của thành phố, Chuyên gia còn có thêm một điểm đặc biệt nữa. Mỗi loại Chuyên gia đều sẽ tạo ra điểm Vĩ nhân, cái mà khi đủ sẽ đưa một người Vĩ đại tham gia bạn. # Requires translation! -See also Great People = +See also Great People = Đồng thời xem: Người Vĩ đại Great People = Người Vĩ đại Certain buildings, and specialists in cities, generate Great Person points per turn.\nThere are several types of Great People, and their points accumulate separately.\nThe number of points per turn and accumulated points can be viewed in the Overview screen. = Một số tòa nhà và chuyên gia trong thành phố, tạo ra điểm Người vĩ đại mỗi lượt.\nCó một số loại Người vĩ đại và điểm của họ được tích lũy riêng.\n Có thể xem số điểm mỗi lượt và điểm tích lũy trong màn hình Tổng quan. diff --git a/buildSrc/src/main/kotlin/BuildConfig.kt b/buildSrc/src/main/kotlin/BuildConfig.kt index 1ad0afea01..f250b0a51d 100644 --- a/buildSrc/src/main/kotlin/BuildConfig.kt +++ b/buildSrc/src/main/kotlin/BuildConfig.kt @@ -3,7 +3,7 @@ package com.unciv.build object BuildConfig { const val appName = "Unciv" - const val appCodeNumber = 1160 - const val appVersion = "4.17.18" + const val appCodeNumber = 1161 + const val appVersion = "4.17.19" const val identifier = "com.unciv.app" } diff --git a/changelog.md b/changelog.md index acb0c759e0..cbfccc1dae 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,29 @@ +## 4.17.19 + +Added map autosave + +perf(cpu): reassignPopulation for AI on turn start only once + +Ensure with test that tile+neighbor mapping is unique + +perf(cpu): Optimized tile-to-tile cost cache + +perf(cpu): Optimized 'good tile to explore' AI decision + +perf(cpu): Optimized trade mission AI logic + +Notification categories can me minimized by clicking on the title + +chore: slight cleanup for Battle.attack - there really is too much going on there... + +By RobLoach: +- BNW: Fix getting Cultural Victory through Domination +- Have the Trigger Event unit action text be the Event + +Updated max window in Windows platform - By SidedYapper + +Fix human-human relationship incorrectly showing "Friend" in the diplomacy screen, as well as inconsistent colors - By unciv-loof + ## 4.17.18 Peace trade no longer generates notification when it "ends" diff --git a/core/src/com/unciv/UncivGame.kt b/core/src/com/unciv/UncivGame.kt index e8333f3693..f0d7776cc6 100644 --- a/core/src/com/unciv/UncivGame.kt +++ b/core/src/com/unciv/UncivGame.kt @@ -494,7 +494,7 @@ open class UncivGame(val isConsoleMode: Boolean = false) : Game(), PlatformSpeci companion object { //region AUTOMATICALLY GENERATED VERSION DATA - DO NOT CHANGE THIS REGION, INCLUDING THIS COMMENT - val VERSION = Version("4.17.18", 1160) + val VERSION = Version("4.17.19", 1161) //endregion /** Global reference to the one Gdx.Game instance created by the platform launchers - do not use without checking [isCurrentInitialized] first. */ diff --git a/fastlane/metadata/android/en-US/changelogs/1161.txt b/fastlane/metadata/android/en-US/changelogs/1161.txt new file mode 100644 index 0000000000..20dfbebd19 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/1161.txt @@ -0,0 +1,25 @@ + + +Added map autosave + +perf(cpu): reassignPopulation for AI on turn start only once + +Ensure with test that tile+neighbor mapping is unique + +perf(cpu): Optimized tile-to-tile cost cache + +perf(cpu): Optimized 'good tile to explore' AI decision + +perf(cpu): Optimized trade mission AI logic + +Notification categories can me minimized by clicking on the title + +chore: slight cleanup for Battle.attack - there really is too much going on there... + +By RobLoach: +- BNW: Fix getting Cultural Victory through Domination +- Have the Trigger Event unit action text be the Event + +Updated max window in Windows platform - By SidedYapper + +Fix human-human relationship incorrectly showing "Friend" in the diplomacy screen, as well as inconsistent colors - By unciv-loof \ No newline at end of file