Can't install SMF Arcade - Specified key was too long

Started by Daniel Hofverberg, November 09, 2020, 08:30:02 PM

Previous topic - Next topic

Skhilled

Quote from: Daniel Hofverberg on November 12, 2020, 06:58:42 PMFor some reason, the database had a default collation of that weird utf8_mb4_0900_ai_ci, which I have never willingly opted for.

I can only assume it must have happened when I recently switched to a new server host (as the old host shut down) - it seems that utf8mb4_0900_ai_ci is the default collation since MySQL 8.0 (for some strange reason), so apparently it must have used the default for the database itself when I imported the dump from the old server. Very annoying... :(

I'm so sorry for wasting your time with something that apparently wasn't SMF Arcade's fault. :-[


Different hosting will use different collations by default. To change this, follow this article:

https://www.casbay.com/guide/kb/how-to-change-the-mysql-collation-settings-in-phpmyadmin/

Also, make sure that you do what's in this link to help:

https://web-develop.ca/index.php?msg=4634

Daniel Hofverberg

Quote from: Chen Zhen on November 13, 2020, 10:10:56 PMI assume this is only occurring for games from E-Arcade?

If you have the "Auto Adjust Improper Save Types" option enabled then it is likely adjusting the save type the first time when played and a score save has been attempted.

E-Arcade did not have game save types in the database therefore some games that were from E-Arcade & never played on SMF Arcade will have the wrong save type in the database (default is SMF v1).
With the above option enabled, SMF Arcade should attempt to adjust the save type for you as scores are saved to the database.
Unfortunately the game may not save a score the first time because the arcade had to adjust it afterward. 

You can also use "Enable save type debug logging" temporarily in the arcade settings to see if this is happening so when it adjusts a game it will put a message in the error log.
You don't have to keep the setting enabled all the time but it's there to debug these type of problems so you can see what's going on.
Yes, it's only happening with games from e-Arcade. So far it seems to work the second time when the game has been played once, with the "Auto Adjust Improper Save Types" enabled.


One question though: Is the purpose of the setting "Shout Member Scores" so that new scores will be added to the arcade shout, just like it was in e-Arcade? If it is, then it doesn't seem to work. When I play games and submit scores, the scores appear in the "Latest scores" section at the bottom of the arcade index, but nothing is added to the arcade shout.

Chen Zhen

If you have that enabled and saved in arcade settings the member scores should be posted to the arcade shoutbox. Arena and guest scores also have a setting for it.

Daniel Hofverberg

Quote from: Chen Zhen on November 17, 2020, 05:33:28 PMIf you have that enabled and saved in arcade settings the member scores should be posted to the arcade shoutbox. Arena and guest scores also have a setting for it.
Sounds strange, because I have all three options enabled in Arcade Settings and nothing has been posted to the shoutbox.

Is there anything else I need to do besides checking the checkboxes in the Arcade Settings? Or doesn't scores from administrators count, as it's only me who has played so far? Or can you think of any other reason why it wouldn't post scores to the shout?

Chen Zhen


It should be working as I don't see any issues with it at the moment.

The shoutbox has been changed from when it was E-Arcade to a javascript + ajax auto refresh.
However it uses the same database table.

Does your shoutbox still have shouts in it from when you used E-Arcade?
Perhaps try clearing the shoutbox contents in the Arcade maintenance section & then try it again.

Daniel Hofverberg

Quote from: Chen Zhen on November 18, 2020, 06:27:46 PMIt should be working as I don't see any issues with it at the moment.

The shoutbox has been changed from when it was E-Arcade to a javascript + ajax auto refresh.
However it uses the same database table.

Does your shoutbox still have shouts in it from when you used E-Arcade?
Perhaps try clearing the shoutbox contents in the Arcade maintenance section & then try it again.
The old shouts from e-Arcade didn't transfer over automatically, as the database table is apparently named smf_arcade_newshouts now, whereas e-Arcade used the table name smf_arcade_shouts. It was easy to move over the old shouts from e-Arcade though, by moving over the posts automatically to the new table (as it had the same structure as the old one).

With or without shots made no difference though. I can still shout manually by typing a message in the text box and clicking "Shout", but no shouts are made automatically when someone scores in any of the games. :(

Chen Zhen


Yes you are correct as I had forgotten about changing the table name for the shouts.
If you are able to shout without problems & the setting is indeed enabled to shout scores then it should be working.
Are there errors in the Javascript console log from the user account (session) making a new score that is posted?