Перейти к содержанию

Вис691

Управление проектами
  • Публикаций

    1 455
  • Пожертвование

    0.00 руб 
  • Зарегистрирован

  • Посещение

  • Победитель дней

    61

Вис691 стал победителем дня 16 июня 2020

Вис691 имел наиболее популярный контент!

Репутация

592 Очень добрый

Информация о Вис691

  • Звание
    Старожил
  • День рождения 19.08.1998

Контакты

  • Сайт
    https://www.youtube.com/user/zazaza691

Информация

  • Пол
    Мужчина
  • Город
    Москва

Посетители профиля

3 265 просмотров профиля
  1. Вис691

    GECK EXTENDER

    Не за что
  2. Вис691

    Процесс идёт

    Это не камень, это скорее призыв к тому, чтобы на это обратили внимание. Текст я читаю всегда, ибо иногда встречаются очепятки и пропущенные/лишние знаки препинания. Но вот на глаз определить тире или дефис передо мной (а Word оставляет и то, и то) не всегда получается. Да и про многоточия тоже иногда забывается. Ситуация реально неприятная выходит. Вроде и вычитываешь, и в игре пересматриваешь, но всё равно иногда проскакивают "пропуски". На днях, например, нашёл несколько тире в правилах крэпса, которые в игре уже не первый год лежат... Всё же проще избежать эту проблему изначально, мне кажется.
  3. Вис691

    Процесс идёт

    Всем привет! В прошлый раз я говорил, что забот у меня будет немало: работа, написание диплома и т.д. Что же, диплом я написал, защитил, образование получил и вновь поступил. На работе перешёл на полную рабочую неделю. В общем, дел и правда немало было. Но и немного ковырял мод, не без этого. Поэтому сегодня я хотел бы поднять две небольшие темы. Начнём с более интересной. Вы слышали про мод Book Menu Restored? С этой модификацией открывается возможность создавать полноценные книги, постеры и чертежи. И это только шаблоны! Можно придумать что-то своё, например карту. Лично меня этот релиз заинтересовал моментально, да и ребятам понравилось. Поэтому у нас в Каньоне будут книги. Надеюсь, не одна . Я потратил какое-то время на то, чтобы разобраться со шрифтами. Дело в том, что вы можете использовать любой шрифт, который есть в игре. Но! Вы также можете добавлять свои, если постараться... Во-первых, JIP добавляет дополнительные слоты. Но это не лучший вариант, т.к. неизвестно использовался ли этот слот в другом моде или нет. Шанс, конечно, невелик, но всё же. Я пошёл по другому пути. Я написал скрипт, который делает авто подмену шрифта при открытии нужной книги. А потом возвращает исходный. Схема довольно простая, но очень эффективная. И защищает от всевозможных конфликтов, что немаловажно. Кстати, для создания шрифта я использовал Oblivion Font Editor. Очень удобная вещь. К сожалению, не могу показать новый шрифт, ибо спойлеры, но могу показать картинку с ранними тестами, на которой представлены все стандартные шрифты. Жаль что, некоторые из них довольно кривые: Вторая тема связана с написанием диалогов. НЕ ИСПОЛЬЗУЙТЕ такие программы как Word и прочие, в которых встроено автоформатирование. Почему, спросите вы? Да, я соглашусь, что это очень удобно. Особенно когда можно выделить какие-то участки текста цветом или ещё как-то. Или посмотреть на ошибки, подсвечиваемые программой. Но вот уже сколько раз натыкался и всё ещё продолжаю натыкаться на то, что при копировании в GECK всё выглядит отлично, а в игре символы пропадают. Я вам сейчас 2 примера приведу. Сравните: – и -, … и ... И если с дефисом, превратившемся в тире, всё более-менее ясно, то различий во втором примере можно и не разглядеть сходу. А всё очень просто: первый символ - это один знак многоточия, а второй - это 3 точки. И конечно, в игре первый не поддерживается. И вот такие приколы меня, если честно, не радуют. Наверняка есть и другие примеры автозамен, на которые я ещё не наткнулся. В общем, надеюсь, мой посыл ясен - используйте другие редакторы текста или избавляйтесь от автозамен. А у вас были подобные случаи? Может, кто-то знает простое и изящное решение? Пишите комментарии, их я ещё проверяю . Не знаю, когда будет следующий пост и будет ли вообще... Всё-таки для постов нужна какая-то тема. Но посмотрим, я ещё не прощаюсь.
  4. Нет, ни разу не пользовался. Ну и интересные способы создания ярлыков вы используете. Достаточно просто в папке с игрой найти fose_loader.exe, нажать правой кнопкой мыши -> создать ярлык. Ну а потом ПКМ по созданному ярлыку и уже туда дописывайте -editor. На этом сайте должен быть самый обычный. Можно взять отсюда
  5. Обращайте внимание на ошибки - там же написано, что у вас какой-то "не такой" Geck.exe. Вероятно, нужен самый обыкновенный. Ну хотя бы скриншотик того, что в ярлык прописали. Я не могу из ниоткуда догадаться, что пошло не так Рискну предположить, что виной этому не Нексус...
  6. Ну там вроде сказано следующее: т.е. можно вручную папку FOSE закинуть в папку Data, слив содержимое. Сам ГЕКК уже должен быть установлен - это лишь плагин. Причём конфликтует с PowerUp. Запускать ГЕКК либо с поддержкой FOSE, либо в опциональных файлах лежит некий патчер, который всё сделает за вас. Если по первому пути пойдёте, то просто создаёте ярлык fose_loader.exe (не редактора!) и в графе объект допишите -editor (перед дефисом стоит пробел). Ну и запукайте ГЕКК через этот ярлык. P.S. Сам этот плагин не ставил, всю информацию чисто по описанию с нексуса привёл. Кроме создания ярлыка, это я и сам делал.
  7. https://geckwiki.com/index.php?title=Category:Functions
  8. Всем привет. Недавно ко мне обратился AllanMetropol18 с просьбой помочь ему с небольшим скриптом. Не раскрывая подробностей (да-да, кое-что готовится к релизу), скажу лишь, что есть набор предметов (пускай типа хлам) и у одного из НПС есть один из этих предметов в инвентаре. Для того чтобы было интереснее, будем считать, что какой из предметов конкретно попал к НПС, определялось случайным образом. Вопрос был предельно прост - можно ли в определённый момент времени (для простоты будем считать, что по завершению какого-нибудь квеста) передать этот предмет игроку? Т.к. НПС был ванильным, я предположил, что этот предмет добавляется в его инвентарь через какой-то скрипт. И, конечно, моя идея заключалась в том, чтобы найти этот скрипт, найти момент передачи и запомнить, какой из предметов был выбран рандомом. Затем, в нужный момент времени просто передаём наш запомненный предмет игроку. Звучит невероятно просто, не правда ли? Как выяснилось, существовала небольшая проблема - исходники всех скриптов были вырезаны автором мода... Несложно догадаться, что это несколько усложнило задачу. Что же делать. есть ли выход? Предлагаю вашему вниманию финальный фрагмент кода. Естественно, заработало всё не с первого раза, а т.к. тестами в игре занимался не я, то процесс немного затянулся. scn aaaCoolScriptName array_var aItems array_var Entry ref rItem begin GameMode let aItems := NPCRef.GetAllItemRefs 31 ; получить список предметов типа хлам в инвентаре НПС forEach Entry <- aItems ; цикл по всем объектам массива let rItem := Entry["value"] ; получить ref предмета if (rItem.IsInList ItemsList) ; проверить, что предмет есть в списке let rItem := rItem.gbo ; получить базовый объект NPCRef.RemoveItemTarget rItem Player 1 1 ; передать предмет игроку, сбросить владельца break ; выйти из цикла endif loop End В принципе, из комментариев должно быть всё понятно, но давайте всё же кратко пройдёмся по коду. Первым делом мы получаем список всех предметов из инвентаря НПС: let aItems := NPCRef.GetAllItemRefs 31 31 здесь задаёт тип возвращаемых предметов - в нашем случае хлам. Если ничего не указать, то вернётся массив из абсолютно всех предметов, которые есть у НПС. Подробнее про функцию и её параметры тут. Кстати, заметьте, что здесь мы собираем именно ref'ы предметов, а не их базовые объекты. Почему так, станет понятно позднее. Начинаем цикл, вытягиваем ref из массива. Тут всё стандартно. Если кому нужно подробнее, то идите сюда. А вот и причина использования ref'ов: if (rItem.IsInList ItemsList) Дело в том, что на базовых объектах данная функция отказывается работать, о чём можно понять по странице из вики. На самом деле есть альтернатива из плагина NX, которая сработает и с базовым объектом, но это лишняя зависимость, при том не самая популярная. У меня, например, этого плагина нет. А у вас? ItemsList - это form list из всех объектов, из которого и выбирается случайный. В моде он уже существовал, но создать его в случае необходимости несложно. Соответственно, мы проверяем, есть ли текущий предмет из инвентаря в этом списке. Если нет, то переходим к следующему предмету. Если да, то это и есть наш искомый, случайный предмет, который мы ищем. В таком случае мы находим его базовый объект через GBO (GetBaseObject) и передаём игроку: NPCRef.RemoveItemTarget rItem Player 1 1 Да, это JIP, но он-то уж наверняка у всех есть. Да и в моде наверняка идёт, как одно из требований. Однако никто не мешает разделить на 2 команды: NPCRef.removeItem и player.addItem. Тут уже выбирайте сами. После этого из цикла выходим через break - проверять остальные предметы нам не надо. Ну вот в общем-то и всё. Запихните этот скрипт туда. куда нужно и вы восхитительны. Точнее я восхитителен
  9. Вис691

    Новый год - новые цели!

    Всем привет! Опять я немного задержался с записью в блоге, увы. В любом случае, спешу поздравить всех уже с прошедшим, но ещё не забытым, Новым Годом! Желаю побольше крышек, верных компаньонов и красочных побед на пустошах. Ну а я, пожалуй, отчитаюсь за то, что было сделано, что не было сделано и что планируется сделать. В конце прошлой записи я пообещал всем закончить то, что давно хотел сделать. В принципе, я считаю, что обещание я выполнил. Мой квест выходит на финишную прямую - осталось добавить несколько деталей, концовку и украсить всё это различными мелочами для разнообразия. С одной стороны, осталось немного, с другой стороны - мелочи отнимут кучу времени, мне кажется. Ну и протестировать всё надо, но этим я стараюсь заниматься параллельно с разработкой. В этот раз не хочу давать никаких сроков, но, думаю, к следующей записи в августе многое уже будет сделано. Почему так медленно, раз осталось немного? Ах, на это есть всё те же 2 причины: работа и учёба. И если с первой всё более-менее ясно, то со второй пока что ничего не понятно. Дело в том, что следующий семестр является последним в бакалавриате, а значит придётся писать диплом. И мне бы хотелось написать его хорошо. А на это нужно время, причём много. Ибо даже когда знаешь, что писать, трудно придумать, как это написать. Но сейчас не об этом. Касаемо второй идеи, которая у меня зародилась, хотелось бы отметить следующее. Во-первых, я думал над ней, причём немало. У меня в голове зародилась концепция самого квеста, локации и контента. Думаю, что в скором времени я поделюсь этой идеей с остальными, и мы решим, что с ней делать. В принципе, я считаю, что работы там не очень много, основная проблема - это придумать историю. К сожалению, особых спойлеров дать не могу, скажу лишь, что там придётся работать головой и, возможно, бумагой с ручкой. В общем не всем зайдёт Напоследок хотел бы задать вам, читателям, вопрос. Помните The Pitt для Fallout 3? А точнее часть, где нужно было собирать стальные чушки? Для квеста было достаточно найти всего 10, но ведь их там было куда больше. Да что уж там говорить, находите больше, получаете больше наград! Лично мне очень понравилось бегать и искать эти самые чушки по всей локации. Особенно круто было то, что локация многоуровневая. Вопрос, собственно, вот в чём: понравилось ли вам и хотите ли вы чего-то подобного в Гранд-Каньоне? Опрос прикладываю, голосуйте. Думаю, если народ будет за, то мы сможем уговорить Магнума А на этом у меня всё. Ещё раз всех с праздником, отдохните на выходных! Встретимся в августе.
  10. Помощь бывает разная. Это моя школа, я тут учитель и максимум могу помочь советом или посмотреть на что-то готовое, но, возможно, неработающее. Писать что-то за кого-то я уже не хочу, да и не могу в связи с отсутствием времени. Если где-то уже есть подобный функционал, то предлагаю попытаться разобраться в нём. Хотя чтение чужого кода зачастую бывает непростой задачей, даже если ты в этом что-то понимаешь. Ну уж и грамотным скриптологом я себя точно не назову)
  11. Чтобы я мог хоть как-то помочь, нужно чуть подробнее рассказать про то, что готово и в каком оно виде. Так, я понимаю сами лучи и фонарь уже есть? Если да, то в каком это всё виде? Я с оружием никогда не работал, так что особого представления, как эти лучи и фонари работают у меня нет. С иконками и подавно не подскажу. Вроде там всё на альфа-канале завязано, но могу ошибаться. Навскидку нашёл вот такой краткий туториал.
  12. Спрашивай, если работать не будет - разберёмся)
  13. elseif Stage == 4 && (Player.GetDistance XRocketTestBaseLocation < 5000 || Player.GetDistance XRocketTestBaseLocationDC < 5000)
  14. Приходит ГГ в магазин, а там на полках/витринах пусто. Заходит к себе домой, расставляет предметы по локации, украшает полочки, а потом раз - и всё исчезает) В любом случае, задумку уловил, и вот, как бы я её реализовывал. Вначале нам нужно получить все объекты нужного типа. Сделать это можно при помощи GetRefs. На странице есть ссылка на коды различных типов, так что подобрать нужные не проблема. Чего я не знаю - это значение значения 201:Inventory Object. Есть шанс, что это прямо то, что нужно и охватывает прямо всё-всё-всё, но надо тестировать. Если нет, то придётся по очереди по каждому типу (оружие, броня, медикаменты - всё есть на странице) проходить. Также советую обратить внимание на "passing -1 will use the uGridsToLoad value from Fallout.ini to calculate this". Дальше идём по всем элементам массива через Foreach (опять же, на странице пример есть) и просто их disable, как уже верно было замечено. Можно проверок всяких добавить, например, на то, что предмет ещё не отключён (зачем нам один и тот же предмет мучить и отключать по миллиону раз?). Теперь куда это всё прицепить? Скрипты в воздухе висеть не могут. Самый очевидный вариант это загнать всё это дело в квест, и крутить, крутить, крутить с проверкой на изменение локации. Но это ужасный вариант, так делать не стоит. Тут нужно обратиться к Event'ам, а конкретно к OnCellEnter. Таким образом подсчёт будет происходить только во время смены ячейки, т.е. единожды. К сожалению, я не могу предсказать, насколько сильно подобная штука будет грузить игру, но в теории должно потянуть. Это был минимальный экскурс в направление, куда копать. Дальше всё зависит от текущих навыков, но если что всегда можно задать мне вопросы, показать нерабочий код и т.д. Удачи

×
×
  • Создать...