20 July 2019

WildStar's Legacy: The Telegraph-based Combat System

Giving it some thought and a quick search I realized something. It seems that Wildstar has not only revolutionized but created the telegraph-based combat system. Since other games that are similar in combat and gameplay start to implement it slowly over time I figure I should write about it on my blog.

What Is a Telegraph-based Combat System?

Simply put a telegraph is a system sending messages. Which pretty much matches the purpose of this combat system. The goal is to inform players where they can stand to avoid getting hit by enemy attacks, but also to inform them where it is good to stand. While you might think that this makes your game easier it's a helpful system that improves the quality of your game to fix certain issues. These issues appear when players try to beat a challenge but fail and don't know why. One of the things that makes video games fun to play is that there' a clear indication of what the player did wrong. Avoiding telegraphs in a game that requires and relies on the player position may result in the player not knowing where the damage they take comes from, breaking this idea and leading to complain and discomfort of the player.

WildStar's Creation of a new Combat System

In the following, I'm going to talk about where the telegraph system comes into play, how the game WildStar implemented the telegraph-based combat system. Therefore I'm going to focus on what telegraphs there are and the meaning they convey. After that, I'm gonna talk about the accessibility it provides and lastly I'm gonna mention all the downsides it still has or created. While this system is an improvement for movement and position heavy games - like all things - it's not perfect.

Where Does the System Come Into Play?

Back in the old days, tap-targeting was the goto style for combat systems as it was the easiest to implement from a collision detection point of view. For tap-target, we make an animation towards the current target and deal with the respective damage. Nowadays games went away from tap-targeting and have switched to more dynamic systems. Some games use a mix of different styles, such as Guild Wars 2 for example. Anyways with a collision-based approach, it is harder to tell when you are hit by an attack or when you hit an enemy. This is where the Telegraph-based Combat System comes into play. The idea is to mark with telegraphs where an ability hits and allows for simple collision detection of "is a hittable object in the telegraphs area". This means that telegraphs can be used for all abilities that are not single target and tap-target.

WildStar's Implementation

Illustration 1: Illustr. of the
components of a telegraph in WildStar
WildStar uses a total of two different types of telegraphs that, however, come in all kinds of shapes and sizes. These can be found most often in rectangular, cone-shape or circle form. Additionally telegraphs consist of three components. The border, the background and the fill (see illustr. 1). One aspect that is not clear from the illustration is that all three elements have an alpha component. This means that the background is visible as well as that overlaying telegraphs will represent more clear and vivid marks. In the following three paragraphs I will describe the implementation of the three types of telegraphs and how they behave, each having an explanatory illustration giving a visual idea to further help to bring it across. Overall the telegraphs can be identified by their pattern.

Full-Pattern

Illustration 2: A screenshot of a
full-pattern AoE
Full-pattern AoE's (Area of Effect) have full background and fill up with their fill. The way this work is that they can be ignored as long as they do not fill up completely. Standing in one of these AoE's when will result in getting it once it has filled up. After this procedure, they will disappear. This means these types of telegraphs only deal damage once. The border cuts off the dangerous area from the non-dangerous one. The background helps further marking the area in case the border drowns in visual noise and the fill is the warning on when the AoE will affect anything in it. This gives the player enough visual cues to get an idea about the positioning (where should I stand?) and the time (when should I?).

Striped-Pattern

Illustration 3: A screenshot of a
striped-pattern AoE
Striped pattern AoE's have a striped pattern in their background and fill up with their fill. Notice that the fill does not use a pattern but the alpha value to emphasize on the striped pattern of the background. These work differently from the full-pattern AoE's as they deal damage constantly to the target in it. The idea behind the fill, in this case, is similar to the full-pattern fill. With the full-pattern fill, the AoE disappears after it has been filled completely. This is the same idea for the striped-pattern. This is important so that the player can conclude that the filling of AoE's has something to do with time. In game design, it is important to try to let the same instance or happening have the same behavior. The stripes are also animated giving a sort of a dangerous vibe from them and helping to be able to see or detect them under visual noise. The player will know not to stand in these and get out of them immediately. The filling tells the player when they can consider moving to that area if the current position is getting dangerous. Again the "where?" and "when?".

Accessibility of the Telegraph System

One of the biggest issues of marking telegraphs is that not everyone sees colors the same way. A week's red outline will not help on green grass if the player can not differentiate between green and red. Even if the AoE is animated under visual noise it might drown especially for those players. WildStar solved this issue by allowing the player to fully customize the color and alpha of the telegraphs and it's components. This means it is potentially possible for the player to modify the border, background and fill with the types of AoE's so that he can determine the perfect settings where the AoE's are visible under all the circumstances in the game. Or disable them if wanted (e.g. alpha = 0).

Disadvantages and Issues

As I already mentioned this is not perfect. So, there are still some issues. One of the biggest issues I've seen is that the collision of the player or enemies is not quite clear. This means whether you are in the AoE or outside of the AoE when standing near the border is not always clearly indicated resulting in the player getting hit even though they thought they weren't inside the AoE. A plus point of the telegraph system here, however, is that the player knows why he was hit, even though they will feel cheated and see it as unfair. A solution for this could be to give the players and enemies a telegraph for their hitbox that is unique from the others and can be modified respectively. I would advise making it's border bigger to make up for the inaccuracy of tiny pixels. A mechanic that is similar to the coyote time. At this point, I'd advise to always indicate AoE's bigger than they are in this regard.
The other issue is that AoE's still may drown in too much visual noise. If we assume that multiple AoE's overlap each other it is hard to tell which telegraph means which and where AoE's or support is. A priority list may solve this which can potentially be fixed by the alpha values but requires more research, I would say.

Conclusion

So, if you plan to make a dynamic combat system game that requires player position or have one as a game as a service (GaaS which comes from SaaS) then I'd advise you to implement a telegraph-based combat system. If the players don't like it they can disable it by setting all alphas to zero. Believe me, it will improve the player experience.

Also thanks WildStar for creating this. R.I.P. until the private servers are runnable.

27 June 2019

Guild Wars 2: Dragon Bash Without Procrastination

I only realized it now. This has become a little series of my blog. Even though I skipped some of the in-game events of Guild Wars 2 here and there most of them have a "Without Procrastination" post already. This is the 4th one, so without further ado, let's get to it.

Dragon Bash, It's Been A While

Dragon Bash is a festival event in Guild Wars 2. While it is not completely new as it has existed in 2013, it seems to have gotten a major overhaul. We have four new attractions and three are not available. With this overhaul came a new bunch of achievements and a lot to do.[1]

As with previous posts I'm gonna go into the achievements that need you to do things multiple times or a lot. The idea behind this is to instead of farming them, do a little every day to prevent unnecessary farming or to not be able to complete the event. This is similar to the way you prevent procrastination in real life by working a little on it even if it's just a tiny bit, as it still provides progress and in the long term you have less to do at the end and have an easier time hitting the deadline.

What Is There To Do?

Before we can get into how much we need to do every day we need to select the relevant achievements. For me, relevant achievements are those that give achievement points, as they provide a limited reward that is relatively unique. Additionally one-time achievements like "complete this adventure on gold" boil down to.. *ahem* "JUST DO IT!". With that out of the way, here's the first draft of the list of achievements I deem relevant, broken down into the annual category and an "others" category:

Annual
These can be repeated every year to get Annual Feats achievement rewards 50 achievement points each up to 1000.
  • (Annual) Zhaitasty - Eat 1000 Zhaitaffy
  • (Annual) Paper Dragon - Bash 150 pinatas
  • (Annual) Going the Distance - Finish 15 laps of the race
  • (Annual) Color the Sky - Launch 100 fireworks
  • (Annual) Hologram Herder - Participate 5 times
  • (Annual) Masters of the Arena - Defeat all 5 bosses
  • (Annual) So Lifelike - Defeat 300 holographic minions
  • (Annual) Winner's Circle - Win the moa bet 5 times
Others
These can be completed only once in a lifetime.
  • Color the Sky - Use 150 fireworks
  • So lifelike - Kill 500 holographs
  • Hologram Herder - Participate in 10 Stampede events
  • Winner's Circle - Win the moa race 10 times
  • Paper Dragon - Break 300 paper dragon pinata's
  • Zhaitasty - Eat 5000 Zhaitaffy
  • Cheerful Ingester - Consume 3000 foods
  • Burn Them All - Burn 3 effigies
  • Masters of the Arena - Defeat all 5 bosses
  • Help a Quaggan Out - Give 1000 Zhaitaffy to the Quaggan
  • Stampede Survivor - Complete the third round of the Stampede 3 times
  • Arena Slayer - Defeat all 5 bosses
  • Party Commander - Do your dailies
  • Annual Feats - Finish 7 annual achievements

Repetitive Achievements

It's also important that some of these achievements are repeatable giving more and more achievement points. We need to calculate that into the amount we have to do.

Achievement AP1 per Repetition AP1 Limit Resulting Repetitions
Help a Quaggan Out 5 25 25 / 5 = 5
Stampede Survivor 5 25 25 / 5 = 5
Arena Slayer 5 25 25 / 5 = 5
Party Commander 10 100 100 / 10 = 10
Annual Feats 50 1000 1000 / 50 = 20
1AP: Achievement Points

Every Day a Little: Annual Part

Let's right to it. We just need one more thing though. The duration of the event. This can also be found on the Guild Wars 2 wiki as well as on the official post. The event goes from the 25th of June to the 16th of July.[2] That is equal to 21 days ±1 day (depending on your work or playtime). So for the following calculation, I'm gonna use 20 days, you can use replace the 20 in the following calculation with the number of days the event still has.
Small tip: If you subtract the current day from the days in the month and add one to it (= counting the rest of the days in the month) e.g. 30 - 27 = 3, then you can add the next months days to it to get how many days it is e.g. 3 + 16 = 19 => 19±1 days until the end of the event from the 27th of June.

Let's go down the list.
  • (Annual) Zhaitasty: We need to eat 1000 / 20 = 50 Zhaitaffy a day.
  • (Annual) Paper Dragon: We need to bash 150 / 20 = 7.5 or 7 to 8 pinatas a day  
  • (Annual) Going the Distance: For this, we need to finish 15 / 21 = 0.75 laps a day. However, this is quite inefficient as we can just do 3 laps in one race because that's less annoying. That means we only need 15 / 3 = 5 races in 21 days which is 5 / 20 = 0.25. That's about one race every four days.
  • (Annual) Color the Sky: This requires 100 / 20 = 5; So, 5 fireworks launched per day
  • (Annual) Hologram Herder: This needs 5 / 20 = 0.25, just like the races one participation every four days.
  • (Annual) Masters of the Arena: Four days like the previous one. I would recommend doing it in one go though as you may end up with bosses you don't wanna do.
  • (Annual) So Lifelike: The recommended amount is at least 300 / 20.0 = 15 a day.
  • (Annual) Winner's Circle: Win one bet every four days.
This is the yearly to-do list. Thus I'm gonna write it down again nice and clear. To complete Dragon Bash yearly/annual stuff you need to
  • Eat 50 Zhaitaffy a day.
  • Bash 7 to 8 pinatas a day.
  • Complete one whole race every four days or one lap every three out of four days.
  • Launch 5 fireworks per day.
  • Participate in the Hologram Stampede event every four days.
  • Finish all bosses in the arena once.
  • Defeat 15 holograms a day.
  • and win one moa race bet every four days.

Every Day a Little: The Rest

Now if you would like to finish all of the achievements this year it looks different. Let's see what the normal achievements need.
  • Color the Sky: 150 / 20 = 7.5, meaning 7 to 8 fireworks need to be launched a day.
  • So lifelike: 500  / 20 = 25, holograms need to be killed in a day.
  • Hologram Herder: 10 / 20 = 0.5 participations a day, which is equivalent to every two days.
  • Winner's Circle: Just like the Hologram Herder, every two days.
  • Paper Dragon: This requires 300 / 20 = 15 pinatas to be bashed per day.
  • Zhaitasty: A freaking 5000 / 20 = 250 Zhaitaffy per day needs to be consumed.
  • Cheerful Ingester: As well as 3000 / 20 = 150 Dragon Bash food items.
  • Burn Them All: 3 / 20 = 0.15 effigies to be burnt. That's every 6 to 7 days, but it makes more sense to do it in one go.
  • Masters of the Arena:  Same as the annual. Four days like Hologram Herder (5 / 20 = 0.25). I would recommend doing it in one go though as you may end up with bosses you don't wanna do.
  • Help a Quaggan Out: This requires 5 repetitions each needing 1000 Zhaitaffy. That's 5 * 1000 = 5000. So 5000 / 20 = 250 per day. Additionally to the 250 you need to eat yourself.
  • Stampede Survivor: This requires 5 repetitions as well. So, 5 * 3 = 15 rounds. That's 15 / 20 = 0.75 a day. That's once every 1 to 2 days.
  • Arena Slayer:  With 5 repetitions this takes 5 * 5 = 25 bosses. That's one boss every 25 / 20 = 1.25 days. So every 1 to 2 days. I advise doing this in one go as you might not get the bosses you are missing. It takes 5 / 20 = 0.25 rounds a day then. So every 4th day.
  • Party Commander: Well. Just do your dailies every day. It can be repeated 10 times but requires 5 days to complete. That's 10 * 5 = 50 days. That's equivalent to 2 to 3 years.
  • Annual Feats: When will Guild Wars 3 come one? Let's see. You have to repeat this 20 times and you can only do it once a year... hmmm... in 20 years? We'll see.
Since these are one time achievements and probably only hardcore achievement hunters or players will aim to complete these this year I'm not gonna summarize these. Especially since the blog post is already long enough. Which means. I'm out. Cya! :D

[1] https://wiki.guildwars2.com/wiki/Dragon_Bash
[2] https://www.guildwars2.com/en/news/dragon-bash-returns-next-week/

26 June 2019

Guild Wars 2: Ultra Shiny Like a Skritt - What Did It Cost?

The perfect title for every Skritt fan. Okay for collectors, achievement hunters and completionists too, or people who want animated weapons that were made out of litter shinies. However, as the popular Thanos meme quotes so well: "What did it cost?"

Not Everything

Luckily for us, it doesn't cost everything, but what does it cost exactly? Well, there are five weapons. The recipes follow a pretty simple schematic. First, you craft the shiny weapon and then you craft the ultra shiny weapon. Both recipes work through the mystic forge. For the shiny weapons you will need:
  • 3x Elder Wood Log
  • 1x Quartz Crystal
  • 3x Condensed Ley-Line Essence of one certain color
  • 3x Condensed Ley-Line Essence of a different certain color
The color of the Condensed Ley-Line Essences defines which type of weapon you get. More about that later. First, this is what you need for the ultra shiny weapon:
  • 1x The specific shiny weapon
  • 1x Charged Core
  • 3x Condensed Ley-Line Essence of one certain color
  • 3x Condensed Ley-Line Essence of a different certain color
As you can see from a material cost point aside from the Condensed Ley-Line Essence and the Charged Core these are standard materials. Maybe you need to farm a little bit of Quartz Crystals depending on whether you get them through your home instance or occasionally mined them on one of the specific maps that have these (e.g. Dry Top).

We can fuse these two recipes, build the union or inherit the one from the other. Whichever you prefer in the end the result should be:
  • 3x Elder Wood Log
  • 1x Quartz Crystal
  • 1x Charged Core
  • 6x Condensed Ley-Line Essence of one certain color
  • 6x Condensed Ley-Line Essence of a different certain color
This is needed five times for each weapon but before we do that, let's see which Condensed Ley-Line Essences we need.

Condensed Ley-Line Essences

Looking through the Guild Wars 2 official wiki[1] gives us a quick breakdown on which Condensed Ley-Line Essence is needed for which weapon (demonstrated by the following table).

Weapon/Essence Crimson Saffron Azure Emerald
Rifle X X
Pistol X X
Short Bow X X
Staff X X
Torch X X
It's every permutation except Saffron and Emerald. (either they got bored, ran out of time, the artists were striking or they can't do math :P) By looking at the amount of X's vertically we can multiply that number with how many we need per weapon to get the total amount we need.
  • Crimson: 3 * 6 = 18
  • Saffron: 2 * 6 = 12
  • Azure: 3 * 6 = 18
  • Emerald: 2 * 6 = 12
Before the 25th of June, you had to kill at least 60 bosses for these. Unfortunately, the exact drop rate on every single boss could not be found out even though there was noticeably a pattern since certain bosses favored or some probably guaranteed a certain color.

Screenshot of the Preview of a Djinn Energy Cluster
 In-Game
Now they no longer drop since the Destabilizing Magic event ended. They're still available in the game though. There are primarily two ways to get them. One way is to buy the Djinn Energy Cluster from the Trading Post. At the time of writing this post, they're worth 51 silver and 56 copper. Unfortunately, their price will most likely increase. These used to drop from the world bosses additionally to the Condensed Ley-Line Essences which could've been mined. They can still be bought from the raiding vendor by using the Condensed Ley-Line Essences. The Condensed Ley-Line Essences are in the Uncommon tier of the Djinn Energy Cluster, which is even less efficient (could be worse though). 

The alternative would be to buy it from the raid vendor.
at the raid vendor, it costs 10 Gaeting Crystals and 20 silver. Aside from the Gaeting Crystals, which are capped at 150 per week. It's a lot cheaper than the Djinn Energy Cluster, which does not guarantee a drop.

For Such A Shiny Title...

Summing everything up we need the following to finish the collection.
  • 3 * 5 = 15; 15x Elder Wood Log
  • 1 * 5 = 5; 5x Quartz Crystal
  • 1 * 5 = 5; 5x Charged Core
  • 18x Crimson Condensed Ley-Line Essences
  • 12x Saffron Condensed Ley-Line Essences
  • 18x Azure Condensed Ley-Line Essences
  • 12x Emerald Condensed Ley-Line Essences
If you decide to buy these Ley-Line Essences from the raid vendor. It would cost 10 * 60 = 600 Gaeting crystals (600 / 150 = 4 weeks of raiding) and 20 * 60 = 1200 silver, a.k.a. 12 gold.

At this point, it's also interesting whether you can make money out of the Djinn Energy Cluster

Well, I'll leave that up to you. Anyways that's it for this post. The Dragon Bash Festival post will come tomorrow or on Friday, depending on whether or not I hit the project deadline for the university project. Happy farming.. or.. something!

[1] https://wiki.guildwars2.com/wiki/Shiny_weapons

About Me

My photo
I'm a M.Sc. Games Engineer and I created this blog to share my ideas, theorycrafting, thoughts and whatever I'm working on or doing.