18 November 2019

Discord Game Bots: From Video Back To Text?

So, I've sort of managed to switch from playing MMORPGs to... discord bot games. Honestly, I didn't even know these existed until now. And no, I'm not talking about the games you play on discord like counting to infinity.

Why Discord

Discord has grown to be a favorite software for many gamers and non-gamers. It combines the ability to talk to people on a server like on Teamspeak, with the ability to share and post information and have private chats like on Skype. With features, such as reactions, embedded audio, images, and videos, and more, I can't deny that I love it myself. The developer interface makes it easy to create your own bots and connect them to your application. This allows for all kinds of abilities such as news, user commands, easier moderating, administration, or... games. With gamers on discord, is it far fetched to have discord bots that feature games?

My Experience With The Bots

So, the three bots I looked at are called OwO, Yui, and Tatsumaki. Each provides some similar, some different, and some completely different commands. I'm not gonna focus on the other ones besides anything related to the game. This means currency commands, game commands, and quests or dailies. The order in which I'm going through these will be from the lowest to highest content.

Yui

Screenshot of the Yui Profession Commands
 on Nyaa Langs/kiss Lingo Discord
Yui is a Discord bot written in Java. It features a daily giving you currency as well as commands to level up different professions such as mining, fishing, and chopping. Using it is pretty straight forward actually. Unfortunately, the currency has no use except for a leaderboard. The profession commands give you some respective "Experience" as well as money. Leveling up a skill, thereby increases experience and currency gained by 1%. After a while, the word "Depleted" will be contained in the bot's message, which decreases the chance for higher experience gain and seems to make it impossible to get currency. As much as I would like to get into more detail... this is pretty much it. So, let's move on to something more complete.

Screenshot of the Tatsumaki Tamagotchi like game
 on Nyaa Langs/Kiss Lingo Discord

Tatsumaki

Tatsumaki is a Discord bot written in Javascript. It contains a lot of features such as experience and leveling by chatting, reputation, searching on the internet, and managing roles. Most prominently, it has a Tamagotchi like game called Tatsugotchi. You start off by entering the  " t!tg " command. This will give you the next command to buy your first one. If you repeat the last command now, you will see the room some status bars and your pet. Thanks to the hint you're shown then, you will know that you have to feed, play, and clean it. It's not necessarily intuitive that the command is the same but with the respective words behind it. (e.g. "t!tg play"). From here on out, it's pretty much just take care of it and train it to level up. You can use the daily currency you get to buy a new one, with the chance of it being rarer. Or use it to have your Tatsugotchi being taken care of automatically. There are also quests you can do each day but are really simplistic. At first, I assumed it would be necessary to have a scale on those bars. Later on, I found out entering the commands takes care of the whole bar making a scale unnecessary. That's quite nice, but let's look at something bigger.

OwO

Screenshot of an on-going battle from OwO
on the Nyaa Langs/Kiss Lingo Discord
Now we're entering the RPG category. Do you like Pokemon? What about RPG? You might love this. The premise is quite simple. You hunt for animals that are put into your zoo. From there on out, you can create a team, sacrifice, or sell them. There are six stats, multiple items, different roles, different weapon bonuses, and - of course - leveling. I'm not going into the detail oh how to play it because that would be worth its own blog post. I have noticed myself, however, that playing this game is tedious if you don't know all the commands. Figuring them out is difficult, and there's no introduction. The website doesn't mention all and how to use them. It actually feels like a step back from what we have learned about game design over the years. This gives OwO a high entry curve. And yet it is still a full-fledged round-based Discord RPG. As there isn't much information about this one, it seems like a good topic for a future theorycrafting post.

Conclusion

So, through the Discord API and interface, we can have players interact with these bots. This is quite interesting and asks questions like, in which ways can the user interact? How can we show information? Which stimuli can we give the user? Where are the limits? And much much more. For now, I'm gonna leave this as is.


19 October 2019

Guild Wars 2: Annual Halloween Without Procrastination

I've made sure to check my blog, and I came to a conclusion... I didn't make a procrastination post about Halloween in Guild Wars 2. I guess I didn't do it last year because I already completed most achievements. I don't like the incompleteness of the procrastination posts. Hence why I'm doing this one.

The Same Procedure As Every Time

Screenshot of the Mad King's Labyrinth Lobby
of Guild Wars 2 (Halloween 2019)
The festival itself doesn't matter for the procedure. We need to answer two questions: How long does the event go? Which achievements do we need to do, and what does it require us to do? To answer the first question, we can look up the blog post from ArenaNet. According to it, the event goes from the 15th of October to the 5th of November.[1] That's about 22 days. By now, it's already the 19th of October, though. So, from today on, it is 18 days instead. With the frame of time being clarified, let's look at the task. There are ten annual achievements from which nine need to be done. These are:
  • Arguably Foodlike - eat 300 candy corn
  • Ascent to Madness - defeat the mad king
  • Ancient Grudge - kill 100 minions of Joko
  • Courtly Service - spend 5 gold at the Labyrinth NPC
  • Pumpkin Carving - carve 100 pumpkins
  • Mad King's Clock Tower - jump through 3 times
  • Lunatic Racer - complete the labyrinth race 3 times
  • A Royal Tradition - Play the Mad King Says 3 times
  • Raceway Regular - complete 15 race track rounds
  • Masters of the Labyrinth - kill all 3 labyrinth bosses

Calculate the Daily ToDo

If this isn't the first procrastination post you've read, you should be able to do it yourself, haha. Basically, we divide the amount we need to do through the number of days we have. This will give us a daily amount, which may need to be rounded correctly. Following this using the Arguably Foodlike achievement, we will calculate 300 / 18 = 16.66... Of course, we can't eat less than one, so we round up to 17 (even if it would've been less than 0.5).  Here are the results for all of the annual achievements:

Achievement Total amount Daily amount
Arguably Foodlike 300 300 / 18 = 16.67
Ascent to Madness 1 1 / 18 = 0.06
Ancient Grudge 100 100 / 18 = 5.56
Courtly Service 5 5 / 18 = 0.28
Pumpkin Carving 100 100 / 18 = 5.56
Mad King's Clock Tower 3 3 / 18 = 0.17
Lunatic Racer 3 3 / 18 = 0.17
A Royal tradition 3 3 / 18 = 0.17
Raceway Regular 15 15 / 18 = 0.83
Masters of the Labyrinth 3 3 / 18 = 0.17

Interpreting the Data

Now we have numbers that need to be interpreted, as given by the example before. This means, every day we would have to eat about 17 candy corn. We need to do the Ascent to Madness at least once (the calculation of this was unnecessary here). About 6 of Joko's subordinates need to be killed each day. We also would spend 28 silver each day, which is not possible as the lowest amount of money that can be spent is 1 gold. If we multiply the amount per day by four, we get 4 * 0.28 = 1.12 gold. This means we should spend 1 gold every 4 days. The pumpkins that need to be carved is equal to the Joko's minions we need to kill, which is ~6. The tower, labyrinth race, and "Mad King Says" need to be done 0.17 times per day, which is about once every 6 days (6 * 0.17 = 1.02). The raceway tracks in the special area require you to do 0.83 rounds every day. It makes much more sense to do three rounds, though. As such, we will do 15 / 3 = 5 runs instead. So, redoing the calculation we get 5 / 18 = 0.28 instead. So, we will be doing this too a little less than every 4th day (4 * 0.28 = 1.12).

Small Tips For Rounding When You Do It Yourself

If you calculate this yourself, make sure to round correctly in your interpretation. The amount you do daily should be rounded up. This is to make sure you get the total before time runs out. You will be done earlier, though, which is fine. However, when you round the frequency, you want to make sure the number decreases. If you do something every two days, you do it more frequently than if you do something every three days. This is important to make sure you will reach the total.

Your Mad King Says...Enjoy the Halloween event!
[1] https://www.guildwars2.com/en-gb/news/halloween-2019-is-getting-closer/

01 October 2019

Guild Wars 2: Strike Missions Introduce Players To Raids

Guild Wars 2 has released the first Strike Mission a few weeks ago. It belongs to a collection of instances, which are supposed to introduce players who have never done them before into raids.
Having seen this first instance, I'm a bit skeptical.

What Does The Strike Mission Provide?

Screenshot of Guild Wars 2
Preparing for the Icebrood Construct Boss
The strike mission features the area that was played during the story. Lore wise it happens after the story without spoiling more than why you're in the area again in the presence. After the NPCs talking a cave entrance opens that lets you go through a tunnel. This tunnel features icy ground that lets you slide and a snowball rolling down as an obstacle. Past this tunnel, there is a jumping puzzle with a few chests. The ice physics from before are reused here. (and they do interact weirdly with gliding.)
Past the JP lies the boss.

The boss is also quite simple. It requires no tank and technically no healer. His attacks happen random and consist of impacts and ice waves that can be dodged or jumped. Additionally, he has an attack that fills 180 degrees of the arena with a swipe and a ground effect that deals damage over time. Another attack of his is the ice mines. Once he spawns them, they rotate around him. He often casts a wind that moves players along with it. Due to the opposite direction of the player and bomb rotation dodging them is usually required. Something easy to miss is an icicle attack he sometimes casts at a player position.

At 50% of health, the boss will go into phase two. In this phase, he uses two new abilities. Now he creates two to three (later on probably four) ice patches. These shoot out small bubbles that deal damage on hit. The way they spawn and move is very familiar for bullet hell games. After the projectiles stop spawning, tiny arrows highlight the ice to tell the player to get on. The boss will hit the one in front of him, producing a big wave that cannot be jumped over and is hard to dodge. The players need to stay on the higher patches and jump over it. The fight continues until the boss dies.

Reviewing The First Instance

Looking at the first strike missions already gives me a glimpse of where ArenaNet wants to start. The boss can be done with only damage dealers and features aside from dodging damage just one specific mechanic. This means it's planned for people who have at most killed a world boss or done a dungeon. If it were planned for people who run high tier Fractals of the Mists, it would have required a healer.

One of the biggest worries I have with this guy is, that people have so much damage in the group that mechanics are skipped. If the boss reappears later and the mechanic kills people instead of downing them if at all they will leave the mission with a bad taste. Overall, there is no incentive to learn all of the mechanics, which are thrown at the player.

The Complex Nature Of Raids

Raids are complex. Aside from requiring the player to figure out how to defeat the boss, there are mechanics layered upon mechanics. Each of these needs the raiders to react to and act on certain triggers. These can be...
  • visual: a telegraph, an animation, effect
  • auditory: a sound
  • or combined (using visual and auditory)
Additionally, raids are a multiplayer experience. This means players need to decide on how they will handle communication. (This does not require speech, though it simplifies communication by removing the requirement of typing.)

And then there are roles. Since bosses deal a lot of damage, some players need to switch to healers and tanks. More of them need to be given, depending on the mechanics and advantages of some classes (for example, supporters).

Raids are often seen as end-game content as they provide the player with challenges, where they can use everything they have learned during their MMORPG experience.

What Makes We Worry About Strike Missions

In game-design, you usually give the player one mechanic or system after the other. These are separated before being found layered. This is the best way to have the player learn these systems. This is actually done by ArenaNet at one or the other encounter. (for example, the guardians before vale guardian or the earth mini-boss before Adina) All of this is irrelevant if the players ignore mechanics. This means we need to teach figuring out the mechanics without frustrating or demotivating the player too much.

Giving invulnerability to the boss while the mechanic plays would be a good idea. However, this means the player stops what they're doing: Playing their class. Instead, it would make more sense to decrease the incoming damage the boss gets if a mechanic fails. (Keep in mind we don't wanna kill the player instantly for fails as this discourages too much). Now we just need to make sure, the boss performs the mechanic before dying.

Wrapping Things Up

I feel like this post has reached a decent size. I'm gonna write another one once the next Strike mission comes out until then I hope they will read this post or know what they're doing. Players need to learn that...
  • How do I heal?
  • What is tanking?
  • What is kiting?
  • What kind of things can I expect in raids?
And most importantly. Raids aren't hard, and they aren't just for hardcore players. With a decent difficulty curve, (nearly) anyone can learn to raid.

With that good night!


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.