Снова здравствуйте, друзья!  В данный момент работаю над второй версией конструктора Noobster, встал вопрос упаковки всех игровых ресурсов в единый файл, плюс на днях один из пользователей прислал мне сообщение с просьбой помочь с защитой игровых данных. 
 Я создал программу, которая записывает несколько файлов в 1. 
 После того как все запаковано, с помощью специальных скриптов можно на лету "выдергивать" из архива необходимые ресурсы и загружать в игру. 
 
 
 
 Пример состоит из двух частей: 
 1) Программа для запаковки ресурсов 
 2) Собственно пример того как загружать их в игру 
 Программа работает следующим образом: 
 Сначала она записывает всю информацию из списка файлов в бинарник, затем по очереди открывает исходные файлы и записывает их туда же. 
 В итоге получается один толстый *.pak файл, содержащий в себе все ресурсы и информацию о их количестве, рамере и названиях. 
 Чтобы загрузить ресурсы в игру необходимо сделать следущее: 
 Загрузить информацию из *.pak файла при помощи функции pak_load_data("имя файла") 
 Она возвращает id листа, содержащего всю информацию. 
 Затем в любой момент игры, когда вам нужно загрузить ресурс - просто используйте одну из фунций: 
 pak_background_replace(pack_id,back,fname,remove,smooth); 
 pak_sprite_replace(pack_id,sprite,fname,imagenumb,remove,smooth,xorig,yorig); 
 pak_sound_replace(pack_id,sound,fname,kind,preload); 
 Первым аргументом всегда будет id листа с информацией, остальные такие-же как у оригинальных функций. 
 Вот в общем-то и все, если у вас есть вопросы или комментарии - пишите прямо тут 
 
 Надеюсь этот способ будет полезен. 
 Программа: 
 
 
 Пример: 
 
 
 Внимание! Считывание и запись файлов в ГМ работают не самым быстрым образом, не запаковывайте файлы весом более 2ух мегабайт (напр. mp3 звуковое сопровождение) - для защиты больших файлов есть другие методы. 
 Тем не менее этот способ идеально подходит для хранения спрайтов, фонов и звуков (*.wav, *.midi, *.ogg)