I have to correct a bit my previous post above.

I've been looking at Windows-1252 code table this afternoon. I even opened the SDK, where MS Sans Serif is mentioned (althought the console font is actually DejaVu Sans Mono).

Then I took a look again to both latin and cyrillic tables (tex console files).

The problem is the font file, the .fnt.

I tested quickly the original latin font with cyrillc table in .tex format. Letters were still cyrillic, but they got messed up (like the э in the place of the а...), some of them weren't visible anymore because latin table doesn't replenish the whole 10th row (and the cyrillic one does, ending in я).

Also, when you open both .fnt files with Notepad++ you will notice they have different shape.


About my patch: looks like my editing also affects grave accent when you open the console:

Attachment 6815

You can notice a Ё before the directory.


I've tried some programs for .fnt files making, but they give a different encoding to the new file and I get the Chunk ID error again.

Whoever made the original patch.... how the hell did he do? I can't find an fnt editor SeriousSam-compatible on the whole web!

If I open this font file on Visual C++ 6.0, I get series of numbers, like it was a SNES ROM decompiled in hex, but I have NO idea on what to change. Only 2 freaking slots must be replenished for that Ё. I want to generate a font that recognizes chars BEYOND 10th line, like this:

Name:  Console1.bmp
Views: 0
Size:  64.1 KB


If it is true that Serious Sam used Windows-1252 code page, it must support up to 256 characters. Indeed we get only 160 here (cyrillic version; latin version even some less!).


Also, I forgot to give thanks to Sniper for the instructions he gave me for writing a text in cyrillic by using /Say(), when I wrote the README to explain how to do it I didn't quote him. I apologize for that!

Thanks to you I'm adding gradually words and simple sentences in persistent symbols (or writing in cyrillic letter-per-letter would become slow, long and unconvenient),
like:

persistent extern CTString chtoto="что-то";
persistent extern CTString jaznju="я знаю";
persistent extern CTString janznju="я не знаю";
persistent extern CTString privtpaol="привет Паоло";

etc...

The important is not to insert numbers and not to use "on" (or the game will refuse to start, because that persistent symbol is already in use). I overridden this by changing it with "herus" (abbreviation for "-he- in russian"):

persistent extern CTString herus="он";

That's all for now.