Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Зашифровать ресурсы (Картинки, звуки и т.д)

Зашифровать ресурсы (Картинки, звуки и т.д)

Поделиться

Страницы: 1 2 3 Следующая

ХаусПостоялецwww18 окт. 201715:56#0
Есть у меня игра. В ней ресурсы лежат в открытом виде в папке resource/images и resource/sound.
Как бы всё это дело зашифровать, чтобы игрок не смог рыться в ресурсах?
SaiteiПостоялецwww18 окт. 201717:03#1
Хаус
> Есть у меня игра. В ней ресурсы лежат в открытом виде в папке resource/images и
> resource/sound.
> Как бы всё это дело зашифровать, чтобы игрок не смог рыться в ресурсах?
rar/zip с паролем ))0

а вообще: кому надо - тот все равно пороется.

nesПостоялецwww18 окт. 201717:07#2
Хаус
Зипани и поменяй расширение архива на pak
Андрей5000Постоялецwww18 окт. 201717:23#3
nes
А че, можно просто все расширения поменять не зипуя и норм
/A\Постоялецwww18 окт. 201717:42#4
Андрей5000
> А че, можно просто все расширения поменять не зипуя и норм
nes
> Зипани и поменяй расширение архива на pak
в начале файла обычно пишут его тип, так что это спасет только от самых тупых
kiparПостоялецwww18 окт. 201717:57#5
Так что первые два байта тоже поменять.
—-

А на самом деле вопрос в том как ты их грузишь. Если умеешь грузить из памяти - нет никакой проблемы после считывания из файла поксорить их с произвольным ключом.

Если не умеешь (т.е. есть функция только LoadSound(FileName)) - никак.

Правка: 18 окт. 2017 18:00

ХаусПостоялецwww18 окт. 201717:59#6
Да, как делают эти .pak?
Можно и .zip сделать, но это как-то не оч. надёжно...
Vlad2001_MFSУчастникwww18 окт. 201719:34#7
Misanthrope
О... Т800, помню, так и не научил никого портировать движки... Не смог скомпилировать.
nesПостоялецwww18 окт. 201720:21#8
/A\
>в начале файла обычно пишут его тип, так что это спасет только от самых тупых
Все правильно, от других, чуть умнее приматов, уже не спрячешь.
ВасянУчастникwww18 окт. 201720:26#9
Была такая тема полгода-год назад.

Что вам так упёрлось это шифрование?

А как моддить игру с зашифрованными ресурсами?

mingwПользовательwww18 окт. 201720:37#10
Зипуй, раруй... - одним словом архивируй))

А если хочешь как у "больших дяденек (С)" то смотри исходники Quake 2 - там дядя-Кармак реализовал виртуальную файловую систему. Хотя... позже он пришел к выводу, что это излише, и поэтому ресурсы уже Quake 3 Arena были запакованы в обычные zip-архивы без сжатия и без пароля, только переименовав расширение в .pk3. Такой архив прочитать - сущий пустяк, тебе даже не придется подключать сторонние библиотеки, ибо zip в такой конфигурации хранит в себе файлы "как есть".

Правка: 18 окт. 2017 20:39

ВасянУчастникwww18 окт. 201720:48#11
Я ни разу не видел, чтобы успешно продавались игры с контентом из других игр или ассеты, слепленные из ресурсов других игр. Если игра популярная, то не вижу смысла пиратить контент, ибо все и так знают, откуда спирачено. Если в игру играло 100 человек, то, ну я не знаю, кому она нужна со своими ресурсами? Ну, я видел, пиратят в основном ассеты и другой контент из сторов. Не видел ни разу, чтобы обворовали какого-то Васю Пупкина или присвоили его авторство.

Правка: 6 ноя. 2017 13:53

foxesПостоялецwww18 окт. 201720:49#12
Хаус
Самый простой способ смешивание со случайной последовательностью при помощи операции xor. Например берешь хеш от имени ресурса и используешь его для генерации последовательности.
Vlad2001_MFSУчастникwww18 окт. 201721:13#13
Вообще мне кажется(именно кажется), что шифрование ресурсов у игр - бред. Наоборот нужно давать возможности для создания модов. Яркий пример - Сталкер. Тень Чернобыля уже 10 лет, а люди очень даже играют, а все благодаря моддингу.
В любом случае, если человеку нужно что-то достать - он достанет, хоть оно и будет зашифровано.
ХаусПостоялецwww18 окт. 201723:39#14
Vlad2001_MFS
> Яркий пример - Сталкер.

Но у меня не Сталкер. :)

mingw
> там дядя-Кармак реализовал виртуальную файловую систему.

Ну Кармак перемудрил конечно.

mingw
> Зипуй, раруй... - одним словом архивируй))

Оставим на крайняк.

kipar
> А на самом деле вопрос в том как ты их грузишь. Если умеешь грузить из памяти -
> нет никакой проблемы после считывания из файла поксорить их с произвольным
> ключом.
foxes
> Самый простой способ смешивание со случайной последовательностью при помощи
> операции xor. Например берешь хеш от имени ресурса и используешь его для
> генерации последовательности.

Можно поподробнее?

Правка: 18 окт. 2017 23:40

Страницы: 1 2 3 Следующая

/ Форум / Программирование игр / Общее

2001—2017 © GameDev.ru — Разработка игр