dsh 3 824 Опубликовано 1 Сентября 2016 @Serge!, судя по названиям, ссылки перепутаны. dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 25 Сентября 2016 Народ, вчера наступил на граблю, которая лежит в m_netpk, что тут публиковали. Имейте ввиду. Вот проблемная строка str = str:trim( str:gsub(";.-\n", "\n") ) --/ cleanup comments, symbol ';' is denied in sections names and keys/values! Грабля в том, что комментарии не удалялись. В результате, m_netpk превращает вот такую кастомную дату ;[logic] cfg = scripts\gar_dm_novice.ltx [smart_terrains] gar_dram = {-gar_dm_novice_change_st} esc2_bandit_les = {+gar_dm_novice_change_st} вот в такую [logic] cfg = scripts\gar_dm_novice.ltx [smart_terrains] gar_dram = {-gar_dm_novice_change_st} esc2_bandit_les = {+gar_dm_novice_change_st} Что бы исправить, эту строчку нужно заменить на str = str:gsub(";.-\n", "\n"):trim() --/ cleanup comments, symbol ';' is denied in sections names and keys/values! 2 2 dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 18 Октября 2016 Так у меня ничего нет. Это единственное исправление было. У меня только переработанные подсистемы из OGSE: универсальное хранилище, таймеры, менеджер сигналов. Подумывал пару раз изолировать их и выложить, да все руки не доходят. 1 dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 19 Октября 2016 Бетатест идет уже давно, до сих пор никаких глюков Безотносительно к ОП 2.1, процитированная фраза не говорит ни о чем. Та ошибка, на которую наступил я, существовала очень давно и "никаких глюков" тоже не было. Просто, в качестве примечания. dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 19 Октября 2016 (изменено) Мой пост был не о том, когда исправили, а когда нет. А о том, что утверждения вида "никаких глюков" и "бетатест длится долго" никак друг с другом не связаны. Просто второе не означает, автоматически, первое. Изменено 19 Октября 2016 пользователем dsh 1 dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 30 Октября 2016 Правки других авторов, проскальзывавшие в этой или других темах в разное время, взяты в полной мере. Не исправлена проблема с комментариями в custom_data. Взял исправления не проверив и сейчас опять получил этой же граблей по лбу. 1 dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 10 Мая 2017 @Graff46,соглашусь. m_netpk работает. Я использовал и m_net_utils и еще какой-то скрипт от xstream. В принципе все работают. Сейчас использую m_netpk. Единственное, если ты иногда захочешь в custom data писать данные не в формате ini, то m_netpk на это не рассчитан. Но в этом случае я бы посоветовал пересмотреть свои желания. dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 10 Мая 2017 По моим ощущениям, m_netpk сделан, как минимум, с учетом скрипта от xstream. Много похожего. dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 10 Мая 2017 (изменено) такой форсированный режим добавить не сложно Я не говорю, что сложно. Просто человеку, который только собирается использовать m_netpk, лучше об этом знать заранее, а то захочет прочитать custom data, в которой данные не в формате ini, и будет голову ломать, чего же ему :getString() возвращает пустую строку. Изменено 10 Мая 2017 пользователем dsh dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 10 Мая 2017 @Graff46, в совершенно любом. К примеру, в соляночных (в старой солянке) контейнерах артефактов все данные хранятся одной строкой. Просто строкой, секции артефактов через запятую. dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 10 Мая 2017 @Graff46, вопрос не понятен. Что если логика? dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 11 Мая 2017 @Kirgudu, это не то. Когда я писал, то имел ввиду, что для некоторых случаев может понадобиться доступ к сырой строке. Ну вот как в моем примере, все в ini, а для контейнеров используется свой формат. Эта же опция переключает поведение глобально. По хорошему, там бы добавить методы :getStringRaw() и :setStringRaw() или что-то вроде того. dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 11 Мая 2017 @Kirgudu, да, что-то такое мне и виделось. Другой вариант, это хранить в свойствах сырую строку и в нетпакет всегда записывать ее, а getString() и getTable() бы ее парсили налету и возвращали бы результат, как это есть сейчас. setString() и setTable() бы делали обратную операцию и меняли бы сохраненную сырую строку. Этот вариант мне кажется хоть и более красивым, но более сложным, а значит и более вероятно появление новых граблей, по которым кому-то придется пройти и исправить. Т.ч. я за более простой вариант. dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 11 Мая 2017 @Kirgudu, выглядит вроде нормально, только я бы вместо вот этого изменения - pk:w_stringZ(val:getString()) --/< from helpers + if val:useStringRaw() then + pk:w_stringZ(val:getStringRaw()) --/< from helpers + else + pk:w_stringZ(val:getString()) --/< from helpers + end эту проверку бы делал в getString() function custom_data:getString() return self:useStringRaw() and self:getStringRaw() or _fill_custom_data(self.data) --/> end Мне кажется, что это внутреннее дело custom_data и другим знать об этом не обязательно. dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 11 Мая 2017 он должен делать это и впредь Так он и продолжит так делать, пока этот кто-то, сознательно, не установит соотв. флаг. Проверь по возможности в игре Проверю, но только искусственно, в синтетических ситуациях. В самом моде использовать не буду. Мне хватило пробежки по граблям в прошлый раз. Лучше я эту штуку больше трогать не буду. dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 12 Мая 2017 @Kirgudu, по тестировал немного на контейнере с артефактом и на соляночном Акиме. Проблем не заметил, в обоих режимах работает. dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 3 Июня 2017 (изменено) Нашел ошибку в m_netpk. Долго голову ломал, что за чудеса у меня иногда случаются, а оно вон где. Вот исправление: https://github.com/dsh2dsh/op2ogse/commit/87463b600f2cbd3d33677b08d1cfa15d5167811a По диффу все понятно, я думаю. Посмотрите в соседнюю _w_uCTime. И потоптавшись по этой ошибке я пришел к выводу, что нетпакеты смартов лучше не трогать. Там из-за того, что делается в :STATE_Read(), твориться жуть что. Изменено 3 Июня 2017 пользователем dsh 1 dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 18 Августа 2017 @UnLoaded ты не обратил внимания, что там self.cb_netpk, а не self:cb_netpk, т.е. обращение к полю, а не вызов метода. В это поле содержится указатель на функцию, которая не имеет никакого отношения к этому классу. И этой функции передается объект и пакет, с которыми ей нужно что-то сделать. dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 5 Октября 2017 @Graff46 почему Z, Y же? Вокруг вертикальной оси вращать нужно, т.е. в горизонтальной плоскости? 1 dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение
dsh 3 824 Опубликовано 24 Января 2018 Жуткий велосипед. Полезнее xr_logic.script научить распарсивать полные имена функций, с учетом имени скрипта. Я бы показал это, но у меня нет этого в виде отдельного изменения. А так, тут можно посмотреть, например https://github.com/dsh2dsh/op2ogse/blob/master/gamedata/scripts/xr/xr_logic.script 1 dsh mod: https://github.com/dsh2dsh/op2ogse Поделиться этим сообщением Ссылка на сообщение