К сожалению интерфейс для загрузки игры по сети пока ещё никто не делал. Теоретически есть возможность загрузится через опции командной строки, но я не проверял работает оно или нет.
Дак вообще капец обидно) играли час и все… в итоге даже не доиграть…
Ну я уже дописал, что сама загрузка вроде как есть и как грузится описано в комментах к релизу 0.97, так что стоит попробовать.
PS: На всякий случай загрузка хотсита (не игры по сети) работает через менюшку нормально.
Спасибо за 0.98e. Достаточно стабильно работает. Протестили по сети, правда после нападения на замок последнего противника вышел краш но все таки!
А может кто подскажет как поменять папку с сохранениями? А то игра кидает все в документы
Это на данный момент не предусмотрено.
А еще вопрос Если я выложу логи и дамп можно определить из за чего краши идут?
Лучше, логи, сейв (оба), описание как повторить и все это на багтрекер. И все это конечно в идеале на английском, но если вдруг совсем никак можешь написать на русском и я переведу.
Тут просто надо понимать что многие баги уже известные и на трекере висят, просто по тем или иным причинам дожидаются своего часа. Но шансы найти что-то новое есть всегда т.к все играют по разному и в разные карты.
Запускаю игру… все норм… нажимаю новая игра и сразу вылетает… что делать?
Starting...
Creating console and configuring logger: 14
The log file will be saved to "/home/rom4ik/.cache/vcmi/VCMI_Client_log.txt"
Initialization: 7
Data loading: 63
Mod handler: 0
Mod filesystems: 42
Basic initialization: 112
Initialized logging system based on settings successfully.
Loading settings: 114
VCMI 0.98 (client)
Found 3 render drivers
opengl (active)
opengles2
software
Created renderer opengl
Initializing screen: 53
Initializing video: 1
Initializing screen and sound handling: 1
Bonus type handler: 6
General text handler: 18
Hero handler: 2
Artifact handler: 0
Creature handler: 0
Town handler: 0
Object handler: 0
Object types information handler: 0
Spell handler: 0
Terrain view pattern handler: 0
Initializing handlers: 28
Initializing content handler: 87 ms
[83374c1f] Original game files
[d275088f] VCMI essential files
[6fc0c625] In The Wake of Gods
[fe89086e] WoG russian translation
[e051da0f] Commanders
[37094ab7] Stack Artifacts
[f97d1e33] Stack Experience
[9a893d8d] WoG russian translation
Parsing mod data: 74 ms
[SKIP] Original game files
[SKIP] VCMI essential files
[SKIP] In The Wake of Gods
[SKIP] WoG russian translation
[SKIP] Commanders
[SKIP] Stack Artifacts
[SKIP] Stack Experience
[SKIP] WoG russian translation
Loading mod data: 58ms
Resolving identifiers: 23 ms
No templates found for 70:0
No templates found for 172:0
No templates found for 186:0
No templates found for 189:0
Handlers post-load finalization: 12 ms
All game content loaded in 256 ms
Template handler: 259
Initializing VCMI_Lib: 288
Loading and transforming heroes' flags: 44
Screen handler: 48
Main graphics: 30
Initializing game graphics: 79
Message handler: 2
Initialization of VCMI (together): 718
Blocking buttons from 1
Setting up thread calling server: 0
No templates found for 70:0
No templates found for 172:0
No templates found for 186:0
No templates found for 189:0
Waiting for server: 57
Establishing connection...
Found endpoints:
0: 127.0.0.1:3030
Trying connection to 127.0.0.1:3030 (0)
Established connection with VCMI 0.98 (server)
Connecting to the server: 1
Will send info to server...
Sending/Getting info to/from the server: 9
Creating gamestate: 0
Using random seed: 1447429663
Open map file: MAPS/BACK FOR REVENGE
Map loaded!
Our checksum for the map: 3938981429
Seed after init is 1458606001 (before was 1447429663)
Initializing GameState (together): 127
Creating mapHandler: 0
Preparing FoW, roads, rivers,borders: 23
Making object rects: 176
Initializing mapHandler (together): 202
Player 1 will be lead by VCAI
Opening VCAI
Error: /usr/lib/x86_64-linux-gnu/vcmi/AI/libVCAI.so: undefined symbol: _ZN2fl4Rule5parseERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKNS_6EngineE
Cannot open dynamic library ("/usr/lib/x86_64-linux-gnu/vcmi/AI/libVCAI.so"). Throwing...
terminate called after throwing an instance of 'std::runtime_error'
what(): Cannot open dynamic library
read: Connection reset by peer
Ended handling connection
Аварийный останов (сделан дамп памяти)
rom4ik@night:~$ Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
Warning: an orphaned child!
write: Broken pipe
Cannot open dynamic library ("/usr/lib/x86_64-linux-gnu/vcmi/AI/libVCAI.so")
Не может открыть либу с ИИ . Без нее никак.
Error: /usr/lib/x86_64-linux-gnu/vcmi/AI/libVCAI.so: undefined symbol: _ZN2fl4Rule5parseERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKNS_6EngineE
Сборка кривая.
Аналогичная проблема: libVCAI.so: undefined symbol: _ZN2fl13InputVariableC1ERKSsdd
ОС Gentoo (ядро x86 с включеным PAE), пробовал собирать из портежа (есть ебилд к одной из старых редакций 0.98), после попробовал ручную сборку согласно инструкции на Wiki. Опции cmake: -DCMAKE_INSTALL_PREFIX=/home/kacnep/vcmi/trunk/install -DENABLE_LAUNCHER=OFF
Проблема абсолютно аналогична и идентична. Подозреваю, какая то из библиотек-зависимостей имеет проблему (например, необходима пересборка и перелинковка после обновления ядра), либо в коде игры закопан баг, например, где то пробрались зависимости от Ot5 за пределы кода лаунчера (а лаунчер отключен именно по причине жёстких зависимостей от Qt5).
Буду рад любой помощи. Написать в английскую ветку могу только при помощи переводчика, т.к. языком не владею, поэтому сначала пишу сюда.
edt: из логов, которые сохраняет игра в ~/.cache/vcmi/ информативным оказался только VCMI_Client.log. Вот последние записи перед крешем:
2015-Nov-19 11:52:25.478525 TRACE global [afb25b40] - Human player interface for player 0 being constructed
2015-Nov-19 11:52:25.478593 TRACE global [afb25b40] - Initializing the interface for player 0
2015-Nov-19 11:52:25.539607 TRACE network [afb25b40] - Preparing interface for player 1
2015-Nov-19 11:52:25.539717 INFO network [afb25b40] - Player 1 will be lead by VCAI
2015-Nov-19 11:52:25.539808 INFO global [afb25b40] - Opening VCAI
2015-Nov-19 11:52:25.582016 INFO global [afb25b40] - Loaded VCAI
2015-Nov-19 11:52:25.582284 TRACE ai [afb25b40] - Entering VCAI::VCAI().
2015-Nov-19 11:52:25.582322 TRACE ai [afb25b40] - Leaving VCAI::VCAI().
2015-Nov-19 11:52:25.582374 TRACE global [afb25b40] - Initializing the interface for player 1
2015-Nov-19 11:52:25.582418 TRACE ai [afb25b40] - Entering virtual void VCAI::init(std::shared_ptr<CCallback>).
Итак, в продолжение написанного. Долгие копания во всех направлениях привели к следующему. Игра успешно собирается во всех случаях, но
- если fuzzylite установлен в системе (пробовались версии 5.0 и 5.1 с гитхаба) - то вылетает эта вот ошибка, которая описана в предыдущих постах мной и RoM4iK;
- если fuzzylite из системы удалить - то игра соберёт собственный (!) fuzzylite, который приложен вместе с ней в исходниках. И уже вместе с ним будет замечательно запускаться
В исходниках игры приложен fuzzylite версии 5.0 (согласно ChangeLog`у), и он собирается в статик-либу. Всё это жутко странно, сравнивать диффом исходники я не стал.
Таким образом, решение вопроса найдено. Для гентушников я подготовил ебилд (в личку или в почту).
И теперь возник СЛЕДУЮЩИЙ ВОПРОС: в процессе ковырятельств со сборкой, я всётаки установил launcher и появилась возможность менять настройки. Первым же делом я попробовал сменить разрешение, но получил в VCMI_Client_log.txt вот такое содержание:
2015-Nov-21 03:03:46.274859 INFO global [b4541a40] - Loading settings: 207
2015-Nov-21 03:03:46.274917 INFO global [b4541a40] - VCMI 0.98f (client)
2015-Nov-21 03:03:46.568485 INFO global [b4541a40] - Found 2 render drivers
2015-Nov-21 03:03:46.568598 INFO global [b4541a40] - opengl (active)
2015-Nov-21 03:03:46.568660 INFO global [b4541a40] - software
2015-Nov-21 03:03:46.568724 ERROR global [b4541a40] - Selected resolution 1440x900 was not found!
2015-Nov-21 03:03:46.568974 ERROR global [b4541a40] - Falling back to 800x600
2015-Nov-21 03:03:46.715615 INFO global [b4541a40] - Created renderer opengl
2015-Nov-21 03:03:46.719877 INFO global [b4541a40] - Initializing screen: 99
2015-Nov-21 03:03:46.720201 INFO global [b4541a40] - Initializing video: 0
2015-Nov-21 03:03:46.729792 INFO global [b4541a40] - Initializing screen and sound handling: 1
Not implemented feature?
Для поддежржки других разрешений надо ставить отдельный мод через лаунчер vcmi/extraResolutions.
На счет фузилайта “наша” версия изменений не содержит (но может наверное отличаться от какого-то конкретного оф. релиза), а так да 5.0. В дебиане fuzzylite отдельный пакет и все типа нормально работает.
Выкладывай сразу на github/gist. Кому надо найдет.
Там с этим модом только все очень хитро на линуксе потому как он является субмодом VCMI который при этом не лежит в гите даже. Лаунчер после обновления репозиториев по-идее должен предлагать обновить его, но вот если этот мод у тебя уже где-то в /usr/share/vcmi/Mods лежит то будет фейл.
Короче надо разбираться:
bugs.vcmi.eu/view.php?id=2260
PS: И да, самый простой способ проблему решить это ручками его скачать, распаковать и положить в ~/.local/share/vcmi/Mods/
download.vcmi.eu/mods/repository/vcmi.zip
Там не всё так чисто с этим ебилдом надо приписать к нему awk который будет выпиливать из мейкфайла проверку на наличие в системе fuzzylite и найти способ заставить линкер вязать не на системную либу, а на ту, которая идёт с кодом. А пока там просто костыль в виде проверки на наличие в системе fuzzylite и выхода с ошибкой если он есть.
PS: И да, самый простой способ проблему решить это ручками его скачать, распаковать и положить в ~/.local/share/vcmi/Mods/
download.vcmi.eu/mods/repository/vcmi.zip
А вот за это огромное спасибо, теперь можно начать играть
По поводу fuzzylite - может быть с кем нибудь из разработчиков вместе попробуем разобраться, что не так с либой, устанавливаемой в систему? Мне нужны инструкции к действию. Могу попробовать запостить в багтрекер, но с языком всё грустно.
По поводу fuzzylite - может быть с кем нибудь из разработчиков вместе попробуем разобраться, что не так с либой, устанавливаемой в систему?
Ну мы и есть разработчики.
Насколько я понимаю проблема прежде всего в том, что fuzzylite это не libstdc++ или SDL2 со стабильным ABI и кодом, а потому если VCMI не будеть юзать свою версию, то есть вероятность что что-то сломается. При этом из-за того за что собственно отвечает либа (нечеткая логика, решения ИИ) понять что оно сломалось не так просто. Более того оно ранее при обновлении на новую версию либы именно так и ломалось, к частью сам автор fuzzylite помог пофиксить.
Тратить время на отслеживание изменений в fuzzylite тут никто особо желанием не горит, тем более что часть разработчиков сидит на винде, а я на Ubuntu 14.04 где fuzzylite вообще нет в репозиториях.
SXX, может тогда имеет смысл в мейкфайле сделать отвязку от системного fuzzylite и собирать/линковать во всех случаях собственную?
SXX, может тогда имеет смысл в мейкфайле сделать отвязку от системного fuzzylite и собирать/линковать во всех случаях собственную?
Конечно имеет, но для этого мне придется нормально разобраться с CMake. Если пришлешь патчик с радостью его потестирую на убунте, проверю чтобы ничего не ломал и замержу.
А так конечно запишу себе в список задач по cmake на будущее, т.к у меня давно есть желание переделать там несколько мест дабы можно было депы при сборке для винды из под линукса линковать статически (но не все).
PS: В Cmake такую штуку конечно надо пилить опцией, т.к для реп того же дебиана надо системные библиотеки использовать. Но гемор по сборке и совместимости там лежит на майтейнере, а не на нас.
Если пришлешь патчик с радостью его потестирую на убунте
Боюсь, мои познания в cmake бедны до безобразия. Я обошёлся простым костылём:
trunk\vcmi\AI\CMakeLists.txt:
-find_package(Fuzzylite)
+#find_package(Fuzzylite)
Игра собралась и запустилась при любых условиях - как при наличии FL в системе, так и при её отсутствии. Просто воткнул эту радость в ебилд и пойду выложу в оверлей.
Эта идея для будущего на годы вперед (возможно уже и озвученная). Пока говорить об этом оооооочень рано, но все же было бы очень круто если б была возможность
искать игроков и коннектится прямо в игре!!
Интересно насколько сложно это реализуемо…
искать игроков и коннектится прямо в игре!!
С этого места попродробнее:) Ничо не поянял.