mmtrt / cnctsun-snap

Unofficial C&C: Tiberian Sun soaked in WINE and Snapped for Linux
https://snapcraft.io/cnctsun
GNU Lesser General Public License v2.1
17 stars 1 forks source link

[Feature request] Add support for easy language switching #3

Open SoulInfernoDE opened 5 years ago

SoulInfernoDE commented 5 years ago

Hi, i have made a language pack for german. It would be very nice if there is any option to include/download the language pack and overwrite existing files with it from within either the launcher or from the snap itself. If you have any idea how this could be done the smart way i could give you the link to the language pack and the references.

Way to manually download the language pack via terminal: wget --no-check-certificate 'https://raw.githubusercontent.com/mzramna/easy-google-drive-downloader/master/download_google_drive_file.sh' -O download_google_drive_file.sh && chmod +x download_google_drive_file.sh && ./download_google_drive_file.sh '10gE3vUSUcjFWC0gxsnUbbLlZODffdydE'

Also i don't know if it's allowed to add the uncut patches from Nyerguds but this would fit the game in german language nearly the same as in english and has a very nice play feeling.

mmtrt commented 5 years ago

I could implement this into the snap with following possible ways. I like the third option.

can you post contents of tar file I have slow connection could take time, so the lang pack is for full game not for multiplayer of cncnet client if I'm correct.

SoulInfernoDE commented 5 years ago

Yes i think the third option would be a good solution. You are right it's a full game translation including the firestorm expansion. This includes a sound, text and video translation. You mentioned a good point that not all people have a fast internet connection. So adding a second option that only translates core parts of the game without the bigger files which excludes videos for example would be a good thing. I'll make a second archive excluding the bigger files.

First here are the folder containing all of the files including a screenshot of the contents: https://drive.google.com/drive/folders/1ExLoLW1hHbHxexHTJg4n8frwPPpUC7n7?usp=sharing

Full german language pack contents [~1.4GB]: content_of_cnctsf_uncut_language_pack_german_tar_bz2 Explanation of some files: ecache81.mix - The Patch from Zimbio81 uncuts the cyborgs. MOVIES01-03.MIX - translates the movies to german TIBSUN.MIX ->All other files - translates everything possible with a language pack

Small german language pack - excluding any media contents [~102MB]: contents_of_cnctsf_uncut_language_pack_german_small_tar_bz2

Manual download of the small language pack in terminal: wget --no-check-certificate 'https://raw.githubusercontent.com/mzramna/easy-google-drive-downloader/master/download_google_drive_file.sh' -O download_google_drive_file.sh && chmod +x download_google_drive_file.sh && ./download_google_drive_file.sh '1yNuqd7v_mGIXaEWVipG_JKaCLO_JfRK_' && rm download_google_drive_file.sh

If anyone encounters errors, missing translation scenes, crashes or bugs regarding the language pack, feel free to report them here or offer a fixed version/a fix here. I will help to fix them as far as i could with the mod tools that are available out there.

mmtrt commented 5 years ago

@SoulInfernoDE can you test the changes I've just added are living on edge channel.

snap install --edge cnctsun

or update the snap

snap refresh --edge cnctsun

I've only tested core lang pack option.

SoulInfernoDE commented 5 years ago

i have attached the debug log from installing with the terminal after snap is installed.

I commented commit dc72b63

--> I have tested the full language pack method <-- debug05022019_snap_cnctsun_edge_ger_full.txt

mmtrt commented 5 years ago

Retest the snap from edge and confirm it.

SoulInfernoDE commented 5 years ago

commented d0cfecc

Edit: It could download the language pack. However it throws permission denied anyway but it downloaded successfully on my linux mint laptop anyways. Im not sure if this was luck or if it will work every time. One bug is left. The language pack is in a folder inside of the installation folder. We need to move and overwrite the existing files. Either i should repack and reupload the language pack or moved per script?

mmtrt commented 5 years ago

That permission issue is harmless as for lang pack you should repack and upload it then test confirm so that I push out build from edge to stable.

SoulInfernoDE commented 5 years ago

Hey mmtrt, i tried to delete everything left on my computer and then reinstalled after i reuploaded the repackaged language pack. It works like a charm! THANK YOU! :1st_place_medal:

There are one or two notes we should give users who want to install the full game version:

So if you are willing to further support this i could upload a language pack for Spanish and French, too. So everyone will be pleased :-)

mmtrt commented 5 years ago

yeah do that then post their link ids so I'll add them, I could remove the silent install flag from lang pack install option so users could freely select files.

SoulInfernoDE commented 5 years ago

So the snap installation process of the full language packs will be:

Language pack for french is ready:

Language pack for spanish is ready:

-> I recommend renaming the first entry: Full Game to something like: [English] Full Game (Singleplayer + Multiplayer) so users would recognize that there are options for their language available "Full Game (Singleplayer + Multiplayer)" "Multiplayer" "Core translation GER unofficial with full game" "Complete translation GER unofficial with full game")

mmtrt commented 5 years ago

can you test new changes though I'll add the notice warn users before install later after some testings.

SoulInfernoDE commented 5 years ago

Tested and commented commit 6e24c2b -> Only first option: "English - Full Game" seems to work yet.

mmtrt commented 5 years ago

https://github.com/mmtrt/cnctsun/commit/9b2d439bd0813d568126a44fb1b442f9dc3f734d should fix that issue.

SoulInfernoDE commented 5 years ago

I am testing right now all options from start to end. Adding final statement soon.

Edit: All seems to be working fine now!

You Sir @mmtrt are genius! Thanks for Crafting!

Note: would be nice if you could do the small change requested in mmtrt/cncra repo :-)

Edit: You can push it to stable channel if you like to :+1: