PDA

Просмотр полной версии : Возврат хода без релоуда



Линник
10.10.2006, 02:14
О проблемах с долгой загрузкой сейва рассказывать никому не надо.

Особенно это напрягает, когда случайно двинул не тот юнит или не на ту клетку. Всего то и нужно вернуть этот ход. А сейв весом под метр...

Для удобства назовем этот ход микроходом, чтобы не путать с ходами игры в целом.

Судя по широчайшим возможностям конструирования игры кажется возможным сделать такой довесок к игре, чтобы возвращать микроходы в текущем ходу. Т.е. идет запись микроходов в ОЗУ, а на следующем ходу эта запись обнуляется и т.д. Как в шахматных симуляторах: там же и запрет возврата хода при турнирных играх на рейтинг, а тут - игра без читов.

Ваше мнение, коллеги?

Тактик
10.10.2006, 09:56
Я мало что скажу относительно возможности создания подобной утилиты - но вот по ценности - просто на УРА.

В разы бы увеличило интерес игры особенно на больших картах..

Blacksun
10.10.2006, 11:30
Опять мне работу нашли... :(

Dynamic
10.10.2006, 12:50
Предполагается откатывать только ходы? А как быть с Дипломатией, настройками городов, апгрейдами...

NeverMind
10.10.2006, 13:06
Я уже представляю, как можно использовать эту "фичу". Например, скаут будет проверять все направления за один ход. Без всяких перезагрузок. :D

Вообще, было бы интересно. Даже civ-революционно, с технической точки зрения. Blacksun, думаешь, это в принципе осуществимо?

Линник
10.10.2006, 13:17
<div class='quotetop'>Цитата(Blacksun * 10.10.2006, 10:30) 128186</div>

Опять мне работу нашли... :(
[/b]
:pray:

<div class='quotetop'>Цитата(Dynamic * 10.10.2006, 11:50) 128221</div>

Предполагается откатывать только ходы? А как быть с Дипломатией, настройками городов, апгрейдами...
[/b]
Да - микроходы, или точнее: движение юнитов. Начнем с простейшего?

Ошибка в дипломатии, на мой взгляд редко происходит, а микроменджмент отражается на следующем ходу. Апгрейды? Ну-у, это лишнее :shy2: ...

з.ы. Представляю монолог Задорнова:
А у русских как? Все на халяву. Лежишь на печи, а щука в паре с золотой рыбкой пашут... К примеру вот русские цивфанатики кнопку придумали... их-фанатики только затылки чешут.

pioner
10.10.2006, 15:21
<div class='quotetop'>Цитата(NeverMind * 10.10.2006, 12:06) 128224</div>

Я уже представляю, как можно использовать эту "фичу". Например, скаут будет проверять все направления за один ход. Без всяких перезагрузок. :D


[/b]
Полностью поддерживаю!!!!

strateg
10.10.2006, 15:36
Похоже на читерскую программу.

Линник
10.10.2006, 15:42
<div class='quotetop'>Цитата(strateg * 10.10.2006, 14:36) 128280</div>

Похоже на читерскую программу.
[/b]
А релоуд - разрешенное читерство! Упрощаем и ускоряем.

Blacksun! Я уже название утилиты придумал:
РУССКИЙ ПРИВОД?

strateg
10.10.2006, 15:48
Релоуд можно отследить (вроде), а её (программу) навряд ли.

Тактик
10.10.2006, 15:55
<div class='quotetop'>Цитата</div>
Релоуд можно отследить (вроде), а её (программу) навряд ли.[/b]
Тогда сделать так, чтобы не работала в режиме NO CHEAT.

Тогда приятное полезное удовольствие не покусится на священные турниры.

На ум приходят ассоциации c Word - функции Отменить и Вернуть.

Линник
10.10.2006, 16:03
<div class='quotetop'>Цитата(Тактик * 10.10.2006, 14:55) 128289</div>

<div class='quotetop'>Цитата
Релоуд можно отследить (вроде), а её (программу) навряд ли.[/b]
Тогда сделать так, чтобы не работала в режиме NO CHEAT.

Тогда приятное полезное удовольствие не покусится на священные турниры.

На ум приходят ассоциации c Word - функции Отменить и Вернуть.
[/b][/quote]
:yes: :yes: :yes:

strateg
10.10.2006, 16:44
Тады согласен. :yes:

Тактик
10.10.2006, 18:34
Ну раз все согласны, дело почти за малым..

<div class='quotetop'>Цитата(Blacksun * 10.10.2006, 11:30) 128186</div>

Опять мне работу нашли... :(
[/b]
:pray:

Blacksun
10.10.2006, 20:04
Хитрость вся заключается в том, что для юнитов используется динамическая область памяти. Когда юнита убивают - память освобождается, а блок памяти при этом может переместиться в другое место, и старые указатели на блок памяти могут не работать. Это что касается внешней утилиты. В СДК это сделать проще, но опять же, надо будет восстанавливать "затемненные области", при атаке - здоровье юнитов (или самих юнитов). Значит надо будет все то запоминать. А если запоминать, то скорость игры - упадет (особенно если слабый компьютер). (Правда при этом не надо отслеживать АИ юнитов, ведь для них не нужно делать возврат хода, поэтому и скорость игры может упасть не намного.) Если кто еще знает про технические проблемы (что востанавливать надо), пишите... Так что первый вариант все равно будет на СДК... (т.е. с изменением библиотеки CvGameCoreDLL.dll). Пойдет ?

swan
11.10.2006, 11:46
<div class='quotetop'>Цитата</div>
Пойдет ?[/b]
Только как мод можно ставить - иначе будет совсем фигня - да и под турнирами если запуск как мод можно будет нормально сделать. Т.е. в турнирах она работать не будет

Тактик
12.10.2006, 11:24
<div class='quotetop'>Цитата(swan * 11.10.2006, 11:46) 128477</div>

<div class='quotetop'>Цитата
Пойдет ?[/b]
Только как мод можно ставить - иначе будет совсем фигня - да и под турнирами если запуск как мод можно будет нормально сделать. Т.е. в турнирах она работать не будет
[/b][/quote]
Мод? А нельзя как патч, скажем, или отдельный компонент в игре.

Например, реализовывались ведь в различных модифициях подобные аналогии (например, функция наемников или конгрессов), которые отсутствует в ваниле.

Линник
06.12.2006, 20:51
<div class='quotetop'>Цитата(Dynamic * 5.12.2006, 19:14) 143358</div>

НОF-мод использует дополнительные средства контроля за переигровками. Отслеживается каждое движение юнитом (дипломатию и т.д. не проверял). Ведется статистика переигровок, т.е. сохраняется информация о предыдущих действиях игрока. Неизвестно, насколько глубок контроль, но переигровки с одного сейва вычисляет надежно. Сейв можно открывать много раз и смотреть, но двигать ничего нельзя. Использование нескольких копий цивы не спасет.
[/b]
Во как!
Спецы! Ваше мнение?