Обзор LEBuild 1.0 Beta - Lezing's Ophitial Site

Lezing's Ophitial Site»Проекты»LEBuild»Обзор LEBuild 1.0 Beta

Азъ есмь кодеръ красноглазой
Страница сия — преданье старины глубокой. Судя по всему, порождена в нещадных потугах слабооформленного сознания. Да простят дорогие читатели её унылую натуру.

NB: эта страница была написана в ноябре 2006 года и более не отражает нынешнего положения дел. С обзором финальной версии LEBuild можно ознакомиться здесь.

LEBuild является моим собственным редактором карт для Duke Nukem 3D. Я писал его на Visual Basic 6.0 «с нуля», поэтому он совсем не похож на Build и Mapster. В отличие от них, у LEBuild'а вполне удобный графический интерфейс и более широкие возможности для редактирования карт. Язык интерфейса пока только русский, но во второй бета-версии будет предусмотрена возможность перевода программы на английский язык и, если захочется, на какой-нибудь еще. К основным недостаткам редактора можно отнести отсутствие 3D-режима и недостаточную функциональность элементов управления (в частности, текстовых полей). В переспективе я собираюсь сделать режим 3D-просмотра, но редактировать карту в этом режиме скорее всего будет нельзя; что касается элементов управления, они станут полнофункциональными только в LEBuild 2.0, если таковой появится, правда к тому времени я, скорее всего, перейду на C++. Да и Дюка могу забросить — уже сейчас интерес к нему постепенно угасает, хотя я продолжаю делать разные наработки для своей карты SKYTOWN...

Вернемся к делу. Многие команды с клавиатуры были позаимствованы из оригинального редактора, поэтому долго привыкать к LEBuild'у не придется. Я не отрицаю тот факт, что в моем редакторе довольно много лишнего, но я не привык «кастрировать» свои программы, убирая что-либо, зато, когда нет настроения программировать что-то серьезное и нужное, я могу добавить в свой проект что-нибудь увеселительное вроде чит-кодов или модели системы притягивающихся частиц, пользуясь тем, что пока у меня нет начальства, дающего конкретные задания и ограничивающего сроки. Запустив LEBuild, можно увидеть какой-нибудь эффект из искр, летающих по экрану, а при выходе из программы она покажет один из семи видеоэффектов. А можно зайти в настройки и все это вырубить и врубить что-нибудь поизвращеннее. Пункт меню «О программе...» покажет стартовую заставку и немного инфы об авторе. Там я оставил свое мыло и адрес этого сайта. Сама справка пока доделана только по сочетаниям клавиш. Ну и чит-коды, поворачивающие и трясущие экран, там описаны. Еще можно нажать кнопку «Открыть» и полазить по папкам собственного компьютера. Правда файлы будут отображаться только с расширением MAP, да и в путешествие по локальной сети LEBuild Вас не пустит.

Но раз уж это редактор карт для Дюка, нельзя забывать про его главную функцию. Да, в LEBuild'е действительно можно редактировать карты. Открыв какой-нибудь MAP-файл, можно посмотреть статистику, поискать и поустранять ошибки в карте, или же все поудалять и получить пустую карту в первозданном виде. Мой редактор обладает практически всеми возможностями Mapster'а, плюс еще множество разных инструментов для спрайтов, вершин, стен, секторов, циклов... и куча разнообразных багов. Но работает все вполне сносно, так как баги эти по сути не критические.

Еще несколько слов об интерфейсе. События сопровождаются звуками, выдранными из разных игр (в т. ч. и из Дюка), а многие элементы GUI, в том числе и мышиные указатели, записаны в bmp-файл, что предполагает возможность небольшого моддинга. Внешний вид флажков, радиокнопок, toolbar'овских кнопок, курсора мыши можно немного изменить. Не удастся изменить только размер картинок. Шрифты также легко поддаются моддингу, но размер битмапов менять опять же нельзя. При необходимости вполне реально сделать другой набор символов (вместо кириллицы, скажем, западноевропейский). Палитра также изменяемая (я еще не сказал, что интерфейс берет цвета из 256-цветной палитры? это сделано для повышения скорости графики до приемлемого уровня), если захочется, то изменить ее придется как минимум в двух местах — в Mainscr.gif и Palette.pal. Потом желательно удалить файл colortab.dat, чтобы LEBuild при запуске заново его сгенерировал для новой палитры. Звуки поменять также особого труда не составит. Все данные редактора хранятся в отдельной папке.

Запустив LEBuild и перейдя в полноэкранный режим, можно временно забыть про то, в какой операционной системе Вы работаете — весь интерфейс программы уникален, все шрифты отрисованы мной, окна сообщений, кнопки и даже курсор мыши отображаются в виртуальном буфере, выводимом на экран. Зачем я так сделал? Во-первых, системные элементы управления мне порядком надоели и я решил сделать что-то свое. Во-вторых, основную часть экрана, где редактируется карта, мне все равно пришлось бы отображать через массив, так почему бы не оторбажать через него весь экран? В-третьих, изменяемый курсор мыши в VB6 можно сделать только двухцветным и ограниченного размера, а мой подход позволяет использовать в курсоре любые цвета, любые эффекты, и размер хоть на весь экран. Да, разработка полностью своего интерфейса требует много времени для программирования, но, как я уже писал, сроки мне никто не ограничивает...

Резюмируем. LEBuild — довольно мощный и продуманный редактор карт для Duke3D, в финальной версии которого я постараюсь доработать все, что начал и исправить большинство ошибок. В ближайшее время ожидается выход второй беты.