Author Topic: [DORMANT] Shining Shooting Star Accessibility Patch: Polished Shooting Star  (Read 31166 times)

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
I AM NOT ACTIVELY WORKING ON THIS ANYMORE. IF ANYONE WANTS TO MAKE THEIR OWN PATCH, I WILL NOT STOP YOU.
BELOW IS THE OP AS IT WAS BEFORE THIS PROJECT WAS PUT INTO DORMANCY.


WARNING: ANY REPLAYS WHICH WERE NOT CREATED IN A SPECIFIC PATCHED GAME MIGHT DESYNCH.
WARNING 2: The patch is always changing! New bugs are discovered every once in a while, so this means that the patch might have issues! Feedback about any issues are encouraged! I also encourage users to check back for new updates regularly and update as soon as you can when a new version is available.

This patch allows you to run Shining Shooting Star without having to run it using certain locale settings.
It also resolves some issues regarding system-specific interpretations.
It ALSO makes translating all scenarios, endings, and music comments possible for certain languages and easier for others! See the end of this post for examples.

IMPORTANT: This is NOT meant to be a language patch! This is meant to make the game accessible to other locales and Windows systems, and to make translations simpler (or in some cases, possible) for other languages.

Permissions on use in other projects:
Are you trying to make a translation patch for the game and want this? Be my guest! I only wish that you credit me and let me know you are using it!
Otherwise, I ask that you contact me first!

Should work with:
  • English
  • Japanese (日本語)

Has issues with (see issues not fixed below):
  • Any locale which uses a comma for fractional numbers; e.g., "4,7" instead of "4.7".

Let me know if it works for or has issues with another language!

Download:
Current Version: 0.4.1a
ALERT: After waiting patiently for a response, I have acquired permission from the original game creator to distribute their game with the patch installed! No more fumbling with patchers!
You can download the patch from here!
Just make sure you extract everything before you try doing anything else with this and READ THE INCLUDED TEXT FILE!

PLEASE! If you have ANY issues with this patch and the text file's troubleshooting tips do not help, alert me! The goal is to make this game be internationally accessible to both players and translators, so if there is a problem with the patch, it is my responsibility to fix it! :D


PSSSETTING INI DETAILS

  • Font Size - A number with or without a decimal point that represents the size of the font used for boss conversations and endings.


Issues not fixed by the patch:
  • A part of the Extra Stage before the midboss has its enemies and bullets move erratically. This is caused on locales which separate fractional numbers with a comma rather than a period; e.g., "4,7" instead of "4.7".

Special thanks - Those marked with an asterisk (*) were of great help:
  • YuyuKoishi7 - Reported the issue of erratic enemies/bullets and other anomalies. Now fixed.
  • * RegalStar - Reported several issues related to the Japanese locale. Primary help for stabilizing Japanese locale compatibility. Also reported the stage loading issue. Now fixed.
  • VierMill - Reported the midway stage crash issue. Now fixed.
  • Sonrio - Reported the crashing on Marisa's Stage 2 and Sanae's Stage 1 boss conversations. Now fixed.
  • Shmilly (YouTube) - Reported the character selection crash issue. Now fixed.
  • * philipstrife - Discovered a fix to the issues of erratic enemies/bullets and other anomalies AND the midway crash issue. Fixes more than listed.
  • Maurizio De Marchi (YouTube) - Reported boss health not draining for certain spellcards declared by the bosses of Stages 4 - 6. Now fixed. Also reported erratic movements of enemies in the Extra Stage.

Changelog
« Last Edit: April 25, 2017, 11:22:22 PM by yoshimo »
My perception of my work ethics.

Uruwi

  • Nightmare of Torrential Precipitation
  • 478 million goober
Re: Locale-Independency for Shining Shooting Star
« Reply #1 on: June 23, 2016, 02:07:56 PM »
If you want to see if the replays are still synchronized, try replaying one of the scoreruns on the main thread and see if the scores match.
foo = foldl $ flip ($)
Highest difficulty 1CCed for each game, by shot type in the original order. (-: never 1CCed on any difficulty, or never used; E: easy, N: normal, H: hard, L / U: lunatic / unreal.)
EoSD [NNNE] PCB [EE--N-] IN [NEEE + Ex Border] PoFV [Mystia N, Mystia E no charge] MoF [EN--H- + Ex Marisa B] SA [N-----] UFO [----EN] TD [NENE] DDC [EE-EHE + Ex Marisa B & Sakuya A] LoLK [PD --N- Legacy ---N] EE [N- + Ex Yabusame] EMS [N-- + Ex Yabusame] RMI [NHN + Ex YaoSuku]
Avelantis (demo) Easy YuukiB 426,077,200

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
Re: Locale-Independency for Shining Shooting Star
« Reply #2 on: June 24, 2016, 02:47:33 AM »
Thank you for the suggestion, Uruwi.

I watched a replay  to the point that it would not be spoilers for me. It did not desyncronize, so that's a good sign.

I have also begun seeking distribution permissions. I'm not going to elaborate; I just want to make it clear I am working towards a distribution.
« Last Edit: June 24, 2016, 02:55:38 AM by yoshimo »
My perception of my work ethics.

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
While I generally disapprove of double-posting, I feel this is important for system compatibility reasons.

I found the source of the issue with the text bounds. It should now work properly for any font.
With this, I have removed the support for line breaks as they are not needed.

Since this opens the topic from locale compatibility to other forms of polish across systems, I'm going to change the topic name to reflect this.

"Polished Shooting Star" is now my name for this project.
My perception of my work ethics.

Uruwi

  • Nightmare of Torrential Precipitation
  • 478 million goober
You know you can edit your posts, right?
foo = foldl $ flip ($)
Highest difficulty 1CCed for each game, by shot type in the original order. (-: never 1CCed on any difficulty, or never used; E: easy, N: normal, H: hard, L / U: lunatic / unreal.)
EoSD [NNNE] PCB [EE--N-] IN [NEEE + Ex Border] PoFV [Mystia N, Mystia E no charge] MoF [EN--H- + Ex Marisa B] SA [N-----] UFO [----EN] TD [NENE] DDC [EE-EHE + Ex Marisa B & Sakuya A] LoLK [PD --N- Legacy ---N] EE [N- + Ex Yabusame] EMS [N-- + Ex Yabusame] RMI [NHN + Ex YaoSuku]
Avelantis (demo) Easy YuukiB 426,077,200

Re: Shining Shooting Star Compatibility Patch: "Polished Shooting Star"
« Reply #5 on: June 25, 2016, 04:55:28 PM »
I used the patch, well the game worked but not in a good way. xD
https://www.youtube.com/watch?v=VruQ6XsiNYc
Watch that video, the same happenes to me when I patched the game lol.
Maybe it is an error on my side, do you know how to make it work properly?
And sorry if Im sending this wrong, I just create this account to send this message. Keep up the good work!

RegalStar

  • Envoy of Balance
Re: Shining Shooting Star Compatibility Patch: "Polished Shooting Star"
« Reply #6 on: June 25, 2016, 10:46:16 PM »
Now I can enter the game without it crashing, but it still crashes as soon as stage 1 boss shows up at the end (not as a midboss).

Also, after the loading screen it pops up an error saying something like "error while creating altar models (祭坛模型产生时出错)". I'm assuming thta it's talking about the files in the Model folder, which contains images with Chinese names.

And yes, I made sure that all pathnames to the game and the patch files (which I just copied straight into the game folder) have no non-latin characters.

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
Re: Shining Shooting Star Compatibility Patch: "Polished Shooting Star"
« Reply #7 on: June 25, 2016, 11:24:15 PM »
If you downloaded v1.0, I accidentally uploaded the wrong patch. It will not work correctly.

If you downloaded v1.0.1, I'm not exactly sure what the problem is. I'm looking into it right now to see if I screwed up again. :ohdear:

I want to apologize for this. This is what happens when you try to distribute things at 5:00 in the morning.

EDIT: I just applied the v1.0.1 patch on my end, and it seems to work fine. If you are using the v1.0.1 patch, may you tell me what your system locale is? This will allow me to experiment and debug further. You can see how to check it here.

RegalStar, I do recognize the first error you are talking about. The error regarding the models should have been fixed (see Model_Mesh.cs changes), but the boss causing crashes would be related to conversations, which I can only imagine crashing if you have a translation applied that has commas in it not surrounded by quotation marks or if your locale encodes to something which for some reason includes a comma.

ANOTHER EDIT: Sorry, Yuyu, I didn't see you at first! To be honest, while that is hilarious minus the crash, it's unintended, I honestly have no idea why it happens. I would also recommend letting me know your system locale so I may investigate further.
« Last Edit: June 26, 2016, 01:42:40 AM by yoshimo »
My perception of my work ethics.

Re: Shining Shooting Star Compatibility Patch: "Polished Shooting Star"
« Reply #8 on: June 26, 2016, 02:14:01 AM »
I tried downloading again, and the same glitch happened, to me it is hilarious how the fairies spawns and how it crashes in the most calm part of the song. xD

My locale system is Japanese from what I can see. I hope you can find a solution.  :)

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
Re: Shining Shooting Star Compatibility Patch: "Polished Shooting Star"
« Reply #9 on: June 26, 2016, 02:54:09 AM »
YuyuKoishi, I do not seem to experience your issues. The enemies appear to move fine and the midboss loads just fine. Let me know if you can think of anything about your system that may help me discover the issue.
I do want to ask: is it correct that you are playing on a Windows operating system? If so, what version? The video you gave me had what appeared to be an older version of Windows.


I have confirmed RegalStar's issues. They seem to be related to how the Japanese encoding works. The encoding, for reference, is code page 932, "Shift-JIS." The problem is that the encoding for Shift-JIS absorbs some of the commas in the CSV conversations. These commas are necessary for splitting the text correctly, meaning that it will be read wrong if the commas are absorbed. This is why the game crashes trying to load certain scenarios. I'm looking for a solution right now.

As for the model loading error, I have not yet looked into that, but I suspect it's a similar issue.
EDIT: So it turns out Shift-JIS absorbs periods as well! Thus, the file names lose the period necessary to define their extension. Suppose you have an image called "something.bmp". Shift-JIS may decide to eat the period and spit out "<something in japanese>bmp". notice the period is gone. This is strange and at the graphics setup level, so the fix might be very difficult.
« Last Edit: June 26, 2016, 03:08:32 AM by yoshimo »
My perception of my work ethics.

Re: Shining Shooting Star Compatibility Patch: "Polished Shooting Star"
« Reply #10 on: June 26, 2016, 04:39:41 AM »
I play on Windows 7. It sounds so complex! Just to be sure, which locale do you use? Maybe I should switch to the one you use in order to make it work?

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
Re: Shining Shooting Star Compatibility Patch: "Polished Shooting Star"
« Reply #11 on: June 26, 2016, 07:13:37 AM »
I use the English (United States) locale. I know that works. I have not received confirmation or negation on other locales other than the Japanese locale.
If you're going to switch to a different locale, you may as well just switch to Simplified Chinese and play the game without the patch unless you want the text box bounding to work.

Also, I have found more information regarding the Japanese locale issues. It appears the encoding does not support certain bytes that are passed to it. As a failsafe, it changes the bytes to something else. I'm not sure how it gets to the "something else." What I do know is that it ruins the string in a way that cannot be easily fixed. In fact, it might be impossible to fix, as you really can't get back lost text. I am considering implementing language-specific fixes, but that would be really inefficient; however, it is increasingly seeming to be the best fix.
My perception of my work ethics.

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
IMPORTANT UPDATE!

The Japanese locale (hopefully) is now supported! I spent an entire day figuring a fix for you guys; be happy! :3

I also implemented a very important fix that affects all locales. Model loading didn't work correctly on locales other than English. This would cause issues in certain stages, and will probably cause a crash!
Because of this, I highly recommend all users update their patch to version 1.0.2! Check the original post for the download!

Side note to YuyuKoishi: I cannot replicate the issue that you report having, so I cannot look for a fix right now. Once I find a pattern with those who suffer the problem, I will immediately look for a fix!
« Last Edit: June 26, 2016, 11:51:14 PM by yoshimo »
My perception of my work ethics.

RegalStar

  • Envoy of Balance
(Japanese locale) Now the game will run all the way to the final boss, but it seems that loading the ending still causes a crash.

Less seriously, all conversations are now gibberish.

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
Darn, I was really hoping I wouldn't have to deal with spoiling content. I will look into this immediately.

The garbage text is normal as it's supposed to be decoded by the Chinese locale, but it's being decoded in UTF-8. This is done simply to prevent certain locales from crashing. A translation patch should resolve the problem as long as it's compatible with my patch.

I am very sorry with the inadequate amount of testing I am doing. I am prioritizing this project over playing the game myself, so I don't test the game fully as I've only gotten to Stage 4.
I will update the OP to explain that there are still issues.

I'd also like to personally apologize if you were doing a legitimate run and this happened. I was really hoping something like that would never happen; it may as well be my worst nightmare is respect to this project.

EDIT: Okay, this is actually very bad. This is so bad, I'm pulling the download off the original post. Encoding.Default is actually used in many places.This means a lot of data get decoded differently in several different aspects of the game. THE PLAYER SCORES ARE SAVED THIS WAY, which means that any .dat files people share MIGHT NOT BE COMPATIBLE ACROSS LOCALES. I will put the download back once I can eliminate all of these issues, because there's nothing worse than segregating a game community.

EDIT 2: Maybe not as bad as I initially thought. Player data seems to load fine no matter what the locale is due to the characters used for it being near universal. I am however staying wary of it.

EDIT 3: I am NOT playing through the whole game just to debug a crash. Let me take a shortcut and give myself a boost. ;)
...Even with the boost, I'm absolute trash and beating her is difficult.

FINAL EDIT: After struggling with beating this woman (Don't take that out of context!) for at least an hour, I believe I may have fixed the issue. I made seemingly appropriate changes to the several locations where the default encoding was used, and I do not receive a crash when the ending loads on either English or Japanese locales. Before you ask, no, I am not debugging other locales right now. I will debug a locale once someone reports there being an issue with it, as YuyuKoishi and RegalStar did.
Before I distribute this new release candidate, I need to do some final checks, but I will need time to do that.
« Last Edit: June 27, 2016, 11:34:47 PM by yoshimo »
My perception of my work ethics.

RegalStar

  • Envoy of Balance
(Japanese locale) I tried playing with other characters. It seems that Marisa and Sanae gives properly encoded Chinese text on boss conversations, but both will crash on stage 4 midboss. Koishi crashes on Stage 1 boss.

(And wow, is Koishi supposed to have that kind of range with her unfocused shot?)

EDIT: I guess this post already makes it pretty clear, but my previous post's experience was with Reimu/Shinmyoumaru.

EDIT2: It turns out that stage 4 doesn't have a midboss. So I guess Marisa/Sanae crashes on stage 4 boss.
« Last Edit: June 27, 2016, 07:05:13 PM by RegalStar »

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
Yes, this exactly matches what I found. There are two different methods for loading text from the CSV files. The areas you describe crashing are the parts where it tries to use the method I did not fix.

With this information acquired, I feel it should be safe to release the next update, but I first need time to prepare the original post.
EDIT 2: RC3.0 is now available!

Thank you for your patience and assistance, RegalStar!

EDIT: Wow, I almost forgot to remove the boost I gave myself for debugging purposes. Imagine playing as Reimu & Shinmyoumaru and starting at Stage 6 with 8 lives, 8 spellcards, and 4.00 power. I'm glad I remembered to remove it before I released it.
« Last Edit: June 27, 2016, 11:56:20 PM by yoshimo »
My perception of my work ethics.

RegalStar

  • Envoy of Balance
I tested a complete playthrough of Reimu/Shinmyoumaru and there were no problems.

Thank you for writing this patch.

Totalheartsboy

  • The Hidden Truth
  • Dreams are your hidden futures.
This patch is very helpful, thank you so much ;3!~
Now i don't have to change the locale.


Oftopic:Btw, do you know what are the names for the numpad keys(8,4,6,2) im left-handed and the regular arrows are not working














yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
I'm glad to hear the patch is working for both of you!


There is another program that comes with Shining Shooting Star called Config. This program seems to run fine without a locale switch for me, but considering all of the problems I've seen with the Japanese locale, I can imagine it not working for some locales.

If you can run Config, you can do what is show in this picture.
Quote
EDIT: F8 is actually "Change Window Size." This will cycle along 640x480, 800x600, 1024x768, and fullscreen.
Make sure the NumLock is enabled, or it won't enter the NumPad numbers.

If you can't, you can edit the Setting INI, which I assume is what you are trying to do. The name of the numpad keys are "NumPad<#>" where <#> is the number.

Make sure the NumLock is enabled while you play, otherwise neither method will work.
« Last Edit: June 28, 2016, 03:18:47 AM by yoshimo »
My perception of my work ethics.

This is weird! I tried the 3.0 patch (Btw thank you so much for taking the time to do this!) on my friend's PC and it work completely fine, but then I try it on mine and the same error happens (The one I show you on the video before)... Maybe my PC is the problem, idk I give up, this is weird. XD

I'm looking forward for next RC of this patch, and hopefully it works so I can give you feedback.  :) Stay awesome!

Edit: I'm going to record how the games looks like when you try it on Lunatic after patching, its hilarious! 😂😂😂
« Last Edit: June 28, 2016, 01:38:51 PM by YuyuKoishi7 »

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
I truly wish I knew what the issue was regarding your error. My patch aims for compatibility, and this error is making the game not compatible! I will keep my eyes open for a solution.

Here's an update on my current plans. The conversations for Stages 1 - 3 for Marisa's and Sanae's scenarios are not easily modifiable for translators. My goal is to change that.
I already have Stage 1's conversations accessible, but I need to focus on college for a while, so I can't push the update any time soon.
This next update will require more than just patching the game; it will also require the user to add some files to prevent crashes. This is just a heads-up.
My perception of my work ethics.

It's okey, you are doing more than enought by creating this patch! I wish you good luck on your college.

Oh and here is the video, Idk why it is so funny how the game crashes when Koishi is in front of a Fairy.  xD
https://www.youtube.com/watch?v=IPeM05fKr-0

EDIT: I copied my save filed into the glitched game (Lets call it Broken Shooting Star) and I tried some levels on hard and normal to see how affected is the game, and its even more hilarious. I will upload another video, maybe that would give you a clue of wat the problem is (And also make you laught a bit xD)
Here is the video:
https://www.youtube.com/watch?v=vSdVSjyCi2E&feature=youtu.be
I hope that madness can help you find what the problem might be.
« Last Edit: June 28, 2016, 06:38:39 PM by YuyuKoishi7 »

RegalStar

  • Envoy of Balance
My friend is reporting that the game crashes upon selecting a character, on German locale.

EDIT: Trying to view a replay will crash upon selecting a stage.
« Last Edit: June 28, 2016, 09:05:31 PM by RegalStar »

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
Still at college at the moment. On my phone.

I'm willing to bet that this is another lossy encoding issue, not unlike the model loading error on a Japanese locale; however, I think this is related to textures. I will look into it as soon as I can.

EDIT: I'm now home. I would immediately start figuring the German incompatibility, but there are two problems.

  • There are multiple German locales. Which one is your friend's locale, RegalStar?
    • Austria
    • Germany
    • Liechtenstein
    • Luxembourg
    • Switzerland
  • A lot of my friends are currently playing on my Terraria server, so I can't switch my locale right now since it requires my computer to restart.


YuyuKoishi, I got around to watching your videos. All I can think of while watching them is:
Quote
Either way, after watching your videos, I've concluded a few things.
  • Enemies and bullets do not correctly travel. They do travel in the right DIRECTION, but not at the right SPEED.
  • Some bullets do not correctly render. The most notorious of these seem to be the lasers, which sometimes render as large blobs.
  • As a result of the above two reasons, your game tremendously slows.
  • Bosses and midbosses crash the game. "Jee, what made you think that, yoshimo? :V"

I finally have a hypothesis. I believe most of the data for what happens in stages in contained in certain MBG files. I'm considering looking at both their structure and how the game reads them to see if I can determine potential problems. I will try to get to this as soon as I can, but I can only do one thing at a time...

EDIT2: Nope nope nope nope nope
Quote
« Last Edit: June 29, 2016, 02:48:17 AM by yoshimo »
My perception of my work ethics.

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
Here's an update the translators will LOVE!
RC3.1 is now available!

What's new?
I fixed the bug with CSV files potentially crashing when modified, so translators now can actually START translating.
The other addition is that I have converted the hard-coded conversations to CSV conversations! Translators now can start editing Stages 1 - 3 of Marisa's and Sanae's scenarios with just a few mouse clicks!

Eh, may I make a confession?
I cannot guarantee I properly converted the hard-coded conversations. A replay of Sanae confirms no crashes happen, but I could not get a replay of Marisa.
As such, I cannot guarantee Marisa does not cause crashes, and I cannot guarantee that the conversations for either character are correct; the replays just rush through the text!
Please let me know if you spot something wrong!!

P.S. Apologies for double-post.
« Last Edit: June 29, 2016, 09:51:19 AM by yoshimo »
My perception of my work ethics.

RegalStar

  • Envoy of Balance
German (Switzerland)

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
I'm really sorry to say this, but I'm not experiencing any crashes on any of the German locales.

However, I did release a new patch after you reported the issue. Perhaps one of my changes indirectly fixed the issue?


On another topic, RC3.1 of my patch requires more steps than the previous versions did. As such, my video is somewhat outdated.
I will update it as soon as I can, but I again need to focus on college work, and finding good times to record nonetheless is difficult.
« Last Edit: June 30, 2016, 11:58:45 AM by yoshimo »
My perception of my work ethics.

yoshimo

  • Impractical Coder
  • Just your neighborhood-friendly Yoshi!
RC3.2 has been released. This one is a pretty small update. The music comments now can easily be translated.

As for the other problems people experience with my patch, I am very sorry to say that I have no ideas how to approach them. It is very possible that I cannot fix them. :(
Thank you for reporting the issues. I won't forget about them, but they will have to be put on the back burner.
My perception of my work ethics.

I have a LoadBPic Error ever since I installed the game, and the game crashes whenever I choose a character.
I thought this patch would fix it, but there are no changes at all... any idea how to fix it?