|
|
|
Канал X3: Reunion »
Модовый и скриптовый отсек X3: Reunion: «X3 - External Script Editor» |
|
|
Jaa_CooL 320 EGP
Репутация: 116 Сообщения: 528 Заблокирован Откуда: Moscow Зарегистрирован: 13.04.2006 |
|
2ULiX
Так по пунктам
1) System Override Software
Какойто умник в ЕгоСофте догадался поставить пробел в конце строки с именем, а я TrimEnd не делал, для увеличения скорости загрузки, пришлось соответственно в МоемСофте добавить
Собственно вот выдержка из 440001
Код: |
<t id="5883">(do not speak)System Override Software </t> |
2) В скрипте A.Test использовалась новая команда 1215... не работало одно проперти, подправил - теперь команда валяется со всеми, но на экран не выводиться... в принципе она сохраняется пока не снесена будет пустая строка - т.к. новые команды, для которых нет описания не поддерживаются в работе
3) в скрипте setup.Droid.System было использовано коммандное имя скрипта, которое толком еще нигде не видел, поэтому не делал - в заголовак добавлено она, пока как строка... с сигналом разберусь, если мне кто подскажет с чем их едят
Соответственно обновлен архив с Pre RC1
_________________ CooL_SnipeR в отставке...
Мужик всегда добьётся того, что хочет женщина... |
|
|
Jaa_CooL 320 EGP
Репутация: 116 Сообщения: 528 Заблокирован Откуда: Moscow Зарегистрирован: 13.04.2006 |
|
Исходный код редактора на C# (1,3MB)
C данного момента с моей стороны, написание кода, а также его сопровождение прекращается...
_________________ CooL_SnipeR в отставке...
Мужик всегда добьётся того, что хочет женщина... |
|
|
AlexV 555 EGP
Рейтинг канала: 7(561) Репутация: 182 Сообщения: 1157 Откуда: нискажу Зарегистрирован: 10.01.2006 |
|
Jaa_CooL : |
C данного момента с моей стороны, написание кода, а также его сопровождение прекращается...
|
Ну если никто раньше не сподобится - то ориентировочно с середины октября смогу начать этим заниматься...
_________________ а хуже всего приходится программистам из Microsoft. Им в случае чего и обругать-то некого |
|
|
Jaa_CooL 320 EGP
Репутация: 116 Сообщения: 528 Заблокирован Откуда: Moscow Зарегистрирован: 13.04.2006 |
|
Так, если кто будет сопровождать, если нужно могу дать примерное описание объектной модели и что не было дописано в объекты... в общем посильный хелп, хотя там не так много кода, чтобы запутаться, но писал кусками, иногда по 20-30 минут в день... получилась откровенная мешанина, иногда просто дубляж и временное затыкание дыр, которое почистить и переписать не успел
_________________ CooL_SnipeR в отставке...
Мужик всегда добьётся того, что хочет женщина... |
|
|
AlexV 555 EGP
Рейтинг канала: 7(561) Репутация: 182 Сообщения: 1157 Откуда: нискажу Зарегистрирован: 10.01.2006 |
|
Ты это описание напиши и выложи. Кому надо скачают и почитают. Потом, глядишь, вопросы появятся
_________________ а хуже всего приходится программистам из Microsoft. Им в случае чего и обругать-то некого |
|
|
Jaa_CooL 320 EGP
Репутация: 116 Сообщения: 528 Заблокирован Откуда: Moscow Зарегистрирован: 13.04.2006 |
|
Чисто технически нет времени... да там коменты есть, кому нада разбереться... , а узкие места проясню
_________________ CooL_SnipeR в отставке...
Мужик всегда добьётся того, что хочет женщина... |
|
|
AlexV 555 EGP
Рейтинг канала: 7(561) Репутация: 182 Сообщения: 1157 Откуда: нискажу Зарегистрирован: 10.01.2006 |
|
Ну вот... уже не Первый фикс ошибок.
Ковыряясь в исходниках попутно исправил несколько ошибок.
Исправлен баг, связанный с вводом первого символа в новом созданном скрипте. Если ткнуть в первой строке ENTER - то этот баг может и не проявиться.
Исправил отсутствие названий скриптов(новых созданных в редакторе) в диалоге предупреждения о несохранённых скриптах.
И наиболее серьёзное исправление:
При закрытии запрашивается сохранение... если соглашаемся - то для новых созданных скриптов выводится диалог "Сохранить как..."
если в нем давануть отмену, то редактор закроется и новые скрипты не будут сохранены.
В общем, доработал это дело... процесс закрытия будет отменён и ниче не потеряется
ЗЫ
пока окончательно не беру на себя всю доработку и сопровождение.
пока только начал разбираться со всем этим делом... исправляя мелкие ошибки/недоработки пытаюсь научиться ориентироваться в исходниках.
так что прошу меня пока сильно не пинать... иногда смотря в собственные исходники годичной давности думаю: "что за бред сивой кобылы"
чего уж говорить о чужой логике... на детальные разборы требуется много времени. Предыдущий пост в силе. если до середины октября никто не сподобится - то приму окончательное решение браться/не браться...
ЗЫ2
о багах сообщайте в любом случае тут... чем более мелкие баги будут, тем лучше для начала.
Глядишь, и пойдёт дело дальше...
_________________ а хуже всего приходится программистам из Microsoft. Им в случае чего и обругать-то некого |
|
|
Jaa_CooL 320 EGP
Репутация: 116 Сообщения: 528 Заблокирован Откуда: Moscow Зарегистрирован: 13.04.2006 |
|
Ну так что- кто-нибудь взялся за дело?
З.Ы. Я уже почти уехал... не буду в конфе на неопределенный срок, только если аська или мыло ::
_________________ CooL_SnipeR в отставке...
Мужик всегда добьётся того, что хочет женщина... |
|
|
AlexV 555 EGP
Рейтинг канала: 7(561) Репутация: 182 Сообщения: 1157 Откуда: нискажу Зарегистрирован: 10.01.2006 |
|
Jaa_CooL : |
кто-нибудь взялся за дело?
|
Тишина...
А у меня пока времени на это не находится... сначала думал, что с середины октября будет время, оказалось - фих...
вроде как в начале декабря должно появиться окно, вот тогда и возьмусь по-полной
_________________ а хуже всего приходится программистам из Microsoft. Им в случае чего и обругать-то некого |
|
|
Jaa_CooL 320 EGP
Репутация: 116 Сообщения: 528 Заблокирован Откуда: Moscow Зарегистрирован: 13.04.2006 |
|
Неужели я такой заумный код написал - что никто не берется то, там доделывать почти ничего не осталось... если кто с москвы возмется, можно за пивком встретиться , все покажу и расскажу , самому 2-3 мес не до него
З.Ы.
_________________ CooL_SnipeR в отставке...
Мужик всегда добьётся того, что хочет женщина... |
|
|
mutant 135 EGP
Репутация: 14 Сообщения: 184 Откуда: Норильск Зарегистрирован: 16.10.2002 |
|
Код действительно не простой Мне после почти десятка лет дельфования и не верится, что столько руками накодить можно
Собственно по теме :
Нашлось свободное время, сама игра наконец-то и желание! Долго копался в исходниках и понял одно - на сях не продолжу. Сделаю в дельфи, но, плиз, поделитесь информацией по CodeArray. Пока поправил x2script.xsl что бы CodeArray показывала и визуально смотрел на что это похоже. Счас выдумываю алгоритм, который буду учить понимать CodeArray, если конечно не найду инфы, ну или кто то не угостит
P.S. Если правленый x2script.xsl нужен, скажите как и кому куда выложить.
|
|
|
Finist 1806 EGP
Рейтинг канала: 9(1063) Репутация: 391 Сообщения: 12151 Откуда: Рязань РОССИЯ Зарегистрирован: 25.12.2003 |
|
mutant : |
скажите как и кому куда выложить.
|
Скинь мне на мыло.
_________________ Про модераторов сказать можно много разного, вот только написать нельзя... |
|
|
AlexV 555 EGP
Рейтинг канала: 7(561) Репутация: 182 Сообщения: 1157 Откуда: нискажу Зарегистрирован: 10.01.2006 |
|
mutant : |
Сделаю в дельфи, но, плиз, поделитесь информацией по CodeArray.
|
ндя... вся эта информация в голове у КулСнайпера
да и не надо с этим разбираться, там всё вроде нормально работает... как положено...
там по большому счёту надо только интелисенс сделать именно ИНТЕЛИ, т.е. мозгов ему добавить вправив к тому же существующие.
переделывать всё это на другой язык всё равно, что с нуля всё делать...
В общем я берусь официально за сопровождение редактора и его поддержку. Просто раньше я не был уверен, что буду располагать достаточным свободным временем на это... собсно так и писал в постах выше.
_________________ а хуже всего приходится программистам из Microsoft. Им в случае чего и обругать-то некого |
|
|
mutant 135 EGP
Репутация: 14 Сообщения: 184 Откуда: Норильск Зарегистрирован: 16.10.2002 |
|
AlexV : |
переделывать всё это на другой язык всё равно, что с нуля всё делать...
|
Эт точно. Я ещё в 2004-ом порывался Но бесцеремонное вхождение Oracle в мою жизнь почти на два года забрало меня у EG
В исходниках наткнулся на очень интересный файлик commands.xml Вот бы кто пролил свет на его происхождение ну или содержание...
Я тогда подумаю над объектной моделью. Всёж несколько неуклюж синтаксис. Идея вот в чём : сделать написание скрипта в тексте, например на C++, и оттранслировать его в нечто промежуточное, с чего он потом оттранслируется в текст скрипта, ну а далее откомпилится, например, вашим редактором. Нечто промежуточное нужно для того, что бы писать скрипт, например можно было и на дельфи Два года идея крутилась в голове...
To Finist
Завтра вышлю!
|
|
|
Finist 1806 EGP
Рейтинг канала: 9(1063) Репутация: 391 Сообщения: 12151 Откуда: Рязань РОССИЯ Зарегистрирован: 25.12.2003 |
|
mutant : |
To Finist
Завтра вышлю!
|
Пришло. Ссылка в первом посте темы.
_________________ Про модераторов сказать можно много разного, вот только написать нельзя... |
|
|
alz27
|
|
To mutant
Если есть на дельфе, кинь на мыло, плз. Хотелось бы поучаствовать... А то с самого начала на сях писано было.
|
|
|
AlexV 555 EGP
Рейтинг канала: 7(561) Репутация: 182 Сообщения: 1157 Откуда: нискажу Зарегистрирован: 10.01.2006 |
|
mutant : |
В исходниках наткнулся на очень интересный файлик commands.xml Вот бы кто пролил свет на его происхождение
|
Да брось... там же всё ясно как день
ID команд соответствуют идэшкам из *001.xml
к каждой команде приложены идентификаторы типов данных аргументов в порядке следования этих аргументов и всё... больше в этом файле ничего нет
alz27 : |
Если есть на дельфе,
|
на дельфях исходников нету... и не было
_________________ а хуже всего приходится программистам из Microsoft. Им в случае чего и обругать-то некого |
|
|
mutant 135 EGP
Репутация: 14 Сообщения: 184 Откуда: Норильск Зарегистрирован: 16.10.2002 |
|
AlexV : |
Да брось... там же всё ясно как день
|
Я подозревал! Но для меня, ещё не посвящённого, было похоже на шифровку "Юстас-Алексу"
В общем после прочтения множества постов пока остыл от написания компилятора. Ни один год работы ушёл у гуру ScE...
Предлагаю вот такой проект: Транслятор с "диалекта" в команды ScE, которые потом должны пройти обработку в External Script Editor.
Примерный синтаксис :
Для каждой станции (Тип:"Такой то", Расса:"Такая то") в секторах ("радиус такой то")
{ Если количество "товара такого-то" = "столько то"
MinVal = Min(Цена на "Товар такой-то", MainVal)
}
Примерно в таком духе. Станции, корабли, товар - классы. Т.е. к ним можно обращаться с уточнением. (Напирмер Товар->Жареные кахуны ) со всеми современными удобствами, вроде выпадающих комбобоксов.
Добавить SWITH/CASE для сокращения времени написания вложенных условий.
В итоге всё это транслируется в команды SCE.
Стоит браться за подобный проект? И если кому это интересно - подключайтесь!
P.S. Пока классовая модель не продумана, но упростив хотя быс синтаксис написания условных выражений, добавив несколько функций-шаблонов, организации циклов по классам/экземплярам, уже можно сильно ускорить процесс написания скриптов.
Правда встанет одна из проблем языков высокого уровня : лёгким движением руки можно создать монстра
|
|
|
ULiX 320 EGP
Рейтинг канала: 7(691) Репутация: 146 Сообщения: 573 Откуда: Комсомольск на-Амуре Зарегистрирован: 12.07.2005 |
|
Так... Из серьёзных ошибок.
Обработка меток и команд перехода
goto label <метка>
gosub <метка>
Если взять исходный скрипт, содержащий данные команды и перекомпилировать, всё пойдёт пучком, за счет того, что структура не изменилась.
При попытке Rebuild результат будет Rebuild fails.
После Rebuild'a компиля тоже с ошибкой.
Причем сохранить после этого можно только в текст.
Далее.
Загружаем файл содержащий метки и команды перехода.
Ничего не меняем в скриптах.
Компиляция проходит succes.
Делаем исправления существующих команд, компилируем
succes
Добавляем коментарии, компилируем
succes
Вставляем любую команду в тело скрипта, даже простую inc value
Пытаемся компилировать.
Вылетает сообщение об ошибке с номером вроде строки с кнопочкой OK.
Нажимаем эту кнопочку раз так N-цать.
После чего выдаётся результат
Compile succes!
Пытаемся сохранить результат.
Снова вылетает сообщение об ошибке, снова жмём ОК раз N-цать.
Скрипт сохранён.
Пытаемся открыть скрипт в игре. На месте команд перехода со строки ниже, где мы вставляли своию новую команду видим следующее:
goto label
gosub
Голые команды без возможности исправить аргумент.
При закрытии скрипта в игре, предлагается сохранить. Если выбрать Да, то выдаст ошибку с указанием первой строки с командой перехода не имеющей аргумент и сообщением о Illegal argument.
Теперь по делу.
В чем это написано? (Перебирать версии лень)
Нет, по структуре я вижу, команды паскаля. Судя по всему Delphi. Но мне нужно знать производителя и версию, которая откроет данный проект без проблем. У моего делфи расширения файлов другие.
Найду, в чем это можно исправлять - займусь. Хотяб свои нужды удовлетворю.
_________________ Новое ещё не значит лучшее |
|
|
aftermath 685 EGP
Рейтинг канала: 1(9) Репутация: 234 Сообщения: 1316 Откуда: Нижний Новгород Зарегистрирован: 07.04.2006 |
|
ULiX : |
В чем это написано?
|
Jaa_CooL : |
Исходный код редактора на C# (1,3MB)
|
Я вот интересный фактик нашел. Несколько своих скриптов писал в этом редакторе, в версии игры 1.4 можно было редактировать после этого и во встроенном редакторе, все проходило на ура. Теперь если редактируешь во встроенном редакторе, то вроде все нормально, скрипт сохраняется, корректно отображается при просмотре в IE, грузится в внешний редактор, но вот при загрузке сейва с запуском этого скрипта игра вылетает в окошки .
_________________ В темном мире нет любви.
И в груди пусты сердца... (c) |
|
|
|
|
|
Канал X3: Reunion ->
Модовый и скриптовый отсек X3: Reunion: «X3 - External Script Editor» |
|