Александр Яковлев a.k.a. Oreolek

28 Июнь 2009 г.

Небольшой скрипт

Filed under: Perl — Александр Яковлев @ 12:28

Вчера была очередная игра, но я не об этом.
Я написал скрипт для того,чтобы обновлять внешний IP’шник в своём DC++. Предполагается linuxdcpp последних версий. Сильно, думаю, упростит жизнь людям с динамическим IP. Перед использованием проверьте переменные $path и $url

#!/usr/bin/perl
use strict;
use warnings;
use LWP::Simple; #получение IP
my $path = «.dc++/DCPlusPlus.xml»;#местонахождение собственно конфига
my $url = «http://p2p.kuzbass.net/getip.php»;#адрес, с которого берётся IP. Подойдёт любой стабильный и простой по выводу, как http://whatismyip.ru или http://whatismyip.org. Основной критерий, конечно же, стабильность.
my $ip = get($url) or die($!);
$ip =~ /(\d+.\d+.\d+.\d+)/; $ip = $1;
print «Your IP is: $1\n»;
my $CONFIG, my $BACKUP;
open (CONFIG,$path) or die($!);
open (BACKUP,»>»,$path.»~~») or die($!);
while (){
s{\d+.\d+.\d+.\d+}{$ip};
print BACKUP;
}
close(CONFIG);
close BACKUP;
exec («mv $path~~ $path»);

25 Июнь 2009 г.

Небольшие планы…

Filed under: Без рубрики — Александр Яковлев @ 10:20


Игра по системе Fallout продолжается, и постоянный геймтестинг даёт плоды.
Собираюсь внести свой вклад в создание Fallout P&P 3.0. Моя система,которую я создавал до этого,всё равно во многом заимствована оттуда (чего стоят одни Traits), за исключением,конечно, магии.
Так что у меня есть все основания чувствовать себя так же, как и VaultBoy на этой картинке.
Правда, я не знаю насчет своего знания английского и понравятся ли там мои правки, но уверен,что у меня будет возможность опробовать их на живых игроках :-)

16 Июнь 2009 г.

Законы жанра: MMORPG

Filed under: Законы Жанра — Александр Яковлев @ 06:20

Почему-то натыкаюсь на призывания сделать новую MMORPG, где «всё будет по-другому».
Здесь я хочу написать законы этого жанра и объяснить,почему по-другому делать невыгодно.
Итак:

  1. Опыт начисляется за убийство монстров. Квесты дают меньше опыта, чем кач на монстрах.
  2. NPC стоят как столбы на одном месте и ничего не делают. Их характер слабо прописан, никакого отыгрыша.
  3. Маленькие возможности социального интерактива, упор на бой.

Попробую объяснить, откуда это так придумано.
Начну с простого. «Кач» на монстрах против «кача» на квестах.
Посмотрите на игру для одного игрока «Ведьмак». Гениальная игра, образец single-player RPG. Опыт даётся преимущественно за выполнение квестов, монстры дают сравнительно ничтожное число «экспы». Но! Но квесты в игре тщательно прописаны и невообразимо интересны. Более того: у игры очень низкий replayability. Если вы сыграли в неё один раз, два раза…десять раз, вы не захотите её проходить в одиннадцатый раз, поскольку вы уже знаете все или большинство поворотов сюжета. А мочить монстров невыгодно, потому что на них не раскачаешь персонажа. Поэтому даже если в MMORPG квесты хорошо прописаны, но опыта они всё равно дают существенно меньше, чем «мочилово» монстров. Это обеспечивает интерес к игре, чтобы в игре можно было сидеть неделями\месяцами\годами, даже когда основная сюжетная линия закончена.
Пойдём дальше. «Тупые» NPC.
Я напомню, как расшифровывается название жанра – Massive Multiplayer Online RolePlaying Game. Ролевая онлайн-игра для огромного числа игроков. Скажите мне, когда по миру бегут тысячи персонажей, отыгрываемых игроками, так ли уж важно заморачиваться над несколькими персонажами, отыгрываемых компьютером? Допустим,что важно. Пойдём дальше. Большинство из этих игроков бегут очертя голову, качаясь до последнего уровня и хватая квесты напропалую. Они не оценят работу над NPC, потому что просто пробегут мимо неё. Поэтому у NPC очень слабо прописывают характер: никто не остановится и не оценит этой работы.
Почему же компьютерные персонажи стоят на одном месте? Это самое простое. Представьте,что в город пришло Очень Много Героев одного уровня.Например, первого.И им всем нужен один и тот же NPC. А он ушёл. В это время он спит, потому что ночь. Он лежит у себя дома,в постели,вместо того,чтобы стоять на площади и ждать игроков.
Очень Много Героев одного уровня будут без дела слоняться по городу и искать нужного NPC, после чего не найдут его и уйдут из игры. Либо найдут и добьются нужного. Но дело не в этом – дело в том,что они потеряют уйму времени на то,чтобы поймать Абсолютно Незначительного Персонажа. Поэтому этот персонаж должен нести свой пост круглые сутки на одном месте.
Теперь – боёвка vs. социалка. Здесь уже большую роль играют лень и новизна жанра. Боёвка – это взаимодействие игрока с монстрами – т.е. игрока с компьютером. Здесь всё намного проще, ведь это уже давно продумано в обычных RPG. Придумал систему боя, нарисовал десяток летающих бурундуков – вот тебе уже геймплей.Социалка же – это обязательно взаимодействие с человеком, потому что только человек сможет нормально в ней участвовать. Причём должен быть полный отыгрыш, потому что не каждого человека можно заставить соблюдать правила, подобно компьютеру. Здесь уже идёт фантазия игротехов. Самое простое решение – выдать обоим игрокам по чату, пусть чатятся и там уже показывают,как они *охают*, *ахают*, *преклоняются на одно колено* или что ещё. Посложнее – дать систему охов, ахов и прочаго в самой игре, т.е. отрисовать это. В этом направлении подвижек очень мало, потому что трудно придумать что-то новое и вместе с тем не запороть весь соц. интерактив. Тем более,что он не исследован в оффлайн-играх с двадцатилетней историей. Вот и остаётся делать упор на бой.
Вроде бы всё. Думаю, в близком будущем посмотрю законы других жанров,если получится интересно. Если я что-то забыл – не стесняйтесь напомнить в комментариях.

12 Июнь 2009 г.

Пробы картографии

Filed under: Без рубрики — Александр Яковлев @ 22:25

Только что попробовал себя в качестве картографа.
Перо, чернила, бумага, 2009г.
Карта неизвестного острова.
Сильно оптимизировал при загрузке в инет, так что она весит 30 Кб и даёт довольно сносное качество, чтобы рассмотреть мелкие детали (хотя бы деревья).
Обозначения взял с потолка, хотя старался быть правдоподобным (к сожалению,но только после второго росчерка пера – первый оказался слишком гладким, нетрудно догадаться каким именно он был).
Опыт считаю удачным. Потом попробую на более осмысленных местах и,возможно, с подписями.

11 Июнь 2009 г.

Пиратская партия

Filed under: Без рубрики — Александр Яковлев @ 18:41

http://translated.by/you/the-pirate-party/
Очень интересные идеи затрагиваются в этом манифесте.На такой маленькой, казалось бы, основе – всего лишь авторское право – создать целую партию.
Цитирую:

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

Хорошо, но маловато. Если бы так было, то «Гарри Поттер и философский камень» выпускался бы всеми кому не лень без отчислений Роулинг уже в 2006м. Мне кажется, что срок 50-60 лет после публикации более резонен, за это время произведение становится классикой. В любом случае, не меньше 40 лет – к этому времени приходит второе поколение, а их уже мало смысла удерживать.

Мы также хотим полностью запретить использование DRM-технологий

Смело. Смело,но пока неясно, готовы ли к этому издатели.Утверждение имеет под собой основания, между прочим – DRM вредит пользователям больше,чем даёт пользы издателям. Разработчики так вообще от него проигрывают: им приходится клепать этот самый DRM,а если они это сделают очень хорошо (как Steam или Spore), то покупатели могут обидеться и обратиться к пиратам. Единственное предложение, за которое я за – безоговорочно.

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

Очень,очень смелое заявление.Европа – может быть,и выиграет, а вот как насчет изобретателей? Между прочим,научные открытия даются труднее,чем выпуск музыкального альбома или серии книг,а учёные не получают столько славы.Такое утверждение только сделает их жизнь ещё хуже.Я согласен с тем, что эпидемия есть эпидемия, и если какой-то институт намеренно скрывает спасительные рецепты, это очень гнусно и должно лежать на его совести, но в таком приказном порядке заставлять всех и каждого вскрывать карты,если народу оно надо… Очень, очень дурное предложение.

Соблюдение права на неприкосновенность частной жизни

На первый взгляд,имеет мало общего с названием партии, но это – ещё одна больная тема, особенно в Европе.Человеческая паранойя не знает границ. Если ставить защитные меры всё строже и строже, можно попасть в действительно непритягательный мир. Об этом сказано довольно расплывчато, и не совсем понятно. Мой дом – моя крепость, как только я вышел на улицу – я под колпаком.Это тоже соблюдение неприкосновенности частной жизни, в особом подходе.

Вообще, Пиратская Партия – это интересное движение,но у нас в стране оно пока не началось,да и вряд ли начнётся. Наши законы не настолько жёстки,как в Европе, чтобы им противостоять,а защитники авторского права не столь агрессивны. Файлообменники никто не закрывал, torrents.ru идёт навстречу правообладателям, когда они требуют. Так что остаётся только смотреть,к чему придёт Евросоюз. А потом будем поступать по-своему.

Бороды

Filed under: Без рубрики — Александр Яковлев @ 15:23

Только что посмотрел Кабачок «13 стульев» на телеканале «Ретро». Съёмка 1968г.
Там был Спартак Мишулин,и он участвовал в диалоге про верблюда.
Ёлки-палки,я не думал,что сценки «Аншлага» НАСТОЛЬКО древние. Я думал,они датируются 1980-1990ми годами XX века.
Ну и там было много бородатейших анекдотов из свежайших газет,конечно.

10 Июнь 2009 г.

Стены

Filed under: Без рубрики — Александр Яковлев @ 09:49

Одна из моих любимых песен имеет интересную историю.
Эта песня называется Mury («Стены») и была написана Яцеком Качмарским году в 1978м. Музыку он взял у гимна антифранкистов Испании L’Estaca, автором которого был бард Луис Льях.Это – самая известная песня Яцека, потому что она,в свою очередь, стала гимном польского антикоммунистического союза «Солидарность».

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

Песню быстро подхватили, и действительно выучили наизусть – она стала гимном оппозиции.Её припев стал сигналом «Радио Солидарности», а вот как раз этот пессимистический финал часто оставляли. То,что припев в песне был заключён в кавычки, просто не поняли.Таким образом, песня заканчивалась на том, как толпы народа поют про то,как падают стены, и всё. Предположительно стены падают, народный дух поддержан. Очень много людей из всей песни слышали только припев.

Хуже того: как только песня получила народную славу, её начали коверкать. Это обычное дело – люди же не записывают слова, они просто их помнят. И они могут их помнить не совсем верно. Или им не нравятся слова – так, в Гданьске конец песни вместо «Стены растут,растут, растут…» был оптимистическим – «Стен нет,нет,нет…». В каждом городе был свой вариант «Стены» и люди вкладывали в него то,что хотели.

Качмарский сильно ругался по этому поводу и говорил,что его не понимают и что песню исковеркали наоборот; он даже написал продолжение под названием «Стены ’87″ и хотел,чтобы все перестали петь,а начали уже что-то делать. Всё без хорошего толку,гимн пел каждый и не понимал никто.

В конце концов, коммунизм в Польше всё-таки пал, лидер «Солидарности» стал президентом…в общем, снова народ счастлив.

Сам я не знаю польского, поэтому читал всё со словарём. Если интересно, об этом написано в польской и английской Википедиях, а также на офиц. сайте Качмарского.

Вот сама песня – исполнение Жана-Мишеля Жарра вместе с Академическим хором Гданьского университета и оркестром Польской Филармонии Балтики на концерте, посвященном 25-летию «Солидарности».
Слова песни (на польском,естественно)
Перевод Андрея Базилевского (очень качественный)

Линии в LaTeX

Filed under: LaTeX — Александр Яковлев @ 07:16

Иногда хорошо отчеркнуть часть текста длинной горизонтальной линией. Но команда \hline работает только в таблицах. Как нарисовать линию?
Ответ прост, хотя и часто забывается в руководствах на русском. Для этого служит команда \line:
\line(x,y){длина}

Она рисует линию указанной длины по указанному вектору.

Координаты вектора (x,y) есть целые числа по модулю не больше 6. Кроме того, они должны быть взаимно простыми (то есть, не иметь общих делителей кроме ±1). Чаще всего используются (1,0) – это горизонтальная линия, и (0,1) – вертикальная линия.

09 Июнь 2009 г.

User style

Filed under: Без рубрики — Александр Яковлев @ 15:52

Мне надоело оформление юзеров diary.ru. Я понимаю,что отсутствие вкуса – это дело терпимое, но когда их движок даёт полную волю подобным выкрутасам…
Представляю вашему вниманию Уничтожитель Оформления для всего diary.ru и прочих. Пользователям Mozilla Firefox – вставить в плагин Stylish. Пользователям Оперы – можно инсталлировать как user script,хотя вам он и не пригодится-то в общем. Прочим не беспокоиться.
Как только вспомню свой пароль на userstyles.org, выложу туда.
Скрипт не очищенный,но действенный. Шрифт Free Times можете поменять на любой любимый.

@namespace url(http://www.w3.org/1999/xhtml);

@-moz-document domain("diary.ru") {
body {
font-family:Free Times !important;
font-style: normal !important;
font-weight: normal !important;
background-color:#FFFFFF !important;
background-image:none !important;
color:#000000 !important;
}

#topNav, #bottomNav {background-color:#FFFFFF !important;}
#topNav a, #bottomNav a {color:#000000 !important;}

.block_design .bordered{background-color:#FFFFFF !important; border-color:#9fadbb !important;}
.header,h1{color:#000000 !important; font-weight: bold !important; background-color:#FFFFFF !important;}
.singlePost .header, .linkssection .header{background-color:#FFFFFF !important;}
.menuSection,#epigraph,.formcontainer,.pageBar, .postContent, .postLinksBackg, .postTitle, .authorName, .communityName, .order_button, .section, .list_box{background-color:#FFFFFF !important;}
#side h1 a, .header a{color:olive !important;}
a, .linkssection .postLinks a{color:darkblue !important;}
.countSecond .postContent, .countSecond .postLinksBackg, .countSecond .postTitle, .countSecond .authorName, .countSecond .communityName, .singlePost.countSecond .header, .linkssection.countSecond .header{background-color:#FFFFFF !important;}
.postDate, .countSecond .postDate{color:#000000 !important; font-size:114%; font-weight: bold; background-color:#FFFFFF !important;}
.top .bordered{background-color:#FFFFFF !important;}

.block_design .countSecond .postContent, .block_design .countSecond .header, .block_design .countSecond .postLinksBackg, .block_design .countSecond .authorName, .block_design .countSecond .communityName{background-color:#FFFFFF;}
.calnd th { background-color:#FFFFFF; color:#000000; font-style: normal;font-weight: bold; text-align:center; }
#my_tags{border-color:purple; background-color:#FFFFFF;}

.htmlbox textarea, input.text, #trspisok textarea, #close_text{
background-color: #FFFFFF !important;
font-family: Free Times !important;
font-style: normal !important;
font-weight: normal !important;
color:#000000 !important;
}

#vkl li a{color: #000000 !important;}
#vkl .z_top{background-color: #FFFFFF !important;}
#vkl .current a, #vkl .current .z_n{background-color:#FFFFFF !important;}
#vkl li a, #vkl .z_n{background-color:#FFFFFF !important;}
#vkl .z_v{background-color: #FFFFFF !important;}

#shsmile{background-color:#FFFFFF !important;}
.SmilePanelElement small { background: #FFFFFF !important; color:#000000 !important;}

}

08 Июнь 2009 г.

Trust is a weakness

Filed under: Без рубрики — Александр Яковлев @ 13:12

Для получения зачётов соц. инжиниринг – это вещь!
Для экзаменов ещё понадобится немного фантазии и удачи.
Но вот курсовик лучше сдавать честно…

Older Posts »

Powered by WordPress