LINUX.ORG.RU
ФорумGames

Есть ли опенсорсный аналог Dwarf Fortress или Rim World'а

 ,


2

3

Друзья играющие, а не подскажите ли существует ли в природе опенсорсные аналоги Dwarf Fortress или Rim World’а?

Предварительная гуглежка ничего не дала. Может есть что-то известное только знатокам?

★★★

Последнее исправление: shaplov (всего исправлений: 2)

аналоги Dwarf Fortress

Их и не опенсорсных не существует. Разве что упомянутый Rim World где-то отдалённо.

anonymous
()
Ответ на: комментарий от No

Ага, спасибо! Как я понимаю она не то чтобы вот совсем опенсорсная, в том смысле, чтобы можно было сказать apt-get install, чтобы нормально поиграть все-равно стим ставить надо будет, но в лист на изучение ее точно следует поставить, и код можно читать...

shaplov ★★★
() автор топика
Ответ на: комментарий от shaplov

Она совсем опенсорсная. Отсутствие в репах твоего дистрибутива к опенсорсности отношения не имеет — только к тому, что её почему-то не опакетили. В AUR, например, есть, и поставить как yay -S keeperrl-git можно.

До DF, правда, там, к сожалению, очень долеко…

anonymous
()
Ответ на: комментарий от shaplov

The free version is the same as the full version, except it's ASCII-only. See screenshot.

Какие могут быть жалобы тогда? Это не как adom или тот же tome поступают.

linuxnewbie
()
Ответ на: комментарий от linuxnewbie

код открыт, но пользоваться нормально нельзя...

Считай что для массового пользователя игра остается проприетарной... Да и более продвинутое комьюнити походу не стремиться... вот даже под дебиан не запаковали....

shaplov ★★★
() автор топика
Ответ на: комментарий от shaplov

более продвинутое комьюнити

дебиан

Отличная шутка, спасибо. Ну а вообще не показатель, многие программы даже под виндоус не собирают на регулярной основе. Вы же не станете утверждать, что виндоус менее продвинутое комьюнити? Кому надо, тот соберёт.

linuxnewbie
()
Ответ на: комментарий от shaplov

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

Если что, Rust, Vulkan или Piston2D, git, cargo/flatpak/snapcraft ну и может пару пакетов для дистров.

Ну или просто напишите все на HTML5/TypeScript/Canvas

vertexua ★★★★★
()
Последнее исправление: vertexua (всего исправлений: 2)
Ответ на: комментарий от linuxnewbie

Устанавливать студии и компиляторы 150 версий чтобы собирать программы под виндоус удовольствие ещё то, и ведь справляются как-то. А вы жалуетесь, что не можете gcc освоить, или что?

linuxnewbie
()
Ответ на: комментарий от linuxnewbie

нда

during GIMPLE pass: pre
collective_config.cpp: В статической функции-члене «static const vector<FurnitureType>& CollectiveConfig::getTrainingFurniture(ExperienceType)»:
collective_config.cpp:362:30: внутренняя ошибка компилятора: Ошибка сегментирования
 const vector<FurnitureType>& CollectiveConfig::getTrainingFurniture(ExperienceType type) {
                              ^~~~~~~~~~~~~~~~
Please submit a full bug report,
with preprocessed source if appropriate.

чего-то гцц поплохело, шлангом собирается норм, хотя в результате всё равно вот это

Caught SIGSEGV: Segmentation Fault
Current time 1556278175, running time 3
posix_print_stack_trace() у ??:?
posix_signal_handler(int, siginfo_t*, void*) у ??:?
?? ??:0
fail() у ??:?
?? ??:0
?? ??:0
?? ??:0
?? ??:0
std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, vector<TileCoord>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, vector<TileCoord> > > >::at(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) у ??:?
TileSet::loadTiles() у ??:?
TileSet::reload(GameConfig const*, bool) у ??:?
keeperMain(po::parser&) у main.cpp:?
main у ??:?
?? ??:0
_start у ??:?
Caught SIGSEGV: Segmentation Fault
Current time 1556278185, running time 3
posix_print_stack_trace() у ??:?
posix_signal_handler(int, siginfo_t*, void*) у ??:?
?? ??:0
fail() у ??:?
?? ??:0
?? ??:0
?? ??:0
?? ??:0
std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, vector<TileCoord>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, vector<TileCoord> > > >::at(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) у ??:?
TileSet::loadTiles() у ??:?
TileSet::reload(GameConfig const*, bool) у ??:?
keeperMain(po::parser&) у main.cpp:?
main у ??:?
?? ??:0
_start у ??:?
Caught SIGSEGV: Segmentation Fault
Current time 1556278217, running time 3
posix_print_stack_trace() у ??:?
posix_signal_handler(int, siginfo_t*, void*) у ??:?
?? ??:0
fail() у ??:?
?? ??:0
?? ??:0
?? ??:0
?? ??:0
std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, vector<TileCoord>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, vector<TileCoord> > > >::at(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) у ??:?
TileSet::loadTiles() у ??:?
TileSet::reload(GameConfig const*, bool) у ??:?
keeperMain(po::parser&) у main.cpp:?
main у ??:?
?? ??:0
_start у ??:?
Caught SIGSEGV: Segmentation Fault
Current time 1556278236, running time 3
posix_print_stack_trace() у ??:?
posix_signal_handler(int, siginfo_t*, void*) у ??:?
?? ??:0
fail() у ??:?
?? ??:0
?? ??:0
?? ??:0
?? ??:0
std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, vector<TileCoord>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, vector<TileCoord> > > >::at(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) у ??:?
TileSet::loadTiles() у ??:?
TileSet::reload(GameConfig const*, bool) у ??:?
keeperMain(po::parser&) у main.cpp:?
main у ??:?
?? ??:0
_start у ??:?
Caught SIGSEGV: Segmentation Fault
Current time 1556279154, running time 4
posix_print_stack_trace() у ??:?
posix_signal_handler(int, siginfo_t*, void*) у ??:?
?? ??:0
fail() у ??:?
?? ??:0
?? ??:0
?? ??:0
?? ??:0
std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, vector<TileCoord>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, vector<TileCoord> > > >::at(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) у ??:?
TileSet::loadTiles() у ??:?
TileSet::reload(GameConfig const*, bool) у ??:?
keeperMain(po::parser&) у main.cpp:?
main у ??:?
?? ??:0
_start у ??:?
Caught SIGSEGV: Segmentation Fault
Current time 1556279171, running time 3
posix_print_stack_trace() у ??:?
posix_signal_handler(int, siginfo_t*, void*) у ??:?
?? ??:0
fail() у ??:?
?? ??:0
?? ??:0
?? ??:0
?? ??:0
std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, vector<TileCoord>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, vector<TileCoord> > > >::at(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) у ??:?
TileSet::loadTiles() у ??:?
TileSet::reload(GameConfig const*, bool) у ??:?
keeperMain(po::parser&) у main.cpp:?
main у ??:?
?? ??:0
_start у ??:?
Caught SIGSEGV: Segmentation Fault
Current time 1556279311, running time 3
posix_print_stack_trace() у ??:?
posix_signal_handler(int, siginfo_t*, void*) у ??:?
?? ??:0
fail() у ??:?
?? ??:0
?? ??:0
?? ??:0
?? ??:0
std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, vector<TileCoord>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, vector<TileCoord> > > >::at(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) у ??:?
TileSet::loadTiles() у ??:?
TileSet::reload(GameConfig const*, bool) у ??:?
keeperMain(po::parser&) у main.cpp:?
main у ??:?
?? ??:0
_start у ??:?
Caught SIGSEGV: Segmentation Fault
Current time 1556279361, running time 3
posix_print_stack_trace() у ??:?
posix_signal_handler(int, siginfo_t*, void*) у ??:?
?? ??:0
fail() у ??:?
?? ??:0
?? ??:0
?? ??:0
?? ??:0
std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, vector<TileCoord>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, vector<TileCoord> > > >::at(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) у ??:?
TileSet::loadTiles() у ??:?
TileSet::reload(GameConfig const*, bool) у ??:?
keeperMain(po::parser&) у main.cpp:?
main у ??:?
?? ??:0
_start у ??:?
linuxnewbie
()
Ответ на: комментарий от shaplov

Зависит от ЯП и моего времени. Вполне возможно что да. Правда я сейчас в жабу направился, а жаба не лучший ЯП для данной задачи.

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 1)
Ответ на: комментарий от KillTheCat

Игра неплохая, но по глубине проработки и разнообразию до DF как до Пекина раком. Впрочем, задачи переплюнуть DF и не ставилось — Oxygen not included совсем другая игра, и она хороша такая, какая есть. Rimworld и то поближе будет.

anonymous
()
Ответ на: комментарий от peregrine

c переходящий в c++ с прибинжденным к нему lua для расширений и внешнего скриптига...

shaplov ★★★
() автор топика
Ответ на: комментарий от shaplov

но пользоваться нормально нельзя...

Пользоватся как раз таки можно. А если нужен графический тайлсет - покупаем игру и пихаем тайлсет в собранную опенсорц версию.

Да и более продвинутое комьюнити походу не стремиться... вот даже под дебиан не запаковали....

Что мешает взять и запаковать?

trynoval
()
Ответ на: комментарий от trynoval

Что мешает взять и запаковать?

Почитайте тред, там вполне понятно что мешает: оно тупо не собирается без поллитры. И похоже что с поллитрой — тоже

shaplov ★★★
() автор топика
Ответ на: комментарий от O02eg

Спасибо!

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

shaplov ★★★
() автор топика

А нафига оно вообще нужно - опенсорсный аналог? Особенно если учесть объём человеко-часов, заложенный в эти игры.

anonymous
()
9 января 2020 г.
Ответ на: комментарий от O02eg

Goblin Camp

А мне таки удалось собрать ее…

Далеко не сразу, в chroot окружении, перепилив систему сборки c bjam на cmake, но таки удалось! ;-)

Результат изысканий с инструкцией положил сюда: https://gitlab.com/dhyannataraj/goblin-camp/tree/cmake-build

Building is fun ;-)

shaplov ★★★
() автор топика
Последнее исправление: shaplov (всего исправлений: 1)
Ответ на: комментарий от peregrine

Ну вот я осилил собрать упомянутый здесь Goblin Camp. См. коммент выше. Можно вонзаться в него :-)

shaplov ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.