Случайная подборка модов
Путь в Припять
3.8
Nature Winter v2.0 «Квантовый скачок»
4.0
Oblivion Lost Remake 2.0
4.1
The Second Sun
2.9
История Борова
3.6
Время перемен v2.0
4.1
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Модератор форума: FanG, Аdmin, FantomICW, Overfirst  
[CoP] Модострой: вопросница
Российская Федерация  Overfirst
Воскресенье, 31.12.2017, 13:17 | Сообщение # 1
Статус:
Бывалый:
Сообщений: 1081
Награды: 19
Регистрация: 11.06.2015

[CoP] Модострой: вопросница

Тема посвящена моддингу на платформе Зов Припяти.

Соседние темы: Тень Чернобыля / Чистое небо.


  • Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском по разделу, ответ на него, вероятно, уже есть.

  • Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода.

  • Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа).

  • Благодарность выражаем в личке или же ставим плюсик в историю репутации. Подобные посты будут удаляться.
  •   Злобная реклама
    Воскресенье, 31.12.2017, 13:17
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Российская Федерация  Policai
    Вторник, 12.06.2018, 17:01 | Сообщение # 1141
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    Да всё перепроверил уже по многу раз, и сравнивал с другими локами, ничего не могут понять. Счас докомпилится лока ещё одна, исправлял геометрию, попробую войти на неё с другова входа не трогая первый, может это что даст... или закоментить автосейв на ней, мне что то кажется в нём косяк....
      Злобная реклама
    Вторник, 12.06.2018, 17:01
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  denis2000
    Вторник, 12.06.2018, 17:07 | Сообщение # 1142
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Цитата buffy ()
    т.к. если n<=0

    1. Это оригинальная проверка GSC.
    2. А функция line_count возвращает число меньше нуля?


    Цитата Policai ()
    ничего не могут понять

    Значит стоит все подробно рассказать.
    Сообщение отредактировал denis2000 - Вторник, 12.06.2018, 17:08
      Злобная реклама
    Вторник, 12.06.2018, 17:07
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  atanda
    Вторник, 12.06.2018, 17:11 | Сообщение # 1143
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 7
    Регистрация: 12.07.2017

    denis2000
    Неа, вот оригинал:

    Цитата denis2000 ()
    А функция line_count возвращает число меньше нуля?

    Да не учёл этот момент, но ведь ноль она может вернуть dry тем более функция предполагает, что в секции стартового положения будет что-то написано dry
      Злобная реклама
    Вторник, 12.06.2018, 17:11
    Статус:
    Сообщений: 666
    Регистрация: 12.07.2017
    Российская Федерация  denis2000
    Вторник, 12.06.2018, 17:12 | Сообщение # 1144
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Цитата buffy ()
    Неа, вот оригинал

    Может быть, давно это было, а меня память по Эббингаузу работает.
    Цитата buffy ()
    Да не учёл этот момент, но ведь ноль она может вернуть

    Так нулевое значение и отсекается или не так?
    Сообщение отредактировал denis2000 - Вторник, 12.06.2018, 17:17
      Злобная реклама
    Вторник, 12.06.2018, 17:12
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  atanda
    Вторник, 12.06.2018, 17:21 | Сообщение # 1145
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 7
    Регистрация: 12.07.2017

    Цитата denis2000 ()
    Так нулевое значение и отсекается или не так?

    Вы внимательно прочитали то, что я вам выше написал? В оригинале той проверки нет, ведь она там не нужна т.к. будет нелогичный промежуток (0;-1) и цикл не запустится(возможно, я какие-то детали упускаю, но про это ещё на уроках информатики говорили happy ). Если что, вот логичный промежуток: (-1;0) smile
      Злобная реклама
    Вторник, 12.06.2018, 17:21
    Статус:
    Сообщений: 666
    Регистрация: 12.07.2017
    Российская Федерация  denis2000
    Вторник, 12.06.2018, 17:31 | Сообщение # 1146
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Цитата buffy ()
    ведь она там не нужна т.к. будет нелогичный промежуток (0;-1) и цикл не запустится

    Это точно? Я могу ошибаться но некорректный интервал скорее приведет к вылету нежели к незапуску цикла.
    Если правы вы, то это, всего лишь, дополнительная проверка для устойчивости кода к кривым рукам заселяющего, которая в итоге ничего не решает, если прав, я то эта проверка уменьшает количество возможных вылетов ровно на 1.
    В обоих случаях эта проверка не ухудшает работоспособность кода.
    Сообщение отредактировал denis2000 - Вторник, 12.06.2018, 17:53
      Злобная реклама
    Вторник, 12.06.2018, 17:31
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  atanda
    Вторник, 12.06.2018, 17:59 | Сообщение # 1147
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 7
    Регистрация: 12.07.2017

    Цитата denis2000 ()
    но некорректный интервал скорее приведет к вылету

    Только что в интерпретаторе луа проверил - работает без ошибок.

    Добавлено (12.06.2018, 17:59)
    ---------------------------------------------

    Цитата denis2000 ()
    В обоих случаях эта проверка не ухудшает работоспособность кода.

    Я это как критику привёл.
      Злобная реклама
    Вторник, 12.06.2018, 17:59
    Статус:
    Сообщений: 666
    Регистрация: 12.07.2017
    Российская Федерация  denis2000
    Вторник, 12.06.2018, 18:08 | Сообщение # 1148
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Цитата buffy ()
    ...проверил - работает без ошибок... Я это как критику привёл.

    Большое спасибо.
      Злобная реклама
    Вторник, 12.06.2018, 18:08
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  Policai
    Вторник, 12.06.2018, 18:36 | Сообщение # 1149
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    denis2000, buffy,
    Ситуация такая, перепробовал всё что знал, не запускается работа смартов на локах которые не относятся к оригиналу сталкера. На данный момент это тёмная лощина, очистные и мёртвый город, с отдельным олспавном на каждую из этих лок всё работает а в общем олспавне ни вкакую.... на остальных локах нет проблем, всё работает на ура... Какие варианты? куда копать?
    Учитывайте плиз что я чайник, и куда надо ставить запятую а где убирать я просто не знаю.... все познания на общих основаниях и на логической интуиции.... сидеть и изучать просто нет времени...
      Злобная реклама
    Вторник, 12.06.2018, 18:36
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  atanda
    Вторник, 12.06.2018, 18:57 | Сообщение # 1150
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 7
    Регистрация: 12.07.2017

    Цитата Policai ()
    запускается работа смартов на локах

    Именно работа, а сквады спавнятся? Попробуй на амк спросить, у меня нет догадок.
      Злобная реклама
    Вторник, 12.06.2018, 18:57
    Статус:
    Сообщений: 666
    Регистрация: 12.07.2017
    Российская Федерация  Policai
    Вторник, 12.06.2018, 19:02 | Сообщение # 1151
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    buffy,

    В том то и дело спавнится весь обычный спавн, аномалии. летающие аномалии и т.д..... нет живности. ни НПС ни монстров.... сквады не запускаются, я так предпологаю не запускаются они так как не запускается работа смартов. Конфиги исключаю так как по отдельности локи все работает и не вылетает ничего и нигде. а в общем спавне глухо, и вылетов нету просто лока без заселения... и именно те что не оригинал сталкера...
    Сообщение отредактировал Policai - Вторник, 12.06.2018, 19:03
      Злобная реклама
    Вторник, 12.06.2018, 19:02
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  svo6o9a
    Вторник, 12.06.2018, 19:22 | Сообщение # 1152
    Статус:
    Новичок:
    Сообщений: 236
    Награды: 2
    Регистрация: 19.11.2017

    Как выдать квест при взятие предмета? Т.к прошлую проблему не решил, думаю будет легче сделать новый квест.
      Злобная реклама
    Вторник, 12.06.2018, 19:22
    Статус:
    Сообщений: 666
    Регистрация: 19.11.2017
    Российская Федерация  Policai
    Вторник, 12.06.2018, 19:23 | Сообщение # 1153
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    Цитата denis2000 ()
    Посмотрите здесь: КМБ Урок 63


    Помогло. Усё заработало, только понять бы теперь смысл этого исправления, локации не стартовые, до них проходишь через другие, на них всё работает без проблем...
      Злобная реклама
    Вторник, 12.06.2018, 19:23
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  atanda
    Вторник, 12.06.2018, 19:42 | Сообщение # 1154
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 7
    Регистрация: 12.07.2017

    Policai, мне бы тоже biggrin
      Злобная реклама
    Вторник, 12.06.2018, 19:42
    Статус:
    Сообщений: 666
    Регистрация: 12.07.2017
    Российская Федерация  denis2000
    Вторник, 12.06.2018, 21:14 | Сообщение # 1155
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Policai, buffy, Вся проблема в оригинальном скрипте (sim_board.script fill_start_position). Этот срипт выполняется в начале новой игры и заселяет все локации. Дело в том, что список локаций берется из таблицы game_graph():levels(), но если в файле simulation.ltx вдруг будет отсутствовать хоть одна секция локации скрипт прервет заселение и бросит все на полдороги:
    Код
    if not setting_ini:section_exist(section_name) then
       return
      end

    В итоге и получается такая ситуация с недозаселенными локациями (точнее с незаполенными стартовыми позициями на некоторых локациях, а именно на тех которые были в таблице дальше сбойной). Мой вариант не прерывает процесс, а продолжает заселять дальше, только и всего. Обратите внимание на обилие "мусорных секций" в файле simulation.ltx. Интересно, что в таблице встречаются даже давно вырезанные тестовые локи типа stohe_selo, откуда они там и почему я не разбирался (возможно они там селятся из-за мусора в конфигах game_levels.ltx и game_maps_single.ltx которые задействованы при сборке геймграфа), просто подправил скрипт.
    Сообщение отредактировал denis2000 - Вторник, 12.06.2018, 21:26
      Злобная реклама
    Вторник, 12.06.2018, 21:14
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Поиск: