Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #29, АПРЕЛЬ 2003 г.

МУЛЬТИКИ ПОД ЗАМКОМ - защищаем авторские Flash'ки

Человек-Утюг

Спецвыпуск Xakep, номер #029, стр. 029-074-1


(ironman@winfo.org)

Мы, флешеры, очень несчастливые люди. Мало того, что у нас прут идеи для мультиков, так у нас еще прут и сами мультики, и даже их отдельные куски.

Наши проблемы просто не поддаются описанию. Так что лучше я расскажу о них на своем примере и примере моих хороших друзей. С нами за последние полгода произошли следующие нехорошие вещи.

1. Здорово нарисованный мультик на тему переписи населения был выложен на одном из сайтов моих друзей, чтобы повысить посещаемость. Для этого линка на пагу с флешкой и счетчиком была выложена в конфе "Авто-Юмор", откуда немедленно потекли посетители. Но какой-то хитропопый чел через пару дней запостил в эту же конфу (а заодно и в пару похожих) линку на наш же мульт, но выложенный на СВОЕМ сайте. В итоге куча народу начала крутить счетчик ему, а мы остались с носом. Вернее, с теми двенадцатью посетителями, которые кликнули по логотипу студии в конце мульта и отправились к нам на сайт. Наказать чувака так и не смогли.

2. Задизайненное одним из моих корешей меню для домашней страницы с офигенными эффектами и, тем не менее, малым весом было сперто и использовано на пяти (!) сайтах без изменений. А все потому, что он не прописал глобальные ссылки на кнопках и довольствовался локальными (типа ./index.html).

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

Короче, воруют по-черному, как ты понял :(. И если ты можешь замастырить крутейший мульт или заставку, или хотя бы менюху - ты должен уметь и защитить их от мерзких плагиаторов и любителей погреться за чужой счет. Декомпиляторами мы заниматься не будем, а вот от плагиаторов уворачиваться научимся.

ЗАЩИТА ПРОСТЕЙШАЯ, ЛОКАЛЬНАЯ

Для того, чтобы воспретить просмотр твоей флешки не с твоего сайта, надо ее как-то к нему привязать. Самый очевидный способ это сделать - заюзать небольшой текстовичок, лежащий в той же директории, что и флешки. Основная идея метода в том, что мульт в нужном кадре стопится, а затем проверяется некое условие. Условие это обычно выглядит как "переменная=1", где переменная за шаг до этого подгружается из злополучного текстовика. И если условие не соблюдено (а если текстовика нет, то и соблюстись оно не может в принципе), он просто говорит gotoandplay на кадр раньше. Метод этот обладает стопроцентной надежностью, так как мульт не будет просматриваться дальше злополучного кадра, даже если нажать смесь батонов Ctrl-Right (юзер, однако, умный пошел :)). А все потому, что мы еще и подстраховались концом очередной сцены. В коде это выглядит примерно так:

В клипе с проверкой:

onClipEvent(load){

loadVariables("copyright.txt", this)

}

В файле copyright.txt:

nesperli=1

В предпоследнем кадре (у меня он стоит под номером 175):

stop;

В эшенсах кнопки "Далее" (или как она там у тебя называется):

play;

В последнем заподлянском кадре (с номером 176):

if (this.nesperli=1){

gotoandplay("Scene 2",1)

}else{

gotoandplay(175)

}

Вот тебе и весь геморрой :). В моем случае после окончания заставки мульт останавливается до нажатия кнопки "Поехали!". Но если файла рядом нет - нажимай, не нажимай - дальше мульт не двинется :). Советую запомнить костяк кода (там, где подгружается переменная), ибо нам он еще не раз пригодится.

Содержание  Вперед на стр. 029-074-2