![]() |
алгоритм random - как сделать аналог randomа без random?
есть баннеры, в них всякие мигалки и прочая случайная фигня.
оказывается код где встречается random автоматически банится без разборов на стороне адвертизера. Баннеров фигова гора и переделывать нет смысла, надо заменить random(n) на самописную функцию, например _root.rrr(n). (исходить от date.milliseconds не годится, порой надо в один момент десяток разных значений). Кто нибудь знает как написать простенький рандом? |
да их полно
разберитесь как они работают и проблем никаких шаманте с date.milliseconds и последним сгенерированным числом например в блог мне глянте как вариант |
Цитата:
|
Сгенерите длинную рандомную строчку и захардкодте ее во флешку.
Далее вычитывайте попорядку и покругу. |
"код где встречается random автоматически банится без разборов на стороне адвертизера."
Это как? Баннер декомпилится и проверяется чтоли? |
Цитата:
Про date.milliseconds я уже говорил. Если мне надо раскидать звездное небо в одном цикле, я не вижу помощи в миллисекундах. Для варианта 1 рандома да, а когда их в одном кадре 10? Представьте что есть 80-100 баннеров, 35 размеров каждый, на 10 языках каждый. В одном 5 всяких радномов, в другом 10 и в одном кадре. В одном звездочки по кругу разного размера летают, в другом надо при открытии случайный город из списка в 10 штук показать... Я не хочу разбираться зачем они все, я хочу сделать replace all "random(" "_root.rrr(" и чтоб работало на все варианты. Генерить строку можно, но это топорный подход. В одном случае надо random(10), в другом random(1000). |
Топорно немного =), но лучше чем слушать микрофон уж точно.
|
Что за бред. "Нельзя генерировать небо программно с использованием Math.random. Но если Вам очень хочется создать звёздное небо со случайными звёздами Вам придётся реализовать свой аналог Math.random..."
|
Бред, но вы не представляете как строго проверяются баннеры. Если попадается слово random в коде, дальше банится сразу вся пачка без разборов зачем оно там. Попалось и точка. Адверизеры никогда ни в чем не разбираются, типа это твои проблемы и нарушения.
Я например не удивлюсь за бан если код на кнопку в одну строку напишешь. |
Прочитал внимательнее почему не годится date.milliseconds.
Я бы на вашем месте использовал именно его. А затем прогонял чере пару функци, а третья функция выдавала старт и стоп индекс результата первой |
Адвизерам придется ещё найти этот Math.random. Если банер обфусцировать - эту строчку никто и не найдёт.
Например Math["rand"+"om"](). а "random" криптуйте, например, добавлением числа 2 к каждой букве. А потом собирайте методами String. |
Ну вот и самое правильное решение =)
|
на скорую руку накидал нечто такое топорное:
Код AS1/AS2:
Добавлено через 6 минут гы, можно, но стремно :) фиг знает как они там смотрят. Мож вообще дизассемблер какой пишет что в мувике задействован рандом. Поновой переделывать 5000 баннеров нехоцца. |
Просто интересно уже, а чем эти Азверяйзеры мотивируют неиспользование рандома???
Может они под этим соусом ждут, чтобы юзера им сгенерили новый код рандомайзера? Типа такое легкое академическое исследование закамуфлированное слегка под тех.требования... Первый раз такой бред слышу....... Сгенерите текстовый фалй на пару мегабайт рандомно, в баннер его потом грузите с сайта, а произвольная точка входа - по таймеру :))))))))))) |
кому интересно, помимо части первой их requirements.
Нарушение приводит к бану без обьяснения причин: 2. Animation 2.1 Max duration 15 s then static (max 3 loops x 5 s/loop) 2.2 15-20 fps frame rate (по моему тоже бред) 2.3 Strobing & Flashing. Don't use strobe animation. Strobing, flashing backgrounds, or otherwise distracting ads are not allowed. 2.4 Keep animation smooth and fluid, using slow motion and gentle fades. Fast and abrupt motion is highly irritating. 3. Flash 3.1 All Flash ads must be published for Flash Player version 4-8. 3.2 Actionscript version 1 - 2 is acceptable. (Баннеры на AS3, хотя АS3 это совсем не для баннеров, гигантам адвертизенга типа гугля и подобных не нужны) 3.3 Ad code cannot make external server calls for additional Javascript or other functionality. All functionality must be localized to the code itself. 3.4 Forbidden to change the behavior of ad to avoid or eliminate the redirect URL. 3.5 The ad should direct users to a web page with the appropriate destination URL. It should not open the destination URL within the ad IFrame itself. 3.6 Audio not allowed (YouTube). 3.7 Do not include code that generates or uses random numbers. Почему незнаю, но факт, отправили всю кучу назад. Добавлено через 4 минуты баннер макс. 30кб, (21 век на дворе, а тут 500х500 в 30кб...) так что никаких подгружаемых мегабайт :) |
в таком случае масив подлиннее и перебирать с милисекондами - нихрена не случайно, но подходит :)
с другой стороны это то-же вариации на тему "code that generates or uses random numbers", заругают а так как они требуют исключительно 4-8, АС1-2 то код будет как на ладони. обфукатором обработаете - заподозрят не ладное. кругом враги |
да уж.... это что-то с чем-то просто таки.... Сочуствую, что такие "смежники" :(
|
Сори что апаю но может кому-нить да пригодится.
Нужен так называемый линейно-конгруэнтный метод получения псевдослучайного числа. Вот линк http://ru.wikipedia.org/wiki/%D0%9B%...82%D0%BE%D0%B4 Формула очень проста в реализации. |
| Часовой пояс GMT +4, время: 23:59. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.