I love top 10 lists, and I love Super Mario Sunshine, so I've been watching a lot of people's top 10 hardest Shine Sprite videos recently. While they were enjoyable, I found myself disagreeing with some of their choices. So, I decided to do my own! This is really just a top 5 list, though, because while I could find 5 other Shines that I found difficult to do, I didn't have as much to say about them as these 5. So, without further ado, here are the five Shine Sprites that I considered to be the hardest to get in my playthrough:
5. The Runaway Ferris Wheel
There's some difficult platforming to be done here, but you won't be seeing much of it.
I don't usually get angry at video games, but this level made me angry. Not because the platforming was too difficult -- it wasn't easy, but had I been unencumbered I'm sure I would have found it a welcome challenge. No, the problem is that the camera refuses to allow you to play this level. No matter what you do, no matter how high up the back of the Ferris wheel you get, the camera will be fighting you the entire time, trying to rotate around to the front of the structure. The problem with this is that you are then completely blocked from view. This can happen at any moment, and falling all the way back down to the beginning of the section just because the camera randomly swiveled away is completely infuriating. Regardless of how difficult or easy the actual level is ignoring the camera, the camera is part of gameplay and here is treating itself as a game mechanic.
I recently spent some time coming up with and then executing an overly convoluted plan for catching Raikou in Pokémon FireRed. It was a lot of fun, and I wanted to see what I could come up with next. However, I've already caught all three of the legendary birds, and to catch Entei and Suicune I can use the same method I used to catch Raikou. So what's left? Only the "final boss" (so to say) of the Kanto based games: Mewtwo.
A challenge it is! Mewtwo is one of the hardest Pokémon to catch in FireRed (depending on how you feel about the roaming legendaries), and since I don't want to use my Master Ball, I tried to figure out what I could do to make the encounter easier. To formalize things a bit, I came up with some rules reminiscent of what I did last time:
Don't use a Master Ball. No exceptions!
Avoid trading with a Hoenn game; that is, if possible, only use Pokémon and items obtainable in Pokémon FireRed and LeafGreen. This rule is breakable on the condition that there doesn't end up being a satisfying solution that doesn't require a Hoenn game. However, in the event that I had to break this rule, I also came up with another cute little twist to make the challenge more interesting, which I'll talk about at another time.
Avoid using a Smeargle (which is only obtainable in Pokémon Emerald anyway). The reason for this is that it's often not difficult to configure a Smeargle to have whatever moveset you want, and that can make the challenge less fun. It's not a hard and fast rule, but if there's a way I can get a Pokémon other than Smeargle to know the moves I need, I'd rather do that.
I ended up coming up with 4 different strategies, of which there were two standouts. Unfortunately, all of these strategies involved trading with a Hoenn game, and one of the standouts even involved a Smeargle. I was almost resigned to breaking the Hoenn rule, but I'm happy I didn't give up, because I eventually figured out a way to modify the Smeargle method such that it no longer required Smeargle or even Hoenn! This plan is possibly (probably) even more complicated than the method I used to catch Raikou, and I had a lot of fun with it. I present to you: The Imprison Method.
I'm currently working on completing my generation III Pokédex, which is fun but also rather challenging. One of the reasons for this is the existence of roaming legendaries. The game I'm currently playing is FireRed, and my starter Pokémon was Squirtle, so the roaming legendary I'm dealing with is Raikou, but the strategy I'll be describing works no differently in LeafGreen, and should work well catching Entei as well. Suicune, for reasons detailed later, is actually a lot easier to catch, and doesn't require such a convoluted plan. Well, nothing requires a convoluted plan like this, but it's a lot more fun this way.
I maintain that the only Pokémon I could justify using a Master Ball on would be Arceus, and since the Azure Flute was never distributed and it's impossible to legitimately access the Hall of Origin, it seems like there's going to be a lot of unused Master Balls lying around in my bags. No matter, though, because not using a Master Ball means I can come up with a more interesting strategy for catching the hard-to-catch Pokémon. Another limitation that I imposed on myself here was that I decided only to use Pokémon catchable (or obtainable through trading with an NPC) in FireRed (although all the Pokémon I use are also obtainable in LeafGreen). If you allow yourself to use Pokémon from Emerald or Colosseum/XD, you may be able to come up with a different strategy, but I chose not to, and not just because I do not currently have any of those games in my possession.
Recently, I came into possession of an original Macintosh 128K; you know, the January 1984 Macintosh that was previewed to the world by a confusing but extremely memorable SuperBowl ad involving a sledgehammer entering Bill Gates's face. The moment I laid my eyes on this beautifully old piece of hardware, there was but one thought in my mind: I have to write a retro platformer for this thing.
This statement doesn't require too much elaboration, but I will remind the world about my still-in-progress game "Aromatherapy", which was supposed to be an exploration platformer that twanged at one's retro heartstrings by presenting itself as the screen of a CRT monitor. An idea I was particularly proud of in the conception of Aromatherapy was that the monitor was supposed to start glitching and breaking more and more as you advanced in the game. A lot of the idea was based around how much nostalgia I have for a time period of computing I did not even live through. While I haven't worked on Aromatherapy in some months now (since March), I am interested in continuing work on it again when inspiration strikes me again. Until then, I've decided to occupy myself with a perhaps even more inane venture.
So, there's the goal: write a platformer for the Macintosh 128K. Whether or not this platformer runs on the Mac OS or is just 68k assembly inside a beautiful Macintosh box is yet to be decided. However, for this post, I have decided to focus on a slightly smaller goal: getting the Macintosh to boot. Therein lies the first problem of this post:
Problem 1: I do not have a Macintosh 128K system disk.
During my leave from school, I've been funneling my creativity and recuperative free time into making a autobiographical game. I've tweeted about it quite a bit in the last month. Progress has been slow, due to the illness that I'm recovering from, but the progress made so far has been both fun and illuminating. I'm using C++ for this project, of course not for the first time, but still, using C++ always results in you learning something strange about the language that you probably didn't want to know.
One of the things I've been implementing for my game engine has been an entity-component system. In short, such a system consists of two fundamental objects: entities, and components. Entities are perfectly generic objects that have no properties besides being able to contain components. Components are specialized objects that provide specific functionality to their parent entities. Such a system allows one to decouple a lot of the inner workings of a game engine as well as provide a simple way to mix and match functionality.
So, to start implementing this system, I created an Entity class and a Component class. I wanted Entity to be able to contain Components, but I didn't want to have to go through the trouble of writing my own linked list implementation, so I used one of the STL containers, list, which provides the exact functionality I am expecting. Well, almost the exact functionality, but we'll get to that later. Component was implemented as a class with several virtual methods that could be overridden by subclasses to provide their specialized funtionalities.
Working on rawr-ebooks recently has allowed me to tinker with the writhing mass of horror and love that is C++. You may not be able to tell from this that I am a massive fan of C++. The nitty gritty, say what you mean and EVERTHING you mean fifty times methodology of C++ is actually a great amount of fun for me, and what would be better than implementing a fun algorithm in a really fun, rigorious programming language?
One of the incredibly fun parts about C++ is that it's practically a well of undefined behavior. If you aren't doing things exactly right, there's really no telling what will happen. And how do we define "exactly right"? Well, we're not always completely sure about that. Here's an instance of that.
As you may know, there are two real ways to allocate memory for a struct in C++. One is to use malloc or calloc, pass it the sizeof your struct, and then cast the resulting pointer to a pointer of your struct. The other, fancier and C++-exclusive method is the use the new operator. While this is all fine and dandy, it turns out that these methods are not exactly equivalent. I'd like you to examine the following two blocks of code and tell me what they output, okay? Let's have some fun.
My old website, Four Island, may seem like a blog, but in fact it was more like a community. Its main purpose was to serve as a watering hole for my group of friends, especially after I moved to America and the rest stayed in Australia. Combined with the fact that we were a creative bunch of kids, it follows that Four Island ended up producing many a weird project, like a webcomic about linens or a newspaper chronicling the fake adventures of Four Island's inhabitants. Perhaps the most poignant of these projects (and probably the oldest too) was The Greatest Story.
It was almost five years ago that my friend Amelia came up with the idea to write a story together, as a group. Normally such an endeavor would be lost to the procrastination and disorganization of young adults, but we were different. We had a strong project leader. To quote her initial idea:
I wasn't sure whether to put this in Deck of Cards, Spam or here, but this is a collaborative effort and it's cool. I just thought this up.
So, want to write a story, but haven't got the time or drive? Why don't you work on a story with a small group? It can be insane, random, funny, sad or... anything!
My idea is that we form a small group, and we each contribute a character of our own making, using a bio sheet. Then, one person types up a chapter and posts it, another person makes another chapter after the first chapter and posts it and we keep on going until... THE END. The only rule is that you can't type two chapters in a row unless you has permission. Oh, and the story must make some sort of sense
In an article arrogantly entitled "If you see a UI walkthrough, they blew it," Max Rudberg argues that new-age apps such as Clear pander to the college-aged hipster "intellectual" who likes to have the snazziest apps. His contention is that these simplistic designs, which require a tutorial on how to use them, detract from the user experience rather than enhancing it. My opinion, however, is that Rudberg is confusing gimmickry with innovation.
Clear's UI, while unfamiliar, feels rather intuitive to me. For the unfamiliar, Clear is a to-do app with a very minimal interface (an example to-do list is pictured). To a new user, it is not obvious at all how to get around the app, because instead of buttons and switches, you use a bunch of gestures to achieve things, which are explained upon first launching the app. Now, not all of these gestures are entirely intuitive, for instance, swiping downward to create a to-do is a bit confusing, but this app is attempting to change the way people think about UIs.
I like to think of myself as a capable programmer, but as a designer I have a lot to learn. For instance, the making of this very site, while easy programmatically, took a very long time to complete because I couldn't figure out a pretty design for it. And so this follows with app development.
It was practically a year and a half ago that I started work on the app Cartographic, and let me tell you, I did not spend a majority of that time programming. In fact, not only did I get most of the work done in late 2011, I think I only made one or two commits in 2012 overall. What, then, is the problem? Am I simply lazy? No (at least, I hope not), the problem really lies in the fact that without a graphics designer, my project isn't going anywhere.
Cartographic is a good game (if I do say so myself), in that beta testers have responded well to it. It is playable and it is fun. However, the graphics are not only really quite awful, but also consist of sprites and backgrounds I borrowed from other games. Clearly this is not a shippable state of affairs. I wrote the entirety of Cartographic in a few months, but the fact that my app has to look good, coupled with the fact that I couldn't create pixel art if my life depended on it, is forcing this project to take a backseat to things that are more easily designable (like websites, which can be simple yet elegant, unlike iPhone games).
This is going to be kind of a personal post, and really, I'm not sure how else to contact all of my old friends together. I'm not even sure if everyone still checks Four Island. Regardless, I've been doing a lot of thinking and it's come to my attention that as Four Island decreased in usage from 2009 onward, my depression increased. When The Fourm stopped being frequented altogether in 2011, which kind of corresponded with some negative real life events, things got worse, and then by 2012 I had joined Tumblr and things continued to decline.
The thing is, I never realized this before but Four Island isn't a blog. It isn't a professional website. All of the work I've been stressing over for years in making Four Island professional and using Wordpress and all of this stuff is counterproductive to the point of Four Island. Four Island always was two things to me. First, it was a project. Rewriting Four Island completely to create Four Island 3 would be a joyful and fulfilling activity, especially if I insisted on implementing all of the insane ideas I had for it. The thing is, I always laughed at myself for thinking that those ideas were sensible, but I completely missed the fact that Four Island is not a professional website, it is a connection to my friends, and therefore things like FourChat make sense.
Second, it was a safe place. Lacking many real life friends, many teenagers turn to online communities, and it just happens to have turned out that I created one before being forced to leave my friends in Australia. I don't know exactly what's happened over the last few years, but I can assume that it's a standard case of distance-separated friends drifting apart. At this point, Drifty is the only one of my friends I even occasionally talk to anymore, and things are kind of tense between us because of some things I've done. It's the usual tragedy of growing up, except for me, it had other effects. Because Four Island ceased to be a community where I could hang out, I eventually turned to another community, Tumblr, to fulfill my need for involvement with other people. However, these people are unknowns, they are strangers, and they are mentally ill. Tumblr is not a safe place. Tumblr fostered the development of my depression and my anxiety. This is of course not to say that I wouldn't be depressed if I hadn't gone on Tumblr, but I think I can safely say that if I were still close with my Australian friends, and if we still hung out on Four Island, and I was still tweaking away at my code and adding useless stuff that no one cared about and people commented on my blog posts and we talked enough to actually have things to quote, I don't think I'd be where I am right now.
At this point, I don't really know what to do. All of my old friends have moved on to different communities and have made other friends, and I don't have any friends left that I'm close enough to form a community with. I feel like this post has an accusatory tone associated with it and I apologize for that: I don't blame anyone for my descent into depression and in fact I thank you all for helping me stay connected for so long, even though we eventually broke apart. I think the real truth is that I should shut down Four Island. It has no function anymore. I'll never delete the data, but Four Island has lived a rich, full life and whether or not I realized it at the time, it served its purpose. With regards to where I will go communitywise, I do not know. I don't know if I could create another community with people at Carnegie Mellon, especially because while I love my new friend, I think she's too cool for me. I'm afraid that I can't have that same connection that I had with Shaun when I first showed him my website and somehow, a community grew out of it. She's not as desperate for friendship as we six teenagers in Australia were.
I'll drift. I don't know where I'll end up in the end. But I thank you for making the golden age of Four Island the best time it possibly could have been. I wish you joy in your new communities. Goodbye.