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 enemies 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' clear indication to what the player did wrong. Avoiding telegraphs in a game that requires and relies on player position may result in the player not knowing where the damage they take comes from, breaking this idea and leading to complaint 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. Therefor 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 down sides it still has or created. While this system is an improvement for movement and position heavy games - as 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 the respective damage. Nowadays games went away from tap-targeting and have switched to more dynamic systems. Some games use a mix between 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 bringing 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 a full background and fill up with their fill. The way these 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 effect 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 different 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 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 being 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 see's colors the same way. A week red outline will not help on a 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 of the types of AoE's so that he himself 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 to make it's border bigger to make up for the inaccuracy of tiny pixels. A mechanic 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 on 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 achievements that are relevant. 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 a 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 play time). So for the following calculation I'm gonna use 20 days, you can use replace the 20 in the following calculation with the amount 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 the 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 advice to do 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 meaaaans. 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 define 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 each 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's 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 do 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

16 June 2019

Guide to New Raid Bosses

Quite a long title, huh? Well I've been working mostly on my games homework from university and I'm kinda sick of it right now, haha. xD Anyways, lately I've been asked by a person how we find out so fast on how bosses work so I want to give the people who have no idea some tips.

Brute Force Way

Before I give you some tips let's go with the easiest way: brute force. It basically means, don't think too much about keep trying and every time your group wipes try to figure out why and solve the issues at hand. Of course, if you keep this up at some point you survive long enough to kill the boss. Bam, you made it! This doesn't sound too efficient though.

The Basics

Most of the bosses in raids, regardless of the game - yes, you heard right in all games - basically work with the same mechanics. I mean think about what a game designer can do in a game. Since nearly all MMORPGs work with similar systems like buffs, debuffs, stuns, stunbreaks, healing, tanking, collecting, moving and more. Additionally they inspire each other. Well, since the mechanics reappear throughout different games but mechanics also usually don't change in the game itself and raids are build using the tools already in the game what you have will mostly suit what is needed for a boss.

Just checkout the abilities you have and what they do:
  • "Deals damage"
  • "Stuns the enemy"
  • "Breaks a stun"
  • "Heals allies"
  • "Taunts the enemy"
  • "Leaps"
  • "Teleports"
  • etc.
Boss fights are not designed to be impossible. They're basically a combination of challenge and puzzle. Solve the puzzle, overcome the challenge and they're dead. So, familiarize yourself with bosses, the more you see the easier it becomes for you to figure things out. Especially if you know your class or even other classes. The more you know about what the players can do the more easy it becomes for you to figure out what the developers intended. Know the limits within which you have to work!

Survive, Deal Damage, But Most Important Analyze

The hardest part next to solving the puzzle is the ability to analyze the fight while still doing your job. The less stressful a boss is the easier this is. Basically what you want to look out is the mechanics of the boss. Here you want to answer the following questions:

Buffs & Debuffs
  •  Does he have buffs? Does the group have debuffs?
  •  Do the boss or the group get these during the fight?
  • Where do they come from? What do they do*? 
* Note: It is often wise to post buffs and debuffs to chat or screenshot them in the old-fashioned way to discuss after the try.

Attacks
  • What can the boss do? When does he do what?
  • Is it time based? Is it health based? (at 75% or 66%.)*
  • Which attack hurts how much?
  • Does he have mechanics that instantly kill?
  • Are there scripted events? What happens?
  • Does he have an attack pattern?
* Note: Game developers love to use these numbers like every 5% every 10% every 20% every 25% or every 33%.

Map Awareness

  • Does the map mark something? Does it mark something throughout the fight?
  • What symbol is used? What could it mean?
Surroundings

  • What's in the boss arena? What is on the ground?
  • Is there a pattern matching the fight?
  • Are there AoE fields? Does the arena change?*
  • Are there minions or adds spawning? Are they bound to an important mechanic?
  • Are there visual effects? What do they do?
  • Are there sound effects? Where do they come from? What do they mean? Are they important?
* Note: Developers seem to love to destroy the platform or decrease the area the player works with.

Boss Itself
  • Is the boss attackable? Is there something that needs to be done first?
  • How does the aggro work? Does he need CC? When does he need CC? 
  • What happens if you don't CC?
  • What works/doesn't work well on him?
Grouping
  • How many people need to do what?
Achievements
  • What achievements are there? What happens if you fail them*?
* Note: Sometimes failing an achievement triggers mechanics that deal group damage or do otherwise bad things.


Answering these questions together in your group should give you a good idea about the encounter and boost your speed of killing it. I mean you can always leave this to other people but.. hey. Now you have a good idea on how to do it yourself for the next boss you come across or if you wanna faster with your group on a new boss without waiting for a guide.

While this sounds like the end of the post I've got one more thing for you.

Good Game Design & Boss Mechanics

In a game with good game design coming across a new mechanic in a boss fight that hasn't been explained yet often has an explanation of the mechanic before hand. In the best case you will have the mechanic or a similar mechanic be played before the boss with some miniboss or enemy that shares this. It could also be possible to that the players are told this by an NPC or have to read it which is sloppy, but at least it's explained.

From a game design perspective you don't want your players to go into a fight completely empty handed. You always want to at least hint to the solution so that it is technically possible to figure out the fight first try. (Which is rarely the case).

Just look out on whether or not you've seen similar mechanics somewhere else.

There You Go: A Guide to New Raid Bosses

This all should be enough to get you started on having an easier time learning new raid bosses. I'm actually gonna create a quick google form for one simple question. Just wanna know if you'd be interested in me giving examples for this or actually explaining primarily WildStar and Guild Wars 2 raid bosses from a mechanics and/or player guide perspective.








12 June 2019

Accessibility of Difficult Content

Before I write this blog post I wanna mention that there seems to be a difference in the understanding of "Accessibility" from a game design and a gamers perspective, which surprised me at first. Anyways this blog post pays homage to a discussion I saw on Youtube by fellow Guild Wars 2 players, Youtubers and/or streamers. As such I will add a link to said video to where the sources go.[1]

Accessibility - Game Design vs Gamer Interpretation

When a game developer or game designer talks about accessibility (of content) they're most often not talking about the same thing that a gamer would talk about. In game design the topic of accessibility deals with the question of how to develop games so that they can be played by as many people in the target audience as possible. If you plan to develop your game for a certain audience you will still have a smaller audience due to the people who cannot enjoy the experience because of illnesses that plague them. Assuming your game requires the player to listen to some sound but the player has hearing loss, you're alienating those players. This is one of the examples that accessibility addresses in game design.

On the contrary, when gamers talk about accessibility of content
they instead refer to the ability for players to enjoy or be able to access any content in the game. This now has less to do with the limitations they were given in real life but most often the ability for them to be able to complete and conquer the challenges set to them by the game. This is most often an issue seen in multiplayer online games and not in single player games. However, is there really an issue at hand?

The Current State

Looking at many games, especially in the massive multiplayer online role play game (MMORPG) category, you can see content specifically dungeons or more likely raids to be considered locked towards the biggest part of the player base. While the motivation for accessing locked content really differs from game to game one thing is definitive. If some content is only played by less than 5% of the community chances are high that said content might get a lower amount of work done by the staff of the game development team. Afterall while this content might be nice at some point when the numbers drop something has to be done and those niche content additions most likely won't be it. We can all agree that making as much of your game available to as many people as possible sounds like a pretty respectable goal. So, how do you achieve a higher accessibility?

The Simple Solution

Since the biggest issue is that content is locked behind gear, progression and/or difficulty. The easiest solution would be to implement easier ways to get the gear. Simplify the progression or decrease the difficulty. Given the current state of World of Warcraft, a level boost and probably some quality open world gear drops could potentially get you ready for the raids pretty fast. Especially if the open world drops were end game drops. You could technically lock these items behind a daily grind but that would be too complicated wouldn't it? 
Another example is getting raid ready in WildStar. At first you needed about 12 steps or so to complete from farming reputation to killing world bosses to completing dungeons on bronze, silver, gold, I don't remember. Later on they decreased these steps from 12 to four for accessibilities sake. Removing all steps would allow even more accessibility. Lastly difficulty. If the people don't play the content because it is to hard make all the content easier. Then everyone can play it and everyone wins right?

Accessibility In Real Life

Let's get back to the current state but from another dimension so to speak. When we talk about accessibility to education in real life. We're not talking about decreasing the difficulty of university. We're talking about giving everyone the opportunity, the chance to study. To do so we do decrease the entrance requirements. This allows everyone even those who were bad in the one or the other topic to be able to study and get a degree. There are tons of people whose grades did not define their abilities and success in university and this is important. So if we're talking about accessibility in real life we're talking about "the ability to do" something. With this mindset we're slowly getting there, but it's not enough yet.

Excourse: Difficulty Curves

Also something I notice a lot here is that in single player games there's hardly ever an complaint about accessibility of content. Why is that? Well thinking back to the old times games have been getting easier and easier and recently started to pick up difficulty again. One fact stays though. Throughout all those years game designers have tried to pinpoint and build their experience keeping a difficulty curve. Which means regardless of what game you played in the end the difficulty did increase and this is not the case for most of the games with the accessibility issue (or so it seems as there are always exceptions).

The Right Approach

Taking in all this information and coming to a conclusion.
What seems to be the right approach is to implement accessibility by modifying the given factors. First of all we want to decrease the entrance to the content. We want the requirements for dungeons, for raids or for any content for that matter to be easy enough so that the entrance requirements are set to "E for everyone". Of course, we're not gonna stay on this level. Now the goal would be to increase the difficulty slightly higher and higher perhaps with some up and down jumps to figure out the learning speed of the community (in case games as service) and to make it more interesting. Unfortunately as the level increases only slowly hardcore interested gamers would probably have no interest in this. There's a solution for this two. If we split our hardcore content into packages (cmp. raids wings) and make the first bosses easiest while increasing difficulty by quite a bit until the last bosses per section (wing) we can "carry" the less ambitiously or skilled players with the easier bosses while providing difficulty content to the ambitious skilled players through the hardcore content given by the upper end of our section.

Ill. 1: Representation of a simplified difficulty curve
 showing the applied system
To simplify, we're basically treating each content drop or section of the game as it's own subgame providing it's own difficulty curve while still increasing the overall position of the section difficulty to average out on a classic difficulty curve. The illustration (Ill. 1) shows this by splitting the overall difficulty curve (shown as a line for simplicity) fragmented into smaller sections that each have their own difficulty curve forming the overall one. Each section increases in base difficulty while having their base lower than the previous sections last boss to provide an easier entrance for those who could not grow with the previous curve. You can see it as a way to catch those who were unable to grow as rapid giving them another chance.

Regardless of whether or not you successfully defeat all the last bosses in all cases you can select your own difficulty curve created from your selection of bosses you wanna do and are able to do. This system is partly inspired by the system Guild Wars 2 / ArenaNet is trying to implement.

Conclusion

While I may call this the right approach this may also be a wrong approach for all I know. After all this is just theorie and without taking it and applying it into praxis who knows. However so far it sounds like a better approach than giving away the rewards and at the same time allows better and less skilled players to play at the same time more or less in parallel as Player vs Player does. Though it is important to say that this approach does not replace tutorials. It is imported for you to explain your community or audience in-game mechanics via good game design philosophy (which is another topic) or via text or even better give your community the option to repeat and skip said tutorials even for trivial content such as raiding in groups. Here too good game design philosophy and awesome tricks are better than forcing or a skip option. Get creative or take examples from those games that did an awesome tutorial.

[1] https://www.youtube.com/watch?v=pHVuY3ac170

10 June 2019

Genius Loci - "The Spirit of a Place"

I try to mix things up by switching topics. Unfortunately the game related / Guild Wars 2 stuff takes more time than I have so let's go with another magick topic. I should also make a poll on what people wanna read to better cater to the audience and out of curiosity. Anyways you might find this topic interesting.

English Meaning

Genius Loci may or may not sound fancy depending on whether or not you like latin. The dictionaries write:
"The general atmosphere of a place."
~ Collins Dictionary[1]
it is also literally translated as "the spirit of a place". Though as the dictionaries definition already shows it we're not talking about an actual spiritual entity. Even though I'm talking about a spiritual topic. Which throws up a certain question.

What Is This "Genius Loci" Then?

How does it work?

In my opinion it's best described as the energy in a certain place. For non-spiritual people or uninterested people you can go with atmosphere here. :P

Let's we assume that every place has a neutral energy or atmosphere. Now assume we perform rituals related to a god, describe a place as holy, act like it's holy, decorate it accordingly etc.. If we do this to a room or building the energy or atmosphere of this room or building will feel similar or equal to what it feels like to be in a church. If you've ever been in a church or a similar ritual place you may notice that it feels different than any other place. It's the same reason why haunted places feel off.
"Wait, but aren't haunted places not scary if you don't know about the haunting." It really depends but let me assure you there are more than just spiritual people who get the hint that somethings off. A shiver down a spine, some weird feeling etc.. Why do we categorize a houses rooms into different themes, such as bedroom, living room, kitchen etc.. Why do you not usually sleep in the kitchen? Why are you not supposed to sleep in the same room you work or play in? Because it badly affects your sleep. This is usually not the problem,but it's preferable to avoid this mismatch.

What's The Use?

Technically you can use this for literally anything. If you want people to feel welcome give a room a welcoming feel. Decorate it, add the words "Welcome" somewhere, add something that can get people cozy. Practice or welcome people in the room primarily and take care of them showing your guest friendliness. As crazy as it may sound it all rubs off.

A bedroom should have a bed and drawers and that's pretty much it. Basically anything related to the wake up and go to bed routine as these remind and are part of waking up and sleeping. There shouldn't be a television, toys or books if these do not belong to your routine. Anything that distracts from sleeping in the room will - so to say - "taint" the energy or atmosphere of the room.

A workplace should only contain things related to work or needed to work. This will also allow you to easily switch to "work mode" thinking about work while in the room. It also helps not to have the "loss of your train of thought" when moving from one room to another (which is also an interesting topic itself). 

Now for the spiritualists and magick users. The genius loci may or may not be important it really depends on your goals. If you want to perform magick fast and successfully selecting a room or part of a room if not possible in another way to perform your rituals there. The goal is to make out of this part or room a magick room. If the room itself thinks it's a room for magick and rituals your chance of success on a ritual or spell is increased. Of course, you might not want your magick to be bound to one place in that case you have to work harder though.

The Conclusion

The conclusion is that every place has it's own life. Lol, no. It is believed that every place in space has some atmosphere or energy that is determined by the use of this place and decoration of it. People shape places and every happening rubs off a bit. Some people notice this and it can be used positively or negatively. 

Side Note:

Really fascinating is that it has been used in architecture and art as well. People use this concept to shape the building towards it's purpose building it respectively. Even the romans did this supposedly.
Who would've thought!


[1] https://www.collinsdictionary.com/de/worterbuch/englisch/genius-loci

01 June 2019

Three Issues with Mobile Gaming

I do not hate mobile games as much as I might let people think I do. Something that's probably obvious for people reading this blog. The reason I avoid mobile gaming so vehemently has to do with the issues that come with it.

Heat Generation

Really nice in the winter, very worry some in the summer. Our current generation of smartphones do not support any cooling mechanisms. Usually this is not a problem for most application. For games however - oh boy. I've seen plenty of games that heat my mobile phone up to +40° celsius / +104° fahrenheit and that got me quite worried. So much that I have an app  that warns me once I reach those numbers. I did a quick search online to determine the lowest value that is unhealthy for my mobile phone and went with that.

Battery Life

I never have to worry about this on my tower PC at home. 
This one doesn't have batteries aside from those that are used to save BIOS or UEFI data like what time it is. (Yes, I had an empty button battery once and it reset the time to the 1st of January 1970 and 0:00am I think?) So, no reason to care about such a thing for desktop games. However when developing games for smartphones, tablets and laptops people are not gonna be happy with a game that literally sucks their power out of their mobile phone like a vampire. You play for what feels like 5 minutes and your battery already dropped by 20%. Extremely scary. Especially if you're a long time from a nearby power supply. Of course, you could argue that people can use those compact power cell battery thingies... but do you really want your user to run around with a bag full of battery packs? I hope not.

User Input

This is like one of the more known issues that I've already mentioned but here we go again. For most people the only input they have on their mobile devices are six buttons and a touch screen. Many of these buttons contain system features such as going back, lower/higher volume, switch off, show other processes and go to desktop. This means we're pretty limited if we don't want to or can't overwrite these functionalities. Additionally not every device features multi touch. That means some devices can only work with up to two touches at the same time. So, if our game needs three inputs our game is nearly unplayable. Another issue that rises from touch input is the limited view from the hands obstructing the view.

Design Goals

So, all these issues need to be considered when designing games for mobile devices. We need to optimize the performance to reduce unnecessary heat. Examples here would be less code in the update loop and working with events like concepts (only call when necessary), reduce graphic effects and/or frames per second and lastly reducing the quality of the graphics.

Same about the battery life. Interestingly using a lot of light colors takes more power for the display than darker colors costing more battery life.

Make sure to design your game that it either is not necessary to stay up to date with the screen or have the input somewhere outside where coverage doesn't matter much or even better at all. A good way would be to implement controls inside of the HUD or menu. Non-action or round based games don't have as much of an coverage issue. Another thing is make sure your game can be played with at least two touch inputs at the same moment.

A good option is to also give the user the ability to change the settings to decide if they want more quality at the respective cost or not. I don't care about battery power if I'm at home, I can just charge the phone! Or put some ice on it in hope to cool it. Into the freezer, here we go!

At least until we get a new generation of mobile devices that attempts to fix these issues.

04 May 2019

Cabbalistic Model of the Brain

I've been writing multiple posts every now and then about magick and it's occasionally quite weird or even annoying to beat around the bush instead of directly talking about it. Alternatively I feel really stupid writing it in this way without having made this post previously. It's not like I put too much effort into the history of the blog posts in the sense of how school defines things and later on expands on this information. I don't have a teaching system sorting these blog posts, sorry.

One of the Basics Principles of Magick

Anyways one of the ideas behind magick is getting a wish or will into the unconscious. Unfortunately this is not just learning something in and out. When learning something only four or five things can  be processed at a time. If you're learning something it is bottlenecked pretty hard. Amazing that people make it through school haha, just kidding. No, actually learning something is different from getting something into the unconscious. I mean.. something must happen. Technically we could get literally any wish or thought into the unconscious mind. Especially if said thing is supposed to be come real. Even if we look at the other basic principle of magick, the probability. If millions of people watch Freddy Krueger or another horror movie with this number of people chances are quite high that those horror creatures become real yet they don't. This means something is happening there.

 The Censor

According to the cabbalistic model the brain is split into three parts. The conscious, the unconscious and the censor. Both the conscious and unconscious are equivalent to what you probably understand or what psychology talks about. The idea was to bring a thought, wish or will into the unconscious. Now the job of the censor is it protect the mind or unconscious from getting thoughts, wills and wishes into the unconscious. It is said to be evolved during getting older and is taught by our experiences during our life as well as by the collective mind. When you grow up you learn to understand how the world behaves and works you could say you learn what is normal, filtering out what is not normal. 

Practicing Magick

This means when we try to practice magick the goal is to get past the censor.
There are countless practices on how to achieve this. Literally every ritual falls under this category. The second thing is to change the censor. Cabbalists believe that it is possible to change the censor through rituals invoking a state of disbelieve. This is also achieved by practicing magick as well. Basically when the abnormal becomes normal.

Final Words

Well, that's what I learned from the book "Die Hohe Schule der Magie" written by Frater V. D.. whether you take this for granted, give it the benefit of a doubt (which I would recommend if you're interested in magick), see it with scepticism (recommended by many people) or if you're just interested in it generally there you go. I'm not saying this is correct nor am I saying it's incorrect.

There are other things that cabbalists seemingly believe among them the interpretation of the bible in a way that says that humans are gods.


24 April 2019

Calculating with Text! String Calculation!

For some reason I am totally obsessed with this so it's one of the things I love about python! The basic idea behind it is quite simple. You calculate like in math with numbers but with String or text instead. Many programming languages allow you to do concatenation using the "+"-sign. Python also implements multiplication allowing "s" times four to equal "ssss".

Defining String

A string is a data type in programming languages to store text data. The way it does that is by storing characters in an array or list. "ABC" contains the characters "A" at position zero, "B" at position one and "C" at position two (in programming counting it often started at zero).

Addition

Just like in all the programming languages addition will work like that. It's quite simple. When you add 3 to 5 you get 8. In our example though if we add an "a" to a "b" it's gonna be "ba". The difference between our addition and the addition of (ℕ, +) is that ours is not commutative. Commutative means that a + b = b + a. In the case of (ℕ, +): 3 + 5 = 5 + 3. In case of the way most programming languages do the addition of Strings the second one is added to the first one. It is a concatenation afterall.

  • 3 + 5 = 8    "a" + "b" = "ab"
  • 5 + 3 = 8    "b" + "a" = "ba"
It does not work in our case. You could argue that "ab" equals "ba", but.. it just feels wrong.

Continuing With (ℕ, +) Properties!

Let's move on to the next aspect. The (ℕ, +) group has a neutral element. The neutral element is zero. The neutral element basically does not change any element of the group if the group operation is used upon it. This means that a + 0 = a. We actually have that too when working with Strings. There's something called the empty String "". It's basically a String with no characters in it, a length of zero pretty much. If we add or concatenate this to anything it will result in the same you started off  with:
  • 5 + 0 = 5    "a" + "" = "a"
  • 0 + 5 = 5    "" + "a" = "a"
Funnily enough the neutral element is also commutative, haha.

String Subtraction

Another property of the (ℕ, +) group is that there is an inverse element. If you apply the group operation to an element and it's inverse element you get the neutral element. Additionally the inverse element undos the element. The inverse of three is minus three since 3 + -3 = 0. The inverse is often written with a negative exponent, a^-1. As such we have a definition like a + a^-1 = 0. This doesn't work for our strings though. The only way to get an empty string is to remove elements. We need the opposite to adding one character. We basically want to undo "" + "a" = "a" and that's removing the character. For this we're gonna use the same way it's written with normal calculations. Thus we say "a" + -"a" = "". Interestingly we just declared subtraction
The definition of String subtraction will now be:
 "The removal of a character, the opposite of the concatenation."
But what if we have multiple elements like in "Hello"? Well concatenation adds to the end. Thus subtraction should work just like that. If the character is not at the end we just take the last occurence of hit. Simple, isn't it?

  • "Hello" - "o" = "Hell"
  • "Hello" - "ll" = "Heo"
Another thing we can define here is the subtraction of an a∈ℕ. Let's not go too complicated and just define it as subtracting a characters from the end. So "Hello" - 3 = "Hel".

String Multiplication

In python if you multiply an a∈ℕ with a String it takes the String multiple times. That makes sense. If we look at the definition of multiplication you might have learned that taking three apples four times you get twelve apples. Taking three four times is not different from 3 + 3 + 3 + 3 = 12. Which is the same as 3 * 4 = 12 thus 3 + 3 + 3 + 3 = 3 * 4 = 12.

If we concatenate "a" + "a" + "a" + "a" we get "aaaa". This is the reason why python defined String multiplication so that 4 * "a" = "aaaa".

But what about multiplying "a" * "b"



The distributive property of (ℕ, *) allows a(b + c) = ab + ac. If we calculate "a" * ("b" + "c") we can calculate the addition to get "a" * "bc". If we assume that the result follows the example from the (ℕ, *) we can potentially define "a" * ("b" + "c") = "ab" + "ac" = "abac". This means that 
"a" * "bc" = "abac". This is similar to how matrix multiplication works. 

The only weird thing we get from this definition is that "a" * "a" = "a" + "a" = "aa". Sounds not too bad. But there's one more thing I want to define and let's see whether or not it clashes.

String Division

While this sounds like we're going to partitionate our Strings it's gonna be more like it works in normal math. There are multiple ways to calculate division. But we go with the opposite of multiplication.

One of them is to see it as the opposite of the multiplication. We're saying that if 3 * 5 = 15 we can also reverse or inverse this with 15 / 5 = 3. This means that if "a" * "a" = "aa" then "aa" / "a" = "a". At the same time our other example of "abac" / "a" = "bc". As you can see basically what happens is that division removes all occurrences of the divisor. This clashes with the multiplication of "a" * "a" = "aa". Since the opposite of it is "aa" / "a" = "a" but we would want it to be "aa" / "a" = "". Additionally if we assume "aa" / "a" = "" this means that "" * "a" = "aa", however, logically multiplying something with the empty String per our multiplication should result in no change.
"" * "a" = "a". This also matches the "a" / "a" = "".  

I guess there's a reason why people use "w/o" as "without".

Hooray

We defined the plus, minus, multiplication and division on Strings or Text. It can't get any more nerdy than that. The only issue is that "a" * "a" is not defined as the result does not make any sense in our definition. Though there might be even more issues in there. Nonetheless it is fun just to think about such weird things, think it through and see how much holds up. Also you can troll your friends or other people by calculating "1" + "1" = "11". :P
  • 1 + 1 = 2
  • "1" + "1" = "11"
  • 0b1 + 0b1 = 0b10




22 April 2019

Fortune Telling: Using Magic the Gathering Cards [3/3]

In the first two posts I mentioned some issues while explaining how fortune telling, specifically card reading works. Now as promised I'm gonna explain how, why and that using Magic the Gathering cards works too.

It Shows Again and Again

You can literally use anything for magick. As ridiculous as it sounds, I've already made a post about using the Guild Wars 2 gods in rituals. It isn't any different here. Again anything we use is just a tool and as long as it helps us achieve the goal it's good.

So, How And Why Do Magic the Gathering Cards Work?

In the previous post I explained how to make your own positioning and how it works. The idea behind everything is that your unconscious knows what each card and position means. So all you have to do is assign meaning to the cards in Magic the Gathering that is not too obvious (we don't want your conscious to instantly know the meaning. It needs to be vague enough but so that your unconsciousness knows it). I really need to get into the kabbalistic model as soon as possible to not have to beat the corn around the bushes. 

Let's start off with color. The Magic the Gathering Cards or cut into five different colors:

  • Black - Swamp, Death
  • Red - Mountain, Fire, Lava, Magma, Goblin, Dwarf
  • White - Light, Sun, Field, Human
  • Blue - Island, Water, Sea, Ocean
  • Green - Wood, Forest
Each color has an element assigned to it as well as a landscape (mana) and creatures, spells, etc.. This means that each color brings forth certain feelings and interpretations of it. We can even elaborate on the meanings of each. For example the blue cards are assigned to water and water stands for calmness or for flow. Technically you could even go as far as to say it stands for the flow of time. Additionally it could mean sadness etc..

Once you've elaborate on each card you are pretty much good with the basics. Next up you could specialize on the card type, like working with the life time of a card. For example something with instant could be immediate, standing in front of the door so to speak, while a creature represents something that is going on for a longer time. Mana or land could be compared to something for the whole life. You can get creative with this. (I do have to admit I didn't go so deep into it.)

Next Up The Positioning

The positioning allows infinite possibilities. You can literally think about anything you want. When I went for it I wanted to read my future grades. Thus I simply went for an order from left to right with the most important one being to the left, so: math, German, physics, English, technology. You can go with anything, as complex as you want or as simple as you want. Just familiarize yourself with it enough not learning it in and out though.

The Result

Well the result was the worst one could expect. I got black on three to four of the subjects one some water too. The weirdest part, though to be expected. I barely passed with multiple fives or E's. Luckily the grades were combined with the ones I got over the year and the oral exam in physics was a one or A. (five/E on written exam one/A on oral exam.. interesting). Well, maybe it's coincidence, stay sceptical, it seems very odd nonetheless though. 




18 April 2019

Guild Wars 2: Super Adventure Box Crocodiles Can Be Killed!?

The beautiful, beautiful Super Adventure Box. I know there are people out there who hate it and I don't understand why they cannot feel or see the nostalgia of this box. Anyways sometimes when you play games as a game designer or theorycrafter you start to wonder about certain things and two things I was wondering about is, what happens if you permanently hit the crocodiles in the Super Adventure Box and what happens if you destroy the amulet of the frog king.

Spank The Crocodile

Well, I've decided to do it today, so I went into the Box Zone 3 World 1 and went till the end. At the last checkpoint I hit one of the crocodiles and jumped on it. Then I held down the auto attack or skill 1 to permanently attack the crocodile with my nunchuck. I did try auto attack but it didn't work. I also could've technically placed something on the key but I didn't have the nerve to do so. So there I was standing on the crocodile attacking it over and over again. In the meantime I continued studying Japanese (I'm currently 2-3 chapters behind). I occasionally looked at the screen and I also was wondering how long it would take.

The attacks take 1/2s, 1/4s, and less than 1/4s. It's hard to tell exactly how fast skills cast without knowledge about the animation time (a.k.a. the time in between skills. E.g.: Skills that have no cooldown or cast time). Nonetheless assuming the animation time is at maximum half a second, it should be between 1/2s + 1/4s = 2/3s and 1/2s + 1/4s + 3 * 1/2s = 2.25s. The skill chain does 25 damage with each hit being two single hits and a double hit. So 4 * 25 = 100 damage. This results in 100 / (2/3s) = 150dps to 100 / 2.25s = 44.44dps. Assuming the number shown is the integer limit of 32bit on a 32bit client and 64bit on a 64bit client the limits are 2^32 = 4294967296 and 2^64 = 1.84 * 10^19. This is only the case for unsigned integers. If we assume they are signed (meaning the data type also stores negative numbers) the size is 2^(32 - 1) = 2147483648 and 2^(64 - 1) = 9.22 * 10^18. This means it would've taken me...
  • Worst case: 1.84 * 10^19s / 150dps = 1.23 * 10^17s (~3,899,616,115 years)
  • Best case: 2147483648s / 150dps = 14316558s (~165 days)

Not Even Five Minutes In...

While I haven't calculated how long it would take me I came across something interesting way before dying by holding a button in a game. What happend is that suddenly the damage number was gone. I was no longer hitting the crocodile. My first thought was stop attacking it and retrying. Maybe it just didn't show the number anymore at that point? The number didn't restart. Then I decided to move away and get back to it to retry. No change. After a while the crocodile was no longer stunned and knocked me off of it. I used the chance to retry to stun it but without avail.

This is interesting. The Guild Wars 2 wiki entry says crocodiles are unkillable. If that's the case, what is this? I mean it's not necessarily dead. It's still there but... invulnerable as in it has no hitbox anymore. Yet it can still deal damage and it's still solid, as well as being visible.

Switch On Game Design Brain..

Thinking about it from a game engineering and game design perspective I can only describe it like this:

If we assume the crocodile is a game object consisting of three hit boxes and three models (stun animation, idle animation, attack animation) the hit boxes would be
  • hit detection trigger hitbox (detects when the player hits the crocodile)
  • attack range trigger hitbox (detects if a player enters the hitbox and attacks them)
  • solidity collision hitbox (prevents objects from falling through it)
The hit detection trigger hitbox is the biggest allowing you to hit the enemy without taking damage or touching the solid part. The attack range trigger hitbox is nearly as big but definitely smaller allowing the player to hit the crocodile while not getting hit themselves. The solidity collision hitbox is the smallest and it fits the crocodile when it's in it's stun.

The stun is probably realized with either a timer or a boolean.

Since the hit detection trigger hitbox detects the hits and triggers the damage to display I assume it also takes in the damage. So if the health drops to zero this one despawns (dies) while the rest stays alive. Still weird but it would explain the phenomenon.

But...

How Much Health Do The Crocodiles Have?

I had to answer this question hence why I went to another one to test on that one. I know I hit it once so it should be 25 down. So I kept hitting this one over and over until I got around the number where it stopped before. Should be above 12000. Eventually I got there. The last number I saw was 14525. This means depending on the speed and over kill it probably has around 14500 to 14550 health.

Eureka!

There you go, I learned something else and probably you did too. New information for the wiki and new fun fact or useless facts you can tell other people. Right next to the deadly 37.5m drop when you use the fall damage mitigation trait.

Oh, by the way, don't try in real life. Fall damage is real and it's painful and deadly at way lower drops.

P.s.: if you destroy the jewel of the frog king it refills it's health to 100%.
 

20 March 2019

Nonogram / Picross Tricks

I occasionally play Nonograms or Picrosses depending on however you like to call them. They're as enjoyable as Sudoku if not more. After a while you may or may not figure out some tricks to help you solve them puzzles faster. Today I'm gonna share my tricks with you.

Reminder: What Is Picross / Nonogram?

Nonogram also known as Picross is a number puzzle that gives you mostly an empty grid with numbers on top and on the very left. These numbers work as hints. The number that's to the very left of the row gives you the amount of fields that should be marked in this line. The numbers depend on the size of the puzzle. Usually the puzzles have sizes of five to 15. As such the hint numbers are also from zero to 15, where zero means no fields should be marked. Additionally the numbers only mark adjacent fields and if there are multiple ones that means they're spaced, as in they have one or more blocks in between. The numbers on the top do the same as the ones on the left but only for the column. When all the fields that should be marked are so, you will end up with a picture that could be called pixel art. The order also matters. This means if you have a (5, 3, 4) you will have maybe some space then five adjacent fields to mark then and unknown amount of space three more fields to mark more unknown amount of space and lastly four fields to mark that may or may not be followed by more space. 

Unfortunately with the increasing size the difficulty increases as well. So here are some tricks and why they work that will help you solve the harder ones.

Look For The Full Size

Edited Screenshot from
 http://liouh.com/picross/

Quite a basic one, still one to mention though. If you find a row or column that mentions a number that is equal to height or width of the Nonogram you can fill out the full row or column.

Sum Equals Full Size

Edited Screenshot from
http://liouh.com/picross/
Similar to the previous one except now we're summing up all of the fields that need to be marked including spaces. In the screenshot we got 2 + 1 + 3 + 1 = 7. There's four groups of fields with each at least one space. Since ten is the maximum per line the spaces need to be exactly the size of one. So we have 2 + 1 + 1 + 1 + 3 + 1 + 1 = 10 with spaces being marked gray and fields blue. If the sum equals the maximum size of the picross (in this case the width, for columns the height) then we can mark them just as they're listed their since the spaces inbetween can't be bigger than one.

Minimax Overlap

Edited Screenshot from
http://liouh.com/picross/
This is one of the tricks that I use the most often. When you have a number that is big enough it creates an overlap that guarantees a field to be marked. Assuming we have a 10x10 picross with an eight. It could either lie from the top left to the right or it could be at the very right to the left. What we notice is that in both cases some fields will be marked either way. This leaves us with a guaranteed 6 fields. Fun fact: Regardless of the size of the picross if the number is greater than half of the height or width than this method starts to work for single numbers. It also works with groups as seen in the example below.
Edited Screenshot from 
http://liouh.com/picross/

Default Overlap and Shifting

Collage of screenshots made from
http://liouh.com/picross/
For single numbers minimax overlap will swiftly turn into an automated thing. For example if you have a 10x10 and you have a single number like six you know there's two fields in the middle that should be marked. Same for a 15x15 having 8 as a single number. You will start to instantly mark the middle field. Additionally for every increment of that number you can fill it by two more as seen in the example to the left.

Last but not least the shifting. The default overlap can be shifted easily. For this we look at the numbers  before or after. If the number is before it's a shift to the right if it's after a shift to the left. If it's on top it's a shift down if it's below it's a shift up. We need to count empty fields as well here. The example below shows it. The example is not the best though. If we have something like (1, 8, 2) it would work as we can assume at least one space between (1, 8) and (8, 2). No problem with that. However if we have another number before or after such as (1, 1, 8, 1) it could be dangerous as we don't know how many spaces are between (1, 1).  So for (x, y, z) shifting works perfectly. For (..., x, y, z, ...) I haven't had enough experience and/or didn't look too deep into it.

Edited Screenshot from
http://liouh.com/picross/

Try It Out :P

You can go and try it out under the gaming section of my blog (though I think I haven't updated those in quite some time... yikes.) or on other websites (there are tons). There are also free mobile apps. That's it from me for now. Happy brain work out!

17 March 2019

Guild Wars 2: Tyria's Gravity

Finally Tyria's gravity has been calculated. Now we can compare to other planets' gravities and maybe draw some new conclusions from it? Anyways we left off by figuring out that Guild Wars 2 does indeed seem to have a gravitation.

Next Steps

So, if we assume Guild Wars 2 does indeed have gravity - where things seem to point to - then we can calculate it. Calculating gravity is the same as acceleration. Acceleration is often related to F = m * a. Unfortunately we know neither F nor m. There's another formula as well though. Acceleration is the change of velocity over time. So, basically a = ∆v / ∆t. Next up is another problem. We don't know the velocity of our character. It's not shown in any kind of way in Guild Wars 2. This means we need to calculate it as well. For this we have a formula as well. The time it took to get from a position to another or the distance passed in a time frame. That's v = ∆x / ∆t.

The Experiment


Okay, so what we need to do is calculate the velocity at two different points of time that are still related to each other (e.g. different points of time in one fall). To get the velocity we need to calculate how long we take to fall a certain distance. We obviously need some way to tell the time, a watch could do this, however, the fall speed is too great to use a stopwatch this rapidly. Thusly I'm gonna record the fall on video and use the footage and frames to measure the fall speed. As a distance I'm gonna use the Necromancer's staff traps that provide a 240 unit radius or 480 unit diameter. As a drop I'm gonna use the one at the Kormir High Road.


To do the experiment I need to start the recording drop down while placing my marks on the wall and then get up as fast as possible, position the camera and jump down. It only took me one try even though it sounds quite stressful.

Analysis of the Footage

Next up, we're gonna analyze the footage. Specifically we want to mark the two frames that meet the respective points well enough. Then we take the time between those.

As a reminder to calculate the gravitation we use the formula a = ∆v / ∆t with ∆v = v2 - v1 with v = x / ∆t with x = pos2 - pos1 and t = t2 - t1

If we combine everything to a big formula we get: 
a = ((pos2v2 - pos1v2) / (t2v2- t1v2)) - ((pos2v1 - pos1v1) / (t2v1 - t1v1)).

Screenshot pos1 of v1
The first mark or first velocity v1 we reach pos1 after about 30 seconds of the fall. When using Vegas Pro 15 - which was available last year during a Humble Bundle :P - the time is given in hours, minutes, seconds and 1/30th of a second using the format HH:MM:SS:ss. We convert the next smaller unit to seconds by dividing it through 30 and multiplying the result with 100. E.g. 30 / 30s = 1s or 9 / 30 = 0.30s. This point in time in the video is t1 is 29:24, so 29s + 24 / 30s = 29.80s. The second position pos2 is reached at 30:08 which is 30s + 8 / 30s = 30.27s. This means that ∆t = t2 - t1 so 30.27s - 29.8s = 0.47s. We already know the distance as it is the diameter of the staff mark which is
Screenshot pos2 of v1
480 units. Now we can calculate the velocity via v1 = ∆x / ∆t. So our first velocity v1 is 480u / 0.47s = 1021.28u/s. 

Screenshot pos1 of v2
Now on to the second one. We reach this point t1 in the video at 31:01. That's 31s + 1 / 30s = 31.03s. The second point t2 at the end of the mark is reached at 31:13 equivalent to 31s + 13 / 30s = 31.43s. Calculating the delta for v2 we get ∆t = 31.43s - 31.03s = 0.39s.

With this we can calculate the velocity v2 which is 480u / 0.39s = 1230.77u/s.

Screenshot pos2 of v2
At this point I must mention the difference between the first delta time and the second delta time is ∆t = 0.47s - 0.39s = 0.08s. Since my Guild Wars 2 runs at ~30 frames per second and my recording at 60 frames per seconds we are still limited to the ~30 frames per second from Guild Wars 2. One frame thus, as represented by Vegas Pro is 1/30th of a second. This means that one frame is equal to 1 / 30s = 0.1s. This means the difference between the two delta's could just as well be a measurement error and thus would require more research.

For the rest of the post I'm gonna assume this is not a measurement error as such I'm gonna continue.

The Finale

Now that we have the two velocities and we can calculate the acceleration. As a reminder, we're gonna calculate the acceleration using a = (v2 - v1) / (t2 - t1). For t2 and t1 we're gonna use the start points pos1. Filling out the variables we get a = (1230.77u/s - 1021.28u/s) / (31.03s - 29.80s) = 209.49u/s / 1.23s = 170.32u/s². Now to convert this to something that's more familiar to us and less useful for theorycrafting (heh :D) using the conversion from units to metric and to feet:

in metric: 170.32u/s² * 2.52cm/u = 429.21cm/s² | 429.21cm/s² / 100 = 4.29m/s²
in feet: 170.32u/s² * 0.083ft/u = 14.14ft/s²
in mph: 14.14ft/s² / 5280ft/mile * 3600 = 8.64mph

I have a small little book with formulas and data in it that helps students in exams. Let's look at which planet would equal this gravitation. 

Earth with a g-factor of 9.81 is well known. the nearest ones below are Merkur with 3.7 and Mars with 3.71.

Thus we've got us a planet with a little higher gravitational constant than Merkur or Mars.

Now if someone can do the drop with 60 frames per second it would be appreciate. Until disproven.. I rest my case. Have a good day/night. 

16 March 2019

Fortune Telling: The Principle of Card Reading [2/3]

Okay, so, we clarified that there are some issues with fortune telling, still it would be nice to do it nonetheless. You can still avert one or the other disaster or maybe it's nice to know it to tell the difference between fake and real much better or maybe to understand how it works out of curiosity. Whatever the reason may be, let's get into it.

Requirements

To be able to do card reading you need to do some preparement. You need to take care of two things. First of all you need the cards. Card reading isn't card reading without cards, duh. :P Second of all you need a system on where to place the cards. Let's go into the cards first.

Famous Cards

The most famous cards used for card reading are tarot cards. This deck features 22 cards. Each of these cards features a completely different theme. The themes are[1][2]:
I.The Magician       XII.The Hanged Man
II.The High PriestressXIII.Death
III.The EmpressXIV.Temperance
IV.The EmperorXV.The Devil
V.The Hierophant
XVI.The Tower
VI.The LoversXVII.The Star
VII.The Chariot
XVIII.The Moon
VIII.Strength
XIX.The Sun
IX.The Hermit
XX.Judgement
X.Wheel of Fortune
XXI.The World
XI.Justice
Each card has it's own meaning that is taken from what is represented on the picture. To be able to do card reading you need to familiarize yourself with the meanings of each card. Keep in mind that - as always - your own interpretation also plays a certain role in their meaning. It is very important to realize that you don't need to know the cards in and out but you do need your unconsciousness to know them.

The System[3]

The system in card reading is the way you place the cards. Here each position where a card will be placed has a meaning. There are multiple ways that can be found all over the internet. The celtic cross for example has a layout where you lay the cards like this:


The positions share the following themes:
1.Present              Perception, state of mind of the current happening and the happening  
2.Challenge
An immediate challenge, issue or problem that makes life harder
3.PastWhat lead to the present and maybe the challenge as well
4.FutureWhat will happen in the next weeks or months; the next step on the journey
5.AboveThe goal, aspiration or the best outcome of the current situation
6.BelowUnderlying feelings, motivation, drive associated with the situation
7.AdviceTakes everything into  consideration and gives advice for the challenge
8.External influencesRepresents people, energies or events that have influence on the challenge (things where there's no control over)
9.Hopes and/or  fearsWhat is hoped for and/or what is feared
10.       OutcomeRepresents the current direction the challenge or situation is taking

The Reading

Now that you are familiar with one way for the system and one deck of cards you could potentially do card reading already. To do this you mix the cards randomly - actually you can make the person whose future or fortune you want to read mix them, especially if they know the meaning of the cards and positions unconsciously. Then you draw a card and place it on the first position. You could stop here to interpret it as is, I think it's better to keep on going as not to mix up your conscious and unconsciousness during the reading. So, place the cards in order until you're done without thinking too much about it. Once you're done the meaning of the cards should be taken into the context given by the position as well as within the context or relation between each other. (What does the present show? Does the challenge match the present?). Then the result of that can be presented in the context given by the person to further clarify possibilities and details.

Breaking the Tradition

Maybe you noticed it by the way I wrote this post. You are not required to pick existing cards or an existing system. You can actually make your own. The only important part here is that you need to familiarize yourself enough with the meanings of the cards and positions. It helps to assign certain directions certain meanings. Like for example having a card placed higher could mean older age, in the future, later in life or maybe a superior thought, idea or body part. You can see in the celtic cross tarot spread that the challenge is placed on top of the present. These types of symbolism play a huge role in the system you use to place your cards.

To proof this to you I'm gonna give you an example and tell a story in the next and last fortune telling post of this on-going post-series.

[1] https://en.wikipedia.org/wiki/Tarot
[2] https://en.wikipedia.org/wiki/Major_Arcana
[3] https://www.biddytarot.com/how-to-read-the-celtic-cross-tarot-spread/
Liked the post? Noticed an error? Wanna discuss the content or leave a comment*? You can join or check into the discord to do so! (*Note: Comments are disabled to avoid saving user data on this website.)
>> Join Discord

About Me

My photo
I'm a junior game developer and software developer and I created this blog to share my ideas, thoughts and whatever I'm working on or doing.