?

Log in

No account? Create an account
25 сент, 2007 @ 14:49 Баг в Torque Game Engine???
Torque не компилирует файлы с комментами, где есть русская строчная буква "я"!!!
Я серьезно. Я где-то час не мог понять в чем проблема. Сначала думал что он вобще русские комментарии не любит. Потом заметил что некотрые ему нравятся, а некотрые нет. И лишь потом заметил что он всегда выделяет следующий символ за буквой "я".
Вот пример лога:

Compiling control/initialize.cs...
control/initialize.cs Line: 16 - Syntax error.
>>> Advanced script error report.  Line 31.
>>> Some error context, with ## on sides of error halt:
^Echo("\n--------------------------------Init Module : Emaga SERVER------------------------------");
^
^//Указываем место хранения## ##файлов миссии
^$server::MissionFileSpec = "*/missions/*.mis";
^
>>> Error report complete.

Такая вот проблема. Причем если написать "Я" или "йа", то все компилируется. Наглухо не понимаю, какое вобще компилятору дело, что там стоит после //, да хоть албанский. Что теперь - все время писать в духе "ЙА КРЕВЕДКО"?
Может кто сталкивался с подобной проблемой? Или есть какие-то настройки, связанные с этим??
Slon
pink_master:
[User Picture Icon]
From:helvene
Date:Сентябрь, 25, 2007 13:45 (UTC)
(Ссылка)
Точно такая же бага была в NWN-овском движке, который аврора.
Если совсем не найдете ответа на вопрос - могу попросить разрешения у человека, который писал правящий ее патч, на то, чтоб дать вам его контакт.
(Ответить) (Ветвь дискуссии)
[User Picture Icon]
From:_winnie
Date:Сентябрь, 25, 2007 13:48 (UTC)
(Ссылка)
Пиши комменты в UTF-8 или исправь исходник в Torque Game Engine (если исходники есть) читающий файл в области определения конца файла: EOF == -1 == (int)(signed char)(-1) == (int)(signed char)(255) == (int)(signed char)'я' - там где-то надо переправить char на int.

UTF-8 устроен так, что бы символ 0xff ('я' в дефолтной кодировке windows) нигде не появлялся.
(Ответить) (Ветвь дискуссии)
[User Picture Icon]
From:pink_master
Date:Сентябрь, 25, 2007 14:06 (UTC)
(Ссылка)
спасибо)))
UTF-8 - пожалуй наименее замороченное решение.

А исходников по ходу нет( Я книжку купил, а к ней диск прилагается. По ходу все что есть - 3 файла:
tge.exe
opengl2d3d.dll
glu2d3d.dll

3 файла - разве это не маловато для целого движка=)?
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:helvene
Date:Сентябрь, 25, 2007 14:22 (UTC)
(Ссылка)
Даже не знаю, смеяться или плакать :)))
У Torque Indie-версия на одного человека стоит порядка 100 баксов.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:starcos
Date:Сентябрь, 26, 2007 05:37 (UTC)
(Ссылка)
И что? Демо версию можно скачать бесплатно. В нее входят те самые три файла плюс демо-сцена. На базе этого можно даже создавать свои игры или прототипы. А за сто баксов дается возможность скачать исходники этих трех файлов и получить право на использование движка в коммерческой игре.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:helvene
Date:Сентябрь, 26, 2007 05:39 (UTC)
(Ссылка)
Во-первых, на демо-версии нельзя. Она - исключительно для демонстрационных целей.
Во-вторых, как покажите хотя бы одну стоящую игру, собранную на двигле без предоставленных исходников - поверю.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:starcos
Date:Сентябрь, 26, 2007 06:02 (UTC)
(Ссылка)
Во-первых, можно. Продавать нельзя. А собрать прототип для оценки идеи или демонстрации вполне таки можно. Или нехитрую бродилку просто для практики и изучения возможностей движка.
Во-вторых, что такое "стоящая"? Простенькую аркаду я за неделю на одних скриптах наваяю. И сорцы мне для этого не нужны. Верить или нет - ваше право, мне ваши заблуждения deep purple.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:helvene
Date:Сентябрь, 26, 2007 07:14 (UTC)
(Ссылка)
>> Во-вторых, что такое "стоящая"?
Интересная и играбельная для кого-либо еще, кроме ее создателя и его друзей-знакомых.

>> Верить или нет - ваше право, мне ваши заблуждения deep purple.
Всегда забавно наблюдать, как люди огрызаются на пустом месте. Если так, то что же вы тогда на ответы мне свое время тратите?
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:starcos
Date:Сентябрь, 26, 2007 07:25 (UTC)
(Ссылка)
>> Интересная и играбельная для кого-либо еще, кроме ее создателя и его друзей-знакомых.
Не вопрос. Арканоид. Или Астероидс. Сорцы не обязательны, вполне реализуется на скриптах. А насколько оно будет играбельно зависит от дизайна, а не от наличия сорцов.

>> Если так, то что же вы тогда на ответы мне свое время тратите?
Потому что это не личная переписка, а коммьюнити, которое читают многие.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:helvene
Date:Сентябрь, 26, 2007 07:33 (UTC)
(Ссылка)
>> А насколько оно будет играбельно зависит от дизайна, а не от наличия сорцов.
А теперь смотрим на заглавное сообщение, про букву "я": характерный пример мелкого досадного бага, который не всегда правится при отсутствии исходников. Насколько оно будет играбельно, зависит все-таки не только от дизайна, но и от стабильности приложения.

Впрочем, это в любом случае бессмысленный разговор, потому как вы к нему подходите с точки зрения аркады, сваянной на коленке за неделю на одних скриптах, я - с точки зрения некоторого конечного продукта.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:starcos
Date:Сентябрь, 26, 2007 08:04 (UTC)
(Ссылка)
>> Впрочем, это в любом случае бессмысленный разговор, потому как вы к нему подходите с точки
>> зрения аркады, сваянной на коленке за неделю на одних скриптах, я - с точки зрения некоторого
>> конечного продукта.

Судя по тому, что автор поста получил продукт с книгой - он к движку подходит с точки зрения обучения и экспериментов. Для этого не требуется лицензия. Поэтому ваше желание плакать или смеяться и вызвало недоумение.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:helvene
Date:Сентябрь, 26, 2007 08:05 (UTC)
(Ссылка)
На мой взгляд, ради обучения смотреть исходники кода не менее полезно.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:starcos
Date:Сентябрь, 26, 2007 08:25 (UTC)
(Ссылка)
Читать Гатора тоже очень полезно для обучения. Вопрос в целях. В любом случае не вижу причин плакать или смеяться.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:pink_master
Date:Сентябрь, 26, 2007 09:06 (UTC)
(Ссылка)
Ну да, так и стоит=) Но перед покупкой и разборкой сорсов надо ж хотя бы со скриптами по человечески разобраться. Всему свое время) Может он мне и не понравиться совсем.
P.S. Смеяться ИМХО куда лучше=)
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:helvene
Date:Сентябрь, 26, 2007 09:07 (UTC)
(Ссылка)
Ну, просто наличие доступа к исходником позволяет сравнительно просто решить часть проблем, в том числе вроде возникшей у вас.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:pink_master
Date:Сентябрь, 26, 2007 09:17 (UTC)
(Ссылка)
Это правда. Исходники это гут=) Просто на них много человекачасов уйдет. Tак что сначала добью то, что начал, и скорей всего куплю TGEA=)
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:dinozavrik
Date:Сентябрь, 25, 2007 13:51 (UTC)
(Ссылка)
Известный баг у криворуких программистов. Сишная функция fgetc() возвращает следующий прочитанный символ из файла, в виде int, и -1, если не удалось прочитать (файл закончился). Но некоторые по глупости (авторы Torque в их числе) читают результат fgetc() сразу в char. А буква 'я' в кодировке Win1251 имеет код 255, который при преобразовании в char считается равным -1. В общем, на символе 'я' для Torque наступает конец файла, я так понимаю :)
(Ответить) (Ветвь дискуссии)
[User Picture Icon]
From:pink_master
Date:Сентябрь, 25, 2007 14:02 (UTC)
(Ссылка)
спасибо
а то я уже начал терять адекватность=)
(Ответить) (Уровень выше) (Ветвь дискуссии)