Обучалка по созданию сложного апдейта в FM20

Автор Ohrim, 22 ноября 2019, 20:13:57

« назад - далее »

Ohrim

@Steff. не думаю, что самый сложный в истории - есть еще как минимум Бельгия и у каких-то южноамериканских стран были замудрёные правила. Но, пожалуй, самый сложный из тех, что я делал. Правда, не в последнюю очередь из-за ошибок СИ и багов редактора.
 
Перевод на инглиш... Май инглиш из нот соу гуд то маке э транслэйт оф ол зис щит) Да и времени эта затея потянет очень много (помимо текста нужно будет переделать больше 160-ти скриншотов). Когда-нибудь я, возможно, задумаюсь об этом, но мне кажется, что на форуме СИ и так есть немало информации по редактору, да и людей, которые гораздо лучше разбираются в апдейтоделании, там хватает.

Ohrim

 
 

 


Чтобы начать работу над молодежными лигами, сначала скопируем всю недостающую по ним информацию из дефолтных правил ("Правила для резервов" из раздела "Страна", два "Правила матча", а также три турнира). Первые две записи в "Резервные лиги" относятся к FMT/FMH и я не буду их менять. А вот две следующие записи как раз относятся к молодежным чемпионатам, которые будут использоваться в обычной версии игры. В них я только подправлю "Индекс правил встречи", но сначала мне нужно создать два пустых правила и скопировать в них информацию из дефолтных правил.
 


   

Спойлер


Теперь я создам три пустых правила в "Списке" и скопирую туда все данные по молодёжным турнирам из дефолтных правил.
 


Теперь нужно рассказать о том, какая структура молодёжных чемпионатов будет в нашем апдейте.
 


U21:
 


    [li]
       Сезон 2019/20 - 11 команд (все команды Д1, кроме дисквалифицированного Олимпика), формат такой же, как в Д1.
    [/li]
    [li]
       Сезон 2020/21 - 13-14 команд (все команды из Д1, кроме дисквалифицированного Олимпика, если он не вылетел в сезоне 2019/20). Формат как и в Д1 - простая лига в два круга.
    [/li]
    [li]
       Сезон 2021/22 и далее - 16 команд (все команды из Д1). Формат, как и в Д1 - простая лига в два круга.
    [/li]
    [/list]
     
    U19:
     

      [li]
         Сезон 2019/20 - 13 команд (все команды из Д1, кроме дисквалифицированного Олимпика + Волынь и МФК Металлург З из Д2). Формат - лига в два круга.
      [/li]
      [li]
         Сезон 2020/21 - 13-16 команд (все команды из Д1, кроме дисквалифицированного Олимпика, если он не вылетел в сезоне 2019/20 + например, те же Волынь и МФК Металлург З из Д2. Плавающее количество команд, потому что одна или обе команды из Д2 могут выйти в Д1 2020/21 и их команды Ю19 всё равно попадут в чемпионат). Формат - лига в два круга.
      [/li]
      [li]
         Сезон 2021/22 и далее - 16 (все команды из Д1). Формат - лига в два круга.
      [/li]
      [/list]
       
      В дефолтных правилах эта система реализована не совсем правильно - в Ю21 играет 11 или 12 команд, а в Ю19 - 12 или 14. Нам предстоит по сути сделать почти тоже самое, что мы делали при изменении формата Д1, есть только пара нюансов, которые я выделю.
       
      Прежде всего, нам нужно правильно отбирать команды в лигу. Если раньше для лиг мы просто брали все команды из дивизиона, а для кубков определённое количество команд из лиг, то теперь нам нужно НЕ брать определённую команду из лиги, еще и типа U21. На самом деле, это выглядит не так страшно, в редакторе есть возможность использовать любой способ отбора команды/команд, но с галочкой "Игнорировать команды", что даёт возможность проигнорировать эту команду(-ы) по тому же способу отбора. Именно так мы и запретим молодёжке одного из клубов Д1 участвовать в чемпе Ю21 в сезонах 2019/20 и 2020/21.
       


         

      Спойлер


       
       
      Формат турнира я поменял так же, как и в Д1. Даты матчей я не менял по сравнению с дефолтом, мне было откровенно лень, а Ю21 не настолько важный чемпионат, чтобы тратить на него много времени. Можно было заморочиться, скопировать календарь их Д1 и сдвигать его на один день назад, но... "И так сойдёт". (с) 
       


      Единственный минус такого оформления чемпионата Ю21 - не будет копироваться календарь Д1 со сдвигом на один день назад, как сделано в реальности. Но я уже неоднократно убеждался - 100% реалистичности апдейтом не добьёшься, лучше потратить время на что-то более важное.
       
      Дополнительные команды в Ю19 добавляются таким же способом, каким мы убирали команду из Ю21, только без галочки "Игнорировать команды".
       


         

      Спойлер


       
       
      Проверка правил показала, что всё сработало хорошо, а это значить, что со структурой мы предварительно более-менее разобрались.
       


         

      Спойлер


      В процессе игры могут выплыть какие-то баги, но, увы, на стадии выпуска апдейта все их определить невозможно. Я обычно тестирую апдейт в редакторе лет на 30-40, чтобы убедиться, что все сезоны за этот срок нормально отработают. Если позволяет время, бывает полезно прогнать апдейт в игре в режиме отпуска сезона 2-3. Лучших вариант, конечно, это полноценная игра на апдейте, но это сильно затянет процесс выпуска, поэтому, как не печально, будем тренироваться на кошках ждать обратной реакции от пользователей - несколько человек гораздо быстрее найдут неявные баги, чем один автор.
       


      После всех манипуляций с молодёжными чемпионатами я убрал плей-офф между Д1 и Д2 в сезонах 2019/20 и 2020/21, сделал очередную проверку всех правил, а потом - проверку турниров до 2060-го года. В процессе проверки турниров выяснилось, что я забыл прописать запрет на участие в плей-офф за повышение дублям, первые команды которых уже играют в дивизионе выше. Редактор в случае победы дубля в плей-офф не сможет пустить его в дивизион выше, т.к. в одной лиге нельзя играть основной команде и дублю, но и заменить дубль на проигравшую в плей-офф команду он не сможет, поэтому засунет в тот дивизион какую-нибудь команду из низших неиграбельных лиг. Запрет прописывается в "Продвижение/Вылет" в пункте "Могут ли невышедшие команды играть в высших раундах плей-офф?". 
       


         

      Спойлер


       
       
      Правда, стоит заметить, что это условие не всегда срабатывает на 100%, но даже в таких случаях редактор может более-менее нормально себя вести. Например, в одном из тестов произошла ситуация, когда из Д2 напрямую вылетела основная команда и редактор взял дубль в плей-офф между Д2 и Д3. Дубль победил и, по идее, должен был заменить основную команду в Д2, но, видимо, редактор решил, чтобы это может привести к множественным затруднениям, поэтому вместо Д2 отправил дубль в Д4 (основная команда-то уже вылетела в Д3 и дубль не может там играть), а в Д2 отправил команду, которая заняла следующее после дубля место в той же группе. Решение вполне в духе украинских футбольных чиновников.
       


      Еще один вариант, как избежать этой проблемы - просто запретить дублям выходить в Д2. Всё равно командам Д1 держать дубли нет особого смысла, ведь у них уже есть команды Ю21 и Ю19, а дубли команд Д2 могут играть не выше Д3. Да и уже несколько лет прошло с тех пор, как дубли играли в Д2. Так что, я в итоге решил запретить дублям выходить в Д2.
       


         

      Спойлер


       
       
      Тесты до 2060-го года прошли успешно (не обращайте внимания на наличие Нефтяника, ФК Полтава, всяких академий и ДЮСШ - это издержки чистой базы), что позволяет мне сказать - с чистой структурой мы закончили, пришло время немного поработать с самой базой (предварительно сохранив отдельную версию с чистой структурой лиг - может пригодиться для следующих ФМов).
       


         

      Спойлер


      Продолжение следует.


Ohrim

#17
 
 


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


Чтобы команды правильно распределялись по группам Д3 и Д4, нужно прописать всем командам страны региональные дивизионы. Это довольно большой объём работы и я стараюсь его делать уже после того, как я немного уменьшу количество команд в стране, избавившись от исчезнувших или ненужных команд. Каждая команда - это часть занимаемой игрой памяти и я на 100% уверен, что при игре 99,[9]% игроков не понадобятся дубли команд из неиграбельных Д7-Д8, да и команды из Д7-Д9 вообще. Даже просто пройдясь "по верхам" я убрал больше 120-ти клубов (это из 1468, что были активны в базе), а после небольшого углубления их число достигло 283 (почти 20% от изначального числа!). Если задаться целью еще сильнее облегчить базу, то можно еще больше уменьшить их количество, но я остановлюсь и на этом.
 


Теперь нужно прописать города тем клубам, у которых их нет, ведь дальше нам нужно будет фильтровать клубы по регионам.
 


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


   

Спойлер
Вы не можете просматривать это вложение.


Не буду расписывать, как именно я пришёл к этому варианту - просто взял карту страны и разделил на две части для Д3 и на три части - для Д4. Областям, находившимся на стыке разных частей, я решил прописать две группы, для большей вариативности.
 


После этого я в разделе базы "Клубы" с помощью фильтра отсеиваю клубы из каждого региона и выделяю их все (выделяю строку с первым клубом, а потом с нажатым Shift нажимаю на самую нижнюю строку).
 


   

Спойлер


 
 
После этого я нажимаю кнопку "Править" в правом нижнем углу окна и теперь могу вносить изменения сразу во все клубы региона одновременно. Иногда редактору требуется время на обработку таких изменений, но всё равно это гораздо быстрее, чем править каждый клуб отдельно (с ужасом вспоминаю те времена, когда массового редактирования региональных дивизионов еще не было).
 


Теперь я перехожу на строку "Региональный дивизион" в левом нижнем окне и с помощью кнопки "Добавить" и поиска прописываю региональные дивизионы сразу всем выделенным клубам. Небольшая хитрость - кнопку "Добавить" можно использовать только один раз, а дальше - кнопку "Дублировать", она обрабатывается редактором немного быстрее. Ну и в отличие от РП, в базе уровень дивизиона идет более привычно - самый высший уровень = 1.
 


   

Спойлер


 
 
Может возникнуть логичный вопрос: зачем работать с каждым регионом отдельно, если, судя по таблице, их можно компоновать сразу по несколько и прописывать одни и те же региональные дивизионы сразу 5-6 регионам? Ответ довольно простой: можно и компоновать, но в процессе добавления региональных дивизионов я просматриваю репутацию клубов низших лиг на предмет адекватности и если 50-60 клубов еще можно нормально осилить, то больше - уже сложнее, придётся потом еще раз проверять. Также я в процессе проверяю проф. статус клубов, потому что иногда в проф. лиги может затесаться клуб, которому забыли изменить любительский статус, и наоборот.
 


После этой не особо увлекательной процедуры наши команды должны адекватнее распределяться по группам Д3 и Д4 (ключевое слово - "должны", но не факт, что будут в 100% случаев).
 


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


  •    


          Репутации и бюджеты команд. Я всегда просматриваю и, если нужно, правлю репутацию клубов и их бюджеты. С момента выдачи базы СИшникам могла появиться новая информация, могут быть просто ошибки в ресёрче - всё это хорошо бы учесть.
       
    [/li]


  •    


          Всем командам (или хотя бы из играбельных лиг) я прописываю стадионы. Если стадион неизвестен - беру стадион из города команды.
       
    [/li]


  •    


          Если у меня есть время, то я правлю посещаемость клубов. Если в высших лигах зачастую ресёрчеры её периодически корректируют, то в низших лигах обычно творится закономерный ужас. Можно использовать разные варианты: делать таблицы, по которым высчитывать минимальную, среднюю и максимальную посещаемость; смотреть доступные статистические источники и т.д. Самый сложный, но самый шикарный вариант -

программа "Футбольные Чемпионаты". В ней можно вести кучу статистики, хоть она и начинает люто тормозить, когда в файле становится очень много игроков и матчей. Но её можно использовать, например, только для ведения статистики по посещаемости и стадионам и хранить там данные за несколько сезонов, что позволит вносить в базу более реалистичные данные. Но говорю сразу - это вариант больше для упоротых апдейтоделов-перфекционистов, которые попутно занимаются ресёрчем.
   
[/li]

  •    


          Смена стадионов командами. Если известно, что некоторые команды определённый сезон, часть сезона или некоторые турниры проводят не на своём стадионе, то это стоит отображать в "Стадионы" -> "Альтернативные стадионы".
       
    [/li]
    [/list]


       

    Спойлер


     
     


    •    


            Если есть хорошие знания о стоимости игроков и их примерных зарплатах, то можно отобразить эту информацию в %страна% -> "Трансферы и контракты" -> "Стоимость трансферов" и "Значения еженедельных зарплат".
         
      [/li]


    •    


            В некоторых турнирах есть ограничения на минимальный и максимальный размер поля. Их можно указать в %турнир% -> "Минимальная длина поля"/"Максимальная длина поля"/"Минимальная ширина поля"/"Максимальная ширина поля". Например, в нашем апдейте в Д1 по регламенту должны быть фиксированные размеры поля 105х68 м.
         
      [/li]



       

    Спойлер


      [li]
         В строке %турнир% -> "Политика работы со СМИ" можно указать обязательность пред- и послематчевых пресс-конференций и кто в них должен принимать участие. Даёшь еще больше реализма!
      [/li]
      [/list]


         

      Спойлер


       
       
      На этом всё, спасибо за внимание! Надеюсь, хоть кому-то эта простыня текста и картинок пригодится)


    Steff.

    Цитата: Ohrim от 11 декабря 2019, 16:02:04На этом всё, спасибо за внимание! Надеюсь, хоть кому-то эта простыня текста и картинок пригодится)
       


    Обязательно пригодится. Претендент на историю года
     
    Означает ли конец триллера то, что апдейт уже близок к завершению?

    Ohrim

    @Steff. да, близок, но еще нужно кое-что допилить. Скрестив пальцы на руках и ногах думаю о завтрашнем дне (но я ничего не обещал, если что )

    BarsAziat

    Самый классный мануал который я когда либо читал!!! 

    BarsAziat

    Всех с наступающим... На счет не добавления записи в историю, можно попробовать уровни рейтинга проверить (на континентальных правилах, зачастую из-за неправильных уровней рейтинга не добавлялось у меня запись в историю... Если это не поможет то я не знаю, и если скажете буду рад! 
     
    На одном из своих апдейтов по Кыргызстану тоже не могу понять почему на Д4 в родительский турнир (там у меня плей офф на повышение) не добавляется история, что примечательно в родительский турнир Д3 добавляется история при аналогичных настройках. У меня в Д3 два региона а в Д4 четыре региона, но настройки аналогичны (я продублировал все из Д3 и причесал их  под Д4 чтоб выходили в соответствующие уровни)
     
    PS в Кыргызстане нет Д3 и Д4 - это мой личный фэнтези дивизион с имбовыми игроками из Кыргызстана... 
     
    PS №2 )) Допилил на 19 Эдиторе Континентальные кубки Азии с добавлением суперкубка Азии и Кубка президента АФК...
     
    Посоветуйте пожалуйста, стоит ли закидывать сюда Азию (актуальность все таки не та уже)  

    Ohrim

    #22
    Цитата: BarsAziat от 21 декабря 2019, 18:56:30стоит ли закидывать сюда Азию (актуальность все таки не та уже)
       


    Стоит, потому что часть людей вполне себе играет в ФМ19.
     
     
     
    П.С. Остальное вынес в отдельную тему.

    siborg

    @Ohrim  Аплодирую стоя. Это просто Мегамануал, который должен войти в Золотой фонд. Спасибо, друг, за такую серьезную работу, надо покумекать, как это оставить на века.

    BarsAziat

    #24
    Нашел таки способ решить проблему с добавлением записи в историю!
     
    Видимо когда есть более 2 раундов, игра не может обрабатывать 2 разных действия (повышать и добавлять историю)
     
    У меня был грандфинал между 4 победителями дочерних региональных турниров, они с полуфинала повышались каждая в свою региональную зону ( у меня в д4  регионов четыре, а в д3 два региона, вылетают и поднимаются в соответствующие регионалки) а дальше разыгрывали места, так вот  я решил попробовать в две стадии провести этот грандфинал, с первой стадии команды повышаются (у меня она нулевая), на второй стадии команды разыгрывают места и соответственно запись в историю берется данной стадии (у меня это первая)...
     
    Одним словом чтоб появилась история просто нужно разделить стадию истории от стадии повышения... 
     
    В итоге запись в истории появилась, команды нормально повысились   
     
    На всякий напишу чтоб заново полуфинал не разыгрывали можно просто с плей офф за выход отправлять победителей в финал, а проигравших на матч за 3 место 

    Ohrim

    @BarsAziat у меня только один раунд. Я беру двух победителей групп (которые уже повысились по правилам дочерних дивизионов) и провожу между ними матч за чемпионство. Но с рейтингами еще нужно пошаманить, да. Просто это не очень принципиальный момент, поэтому я пока не заморачивался.

    AsGardiel

    @Ohrim как известно, в Испании действует модель с "В" и "С" командами. Почти во всех апдейтах на терсеру, которые я видел, при повышении третьей команды, "В" и "С" оказываются в одном дивизионе, чего ИРЛ быть не может. Каким образом это можно исправить?
     
    П.С. Существует апдейт, в котором третьи команды прописаны одновременно как команда "В" по отношению ко вторым командам и как команда "С" по отношению к первым. Работает не слишком корректно - команда "С" периодически становится пустой.

    Ohrim

    #27
    @AsGardiel единственный работающий способ, который я знаю - прописывание команд B и С в качестве резервных прямо в основной команде (например, как у фарерских или эстонских клубов). Но такой вариант не подходит для Испании + он очень неудобный, когда В и С клубы уже есть в базе. Так что, из известных мне вариантов, для Испании наиболее оптимальный (но, увы, не идеальный) - это прописывание сотрудничества клубов С и клубов В.

    xalks28

    #28
    Здравствуйте! Столкнулся со следующей проблемой. Делал Россию до Д5 на свое усмотрение касательно кол-ва клубов в лигах, ну и соответственно не особо парился кто и где будет играть. Проблема следующая. В низших лигах д4-5 каждый сезон меняется количество команд, некоторые просто переносятся в другую зону на уровне этого дивизиона, хотя везде прописано минимальное и максимальное количество команд.  Что с этим делать? И ещё, более интересующий меня вопрос. Как сделать так, чтобы клубы, победившие в кубке России попадали в евро кубки? Вроде и через меню особых условий все сделал, и через вспомогательные правила, а все одно - не помогает. Буду благодарен за помощь. 

    Ohrim

    Цитата: xalks28 от 29 июня 2020, 00:24:17Что с этим делать?
       


    Прописывать региональные дивизионы.
     
     
    Цитата: xalks28 от 29 июня 2020, 00:24:17Как сделать так, чтобы клубы, победившие в кубке России попадали в евро кубки?
       


    Кроме пункта "основной кубок" там никаких особых настроек нет, насколько я помню (может быть еще выбирается кто выходит в ЕК - только победитель или и финалист может). Могу посоветовать посмотреть, как сделано в каком-нибудь другом апдейте России и сделать так же.

    🡱 🡳