Страница 1 из 1

Развитие BeaRLib

Добавлено: 14 янв 2017, 13:19
Apromix
Уже много лет пакет BeaRLib как бы и развивается и не развивается. От первоначального задума мало что осталось рабочим. JustHurry пропал, я увлекся другими проектами, один Cfyz работает над терминалом не покладая рук. В новом году я хочу собрать актуальные (полностью рабочие) версии библиотек на GitHub.

В этой теме обсуждаем: развитие всех библиотек (целого пакета, фреймворка?), целесообразность их существования, пригодность, унификацию, недостатки, добавление новых и т. д.; куда их всех поместить (я предлагаю GitHub); нужно написать по каждой библиотеке руководство и где его разместить.

Re: Развитие BeaRLib

Добавлено: 14 янв 2017, 16:19
kipar
Да, терминал ушел вперёд а остальные библиотеки остались.
Но с другой стороны ясно что делать - просто догонять терминал, дорога то проложена.
Первое - те библиотеки что на паскале нужно поправить чтоб компилировались фрипаскалем и у всех проверить совместимость с линуксом (и макос?).
Второе - сделать байндинги и в идеале примеры на тех же языках что и у терминала. Ну может кроме lua. Т.е. С, С#, Python, Ruby.
Ну и третье - вики с минимальной документацией по ним.
И исходники, да. Гитхаб не хуже других мест. Но имхо три предыдущих пункта важнее.

Собственно что в Bearlib есть:
  • PF - как я убедился на прошлом 7drl интерфейс никуда не годится, поэтому api надо переделать(скопипастить с libtcod). А по-хорошему кроме A* еще волна нужна.
  • FOV - работает, разве что субклеточное освещение было бы интересно из примера перенести внутрь библиотеки, но в текущем виде оно слишком специализированное. Можно было бы сделать больше алгоритмов, но с другой стороны может и не надо, лучше один хороший чем несколько разных со своими причудами.
  • MG - работает, но Харука говорила что с fpc последний алгоритм не работает. А, и старые алгоритмы надо доработать чтоб информацию о комнатах возвращали.
  • HS - я не пользовался, но видимо работает.
  • Sound, Inv - я так понимаю отсутствуют.

Re: Развитие BeaRLib

Добавлено: 16 янв 2017, 09:35
Apromix
Создал на вики страницу о BeaRLib. Здесь будем писать руководства по каждой библиотеке BeaRLib.

Re: Развитие BeaRLib

Добавлено: 16 янв 2017, 12:56
Максим Кич
Apromix писал(а):
16 янв 2017, 09:35
Создал на вики страницу о BeaRLib. Здесь будем писать руководства по каждой библиотеке BeaRLib.
А почему не на GitHub?

Re: Развитие BeaRLib

Добавлено: 16 янв 2017, 18:31
Cfyz
kipar писал(а):FOV - работает, разве что субклеточное освещение было бы интересно из примера перенести внутрь библиотеки, но в текущем виде оно слишком специализированное.
А что за субклеточное отвещение в FOV?
kipar писал(а):Можно было бы сделать больше алгоритмов, но с другой стороны может и не надо, лучше один хороший чем несколько разных со своими причудами.
Тут такое дело, что одного всем условиям удовлетворяющего дискретного алгоритма, кажется, не бывает: раз статья, два статья. Надо всем собраться и сделать один (пятнадцатый) алгоритм без недостатков.
kipar писал(а):Sound, Inv - я так понимаю отсутствуют.
Звук я подумываю сделать в рамках терминала, потому как это тоже вывод, да и вообще терминалы издревне умели бибикать. Возможно, имеет смысл в контексте кирпичиков BearLib сделать ее потенциально отделяемой (работоспособной без терминала, или скорее тесно интегрируемой в терминал).
Максим Кич писал(а):А почему не на GitHub?
Я уверен, что надо иметь основную часть на GitHub. Но документацию придется вести еще и на русском, а на GitHub я что-то не видел чтобы были средства для интернационализации. Вот например у меня на странице в правом углу можно увидеть переключение языка -- довольно удобно иметь версии контента в одном месте и в одном стиле.

Re: Развитие BeaRLib

Добавлено: 16 янв 2017, 19:28
kipar
Cfyz писал(а):
16 янв 2017, 18:31
А что за субклеточное отвещение в FOV?
Ну, твоя демка где освещение вычисляется для четырех углов клетки. Но да, с FOV это слабо связано.
Cfyz писал(а):
16 янв 2017, 18:31
Тут такое дело, что одного всем условиям удовлетворяющего дискретного алгоритма, кажется, не бывает
Всем не всем, но если алгоритм один и у него нет явных косяков, то пользователь будет его использовать и у него вопросов не возникнет. Хотя если есть выбор это конечно плюс, но вот в libtcod помнится только "авторский" алгоритм из коробки давал круглое поле обзора, а остальные давали квадратное и соответственно к ним надо было костыль писать, что убивало смысл в выборе алгоритма (возможно в новых версиях исправили).

Re: Развитие BeaRLib

Добавлено: 28 фев 2017, 14:30
Apromix
О названии самых библиотек. Надо решить, как называть все либы точно. Сейчас кто как хочет пишет: либо BearLib, либо BeaRLib (разница в r и R).

Напомню, что BeaRLib пишем из-за самого сочетания букв RL, что значит roguelike. В сумме имеем Bear Rogue Like Library.

Re: Развитие BeaRLib

Добавлено: 28 фев 2017, 14:58
Cfyz
Мне кажется в обычном тексте не надо особо изголяться: BearLibFoo легко читается, легко пишется и все еще имеет общую часть. Но вполне можно писать BeaRLibFoo в заголовке, в названии репозитория (если оно все равно регистронезависимо) или на какой-нибудь картинке, потому что тогда получается что-то вроде логотипа.

Re: Развитие BeaRLib

Добавлено: 01 мар 2017, 14:47
Apromix
Предлагаю к сущ. набору добавить след. библиотеки:
  • Работа с архивами. Хорошо бы пригодилось для сейвов и данных. Запаролил архив и радуешься :D
  • Работа с ачивками, примерно как в ToME.
  • Работа со скилами.

Re: Развитие BeaRLib

Добавлено: 02 мар 2017, 18:33
kipar
Ачивкам потребуется интеграция со steam api, а это нетривиальная задача.
Скиллы похожи на инвентарь, но с еще более туманными перспективами - уж их то точно все делают по-разному. Не делать же просто список строк названия и уровней.
Архивы... ну в принципе есть смысл. по сути просто легкая обертка над minizip или чем-то таким, но как дополнение к библиотеке - почему бы и нет.

Re: Развитие BeaRLib

Добавлено: 03 мар 2017, 23:49
Максим Кич
kipar писал(а):
02 мар 2017, 18:33
Ачивкам потребуется интеграция со steam api, а это нетривиальная задача.
Я так понимаю, что речь идёт не о Steam Achievements, а о неких триггерах, которые сохраняют достижения локально.

Re: Развитие BeaRLib

Добавлено: 04 мар 2017, 10:08
kipar
Но тогда как со скиллами и инвентарем получается неясен функционал. Если даже вывод плашки о получении останется на пользователе, то будет просто список флагов сделал\не сделал и счетчиков "убил M зябров из N".

Хотя... кроме списка для конкретной игры будет еще персистентный список для всех игр. Тогда можно этот функционал в BearlibHS добавить - там уже есть список сохраняемый между играми, вот кроме таблицы результатов там могут быть и ачивки.

Re: Развитие BeaRLib

Добавлено: 04 мар 2017, 21:51
Apromix
kipar писал(а):
04 мар 2017, 10:08
Тогда можно этот функционал в BearlibHS добавить - там уже есть список сохраняемый между играми, вот кроме таблицы результатов там могут быть и ачивки.
Замечательная идея :lol: Мне такое в голову не пришло :)