16 June 2020

Mobile, Mobile or Mobile Games?

The "graphics" versus "aesthetics" misunderstanding between players and developers isn't the only problem. Even developers confuse each other with terms like Mobile, Mobile, and Mobile Games. Though, this issue arises from the ambiguity of abbreviation. The full terms would be games on mobile devices, games developed for mobile devices, and mobile context-aware mobile games. But what is the difference? Why are they all just called "Mobile Games"? And how to categorize games like Diablo Immortal, Merge Dragons, Weather Farmer, Emulators, Pokemon GO and Candy Crush?

Mobile Games as Games On Mobile Devices

Showing a game with simulated analog stick and buttons.
Non-natural input on smart-phone.
https://pixabay.com/photos/game-play-mobile-game-android-game-4622800/
"Games on mobile devices" is the broadest category. If a game is available for a mobile device, such as a phone or tablet, it is a mobile game, more accurately, a mobile device game, which abbreviates to a mobile game. Ported games are a massive subcategory of these. Their typical controls are buttons and analog stick simulations, like in Diablo Immortal or Emulators. As such, they can't belong to the next category.



Mobile Games as Games Developed For Mobile Device

Showing a game that uses touch to drag and swap candy
Natural input on smart-phone.
https://www.piqsels.com/en/public-domain-photo-jfxiz
A game designed for mobile devices uses device inputs naturally. Since a game developed for a console is a console game. A game developed for a mobile device is a mobile game. Hence the confusing terminology. An example of natural input on smartphones would be tapping to select an object, or dragging your finger over the screen to move an object. However, natural-input does not match all games. Thus, "one does not simply [develop an MMORPG on mobile]"[1]. Merge Dragons and Candy Crush are games developed for mobile devices, but not the next one since they don't use contexts.


Mobile Games as Context-Aware Mobile Games

Showing a game that uses GPS and AR as contexts
Game using GPS and area context
https://www.flickr.com/photos/140521268@N03/27947940226
When using the device's position, surrounding area, light level, etc.. We get a context-aware mobile game, specifically, a mobile context-aware mobile game. Since it is a game and contains "mobile" twice, it is a mobile game. Researchers are still researching these relatively new mobile games, but they already provide a plethora of possibilities. Their era got initiated by Pokemon GO. And present features such as considering weather-data like in Weather Farmer.[2]

Conclusion

Now you know about the different mobile games. You understand why they're called mobile games. And you know their differences and what determines their category. Keep in mind these categories do not determine the game's quality, though they relate to their uniqueness. You don't see games using your location or weather on a computer, for example. That wouldn't work well either unless the player is using a laptop.

[1] Lord of the Rings - One Does Not Simply Walk into Mordor Meme
[2] Technical University Munich: IN0040 Social Games

29 May 2020

We All Might Possess Eri's Quirk From My Hero Academia

Occasionally, I watch Youtubers review games or animes, and I saw the episode discussing Eri's Quirk. On the same day, I talked with another person about my fasting. Then I realized the connection. But, let's clear things up first.

Who Is Eri And What's Her Quirk?

"My Hero Academia" is an Anime playing in a world where people are born with special abilities, called quirks. They pass these down through genes. In the fourth season, they rescue a girl named Eri. Her ability rewinds a person's body to a previous state. Using it too much will revert the person to a baby and eventually to stop existing. While this sounds like a bad thing, rewinding injuries is possible as well.[1]

Just Fantasy Right?

So, reverting injuries, returning your eyesight, undoing cancer, etc.. Living forever. These all seem surreal, but they're not far fetched. Our bodies heal and repair themselves already, which is done by reproducing cells. However, every time reproduction happens, there can be errors, mutations, and damage, the current principal behind aging. There's a solution, though.

Longevity Genes - Core Of The Quirk

The longevity genes repair the damage done to the DNA during reproduction. However, living organisms have two modes of living. The "growth and reproduction" mode, during good times, and the "protect and repair" mode, under severe conditions. These conditions can be reached by eating less in general, eating less meat, being uncomfortable cold or hot, and during high intensive exercising.[2] During the latter, the genes will slow down aging, But, the quirk doesn't only slow it. It also stops and undoes aging.

Gene Therapy

dna, building, block, nature, gene, medical, built, blue, animal themes, animal
Image of DNA from
 https://www.pxfuel.com/en/free-photo-jrtql
Using gene therapy, scientists reset the epigenome of mice, resetting their age. However, when not careful, the cells may become pluripotent ones. Meaning they don't know their purpose yet - being tumors. Switching this procedure on and off on mice worked well. Unfortunately, given the approximately 37.2 trillion cells of a human[3], we're not there yet. But now it doesn't seem as far fetched anymore.

So, In Comparison

To recap and compare. Both Eri's quirk and gene therapy can revert cells to a previous state. Allowing the healing of damaged cells, blindness, cancer, and more, enabling us to live forever. Additionally, they both share the problem of resetting too far. But neither scientists nor Eri, have figured out how to control this. We're unable to revert a lot of cells at the same time, while Eri isn't able to control the intensity or ending it. Another difference is, we don't need to evolve this quirk. It's already built-in for us.


[1] My Hero Academia: Season 4 Episode 13 & 14
[2] How to Slow Aging (and even reverse it) - https://www.youtube.com/watch?v=QRt7LjqJ45k
[3] https://www.wonderopolis.org/wonder/how-many-cells-are-in-the-human-body

13 April 2020

Is Implementing COVID19 Related Content Into Games Really That Bad?

I never expected to write a blog post related to COVID19. Though I kind of ended up in a discussion that even got me muted on a Discord Server after backing down and apologizing informally for the missteps I've done (like ambiguity). The big topic of today is: "Is it okay to build in references, memes or jokes about catastrophes like pandemics into your games."

Making Fun Of Pandemics!?

Now, why would you ridicule something this serious and terrible? Do you have no decency? Are you unable to see the seriousness of it?

These are probably the first thoughts that would come to mind.

With some exceptions, I do believe that the majority of people do know about the gravity of the situation. Many people are begged and forced to stay at home, almost everyone is tense, conflicts arise, and negative emotions ensue. This built anxiety, situational depression, sadness, and others take a toll on everyone. And everyone deals with it differently. Some people laugh at funerals, the same who will most likely make fun of COVID19. It is their way of dealing with it. Is it insensitive? Maybe, maybe not.

Insensitivity And Getting Offended Nowadays

People always get offended by all kinds of things, which is okay in and of itself. However, disallowing the people to deal with their problems could worsen the situation. I don't wanna go into what happens with people who have anxiety and situational depression and can't deal with their problems.

Responsibility And Prejudice Of Game Developers

But as a game developer, you are a public entity. 
This is something that bothers me deeply. If we can make jokes in person and our art can contain these jokes, why not the games we program? Because games are in-between software and art?

You're just adding it to make a profit off of it.
Well, this is a good point but also prejudice to some extent. Are there companies who would like to do that? Definitely. Does every company do that? No. Even more fascinating, if a company earns money with Patreon or ads, they automatically try to make cash off of COVID19 when implementing anything related.

Deeper Into The Gray Zone

We can go even deeper by integrating charity into it as well. Games, gamers, and game developers can do big things. The media doesn't approve of it or may not even mention it, but GDQ (Games Done Quick) and other events can raise millions of dollars for charity.

Maybe It's Too Early

Well, to close it off, I understand that companies or game developers don't want to do this. It is very risky to receive negative publicity for it, and it adds oil to the already tense mood.
But maybe one day, we'll be able to let go, just smile with positivity for a short moment to relieve ourselves from the negative emotions and enjoy ourselves.
Also, be alert, not anxious. Take it with humor, but do take it seriously.
Stay safe.

10 March 2020

Designing A Gaming Bot For Discord (Initial Approach)

Whelp, I made it. I figured out all the things I wanted to figure out before writing a blog post about making a gaming bot for discord. So, without further ado, let's get into it.

Prologue

When I say gaming bot, I'm not talking about a discord bot connected with your game. Instead, I mean a bot, which responds to user commands. You can compare it to a text RPG. Before making it, I used an approach that I can only advise you to do too. But, make your own decision after reading it.

The Approach

Planning to use any preexisting platform for your game requires you to brainstorm the possibilities. Like with different hardware (mobile games versus PC games), not every game mechanic works. Looking at the input and output methods that are available to us and analyzing these tools allows us to build the game's horizon.

Familiarizing Yourself With The Platform

Discord is a modern chat platform. It allows users to interact with each other on servers, in groups or private chats. All of those three have both voice and text capabilities. The latter also features emojis. Whose are of use to react to others or for usage in your message. Reactions can also be taken back and reapplied.
Additionally, the text message can contain attachments, which will be displayed if they're video, audio, or graphic files. Else they appear as a download instead. URLs are displayed similarly, except for downloads, which are shown as previews instead.
With the ability to edit, delete, and format your messages, there are even more possibilities for bots to do their charm. Unfortunately, we are more limited than that.

Familiarize Yourself With The API

In the end, even a limitless platform restricts the game or bot with its API.
Luckily, all elements listed before, which a text-based RPG would require, are implemented in the API. I could go into the API in detail, but I think I'll leave that for another post when I write about the gaming bot and the design choices in more detail. Anyways, let's look at the capabilities we have for the game.

Screenshot of my RPG Bot
Using Emojis as an input method.

The Input

The primary input we get is user messages. We can search for specific patterns in there or use the API

calls to filter for commands. Another one we can get is through reactions from users to the bots messages allowing us to use arrow emojis to flip through pages of content, for example. While this doesn't sound like much, they are already powerful tools in our tool belt.

The Output

Screenshot of my RPG Bot
Using embed for layout and emojis for
graphics.
There's a lot we can do output wise. From sending simple messages showing content to formatting them, using embeds to implement layouts, emojis to represent graphics, or even posting generated or resource images. Given the list of Discord features, there's a lot more than these I came up here now. But, it is a start if you don't have one yet.

Conclusion

Well yeah, this is the approach I choose when developing games for hardware or platforms that aren't as familiar. I hope it helps you make better design choices. And maybe I'll post about my gaming bot? We'll see in the future.

Discord Dhuum challenge. Anyone?[1]

[1]https://itrunsdoom.tumblr.com/



01 March 2020

Acquiring Languages and Games

Since I'm coming close to writing/performing the last exam of the semester, it's about time to continue learning Japanese. What I did not expect was the number of videos about language learning vs language acquisition, which ended up in my feed. Curious as I am, I watched them, of course. And here is what I've been thinking about it.

Language Learning VS Acquisition Summary

Firstly, what is language acquisition? The idea behind it is that you do not learn the rules (grammar), vocabulary, etc. of the language (language learning). Instead, you acquire it the same way children or babies do (language acquisition). But how do babies learn the language? By being immersed in it. We start not understanding a single word, but after some time, given their context, we can figure it out. The more words we acquire, the more we can derive through what we already know. Supposedly we do not obtain through repetition as many apps do it. (for example Duolingo) [1]


My Approach To Such An App

For maximum immersion, throwing the player into a fictional world instead of asking questions about language makes more sense. The goal is to create a virtual environment tailored to obtaining it similar to acquiring it by living abroad. This virtual world most likely needs the player to navigate it, which means we have to teach the user words that describe these actions. (right, left, up, down, north, east, west, south, jump, etc...)

Like in real life, the player can be asked to complete quests. Starting with simple ones such as: Bring this orange to the fruit store to the right or bring this sword to the northern guard. Whether the words "right" and "northern" are marked, is a question of difficulty I would say. The idea of these quests is to teach the user the meaning of those words. Important is ensuring that the possible mistakes the player makes are limited. They might not notice subtle hints, and we don't want them to get frustrated. Naming the store of the orange quest "store" is a positive example of this. On the other hand, the sword fetching quest is going to be frustrating, since the player might not know what north, sword or guard is.

From there on out, it pretty much builds on top of each other. Slowly teaching the player vocabulary and later on grammar through context. For example, let's assume the player learns German. They already know the word "springen" (engl.: jump). Putting NPCs that react to him with "Du springst" (engl.: "You jump"), then they get subtle clues to what "du" (engl.: you) could mean. If some children say: "Wir springen" (engl.: "We jump"), and they do it, we get more clues about pronouns. This may not even be the best approach, but you can see what I'm aiming at here.

Conclusion

So, as you can see, if this approach does indeed work, it might be possible to create a fully immersive game, which supports you on your way to acquire- instead of learning a language. Done through reading and hearing, and interacting with the world and its speech.

However, this is just my thoughts on it. Whether or not it works needs to be put to the test, and maybe this post sparks a conversation between people who develop language learning applications.

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

01 February 2020

I Was Ignorant About Shaders

Congratulations, University. January is the first month on which I didn't post on this blog for a whole month. I've been working on four different projects: Specifically Audio, Assembly, Interactionmethods, and Shaders.

Me And Shaders

When I had first come in contact with shaders, I've been ~8 years younger. Back then, I first started to learn to program with the DirectX SDK. I never really understood shaders back then, and they were annoying. I never really did anything with them. From there on out, it took seven years until I came across them again during studying when I saw the project of a fellow student talking about his shaders. The game looked amazing. One semester later, in the Realtime graphics course, we were taught DirectX as well as shaders. It was- fascinating but pretty technical. It wasn't until I took the "Modern Techniques for Shader Development and Imagesynthesis" course.

The Epiphany

Until then, I didn't think much about shaders, but the courses made me realize how important they are and how easy it is to write them. Most of the animations, particle systems, post-processing effects, and other things making your games more beautiful, are probably done using shaders. Vertex shaders, geometry shaders, fragment shaders, image effect or post-processing shaders, and compute shaders give you the power to push your games to a new level of aesthetics and beauty.

What If Shaders Are Not Your Thing?

Of course, it's not the end of the world if you don't write your shaders. There are shader assets out there that you can get. You can make other people write them for you (like me :P), and most engines come with standard shaders. So, no one is forcing you to get into writing shaders. However, I still want to make you realize how important they are and that it is possible to create great things with them.

How To Get Started?

The university course I took taught all techniques by using case studies. So, get out there, take a game and try to recreate the effect. Oh wait, maybe you should start with some tutorials on the basics first. Read into how Vertex and Fragment shaders work and make your own in Unity since you can get started right away there. Check for some websites that teach shading while using case studies. The tutor of the course has a website called lexdev.net.

Shimmy, Shimmy... Out And Away

That's it from my side for today. I'll come back with more posts eventually, especially after the exam phase. Also, I started to use Grammarly again, given your feedback on the blog posts that didn't use it compared to the ones that do. Thanks for that feedback, btw. Oh yeah, I could write my case study or tutorials in the future.

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.