Repository: ruffle-rs/ruffle (language: rust)

Issue:
Cyrillic letters are not rendered in ActionScript 2
### Describe the bug

Cyrillic letters are not rendered in ActionScript 2 but they do in ActionScript 3 but the AS3 conversion makes some glitches in the flash

View in the application:
![Знімок екрана 2024-03-14 о 19 02 35](https://github.com/ruffle-rs/ruffle/assets/157318917/ebd1ae5a-2d7e-4365-ba3e-5a14979a2a0c)

View in the demo:
![Знімок екрана 2024-03-14 о 19 02 48](https://github.com/ruffle-rs/ruffle/assets/157318917/2e6da17c-0e0f-4d64-8bfd-e77b08fc4365)

View of the AS3 version in the demo(causes some artifacts):
![Знімок екрана 2024-03-14 о 19 03 06](https://github.com/ruffle-rs/ruffle/assets/157318917/e1a796c7-17d7-4819-9dba-294a3bc86f4e)

### Expected behavior

They should render

### Content Location

The .swf: [https://file.garden/ZU-xUYjV4SO9KYcO/00137.swf](https://file.garden/ZU-xUYjV4SO9KYcO/00137.swf)

The .swf that was converted to AS3: [https://file.garden/ZU-xUYjV4SO9KYcO/00137AS3.swf](https://file.garden/ZU-xUYjV4SO9KYcO/00137AS3.swf)

### Affected platform

Online demo

### Operating system

macOS Catalina

### Browser

Mozilla Firefox

### Additional information

_No response_
Cyrillic characters don't render at all
### Describe the bug

I tried different swfs, the problem seems to be unrelated to any particular one. Here's one that "works" except the text rendering: [злоген.swf.zip](https://github.com/ruffle-rs/ruffle/files/9449499/swf.zip)

This happens both in the online demo and in the native app.
![2022-08-30 07 10 22 ruffle rs Ruffle Web Demo](https://user-images.githubusercontent.com/1478258/187347408-d33fabde-3cbe-43b2-b04d-d306b9fdc66e.png)
![Снимок экрана 2022-08-30 в 07 12 42](https://user-images.githubusercontent.com/1478258/187347639-a5b19a68-507c-4bd8-b301-288055838b44.png)

Here's one more swf (though AS3 one) that also has this problem: [Graffiti.swf.zip](https://github.com/ruffle-rs/ruffle/files/9449539/Graffiti.swf.zip)


### Expected behavior

Adobe Flash Player renders all characters correctly:
![Снимок экрана 2022-08-30 в 07 11 09](https://user-images.githubusercontent.com/1478258/187347460-43abbfd2-f645-4fc1-8098-531d31e4c703.png)

### Affected platform

Online demo

### Operating system

macOS 12.5.1

### Browser

Vivaldi 5.4.2753.40 (Stable channel) (arm64) aka Chrome 104.0.5112.105

### Additional information

_No response_


Discussion / hints:

The embedded fonts in this SWF do not seem to provide the needed Cyrillic characters. Flash Player would fall back to a device font in this case, but Ruffle's fake device font does not support Cyrillic characters. See #1862.
This is working in the desktop app now thanks to #14535. It can also work on the web if you provide your own SWF containing the required font - [see our FAQ](https://github.com/ruffle-rs/ruffle/wiki/Frequently-Asked-Questions-For-Users#how-do-i-change-the-fonts-used-by-flash-on-my-website).
Off-topic but where did you find that text? It's okay if you don't want to say it
> Off-topic but where did you find that text? It's okay if you don't want to say it

It's a Russian meme and website from the 00s. Some words that originated there became millennial slang. If you **really** want to find out more, here's two articles that are likely hard to make sense of if you don't speak Russian:
https://lurkmore.online/%D0%A3%D0%BF%D1%8F%D1%87%D0%BA%D0%B0
https://lurkmore.online/%D0%A3%D0%BF%D1%8F%D1%87%D0%BA%D0%B0/%D0%A1%D0%BB%D0%BE%D0%B2%D0%B0%D1%80%D1%8C
edit: [also a wiki article](https://ru.wikipedia.org/wiki/%D0%A3%D0%BF%D1%8F%D1%87%D0%BA%D0%B0)

Fix patch:
diff --git a/core/assets/notosans-regular.subset.ttf.gz b/core/assets/notosans-regular.subset.ttf.gz
index e5a3cd2e58331..ab967c9548f33 100644
Binary files a/core/assets/notosans-regular.subset.ttf.gz and b/core/assets/notosans-regular.subset.ttf.gz differ
diff --git a/core/assets/unicodes-file.txt b/core/assets/unicodes-file.txt
index 3663bceefb54e..00f02aa511cc6 100644
--- a/core/assets/unicodes-file.txt
+++ b/core/assets/unicodes-file.txt
@@ -5,10 +5,12 @@
 0100-017F, # Latin Extended-A
 0180-024F, # Latin Extended-B
 02B0-02FF, # Spacing Modifier Letters
+0370-03FF, # Greek and Coptic
+0400-04FF, # Cyrillic
 2000-206F, # General Punctuation
 2070-209F, # Superscripts and Subscripts
 20A0-20CF, # Currency Symbols
 2100-214F, # Letterlike Symbols
 2150-218F, # Number Forms
 2200-22FF, # Mathematical Operators
-# Compress with `cat NotoSans-Regular.subset.ttf | gzip --no-name | tail --bytes=+11 | head --bytes=-8 > notosans-regular.subset.ttf.gz`
\ No newline at end of file
+# Compress with `cat NotoSans-Regular.subset.ttf | gzip --best --no-name | tail --bytes=+11 | head --bytes=-8 > notosans-regular.subset.ttf.gz`


Test patch: