-
Число публикаций
1 892 -
Регистрация
-
Последнее посещение
-
Дней в топе
15 -
AMKoin
17,047 [Подарить AMKoin]
Весь контент пользователя abramcumner
-
Редактирование движка X-Ray
abramcumner ответил на тему форума автора Rolan в Скрипты / конфиги / движок
space_restrictor.cpp. Ориентировочно строка 70. -
Редактирование движка X-Ray
abramcumner ответил на тему форума автора Rolan в Скрипты / конфиги / движок
@Winsor, попробуй вместо allocator::helper написать allocator::template helper в fixedmap.h(87). -
@Winsor, в исходниках нет подмены. Новая связка просто добавляется в список. А из-за использования неустойчивой сортировки может находится как оригинальная запись, так и новая добавленная. Сделай все-таки свой clsid. Никакого седа не нужно. У O_CLMBL всего одна секция.
-
@Winsor, O_CLMBL случайно не равен CLSID_OBJECT_CLIMABLE? Придумывай свои CLSID.
-
@Winsor, с этим ознакомился: Регистрация скриптовых классов с помощью object_factory?
-
Чтобы собрать all.spawn только лиманска, надо в секции levels game_levels.ltx оставить строчку только для лиманска. Тогда у тебя выполнятся этапы -m и -s. После этого надо будет соединить гейм.граф и алл.спавн. Это делается с помощью утилит из этой темы. Ну и все в сдк сделать тоже не сложно. Надо будет один раз разобрать локации из финалки и проделать на них -f, -g этапы. Может даже уже у кого-то есть готовые файлы.
-
, да. И не только кордон, а все локации, которые у тебя будут. Или собрать в храи только лиманск и присоединить его к остальным локациям c помощью асдс.
-
Эта ошибка говорит о том, что файл level.gct.raw не соответствует файлу level.graph Чуть выше в логе есть строка, что обрабатывался в это время кордон: level 1 l01_escape У тебя есть файлы level.gct.raw и level.graph в папке l01_escape? Если есть, то для него надо выполнить этапы -f, -g
-
Для храи пропустил этап -g.
-
@Silver Raven, и все-таки странно что у тебя не вывелись сообщения типа: Graph point %s not found (level changer %s) Cannot find a correspndance between graph and graph points from level editor! Rebuild graph for the level Им как раз самое место в твоем случае.
-
Выше в логе должны быть строчки, почему не понравился конкретный левел ченжер.
-
AI-Map в X-Ray: теория, практика, ошибки
abramcumner ответил на тему форума автора
HellRatz в SDK и маппинг
АИ-связь скорее всего есть, но где-то ему запрещено ходить его конфигом. Цифры - это поле Location у graph-point`ов в сдк. НПЦ и монстры могут передвигаться только по граф-поинтам, которые соотвествуют прописанному террейну в поле terrain конфига. Здесь по идее граф-поинт подходит. Но может быть путь проходил через вертекс который помечен как опасное место(второе число не 0).) Можно оставить поле пустым и программа сама рассчитает расстояние(как расстояние между двумя точками). Просто иногда это расстояние может оказаться слишком большим и мобы будут долго идти по этому пути. Если задать меньшее число, то оффлайновое перемещение будет гораздо быстрее. -
AI-Map в X-Ray: теория, практика, ошибки
abramcumner ответил на тему форума автора
HellRatz в SDK и маппинг
Это странно. У меня твой файл не открылся - не смог прочитать level_point`ы. Байт 350 не хватает. Может неправильно скачивается у меня? У тебя размер game.graph 11 369 299? Должно быть минимум 11 369 635. Graph Viewer тоже не открыл. В твоем гейм.графе вообще все левел-поинты прописаны с ошибкой. -
AI-Map в X-Ray: теория, практика, ошибки
abramcumner ответил на тему форума автора
HellRatz в SDK и маппинг
@BFG, попробуй программу из этого поста. Должна в том числе и удалять переходы. Ты же вроде в сдк спавн делаешь, гейм.граф и алл.спавн быстро же пересобираются. И задвоенная связь никак не повлияет на хождение мобов - будут пользоваться одной из них. -
Это явно была draft(черновая) компиляция. Размер файла у драфтовой компиляции и нормальной абсолютно одинаковый. Принято черновым вариантом называть сетку после компиляции с ключом draft. Все финалки конечно же скомпилены без него. Если под валидацией ты имеешь ввиду verify, то ее они тоже прошли. Там похоже не было ручного просмотра и правки кривых мест после автоматической генерации, но сетка собрана полностью и без ошибок.
-
Да, можно. Для игры черновая(draft) сетка от нормальной никак не отличается. Все должно собираться и запускаться. Если нет, возможно пропустил какие-то шаги или не все файлы скопировал. Ну и всегда хорошо лог прикладывать.
-
Это строчка равносильна такому: do local temp = my_cls() my_func(t, temp) end После вызова my_func временный объект удалится и в таблице будет ссылка на удаленный объект Здесь а будет жить до следующего end. И какое-то время его даже можно будет получить из таблицы. Если вывода нет - значит завис биндер. А биндер может зависнуть в том числе из-за неправильного вызова alife():release() И там и там хорошо бы тестовые примеры для чистого ТЧ.
-
Вроде обычный эффект - выход переменной из области видимости.Вот так тоже не должно работать: do local a = my_cls(); my_func( t, a ) end Можно конечно. При удалении удаляется только серверный объект, клиентский, из апдейта которого ты удаляешь, вполне себе еще жив. Он удалится только к следующему апдейту.Не срабатывать может из-за того, например, что перед удалением сохранили ссылку на серверный и пытаются с ней работать после удаления.
-
Система ALife. Логика поведения игровых объектов
abramcumner ответил на тему форума автора Allender в Скрипты / конфиги / движок
Да, она. Получает на входе сид и заполняет структуру для дальнейшего использования. Все правильно и хорошо сделано. -
Система ALife. Логика поведения игровых объектов
abramcumner ответил на тему форума автора Allender в Скрипты / конфиги / движок
@Dennis_Chikin, там же сид указывается, а не ид. ... local se_obj = sim:story_object(tonumber(t.v1)) if se_obj then t.npc_id = se_obj.id else t.npc_id = -1 ... -
Может быть всю локацию кроме этих флажков сдвинули вправо - вот они и уехали со своих мест. Или может это ошибка декомпиляции. Только СДК и может их корректно удалить, чтобы не было краха всего спавна. А надо ли это делать? Если они попали в гейм.граф, а значит прошли все проверки и работают ничуть ни хуже тех, к которым у тебя нет претензий. Можешь для проверки узнать левел-вертексы этих флажков и заспавнить по ним что-нибудь типа аптечки. А потом посмотреть где они заспавнятся. А то может и не надо ничего править.
-
log в X-Ray SDK - это обычный listbox
-
Курилка программистов
abramcumner ответил на тему форума автора Азраэль в Скрипты / конфиги / движок
Это полная перекомпиляция. Обычная гораздо быстрее, на уровне тех же 17 секунд. С++ не виноват в бардаке среди разных проектов. Все можно собирать в одной студии. C++ можно использовать и в xray-extesions. Экспортируешь нужные символы в с++, используешь метки и naked-функции. А линкеру неважно какие объектные файлы собирать, полученные из асма или с++. А еще можно баллистику вынести в отдельную статическую библиотеку и компиляция будет те же 17 секунд -
Не сделаешь - проигрывание партиклов аномалией без модификация движка не отслеживается. Но вообще Карлан говорит четко по делу и про биндер и про 3 объекта Слушай его. Вот в скрипте, где у тебя включается костер, добавь установку флажка в true, где выключается - в false. А когда хочешь узнать, горит ли костер, получай значение этого флажка. С большой вероятностью этот флажок в скрипте уже есть. А потому как раньше слушать умели, а сейчас все умничать стараются - типа "мы и сами с усами".
-
грамотно вошел в обсуждение
УЧИМСЯ МОДДИНГУ
ИГРАЕМ В МОДЫ НА ТЧ
ИГРАЕМ В МОДЫ НА ЧН И ЗП
- [ЧН] OGSM CS 1.8 CE Fixes
- [ЧН] HARDWARMOD 3.2
- [ЗП] The Long Road
- [ЧН] New vision of War
- [ЧН] Old Good Stalker Mod - Clear Sky
- [ЗП] Unofficial Patch
- [ЗП] Смерти вопреки
- [ЗП] Контракт на хорошую жизнь
- [ЗП] Shoker Weapon Mod 2.1
- [ЗП] Hardcore pack for SGM 2.2
- [ЗП] Контракт Синдиката
- [ЗП] Клондайк 2.0
- ...и другие моды
ПОЛЕЗНОЕ И РАЗНОЕ