Редактор книг-игр: FairyEdit


Пн Янв 26, 2009 11:59
APROMIX
1  Свободный искатель
Piligrim

Хорошо. Вот я написал плагин. Как редактор его запустит?

А, понял уже о чем ты Smile Да, есть такой метод GetPluginType, он пока на стадии разработки и доводки. Кратко о нем. Плагин возвращает программе (плагин много чего возвращает программе Smile ) свой тип, целое число, в зависимости от этого числа программа определяет, в какой пункт главного или одного из нескольких контекстных меню добавить пункт запуска плагина, или вообще не добавлять, тогда плагин активируется во время старта проги. В восьмой версии (не бета) выложу исходники всех плагинов и библиотеки core.dll, тогда все станет понятней я думаю, а могу и сейчас.


_________________
Плееры интерактивной литературы QuestBox и IFPhoenix
Пн Янв 26, 2009 12:02
Jumangee
Во всех бочках затычка

Лучше сейчас, подозреваю, что мы ещё многого захотим что тебе нужно будет сделать Smile
Хорошо что ты наконец-то стал освещать подробности внутренностей, но пока ещё инфы мало

Пн Янв 26, 2009 13:35
APROMIX
1  Свободный искатель

ОК, смотрите исходники плагинов в первом сообщ. #1 этой темы


_________________
Плееры интерактивной литературы QuestBox и IFPhoenix
Пн Янв 26, 2009 15:05
Dyuss
2  Герой легенд

APROMIX
Jumangee
Ребят, то, что действительно нужно, так это редактор схемы.

Вид любой.

Например:
176 – 21 – 113 – 555
\ /
42 – 456 – 15
\
679

Пн Янв 26, 2009 15:19
Piligrim
2  Меценат

Вот я об этом тоже задумался, поэтому и про плагины выпытываю.


_________________
Все движется... Иногда даже вперед!
Вс Мар 01, 2009 23:40
APROMIX
1  Свободный искатель

И как? Написал хоть кто-то интерессный плугин к редактору?


_________________
Плееры интерактивной литературы QuestBox и IFPhoenix
Пн Мар 02, 2009 13:55
Jumangee
Во всех бочках затычка

APROMIX
Извини, но что-то серьёзное написать – невозможно, кроме таких плагинов как "запуск калькулятора" и т.п. API совершенно никакое Sad
Слушай, давно пора уже сделать исходники редактора открытыми и писать его вместе. Я могу опубликовать то что в своё время начинал делать – оффлайн редактор на c++, возможно тебя там что-нить заинтересует.

Чт Апр 23, 2009 21:54
Магистр Таро
26  19  Меценат

Нужна помощь


Здравствуйте, господа.
Может быть мой вопрос не по теме... Но может подскажете какой программой мне можно воспользоваться для написания книги-игры?

Я тут написал черновик книги-игры по полицейской тематике, но пока все набрано в Ворде.
А я хочу сделать гиперссылки от параграфа к параграфу + нужно чтобы и рисунки можно было вставлять.

Хотелось бы иметь програмку попроще для более удобного написания текстов и редактирования параграфов. А то я у же изрядно намучился "вручную" текст перелопачивать каждые 10 минут.

Я сегодня скачал Fairyedit но пока не пойму как в нем работать.

Чт Апр 23, 2009 21:57
Jumangee
Во всех бочках затычка

Посмотрите тему http://quest-book.ru/forum/viewtopic.php?t=1212
уже обсуждалось

Вс Май 03, 2009 16:05
APROMIX
1  Свободный искатель

Руководство по написанию плагинов к FairyEdit
=========================================

Исходный код этого файла и всех плагинов открыт и вы можете сами
их изучать изнутри Smile
В отличие от большинства программ, являющихся монолитными продуктами,
FairyEdit представляет собой компактный модуль, к которому вы можете
подключать внешние программы. Сама по себе возможность подключения плагинов
не уникальна, но в случае с FairyEdit потенциал расширения функциональности
просто огромен.
Так что такое плагин? Плагин – дополнение к программе, расширяющее ее возможности.
Т.е., например, чтобы создать плагин к графическому редактору, который бы выполнял
преобразование изображений, нужно предусмотреть как минимум две функции в плагине
(и, соответственно, вызвать эти функции в программе) – функция, которая бы возвращала
имя плагина (и/или его тип), чтобы добавить этот плагин в меню (или в тулбар), плюс
главная функция – передачи и приема изображения. Т.е. сначала программа ищет плагины,
потом для каждого найденного вызывает его опозновательную функцию со строго определенным
именем (например, GetPluginName) и добавляет нужный пункт в меню, затем, если
пользователь выбрал этот пункт – вызывает вторую функцию, которой передает входное
изображение (либо имя файла, содержащего это изображение), а эта функция, в свою очередь,
обрабатывает изображение и возвращает его в новом виде (или имя файла с новым изображением).
Сам API плагинов предельно прост и прозрачен. Все функции с преффиксом Get что-то
возвращают, а с Set – наоборот устанавливают значения. Например, FE_GetSelText возвращает часть
текста, которую пользователь выделил в окне редактора, а с помощью FE_SetSelText это значение
можно поменять на другое. Если преффикс Is, то функция проверяет, является ли действие
(переменная) верными или нет. Например, FE_IsNumber проверяет, является ли строка числом.
Плагин представляет собой микропрограмму, обычную системную библиотеку dll, которая
общается с библиотекой fairyedit.dll (библиотека fairyedit.dll является как бы мостом между
программой и плагином) и самой программой. Но благодаря многим функциям, которые
понимает программа (API), эти библиотеки позволяют расширить возможности программы FairyEdit,
встраиваются в меню и отдельные элементы программы. Обратите внимание на заблуждение: если
плагин использует API FairyEdit, это еще не значит, что он должен пользоваться только
этими функциями, наоборот, в вашем арсенале все многообразие возможностей выбраной для
разработки среды программирования; при таком подходе простор для творчества становиться просто
безграничным.
Плагин может встраиваться в разных местах меню программы и другие элементы. Например,
простой плагин "Дата и время" (позволяет вставлять дату и время в редактор в разных форматах)
встраивается в главное меню "Вставить", откуда его можно задействовать. В результате появится
диалог, в котором можно выбрать формат времени или даты и вставить в текст параграфа. Другой
пример, плагин "Кубомет" (виртуальные кубики) активируется из другого меню и т. д. За
это положение отвечает метод плагина GetPluginType, тоесть тип плагина. Простой индекс, число
от 1. Все значения этого метода читайте в дополнении к руководству. Имя плагина, тот текст,
что мы видим в меню, определяется методами GetPluginName и GetPluginHint (название и подсказка).
GetPluginVersion возвращает версию плагина, а GetPluginFEVersion – минимальную версию редактора,
с которой работает плагин (в противном случае редактор может показывать ошибки и сбоить).
GetPluginAuthor и подобные методы дают нам информацию об авторе, его електронную почту для
связи, адрес в сети, где можно скачать новую версию плагина и прочее.
При активации плагина из программы, вызывается метод плагина ShowPlugin, (показать плагин,
запустить плагин) который и запускает плагин в действие. Если в плагине есть диалог, и
он запускается методом ShowPlugin, то этот диалог запуститься, как обычный диалог FairyEdit.
При создании своего плагина можно использовать не все методы из перечисленных, а только
самые нужные, остальные можно упустить. Наверное самый простой метод создать плагин – это
использовать специальный шаблон (можно скачать на сайте) fairyedit_plugin_template.zip.
Извлеките архив в нужную папку, откройте файл untLib.pas и отредактируйте нужные методы,
благо, там много подсказок, так что не заблудитесь. Остальное добавить по собственному
вкусу Wink
FairyEdit — расширяемый редактор книг-игр. Если вы желаете иметь большое количество настроек,
визуальных улучшений и разных возможностей — ставьте плагины. Если чего-то не хватает – пишите плагин сами! Это просто!

_________________
Плееры интерактивной литературы QuestBox и IFPhoenix
Вт Май 05, 2009 10:12
APROMIX
1  Свободный искатель

Обращаюсь к мастерам Delphi и C++ (C#) на форуме. Может кто-то захочет сделать визуальный плагин для FE, используя его API, который бы позволял составлять схемы параграфов, групировать их в локации и прочее, новый FairyEdit 0.8 это уже позволяет (позволял и 0.7 и 0.6, но желающих писать плагины не нашлось :cry: )

Скоро выложу версию 0.8 для всех на форуме, пока тестирую (осталось несколько дней).

Из новинок:
-Много кода вынесено в плагины
-Новый API (расширеный) для написания плагинов к редактору
-Экспорт книги-игры в xml.

Вот список изменений:
03-05-2009 APROMIX Исправлена история посещенных параграфов.
01-05-2009 APROMIX Доработаны закладки на параграфы и их назначение.
30-04-2009 APROMIX Доработан и исправлен диалог "Свойства книги".
29-04-2009 APROMIX Пересобраны все плагины с учетом изменений в API. Из кода в API dll вынесено несколько функций-утилит.
28-04-2009 APROMIX Библиотека core.dll заменена библиотекой fairyedit.dll. Значительно расширен API для создания плагинов.
27-04-2009 APROMIX Добавлены полезные изменения в блок "Фрагменты". Дополнен и исправлен API для написания плагинов.
26-04-2009 APROMIX Немножко доработано окно "Книги и параграфы".
25-04-2009 APROMIX Написан плагин для экспорта книги-игры в xml.
21-04-2009 APROMIX Добавлены новые возможности в редактор. Все пока на стадии бета.
09-04-2009 APROMIX Изменены и дополнены многие алгоритмы, исправлено несколько серьезных ошибок.
03.04.2009 APROMIX Начата работа над редактором книг-игр Fairyedit 0.8.


_________________
Плееры интерактивной литературы QuestBox и IFPhoenix
Вт Май 05, 2009 10:17
Jumangee
Во всех бочках затычка

Где полноценное описание API редактора? О каких просьбах может идти речь, если вместо просьбы об API мы получаем какую-то непонятную воду (замечу – программистам не нужную, а непрограммистам – тем более) о том что такое плагин? Описания API как небыло, так я понимаю и нет. А из того что я видел раньше, я не знаю как можно написать что-то толковее чем "открыть калькулятор".

Вт Май 05, 2009 10:47
APROMIX
1  Свободный искатель

А посмотреть в первый пост этой темы? Very Happy Там все обновлено, качай исходники FE 0.8 Plugins.rar

Народ, всегда смотрите первый пост темы, там я все обычно обновляю, чтоб потом не бегать и не искать по страницам темы.

Ну с описанием плагина я может и перестарался (лишняя инфа никому не мешает Very Happy ), но сам, используя старое API из FE 0.3 написал плагин экспорта книги-игры в файл xml. Это о чем-то говорит? Как мне кажется API уже давно вырос, но плагины никто как не писал, так и не пишет, и не будет писать.


_________________
Плееры интерактивной литературы QuestBox и IFPhoenix
Вт Май 05, 2009 11:02
Jumangee
Во всех бочках затычка

Не, товарисч, эта несерьёзно. По примерам изучать твой API извини, у мну времени не так много. Тем более, что там у тебя всё далеко не так уж и "прозрачно". Плюс, версия у тебя "актуальная" 0.8, а в первой мессаге – 0.7, так что посылаешь посути на старую версию – это несерьёзно!

Добавил через 3 минут 2 секунд:

Так что прежде чем просить, обеспечь людям такую возможность, человеческую

Вт Май 05, 2009 11:23
APROMIX
1  Свободный искатель
APROMIX

Скоро выложу версию 0.8 для всех на форуме, пока тестирую (осталось несколько дней).

Будет новая версия, были бы желающие ее расширять новыми возможностями.

Jumangee
а в первой мессаге – 0.7, так что посылаешь посути на старую версию – это несерьёзно!

Все работает и в 0.7, и в 0.6, и в 0.5, и в 0.4, и в 0.3.

Хотя я все понял, буду искать желающих настороне.


_________________
Плееры интерактивной литературы QuestBox и IFPhoenix
Вт Май 05, 2009 11:34
Jumangee
Во всех бочках затычка

Не, падажди, что ты понял?
Ты хочешь сформировать а-ля сообщество, при это не хочешь ни пальцем для этого стукнуть! Исходники редактора закрыты, API не описано, новой версии редактора нету, и ты нас ещё обвиняешь?

Вт Май 05, 2009 11:57
APROMIX
1  Свободный искатель

Зачем этот спор?

Jumangee
API не описано

Описано, но соглашаюсь – слабо, но там и догадаться можно, если примеры посмотреть.

Jumangee
Исходники редактора закрыты

А смысл открывать? Shocked Все, буквально все в редакторе можно расширить с помощью плагинов, исходники которых открыты. Юзай сколько душе влезет. Открывать не буду, не проси. Да и влом переводить все комменты в коде с украинского на русский Smile

Jumangee
ты нас ещё обвиняешь?

Вижу тебя понесло Smile Нет, слегонца зацепить хотел, но обвинять? В чем? Все добровольно, никто ничего не требует.


_________________
Плееры интерактивной литературы QuestBox и IFPhoenix
Вт Май 05, 2009 12:19
Jumangee
Во всех бочках затычка
APROMIX
слегонца зацепить хотел

А смысл? Зацепил – получил по шапке.
Ты вот немного не догоняешь принципов существования сообществ улучшающих какие-то программы. Во-первых, они давно существуют по принципам open-source – в сети лежат исходники игр, операционных систем и вообще чего хочешь, а ты закрываешь исходники редактора. Во-вторых, чем больше ты сделаешь ты для людей – тем больше они для тебя сделают – сделать так, чтобы людям было удобно расширять ТВОЮ программу твоя прямая обязанность. В-третьих, "цеплять" людей не надо – не имеешь никакого права. Я вот думал плагинчик написать, но вот теперь извини, не буду, ищи на стороне.

Вт Май 05, 2009 12:30
APROMIX
1  Свободный искатель

Ну ты еще подумай, я через несколько дней выложу новую версию. Very Happy Или уже ненада?

Добавил через 15 минут 45 секунд:

За что "по шапке" – я так и не понял. Просмотрел сегодняшние посты – вроде никого и не обижал. О чем ты Джуманжи – я не догнал! Но это твое...

Об АПИ. Написал я плагин экспорта книги-игры в xml за каких-нибудь 15 минут. И все заработало на старом АПИ, даже удивился. Не спорю, сложно, если не знаешь.

Но вот что интерес-с-сно, сама книга-игра ФэйриЭдит – набор пронумерованых файлов-параграфов в отдельной папке. Проще наверное только один файл (ini или xml, html). Чтоб работать с проектом нужно указать эту папку, остальное – свобода попугаю, тоесть программисту. И АПИ не нужен, совершенно. Пишешь на PHP и читаешь, на скриптах – работает. На все работает и всем читается. А запустить такую прогу можно из редактора в меню инструменты. Получается, что и плагины ненужны, и их злополучное АПИ. Главное – желание!


_________________
Плееры интерактивной литературы QuestBox и IFPhoenix
Пн Окт 04, 2010 17:24
Jumangee
Во всех бочках затычка

Давно нет новостей о проекте, он умер?
В первом сообщении битые ссылки, а рабочий файлообменник отдаёт файл с вирусом.

Вт Окт 05, 2010 11:34
APROMIX
1  Свободный искатель

Хм Smile Проект просто перестал развиваться и часть наработок перетекла в проекты FairyEditLite и VisualFairyEdit, но и они пока не развиваются.


_________________
Плееры интерактивной литературы QuestBox и IFPhoenix
Вт Окт 05, 2010 11:36
Jumangee
Во всех бочках затычка

Мда, Логгер выдавил всех конкурентов Smile
Тогда я переношу тему в холодильник

Вт Окт 05, 2010 11:46
APROMIX
1  Свободный искатель

Да Smile Все верно, после редактора на яве нет смысла развивать проект дальше Smile Сейчас уже другие проекты Smile


_________________
Плееры интерактивной литературы QuestBox и IFPhoenix