• Register
Post news Report RSS Avatar Face Rework

Avatar face rework, new boots, custom shader development and a lot of bug fixes.

Posted by on

cover

Avatar face rework

I spent most of the week redesigning the face meshes of the avatars. It began with an experiment last Sunday with a new mesh for the druid.

druidFace

It was such an improvement, that I needed to redesign the rest of the faces.

New boot mesh

I got a new boot mesh from Madraox and added it to the avatar. We are currently designing the remaining meshes. After we finish this, I can add visual-changing boots.

boots

New ability SoulStorm for the HighKing

The HighKing was the first boss I designed for Raiding.Zone. He always lacked mechanical depth. He got a new ability called Soul Storm. You have to take shelter in a Resolution zone to prevent this damage. He uses this ability on all difficulty levels.

soulstorm

Shader for equipment system

For the boots, I needed to rework rendering for equipment.

I googled a bit and got inspiration from World of Warcraft and Skyrim.

You have to mask out certain areas of the torso dynamically. If the player equips an armor piece, you will mask out the mesh of the torso beneath it.

That will prevent the torso from glitching through the armor.

I implemented this system by assigning a torso mask to each armor piece. Boots have a texture that masks out feet. Armors have a texture that masks out the chest and parts of the arms.

The custom shader will then multiply these two images. If a pixel got masked out in any of the boot or armor masks it won’t render.

I needed to create two different shaders. One for the default player and one for the equipment screen. The default shader is a Unity Surface shader and looks like this:

<span style="color: #a2f; font-weight: bold;">void</span> surf (Input IN, inout SurfaceOutput o) {
    fixed4 c = tex2D (_MainTex, IN.uv_MainTex) *_Color;
    o.Albedo = c.rgb;
    <span style="color: #080; font-style: italic;">// Multiplicate the armor and boot alpha values
</span><span style="color: #080; font-style: italic;"></span>    o.Alpha = tex2D(_BootMask,IN.uv_BootMask).a*tex2D(_ArmorMask,IN.uv_ArmorMask).a;
}

For the UI I had to write a fragment vertex shader similarly.

That makes it possible to have multiple boot meshes too. So stay tuned!

Various Bug fixes

I did several playtests this week and found a couple of things to fix.

Bots will always follow and not cast if set to follow

There was a misimplementation of bot the movement. The bots would not follow you if they were casting. They will now always follow and abort their cast.

Charges won’t crash the game server

There was an error in the ChargeModifier for spell charges. That crashed the beta server a couple of times. Right now, it should be stable again.

Bots and other players looked in the wrong direction while running

This was fixed by setting their direction to the direction they run towards.

OSX users won’t get a warning on installing

Steam displayed a warning, that Raiding.Zone isn’t compatible with 64-bit OSX versions. I deactivated the warning because there is no problem with 64-bit. To be precise, I compile Raiding.Zone only for 64-bit.

Next Step: New Difficulty for levels

I already have a lot of ideas for new mechanics in the raids. They will focus on group interaction. That makes them hard to do alone and predestined for multiplayer. I also want to implement weekly changing obstacles for the levels. They are inspired by the affix system in mythic+ WoW. My main problem is, that I haven’t figured out a reward system for the adamant difficulty yet.

Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: