воскресенье, 1 ноября 2015 г.

Update: New Blog

Накоец-то я решился и сделал блог на независимой платформе:
Let's Make a Game

Буду там продолжать писать там о процессе создания игр, геймдизайне, постить постпортемы. Для начала хочу написать цикл статьей про Game Jam'ы, от того что это и где это, до улучшения своих игр за ограниченное время которое эти Game Jam'ы нам предоставляют.
Так же туда передет и Game Design Analysis, где я также постараюсь больше внимания уделять тому, как можно улучшить некоторые аспекты игры чтобы сделать ее лучше.

понедельник, 29 июня 2015 г.

Update: Tumblr

Решил пока переехать на tumblr и немного изменить формат постов.

skorotaev.tumblr.com
Блог про разное, сюда попадают как post-mortem'ы так и посты процесса разработки - например игры для TableTop Simulator.

gamedesignanalysis.tumblr.com
Блог где я стараюсь достаточно регулярно брать игру и находить в ней хорошие и плохие решения, пытаюсь найти способы по улучшению игры в разных аспектах, от гейм-дизайна до монетизации.

Также можете найти меня в твиттере (@StalsKnight) гдя я постю разные лекции и статьи по гейм-дизайну, а также скриншоты, гифки, апдейты по разрабатываемым играм.

воскресенье, 5 октября 2014 г.

Linker (Ludum Dare 30)

Мы участвовали в Ludum Dare 30, сделали за 3 дня игру на Unity и по результатам заняли
35 место в Overall, что конечно очень круто. После релиза John Diver'a займемся доработкой, добавим историю, новые уровни, механики и выложим под мобильные устройства.



Timelapse

Deep Dive Update #5 (John Diver)

Мы успели сделать еще 3 игры на разных Jam'aх с прошлого обновления Deep Dive, в перерывах между которыми мы про него не забывали и дорабатывали. Нам пришлось переименовать игру и теперь она называется John Diver.


Sliced Sprite
После опыта использования Unity и Ngui понял что это очень полезная вещь и как оказалось она есть в cocos2dx (в виде одного из extension'ов - CCSprite9Slice). С помощью него растягивается картинка красной рамки, которая появляется во время


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

Разные разрешения
Поправил положение gui объектов для разных разрешений. После опыта создания gui в Unity используя NGUI возвращаться с созданию gui без редактора конечно лениво, так что если будем еще что-то то делать на cocos2dx - то стоит поискать редактор gui.

Условия на объекты
добавил условия на появление объектов на уровне - например теперь рубины в конце уровня появляются только если вы ни разу не проходили этот уровень.

Другое
Пока решили убрать необходимость покупки перехода на следующую локацию и оставить карту как возможность пойти на любую карту и возможно пофармить либо пройти обучение заново. Ну и в основном правились баги.

P.S. Постараюсь не делать таких больших перервывов между постами.
Осталось совсем немого доделать до софтланча...

вторник, 19 августа 2014 г.

Game Jams

Как-то совпало что сейчас Game Jam'ы идут друг за другом через каждые две недели по выходным и найти времени что-то доделать и написать пост не получается.
Ludum Dare 30 будет проходить в эти выходные - и мы опять будет участвовать локально (http://blog.gamesjam.org/post/95103626912/ludum-dare-30). Причем в этот раз в четвером.

Со времени прошлого поста - мы успели сделать уже две игры на Unity (за одну даже умудрились выиграть второе место и получить приз) при этом записав Timelapse их создания.

Dream Ticket (MiniLD 53)
strategy, clicker
Play Here





Broken Engine (Games Jam 2014)
action, shmup + time managment
Play Here


суббота, 26 июля 2014 г.

Полезности для Unity3d / С#

На прошлых выходных опять участвовали в Ludum Dare - на этот раз в mini версии. Игру решили делать в первый раз на Unity, так что в процессе изучения решил собрать список полезного что получилось найти.
MiniLD#53 game: http://stals.itch.io/dream-ticket
Timelapse: http://www.youtube.com/watch?v=ufH4JAloVe8

Цвет в playmode
Очень советую поменять цвет в play mode чтобы необычайно не редактировать, а потом не сохранится
http://answers.unity3d.com/questions/9159/best-strategies-for-not-accidently-editing-whilst.html

Система контроля версий
При начале нового проекта нужно сразу настроить unity3d для использования git / mercurial / ...
http://stackoverflow.com/questions/18225126/how-to-use-git-for-unity3d-source-control

New Behaviour
В Unity можно заменить чтобы при создании класса он по умолчанию наследовался не от MonoBehaviour а от своего расширенного класса, как например такого




Для этого нужно немного отредактировать файл, с тем расширенным Behaviour
 OSX 
    - /Applications/Unity/Unity.app/Contents/Resources/ScriptTemplates 

 Windows
    - C:\Program Files (x86)\Unity\Editor\Data\Resources\ScriptTemplates

в файле 81-C# Script-NewBehaviourScript.cs.txt

Extension methods
http://unitypatterns.com/extension-methods/

Autogenerated set/get methods
public Vector3 movement { get; set; } 
создает геттер и сеттер, позволяя потом добавить туда логику если потребуется

Mono develop disable autoindentation
http://forum.unity3d.com/threads/monodevelop-annoying-auto-indentation.213464/
MonoDevelop-Unity -> Preferences -> Code Formatting -> и правее c# в выпадающем меню выбрать Visual Studio
Чтобы изменить в уже созданном проекте
Project -> Solution Options ->  там найти Code Formatting и дальше также

Также в нем не работает Ctrl+C/V и т.д. если находиться на русской раскладке, что я пока не нашел как побороть.

Var
полезно знать что var не тормозит производительность
http://stackoverflow.com/questions/356846/will-using-var-affect-performance

NGUI
Также если вы собираетесь использовать NGUI то вот пара полезных ссылок:
FAQ + как использовать
tutorial

and dont forget to save a layout - Windows>Layouts>Save layout

NGUI HUD Text
https://www.assetstore.unity3d.com/en/#!/content/3831
http://www.tasharen.com/forum/index.php?topic=997.0
Очень полезная штука чтобы прилеплять Ngui объекты к обычным Unity GameObject. Так например добавить progressbar hp под персонажем игрока.
Но при использовании чисто UIFolllowTarget скрипта, важно помнить что для его работы у него должны быть child элементы - так что для того чтобы за чем либо следовал например UILabel нужно создать пустой GameObject - добавить на него UIFollowTarget, и добавить сам Label уже как child.

Custom fonts
Сайт - позволяющий сделать fnt с stroke или например градиентом
(для корректной работы в Unity нужно выбирать Format - .txt)
http://kvazars.com/littera/

а также полезный туториал о том как создать и как импортировать шрифт в unity ngui
http://www.youtube.com/watch?v=ni7TfMPWq5M

Полезные бибилиотеки
Бибилиотека для движения, scale, rotate используя easing, а также shake
https://github.com/UnityPatterns/AutoMotion/ by ChevyRay

Если буду находить еще что-то полезное - буду дальше обновлять пост.

воскресенье, 6 июля 2014 г.

Deep Dive Update #4

В последние недели разработка немного замедлилась и я начал больше изучать Unity - надеюсь найду время сделать пост начинающего юнитовода - какие знания, инструменты очень полезный на начальном этапе освоения. А пока - что было доработано со времени прошлого поста:

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


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

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

Swipe Dive!
Наконец-то нашелся относительно простой способ реализовать это улучшение. Основная идея которая помогла - это сделать камеру постепенно возвращающиеся на точку дальше которой игрок начинает двигать камеру.


Другое
Починил начальный угол поворота движков на TitleScreen. Провел небольшой рефакторинг и добавил полезных функций в slib. Был исправлен и добработано обучение на мобильных устройствах.