Dev Blog

Dev-Blog 105: Glory to the Gods! Some loose ideas!

03/26/2014

devblog_header08

Welcome back followers of the fearsome!

This week we are gonna talk a bit about some ideas we have for the god mechanics! We are hoping that a big part of Viking Squad will be the numerous Gods that you can worship and unlock during your voyage. Representing Gods artistically is kinda tricky, to solve this problem we’ve started characterizing our gods with enchanted stones, lashes of rope, and grim relics all over the place. We really wanted to get the primal and uneasy feel with these powerful effigies and hopefully with some clever art and effects tricks, you guys will love them as much as we do!

When you first climb aboard your rugged longship you and your crew get to each pick a different god to worship. We are hoping that these changes bleed into each other to make for interesting combinations. Some Gods could make more rare treasures show up but make the enemies harder, while another god could grant you some one use items every destination you hit. Currently the Gods aren’t implemented but we need to rough out ideas and really wanted to share this fun adventure with you guys.

Here’s the first design-doc we put together to explore some ideas. Look at that crafty viking stealing away that god!

VS_Doc_03

———-

Here’s how we could rough out some ideas for new gods. They can end up being themed along with an enemy type like these horrible goatmen! They worship a strange and old god that grants the worshiper and his party less health but the ability to gain it back from killing foes! To liberate the Goatler’s God you’ll need to cross paths with them during your voyage and hopefully raid and pillage their boss camp! At the end of a boss camp there would be their god-rock being worshiped by some of the Goatler’s champions and you and your crew will need to hack them up and liberate that crazy rock!

VS_Goatlers01

 

———-

So another week slays by here at Slick! After a crazy time “Pocket-Pitching” Squad over at GDC we are inspired to get right back in the saddle and get this game worked on! So thanks as always for checking out our dev-blog and until next time, keep worshiping those strange and old gods for sweet bonuses!

Jesse_avatar64-Jesse

Follow us:
Twitter: Nick: @nickwaanders Jesse: @jouste Caley: @caleycharchuk SlickEntertainment: @SlickEntInc
Google+ : Nick: +NickWaanders Jesse: +JesseTurner Caley: +CaleyCharchuk
Facebook: https://www.facebook.com/SlickEntertainmentInc

 

 

 

Posted by: Under: Art Work,Slick Entertainment,Vikingsquad Comments: Comments Off on Dev-Blog 105: Glory to the Gods! Some loose ideas!

Dev-Blog 104: Attack of the Animations!?

03/19/2014

devblog_header08

Welcome back followers of the fearsome. Today we share one of the challenges we’re solving behind the scenes on Viking Squad!

The start of a new project is a very fun time in the life of a developer. Random and exciting ideas fly around the room, problems you face are fresh and new. The game is full of possibility. However, along with each project comes one burning question you’ve probably never had to answer before. Since none of us have formally worked on a brawler our question came in the form of satisfying combat. “What makes a satisfying melee attack?”

A lot of our past experience came in to play here, but there were also grey areas. What do you emphasize in an attack animation? How will we get proper weighting on the hit? Where do vfx and sfx come in to play? With these questions we began playing around with our attacks.

First off, the animation. We tried a bunch of different animations, quick single frame swipes that left the motion up to vfx and slower hits with a lead-in swing. The single frame swipe felt too fast for a viking (think Strider or Ninja Gaiden) while the hit with the lead-in felt nice and impactful, it was too unresponsive for gameplay. You can see what we ended up with below.

VikingSquad01

What we ended up with is a bridge between these two styles. A short draw back with a quick snap to the hit frame. Your brain fills in the gaps between the drawn back arm and the extended reach. After the snap to the reach we hold for a fraction of a second to let the impact play out and give time for players to comprehend the action. We want our vikings to feel responsive and heavy, not agile. They are portly fellows after all!

Sound plays a huge part in selling the weight of an attack. Power Up Audio was kind enough to do a pass on what we had. There is nothing like a bassy thump to get your heart racing. You can see everything together below, keep in mind the combat is still in progress.

Effects are created to visualize the sound, rounding off the assault to your senses. Screen shake is also a different beast when same screen coop comes in to play, you cant have the screen shake every time a player hits an enemy. The screen would never stop shaking. So screen shake needs to be limited to events that would cause all characters on screen to jump.

Well thats it for this week. Until next time!

Caley_avatar64Caley

Follow us on twitter: Nick: @nickwaanders Jesse: @jouste Caley: @caleycharchuk SlickEntertainment: @SlickEntInc

Follow us on Google: Nick: +NickWaanders Jesse: +JesseTurner Caley: +CaleyCharchuk

Like us on facebook: https://www.facebook.com/SlickEntertainmentInc

Posted by: Under: Vikingsquad Comments: Comments Off on Dev-Blog 104: Attack of the Animations!?

Dev-Blog 103: Barbaric Badguys!

03/12/2014

devblog_header08

Welcome back followers of the fearsome!

This week we are showing some of the ideas we have for the ferocious foes that you’ll encounter on your voyages!

When coming up with different enemy faction ideas we try and think what would make them unique and interesting to interact with. Factions could have unique weapons and gods that you could pillage for your own to bring with you on future raids! Some enemies could only show up under the right circumstances or be summoned by gathering the right combination of treasure!

Even though all of this is brainstorming it’s still a lot of fun to get some ideas down to get our gears turning. Currently in the game we’ve created a “generic” viking un-dead faction we cal l the draugs, based off of the very cool viking “again-walker”, or “one who walks after death”. We needed a small variety of enemies with some basic behaviors so what would be better than some simple minded Nordic zombies?

In this image we can see that we’ve used the Valknut to show just how tough these guys are currently in game. The melee axe guy is our toughest with 3 life points, ranged is a hearty 2, and the small little quick gremlin only takes one hitpoint but is still quite capable of ruining your viking’s day. These 3 enemies have done a great job at helping us get the feel for the game so far and have most likely paved the way for much more interesting and varied enemy A.Is.

VS_basicenemies01

———-

With the basics out of the way, we’ve been able to brainstorm out some new enemy factions that we’ll be showing off in future dev-blogs. The most recent is featured in our new web page title screen! We are currently calling them “Fish-Beards” and they are gross and stinking enemies that you’ll need to take down during your voyage! Here’s an image with some ideas on their preferred god and special weapon.  A fishing spear may seem like a simple weapon but we are hoping to make every weapon class bring something new to our lane based battlefield.

VS_Doc_07

———-

So another week pillages by here at Slick! We are hard at work getting stuff into the game and we hope you like what you’ve been seeing! Next week Nick and Jesse will be down at GDC meeting up with fellow devs and checking out the Independent Game Summit. Thanks a whole bunch for checking us out and until next time, keep those axes ground and those sails full of icy winds!

Jesse_avatar64-Jesse

Follow us:
Twitter: Nick: @nickwaanders Jesse: @jouste Caley: @caleycharchuk SlickEntertainment: @SlickEntInc
Google+ : Nick: +NickWaanders Jesse: +JesseTurner Caley: +CaleyCharchuk
Facebook: https://www.facebook.com/SlickEntertainmentInc

Posted by:  Under: Tech,Vikingsquad

Posted by: Under: Art Work,Slick Entertainment,Vikingsquad Comments: Comments Off on Dev-Blog 103: Barbaric Badguys!

Dev-Blog 102: Water world

03/05/2014

devblog_header03

Welcome back followers of the fearsome!

GDC is coming up, so we’re working hard to get *something* running that we can show off. As we’re a viking game, most of our game will have a lot to do with the ocean and islands, so we need a decent looking ocean. It needs to be able to display many different styles of water: large ocean-like waves, smaller bay-like waves, high winds, low winds, etc. Also, it needs to look cartoony, to fit the style of the rest of the game.

I started looking into shaders for ocean rendering, and found that a lot of methods use a lot of math and large shaders to make them work. This is great, but not really something I want to spend a ton of time on a the moment. The one page that I thought had a pretty good explanation on how they did their ocean rendering is this one: http://hosukchang.com/making-ocean-1/. The interesting part of that page (besides all the cool video’s) is the image with all the circles on it. I figured this was worth a test run in a very simple shader.

So I started working on a subdivided plane, with a vertex shader to alter the position of the vertices over time. I slapped an internet test texture on it, and got to building some simple vertex shader to move the points.

start

Now, to get some wave action, we’ll need to add an offset to the position in the shader. Instead of just adding a sine wave to the Z (up), I’m also adding a sine wave to the X (sideways), with a 90 degree phase shift. Phase shift is simply adding an offset to the sine evaluation function for the X direction. So in a GLSL shader, it looks something like this:

attribute vec4 v_position;
attribute vec2 v_uv;
uniform mat4 wvp;
uniform float time;
uniform float phaseshift;
uniform float xamplitude;
uniform float zamplitude;
varying vec2 f_texCoord;
void main()
{
    vec4 pos = v_position;
    pos.x += cos(time + phaseshift) * xamplitude;
    pos.z += cos(time) * zamplitude;
    gl_Position = wvp * pos;
    f_texCoord = v_uv;
}

As you can see, there are a few variables to play with: phaseshift, xamplitude and zamplitude.  Here are some examples:

sine

The image above has a phase shift of 90 degrees (1/2 PI), so each point will traverse a nice circle. It generates big rolling ocean waves.

sine with phaseshift 

When you change the phase shift to about 125 degrees, and make the xamplitude larger than the zamplitude, you can generate waves that are a bit more like breaking waves (like the image above), with a steeper angle on one side versus the other side. You can go way crazy with this and generate something like this:

sinebreakingwave

In the image above you see one more thing. Blending between textures based on where the ‘cycle’ of the vertex is. I’m using two textures, one quiet water texture, and one frothy foamy water texture (which is also a test image from the internetz), and blend between them using another cosine to get the blend factor.

The last thing to note about these images is that the water kind of appears straight at the back, and the color fades to a different color. This is because I’m fading out the wave heights towards the back, and fade the color to the skybox color behind it.

When all is said and done, it looks like this:

And here’s the whole shader with a ton of tunables in case you’re interested. (Make sure to right-click and save!)

Alright, that’s it for this week, I’ve gotta get back to implementing cool stuff!

Nick_avatar64 Nick

Follow us on twitter: Nick: @nickwaanders Jesse: @jouste Caley: @caleycharchuk SlickEntertainment: @SlickEntInc

Follow us on Google: Nick: +NickWaanders Jesse: +JesseTurner Caley: +CaleyCharchuk

Like us on facebook: https://www.facebook.com/SlickEntertainmentInc

Posted by: Under: Tech,Vikingsquad Comments: 4

Follow us!

titlebutton_twitter titlebutton_facebook titlebutton_youtube titlebutton_twitch titlebutton_spreadshirt

Join our mailing list!

/ /

Dev Blog

January 20 2017

I almost can’t believe it: Slick Entertainment is a decade old! In the last 10 years we’ve made a bunch of great games, and I am super proud of what we’ve achieved with our small team: 4 fun games, custom C++ engine on 6 different platforms, 3 games feature online multiplayer, all hand-drawn art for […]