четверг, 31 марта 2011 г.

Как добавить практически любой шрифт в ваш Flash-проект - бесплатная утилита от MotoCMS

Как добавить практически любой шрифт в ваш Flash-проект - бесплатная утилита от MotoCMS:

Пишет Николай Внимательный:

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

Font embedding

Речь идет о том, что в сети достаточное количество разнообразных бесплатных шрифтов, но не всегда они подготовлены для дальнейшего использования в наших флеш-проектах.

Продолжение - Как добавить практически любой шрифт в ваш Flash-проект [...]

Быстрое внедрение шрифтов [Embed]

Быстрое внедрение шрифтов [Embed]:

Уже ни раз писалось о встраивании шрифтов, поэтому я не буду описывать весь процесс а покажу лишь простой и удобный прием на примере кода.

package assets {
 import flash.display.Sprite;
 import flash.system.Security;
 import flash.text.Font;
 import flash.utils.describeType;
 
 public class FontsAsset extends Sprite {
  [Embed(source="../../../res/fonts/MyriadPro-Semibold.otf", mimeType="application/x-font-truetype", fontName="MyriadSemibold", unicodeRange="U+0020-U+002F,U+0030-U+0039,U+003A-U+0040,U+0041-U+005A,U+005B-U+0060,U+0061-U+007A,U+007B-U+007E,U+02C6,U+02DC,U+2013-U+2014,U+2018-U+201A,U+201C-U+201E,U+2020-U+2022,U+2026,U+2030,U+2039-U+203A,U+20AC,U+2122,U+0401,U+0410-U+044F", embedAsCFF="false")]
  // Uppercase [A..Z] ; Lowercase [a..z] ; Numerals [0..9] ; Punctuation [!@#%...] ; Basic Latin ; chars="АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя"
  public static var MyriadSemibold : Class;
 
  [Embed(source="../../../res/fonts/MyriadPro-Regular.otf", mimeType="application/x-font-truetype", fontName="MyriadRegular", unicodeRange="U+0020-U+002F,U+0030-U+0039,U+003A-U+0040,U+0041-U+005A,U+005B-U+0060,U+0061-U+007A,U+007B-U+007E,U+02C6,U+02DC,U+2013-U+2014,U+2018-U+201A,U+201C-U+201E,U+2020-U+2022,U+2026,U+2030,U+2039-U+203A,U+20AC,U+2122,U+0401,U+0410-U+044F", embedAsCFF="false")]
  // Uppercase [A..Z] ; Lowercase [a..z] ; Numerals [0..9] ; Punctuation [!@#%...] ; Basic Latin ; chars="АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя"
  public static var MyriadRegular : Class;
 
  public function FontsAsset() {
   Security.allowDomain("*");
   var xml : XML = describeType(this);
   for (var i : uint = 0; i < XMLList(xml["variable"]).length(); i++) {
    Font.registerFont(this[XMLList(xml["variable"])[i].@name]);
   }
  }
 }
}

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

new FontsAsset();

Конечно не стоит забывать о использовании textField.embedFonts.

[...]

среда, 30 марта 2011 г.

ВКонтакте и бонусы за приглашенных друзей

ВКонтакте и бонусы за приглашенных друзей:

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

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

  1. определенные игровые итемы можно получить только от друзей
  2. друзья раз в сутки могут присылать итемы которые дают энергию (или её аналог)
  3. друзей можно нанимать в качестве помощников, что будет приносить бонусы

и т.д.

Все эти способы не противоречат правилам.

Режимы подкреплений

Режимы подкреплений:

Mario и монеткиТема использования режимов подкреплений в играх впервые была поднята в докладе “Behavioral Game Design” десять лет назад. Когда я прочитал статью, основанную на докладе, это был для меня шок. Я стал анализировать игры с точки зрения бихевиоризма, обратил свое внимание на доступную психологическую литературу и начал экспериментировать с наградами в своих играх.

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


Немного напомню

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

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

 

Режимы подкреплений

Люди (и животные в целом) подстраивают свое поведение под тип подкреплений. Например, если экзамены нужно сдавать раз в полгода, многие студенты начнут прикладывать усилия только ближе к экзаменам. Другими словами, вероятность того, что средний студент будет прилежно учиться в середине семестра – мала.

Преподаватель может начать проводить контрольные работы один раз в месяц. В этом случае студенты начнут готовиться за день-два до контрольной. Таким образом они подстраиваются под измененные условия. В итоге повышается вероятность того, что средний студент будет заниматься учебой в середине семестра. Но эта учеба не будет постоянной: в начале месяца студент пьет, гуляет, веселится, развивается, как личность, а за несколько дней до контрольной он с большой вероятностью возьмется за книги.

Зато если преподаватель решит проводить контрольные в случайные дни, многие будут готовиться постоянно – ведь неизвестно, когда следующая контрольная: завтра или через неделю. Другими словами, вероятность того, что студенты будут более часто готовиться – самая высокая из этих трех ситуаций.

Все это время преподаватель менял режим подкреплений: правило, устанавливающее вероятность, с которой подкрепление будет происходить. Существует много подобных режимов, но все их можно классифицировать по двум основным параметрам:

  1. время
  2. количество действий

В первом случае подкрепление происходит через какое-то время после выполнения действия (режим временного подкрепления). Например, помидоры в игре растут 8 игровых часов. Чтобы получить награду, игрок должен заходить в игру один раз в 8 часов.

Во втором случае подкрепление происходит, в зависимости от того, сколько действий было сделано (режим пропорционального подкрепления). Например, чтобы срубить дерево, нужно три раза на нем кликнуть. 

Will press lever for food
“Буду нажимать рычажок за еду”

В зависимости от этих двух параметров выделяют четыре базовых режима подкрепления, на которых строятся все остальные:

  • Режим подкрепления с постоянным соотношением
  • Режим подкрепления с постоянным интервалом
  • Режим подкрепления с вариативным соотношением
  • Режим подкрепления с вариативным интервалом

 

Режим подкрепления

с постоянным соотношением

[...]

Антон Волков о прошлом, настоящем и будущем

Антон Волков о прошлом, настоящем и будущем:

Информационный портал Prosto-site.org умудрился разговорить технического директора AlternativaPlatform Антона Волкова так, что новое о нём открыли даже давние его знакомые. Рассказ о прошлом, настоящем и будущем “Альтернативы” из уст одного из её основателей читайте в этом интервью.

a_volkov_interview.jpg

воскресенье, 27 марта 2011 г.

TowerDefence #8. Первая башня

TowerDefence #8. Первая башня:

Сегодня мы наконец-то добавим в нашу игру долгожданные башенки и научим их стрелять и убивать врагов. Но для этого прийдется много поработать [...]

пятница, 25 марта 2011 г.