|
|
|
Канал X2: The Threat: «Внешний редактор скриптов - пока только режим чтения :)» |
|
Бум или не бум? |
Да :super: |
|
77% |
[ 80 ] |
Нет :( |
|
2% |
[ 3 ] |
Пох... |
|
19% |
[ 20 ] |
|
Всего проголосовало : 103 |
|
|
|
CooL_SnipeR
615 EGP
   Рейтинг канала: 1(2) Репутация: 214 Сообщения: 4050 Заблокирован Откуда: Ясный-Москва Зарегистрирован: 19.03.2004
 |
|
Все надоело!
(Это я про редактор)
Уважаемые Пилоты!!!
В связи с отсутствием новостей с фронта, предлагаю скооперироваться для создания внешнего редактора скриптов, т.к. один не потяну, слишком много писанины (т.к. я еще пишу и карту со всеми данными - конвертация напрямую из ресурсов).
Структура редактора понятна почти на 100%, за мелочами(кучу времени убил на это).
И еще - не поздно слишком?
_________________ Никогда не бывает так плохо, после чего не может быть еще хуже... |
|
|
Vitalii
955 EGP
     Рейтинг канала: 1(3) Репутация: 249 Сообщения: 7214 Откуда: Тула Зарегистрирован: 13.08.2002
 |
|
добавил еще один пункт в голосовалке
зы: без него - не получается
_________________ Связь - это как воздух, незаметна, пока не испортишь. |
|
|
CooL_SnipeR
615 EGP
   Рейтинг канала: 1(2) Репутация: 214 Сообщения: 4050 Заблокирован Откуда: Ясный-Москва Зарегистрирован: 19.03.2004
 |
|
Vitalii : |
добавил еще один пункт в голосовалке
зы: без него - не получается
|
За него еще небось и проголосовал ?
_________________ Никогда не бывает так плохо, после чего не может быть еще хуже... |
|
|
Kika
151 EGP
  Рейтинг канала: 1(5) Репутация: 20 Сообщения: 629 Откуда: Москва Зарегистрирован: 11.03.2004
 |
|
Идея клевая, в принципе могу подсобить чем-нибудь, тока времени свободного очень мало остается, так что если найдется более не занятый кандидат, то попутного ветра ему, а если нет, то готов постараться
_________________ Остановите Землю - я сойду |
|
|
Strange®
1078 EGP
   Рейтинг канала: 1(5) Репутация: 225 Сообщения: 3005 Откуда: Киев Зарегистрирован: 26.07.2002
 |
|
Идея неплохая, особенно если этот редактор еще и синтаксис подсвечивать (и было бы здОрово если и проверять) будет. Однозначно must have!
_________________ Жизнь прекрасна! Главное - правильно подобрать антидепрессанты :) |
|
|
Dimaxx
1016 EGP
      Рейтинг канала: 1(5) Репутация: 204 Сообщения: 5811 Откуда: Северодвинск Зарегистрирован: 26.06.2002
 |
|
Подсветку синтаксиса я сделал, тока расширить и усовершенствовать надо. Парсер для codearray нужон. Остальное не проблема. Могу поучаствовать.
_________________ "Если мы не покончим с войной, война покончит с нами." Г. Г. Уэллс |
|
|
CooL_SnipeR
615 EGP
   Рейтинг канала: 1(2) Репутация: 214 Сообщения: 4050 Заблокирован Откуда: Ясный-Москва Зарегистрирован: 19.03.2004
 |
|
2Dimaxx
Основная проблема - то что в реальности у него нет полностью структуры XML, может забить на нее, и формировать не ХМЛ парсером, т.е без подключения длл, а написать свою, и основой для редактирования и отображения сделать сразу кодэаррэй, а в сам заголовок заносить только после сохранения скрипта, я тут копался с локализацией, т.к. наименования всех ресурсов для своей 1С брал из локализаций, коды команд, полностью совпадают с локализациями по пэйджам >2000(функции 2003) и больше, так что сами команды беруться напрямую от туда, + при выходе патчей изменения довольно легко отслеживать
P/S/ Возможно даже сделать редактор сразу на анг и русском, кому как нравиться
_________________ Никогда не бывает так плохо, после чего не может быть еще хуже... |
|
|
xtech
145 EGP
  Репутация: 18 Сообщения: 488
Зарегистрирован: 08.01.2004
 |
|
Идея не плохая ... на мой взгляд даже нужная ... но как быть с проверкой скриптов(синтаксиса) ??? Все равно надо будет заходить в игру и проверять...
|
|
|
CooL_SnipeR
615 EGP
   Рейтинг канала: 1(2) Репутация: 214 Сообщения: 4050 Заблокирован Откуда: Ясный-Москва Зарегистрирован: 19.03.2004
 |
|
DMC : |
Идея не плохая ... на мой взгляд даже нужная ... но как быть с проверкой скриптов(синтаксиса) ??? Все равно надо будет заходить в игру и проверять...
|
Дык проверять то, если ты команды неправильно ввел, она и синтаксис не разпознает - можно сделать конечно компилятор текстовика, но желателен конечно интерактивный редактор с подсветкой и т.п. фишками
_________________ Никогда не бывает так плохо, после чего не может быть еще хуже... |
|
|
Dimaxx
1016 EGP
      Рейтинг канала: 1(5) Репутация: 204 Сообщения: 5811 Откуда: Северодвинск Зарегистрирован: 26.06.2002
 |
|
Дело не в парсере XML, а в том, какие команды и поля в codearray за что отвечают. Нужна полная раскладка. С проверкой синтаксиса это все фигня - я задумывал конструировать строку скрипта по типу игрового (выбор шаблона и заполнение полей), а не писать строку вручную. А рус/англ - это какой файл подключишь, то и получишь. Тэг sourcetext нафиг не нужен - движку он по барабану.
Я с 1 июня в отпуске - времени навалом, можно все подробно обсосать.
_________________ "Если мы не покончим с войной, война покончит с нами." Г. Г. Уэллс |
|
|
CooL_SnipeR
615 EGP
   Рейтинг канала: 1(2) Репутация: 214 Сообщения: 4050 Заблокирован Откуда: Ясный-Москва Зарегистрирован: 19.03.2004
 |
|
Dimaxx : |
Я с 1 июня в отпуске - времени навалом, можно все подробно обсосать.
|
Буду писать дипломную на тему: коды команд скриптов - серьезно, раз у тебя есть движок - то .... жди
_________________ Никогда не бывает так плохо, после чего не может быть еще хуже... |
|
|
Perseus
888 EGP
       Репутация: 158 Сообщения: 2122 Откуда: Челябинск Зарегистрирован: 13.02.2002
 |
|
Давно пора!
|
|
|
CooL_SnipeR
615 EGP
   Рейтинг канала: 1(2) Репутация: 214 Сообщения: 4050 Заблокирован Откуда: Ясный-Москва Зарегистрирован: 19.03.2004
 |
|
2 Dimaxx
Если я сразу буду писать команды и их расшифровку проблем стыкования не будет, т.е. я сразу пришлю описание структуры 5 и 6 узла основного массива кодеаррэя(к-й на 10)(давай нумерацию везде начинать с 0 как в С++).
5 - переменные - тут ничего сложного, там в 6 ссылки будут на номер переменной
6 непосредственное описание команд
З.Ы. кстати сурсе текст имеет значение, т.к. в команде <END> указывается номер строки из самого скрипта, а в кодеаррее только по порядку встречи с ними, т.е. скрипт может иметь 25 строк, а кодэаррэй по 6 узлу на 20.. т.е. енд может ссылаться на 23 строку где начинается иф или вайл.
P/S/ Выслал на мыло соответствие команд номерам и описание внутреннего массива по строке(остались мелочи
_________________ Никогда не бывает так плохо, после чего не может быть еще хуже... |
|
|
Dimaxx
1016 EGP
      Рейтинг канала: 1(5) Репутация: 204 Сообщения: 5811 Откуда: Северодвинск Зарегистрирован: 26.06.2002
 |
|
Насчет сурсика: я убивал весь текст скрипта (оставлял пустой тэг), грузил его в игру и весь восстановленный текст был у меня перед глазами в редакторе. Но тока я не проверял сложные скрипты - может, он как раз и не восстановятся правильно. Но MAD_Kuzia мне говорил, что сурсик движку не помеха - он прекрасно обходится без него, а он перепахал весь codearray и у меня нет оснований ему не верить. Но все могут ошибаться.
Как он сказал, что сурсик присутствует для того, чтобы можно было текст скрипта увидеть в браузере или увидеть его во встроенном редакторе. Движок юзает все, кроме тэга сурсика. Поэтому можно не заморачиваться и писать пустой тэг.
_________________ "Если мы не покончим с войной, война покончит с нами." Г. Г. Уэллс |
|
|
-Diamond-
100 EGP
 Репутация: 0 Сообщения: 138
Зарегистрирован: 28.12.2003
 |
|
2 Cool_SnipeR:
1- На чем пишешь?
2- Что не можешь сделать сам?
3- Как минимум организуй работу(типа кто может это, кто может то)
4- Рад помочь, говори чем.
|
|
|
CooL_SnipeR
615 EGP
   Рейтинг канала: 1(2) Репутация: 214 Сообщения: 4050 Заблокирован Откуда: Ясный-Москва Зарегистрирован: 19.03.2004
 |
|
To -Diamond-
Да вроде у Dimaxx есть рабочий движок от его вьювера, добавить парсер для кодэаррэя и все...
На крайняк - C++, и Win32API не более(без всяких MFC и OLF)
To Dimaxx
Посмотри скрипт(1.3 версия) !move.jump.pck
Строки 013 по 023 - там идет 2 ифа и затем вайл, та вот далее идут 3 энда, а кодэ они описаны одной строкой
<sval type="array" size="2">
_______<sval type="int" val="112" />
_______<sval type="int" val="13" />
</sval>
Команда 112 это "hidden goto label %0"
в данном случае %0=13, это номер элемента строки с While - про концы ифоф вообще нигде не слышно кроме сурсника, у одинаковых по структуре команд If один и тотже минусовой код идет - сроки конца нет.
З.Ы. Так желание есть или нету? - по тебе не видно
_________________ Никогда не бывает так плохо, после чего не может быть еще хуже... |
|
|
Dimaxx
1016 EGP
      Рейтинг канала: 1(5) Репутация: 204 Сообщения: 5811 Откуда: Северодвинск Зарегистрирован: 26.06.2002
 |
|
Да желание-то есть, тока сперва разобраться надо. А то потом напоремся на какую-нибудь мелочь и вся работа встанет колом. Надо до конца разобраться.
А ты думаешь, что движок не может сам строки подсчитывать, без сырца? Еще как может!
_________________ "Если мы не покончим с войной, война покончит с нами." Г. Г. Уэллс |
|
|
Dimaxx
1016 EGP
      Рейтинг канала: 1(5) Репутация: 204 Сообщения: 5811 Откуда: Северодвинск Зарегистрирован: 26.06.2002
 |
|
Взял скрипт !move.jump.pck, убил сырец и в редакторе в игре увидел весь текст скрипта в первоначальном виде. Со всеми end'ами и пустыми строками. Так что сырец не нужен вовсе, что сильно облегчает задачу.
_________________ "Если мы не покончим с войной, война покончит с нами." Г. Г. Уэллс |
|
|
Dimaxx
1016 EGP
      Рейтинг канала: 1(5) Репутация: 204 Сообщения: 5811 Откуда: Северодвинск Зарегистрирован: 26.06.2002
 |
|
Что мне удалось узнать в ходе поверхностных исследований (не густо):
1) По поводу if/while
10100000000000000100110000001001 (-1610593271) while
10100000000000000000011000000011 (-1610611197) if
11100000000000000000011000000100 (-536869372) if not
и т.д.
Нетрудно заметить, что биты 0-4 определяют номер "команды" со страницы 2007. Но что означают биты 9-14 и бит 30 - не понятно. Но покопавшись, я обнаружил, что все эти биты не используются. Мне удалось подобрать константу-шаблон:
11100000000000000000011000000000 (-536869376)
к которой прибавляем номер условного оператора из страницы 2007. И все работает.
2) По поводу типов данных
null = <sval type="int" val="0" /><sval type="int" val="0" />
переменная = <sval type="int" val="131074" /><sval type="int" val="номер переменной в массиве" />
константа = <sval type="int" val="131075" /><sval type="int" val="65536+номер константы" />
число = <sval type="int" val="4" /><sval type="int" val="число" />
текст = <sval type="int" val="5" /><sval type="string" val="текст" />
_________________ "Если мы не покончим с войной, война покончит с нами." Г. Г. Уэллс |
|
|
CooL_SnipeR
615 EGP
   Рейтинг канала: 1(2) Репутация: 214 Сообщения: 4050 Заблокирован Откуда: Ясный-Москва Зарегистрирован: 19.03.2004
 |
|
Есть мысли каким макаром он определяет пустые строки?(и как он определяет конец If?, т.к. тоже нет конца для него, только для While есть Hidden Label) в кодэаррэй ничего такого нет, указание номеров строк нету .
По поводу типов данных, все ок я еще сам перепроверил вручную хмл написал - работает, при отсутствии сурсетекст тоже.
Нужно еще разные скрипты посмотреть
_________________ Никогда не бывает так плохо, после чего не может быть еще хуже... |
|
|
|
|
|
Канал X2: The Threat: «Внешний редактор скриптов - пока только режим чтения :)» |
|