Регулярные выражения -- это, конечно, круто, но там через обычный Ctrl+F всё находится легко )
Сообщения от NCF - Расширенный список Нейтральных существ
Регулярные выражения -- это, конечно, круто, но там через обычный Ctrl+F всё находится легко )
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога
Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога
Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Копаться (честно скажу) не хочется, но как выглядят строчки кода, в которых точно указан уровень существ?
Если (скажем так), ответ на мой вопрос выдаёт "true", то можно предложить следующее: если есть фиксированная строчка с указанием уровня, то можно запилить на Ruby (ИМХО, удобен для этого; если кто не слышал о нём, то похож на Питон) программку, которая будет смотреть на строчку, (грубо говоря) определять уровень и подменять на строку, в которой будет указан тот же уровень, но рандомное существо.
Самая тупая реализация (поскольку будет занимать времени ~(n^2+n)) видится мне следующей: предположим что у нас есть строка в файле - "уровень 1 - ассасин". Считываем полностью весь файл в массив (если язык позволяет, то лучше в string) text. Делая пробежки по файлу, делаем построчное сравнение с массивом arr. В самом массиве arr у нас есть семь эталонных строчек ["уровен 1 - (регулярное выражение)".."уровень 7 - (регулярное выражение)"]. И if( a[0]==text[определённый интервал, в котором содержится строка из файла] ) then ( text[определённый интервал, в котором содержится строка из файла]="уровень 1 - (рандомное существо)" ) и т.д.
Если (скажем так), ответ на мой вопрос выдаёт "true", то можно предложить следующее: если есть фиксированная строчка с указанием уровня, то можно запилить на Ruby (ИМХО, удобен для этого; если кто не слышал о нём, то похож на Питон) программку, которая будет смотреть на строчку, (грубо говоря) определять уровень и подменять на строку, в которой будет указан тот же уровень, но рандомное существо.
Самая тупая реализация (поскольку будет занимать времени ~(n^2+n)) видится мне следующей: предположим что у нас есть строка в файле - "уровень 1 - ассасин". Считываем полностью весь файл в массив (если язык позволяет, то лучше в string) text. Делая пробежки по файлу, делаем построчное сравнение с массивом arr. В самом массиве arr у нас есть семь эталонных строчек ["уровен 1 - (регулярное выражение)".."уровень 7 - (регулярное выражение)"]. И if( a[0]==text[определённый интервал, в котором содержится строка из файла] ) then ( text[определённый интервал, в котором содержится строка из файла]="уровень 1 - (рандомное существо)" ) и т.д.
Копаться (честно скажу) не хочется, но как выглядят строчки кода, в которых точно указан уровень существ?
Если (скажем так), ответ на мой вопрос выдаёт "true", то можно предложить следующее: если есть фиксированная строчка с указанием уровня, то можно запилить на Ruby (ИМХО, удобен для этого; если кто не слышал о нём, то похож на Питон) программку, которая будет смотреть на строчку, (грубо говоря) определять уровень и подменять на строку, в которой будет указан тот же уровень, но рандомное существо.
Самая тупая реализация (поскольку будет занимать времени ~(n^2+n)) видится мне следующей: предположим что у нас есть строка в файле - "уровень 1 - ассасин". Считываем полностью весь файл в массив (если язык позволяет, то лучше в string) text. Делая пробежки по файлу, делаем построчное сравнение с массивом arr. В самом массиве arr у нас есть семь эталонных строчек ["уровен 1 - (регулярное выражение)".."уровень 7 - (регулярное выражение)"]. И if( a[0]==text[определённый интервал, в котором содержится строка из файла] ) then ( text[определённый интервал, в котором содержится строка из файла]="уровень 1 - (рандомное существо)" ) и т.д.
Уровень существа задаётся следующим образом:
6
Может принимать значения от 1 до 8 ;)
Копаться (честно скажу) не хочется, но как выглядят строчки кода, в которых точно указан уровень существ?
Если (скажем так), ответ на мой вопрос выдаёт "true", то можно предложить следующее: если есть фиксированная строчка с указанием уровня, то можно запилить на Ruby (ИМХО, удобен для этого; если кто не слышал о нём, то похож на Питон) программку, которая будет смотреть на строчку, (грубо говоря) определять уровень и подменять на строку, в которой будет указан тот же уровень, но рандомное существо.
Самая тупая реализация (поскольку будет занимать времени ~(n^2+n)) видится мне следующей: предположим что у нас есть строка в файле - "уровень 1 - ассасин". Считываем полностью весь файл в массив (если язык позволяет, то лучше в string) text. Делая пробежки по файлу, делаем построчное сравнение с массивом arr. В самом массиве arr у нас есть семь эталонных строчек ["уровен 1 - (регулярное выражение)".."уровень 7 - (регулярное выражение)"]. И if( a[0]==text[определённый интервал, в котором содержится строка из файла] ) then ( text[определённый интервал, в котором содержится строка из файла]="уровень 1 - (рандомное существо)" ) и т.д.
Я попробую сделать то же на луа. Если получится, выложу.;)
Добавлено через 1 минуту
Уровень существа задаётся следующим образом:
6
Может принимать значения от 1 до 8 ;)
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога
Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога
Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Здрасте А как вам идея - в 4ке были такие существа - может что-то на подобие их сделать: Гаргантюа, медуза, громовая птица, бехолдер, морское чудище - его можно запихать в какую нибуть постройку наподобие затонувшего храма, а то в пятой части нет возможности как в четверке существу перемещатсья по воде - или есть?
Здрасте А как вам идея - в 4ке были такие существа - может что-то на подобие их сделать: Гаргантюа, медуза, громовая птица, бехолдер, морское чудище - его можно запихать в какую нибуть постройку наподобие затонувшего храма, а то в пятой части нет возможности как в четверке существу перемещатсья по воде - или есть?
В NCF есть медуза(правда коряво сделана, но если камеру не приближать - сойдёт на троечку), громовые птицы тоже есть (правда под другим именем, не помню, каким, но переименовать не сложно).
New Creatures Frameworks Map Supporter
Версия 0.1
Программа, созданная для того, чтобы на картах, не содержащих случайных монстров, появлялись существа из NCF! Что особенно применительно к ГСК.
Программа переделывает всех фиксированных монстров в случайных, но с зависимостью от уровня.
Использование.
Скачиваем файл NCF MS.zip, распаковываем в любое место.
Открываем файл карты (*.h5m) архиватором, находим map.xdb (обычно он находится в /Maps/SingleMissions/***/ или /Maps/Multiplayer/***/), копируем его в NCF MS\maps. Можно в промежуточные папки.
Запускаем lua.exe, появляется окно, вводим имя карты (map.xdb. С относительными путями, если в промежуточных папках). Нажимаем Okay. Если обработка произошла без ошибок, программа выключится, иначе вылезет сообщение об ошибке. Запаковывем map.xdb обратно в карту.
Возможные ошибки и пути их исправления.
Permission denied - файл только для чтения, измените атрибут файла и запустите программу снова.
No such file or directory - файл не найден / путь задан не верно. Проверьте, исправьте путь.
Предостережения.
Все "армии" превращаются в одиночного монстра, пока...
Делайте резервные копии перед обработкой.
Жду предложения и пожелания, если таковые есть.
Версия 0.1
Программа, созданная для того, чтобы на картах, не содержащих случайных монстров, появлялись существа из NCF! Что особенно применительно к ГСК.
Программа переделывает всех фиксированных монстров в случайных, но с зависимостью от уровня.
Использование.
Скачиваем файл NCF MS.zip, распаковываем в любое место.
Открываем файл карты (*.h5m) архиватором, находим map.xdb (обычно он находится в /Maps/SingleMissions/***/ или /Maps/Multiplayer/***/), копируем его в NCF MS\maps. Можно в промежуточные папки.
Запускаем lua.exe, появляется окно, вводим имя карты (map.xdb. С относительными путями, если в промежуточных папках). Нажимаем Okay. Если обработка произошла без ошибок, программа выключится, иначе вылезет сообщение об ошибке. Запаковывем map.xdb обратно в карту.
Возможные ошибки и пути их исправления.
Permission denied - файл только для чтения, измените атрибут файла и запустите программу снова.
No such file or directory - файл не найден / путь задан не верно. Проверьте, исправьте путь.
Предостережения.
Все "армии" превращаются в одиночного монстра, пока...
Делайте резервные копии перед обработкой.
Жду предложения и пожелания, если таковые есть.
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога
Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога
Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
NCF MS
Версия 0.1
Программа, созданная для того, чтобы на картах, не содержащих случайных монстров, появлялись существа из NCF! Что особенно применительно к ГСК.
Использование.
Скачиваем файл NCF MS.zip, распаковываем в любое место.
Открываем файл карты (*.h5m) архиватором, находим map.xdb (обычно он находится в /Maps/SingleMissions/***/ или /Maps/Multiplayer/***/), копируем его в NCF MS\maps. Можно в промежуточные папки.
Запускаем lua.exe, появляется окно, вводим имя карты (map.xdb. С относительными путями, если в промежеточных папках). Нажимаем Okay. Если обработка произошла без ошибок, программа выключится, иначе вылезет сообщение об ошибке. Запаковывем map.xdb обратно в карту.
Возможные ошибки и пути их исправления.
Permission denied - файл только для чтения, измените атрибут файла и запустите программу снова.
No such file or directory - файл не найден / путь задан не верно. Проверьте, исправьте путь.
Предостережения.
Все "армии" превращаются в одиночного монстра, пока...
Жду предложения и пожелания, если таковые есть.
А можно мануал с картинками ?! :rolleyes:
RedHeavenHero, большое спасибо =).
P.S.
Указали бы, что Вы автор что ли).
P.S.S.
Парочка вещей, на которые обратил внимание:
1) хорошо, что есть папка, в которую надо класть map.xdb, но (по умолчании) он будет находиться там один, так что (ИМХО) папка не нужна, поскольку файл (т.е. map.xdb) всёравно удаляться будет;
2) если папку всё же думаете оставить, то в программе (где path to file) стоит явно указать (по умолчании), что файл лежит там (т.е. в папке). Сначала я подумал, что без разницы в папке или в корне - в папке всё сработало, а в корне - нет. [конечно коряво написал, но думаю смысл ясен];
3) думаю было бы хорошо, если бы программа делала бекап старого файла на всякий случай.
P.S.
Указали бы, что Вы автор что ли).
P.S.S.
Парочка вещей, на которые обратил внимание:
1) хорошо, что есть папка, в которую надо класть map.xdb, но (по умолчании) он будет находиться там один, так что (ИМХО) папка не нужна, поскольку файл (т.е. map.xdb) всёравно удаляться будет;
2) если папку всё же думаете оставить, то в программе (где path to file) стоит явно указать (по умолчании), что файл лежит там (т.е. в папке). Сначала я подумал, что без разницы в папке или в корне - в папке всё сработало, а в корне - нет. [конечно коряво написал, но думаю смысл ясен];
3) думаю было бы хорошо, если бы программа делала бекап старого файла на всякий случай.
RedHeavenHero, большое спасибо =).
P.S.
Указали бы, что Вы автор что ли).
P.S.S.
Парочка вещей, на которые обратил внимание:
1) хорошо, что есть папка, в которую надо класть map.xdb, но (по умолчании) он будет находиться там один, так что (ИМХО) папка не нужна, поскольку файл (т.е. map.xdb) всёравно удаляться будет;
2) если папку всё же думаете оставить, то в программе (где path to file) стоит явно указать (по умолчании), что файл лежит там (т.е. в папке). Сначала я подумал, что без разницы в папке или в корне - в папке всё сработало, а в корне - нет. [конечно коряво написал, но думаю смысл ясен];
3) думаю было бы хорошо, если бы программа делала бекап старого файла на всякий случай.
3) Сделаю.
Насчёт 4-го пункта: попытаюсь сделать, но это очень сложно из-за отсутствия нормально функционирующей библиотеки, пока удалось добиться только чтения zip.
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога
Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога
Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
1) 2) Папку всё же оставлю.
3) Сделаю.
Насчёт 4-го пункта: попытаюсь сделать, но это очень сложно из-за отсутствия нормально функционирующей библиотеки, пока удалось добиться только чтения zip.
А что за библиотека ?!
А что за библиотека ?!
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога
Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога
Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
zlib.dll для Lua 5.1
Т.е. это библиотека для Lua-скриптов игры? А возможно ли подключение другой, более функциональной библиотеки путём замены файла?
Я думаю, это невозможно. Нужна библиотека стандартных функций lua?
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога
Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога
Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Статистика
Приветствуем новейшего участника:
Emil