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

Testing new weapon rack

Game design is pretty fun. But currently I am bored from basic mechanics. And will experiment with new one.

This mechanic is closer to my goal of polyomino and pretty interesting as well.

As you can see - all towers now can be spawned on column which you want to.

Every kind of module is present in weapon rack (blueprints) and you can place it on any nanofactory to produce it. Timeouts dropped for awhile. I wish to test new mechanics without encumbering player with waiting more than needed.

This is not a simulator. It is more arcade action tower defense with puzzle composition part.

As you can see composition is working too. Some minor bugs (game is in alpha), but still working. I can say thanks for Unity and their development team.

Now I can implement big cannons composition with current setup. One problem I have - monominoes too slow to make really big cannons. First tiers will be introduced soon: 1x2, 2x2, 3x2.

I think no one risky player will play without armor. But if they will be, 1x3, 2x3, 3x3 weapons will be introduced later. They work in test scenes, but not configured for main game level.

среда, 25 ноября 2015 г.

Struggling with feature creep

When I started development of game, I does not know Unity at all.

After some development I learn it enough for working comfortably. But with comfort comes itch about my first goal of game (vision). And it is more ambitious, than game I developing now.

After some side missions and experiments I grasp myself and said: "Sit down and write game as seen first time. After that upgrade it for next version and so on"

And this returns me to my feet from wandering on clouds.

After seven months of development always wants more than seen in game thousand times. And features pop out as rabbit from hat.

четверг, 19 ноября 2015 г.

Prototyping modules queue and spawner places

After some thought I made prototype for module queue and spawner locations:

Code for queuing of cards I already implemented in big ship scene. So this can be easy to make.

After queue is filled no more modules will be spawned. This addition to gameplay can gave depth to game.

Here is a part of animated move in code:

I use lean tween for animated movement of cards, so module blueprints will use this logic also.  

Adding another method to play game can add interest. Let try it.

N-minoes begins with dominoes

Currently game introduces monominoes but player has no control over placement of it. Maybe I should define which column it will use when spawning.

This can add depth to game. So you can fill blocks with lasers entire ship and then convert them to more powerful. And cannons, and missiles.

Let's try another kind of game level. Modules will automatically and randomly selected from currently available modules and fill the deck of blueprints.

Player will pick which column to use and first module will be extracted from deck and fall to game field. After falling it will spawn small module.

When modules placed as big cannon pattern - they can be nanolathed to more powerful cannon/module.

Will try it in game.

Developing game can be frustrating

Today is rainy day and difficult to start an editor. Youtube eat time from gamedev. But it is very boring after time.

Launched game and played it. It has bugs, but mostly game is pretty fun. But I want to make it more puzzle like. How I imagined in my head - falling blocks, that form larger blocks and converted/nanolathed at wish or automatically.

Joy of game to see how enemy is blow apart with your cannons. But main idea definitely has more depth. You should think where and which module to spawn, to get more powerful module.

Let's try implementing dominoes and triminoes logic before tetraminoes and pentaminoes.

Too difficult to understand how to make movement and rotation to GUI for touch control. Maybe buttons, maybe swipes. I will think about it. But currently introduce buttons.

вторник, 17 ноября 2015 г.

Game demo with music and level changing (looping)

After tweaking level changing logic and music to game, I introduce new game demo.

Demo v.0.101

The gameplay and music you can see below:
Video on youtube

So you can try it with new graphics. I'm currently working on unlocking logic and surprises (big weapons as gifts)

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

Think about life game

This grid provide me idea about game of life (Convay). Maybe modules on grid should proceed and upgrade as in game of life.

But mostly stable forms of GoL is square and hexagon. Others is flip flop. And game not very controllable. This idea will be written and reviewed later

Introduction of n-minoes logic.

Will generate n-minoes in 3 by 3 grid. First I must find which kind of N to use (1,2,3,4,5). Then filter all that fit into 3x3 grid. And randomly select from chosen.

Logic is simple. But I must display configuration to player. So, will make it configurable (with activatable game objects represent cells of grid)

Generate n-mino by hand, I can minimize coding and select only valid one.

But for n-mino I must use a class or struct with template (which cells used, which is free and position on grid, and rotation)

Maybe I should mirror them, not only rotate. And must be specified position and transformation on grid (rotate,mirror vertical, mirror horizontal)

Working on falling blocks

After some deep thoughts decided to make module kind selector for currently random generated shape.

Will use it as definition what kind of blocks now will fall (after some timeout). Physics falling very fast and I think, that rotation can be present only on layout grid. After that it will fall down and stick together.

Now I will try to generate n-minoes on layout field.

Falling block prototype

Developing prototype for core game-play mechanics - falling and rotating blocks.

This field 3x3 can provide user with ability to craft new module in place. Or drop basic modules from this grid.

This is advanced version of nano-factory and can be obtained by unlocking/upgrading it.

Here how it looks for falling block tetro-mino view.

Maybe I should make big tower inplace (and display price of weapon to construct, or construct them after falling)?

I already have crafting in game field, and will experiment which one is more fun.

суббота, 14 ноября 2015 г.

Enliven gameplay

After some play sessions I decide to enliven game-play with levels of inplace spawning and crafting. This can help craft any blueprint of big cannon and spawn big modules.

Disabling physics also provide new feeling of game.

N-Minoes falling level
I think about usages of mono-,do-,tri-,tetro-,pento- minoes. Main game idea - dropping and rotating n-minos and fit them in place. Then color specify what will be spawned: blue - laser, green - cannon, red - missiles, gold - armor e.t.c

This is main game idea. When started game I in process of learning unity. Now when knowledge gain is significant - n-minoes will be tried in game.

Here is idea how it will look in game:

This core idea very me and fun. Investigation of legal risks about Tetris LLC, I found, that if game different enough (compared side by side), they can not sue you.

Falling and rotating blocks and n-minoes can not be copyrighted and patented. So I wish to work toward implementation of this idea (first and long waiting) in the game.

Debugging level changer and tower selector

Level changing logic is pretty complex. And main work interfere with game production. But trying to play every day keep me motivated enough to work on it.

Added background music for tower selector scene and click sound for each button.

I think, that on click button must have particle effect and color wave. Will think about it. Shaders and particle systems for it will be very UI specific and interesting to write.

Here you can listen music for this scene:

Added all module kind to selection. And now will work on spawners for these modules/towers.

Three module per level is boring. I try to add 6 or 9 kind simultaneously to improve gameplay and make it more fun.

Also planned gifts from bosses - big cannons, that you can materialize in level. Received as bonus for good fight in rounds before. Will stay until used (to end of level) or destroyed by enemy.

Only bigger ship provide ability to construct large and heavy weapons.

четверг, 5 ноября 2015 г.

Working on level changer logic : Hub level

Hub level debugging

I wrote video log about my development of hub level. You can see it here:

My current logic - provide hub with story and unlock level, but use it only when player win previous round.

This is main chapter 1 game loop. Player will play until unlock all basic modules and upgrades to it (tier 2 and 3).

Also it can unlock support and refit next mission in hangar and blueprints.

Small bugs arise and I continue to squash them. Hunt is on.

Thinking about composite pattern for level. This can help generate tree-like story with branching. But looping is not possible. Maybe extension of this pattern?

Refit large towers art

Artist finished 3d art for each of large towers.

And I refit them. You can see how it works in video:

Heavy cannons

Heavy missile silos

I think, that first ship will use them without composition - as bonus for good level end.

Only bigger ships will produce them with nanolathes. One big weapon and one life for it. This can be pretty fun and interesting game.

среда, 4 ноября 2015 г.

Developing online part2

With open broadcasting software I try to test level changer logic and make it work.

Currently I try to make translations. In future these online translations and development will be anounced on twitter @sortie4.

Listening myself is very rediculuos. Slow and funny. After some time I will adapt and work as usual.

Video broadcasting is fun. You can sense other people around here. Loneliness is pretty bad thing.

When you develop yourself to specific level in your craft - so small people can talk with you and understand what you said.

Maybe this is reason why I trying to make my video logs and online sessions. Need to meet new friends and talk with them.

So, I happy that you read it and look at my video. Thank you, you're awesome.

I wish to develop boomtris online most time. 

вторник, 3 ноября 2015 г.

Implemented shader for powerlines

After some digging to unity shaders I found way to make a shader, that has alpha masked, scrollable and self-illuminable.

This helps to make ship looks more alive. Blinking sparks of energy on power lines can tell you, that ship is working and listen to you.

You can see it in action below:

Game need rebalance for new dynamic power ships. I get killed at the end of demonstration. And this is normal difficulty. Maybe I have no enough skill to play, but game must be playable and winnable on normal. Tweaking is interesting part of gamedev.

Sense yourself as Garret from Mass-Effect in endless loop of calibration.

Core mechanics changes enforce to retest and rebalance all scenes, where it applied.

Here is code if you wish to use it:
Shader "Custom/AdditivMaskScrolled" {
         Properties {
         _TintColor ("Tint Color", Color) = (0.5,0.5,0.5,0.5)
         _MainTex ("Particle Texture", 2D) = "white" {}
         _AlphaMap ("Additional Alpha Map (Greyscale)", 2D) = "white" {}
     _ScrollXSpeed ("X Scroll Speed", Float) = 0.05
     _ScrollYSpeed ("Y Scroll Speed", Float) = 0.0
     _EmitLight ("Emission", Float) = 5
     _Specular ("Specular", Range(0,1)) = 0.5
         SubShader {
             Tags {"Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent"}
             Blend SrcAlpha One
             AlphaTest Greater .01
             ColorMask RGB
             Cull Off Lighting Off ZWrite Off Fog { Color (0,0,0,0) }
             BindChannels {
                 Bind "Color", color
                 Bind "Vertex", vertex
                 Bind "TexCoord", texcoord
             LOD 200
             #pragma surface surf Lambert noshadow noforwardadd
             sampler2D _MainTex;
             sampler2D _AlphaMap;
             fixed4 _TintColor;
       fixed _ScrollXSpeed;
       fixed _ScrollYSpeed;
       fixed _EmitLight;
       fixed _Specular;
             struct Input {
                 float2 uv_MainTex;
                 float2 uv_AlphaMap;
             void surf (Input IN, inout SurfaceOutput o) {
         fixed2 scrolledUV = IN.uv_MainTex;
         fixed xScrollValue = _ScrollXSpeed*_Time;
         fixed yScrollValue = _ScrollYSpeed*_Time;

         scrolledUV += fixed2( xScrollValue, yScrollValue );
         half4 c = tex2D(_MainTex, scrolledUV);

                 o.Albedo = c.rgb*_TintColor;
                 o.Alpha = c.a * tex2D(_AlphaMap, IN.uv_AlphaMap).r;
         o.Specular = _Specular;
         //o.Gloss = 10;
         o.Emission = _EmitLight;
         FallBack "Diffuse"

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

Trying to make some vlog

Blogging is pretty sweet, but I always wonder what video logging can give to me. And honestly saying this kind of conversation is very interesting one.

Look at video. First time video logging and I must learn something from it.

This video written by open broadcaster software. Working on game level and implementing all spawners with new art.

Under the hood level manager introduced with ability to change levels in specific manner and wrap some actions around some of them. In example: main hub - outfit your ship nano-factories has two levels which spawns when you win previous level: new story plot unveiled and weapon unlocked.

Video log about level switching is here.  Silent one. First experiment of writing vlogs.