Saturday, 14 September 2024

Post-Mortem: The Land of Artificial Jellies

 Well, it happened. I finally released the Land of Artificial Jellies.

Believe it or not, that game was three years in the making. Of course, I was studying during that whole time, but still. That’s a long time for a game that’ll take most people just about an hour to complete.

In the beginning, the game started out as a design document. I did something I hadn’t usually done and actually included some pixel art designs in the design document before I had ever even created anything in the Godot Engine.

Essentially, I just sat on this document for about 6 months without doing anything to it. It was far from complete, even then. I think I wrote the description for how the first three levels could play out, and then I gradually added the names and gameplay of the next 8 levels over a long period of time.

At some point, I decided enough was enough, and I started work on this thing. It coincided with moving in with one of my friends, and it was a pretty peaceful way to spend some time during the Summer.

Besides the awful code and the bugs and the fact the game was just not really anything, I pushed onwards, and finished what I thought was the final product a couple of months later.

Of course, since the game was really not really anything at all, I realized I had to add something. Fortunately, because the game was so much not anything, it was relatively trivial to additively stick more parts on it without running into any tech creep. So, I decided to make the second world.

Lastly, I decided it needed a third to really round it out, and this time rather than my technique of just piling random stuff into a Godot project, I would actually use my brain and think of something. Sadly, thinking is not often my brain’s strongest quality, and this yielded the third strange and not-quite-fun segment of the game.

Ultimately, it’s fine, and I hesitated to polish it too much because I was sure that I’d change something radical soon. That never happened, and it is just kind of weird, with a fairly obvious strategy that encourages playing the Jelly Quest as little as possible-- if the objective can even be understood.

This is where the game sat for another long period of time, until earlier this year, when I set up the Steam page and decided to just ship it, for better or for worse. I fixed most of the bugs, improved the performance a lot, and added a few tutorial dialogues here and there.

Basically, the game is what it is. I couldn’t really think about how to transform the design without transforming the identity of the game. In some way, the Land of Artificial Jellies is just a bit fucked.

On the bright side, this means I don’t feel that bad for not promoting it. It’s a weird game in its own defining niche for the world of game-shaped-objects, but the right audience could enjoy it. Despite the fact it’s really hardly a game, I’m glad that I made it.

Maybe I’m not even a game developer, and to be honest, maybe I don’t even want to be. Maybe I’m a game-shaped-object developer?


Thanks for watching, and stay tuned for more videos about my development process, because God knows you’re getting them. If there’s one thing I’m good at, it’s beating a drum until the drum is broken and pulverized and I’m asked to leave the drum store. And no, I did not enter that drum store with any intention of buying a drum. Goodbye.

Monday, 3 June 2024

The 'Back-Burner'

 My exam season is finished, and I have finally attained freedom! No more Biochemistry, ever again! (well actually that's not quite true, but it's true enough.)

I've got a lot to get to work on now. I've got three games on the backburner...

- ULTRAFUN: This one has been on the backburner for absolutely ages. It's a free game, but it's a passion project. I might start something new with that one-- I have indeed had some new ideas. 

- Squid Chess: This has been my "main project" for most of the last academic year. Sadly, it's been mostly relegated to the sidelines for quite a while. I'm excited about where it's heading, but it needs a lot of work before it's ready. At the moment, it's still quite broken. I need to work with my teammate on how to guide its future direction.

- Land of Artificial Jellies: This is actually a game I'm a little less passionate about. I'm not too happy that it doesn't seem very fun to play. It's a bit repetitive and, well, I might save it for its own blogpost. Either way, it's a commercial game, and it's set to release in.... 3 months. Uh-oh!

That doesn't give me a whole lot of time to finish up Land of Artificial Jellies, but there's only really a few things left that I need to do. In fact, of the post-it notes on my wall, I can probably get those done in a week or less.

The really intimidating thing is, however, that Artificial Jellies is a mess. It's just not fun! I'm not sure if I'm even comfortable releasing it. I feel very negative about it. It's kind of a 'novelty' game-- most of the game is only there to showcase some (admittedly, it's quite a lot) text in each level. I'm not sure whether the right thing is to just 'juice it up', or to try to redesign any part of it. 

Given that I have only three months and not a lot of ideas, I'm more inclined to just make sure it's tight enough for what it is. The description on Steam calls it not a game, but a game-like land. This is true because, as a game, it contains this, 'absence of play'. There's a hole in the design that doesn't allow the player to really do anything except follow a very narrow and predetermined sequence of actions, without any skill-checks or obstacles in the way. 

Maybe I'm being a little too hard on myself, and I should let players just enjoy it for what it is: A short, novel experience about the great Land of Jellytopia.

Saturday, 18 May 2024

What Makes Edu-tainment?

 One of the amazing things about video games is their ability to lead you into a new world, not just as a passive observer but a true participant in the strange machinations of the game. This worked excellently for the Star Wars franchise, where so much lore is expounded upon in many, many different titles. My thinking is, if this can be done for the Star Wars universe, why not other universes too?

What is it that makes the tie-fighters in Star Wars so much catchier than the behaviour of, for example, an RNA polymerase?

For one thing, that's a silly question. RNA polymerase is fairly boring. It doesn't have much of an intention besides "make the RNA" and it doesn't have much of a story beside "it evolved this way over billions of years by random chance". That's about as blank of a story as you can really get. 

Moving away from the comparison with Star Wars, I think the best-ever example of a functioning game in the edutainment genre is Duolingo. This app used to be considered a reasonably serious-business language learning software and less of a game, but over time, it has become increasingly game-ified to a point where I see it referred to and categorized as a game even more than anything else.

Duolingo is, in my opinion, the present-day champion of the edutainment genre. Nothing that I know of has even come close. It has a unique sense of poise, where it is primarily a no-nonsense language learning app (it only really attracts people who already want to learn the language), but showers the player in effects, goals, social incentives, metrics and points as they continue to engage. This makes the language learning experience very pleasurable, coordinated, and you know without a shadow of a doubt that if you complete a whole Duolingo course in your chosen language you will get some idea of the language, even if it's not a complete one. 

This is a game that presents a tangible benefit to the player. It isn't something abstract (like telling a good story), it's a truly intrinsic reward. That is, in my opinion, the strength of the edutainment genre. So why don't we see more edutainment games?

That's a good question, and really, I don't know. I think that the games industry has stagnated in the last few years, in part because of vacuous incentives present in most games. If you can be entertained by a story, why not watch a movie or a TV series? It's less practical effort, and you might enjoy it just as much. Some games already resemble movies with interactive segments spliced in.

One intrinsic benefit to games is the ability to show off your gamer skills to your peers. That's true of any skill-based game, but also of the multiplayer variety. MOBAs such as Dota 2 and League of Legends come to mind. These have the intrinsic benefits of providing essentially a platform for socializing. Team-based deathmatch games like Counter-Strike and Team Fortress 2 also come under this category.

However, you might already imagine that this edges out a lot of small developers from competing in this sphere. As are the same problems with the (already heavily game-ified, I should add) social networks, if you don't have lots of users already, you won't be able to recruit any more.

So to me, this speaks to an opening in the industry. Games can be used to communicate, incentivize, and provide rewards for the player-- why aren't we getting more creative with what those rewards are? There's only so far that a gamer can go without needing to get up, earn money, eat food. If we're asking them to share their time with our games, we need to make it worthwhile. 

Well, that's my thoughts for today, at least. I'd love to make a game that can include some real biological information. Perhaps I would be taking a page from Duolingo's book and positioning it as a purely "learning-oriented" app before a game. Alternatively, I could be making a "museum"-style thing. 

There's a long way to go before that dream can be realized, I think. For one thing, I need to finish my actual degree first!!

Wednesday, 15 May 2024

Post-Mortem of 'Neuroscience Games'

As it turns out, the field of neuroscience is chock-full of interesting mechanisms for interrogating our favourite blob of pink meat, the brain. As the proud owner of a human brain, I actually quite enjoy having my senses interrogated. I actively like to have my cognition challenged, poked and prodded. Ok, not literally, but you get the idea.

Well anyway, I hope the same thing applies to you. I took four important tests of working memory (the Digit-Span Forward Task, the Spatial-Span Forward Task, the N-Back Test, and the Letter-Sequencing Test) and implemented them in my favourite game engine. Ten points if you can guess what game engine that is.

As it turns out, most of these are actually kind of... entertaining. As for what they really measure, it's not immediately clear to me. It's a reproducible metric that exists as a contextless point in the vast void of unknowns that is the field of neuroscience. Most of the skills involved in these tasks are not yet pinned down to a particular part of the neurological anatomy, and in my opinion, probably never will be.

 


Anyway, the purpose of making this game was half-way revision and half-way a challenge to myself to see if I could do it in such a short time. I spent only about three hours (with a break in the middle) to make the whole thing from start to finish. It's fairly unpolished, but most of the games have all the right 'beats'.

In terms of which one is my favourite, I would say the Digit-Span Forward Task (showcased in the video above). That's the only one that felt like a real game, and it's the first one that I set out to work on. In a nutshell, the idea is that the administrator reads out a list of numbers, and the subject just recites them back. Sadly I couldn't add voice recognition into my Godot Engine game (and really, do I want to?!) so I settled for a keypad instead. I settled for some crackly old voice clips of someone reading out numbers in a monotone (specifically created for the Digit-Span Forward Task), rather than recording my own.

The Spatial-Span Forward Task

The Spatial-Span Forward Task is nearly a duplicate of the Digit-Span task. The only difference between the two is that this one is visual rather than auditory. That being said, unlike the Digit-Span task, this one seemed very much to be missing something. It needed an extra menu, or a bonus effect. It feels a little empty. It ends very quickly when you lose, unlike the Digit-Span test, where the audio will complete itself even if you're staring at the GAME OVER screen. If I were to polish it up, I would most likely go back and add an extra animation before the playable grid disappears. Perhaps I would make the playable grid look better in the first place. An animation to appear, an animation to disappear...

Despite 'polish' having somewhat of a reputation for being the superficial after-thought, it can have a deep and visceral effect on the experience of the game. 

 The other two had a different set of problems. Perhaps I was getting tired by this point, but upon playtesting, I did not enjoy playing the N-Back Test or the Letter Sequencing Test even one little bit. Who would have thought that tests for neurological ability aren't packed with excitement? Well, this is particularly true for the Letter-Sequencing Test. The task is based around memorizing a list of letters and numbers and then ordering and alphabetizing them. It's not easy to alphabetize a list of 4 or 5 letters, and this game becomes a little exhausting once you play it more than once. 

The worst part of the Letter-Sequencing Test is possibly that the interface is quite ugly as well. Maybe. Ok, perhaps I'm being a little harsh on it. But it's true, I don't feel much excitement from the way my screen looks when I'm in the game.


 Finally, the N-Back Test has a reasonably attractive interface (though as with all of these games, it could be polished). The big draw, however, is this lovely wide progress bar at the bottom of the screen. It just tells the player how far along in the test they are. The main issue with the N-Back Test, aside from the fact it's also a little bit exhausting of my cognitive abilities, is that I am not entirely sure how to score it! Currently, it's all about "accuracy", i.e., the number of correct answers compared to the number of incorrect answers. However, I've seen more complicated metrics for extracting scores from the N-Back Test, I even saw one that included timing. I'm not that cruel that I would make it a time-sensitive game. However, I'm not sure if my current scoring rubric is doing it any justice at all.

As with all these games, the N-Back Test was never really designed to be a super fun playable experience. I suppose that more than anything, this was only an experiment in some interface design and a little bit of speed-development. I have to say, even though the games are mostly terrible, making them all in only three hours is something I'm quite proud of :D

Sunday, 12 May 2024

What Is In My Future?

 Boy, well wouldn't I like to know!!

As a game developer, I've spent my career so far making a lot of games with all of the same shared restrictions. These are things like, two-dimensional, self-published, solo-developed (mostly), ... The natural continuation of this is to continue working on these types of games because they are what I know how to create

My general sensible-ness tells me, however, that I would be better off expanding my abilities in some way. I should go work on a three-dimensional game, or I should find some other people to work with. Well, that's a lot easier said than done. They say sometimes that in between plans of how you want to succeed, "life happens" sometimes. Well, I can only hope that when "life happens" it "happens" in the way that brings me to a greater fulfillment, and not in the "life happens" way that means I will one day get an anvil dropped on my head from off the top of a building.

I quite enjoy making the things I know how to make. I would be quite happy to continue doing that if I could possibly learn to do it full-time, all the time, I really would love to. Sadly, what I know how to make isn't enough. It's not enough to sustain myself in the present economy, and unfortunately, when I'm off learning disparate skills as financial band-aids for this problem, I'm only trapping myself in my little box of distracted non-growth. 

...

Well, if you're reading this, thank you for reading. I say, let's keep more things coming! :)

Thursday, 9 May 2024

My Review Of An Unrelated Degree

 At some point in the last four years or so, I made the somewhat surprising decision to take an undergraduate degree in a field that I had no expertise nor prior affinity for. That field was Biology. After a year of Biology, I switched to Biochemistry, because I was after the really nitty-gritty low-down on the science of life.

Well, how's that worked out for me? Throughout my whole degree, I told myself and others that I was only in it for the love of the science. I wasn't ever likely to get a job in the field. At the present moment, I feel a little less strongly about it (I'm writing this in the middle of my final-ever exam season. Go figure) but I still feel that my future career will most likely take me away from the field of Biochemistry. 

I had a brief stint with a fast-track Master's course. Until quite recently, my plan had been to get this so-called "Integrated Master's" degree by taking an extra year to carry out a proper research assignment. I cut this short for the simple reason that the only purpose of this extra year was to support my path to a PhD, and then a research assistant, and then a research associate, and a research whatever-else until I eventually land as a highly-paid lab technician. Aside from the fact it would take about 15 years of my life to ever get there, I simply realized I didn't have much of a path in Biochemistry. 

My research project would likely have been something along the lines of a mycological bioinformatician. Well, putting it that way, it does sound a little fun.

But although I have a passion for the life science of fungi, the only research opportunities in mycology are predominantly concerned with killing them or using them to kill other things. There's a lot left unknown about the true biochemistry of fungi as opposed to other living organisms, including the mechanics of their symbioses and interactions with other organisms. This is almost by design-- there's just no money in it! My favourite research paper is this one, titled the "fastest short jump in nature", written about the careful mechanism of spore dispersal from mushroom-producing fungi. It's very interesting, and I advise you take a read if you're even a little interested. The part that brings me hesitation, though, is the lengthy part at the end of the article:

Like most mycological research, work on ballistospore discharge proceeds, albeit slowly and often with limited funding, because it is fascinating. As a justification, this aligns with all manner of artistic pursuits, and, fundamentally, ballistospore research is a creative endeavor.

Well, the odds are that I will never find a place to research fungi. If I really charge head-on with the brawn of my brain (rather than the brain of my brawn), I might be able to dredge data all day finding genomic targets for new antimicrobial drugs, but really, is that how I want to spend my life? I hate breathing mold as much as the next guy, but for me, it could be a very lifeless journey.

So, here I am. soon-graduating with a BSc in Biochemistry. Despite all the complaining I just did, my experiences have been so valuable. As challenging and out-right depressing as it was at some points, I would find it hard to say that I would trade it for anything. 

As one might expect, I learned a lot about myself-- both figuratively and literally. Ultimately, that's all I ever wanted out of this endeavor! The benefit of this degree over, say, Computer Science (or-- heaven forbid-- Game Development) at the university level is that this degree brings together so many demographics of people. The science of life is truly universally beloved, and it's given me the opportunity to meet people from places I would otherwise never have been able to meet. 

The social aspect of university is a major one. Perhaps if I had known all this from the beginning, then I would have gone to a Game Development course in the first place. That way, I'd probably be a little bit ahead of where I am now. 

Who's to say where I'll end up, anyway? Anyone know any "fun" mycology labs hiring? :)

Monday, 6 May 2024

Why Don't I Write Anymore?

It's been a long time coming, but here I am. I have finally returned to updating my random little blog that nobody reads. Actually, that's quite a good thing. It's kind of relaxing just talking to myself. 

Why, then, did I ever stop? ... 

 

It's a long story. I am probably better off not getting too deeply into it for now. I'll go write an autobiography some day far off in the future :D 

That being said, I am going to approach a medium depth. Some level of detail that will not doom me to certain failure and despair, but neither will it leave you wondering "wtf is he even talking about just get to the point". Ok. Well I hear you. It's been several years since I've written something like this, so it'll take me a few paragraphs to get up to speed again. 

This all comes down to being perceived. It's a fairly common thing to bemoan these days and it's actually quite a cliche, but in my experience, it's the real deal. Being perceived is terrible. Sometimes. Especially when it's me doing the perceiving and being perceived, and I don't like what I'm perceiving. This has never been more true than my beloved problem child, the YouTube channel. The line between "game developer on the Internet" and "YouTuber" is not so clear these days. 

I've come this far in my game development career to learn that I am not a YouTuber. Well, at least not by choice. Particularly astute fans of mine will remember that I started my YouTube channel to publicize my blogs. Of course, I stopped updating my blogposts at some point and focused only on the YouTube channel. "Writing a blogpost" turned into "writing a script" at some moment I wasn't very clear on. The benefits of YouTube are evident, I can reach a much wider audience than I can with these little text posts... but is that really a good thing?

From the standpoint of a naive commercial endeavor, it seemed like a good thing. That was how I could build an audience, and a community, and eventually market and sell video-games to earn a sustainable living. A fine idea, but it falls short at the point where I'm simply focused on gaming the analytics. I need more subscribers? Well, that means tutorials. I get tons of subscribers from doing that. I'm deeply grateful to every game developer who took my advice from those videos, but that was totally a side-quest to every life goal I've ever had. The fact is, game developers are quite unlikely to be purchasing my games. Maybe even less likely than the average gamer, who knows?

So I've come to this point in my life and/or career. For earnest marketing efforts, YouTube is not really a main one. It's part of it, but I can afford to go easier on my poor subscriber base for now. I'll let them know when I'm actually cooking up something neat. 

In the mean-time, though? This is where I stay. I love writing much more than I love speaking. I love game development much more than I love teaching. The AlexHoratio brand is back, baby, and it's better than ever!

..

Okay, well, I can't actually be sure of that. I think I peaked at the post about the mushrooms. I'm probably not coming back from that. 

Really though, I'll be cooking up something new for you quite soon. Stay tuned! :)

Monday, 3 October 2022

You Don't Need Godot Tutorials...

Hello and welcome! Today you will not be receiving a Godot tutorial. Hopefully, at this point you weren’t expecting one either.

If you have ever watched a Godot tutorial before, you probably know how it goes. You are led from basic foundations up to a completed project, and you either copy what they’re doing on the screen or you make a few minor adjustments along the way. It’s a great way to become familiar with your tools.

But there’s an even better way to become familiar with your tools: use them!

The hard part of gamedev is always, in my opinion, the ideas. There’s a saying that ideas are cheap, but then again, so is water. Good ideas, much like drinkable water, are in the minority compared to all the things you could be thinking about if you wanted to.

Tutorials are great at lifting this burden because the tutorial-master already has a handle on what you should be making, and therefore he can work out what the structure of the project should look like. But engine tutorials are limited, and they are simply not able to actually teach you how to gamedev.

A tutorial project is just a placeholder. It’s only there to create problems that the engine can be used to solve, like a game that needs a character controller, or collision, or making a working “play” button. When you’re left on your own, it’s up to you to create those problems, and then it’s up to you to solve them.

If you are stuck in tutorial hell, I have good news for you: you have to start doing the fun part. Which is the creative part: the ideas, the story, and the lore. Then once you have a project in mind, start shooting for it! I mean, what’s the worst that can happen?

There’s a nice saying that is if you shoot for the moon and miss, you’ll still end up among the stars. Sadly because of the way distances work this isn’t actually true, but it does look that way if you’re observing from the Earth.

Thanks for watching, and stay tuned for more surprisingly motivational content. I think I even motivated myself when I was writing the script. Goodbye!

Sunday, 12 May 2019

WHAT LUDUM DARE 44 IS HERE ALREADY AAA

Ookay so this video is kind of in a non-standard format. This first half was written on the Friday before Ludum Dare, and then I'll write the second half of the script after submissions close on Monday.

I'll be honest I only realized that Ludum Dare was soon approaching like two days ago, so I'm a little bit unprepared. I've been a bit busy with life stuff over the past few weeks, and just when my productivity is starting to improve, I suddenly have to deal with Ludum Dare too.

But at the moment I have yet to experience the trials and tribulations that lay before me, and hopefully I won't suffer too much this time around. I mean hey; this is gonna be my 7th Ludum Dare. I have experience, right? There's nothing new that could potentially throw me a curveball.... right?

[48 hour long snip]

Oh... *god*. So that didn't go quite as planned. Now that's not to say that I didn't finish because I did finish, but the game could have done with a lot more work. For instance, it doesn't have a main menu, and the transition to the win screen is just a hard cut.

Despite putting in a combined 19 hours of programming across both days, I still found that I ran out of time and more important, I ran out of energy.

The reason for this is that right from the beginning, I wasn't able to come up with an idea quickly enough. I guess I kind of lost momentum early on in the day and started procrastinating, and it was only until like 2pm on Saturday when I actually started properly coming up with ideas. This meant that I had wasted a lot of the most productive point of the day(which for me is the morning to mid-day), and I had to drink a ton of caffeine to keep up.

I'll get to the consequences of that in a minute.

So I finally had my idea. It was gonna be neat arena combat game with automatically generated "characters"(though they look identical, I'd give them all unique names and unique stats). The idea is that you beat up enough enemies, gain prestige, and sell your character to purchase a higher level one. Kind of like a whole-body upgrade, but you're given a limited number of choices. I was planning on biasing it so that you would only be given the option to purchase a better character overall, but of course this would mean I'd need to come up with a good way to sort these characters stats from highest to lowest in such a way that guarantees that the player is always moving up the ladder.

As you may have guessed from the fact that it was a pain to even explain just then, the scope of this was just way too big.

I started working on it and getting the basic stuff out of the way. I added movement, enemies, shooting, a few nice visual effects, etc. Everything was going pretty well, and since I had a very basic game working, I decided I'd wait until tomorrow to finish it off since I was getting pretty tired that late in the day. Maybe things would have been different if I hadn't wasted so much of the morning, but oh well.

So the second day comes around, I wake up and I realize "oh no, what have I done? I've only actually programmed like 25% of the code that I'll need to do all this".

Immediately, I decided that I'm going to need to re-design a lot of my original plan. At the time I had a score counter that doubled as a health bar, and although I know a lot of other people also went with that idea, it was the only option I really had at the time.

I decided I'd have to add a little upgrade menu, so I did just that. I ended up basically just tweaking the upgrade menu piece by piece for most of Sunday until I had something which was somewhat unique, if not a bit confusing for people who didn't program it. Not a great place to be at, especially when I know that I won't have suitable energy levels to add any instructions.

At about 6pm on Sunday, I realized that I didn't have a main menu. I didn't have a win condition, and I didn't have a lose condition. These are arguably pretty big pieces of th puzzle, and I already felt like I was completely flattened since I'd been programming since about 10am that day.

Somehow, I pushed through and added a lose condition. Not too hard, but I didn't end up adding a "Retry" button. You'd have to restart the game if you want to try again. The game basically pauses and plays an animation saying "you lose!", which again, isn't great.

At around 7pm, I still hadn't added a win screen. Okay, so I hadn't actually thought about how to win the game at this point and it was getting LATE. I decided you'd win when you maxed out all the upgrades. I did a quick playthrough to see how this would work, and it wasn't too bad, so I just programmed it in real quickly. No scene transitions, no retry button, no end of game stats. Just a harsh cut to some rainbow letters telling you that you won, and to have a nice Ludum Dare 44.

But hey! That's good enough for me. This isn't my most successful Ludum Dare, but not all of them can be winners and I'm not too cut up about it. As I mentioned before, this was my seventh Ludum Dare in a row, and I guess this goes to show that having experience does in no way mean you have to go be good at what you do all the time.

I finally exported and uploaded the game at around 9pm, added a real quick description and I decided to make the title of the game "Press The Space Bar To Upgrade", because I knew that not everybody would read the poorly formatted instructions and that specific gimmick isn't explained anywhere in-game. It'd be pretty easy to miss if you weren't paying attention.

And that basically sums up my Ludum Dare 44 experience. It was more difficult than usual, but hey at least I can turn that into a YouTube video! Thanks for watching and stay tuned for more videos about Ludum Dare because I always do a video whenever one of those little things rolls around. Goodbye, and good luck for Ludum Dare 45!

Sunday, 17 March 2019

That Time I Tried Magic Mushrooms

It should be no surprise to any of you that I am a fucking maniac. I drowned in ACE Juice. I'll tell you in a future video how I am in regular contact with the Dark Lord Satan. I am the soon-to-be legal owner of Snail Mail, as soon as Ubisoft gets back to me, which will surely happen any day now.

This might not be as crazy as some of the above, but it's worth adding to my channel's list of stupid videos with questionable grounding in reality. I'm going to talk to you about the time I took magic mushrooms.

Magic mushrooms, for those of you who don't know, are a psychedelic drug. They're not quite as "rainbows and unicorns" as popular media might have you believe, it's quite a bit different. In fact, especially at lower doses, you might not even get any hallucinogenic effects at all.

A week ago or so, I purchased a box of Agaricus Bisporus mushrooms. For those of you who don't know, these are the standard "magic" mushrooms that most people talk about when they use the term.

Now, I don't really like the taste of mushrooms. In fact, for a long fuckin' time I've really hated the taste of mushrooms. Like a lot. So I just did what anyone would do in this scenario, and I sliced them up and placed them on pizza. Unfortunately, we didn't have any pizza, so I had to make my own. Instead of making a pizza base which takes FOREVER, I thought I'd just spread some tomato sauce on a paper towel, and since I'm vegan I can't eat the cheese.

It's a new take on pizza to be sure, but hey- I did the best with what I had. I cut up the little white mushrooms into slices, put them onto the tomato-y paper towel, and tried my best to stuff it into my mouth. That didn't really work, and I know that those of you who saw my video on ACE Juice will at this point be thinking "What the fuck Alex, why don't you know how to eat".

I just misjudged, and I was nervous. I was about to embark on a spiritual journey, I'm sure anyone else would do the same in my position. With a bit of difficulty, I eventually consumed the entire paper towel's worth of mushrooms.

I waited for about an hour for the effects to kick in, listening to music, browsing Twitter. The usual. And boy oh boy, did they kick in fast. It sounded exactly like someone was banging on my window. My curtain was shut so I couldn't verify this, and I didn't really feel like getting up to check. My first mushroom-induced hallucination. How exciting!


The banging didn't stop, and then it kinda started to sound like someone yelling at me. I was listening to music on my headphones so I couldn't really make out what they were saying. Besides, it goes back to the old saying from Timothy Leary; "Turn on, tune in, drop out". I was turned on by a stray NSFW Twitter post, I was tuned in to my music, and I dropped out of caring why someone was yelling at me.

Another maybe 15 minutes passed and the commotion finally stopped. I figured I was coming down, and went to the kitchen to make a sandwich to get the taste of tomato paper out of my mouth.

Suddenly, my door was kicked in. Someone broke into my house! Naturally, I assumed they were police officers and froze. I had just taken an illegal drug, hadn't I? Of course. My disregard for the law was catching up to me. I know they say live fast and die young, but man. I'm only 18. I would never have thought that I had lived as quickly as I did, and that I would die so young at the hands of the state. Surely I'd be given the death penalty for this. Surely.

Whoever burst down my door quickly found me making a sandwich. Breathless, he said "Alex! Stop what you're doing!"

I thought maybe he was here to warn me about the police on their way to shoot me dead for my transgressions, so I asked why.

"I KNOW what you're doing." He said. "I know that you're making a stupid fucking video-length joke about using the wrong kind of mushroom, and you're going to put this on your YouTube channel and seriously upset everyone. I'm here to just stop you, you fucking maniac."

I really had no idea what he was talking about. I stared blankly for a moment, then responded, "I don't know what you want from me man, and I don't know how you know all this information about me, but that's not what I'm doing."

Then, it suddenly clicked. Suddenly, I knew what was up.

This dude was another hallucination. I wasn't coming down at all!

"Hey! You're a hallucination, aren't you?" I asked.

"What? No, fuck off, you know what you're doing."

Straight up, and because my YouTube channel is a place for me to be honest, I'm gonna tell you that I just straight up started touching his face. I wanted to see how realistic the hallucination was, and man it was pretty realistic. I could feel his face skin, his teeth, his stubble- it was all there, and the whole time he was telling me to go away. Kind of strange how he didn't physically restrain me, but I guess hallucinations can't interact with the real world.

"This is a lost cause, I'm gonna go home and when I get home, I'm gonna unsubscribe." he said as he left, stepping over the splintered remains of my door.

Then I waited. And waited. And waited. And nothing else happened. I assumed that I was coming down for real this time and went to sleep.

Overall, it was a pretty interesting experience. I'd do it again. Didn't taste good though, the paper really ruined it.



Agaricus Bisporus seems to be a very powerful substance. The hallucinations are remarkably realistic, and non-fantastical in nature. This is of course in contrast to my experience with Psilocybe Cubensis mushrooms, which was actually a much more interesting experience come to think of it.

On My Next Game

Naturally, as YouTube's number one game-boy, I've been thinking a bit about what my next game is going to be.

I'm going to say up-front, it's probably not going to be 3D. Every so often people will ask me to try doing a 3D game, but I just don't think that Godot's 3D capabilities are really worth me going through all the effort to learn 3D programming and graphics and all that strange scary stuff.

Besides, I like 2D games. 3D games can be super cool, but it's just not what I'm after at the moment- maybe at some point in the future I'll learn how to do a 3D game, but not now.

But anyway, I've been thinking more about ideas or themes that I want my next game project to have. Primarily, I want to slow things down a bit and make a slightly less hectic game than the past few games I've made. Guns and explosions are super cool and super fun but I'm in the mood to shake things up, at least for the time being. Who knows if I'll go anywhere with this idea.

The idea is basically just to figure out how to make a game that's still fun and interesting, just without so many fast-paced aspects. I would want to create a more relaxing kind of game, but I have yet to figure out how exactly I can make that fun. I've got some ideas- for instance, the "farming simulator" archetype could be a good jumping off point, and maybe I could figure out how to introduce other elements of relaxation.

I had an idea for a system in which you would accrue points or have some incentive to just stare at the screen and do breathing exercises or something. It might come off as a bit silly, but it's a cute idea and I would like to find a nice way to make it into something good.

Also, although this isn't really related to anything I was just talking about, I'll probably keep with the monochromatic or semi-monochromatic art style, since that was really nice to work with and I'm not very good at creating other kinds of 2D art. I am able to do white silhouettes, and I guess that's basically all I need.

I think it's possible to mesh that with the relaxing vibe if I need to, although those two things don't necessarily go perfectly together. It might require a bit of careful consideration to ensure that I don't create some crazy Frankenstein's monster of a video game.

Anything I've said in this video can totally change at any moment. Hell, even as I type this script out I'm worried that I won't want to record it because I'll have changed my mind so much by then. Everything I've said here is completely tentative. Maybe you should make your own relaxing video game. If you do, send it to me and I'll post it on Twitter or something. Also subscribe to me and I'll smile in real life. Also pledge to my Patreon.

Thanks for watching and stay tuned for more YouTube videos because I am a slave to Google and the ceaseless turning of the wheels of time. Goodbye!

Sunday, 24 February 2019

Game Development Is Fucking Hard

The people who watch my channel are mostly game developers themselves, so I'm sure I don't have to tell you guys that actually making a game is generally really hard work. However, I will. For the entire duration of this video.

Because I did some actual research this time, I can tell you that three quarters of developers in 2016 report having to crunch, and only 10% reported getting any financial compensation for working overtime. This works out to about 68% of game developers having to work unpaid overtime in 2016.

That's a really damn high number! Especially when you contrast this to the general rate of unpaid overtime in the United Kingdom which is only around 20%, but in some places in Europe it goes down to 0.1%. I couldn't find good statistics about this in the United States, presumably because the USA is huge and weird and varied all over the place, so these kinds of sweeping statistics might not be so useful.

The point is, the game industry is terrible at the moment because game development is damn hard.

I'll give you an example of the kind of thing that makes gamedev so hard. Imagine you're starting a new game, a generic 2D platformer. Should be pretty easy, right?

So you create your player character. You implement normal "WASD to move" type controls.

Next, you add a floor for your player to stand on.

Unfortunately, your character just falls right through the floor. Every. Damn. Time.

Upon closer inspection you realize that the reason for this is because your player character is just setting its position with no regard for collision or anything like that, so you end up being able to move through walls. 

So you have to revamp the player's movement system in order to not just set the position, but to use a physics algorithm for movement that'll check for collisions along the way. Queue an hour of finding and fixing the bugs, and you're good to go.

However, your player character controls like garbage because you have made the movement completely linear and boring. This works for some games that have something else going for them, but you're going to need to juice up those controls a bit. So you have to effectively revamp the way that your character movement works.

Instead of just adding some static coordinates to the player's position, you want to create like three more variables to track how the player is moving, how they were just moving, how they're intending to move next, and anything else that you might need. Then you have to test it out.

It now controls like garbage on ice. Okay, new plan. More variables. More functions. More methods.

Does it feel good yet?

Well, it feels a bit like bouncy garbage, but still garbage. And it's still a bit on ice.

So you add more variables. You add MORE functions. You sacrifice a fucking goat to the Dark Lord Satan, and finally you create something that is good. So you go to sleep. You wake up the next day.

You play-test your character controller, and you projectile vomit as soon as you press play. Yesterday your judgement was all off- what were you thinking? Presumably, it was the 28 hours of work powered by caffeine, cocaine and IV energy drinks. So you start again, you delete a bunch of stuff, and you try again.

More successful this time? Fuck you, you don't know game development. That goat you sacrificed comes back as a demon, and it eats your keyboard, eats your hands, your eyes start bleeding and your mouth turns to ash. You start to fall. You hear the Dark Lord Satan sentence you to an eternity in hell for wasting his time.

You spend the rest of your days in the underworld for your transgressions against forces larger than you could have ever imagined. You moron. You damn fool. You could have avoided this. Satan takes your hand and leads you to your computer, and instructs you to re-write the algorithm.

You re-write the algorithm. The devil laughs, but to be fair he supplies you with more IV energy drinks and cocaine so he kinda earned the right.

You playtest your character controller, and it's okay. It actually isn't that bad. It's not gonna win any awards but there aren't any awards in hell so that's kind of a moot point. The devil play-tests too, and he gives it a nod of approval. "Pretty good", he says.

Suddenly, you're teleported back into your house, in front of your computer.

You've finally finished the player character's movement system! Hooray! Time to celebrate!

You take a day off to recover from the time you spent in Hell, and come back to your computer. You look at your to-do list.

Item number one: "Add a dash mechanic."

Everything bursts into flames.

Friday, 22 February 2019

So What's Next?

I just released WARP-TEK and if you haven't already, go purchase or wishlist it on the Steam store. I am absolutely at maximum capacity thinking about that game for so long, so don't expect much from me for the next few weeks with regard to updates and such.

However, despite that and despite the fact that I haven't uploaded a video in a while and my schedule has been REAL shakey lately, I'm still technically gaining subscribers. And I don't know why. I mean, sure, I've uploaded some nice videos about Godot lately so maybe I'm still just riding the wave of popularity I gained from that, but still- I feel like things should have slowed down by now.

But either way, I'm not one to argue with a good thing. So I guess keep that coming, you strange people.

On the bright side for the rest of you, you don't have to look at WARP-TEK anymore! I know that I've received a few complaints that people are getting sick of the background footage, so it's nice to be able to move on to... whatever this is. I'm not really sure that it's better, but it's something.

As for what's next, I kinda need to start thinking seriously about how I can make my lifestyle financially viable, and more specifically how I can avoid ending up hungry and homeless.

So I realize that I basically have to get a part-time job. Doing... something. I'll figure it out.

But anyway yeah, needless to say WARP-TEK didn't sell particularly well, hence why I'm not just living off that. It sold about on par with Mass O' Kyzt before I posted the AMA and got like all the sales ever, which isn't great because my actual marketing efforts were way greater this time than with Mass O' Kyzt, but I suppose now we're getting into a more post-mortemy thing and I'll save that for another video.

I can't promise that my schedule will return to normal soon, but I feel that at some point I'll get back into my normal routine once I've got some kind of job and I can understand properly that that will effect my day to day schedule.

Once I've got used to that, my schedule might even be more regular than normal since I'm no longer under such pressure to make things as quickly as possible to try to get a return on my efforts.

I think that's everything important that I've got to say in this video, thanks for watching and stay tuned for more videos at some point in time that may or may not be regular because who knows. Also, I've thought about it, and to the one person who criticized me for using stock photos with watermarks in my videos, go to hell. But you're probably right.

Monday, 21 January 2019

Sunday, 16 December 2018

How To Design Minigames

Sometimes when you're working on a cool little video game, you'll come to a point where you're thinking about adding a little minigame to spice up an otherwise boring mechanic.

In my experience and as far as I can tell, usually this happens to bridge a gap in the wider design of your game. For instance, let me give an example using my own game.

In WARP-TEK, the gameplay is basically one really long journey interspersed with boss encounters. This is cool and everything but there is a problem with replayability- if the player is made to replay the first 10% of the game like a thousand times, they're gonna get really bored and run into the same issue that a lot of games, specifically roguelikes, run into- repeating content is not fun, and eventually repeating the same content enough actually becomes a deterrent to be weighed against the promise of something cool happening later on.

So in light of that, I thought a bit about how I would fix this, and I decided that the player would have to be able to skip over areas of the game that they've already played through a gazillion times. Of course I can't give this one to them for free- that'd remove like all of the challenge. So I decided that the perfect thing to fill in this gap would be to add a nice little minigame.

So it took me like two days to actually design and implement this simple minigame- all I ended up doing was making it so that the player can skip to a maximum of 80% of where they left off. There's one of those bars where the fill moves up and down, and the player has to press any key when it's as high as possible. This is still pretty easy but it's simple, quick and feels pretty nice as a little downtime between playthroughs.

If anything, the biggest flaw with this minigame is that it is too easy- with a bit of practice, I'm sure you can reliably hit 80% of where you left off every single time.

For what it's worth at this point - and this is probably a little bit more programmery than you might care about - the fill doesn't move up and down in a perfect sin graph as you might think to implement it. It's actually sin cubed, with a little bias to make it move away from the top values a little bit more quickly than it does the bottom values.

Anyway, back to design. What other considerations were there when making this minigame? Well, it couldn't be too tedious. The whole point of minigames in this context is to break up gameplay and make things a little bit less tedious. I considered doing a continuous "endless runner" type thing initially, where you have to dodge progressively more numerous obstacles until you eventually lose and you're placed into the game at the point that you lost.

This wasn't a bad idea but it could easily become tedious in itself if the player plays it enough. There's really no promise of variety and it would by necessity judge the player based on how long they can survive playing the same thing for maybe 20 or 30 seconds or so. That doesn't sound like much time, but in aggregate it could mean making the player play shitty Flappy Bird for upwards of 5, 10, 20 minutes over the course of beating the game.

There used to be a minigame in WARP-TEK that was such that right before you kill a boss, the camera zoomed in on your ship and you had to run around and activate all 4 power cores to fire a huge laser beam which finishes the big enemy off. If you took too long to do this, the boss would regenerate a little bit of health and you'd have to go again.

It's not a bad idea and I'm still not sure I hate it - I've actually got a switch that just disables it, the code and assets are still in the game just waiting for me to change a boolean value - but it does take a bit of time and it's really just the same damn thing every time. It's not super interesting or varied and while I love minigames conceptually, you have to keep in mind that they have to be either fun in themselves, or so tiny that the player doesn't have a chance to get tired of them.

That's all I've got for this video I guess, I hope you gleaned something interesting from this video. Thanks for watching and stay tuned for more videos about things I'm still despite my best efforts not qualified to talk about. I saw someone do a reddit comment one time saying that all my videos are "weak points" and I beg for subscribers at the end, so I guess fuck that guy and please subscribe to me. Goodbye!

Wednesday, 5 December 2018

Ludum Dare 43 Post-Mortem

I'm kinda jumping the gun on calling this a post-mortem since at the time of uploading this video, Ludum Dare 43 hasn't even finished yet. But hey, I already finished my submission and based on my schedule of uploading a video every 3 days, this is the best time slot to make this.

So for those of you who don't know, the theme was "Sacrifices must be made". I used a word processor to jot down a few ideas, and soon enough I came up with the idea that the player has to protect a small population of people from a bunch of oncoming enemies, but they can also sacrifice a member of the population to get stronger.

And that's the premise of my submission, you kinda have to balance having citizens to protect - if they all get killed or sacrificed, then the game's over - with your own power. Also, the enemies get progressively stronger as the game goes on.

So how did development go? Well, I originally intended for the art to be a bit more interested and varied than it ended up being, I thought hey I can do medium quality art in a relatively short time, so why not? However, by the time I put pixel to... uh... computer screen, I ended up with some real minimalistic sprites.

This proved to not really be an issue since it looks perfectly respectable, and on top of that took me like an hour to create.

As for code, there was a bunch of algorithmic type programming which is my absolute favourite type of programming. For instance, moving the selection cursor between citizens to determine which one to sacrifice was real fun to program, though I did spend about an hour working through one annoying bug which in retrospect, was way more time than I should have.

Another nice one was determining how the citizens should wander around- I went through a few really complicated solutions until the really simple "generate a random point to walk towards, then once they reach that point just generate a new one" system popped into my head.

Overall I'm really pleased with this Ludum Dare submission I gotta say, it's probably my best one yet in so far as its design goes. It's probably got the most replay value, and miraculously the music turned out sounding pretty decent! For the first time since that one music track from Mushroom: The Ruckus... I can't remember what it's called, but it was pretty good.

I also feel like in this Ludum Dare, I paced it way better- previously, I'd have like almost the whole game finished on Saturday, then on Sunday I'd only have audio and a few tweaks left to do. This time, it was much closer to a 50/50 split- probably on account of how much work I had to put into this one as compared to my previous Ludum Dare games. All in all, I put just under 16 hours of work into this Ludum Dare game.

Thanks for watching and stay tuned for more videos about games that I make, some of which are Ludum Dare games and others which are like real proper big games.

Tuesday, 20 November 2018

How To Do Pixel Art With Godot

Some of my videos end up getting a bit technical but let me tell you this isn't one of them. Making pixel art look nice and neat and tidy in Godot is like one of the easiest things ever and I'm gonna have a hell of a job stretching this into three minutes, but somebody commented that they wanted to see a video on this so I guess I'm at the mercy of the people.

So to start with, I'd recommend determining the resolution that you want your game to run at. For most desktop games I'd recommend that this is some nice even fraction of 1920x1080, so that could be 920x540, or in WARP-TEK's case 480x270. All I've done to arrive at these numbers is divide 1920x1080 by 2 and 4 respectively, so that each pixel will take up more space on the screen.

So now that you've made the hardest decision that you're gonna make in this long and tiring process, all you have to do is go to Project Settings, Quality, enable "Use Pixel Snap" to make sure you don't get any weird artifacts when you've moving the sprites, then go back to "Display"->"Window", set "Resizeable" to true, set the Test Width and Test Height to 1920x1080(just to make the game the appropriate resolution when it's scaled up) and for good measure I usually enable "Fullscreen" here too.

Lastly, go down to "Stretch" in the same section and set mode to viewport, and set aspect to keep.

And that's it, you've now exactly recreated the same style of pixel art rendering that I use in WARP-TEK. The advantage of doing it this way is that all things like particle effects, Control nodes, etc will all be pixel-lookin and you don't have to do anything about it.

See? Super easy. I told you I wouldn't fill up three minutes with this. Hmm. So what's up with you guys?

..

Hm, interesting stuff. Yeah. I hope that all works out for you, you know, the stuff you just said. Yeah.

...

Well thanks for watching and stay tuned for really short videos that you too can recommend that I make so that it's your fault that the videos are too short and not mine. Goodbye!

Wednesday, 14 November 2018

Play-Testing WARP-TEK

Recently, I've sent my game WARP-TEK to a few friends for beta testing- so they can help me catch bugs, point out things which are annoying or whether the game is just "missing something".

I'm not really expecting to get unbiased feedback. In fact, I'm almost certain that they all had their expectations a bit unfairly tampered with before they even launched the game. However I do think that their feedback is super valuable- they know the core idea of the game better than random people, so I don't have to own up to the fact that I don't have any tutorial system at all, and I don't have to explain it to them otherwise.

I'm probably not gonna get feedback like "this whole system is broken, ill conceived and I spit upon you and your ancestors". If I get feedback like that at this stage, then fuck me it's a good thing I didn't show anyone this pile of garbage before I fix it. If not, then it's a kind of "go-ahead" to pass it on to the next wave of playtesters at some point who would be people a little more removed from me.

I should note at this point that if you're active in my Discord server, there's a much, much higher chance of you getting a beta key. That's mostly because if you never speak to me, then it's really quite unlikely that I'll even know you exist and I'm not gonna fire some beta keys into the ether quite yet.

But the point is that at the moment, I'm not expecting to get really detailed feedback. One active user in my Discord server - Miles - has given me an extraordinary wealth of things to think about, consider, and tweak. I'm super grateful for this but it's a spell of luck that he did. Fortunately, the overall response seems to be that the game is pretty cool(albeit flawed at this stage) which definitely surprised me for the game being so early on in its life cycle!

The important thing about selecting playtesters is to make sure that they have some kind of analytical and game design oriented mind so as to pick out things that are cool and fun and be able to present them. Even if they don't have the best solutions, if they have anything to say at all then it's your job as a designer to evaluate their feedback and consider whether there is a problem there and whether you can come up with a fix for it.

With less experienced game designers or with completely random people i.e the average consumer, they probably will give you a high amount of garbage advice. They might suggest new features that are incoherent with the rest of the game, they might feel frustrated by something but not realize what it is that is actually frustrating them.

I don't mean to frame it as them being stupid, but it does take a certain level of skill to provide good and useful feedback, and when you're interpreting this feedback you have to also consider the playtester's competence in analysis and design.

Lucky for me, out of the three people who playtested WARP-TEK for me, two of them were analytically-minded game developers. The third was my brother and he didn't give me shit for feedback so I'm going to pour syrup in his bed but the point is, I got some good, trustworthy feedback in the end.

Anyway this video sucks and I guess if you watched this far into it then I kind of feel bad for you but I already missed my last scheduled upload 3 days ago and I can't justify missing another one. YouTube is hard! I gotta think of a cool idea every 3 days? And I got a video game to develop? Yikes!

So yeah thanks for watching and stay tuned for more meandering garbage. Goodbye!

Sunday, 28 October 2018

Optimizing Caffeine Intake (+ Other Nootropics)

I'm sure that caffeine use is familiar to pretty much all of my viewers, being the programmers that most of you are- and of course a central tenet of programming is consuming caffeine.

However, if you're drinking caffeine daily over a long period of time, you're probably not using it as efficiently as you could be, as I found out the hard way.

So for some background, I went from drinking about 8 or 9 cups of coffee daily which is known as "fucking heart attack" quantities of caffeine intake- it'd probably work out to 600-700 milligrams of caffeine a day. I woke up every day with a tension headache and constantly had pain in my jaw from muscle tension, and developed some pretty unpleasant anxiety.

However, at some point I got really sick for a week so I couldn't drink caffeine anyway and this had the effect of showing me a level of illness (combined with caffeine withdrawals) that I'd sooner kill myself than try to experience again. But the point is that after this hard caffeine reset(well, it took a couple more weeks to get to actual normal levels) I had lost a lot of the tension and anxiety that caffeine was giving me.

So I decided fuck that I'm never getting caffeine dependence again if that's what the cold turkey withdrawals are like, and I worked out a way to drink coffee occasionally without experiencing dependence or tolerance.

You might be wondering how, and you could probably work it out with a few minutes to think about it because it's not complicated, it's literally just not drinking coffee regularly. I generally limit it to 2 times a week, distributed sporadically so as to not let my body get used to it. This has the effect of making me non caffeine dependent in day to day life, and when I do drink coffee it makes a hell of a difference to my productivity.

Quite often, the amount of work I get done doubles or even triples on days when I drink coffee because I have maximized my sensitivity to it. This also means that on days I don't drink any coffee at all, I can still do an average normal amount of work.

So that's basically my advice, get off caffeine either cold turkey(which I legitimately would not recommend if you drink as much as I used to), or taper off by recording your daily caffeine intake and slowly reducing it- for reference, there's a little under 100mg of caffeine in an average strong cup of coffee, and about 20-30mg in an average cup of black tea.

Once you're off caffeine, just use it periodically- 1 or 2 days a week seems to be a good spot for me, but it depends on how your own brain deals with caffeine. I develop dependence and tolerance remarkably quickly, but I've heard some people drink coffee 3 or even 4 days a week without developing any tolerance at all.

So what about this "other nootropics" bit I put into the title of this video? That's right, your boy's done his research into things that go a bit beyond caffeine.

Now I'm a bit shy so I'm not going to mention microdosing tiny amounts of LSD to enhance flow states and creativity.

However, as I said- I'm too shy to mention that bit, so I'll move onto my next favourite which is l-theanine. This one's a bit niche and I've never taken it in tablet form, but it's a chemical also found in black tea which reduces the jittery side effects of caffeine and increases single-track focus, so your brain's not as all over the place as it would be if you just shotgunned 5 shots of espresso. In my experience, the caffeine experience from black tea compared to coffee is very different. Black tea definitely affords much more focus and clear thought rather than the frantic feeling you can get on a lot of coffee. Plus, black tea naturally has much less caffeine than coffee so that probably plays a role. 

L-theanine is frequently taken on its own as well. A lot of people in nootropic communities consider l-theanine as an obvious frontrunner- it's really hard to build a tolerance, dependence or experience withdrawals with even high amounts of l-theanine daily. It has no real adverse effects compared to caffeine which can cause anxiety, tension, shakiness among other things.

Alright, this one isn't really a nootropic but it's a good idea. Take some damn multivitamins. Caffeine actually drains your brain's magnesium stores, meaning you're more prone to unpleasant muscle tension- which is already an unpleasant side effect of caffeine. Also, if you're not getting enough vitamin B or vitamin D, you might just feel kinda depressed or deflated and not even realize it until you start supplementing them and feeling noticeably better.

This is especially important if you're on a vegan diet, since it's quiet easy to miss out on essential B vitamins or vitamin D3- which is difficult to produce from plant sources. Everyone else feels the effects of animal products generally being supplemented with vitamin B and D before being sold to you, but unfortunately this practice is much rarer in vegan products. 

So that's about all my knowledge on this topic but I've skipped over some details. If you want to know anything else or better yet if you want to share something along these lines with me in the comments, please do! I should also note at this point that you shouldn't expect any nootropic drug to fix your productivity problems- you have to put some brain work and head thinkin into it to get anywhere with it. These should be used IN COMBINATION with other practices, like that pomodoro thing seems useful, project tracking and closing your damn social media channels while you work. Hell, even meditation can prove useful.

Thanks for watching and stay tuned for more videos wherein I, an unqualified 18 year old, gives you advice as to which mind-altering substances to use to help you achieve your goals. Goodbye!

Wednesday, 24 October 2018

10 Tips For Using The Godot Engine

Fuck me I really am doing a top ten list aren't I? Jesus Christ. Anyway, let's get to it, I guess let's start with number one.

1. Singletons. These are basically scripts that don't really attach themselves to any existing node, which means that they exist outside of the current scene- which makes them perfect for things like saving data, playing music uninterrupted between scenes or preloading a bunch of resources to be used later. I've got 14 singletons in WARP-TEK as we speak, so I can tell you that I really like using them.

2. PhysicsBodies. This is close enough to a tip, right? Let me just run through the three types of 2D PhysicsBody nodes and their usual use-case.

KinematicBody2D nodes are what I use for most things that need to move around, so enemies, the player, other colliding entities, etc. RigidBody2D nodes are good for physics-based movement, so if you wanted some boxes for a puzzle game that move and fall like real boxes would, then you'd want to use RigidBody2D. Or, you COULD use KinematicBody2D but you'd have to program all the physics stuff yourself.

Lastly, StaticBody2Ds are good for anything that should never move like walls or the floor. Easy enough but it's good to know the difference.

3. The ternary operator. Now most programming languages have this one, it's the question mark one in C++ and in Python it's just thing if condition else other_thing. In GDScript, it's the same as in Python(as most things tend to be) and it's super useful. I realize it's much nicer to use this ternary operator on one line rather than dedicating 4 lines to an if/else block.

4. Here's a more functional tip, and it's based off something I actually do in WARP-TEK. Use a Singleton script to preload all of your resources to speed up in-game performance. This way if you want to instance a node, you just refer to its entry in this monolithic resource script and instance it. It has in my experience with preloading over a hundred objects made the game start up maybe half a second slower, but it drastically reduces lag-spikes that stem from repeatedly having to load or preload resources, such as when you're spawning a big blast of 30 or 40 bullets.

5. Specifying neighbours in Control nodes. So have you ever run into the issue where you want a menu to be usable with the arrow keys or a D-pad but Godot just won't direct to the correct buttons in the proper order? Well, I haven't because I haven't really considered keyboard accessibility until really recently but there is a really neat solution to this problem.

Any control node will have the "Focus" category, and you can see there are a few properties like "Neighbour Left", "Neighbour Down", etc which basically determine what happens when this button is focused and a specific key is pressed. In case this explanation wasn't super clear I'd say just play around with it because it's a really simple concept and it's implemented really well.

6. NinePatchRects. This is also related to a Control node, but trust me- this is super useful, and it's actually a new thing that only just appeared in Godot 3. Basically, for Mass O' Kyzt I had to manually size and align all the edges and corners for all the menu panels and stuff. For WARP-TEK, I've specified a 3x3 grid of what each corner, edge and middle piece should look like, loaded it into a NinePatchRect and all you have to do is resize it and it'll automatically scale or tile the corresponding parts of the graphic to fit a size of your choosing.

It's super convenient and while it sometimes takes a moment or two to actually configure it so it scales how you want it to, it's definitely worth looking into.

7. Have you ever had that issue where you're cooking pasta for a while and you stir it but you're kind of impatient and you think "well, this is probably good enough" and you strain it and put it into a bowl and you take a bite and it's really crunchy in the middle and so you put it back into water but you have to heat up the water because you used cold water but by the time the pasta's boiling again the pasta has actually dissolved into the water and you're left with a kind of starchy gloop that you have to turn into a soup but you don't even really like soup so you just pour it out and then it blocks the drain because it's still really thick in places and then your sink overflows and instead of calling a plumber or even turning off the hot water tap you just sit under the table crying and feeling malaiseful about your terribly out-of-control life while you wait for the small puddle of water on the kitchen floor to reach you and force you to either clean it up or deal with soggy clothes but when it does actually reach you you just realize you don't have the energy or motivation to even get up off the floor for another hour and your clothes get completely saturated in warm starchy water and by the time you do get around to cleaning it up you've done permanent water damage to that stack of important envelopes that you've been meaning to pick up off the floor but never got around to?

...No? Alright then, moving on.

8. Autotiling! Of course this one had to be on the list. It's a little tricky to get your head around initially what with the bitmask stuff but it's super useful once you do get the hang of it. I won't try to explain it too much here but trust me- learn it. It'll take you an afternoon at the absolute longest, and potentially even faster if you watch my tutorial video on autotiling (I think I have one, I suppose I should check before publishing this but fuck you I guess)

9. Using an external code editor! I did do this for about a day with Sublime Text before realizing that Godot's built-in code editor is fine for my needs but if I had a strong preference(for instance, if I was a Vim or Emacs fanatic) then I would be in luck, because Godot makes it super easy to use a third party editor. Just go to Editor in the top left, Editor Settings, and under "Text Editor" click "External" and configure to your heart's content.

10. The new Audio Bus system. Okay, I don't think this really counts as a tip but it's just something I really like about the engine and you gotta agree it's a step above whatever the fuck 7 was about. Basically, I generally create two new buses in addition to the master bus, and I call them "music" and "sound". Fairly self-explanatory, but the idea is that you route all the music sound through the music bus and all the sound effects through the sound bus. If you wanted to you could have buses for ambient sounds, voice, etc.

The point is that this makes things easier for you when you're adjusting system volume. You can make a nice volume slider that directly adjusts the volume of the music bus, and another that corresponds to the sound bus. This stops you from having to save another variable like music_volume and refer to it any time you want to play some music.

Anyway, that's about all I've got. If you have any more interesting things about the engine that you think I and the world should know about, for real let me know in the comments- I'm still learning new things about the engine constantly!

Thanks for watching, and stay tuned for more top ten lists... maybe... probably not though because this was a pain and really long to write sooo.. uh.. goodbye.