Closed Vladislav4KZ closed 5 months ago
Список зависит от того, какая энтити была прописана в liblist.gam.
Но Ксаш его конвертирует в gameinfo.txt. Конвертер мог заглючить отчего-то. Покажи liblist.gam, сгенерированный gameinfo.txt и саму карту.
On Sat, Mar 27, 2021, 1:18 PM Владислав Сухов @.***> wrote:
Эта карта режима "Capture the Briefcase (Захват чемодана)" её можно загрузить через консоль, а в меню её нет. Остальные карты видно в списке
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/FWGS/xash3d-fwgs/issues/389, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAYQTAO55KWMQBLWDARPS63TFWWGHANCNFSM4Z4YPCHA .
@a1batross сделал энтпатч этой карты и понял, что в этой карте для спавна игроков используется info_player_team1 и info_player_team2, а в gameinfo.txt и liblist.gam прописано "info_player_deathmatch" для мультиплеера
Интересно что делает голдсорс в этом случае.
Может быть если GoldSource не находит sp_entity и mp_entity, то считает карту мультиплеерной или общего назначения? Просто карта непригодной ни для чего быть не должна. Либо используются захардкоженные значения. Энтити info_player_team1 и info_player_team2 были ещё в quake.
Может быть если GoldSource не находит sp_entity и mp_entity, то считает карту мультиплеерной или общего назначения?
Синглплеерный спавн "info_player_start" есть на той карте. И в GoldSource её можно выбрать из списка мультиплеерных карт
Вариант рипентом поудалять\подобавлять такие точки спауна и посмотреть, что будет. Вообще в Opposing Force изначально планировали добавить кооперативный режим, и в обычном hlsdk есть зачатки + соответствующий квар в движке, так что может быть и карты с sp_entity должны быть пригодны для мультиплеера.
Вариант рипентом поудалять\подобавлять такие точки спауна и посмотреть, что будет. Удалил я эти точки спавна, карта со списка в GoldSource не исчезла.
И ради эксперимента, скопировал синглплеерную карту из Half-Life в мод, она тоже появляется среди мультиплеерных карт
Тогда может быть и так, что mpentity и spentity - остались в конфигах с ранних версий, а в движке в данный момент не проверяются вообще.
Но в самом Half-Life на GS же не видно синглплеерных карт среди мультиплеерных
Может быть и так, что карты каким-то образом фильтруются, но только для игр Valve. Даже так: https://developer.valvesoftware.com/wiki/The_liblist.gam_File_Structure mpentity в steam не работает
Разобрался. Всё это часть GameUI.dll в голдсорсе.
Поиск там... в стиле Valve.
(mapname[0] == 'c' || mapname[0] == 't') && mapname[2] == 'a' && mapname[1] >= '0' && mapname[1] <= '5'
и
mapname[0] == 'o' && mapname[1] == 'f'
И что с этим делать? mpfilter я конечно добавлю, но делать костыль для HL и OF не сильно хочется. Можно попробовать расширить mpfilter, чтобы он считался за регулярку и для HL и OF добавлять это поле движком.
Энтити в расчёт не берутся.
Также запустил BrainBread на ксаше. В списке нашёл всего лишь одну карту! А их в игре много
Еще актуально?
Еще актуально?
Да
Этот мод не имеет mpfilter, но зато есть некорректно выставленный mpentity.
Сделал такую вещь. Если мод заявляет о себе как только мультиплеерном, то все его карты считаются за валидные.
4107bd4e0fdbf1a6b0f031739afa92ea7fc6754f
Эта карта режима "Capture the Briefcase (Захват чемодана)" её можно загрузить через консоль, а в меню её нет. Остальные карты видно в списке