пятница, сентября 11, 2009

Обновление Monopoly Citystreets

Прошло какое-то время с момента запуска игры, можно подвести первые скромные итоги.


Итак, всех поздравляю кто смог зайти в игру ещё вчера - вы действительно везунчики. Так как вечером сервер(а) отвалились. По признанию разработчиков - они предполагали, но не ожидали ТАКОГО наплыва. Если я правильно понял, то было более 1,7 миллионов уникальных посещений игры. Игра этого не выдержала.


Но сегодня всё выглядит НАМНОГО радужнее. Строить свою монополию стало реально возможно. Тормоза есть, но их гораздо меньше.


Теперь о том что я извлёк за два дня игры. Во-первых деньги с улиц... По моим ощущениям нет разницы в количестве получаемых денег с двух улиц если они соединены или нет. Деньги одинаковые.


Второе важное открытие - третье бонус-строение в игре - школа. И ещё относительно бонус-строений. Их наличие на улице защищает улицу не только от установки вашими конкурентами на ней hazard-зданий (тюрьма, очистное сооружение, электростанция), но и от применения карточки бульдозера. По крайней мере так было написано на моей улице, которую я защитил школой.


Пока не совсем понял как даются карточки шанса (на установку бонус-здания, хазард, или бульдозера). Пример - продал улицу другому игроку и тут же появилась окошко, сообщающее что мне выпала карточка школы. Поставил школу. Потом купил улицу и опять карточка. На этот раз - бульдозер. Может шанс появления карточки рассчитывается при проведении какой-либо сделки?.. Или как и выплаты за улицы - раз в сутки?


И ещё, когда карточка появляется, её не обязательно использовать сразу. Пример. Мне выпала карточка бульдозера, но я нажал на DISCARD. Но после захода в игру через пару часов снова появилась эта карточка. Пришлось взрывать здание. :) Оказалось это весьма просто. Щёлкаем на улице (своей или "друга"), снизу домиков будет красный крестик. При щелчке на нём увидите описание задания и что кнопку сноса. Два раза кликаете по ней (второй раз для подтверждения) и смотрите мультик :)


И я вот что подумал... Если у кого-нибудь появится желание объединиться, то пишите в комментариях ваше предложение. Вместе мы сможет эффективнее защищать свои улицы и нападать на других.

четверг, сентября 10, 2009

Монополия на карте мира

Многие из нас в детстве играли, а некоторые и во взрослом возрасте продолжают играть, в настольные игры. Моей последней настольной игрой была ClueDo. Оригинальная игра... Чем-то напоминает "Быки и Коровы", но для троих и более человек. Вдвоём в неё играть неинтересно.



Но наверное классикой, гениальной в своей простоте была и остаётся Монополия. Переставляешь фишки, покупаешь улицы... Сидишь в тюрьме.



Теперь можно поиграть в эту игру в интернете. И не просто, а на настоящей карте. Можно купить свою улицу. Кажется, можно даже в Google ScetchUp нарисовать здание и разместить его на карте. Признаться я об этом даже не мечтал.



Начать играть и правила очень просты.
Вы заходите по ссылке - http://www.monopolycitystreets.com/ и выбираете язык.
Дальше вам будет предложено найти улицу. Ищите те которые ещё не куплены (принадлежат банку) - фиолетовые. Синие улицы уже принадлежат другим игрокам - с ними вы разберётесь позже.



При клике на свободную улицу вас попросят зарегистрироваться. Тут я допустил ошибку... Моя первая улица была в Питере и теперь в моём игровом профиле значится что я от туда. Но по сути это ничего не меняет - покупать можно по всему миру (с небольшими ограничениями, смотрите FAQ - http://docs.google.com/View?id=dfzghp76_3f3s5b6gr)
Итак, улица куплена и она уже будет приносить вам доход. Каждые 24 часа с момента создания вашего игрового профиля вам будет начисляться арендная плата. Что бы начислялось больше - покупайте более популярные улицы. Что бы начислялось ещё больше - постройте на улице здания.



Но просто ставить фишки было бы скучно... И тут выходи на арену противостояние с другими игроками.



Во-первых можно сделать предложение другому игроку о покупке его улицы. Естественно он может отказать. НО! Если он не ответит отказом на ваше предложение в течении 7 дней, то предложение автоматически удовлетворится. Так что заходите в игру хотя бы раз в 7 дней.


Но это ещё не всё. Периодически вам, в случайном порядке, будут выпадать так называемые "Chance cards". С их помощью вы сможете сносить здания на улицах (не только на своих ;) ). Ведь вы же прочитали сообщение когда ставили ваше первое здание о том что оно не может быть перемещено? Ну так вот, с помощью карточки бульдозера забудьте об этом ограничении.


Второе, и это, наверное, самое "вкусное" - вы можете саботировать чужие улицы. Для этого используется либо уже известная карточка бульдозера. Или другая карта Hazard, которая даёт возможность постройки на улице электростанции, тюрмы или очистного сооружения. Здания hazard-типа примечательны тем что с момента их постройки улица перестаёт приносить доход. мило :)


Но и это ещё не всё! От подобных нападок можно защититься с помощью зданий типа Bonus. Они так же строятся с помощью Chance card. Это стадион, парк и... В правилах какая-то ошибка, но третье здание напоминает больницу. Не суть важно как здание называется, главное оно нейтрализует эффект hazard-сооружений!


Получается практически классические камень-ножницы-бумага. Можно построить у себя bonus-здание, а можно снести его у конкурента с помощью бульдозера. Но и он может у вас убрать это здание. А можно нагадить конкуренту и построить у него тюрьму. Но если у него есть bonus-здания или карточка бульдозера, то эффекта можно не получить. И так далее.



Вобщем всех ждём в игре!



РАСХВАТЫВАЙТЕ УЛИЦЫ ПОКА НЕЗАНЯТЫ!!! :)



Да, и самое главное. Игра безбожно тормозит! Будем надеяться что через пару дней наладится.

вторник, июля 21, 2009

Осторожно, мошенничество!

Ни глупость человеческая, ни жадность, ни наглость не имеют границ... Как роза на навозе на всем этом расцветают мошенничества. В частности в интернете.
По моим наблюдениям сейчас одним из самых популярных, сравнительно честном отъеме денег у населения является sms-мошенничество.
Схема примерно такая. На сайте делается некая замануха. Например вам говорят что предоставят вам доступ за символическую плату - 6 рублей за sms. Или же, давя на чуство благородства, еще бы, как легко почуствовать себя щедрым за 6 рублей, говорят что часть денег пойдет на благотворительность.
Но суть одна - застваить отправить смс, на кототкий номер, утверждая что цена смехотворна. Вот только на проверку оказывается что со счета списали не 6, а в лучшем случае 106. Уже не такая смехотворная сумма...
Самый простой способ защититься - вбить в том же гугле предлагаемый короткий номер и посмотреть реальную стоимость.

Например сайт http://million123.ru/index.php. Тупейшие первые вопросы заставляют поверить в свое всемогущество. Но после пятого вопроса предлагают отправить смс стоимостью всего 6 рублей. Первая ссылка в гугле ведет на сайт где можно сполна почитать про то что и сколько стоит.

четверг, февраля 19, 2009

Perl - Проверка email регулярным выражением

Задался тут целью выловить таки в присылаемых мне списках некорректные адреса электронной почты. Идя по пути наименьшего сопротивления, обратился в гугл. От туда на форум Opennet.ru. И уже от туда на, как оказалось, замечательный сайт посвященный регулярным выражениям.
Совсем немного времени и в моём распоряжении регулярное выражение для валидации адресов электронной почты. Ещё капелька усилий и имеем скрипт для вывода email, не проходящих проверку.

#!D:\Perl\bin\perl.exe
use strict;
use warnings;
# открываем файл с адресами
open (my $emailh, 'emails.csv') or die $!;
# считываем построчно в переменную "по-умолчанию" $_
while (<$emailh>) {
# "магия" начинается тут.
# если считанная строка не проходит проверку, то выводим её на экран  
print if ($_ !~ m{(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])}i)
}
# закрываем файл
close $emailh;

Что удивительно - скрипт отработал как надо. За исключением одного момента. Скрипт, вернее само регулярное выражение, почему-то забраковало адрес вида xxx@mtu_net.ru
Надо почитать что там в официальном стандарте говорится об этом.

среда, февраля 18, 2009

Облако тегов на blogspot

Пока было мало ярлыков то как-то не напрягало их присутсвие с боку в виде списка. Потом количество ярлыков выросло, и длинная колбаса стала смотреться несколько нелепо - пришлось убрать. Но всё же не давала покоя мысль вернуть её на место. Решение - "облако тегов" (или ярлыков, кому как больше нарвится).
Поиск в гугле первой выдал ссылку на блог Юзер фрэндли и его отзыв о том как прикрутить облако.
Переходим по его ссылке на перевод статьи как сделать облако тегов для blogspot
А дальше просто следуем инструкциям. Элементарное Ctrl+c, Ctrl+v.
Наслаждаемся.

вторник, февраля 17, 2009

Успеть или Опаздать

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

Я пытаюсь заскочить в последний вагон уходящего поезда. Причём делая это, я осознаю что если не попаду на этот поезд, то ничего мне не помешает поехать на следующем. Но всё-таки заскакиваю и оказывается что довольна сильно повредил себе ногу - идёт кровь и мне накладывают повязки.


Интерпретация сна, как мне кажется, очевидна. Я спешу сделать что-то (спешу на поезд), но делая это я иду не туда (травма ноги). К тому же если подождать немного, то мне предоставиться возможность сделать то же самое, но гораздо меньшей ценой, в то время как если я продолжу, то пострадают мои родные (кровь).
Задался вопросом - что же я могу такое делать в реальной жизнь, что вызывает подобные образы? Куда я спешу? Ответ возможен только один - я очень хочу сменить работу. Причём сделать это я хочу как можно скорее. Больше в моей жизни нет ничего такого что я спешу сделать. И вот тут то и кроется не состыковка - во сне я спешу делать и это делаю, а в реальной жизни я хоть и хочу сделать как можно скорее, вот только вариантов нет.
В общем непонятно...
Кстати, в тему вспоминается ещё один сон, который я видел уже довольно давно. В то время я на протяжении длительного времени встречался с одной девушкой и отношения изрядно буксовали. По ряду причин, но не о них рассказ. Собственно сон. Он очень короткий, но яркий и, как мне кажется, однозначный.

Я собираюсь на свидание с ней, понимаю что опаздываю и начинаю спешить собираться.


Собственно это и есть сон. Но о чём он? Изначально я подумал что он к тому что я могу что-то пропустить в наших с ней отношениях, что из-за возникающих проволочек я могу упустить время. Но потом меня осенило. Ведь сон не о том что я опаздываю, а о том что я спешу, то есть тороплю события.
Жизнь подтвердила. Предоставив событиям развиваться как они есть я узнал что этот человек, мягко говоря, не тот кто мне нужен.

Perl - перемещение файлов по подкаталогам

Сегодня, думаю запощу сразу два поста. "Запощу пост"... Мда, новые времена - повые тафтологии.


Первое обращение посвящено тем кто хочет посмотреть для чего можно использовать Perl. Недавно начал смотреть что это за язык такой. Должен сказать - впечатляет. Условный оператор unless, модификаторы операторов... Весьма, весьма.


Но перейдём к делу. Была у меня папка в которой лежало весьма приличное количество файлов - 6700+ штук. И все они лежали в одной папке. То что это не нравилось наутилусу - мягко сказано. Решил раскидать файлы по подкаталогам. Причём так что имя подкаталога должно начинаться с порядкового номера файла, потом дефис и порядковый номер последнего файла. Все эти "порядковые номера", естественно, относительно их изначальной индексации в каталоге.


Сначала попытался сделать это в ручную... А потом понял что это прекрасное поле для того что бы опробовать то что я узнал из самоучителей. К тому же, как в них, в самоучителях, зная минимум можно делать весьма впечатляющие вещи. Собственно в этом я и убедился.


А теперь собственно сам код. Так как он обильно снабжён комментариями, то думаю мои дальнейшие разглагольствования будут не уместны.


Одно малюсенькое змечание - код писался в Vim, а затем с помощью же Vim'а экспортировался в HTML.



#!/usr/bin/perl
use strict;
use warnings;
my @files;
# открываем директорию
opendir(my $sdir, '.') or die($!);
# и считываем все файлы исключая файл-скрипт в массив
@files = grep { -f && !/move_files\.pl/} readdir $sdir;
&move_file(\@files);
# этим будем двигать файлы
sub move_file() {
  # номер итерации
  my $n = 0;
  # количество перемещаемых файлов
  my $offset = 128;
  # получаем ссылку на массив с файлами
  my $files = shift;
  # обходим массив с файлами, передвигаясь на число перемещаемых файлов
  for (my $i=0; $i<$#{$files}; $i+=$offset, $n++) {
    # начальный индекс для среза - ниндекс
    my $start = $n*$offset;
    # конечный индекс для среза - киндекс
    # если вычисляемый киндекс больше последнего индекса, то устанавливаем киндекс на последний элемент,
    # в противном случае используем вычисляемый киндекс
    my $end = (($start+$offset-1)>$#{$files)?($#{$files}):$start+$offset-1;
    # делаем срез для массива файлов
    my @move = @$files[$start..$end];
    # создаём директорию куда переместим файлы
    my $dir = sprintf("%03d-%03d", $start, $end);
    mkdir($dir, 0766) or die($!);
    # переименовываем каждый элемент
    foreach (@move) {
      rename($_, $dir.'/'.$_) or die($!);
    }
  }
}

четверг, февраля 05, 2009

День когда мёртвые умрут

Очередной компот из сновидений готов к публикации. Снова приснились деньги. Собирал мелочь, а значит это к слезам. Была ещё бабушка моей жены, какие-то серёжки и колечки, но всё это так, как я сказал выше - мелочь. Интересное приснилось в самом конце.
Мне приснился фильм... Вот только до конца я его не досмотрел, но "сдаётся мне что это была комедия". Фильм назывался "Day when dead die". Можно сказать что это пародия на "Шестое чувство".

Начинается всё с того что показывают толпы покойников. По всем законам жанра они выглядят не лучшим образом. Да и обстановка вокруг них не располагает к отдыху - огонь, камни, неизвестно от куда летящие стрелы.
Дальше количество мёртвых на долю экрана уменьшается и показывают магазин, в котором среди обычных людей, живых, ходят с тележками призраки. И надо же было найтись человеку, который видит мёртвых. Мало того что он их видит, так он ещё и заявляет об этом, нанося на стены надпись типа I.F.Y. - I Feel You (привет Vader) и I.S.U. - I See You (привет умершей аське). Обычных людей его поведение раздражает и, в частности его супруга, просит что бы он прекратил или по крайней мере перестал так себя вести при ребёнке. А вот мёртвых подобное реально пугает - их кто-то видит чего быть не должно.
Ещё был момент когда главный герой видит в магазине девочку-призрак с продуктовой тележкой, начинает кричать что видит её, чем пугает не только её, но и своего сына.
Дальше появляется второй главный герой. Сотрудник ФБР, который занимается подобными "видениями" потому как сам видит мёртвых и уже давно знает что существует целый город мёртвых, который находится под угрозой из-за какого-то строительства. Видимо при строительстве найдут "кладбище", все тела перезахоронят как положено и мёртвые успокоятся чего они, собственно, не горят желанием делать.
Дальнейший сон потерялся в отрывках. Агент ФБР бежит с главным героем по рельсам и их чуть не сбивает поезд, они видят целые составы-призраки. Когда любая вещь "умирает", то становится достоянием призраков. За это отдельный привет Терри Пратчетту, в частности произведению Мрачный Жнец.
В общем вот такой сон про мёртвых.


четверг, января 22, 2009

Асечный бойкот

Вчера чаша терпения была переполнена и г***о полезло через край. А как всё хорошо начиналось...
Помню когда появилась аська, а в моей жизни это было году в 95, сколько восторга она вызвала! Отличный дизайн, куча возможностей, семизнак. Помню как общался с барышней из Америки...
Дальше было хуже. Появившиеся рекламные модули вызвали стойкое чувство неприятия. К тому же дизайн сменился не просто в худшую, а отвратительнейшую сторону заставили искать альтернативу в виде MirandaIM. Дальше в моей жизни появился линукс и как следствие - Pidgin, Kopete и Psi.
Но ставшие сейчас модные смены протокола - никуда не годятся. Я понимаю что АОЛ живёт рекламой, транслируемой в сообщениях, но, блин, не идёт ваш "официальный клиент" в линуксе.
Вобщем я подумал... Окинул взором свой весьма скромный контакт-лист. Посчитал со сколькими людьми я реально общаюсь по аське и пришёл к выводу что овчинка выделки не стоит.
Моё принятое решение - заменить на первое время аську Skype`ом (который есть и для линукса, кстати говоря), а со временем, наверное, на GTalk. Последнего нет для линукса... В чистом виде, по крайней мере. Но всегда можно запустить его через Psi.
Ну а там поживём-увидим что делать дальше. Главное - ни шагу назад. Пусть это будет глупо, пусть "один голос ничего не решает", но моего голоса в поддержку безобразия, творимого с аськой, не получат.
Потому что ни в какие ворота не лезет. В век опенсорса говорить мне что я могу устанавливать, а что нет. На каком-то форуме была мысль что асечный протокол - интеллектуальная собственность и владельцы вольны менять его как угодно, вплоть до отключения некоторых клиентов. Ну что ж, флаг им в руки. Наверное часть людей точно перейдёт на "официальный клиент", но не я.
Если кому интересно что произошло с аськой, почему она в очередной раз (и наверное не в последний предлагает скачать официальный клиент), то на Хабрахабр есть разъясления по этому поводу. Вот тут - О том что сегодня произошло с аськой и вот тут продолжение - Что произошло с аськой. Часть 2
В общем асечный бойкот с этого дня и до особых распоряжений.

воскресенье, января 11, 2009

Авария на трассе M10

Закончилось моё очередное путешествие из Москвы в Питер и обратно. Закончилось не без последствий - по дороге назад я чуть было не угробил свою и без того немногочисленную семью. Но обо всём по порядку.

Сначала камень в огород питерских служб поддержания дорог в адекватном состоянии. Складывается ощущение что подобных служб просто напросто нет.
Но по существу, что лично мне не понравилось на дорогах в Питере.
Во-первых очень много широких перекрёстков. Лично я на них себя чувствую очень неуютно. И ситуация усложняется светофорами. Что не так со светофорами? По большей части все из них "слепнут" на солнце и о том какой зажёгся свет можно только догадовыться.
Качество же самих дорого оставляет желать лучшего. Я не упоминаю о трамвайных потях посреди дороги. Такое неудобство есть и в Москве. Но вот дорожная разметка, а правильнее сказать её отсуствие делает поезду по городу, для меня избалованного дорогами Москвы, крайне затруднительной. Сами же дороги убираются из ряда вон плохо. Не знаю как дела обстоят в центре города, но на окраине где я ездил передвигаться можно только на кроссовере. Конечно и в Москве есть проблемы. Но по крайней мере в Москве я не видел 10-ти сантиметрового слоя неубранного снега, снежные "камни" и всё то же отсутсвие разметки на МКАДе, в то время как на питерском КАДе всё это есть в полном объеме. Из пяти полос движения реально ехать можно только по одной. Причём эта одна полоса проложена прямо по линии разделяющей ряды движения. Или ещё хлеще - по сплошной линии разделяющей напрвления. Правда, справделивости ряди, надо сказать что подобное было не в Питере и даже не в ленобласти, а в новгородской.
Собственно именно в новгородской области и случилось моё злоключение.
Шёл 200-й км возвращения в Москву. Дорога, как я уже гороврил была преотвратнейшая. Справа и слева железные ограждения, около которых снежные наносы чуть ли не по полметра, на дороге из двух полос реально двигаться только по одной и то посреди дороги и то снега сантиметров по 10. Вобщем ощущение что если в Питере дворников двое, то в Новгороде их нет вообще.
Причём что самое обидное: до аварии я уже получил предпреждение что надо быть осторожнее - при одном обгоне машину начало заносить и меня почти вынесло на встречную полосу, на которой, к счастью, не было машин. Но... Надо же иметь мозги что бы понять намёк. У меня в то утро мозг, видимо, проснулся пойже тела.
Мало было одного, чуть было не ставшего последним, обгона - я пошёл на второй. Причём обгонять начал сразу две машины. Обогнал одну машину, а поровнявшись со второй понял что меня несёт прямо на разделительный бардюр - колесо папало на снежную насыпь и машину начало уводить в сторону. Ситуация один в один что была, то только теперь на встречку не выехать - мешает ограждение. И при попытке вернуться правее машина начинает медленно (на сколько это возможно при скорости 110 км\ч) но верно терять управление.
Уж не знаю каким чудом мне удалось избежать столкновения с двумя сзади идущими автомобилями, видимо там были нормальные люди, потому что единсвенная мысль в голове была - толко бы не закрутило. Не закрутил, но я через две полосы лечу уже на правое дорожное ограждение, около которого точно также полуметровая снежная насыпь из мокрого спрессованного снега. Она то и спасла кузов: мне удалось развернуть машину по ходу направления движения и я на скорости под 40-50 км\ч (всё что удалось сбросить) бьюсь правым передним колесом о эту снежную насыпь. Не будь её - плакали бы фары и кузов машины. А так машина стукнулась колесом и проехав ещё метров 10 остановилась.
Собственно на этот момент имеем следующее.
Первое: неисправное рулевое управление - машину уводит в сторону при скорости 70+ и при наезде правым колесом на снег, а так же что бы ехать прямо надо руль поворачивать влево градусов на 30.
Второе: бесценный опыт! Спрашивается - какого хрена я гнал и шёл на обгон на дороге с такими сложными уловиями. Простая калькуляция: средняя скорость на трассе Москва-Питер 70 км\ч. То есть, двигаясь со скорость не более 90 км\ч приедешь не на много пойже тех что едут 110 (при условии соблюдения скоростного режима в населённых пунктах).
С момента моего "кораблекрушения" и до Москвы, за 500 с небольшим км дороги я стал свидетелем более чем 7 аварий. Причём одни раз прямо передо мной мерседес вылетел со встречной полосы и затормозил только у обочины.
Из всего вышесказанного хочется выделить одно - на дороге надо быть внимательным. Не только по отношению к другим, но и к погодным условиям. Выпавший снег, начавшийся дождь, снижение видимости это всё очень серьёзно хоть и может показаться пустяком.
Такое вот путешествие в этом году...