Sergey
Старейший
offline
Опыт:
44,363Активность: |
Переход с карты на карту с возвращением - новый метод
Только недавно заметил, что функции Save Game/Load Game, которые в более ранних версиях не работали, теперь могут быть использованы на любой карте. Более того, появились такие команды, как сохранение игры и ее загрузка, события При сохранении и При загрузке и т.п.
В принципе это открывает новые возможности по созданию игровых миров. При переходе с карты на карту, мы СОХРАНЯЕМ игру в спец. файл и грузим новую карту. При возвращении обратно, мы просто даем команду загрузить прежнюю игру. Теперь это стало возможным.
Естественно, без помощи кеша не обойтись. При переходе с карты на карту, героя нужно сохранять в кеш, а после загрузки - менять старого героя на нового. Но с другой стороны, такой способ загрузки дает достаточно интересные возможности. Например, все переменные и их значения сохраняются в целости. Если где-то был пройден квест - он и останется пройднным. Все предметы будут лежать на тех же местах и т.д. При помощи кеша тоже можно добиться аналогчных результатов, но сделать это намного тяжелее.
Один из недостатков, который я предвижу, связан с тем, что в игре во время прохождения пришется реплей. И если мы ходим с карты на карту при помощи сохранений, то реплей все увеличивается в размере и игра начинает тормозить, сохраняшки занимают все больше места и т.д.
Я не помню команду на jass, которая заставляет игру не писать реплей, но такая команда есть. Может быть Димон знает? |
02.12.2004, 09:48 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Sergey
Старейший
offline
Опыт:
44,363Активность: |
??? Зачем проверять в каждом триггере? Способ про который я говоря - это все равно что возродить сохраненную игру, но с изменившемся героем. На этом принципе, если я не ошибаюсь, сделана кампания за орков.
Понадобится всего один триггер, который будет перегружать героя при событии Load game. Что касается квестов, связывающих несколько карт, то параметры для них нужно передавать через кешь.
Естественно, без кеша в любом случае далеко не уедешь, но многие параметры карты такие как локальные квесты, значения переменных, положение юнитов и предметов, объектов типа destuctible,количество жизни у них, не нужно перегружать заново. У меня была наработка, которая делала это же при помощи кеша, но она была достаточно сложной в применении.
Ладно, будет время - сделаю пример. Отредактировано Sergey, 02.12.2004 в 14:52. |
02.12.2004, 14:45 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
zibada
offline
Опыт: отключен
|
на вц3ц дааавным-давно проскакивал туториал на эту тему... с самого выхода 1.13, когда эти функции разлочили. |
02.12.2004, 15:36 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Markiz
offline
Опыт:
11,432Активность: |
Код:
|
02.12.2004, 16:20 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
zibada
offline
Опыт: отключен
|
call DoNotSaveReplay()
Markiz, у тебя очепятка... |
02.12.2004, 17:20 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Sergey
Старейший
offline
Опыт:
44,363Активность: |
Благодарю. Попробую сделать пример. |
02.12.2004, 19:37 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Sergey
Старейший
offline
Опыт:
44,363Активность: |
Пример N1. Самый простой. Походу когда герой заходит в портал, загружается тот же самый сценарий, а герой при загрузке перемещается в другое место. Отредактировано Sergey, 03.12.2004 в 19:01. |
03.12.2004, 17:17 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Markiz
offline
Опыт:
11,432Активность: |
И где пример? :confused: |
03.12.2004, 18:33 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Sergey
Старейший
offline
Опыт:
44,363Активность: |
См сообщени выше. |
03.12.2004, 19:02 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Markiz
offline
Опыт:
11,432Активность: |
Последнее сообщение было ПОСЛЕ моего мессага :P |
03.12.2004, 19:48 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Sergey
Старейший
offline
Опыт:
44,363Активность: |
Само собой - позже. Вложение вставил и мессагу отправил. |
03.12.2004, 20:29 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Sergey
Старейший
offline
Опыт:
44,363Активность: |
Близзы как всегда схалтурили с новым методом =(. Сохранять и загружать сохранения можно, но работать будет только в пределах одной карты. И все по одной глупой причине - war3 создает отдельную папку для сохранений этой карты и работает только в пределах этой папки. А пзугрузить сохраняшки другой карты пока не вышло. Маразм какой-то. |
16.12.2004, 12:23 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|