Guard
offline
Опыт:
2,425Активность: |
Save код
Привет всем ! У меня очередной вопрос. Как сделать save код как на warcraft III или лучше ? |
06.09.2010, 19:08 | #1
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
reALien
offline
Опыт:
29,211Активность: |
В старе сейвкоды ни к чему, т.к. можно сохранять xml прямо на компьютеры из игры даже в мультиплеере. |
06.09.2010, 19:27 | #2
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
H
hello world
offline
Опыт:
130,376Активность: |
Смотри действия из раздела "Банк" Там можно сохранять данные в виде xml таблиц в "мои документы". В том числе и такие данные как уровень героя, деньги и т.п. .. Вопрос пока только один - как все это защищать? Вот тут уже придется писать алгоритмы перевода строк в числа, а числа из одной системы в другую.. Отредактировано Sg0D, 06.09.2010 в 19:35. |
06.09.2010, 19:29 | #3
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
lentinant
Скучно
offline
Опыт:
42,216Активность: |
простейшая модель - все числовые данные героя (уровень, бонусы к характеристикам, деньги и т.д.) лепишь в одну строку, после чего переразбиваешь ее на трехзначные числа, каждое переводишь в эквивалентный символ ASCII таблицы, снова лепишь в одну строку (при желании, каждых четыре символа разделяешь тире), и получаешь код. Чтобы было сложнее, можно перед тем как лепить в одну строку данные, проводить над ними какие-то преобразования, причем лучше для каждого числа разное, и с участием случайного коэффициента (который лепить в строку после кодируемого числа). Порядок загрузки происходит с точностью наоборот
lentinant добавил:
ну, подозреваю, так приблизительно выглядели системы сохранения в варике lentinant добавил:
если помучиться, могу сделать иллюстрацию-схему |
06.09.2010, 19:37 | #4
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
zikworld
offline
Опыт:
3,878Активность: |
я видел чел делал рпг, дак там сколько всего можно было сохранить вплоть до настроек игры, а самое вкусное это то что ненадо было этот код вводить, он сам берется из хмл файла и вставляется, вводишь только логин и пароль, вот так то господа)) |
06.09.2010, 20:31 | #5
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
Guard
offline
Опыт:
2,425Активность: |
|
06.09.2010, 21:00 | #6
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
ScorpioT1000
Работаем
online
Опыт: отключен
|
генерите свой алфавит, вобщем чисто вбиваешь в поисковик "криптография" и зубришь, ничем не отличается от той-же сишной генерации допустим) т.е. это вопрос не к модмейкингу |
06.09.2010, 23:05 | #7
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
lentinant
Скучно
offline
Опыт:
42,216Активность: |
попробую сварганить схемку-пример. кста, вспомнил простую систему кода: тупо идут все данные игры (разделенные тире), а после них контрольное число, вычисленное с самых данных по определенному алгоритму |
07.09.2010, 00:08 | #8
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
Дон
offline
Опыт:
3,585Активность: |
Мда, товарищи а толк то какой сохранения допустим того же самого уровня, с невозможностью потом это число присвоить загруженному герою?.... Триггерно его задать нельзя, нет такой функции.
|
07.09.2010, 00:55 | #9
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
lentinant
Скучно
offline
Опыт:
42,216Активность: |
У меня схемки не очень хорошо выходят, так что если что непонятно, спрашивай. В символьную строку переводить не стал, поскольку выдавало какую-то ересь, так что лучше создай свою таблицу, где каждому числу от 00 до 99 будет присваиваться определенный символ. Ограничения данных и коэффициентов сделаны дабы результаты Alg1 и Alg2 (кстати, вместо иксов первый воспринимает уровень, а второй класс, это так, на всякий случай) были двухзначными числами, и чтоб сама строка могла делиться на двухзначные числа, и всегда имела одинаковую длину. С деньгами мучиться не стал, алгоритм в голову как-то не идет. Ну, в общем, так оно и делается; все данные кодируются алгоритмом, лепятся вместе и перерабатываются в символы, ну, и наоборот. Главное - рассчитывать так, чтобы всегда была одинаковая длина строки
lentinant добавил: Дон, не понял вопрос |
07.09.2010, 00:59 | #10
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
Дон
offline
Опыт:
3,585Активность: |
Ну как бы вопрос был про то, как к примеру загрузив число 10 из банка, поставить какому-либо юниту(можно также загруженному) уровень опыта это число тоесть - 10:))))
|
07.09.2010, 01:09 | #11
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
H
hello world
offline
Опыт:
130,376Активность: |
Дон На например как вариант сделать свою систему опыта и уровней =0 Не пойму зачем юзать ту убогую фигню ^__^ редактор ведь дает такие возможности... |
07.09.2010, 02:45 | #12
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
lentinant
Скучно
offline
Опыт:
42,216Активность: |
Ahelhot, не вижу большой разницы между записью шифрованных данных в xml-файл и выводом оных на экран.
lentinant добавил: есть кстати вариант как дать уровень герою, правда, делается через "универсальный интерфейс", да и недля всех случаев подходит. Создать юнита с огромной дамагой, и на каждый вероятный уровень какого-то слабенького юнита, и каждому в опыт за убийство дать столько, чтоб хватило качнуться до определенного уровня. И, в зависимости от того, какой нам нужен уровень, возле героя создаем вражеского слабачка, нашего дамагера и даем указ убить первого. Опыт распространяется и на героя |
07.09.2010, 04:24 | #13
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
Цитата:
Есть вариант сделать юнитов, которые дают определённое кол-во опыта, и после загрузки карты,сделать тёмный экран на 1-2 сек и за это время герой должен чем нибудь убить их и получить опыт. |
|
07.09.2010, 08:21 | #14
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
Guard
offline
Опыт:
2,425Активность: |
lentinant спасибо за схему
и во общем всем спасибо за ответы =) |
07.09.2010, 14:33 | #15
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
agentex
offline
Опыт:
34,534Активность: |
набросал системку шифрования основанную на переходе в другую СС (алфавит СС задается строками). в идеале ее следует использовать после алгоритма lentinant'а )
» code
|
16.09.2010, 03:39 | #16
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
H
hello world
offline
Опыт:
130,376Активность: |
Это можно и на GUI сделать =O У тебя в системе только кодируется/декодируется число ) До save/load еще далеко. |
16.09.2010, 13:00 | #17
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
agentex
offline
Опыт:
34,534Активность: |
я и не грил что это сейв лоад.. Очевидно что под каждую карту нужны свои алгоритмы, а кодирование в символы просто усложняет хакинг героя.
на гуи принципиально ниче не делаю, ибо уныл в любых проявлениях кстати еще одно преиммущество - сжатие данных, это важно т.к. в мульте банки с кол-вом занчений>80 не работают. Отредактировано agentex, 16.09.2010 в 14:33. |
16.09.2010, 14:28 | #18
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
Guard
offline
Опыт:
2,425Активность: |
хм... agentex можешь по подробнее объяснить что эт плиз ? |
16.09.2010, 14:30 | #19
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
agentex
offline
Опыт:
34,534Активность: |
Guard, позже сделаю пример как юзать. Ща не дома |
16.09.2010, 14:35 | #20
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|