Monday, December 19, 2016

Xmas letters 2016: Almost done!  I have 23 written, maybe only one or two more to go :)  Then we can move onto phase 2, packaging and getting all these babies ready to be shipped!

Saturday, December 17, 2016

Connecting with the Past

Originally posted on FB in response to a posting of (link):

Sorry!!!! This came out as a super long rant because I feel extremely strongly about certain things. I know this is totally unsolicited and I don't mean any of this as a reply to your post, but I just had to write my feelings about the past.

As someone who values availability and dependability but also as someone who NEEDS to live with a constant connection to the past, I have mixed feelings about these tips. I do think that it's important to realize that if you are not actively being cared about and cared for then no amount of "false availability" should illusion you to believe otherwise. We have many tools available to us which help us connect with the people with whom we have genuine relationships. However those same tools also sometimes promise that we can connect with those who will =not= provide us with their love, care, time, and connection. They cannot. I think it is important to make this distinction, and doing so will allow you to realize who and what really matters in your life, and refocus to avoid cognitive dissonance.

At the same time, the past is vital to my human experience (especially as an ISFJ and Si-dominant), and I think it is also important to understand how to live in connection with it. Just because something is not a part of your life anymore does not mean that it is not still important to you in the present. After all, the most precious possession I own is the boxes of letters that my friends have written to me over the years. Even things that hurt you or scarred you can still have important meaning and value, and it would be a disservice to yourself to let go of them. There are many memories and friendships that I had in the past that I could not carry forward to this moment in time. Thinking of these things often makes me sad, but to let go of them would be letting go of a part of myself. I really believe that not everything should or even can be brought to closure. There are some things that you should learn how to live with.

It's really funny that this set of tips mentions going through your phone contacts and purging the ones that you don't stay in connection with, because I have a different ritual that I do for myself. Every once in a while, I would go through my list of phone contacts and call the ones that I didn't stay in connection with, even though I wish I could. Because I still care about those people and want to hear their voice. Even if they are not the same people whom I was once friends with, connecting with them is, in a way, connecting with my past. Even if they do not answer, leaving them a message is still "talking to them", in a way. I have another habit where sometimes when I am feeling troubled and lost, I will read through the letters from my boxes (or old blog entries). Remembering the past helps to ground me and comfort me in times when I can't seem to find my way. I do the same thing with my voicemails as well. It is an incredible feeling to be able to hear the voice of a precious friend whom I can no longer reach, but who was always an important part of my life. Even when I cannot physically talk to or hear the people from my past, I still have my own "mental sanctuary" where I sometmies meet with them. To say nothing of the Christmas letters that I write every year.

I have a friend who I write to every year for Christmas and her birthday, and she has written to me too, every year, including this year. I no longer see or talk to this person, nor do I even chat with this person online or even know how they are doing right now. But the fact that she still keeps this tradition alive is extremely meaningful to me. I wish that more people could be like this.

I said in the beginning that it's important to understand what is important vs not important in your life. I think that extends to your past too. There are countless things about your past that are extremely worthless and not worth remembering at all. I don't save all of my receipts from stores because they don't bring any meaning to me whatsoever. However, there are other things that may be really special and meaningful to you. ***BUT they can only be important to you if you spend time connecting to them.*** This is why digital photos are so much harder to be meaningful than old photo prints. It is because digital photos get thrown into a huge archive which would rarely ever get looked at. But with physical prints, you are already forced to look over them once after they are developed. And it is much easier to flip through a 20-page photo book than a 2000-photo folder. They are much easier to treasure. This is why it's important to make sure that you decide what from your past is important and what is not. So that you can spend time cherishing the things that are important, and not let all of those other things get in the way.

If nothing else, perhaps a short story will speak my emotions for me, about rememberences for the past:

Also...please never burn letters. -_-;

Thursday, December 15, 2016

Whoa.  Just...whoa.

I may have posted this before, but I was looking for this specific passage because it's a really good one and found it again.  It's a really apt way of describing how I approach life.

"It seems so obvious that it's kind of silly I even have to say it, but things just always seem to go more smoothly when you know exactly what you're doing. There's really nothing quite like having your own private map for how to do things--the more I study and work on the areas I'm interested in, the more I develop this ability to connect my experiences to everything else I've done, and the process just builds and builds. I don't even mean for it to happen that way--I guess I just know what kinds of things I like, and I know what makes me comfortable and what doesn't, and I know that the more I plan my life around setting myself up to work in areas I know I'm confident in, the more I'm going to succeed and the more in-depth information I'm going to have about the skills I specialize most in. I think one of my greatest strengths is that I know what I'm good at, and, perhaps even more importantly, I know what I'm not good at, and I have the good sense to know when to avoid the latter. I don't understand why people insist on haphazardly jumping into things they don't have any idea how to handle properly. What's the point? If you don't know what you're doing, aren't you just bound to fail?"


This whole writeup is actually extremely informative.  It even outlines the growth of the ISFJ type, which starts with relying on dominant Si, then progresses through auxiliary Fe:

"If Fe goes undeveloped and leaves SiTi to handle the majority of cognition, the ISFJ is prone to feelings of terror that his trusted support network will fall out from under him at any given moment. Trusting others to handle important tasks becomes an uneasy endeavor at best. Since the feeling of trust and security upon which Si depends so heavily is never connected in any meaningful way to the bonds and relationships defined by interaction with others, the SiTi loop ISFJ feels that no one but himself can ever be depended upon to bring him the sort of consistently reliable experience his dominant function necessitates that he have access to. Without a way to describe or objectively designate his feelings for others or theirs for him, no sense of faith in upholding mutual responsibilities can form--he must do everything for himself, or risk total ruination through the failure of other less reliable individuals to uphold their agreements and obligations. If you want something done right, you have to do it yourself--or risk facing the unknown, totally unprepared--which, of course, represents Si's worst fear of all."

For me I believe this is what I often referred to as the "rut" that I suffered through high school, and, to a large extent, college as well.  This also relates to me trying to use an underdeveloped sense of Fe, where I =thought= I was using Fe and empathizing with others, but in reality I was only doing it through my own rigid Si-based internal map.  So I was thinking a lot about others, but only under =my own= terms and views.  I became very frustrated at the shallowness of my connections, to the point of martyrdom.

Then we come to Teriary Ti:

"As ISFJs find themselves so singularly focused on developing their internal maps of experiential impressions and defining their directions in life based on the kinds of experiences these maps point them toward, at some point in life it follows that they should begin to ask the question: What if the map is wrong?

Dealing with this possibility is, to Si, unfamiliar (and therefore frightening) enough that most ISFJs defer almost exclusively to Fe in determining the answer: If my impression of how something is has somehow misled me or given me wrong information, surely I can count on the people to whom I hold cultural and familial bonds to remind me that I've lost touch with what our community finds most important. Surely, by listening to the ethical consensus of those to whom I feel closest, I can discover and rectify the problem when my own desires conflict with the institutional customs and values by which my relationships to others are given objective meaning and definition. Unfortunately, however, the savvy ISFJ will invariably notice situations in which neither Si nor Fe seems to offer any reasonable solution. Despite Si's inherent preference for that which has come to define its comfort zone ("If it ain't broke, don't fix it!"), at some point the ISFJ will be forced to evaluate situations in which her community's collectivized ethical norms will strike some part of her being as somehow fundamentally flawed, even if these norms are consistent with the kind of experience she has built into Si's vast internal database as the familiar and consistent standard she has come to trust."

I can't talk about all of them, but these situations have definitely come up in life.

And of course, inferior Ni:

"Last but not least, the Achilles' Heel: many of the typical complaints others have about SJs (and especially ISJs) can be traced to manifestations of inferior Ne. On a surface level, Ne opposes everything Si holds dear and considers vital to maintaining a healthy outlook: while Si would encourage us to find exactly what we're looking for on our internal maps before setting out to find it, Ne takes a somewhat different approach: that the most interesting things in life are usually surprises.

It should be relatively obvious by now that Si doesn't like surprises. It wants complete information and it wants time to sort through every piece of the information given and compare it to the sense of static, internal consistencies by which everything in its worldview is granted stable meaning and significance. Until you can relate a given piece of information to something you already know, until you can show where it would fall on the map you already have, Si not only has no use for it, but is actually threatened by its imposing presence among the already-sorted information by which its identity and worldview are defined. Inferior Ne seems to throw a wrench into that identity itself: By encouraging the ISFJ to ignore what he knows and instead let loose and actually enjoy a constant influx of new and unfamiliar ideas from as many different unconnected sources as possible, Ne seems to attack everything the Si mindset holds as important or meaningful. Rather than carefully compare each nugget of data to every other piece of data we already hold, each new piece of information seems to suggest even more connections to even further-reaching outwardly defined patterns that continue to change the meaning and threaten stable interpretation the more we indulge them."

"Exploration in the name of expanding one's comfort zone, so that one never has to leave it--whether or not the self-actualized ISFJ realizes this is what he's doing, it makes his experiences that much more complete, and his life that much more well-rounded and fulfilling."

Ah heck, just read the whole thing.  It really describes my type to a tee.

Friday, December 9, 2016

Ludum Dare starts in 17 minutes omgggggg By this time on Sunday I will have completed another game from scratch omggggg ahhhhhhhh

Rhythm Quest Update 10 - Back to the Drawing Board

This'll be the last update on Rhythm Quest for a short while!

As a bonus, instead of an animated gif, I actually have a full 60fps video (with music!) to show off this time.  Here it is:

A bunch of things have been tweaked and added!  First of all, we have actual music now, hooray!  I started trying to make a real song with the two-track idea, which was pretty interesting.  Also, the scroll rate is higher now, so things are moving faster.

I've also added support for compound notes, like attack-attack and jump-attack!  I decided that the attack-attack notes weren't actually serving much purpose (more on that later), but you can see the jump->attack notes here.  Also!  There are yellow "uppercut" notes where you need to press both buttons simultaneously.  (I don't have a separate animation for that yet)

I've also done some small tweaks to the UI as well as the audio sync.  As expected, it might be a pain getting the audio to sync correctly across multiple platforms, but on the plus side, I at least have it working very nicely on either PC or iOS (just not both at the same time yet).  That's right -- I've run my demo on my phone and it works great!  It actually looks extremely smooth, as it runs in 60fps but also probably makes good use of the higher resolution to smooth out the screen scrolling by not having the "retro snap" behavior described in my earlier update.  So that's great!  Latency is very responsive as well, so yay!

I've reached the end of my 1.5-week sprint on Rhythm Quest and I'm pretty proud of what I've made so far!  However, with my current prototype I've noticed some design issues that I need to rethink.  You can see my notes below on the issues, as well as me rethinking what made Ripple Runner and Melody Muncher intriguing and what I should be striving for with Rhythm Quest.

Essentially I'm not sold on the multiple-track idea after seeing it in action and actually playing around with it.  It seems like more of a distraction than anything, and while it IS cool to think that you can hear different variations on the music during a second playthrough, that doesn't really make your first playthrough (arguably more important) any better.  In practice it's probably most straightforward as a player to just stay on one track the whole time and ignore the junction points.  What's the motivation for switching??  I could of course add some actual incentives, or do other things like hide the non-playing track altogether, but I think the problem is a little more fundamental than that, and I don't feel like I NEED the multiple track idea to make a fun music game that builds upon my previous successes and plays to my strengths.  Initially I reasoned that it would feel really cool to be switching between the two different tracks mid-song but I find that that's not the case.  I also reasoned that it adds extra replay value, but with the effort that went into making a double-track song I could have just made two normal songs instead!  That's sort of sad as this was one of the main ideas underpinning the game initially, but I think it's important to realize that the game will probably be better if it doesn't turn out to be the exact game I set out to make.

The other issue is that I'm not sold on the two-button actions and the actual gameplay being interesting enough.  I know that runs a little contrary to what I said before because Melody Muncher was PLENTY complex and that only used two buttons, but I think there's an important difference in that Melody Muncher actually involved some pattern-recognition and "mental processing" in terms of translating the obstacles to button-presses, and that mental translation step was actually extremely nontrivial.  Ripple Runner has the same idea, though to a lesser extent.  On the flipside, the current design for Rhythm Quest has almost none of that in that the colored diamonds tell you quite plainly what you need to press and when, which makes it boil down to a "normal" rhythm game with only 2 buttons, which is hardly interesting at all!

So those are two things I'm aiming to fix with a redesign.  I do think that the "running to the right and clearing obstacles" idea works well and want to keep that, and I'm actually quite happy with the graphical style so far (though I've received a complaint that the character resembles Kirby too much).  Attacking the enemies to the music cues, along with the corresponding sound and visual effects, is actually extremely satisfying already.  But I'll probably ditch the multiple-tracks idea, and also try to come up with something that involves more vertical motion, probably involving jumping a la Ripple Runner or Bit.Trip Runner.  I think that two (or possibly three) button controls works well on a touchscreen, but I think it would be better if I didn't spell out the button presses plainly and added some level of challenge in parsing the music.  I could also take a page from Rhythm Doctor and Bit.Trip Beat in terms of making obstacles that travel toward you at different times.  I do also think that focusing more on the obstacles themselves rather than abstract "notes" will differentiate the game a little more as well.

So there's a bunch of brainstorming to do in terms of how I'll lay out the levels, what kind of obstacles to feature, what kind of gimmicks to have, how to introduce vertical movement, etc.  In the end it might end up as some sort of ripple runner + melody muncher mishmash.  There's a lot of different possibilities!

But for the time being, I'll be setting that all aside, as tonight is the start of Ludum Dare and I'll be cranking out a completely separate game in 48 hours!  After that I'll have a brief day of rest and then it's off to my new job!  That week will also be my crap-crap-crap-cram-cram-cram week for xmas letters, so I anticipate lots of letter-writing being done on the train ride to work.  We'll see if I can come up with some good ideas for Rhythm Quest in the meantime.

Also!  I'm finally going to go through with dying my hair! (not all of it, mainly the ends)  I've always been conflicted but think it's time to finally try it out.  I've always loved reddish colors on hair but think I might go with something blue to match my color styles better.  I don't know, it's really hard to choose, to be honest.

Wednesday, December 7, 2016

Also!  Ludum Dare is coming up in just TWO DAYS holycrap.  I'm not sure how this one will go, but for now I'm hoping to just relax and just let it happen, not stress out about it.  I haven't done a solo entry in a while, and I've also never done a solo entry using Unity, so it should be pretty exciting!  It'll definitely be fast-paced given that I'll only have 48 hours...I'll need to be sure stock up on groceries beforehand!

Not sure if I'll be making it to Jammix on Friday...leaning towards no because of LD, but we'll see.

SPNTR/Leigh Nash, lost hairties

A lot of people may not know this about me but in addition to listening to a bucket load of electronic music I'm also a big fan of Sixpence None the Richer and Leigh Nash.  I think I rediscover every couple of months how good this music is for my soul (which you'll know if you've been following closely, haha).  I think it's been etched into my past, especially since I spent so much time listening to some of these songs, back when I was still using my ipod mini (good times!), especially during times like french AP "class" which was not really "class" so much as me just doing work (or taking naps) in a room by myself (true story).

It's hard to pick out a favorite to share with you all, so maybe I'll just pick a few over the next few posts.  Leigh and SPNTR have done a lot of Christmas music as well, which I always start listening to around this time of year -- there's some really good ones, including "Christmas Island" which I've heard at the mall sometimes!

Here's one that I have a very particular memory of:

I don't know if I was initially a big fan of this song, actually, but I distinctly remember a sleepless night that I spent on the east coast at my best friend's place when I was feeling quite melancholy.  I was actually just lying down on the floor listening to Leigh's songs on my phone, and this one came on which I hadn't heard in a while.  It's difficult to describe the feeling that the song brings, but perhaps you can understand if you listen to it yourself.

I lost my pink hello kitty bow hair tie last night, meaning I really only have one more of those left (the really old Cinnamoroll one).  These are really important and useful to me and I could do various things to try and cope, including kicking myself, trying to order more (can't find them anywhere), or even hoping that the next time I go to Puroland they will still have similar things available.  But in the end I think the only thing to be done is to let it go and accept that the time came.  I'm reminded very strongly of the parable of the "glass already being broken", which I heard a version of from my best friend a month or so ago.

That being said, nice bow hair ties are now #1 on my wishlist, haha.

I did a little bit more work on Rhythm Quest yesterday adding double-attack notes, but after I finished, I actually questioned whether that's something that I actually need in the game -- I'm not sure that it is.  I do think (?) that I need notes where you need to hit both buttons at once though, so I might try and give that a shot this time.  That's a goal for today, as well as finishing the livestream WIP that's almost done, doing at least one more Christmas letter, and dealing with some paperwork/forms.  I'll be going up to Mission City Swing tonight, definitely looking forward to that.

Watched another episode of the second season of Hibike! last night and omg *flail*.  I have no words for how strongly I appreciate it.

Also did some crying last night, about the past (what else?).  A good sort of cry though, not a bad one.  It is extremely vital to me to stay connected to the past...can't move forward unless I know that I'm still holding onto what's behind me, or at the very least know what I am walking away from.

I don't really do new year's resolutions very often, but I hope that in the coming year I can spend more time on other people and spend more time together with others.  I think that will be a big challenge given that everyone is just so busy with their own lives and priorities, but I'd like to at least try.  I really value availability and dependability.

Tuesday, December 6, 2016

Rhythm Quest Update 9 - Redesign!

Didn't do any work on Rhythm Quest yesterday, so today I thought that I would go ahead and implement the shield notes for the third button and doing some work on sound effects, maybe even other types of notes.  Actually, I ended up doing a completely different set of work than I set out to do!

The most obvious change that you'll notice right off the bat is that there are only two tracks here instead of three, and only two buttons instead of three.  This is a pretty major change to the design, but one that I'm almost certain is right.

First off, there are two main reasons that the shield button was even there in the first place:
1) Using three buttons allows for more complicated gameplay and patterns.  Ripple Runner used three buttons to good effect (jump, ripple, flip).  Shield could potentially function differently from the other two buttons, just like Ripple Runner's flip, where you need to hold it down instead of tapping it (though my game as it stands is not set up for that).
2) Two different tracks didn't seem like it was giving the player enough choice.  I really wanted there to be a lot of replay value for playing a song through multiple times, and the whole idea was to have the player be able to sort of choose their own musical path.  Having a binary choice didn't seem like it gave the player enough options.

At the same time, I do think simplicity is important, especially I after watched this amazing talk from Unite earlier in the day (here's another interesting one).  I was already starting to try and draw up some sort of sprite for the shield notes, but there were a huge number of problems that were actually being created by the presence of the shield button and third track.  Let's list them out:

- I needed to come up with some sort of obstacle that made sense to require a shield for, but was also obvious that you couldn't use your sword for.  The best I came up with was some sort of spiky enemy, but it wasn't 100% intuitive why you couldn't just attack these enemies.  Projectiles would be a nice one, but unfortunately doesn't work because the obstacles need to be staying stationary (the player is the one that's moving)
- Not only that, but the visual range of the sword is bigger than that of the shield, so making both of the animations make sense given a certain distance from the obstacle is tricky.
- I'd probably make the player tap shield in time with the notes, but it doesn't really make logical sense why you can't just hold your shield up the whole time while running.  As mentioned above I could make the shield button function differently so that you =are= allowed to just hold it, but how would I convey that to the player intuitively?
- Having three tracks on the screen seems a little cluttered and there's kind of a lot going on on hte screen at once.
- Composing songs that are both cohesive yet have =3= different variations that all make sense when transitioning back and forth seemed like an incredibly daunting challenge the more that I thought about it.  It's also a lot of work, even if I can do it.
- I was already planning on having more complex obstacles, such as an enemy that requires a double attack (a la Melody Muncher), or spikes that have a flying bat over them so that you have to jump and then attack (a la Ripple Runner), plus notes that you have to hold down.  If I add in a third button to the mix, it starts to become too much to remember at once.  At best, you probably just give up trying to look at the visuals of the game and just focus on the colored diamonds, which becomes boring, and at worst you just get confused and frustrated.
- Visual (*and* musical) theming for the third area was always a little weak.  It was easy to think of ideas for two tracks (e.g. earth and sky, fire and ice, sun and moon, drums vs melody, normal vs halftime), but the third never really fit in.

So I thought to myself again and decided to critically evaluate whether the third button + track was really necessary, as it would be nice if I could get rid of it.  I decided that two buttons really is enough to have complex note charts -- Melody Muncher already proved that, after all.  And two different tracks also might be enough variation for the player.  It does limit you to binary choices, but at the same time there is something very clean and clear about having polarizing opposites that you choose from (e.g. Pokemon Red & Blue, Sun & Moon, Orcs vs Humans, any other faction vs faction game).  Not only that, but it allows me to create level designs and backgrounds that play off of these dichotomies like sun and moon, water vs fire, night vs day, etc.  It fixes all of the issues above and in the end leaves me with a stronger, more intuitive game that still has its core ideas more than intact.

So I'm super glad I came to that realization!  Just looking at the new layout already convinces me that I have a real game on my hands now (there's so much more space!).

So I spent some time refactoring away the third button (it wasn't that hard at all, to be honest), as well as rejiggering the backgrounds and layout so that there are only two tracks.

At some point when I was redoing the pivot for my player spritesheet I came to the realization that my center-pivoted sprites were all half a "unit" off.  As in, the "base" resolution of my game is 500x300 right now, but it's being upscaled 2x to 1000x600.  But the player sprite, as well as some others that are center-pivoted, were offset by one pixel in the 1000x600 rendering, so they didn't actually align with the original 500x300 grid.  I figured out that while Unity's sprite shader has a "pixel snap" feature and it works perfectly fine, it of course only snaps to rendered pixels at the 1000x600 granularity.  My solution in the end was just to put a 0.5 unit offset to all of my sprites that have a center pivot.  I could have used some sort of script that would forcibly clamp the rendering to be aligned with the 500x300 grid...but not only was that becoming a headache to do, but I also wasn't even sure I =wanted= to do that.  Particularly for scrolling and such, maybe it's better to use the finer-grained "half-resolution" pixels anyways.  So that's what I'm doing.

Along the way I discovered a Pixel Perfect Camera script that was released fairly recently in July for free.  With a bit of trepidation (you never know how robust these things are), I tried it out, and while the "Retro Snap" feature was causing some artifacts in my initial testing, it seems that the actual Pixel Perfect Camera script itself does pretty much exactly what I wanted in terms of scaling the camera view in integer multiples up to a certain size automatically.  (Now, it doesn't let you adjust those settings manually, but that shouldn't be a difficult extension to make, if I do even want that.  Again, maybe simplicity is best here)

So I ended up fixing my single-pixel-off issue, and along the way also got camera scaling, woohoo!  I refactored the camera controller so that it positions the player 20% of the way from the left of the screen, which should work fine for pretty much any reasonable resolution.  It's pretty cool to resize the Unity window and see the game scale up and down correctly in integer multiples.  Yay!

I also did some nice work on sound effects for jumping (in general), jumping successfully over spikes, slashing, and hitting an enemy, so those are all in.  Plus, you'll notice that the slashing attack looks WAY more polished now.  I've added a bit of minor screen shake when you hit an enemy, plus a new animated X pixel slash effect that I drew myself and put together real quick.  I'm attempting to use the ol trick where you draw a dark silhouette of the effect during the first frame before the actual animation, to increase the amount of contrast.

You'll also notice that I've added horizontal movement to the sword slash, which took some tweaking to get right but I think really makes it pop and feel satisfying.  Also, I reduced the size of the debug text, which was gigantic before.  Lastly, I tweaked Unity's audio latency settings a bit for better responsiveness.  It seems like it might be difficult to get super duper low latency without running into buffer problems, but so far it seems to be "reasonable".  We'll see what happens when we get it onto some other platforms as well. =X

The game is looking, feeling, and sounding a LOT better after these last bunch of hours that I sank into it.  Feeling pretty happy about it :)  Next up I might want to try implementing the other note types, as that should actually be relatively straightforward.  Then I'll try making an actual song and see what the gameplay really feels like!

Sunday, December 4, 2016

Rhythm Quest Update 8 - Attack Animation

These animations take forever.....

Also just holding one of the run frames for use as a jump animation for now.  Also I finally bound the buttons to keyboard keys so that I can play with my keyboard instead of my mouse now!  Also added a few more particles to enemy deaths.

The sword slash is working, though it will definitely need some tweaking in the future if I want it to really feel right.  One thing that's important in these sorts of games is to really minimize the "wind-up" animation time before the actual action happens, as that can lead to a weird perception of "lagginess" if it's too long (made that mistake in the original version of Melody Muncher).  I'm using 2 frames of windup right now, which I could potentially cut down to just one if that's too much, but we'll see.

It still doesn't really feel fun, but I'm guessing that's probably because the music is just two bars repeated over and over again and the notes don't match it at all.  On the plus side, it's *looking* better and better.

I might actually be ready to try making a real song at this point, to see how it all fits together.  Other important things I need to do are to do the shield notes, as well as add repeated notes and hold notes.  But maybe I can just go ahead and make a song even without any of those?  I can always re-chart it later...

Also missing are sound effects, which are pretty important as well.  Maybe those will go in before I start working on music.  Reminder to self that I should also experiment with a minimal screen shake effect upon hitting an enemy (a la Melody Muncher).

Rhythm Quest Update 7 - Character Animation

There are still a number of things that need to happen before this can feel like an actual "game".  In the game dev process there is always this point in a game's life where it finally becomes FUN and everything comes together -- my focus now is to try and work on the things that need to happen in order to get to that point.  One of them is that I need to actually have character animations for attacking, jumping, and shielding (I decided that "shield" will indeed be the third action, since I couldn't think of anything better).

Out of all the work that needs to be done for putting together a game, art is by far the one that I struggle with the most.  I definitely took a number of hours trying to work out what the (first) character will look like and come up with something that I could actually animate successfully.  I tried a few humanoid figures, none of which worked at all, spent a long time wondering how the heck I came up with the Ripple Runner sprite (which works just fine), considered just re-using the Ripple Runner character and coloring it differently, and then finally managed to get something working with a Kirby-like design:

It certainly took way longer than I would have liked, but I'm pretty happy with how it's working now.

Friday, December 2, 2016

Rhythm Quest Update 6 - Jump Notes, Switch Notes, Particles

It's starting to actually look like something!

I've moved the diamond markers to be in the middle of the "floor" of each section which seems like it works out a little more nicely.  I also got rid of the silly vertical line and now have an empty diamond outline.  Unfortunately it moves up with the player when you jump (and it's not supposed to), but that'll be an easy fix.

I've implemented the switch notes, drawn in the jump notes, and even added some basic particle effects for when you hit each note!  It's starting to actually look like a game now!

Rhythm Quest Update 5 - Backgrounds

Decided to take a detour from coding and spend a little bit of time trying to figure out colors for the level backgrounds.  These are just rough sketches for now and everything will have to be redone, but I'd like to at least get something in place so that it feels "real".

A short note on screen scaling and pixel art -- unfortunately trying to get pixel art to display nicely on varying device resolutions is a bit of a nightmare.  Fortunately my game is flexible and I think it will work out fine if I just offer up a lot of buffer space on the top and bottom of the screen, since it's not important that I have a specific resolution or viewing rectangle.  The "native" pixel resolution is 500x300 but in addition to enlarging the viewport, I'll also allow for custom screen scaling options.  So if you're playing with a resolution of 1000x600, the automatic screen scaling will scale everything up by 2, but you might also have the option of just leaving everything at 1x.  There's probably no reason you'd want to, since it would look terrible, but that's the plan, anyways.  None of that is implemented right now but the only thing it really affects is that I'll have to make sure I create my backgrounds with the capability for extra room on the top and bottom.

Attempt #1.  Trying to use around 4 colors per section.  I added the third touch button and moved the buttons slightly lower on the screen, and also made a background for the UI.  I was pretty sure from the beginning that I wanted the bottom track to be some sort of cave / dungeon theme, and the top should probably be some sky area, but I didn't know where that left the middle section.  Looking at this, the colors just look kind of ugly and not very consistent, especially the blue-purple shade of sky in the middle.

That's already looking at lot better.  I simplified the palettes and just used different shades of a single color for each track.  As an added bonus, each section now has its own distinct color identity which will help me color-code the buttons to the tracks for when you switch.

Simple edit to my Backdrop class lets me do parallax scrolling.  I also fixed some calculations with the scrolling, so now the ground is actually scrolling at the right rate and it doesn't look like it's sliding underneath everything, yay!  Ideally the final product will have multiple layers of parallax and maybe some additional elements in the foreground besides the ground as well.

Seeing the game this way let's me actually try to reason about whether it even makes sense to display all three tracks at once, which is something I'm not sure is entirely necessary.  I'm actually beginning to wonder if I should instead show only one track at a time, but whenever a junction approaches, I should display it as a three-way branch, and then you actually take a different "path" through the level.  That could definitely offer a better feeling.  Unfortunately, it's also a lot more pain to implement.  The problem with the "branching" ramps is that I want the capability to have notes almost right after the branch point happens, so you actually need to be able to see all of the three possibilities that are coming up so you can prepare for the notes on the track that you select.  That's initially what led to this layout.

I think this layout is good if switching is very frequent, but bad if you're on the same track for a while and only switch occasionally.  Hmm...I'll have to reconsider the design again.  I could even have the other tracks swoop up and down, for example if you go to the middle track, then the top track actually moves up almost out of the view, and the bottom track moves down almost out of the view.  Then they reappear again only when you are about to hit a junction.

Rhythm Quest Update 4 - Notes!

We have notes!

We're actually starting to implement core functionality now, which is good!  I have a NoteManager which is keeping track of notes across my three different tracks.  The notes are loaded in via Levels which are now being loaded via text strings like ".... A... A.A." for easy editing.  The level loading could maybe use some additional work eventually, like loading from json/text files or something...ideally I'd be able to change the levels on the fly and reload without restarting playback -- that'd be the ultimate iteration tool!  Should be doable, but I have other things to focus on for now.

I can now detect whether notes are within the "hit" window, as well as when they're too far past and become a "miss" -- although for the latter case I don't have them actually doing anything yet.  I also need to handle "inactive" notes that are not on your current track correctly...

But importantly, you can now press the red "attack" button and you'll hit a note if it's there!  Note is an extendable abstract class (currently I'm just using "BasicNote"), which is good because I'm later going to have 2-note combos as well as held notes.

The blue button will eventually be "jump", but right now I have it triggering a track change to the bottom track to test that.  In the real game you won't be able to trigger track switches at any time -- you can only do so at certain junction points / transition downbeats that are marked in the song with some sort of fancy flashing thingy.

I also added a debug display to the upper-right which I can use to display whatever I need to.  Hooray!

Another very important improvement I did has to deal with the scrolling/timing calculations.  I wish I could say that getting the scrolling to work correctly is as simple as just setting the character's X position to the current time of the audio track.  You CAN do that, and I was doing that before, but the audio sample position isn't updated at the same cadence as Unity's regular frame update loop, so you get stuttering if you do that.

So I want to "sync up" the timing to the beginning of the song using audio sample timing information, but then for actually updating the timing per-frame I need to use the regular Time frame timer, not the audio sample information (with some sort of sanity checking to make sure that it doesn't drift too far).  I hacked together something quick to "sort of" make it do that, but it's not robust by any means and will probably have to be revisited.

The white line in front of the character represents the point at which you actually want to hit the notes (i.e. line up the "diamond" shape of each note to the line).  I'll have to experiment with different ways to visually show this -- for example, bars may make more sense than diamonds.

It's starting to actually look like something now, which is good!  I didn't have as much time today as I did yesterday to work on things, but we still made OK progress.  Gotta keep this up...

Thursday, December 1, 2016

Xmas letters: 10 down, ~15 to go!

Today was not too shabby at all!  I started on Rhythm Quest and spent a bunch of time doing good work on that, cooked lunch and dinner for myself, wrote a Christmas letter, watched some anime, even did the laundry...

Here's hoping that we keep this up for tomorrow...

Rhythm Quest Update 3 - Music Tracks

No GIF this time since all I worked on was audio stuff.

I now have a handy way of fading AudioSources to a given volume, with an optional callback that executes when it finishes.  Can be used on any AudioSource, you just call AudioSourceFader.Fade(audioSource, targetVolume, speed); and it takes care of the rest.  I'm using this for general music fading in my AudioManager as well now...BUT Rhythm Quest plays three music tracks at once, so that is in Rhythm Quest-specific code -- right now in the "dump it all in" GameController class.  We'll see if it ends up finding another home at some point.

Anyways, now I have a method that I can call on GameController which fades to one of the three bottom/middle/top music tracks that I have set up.  Just using placeholder music songs right now, didn't bother to make anything legitimate yet.

Not sure what's next...either getting the actual tracks set up and getting the player to be able to jump between them, or starting to add some actual notes/obstacles.  Lots of work to be done!  Things are going a lot more slowly than if I was just YOLOing everything, but the code is a bit cleaner as a result...not sure if the tradeoff is worth it to be honest.

Wednesday, November 30, 2016

Rhythm Quest Update 2 - Touch Buttons

Our little guy can jump!

So I've got the touch controls working -- it actually worked out without any big hiccups, though I confused myself with an extra (unnecessary for now) layer of indirection during my first attempt.

Unlike in Watch for Falling Rocks, these new TouchButtons are routed through to my custom InputManager, which means I can write InputManager.Check("jump") and it'll handle BOTH any keyboard bindings that you've set up as well as the touch buttons.  I can also call InputManager.Pressed() from FixedUpdate invocations and it'll actually work properly! -- though I won't be using FixedUpdate at all for this game since everything will be locked to the music.

Also, I realized after my last post that I'm definitely going to have to restructure the Song/Music stuff a bit because I forgot that I'm going to have three separate songs playing at one time!  I'll need to write something that's easily able to crossfade between the three, and I won't be able to use my usual single music AudioSource.  Whoops...

Rhythm Quest Update 1 - Scrolling

Well, I haven't gotten much yet, but I've done some basic groundwork for syncing things to beats and I now have a camera-followed character that runs to the right in sync with the music.

(Click for better quality)
The great thing about already having made a whole bunch of games is that there's never any shortage of placeholder art...

Organizing the code around the songs and levels and such is proving to be a little difficult.  On the plus side it doesn't really actually matter how messy it is in the end because I'm not going to be doing complicated things, but I'd like to at least attempt to keep it reasonable.  Plus, I'd like to fit as much of the generic Rhythm/Song-based code into my Harmonic Unity reusable framework.

Getting the repeating + scrolling background to work was actually more of a pain than I'd like -- this is definitely something I'm building out a reusable component for.  Right now it's using a 3D quad and setting texture offsets, then rendering to a separate camera, which is a little ugly, but for now it's probably fine.

Next I'll probably want to make sure that I can hook up virtual buttons and use them reasonably...

Rhythm Quest development start!

I've decided that I'm going to try my best to crank out a game in the next week-and-a-half!  It'll be a challenge for sure, but I'm fairly sure this is what I should be doing while I've got the time away from work (...yes, I'm taking the opportunity away from working in the games industry on a game...)

Here's the initial concept sketch for "Rhythm Quest".  Pretty much all of the major elements are outlined here.  I'll try to post updates as I work through development and we'll see just how quickly I can actually turn this thing into a reality.  First challenge is to get audio sync working properly, and also to get virtual screen buttons working.

...and of course I'll be doing Ludum Dare next weekend as well.  I must really love game development or something...orz

Monday, November 28, 2016

Wow, big catch-up post!  So many things have happened...

First thing's first -- my Patreon site is now live!  You can now support my music directly by going to and subscribing! =D  Every little bit is greatly appreciated, even just $1!  Plus, pledging gets you access to some cool exclusive rewards, like early access to my WIPs and unreleased tracks, as well as my exclusive new single, "Devotion".

I've gotten some great support so far and already have 6 pledges, for a total of $16 per song, which is great!  Since I've hit the $10 mark, that means I've already passed the mark for my first goal, so I'll be celebrating by hosting a live composition stream sometime soon!  Stay tuned for more details on that as I work out scheduling with my patrons. :)

Apparently there was someone who was a bit salty about me having Devotion as an exclusive patreon-only song, which was a bit disappointing to see.  They left me an angry youtube comment essentially saying that it was unreasonable for me to "lock my songs behind paywalls".  I tried to formulate a polite response but in the end I felt like this person was already in an antagonistic mindset and nothing I could say would really change their stance, which is...unfortunate.  I'm not sure I understand what the big deal is given that this is the only song that will ever be Patreon-exclusive -- I really just wanted to offer something special to patrons?  Perhaps they were just opposed to the idea of having to pay for music at all, as opposed to offering everything for pay-what-you-want.  In which case it's just yet another example of how artists and musicians' hard work are being devalued.  We put knowledge, skills, expertise, time, and effort into these creations; what makes you think that you are entitled to them?  My prices are already FAR lower than the market value -- e.g. $2 for over 20 tracks.  Or why not just download one of the countless albums I have available for free?  All of a sudden I release a single song as a paid promo and now I'm the bad guy?  smh...

In other breaking news, I can finally talk about work stuff.....I quit my job!  That's right!  I'm moving onto the next chapter of my career, and it's super duper exciting!  I'm left my corporate position last week, said farewell to my co-workers, and am starting a new job at an amazing indie game studio called Funomena in 2 weeks!  I'm really looking forward to it -- this is the sort of opportunity I've always wanted but never thought would actually exist.  Though my bank account will be a little sad that I'm leaving my cushy large-company job, I have no regrets and am absolutely looking forward to working at a company that tries to do something unique and evoke emotional responses via diverse experiences:

"We had a girl who said, 'It's the kind of game you want to play when you're having a bad day,' " Hunicke says with a laugh. "A lot of kids would get in the headset and immediately dive in and look all around and put their heads inside of everything, look underwater, and make all these excited remarks. We had one young boy, like a nine year old, who, as soon as the turtle appeared at the end of the demo, dropped the controllers and hugged it.

Hunicke was pleased with how the game resounded with women. "A lot of women would just take the headset off and say, 'I didn't think that VR was for me. It seems like it's an intense experience. I was a little afraid to give it a shot, but it was so relaxing and calming. This is exactly the kind of game I would play!'"

"I want it to be an expander title that someone can download and share with someone with very little experience and go, 'This is why VR is magical.' It isn't all shooting stuff or things flying at your face. It can be kind of a chill, creative, meditative experience," Hunicke continues. "That's what I wanted to build, and so to hear that, we were just thrilled."

And I'm even more excited about working on games that focus on a different kind of narrative:

"A lot of games are about getting revenge or going back in time to fix mistakes, but that's not how it works in the real world," Hunicke says. "In the real world, when you make a mistake, you have to kinda learn to talk about it, share your story with other people, and then by listening to their stories realize that you're not alone.

This is something that I've been writing about in a few of my letters recently, actually -- the idea that as an artist, with games as my medium, I really want to explore narratives that show people what it's like to go through life with values like compassion, understanding, forgiveness, and love.  And of course, narratives that are about the past...because you know me -- I'm all about the past.

Anyways, so that is super-exciting!  I'm nervous for my new start but know that it'll be a good one.  In the meantime, I've got two weeks that I'm hoping not to squander!  We'll see if I can crank out a new game or album with this precious time that I've got on my hands. =X  It's a bit stressful, to be honest, but I'm hoping to approach it calmly and recenter myself with this time.

Other things that have happened...Thanksgiving came and went, along with a bunch of yummy food!  I also managed to use this cauliflower soup recipe from Serious Eats to pretty good success!  It came out pretty well, though I don't know if I'm the biggest fan for the taste personally -- it's definitely good, just not my favorite.  I don't think it'll become much of a mainstay recipe of mine, especially given that it's difficult to make a smaller portion -- I used a single head of cauliflower (which, mind you, is pretty huge) and it was definitely enough for 5+ servings...

In terms of giving thanks, I'm actually thankful for a lot of things recently.  I'm incredibly thankful for the opportunity at Funomena and think that it will change my day-to-day life a lot in a good way.  I'm really thankful for all things meowmie.  And I'm thankful for my current living situation, though recently I think the water heater has been struggling to fight the cold temperatures -- the shower temperature has been a bit sinusoidal.  I'm also thankful that everyone at work was so gracious and appreciative during my last few days -- it was actually super nice having people say their thanks and goodbyes to me and feeling appreciated.  Not to mention we had a pretty epic sushi dinner at Fuki Sushi as a farewell, haha.

Went to a friend's dance party in Pleasanton!  Looks like I'll be driving a bit further for dance these couple of weeks, as FNW is taking a two-week break, and I'm hoping to head all the way up to Two Left Feet in Danville (!) next Friday, assuming all goes well.  It's been a while since I've done any serious WCS, so that should be fun/exciting!

As I've been mentioning, waltz has suddenly turned fun and interesting again as I've discovered a bunch of new things that I've been trying to work on.  It's great!  I've also recently become super interested in helping other people out with their waltz in whatever way I can -- so if you're looking for help or ways to improve in your cross-step or rotary, please let me know and I can work with you!

Now that I no longer have my work laptop (and I'll be using a windows desktop over at Funomena -- exciting!), I went ahead and got myself a MacBook Air, both so I can still have a laptop on hand, and so that I can still have an OSX machine on hand as well.  Decided to go with the 13" MBA even though it's a few years old, as it seems like the best compromise between size and processing power.  It's actually got better processing power than the new ultralite macbook but is still real light and much cheaper than the other options.  Not to mention it still has the standard ports, so no dealing with usb-c and all that mess (yet).  The main downside is that I couldn't manage to get a model with 512GB storage so I've only got a measly 256GB to work with, which is a bit problematic if I expect to be dualbooting Windows.  I haven't actually decided yet whether I WILL be dualbooting windows yet, though -- to be honest I almost never did with my previous MBP...keyword "almost".  I feel like it's something that really isn't that useful...until it is.  Anyways, even if I do end up dualbooting, I can say for sure now that I'll be in the OSX partition most of the time, so for now my strategy is going to be to keep a small ~50GB empty partition reserved.  If I end up needing windows, I'll already have that space reserved, and if I decide that I don't, I can just expand the OSX partition.  I'll also be doing some additional computer work soon as I have a new external HD coming in -- will be doing some backups and data management to make sure that all of my bases are covered.  Also going to be ordering a case for the MBA soon, to make sure that we don't have any..."incidents".  I actually spent a fair bit of time trying to look into which one to get, and also whether it was worth considering getting custom skins or decals or custom cases -- I could maybe make one with the All in a Day's Work 3 artwork, for example.  It was tempting, but in the end doesn't really seem worth it -- the print quality probably won't be the greatest, it's too expensive, etc etc.

Got to try out Overcooked recently with my brother!  Was super fun :)  Can only imagine what it'd be like with 4 players, hahaha.

Went to see Vienna Teng's concert at Berkeley!  It was pretty amazing, as the last one was, though of course with a bit of a different flavor, some different songs, some different feelings.  Soooo worth.  Got a chance to hike around campus (so pretty!) and see the Botanical Gardens at Berkeley too!

Ludum Dare is coming up in two weekends (that's right, right before I start my new job), and it looks like things will be proceeding more or less smoothly despite some minor bouts of LD drama (again...but not nearly as much as last time).  It should be an interesting one for me...not exactly sure what will end up happening.  I'm also going to take this moment to admit that I never did a proper post-mortem for Watch for Falling Rocks =(  I also never got to do a comment-back for every single person who gave me a comment, which I said I would do =( =( =(  I DID go through and play all of the games that were on my "looks interesting, bookmark for later" list though.  LD36 was...very interesting, being a no-rankings event.  Overall I don't think that is the way to go moving forward, but it was actually a pretty nice changeup to not have to worry about ratings for once, and it was also amazing to see the community actually step up and make sure that the event remained successful -- and in some regards even better than usual.

Other random things...I randomly randomly had the urge to play through MissionForce: CyberStorm again (super old turn-based mech game on a hex grid), so I've been going through that on hard difficulty.  Crushed the first two systems without too many problems, so now all that's left is to build up my forces and then take on the final mission.  I also booted up the PSP again to see if I felt like doing something more with FFT but...I don't know if I do.  You can't even do the rendevous missions without connecting with another co-op partner (which means I can't), so the only real thing left is the deep dungeon...meh.

Christmas Letters -- I just finished number 9, probably have around 15 left to go!  I'm going to have to be dilligent, but it looks like we'll be ok this year.  The more pressing issue is that I need to get started finding presents, as I still need to find a big bunch of those.

Contemplating (again) dying the tips of my hair...hahaha.  Saw someone who had colored tips and it looked pretty cool!  Hey -- if worse comes to worst, I can always chop them off...

I should post more often...

I've been in an interesting mix of happy and sad recently.  I'm doing okay, but at the same time there is definitely a lot of longing for the past.  I mean, there always is, but I guess the difference is I don't know if there is anything really "pulling" me towards the future right now.  I'm hoping that over the next two weeks I can spend some time to myself and figure that out.

Tuesday, November 22, 2016

No matter how many times I stumble on it, "occasionally" still trips me up remembering that the 'c' is doubled and the 's' is not.  I think my first guess usually ends up being that both are doubled, so I get "occassionally" but I guess that does look wrong now that I think about it.

Monday, November 21, 2016

That feeling when you need to double-tap an I piece to the left without resetting lock delay during Death 400 and you aren't quite fast enough...

Saturday, November 19, 2016

Omg, it's amazing!  I think I've finally gotten past the plateau that I've been at for so long in cross-step and rotary waltz!  I have a bunch of cool new stuff that I'm working on -- haven't had this many new ideas in forever!  Some of it is from the thinking I did in my own head at the waltz intensive last weekend, some of it is from some videos, and some of it is trying to transplant some WCS ideas into waltz.  Super exciting!

Friday, November 11, 2016

Christmas letters: 3 down!

So...a few things.

First, as someone who suffered from a debilitating and lengthly bout of "RSI/CTS/whatever" and made a full 100% complete recovery, I must urge people to ensure first that you are not instead suffering from a misdiagnosed case of TMS (for which the treatment is completely different, and fortunately, much more effective), and also that you make sure you take care of yourself emotionally as well as physically regardless of what your treatment may be.  I don't know how common these things are but I always worry that people are straying down the wrong path because of the constant pressures of society.  Let me know if you have any questions about TMS.  Blah.

Also, for those of you who want an xmas wishlist for me, the URL you want is  (This link is also on FB, on the "Details About ___" section)  I've compiled a detailed wishlist for this year that I'll be keeping up-to-date, so that's what you want to reference.

I won my quarterfinal match for our MtG league!  So I'm in the top 4 now :D  We'll see if I can squeak out another win...

Played more melee today.  Gooooood stuff.  I was actually pretty on top of things with Falco today, and Marth was great as usual.  My Falcon is actually improving a lot, which is super cool.  I still have a LOT to learn about Falcon, but at least I'm starting to get a handle on it.  Also I finally realize how extremely vital it is to shieldstop with Falcon, so you can do shieldstop sh nairs.  Very very good.  Fox hard -_-;  ugh, I really need to put in more reps with Fox.  Even things like shine turnaround edgehogs, shine bairs, ledgedash, etc etc are just not under my belt at all.  And I also need to do some more canonical stuff like following uthrow with uair on platforms to cover missed tech.  And edgeguard better.  Fox is so hard.

Been feeling a little shaky/tired lately.  Today was a pretty good day though.  Fall Ball is tomorrow, followed by the Waltz Intensive on Saturday!  Pretty exciting :)

In other news, America exploded this week...

Tuesday, November 8, 2016

Booted up TAP again and got a Master S9 on my first try (spent too much time recovering from mistake(s) in one section and probably failed the tetris requirement on that section as well).  Looks like I'm still good at this game :)

Christmas letters 2016 -- mission start!  One down, about 25 more to go...I started with a long one this time, so my hand already hurts, lol xD

Tuesday, November 1, 2016

Happy 42nd birthday to Hello Kitty!

You're no longer my favorite Sanrio character, and haven't been for a while, but as it still falls (mostly) upon you to carry forward the Sanrio spirit to most, I'll of course continue to support you as I always have.  (HK for president!)

Recently I stopped by Kinokuniya and was pleasantly surprised at their collection of Sanrio goods imported from Japan -- it was a real breath of fresh air considering that the Sanrio boutique shops have all closed down and the only Sanrio presence I see nowadays is the lackluster store at Great Mall.  It made me happy to see that there is still a place for my Sanrio friends here.

And of course, let's not forget -- a happy belated birthday to Charmmy Kitty and Kuromi! (both born on Oct 31)

Current stats:
Xanga: 3,780 posts (archive)
Blogspot: 355 posts
Letters: 963 written over 9.34 years (avg 1 per 3.541 days), 260 received (3.7:1 ratio)
Wallpapers: 3,116 (across 99 categories)
Anime: 2,409 Episodes watched (40.8 days)

My "days per letter" stat went down a whole lot, good god -- It used to be at 1 per 3.358 days.  On the plus side, I'm still on track to have 1000 letters written before 10 years is up, which is good.  I'll be starting xmas letters very soon, so hopefully that number will be getting a little better before the year is up.

Things are going ok!  We finally finished up everything that needs to be done for Watch for Falling Rocks, so now I just have to take updated screenshots and a video demo and I'll be able to publish it for mobile.

I'm currently 2-1 in my MtG Kaladesh sealed league at work after losing g3 of an otherwise close match in round 3.  The game itself was pretty uneventful as I kept a 1-lander after mulliganing to 6 on the draw, scry'd to the bottom and never found a second land.  However it was a pretty bad matchup for my deck in general as my creatures and removal suite just don't line up very well with his beefy green creatures and such.  I got some decent additions to my pool with the last pack so let's hope that I have better luck in round 4.

Halloween went OK this year.  I wore my Journey costume again (as expected), which was received well.  Missed the Halloween party at work, but still ended up wearing it yesterday through most of the day (including a trip to Nijiya for some groceries).  I didn't do any preparing for trick-or-treaters or anything, and actually couldn't anyways, as after work I basically just did groceries, took out the trash, cooked dinner, and ate, and then had to leave pretty soon after that.  Maybe next year?  I do admit that I was a bit sad that I didn't really get to "hang out" or do anything with other people while in costume on Halloween (e.g. trick-or-treating, etc).  Again, maybe next year.  I did get to hang out at a friend's Halloween party on Sunday though, which was pretty fun! :)

Been getting into Japanese cooking recently!  I've been making sukiyaki a few times, which is actually extremely easy and rather foolproof.  I bought some packets of instant dashi which will probably come in handy as I try cooking some other things like maybe gyuudon or something like that.

Started up a new song on Sunday night!  This is going to be an exclusive for Patreon supporters -- I'm planning on setting up Patreon once the song is finished and once I get a chance to produce a simple intro video or such for it.  The song is sounding pretty legit so far and I'm really happy with how it's going.  It's pretty similar to Infinity and has similar inspirations.  I was a little nervous when starting it out since it really has been a while since I've produced anything at all, but looks like things are coming out just fine, which is a relief. :)

Started watching Vivid Strike yesterday while eating dinner, and I'm also going to be following the 3rd season of Haikyuu.  Feels quite strange to be watching things as they air, as usually that's not my style, but so be it!

Overall, things are going pretty ok for now.  There's not too much to complain about, and some things to look forward to as well.  I feel that my emotional mood is somehow a little bit underneath where that would usually put me though.

Saturday, October 29, 2016

Tuesday, October 25, 2016

Every time I hear "ask" as a noun I still cringe, but fine...just, for the love of god, please do not use "solve" as a noun*.  We have a specific word for that already: "solution".  If this continues to propagate we are going to end up with phrases like "That was a great execute of your plan", "Your respond was inappropriate", and "I have an argue with that".  ...We are all going to sound like non-native speakers who don't know how to conjugate verbs... =(

While we're at it, I'd like to point out that calling an MtG sealed pool or a sealed tournament a "sealed" really weirds me out as well.  It's fine to call a booster draft "a draft" because draft is clearly the noun.  "sealed" is an adjective, as in "sealed deck", so it sounds really weird to say "Let's do a sealed."  It's even worse when you try to pluralize it: "I'm going to practice by opening up some sealeds."  But note that "Let's play sealed" sounds fine because "sealed" is still the adjective here -- you're just omitting the noun: "Let's play sealed (deck)".

*Notable exception can and should be made for speedcubing.

Monday, October 24, 2016

Words cannot express the amount of love I have for the uni-ball signo 0.38mm pen.  Accept no substitutes.  It is amazing.

Sunday, October 23, 2016

It's been a pretty good time recently!

There's some super exciting stuff that I've been working on that I can't really talk about until later -- hoping it all works out!  Stay tuned for more, I guess. :)

Otherwise, things have been great!  I found some time for both letters and calligraphy this weekend, which was good, and also met up with a friend who was visiting from SF, which was really nice.  Made tomato soup for the second time, to pretty good success!

Also, random plug for "薔薇祭", a song off of A-zu-ra's amazing album "the bed of diverse flowers".  A-zu-ra's a musical friend of mine and this has always been my favorite track of his, off of my favorite album of his.  You can listen to it at  The intro is spectacular in every way, and recently I've been really appreciating some of the development and countermelodies in the later parts of the track as well.  Recommended.

Another random note: I've got a huge surplus of physical album CDs for Celestial Melodies, so please get in touch with me if you're in the area and want one!

I guess I never wrote about Boogie by the Bay 2016 and the first Jammix back at Roble here, but they were both quite fun and good (this was two weekends ago).  Learned a lot at Boogie and had a bunch of awesome dances, especially some really amazing ones with a couple of girls who both lead and follow -- always fun switching back and forth.  Samantha Buckwalter and Kelly Casanova I think were teaching their lead-switching class again one of the days (didn't go because it would have been the 3rd time I had taken it).  I definitely feel like my WCS has gotten significantly better since last year, which is great!  Jammix was really surreal, but quite fun as well.  Had one or two quite good dances, and also waxed nostalgic about the past.  It was good to be back. :)

Lower back has been sore the past few days, so trying to make sure I can recover from that. =(  I hope it doesn't become a chronic thing -- usually I think it starts up because I do something silly like try to sit on the ground or against the wall for a while.  I'm really bad at sitting on the floor comfortably for longer periods of time, I realized.

I'd like to continue to try and make sure that I'm covering all the right bases in terms of time management in my day-to-day life; basically, ensuring that I'm prioritizing the right things.  I think the biggest obstacle continues to be the fact that sometimes I just don't have the focus or motivation to work on the things that I actually want, but of course it can also help to make sure that I'm saying "no" to the right things to ensure that I have enough space in my life.  If things go well, I feel like you should see me posting here slightly more often.  Traditions like these are important to me.

Besides the stuff I can't talk about, I think my next "things to work on" should be some overdue tweaks to Watch for Falling Rocks to get it ready for mobile release, and then getting back to music writing so I can make something to use as a Patreon song.

Hard to believe that Halloween is only a week away!  This is also around time for me to start working on Christmas letters for this year :)

Tuesday, October 18, 2016

The sand of time slips slowly through the gaps in my fingers and there's nothing I can do to stop it.  Only to try and make sure that I catch the grains that matter, even if it means tossing aside the rest.  Am I really doing what is most important to me in life?

Tuesday, October 4, 2016

"Would artists abandon the art of painting, once the photo camera was invented? Would artists abandon sculpting once 3D printing became a thing? They wouldn't, but they would need to push the medium even further than before to remain impressive." -- Simon Stafsnes Andersen

There's nothing quite like waking up at 3 in the morning to write a letter to a friend.

I've been trying to make sure that I'm prioritizing things in my life properly, and most of all to make sure that I'm meeting my standards for how I want to be living my life, especially with regards to what I'm spending my time on and how emotionally and socially available I am.  Waking up in the middle of the night (after a long "nap") and writing this letter makes me feel like I'm myself again, in a good way.

Also, it's Fall now!!!  I'm ridiculously happy about this.  I woke up this morning not quite having had enough sleep and was feeling pretty groggy, but once I stepped outside I felt amazing.  Few things in this world energize me more than a beautiful cloudy morning.  Maybe it'll even rain sometime soon -- one can only hope.

Today was a surprisingly great start to the week!  Getting a massage at work definitely helped, but it wasn't just that either.  Felt like I was able to do the right things, feel accomplished enough, leave on time, and then I was also able to retrieve my present!  I had mistakenly delivered a present into someone's mail slot only to realize too late that my friend had changed addresses, so I wrote up a short handwritten note and they were actually so kind as to call me back and leave it out for me on the porch so that I could go and get it.  I mean, it wouldn't actually be the end of the world or anything if I had lost it forever, as I could replace the present and I have been good about taking photographs of all of my letters before sending them, so nothing lost for good, but I was still happy that that all worked out.  Now if only I could find the Cinnamoroll hairtie that I lost last week =(  Pretty sure it's gone forever and that it just slipped off as I was walking around outside somewhere, which made me super sad.

Got to play some Melee with Brett tonight -- I was feeling super on top of my game today msotly, and my tech-chasing was on point with both Fox and Marth.  Felt great!  I even seem to be somehow learning how to play Falcon somewhat, which is amazing because that's a character that I've always really struggled to get the hang of.

I'm starting off a Kaladesh sealed league at work!  Should be exciting to actually get my hands dirty with the format and see how vehicles, energy, and fabricate all end up actually playing out.  It's been a while since I've played any MtG, really, so I'm looking forward to trying to find the right build of my sealed pool.  Or, you know, maybe opening a masterpiece or something.  xD

Visited Yang up in SF the other day!  It was great; something I'll have to do more often! (as in more often than once a year lol)  We got to talking about socialization and connection and adult life and everything, which is part of the reason I was thinking about life priorities and making sure that I'm doing things the way that I want on a daily basis.

FFT has been going well!  I'm now significantly underleveled compared to the enemies in the story battles (sometimes as much as 10 levels lower) yet still kicking butt because my characters are pretty awesome.  My black mage/samurai with draw out/iado just walks up and absolutely destroys everybody, and I'm also in the middle of chapter 4 now and have picked up Cid, who not only is going to destroy a whole bunch of people by himself but also comes with the Excalibur which I handed off to Ramza to give him haste.  I actually turned Ramza into a Knight and am thinking to maybe (!???) make him into a Dark Knight.....but we'll see if that actually happens; it takes a lot of grinding to get there.  On the plus side, leveling as a knight is good for PA growth regardless, so nothing really lost there.

I've had a couple of story battles where I wanted to steal some things and I've gotten pretty good at taking control of a battle now.  Having Lavian, my dancer, as part of the team definitely helps out immensely, as she just uses the slowing dance to eventually grind the enemy team to a halt.  From there, it's just all about taking out the enemies without important gear and surviving while she does her thing.

My Celestial Melodies physical CD sold out at FNW!  I didn't expect to have so much interest in it, so that was super cool that people actually wanted my CD.  I didn't have any for the dance on Sunday, but I have a shipment of 33 more coming in, hopefully in time for Jammix this Friday =X

Hope to be writing here a little bit more often.  It always feels nice...and it reminds me of the past, in the best way.

Thursday, September 29, 2016

There's no time like the present to make a change...

Things have been not too great recently, to be honest, though hopefully on the mend.  I'm super behind on writing letters and not really happy with the amount of time that I've had to myself lately, though maybe it's not as bad as I'm making it out to be.  I did have some quality time to myself last night, which was super helpful.  During that time I finished up a late birthday letter, wrote up an email, got youtube streaming videos rendered for my new Celestial Melody album, and also downloaded and tried out the updated tools that are available for Melee character development and modding.  They're pretty cool, and much much much easier than the raw hex editing I used to do.  You can even modify animation speeds, which was previously impossible!

Speaking of Celestial Melody, it's going to be released very soon (probably tonight or tomorrow).  I got my shipment of 15 CDs and they look pretty nice!  Though, unfortunately, I worry that some of the plastic spindles might have gotten broken during transport, as there's a bit of rattling in some of them. =(  Regardless, I took some photos of the CDs this morning, so all that's left is to upload them, double-check everything, and spread the word before hitting the button.  I'm also hoping to sell physical copies (and maybe pass out cards) this weekend at some dance events that I'm going to, which should be fun as well!  This is a jam-packed album, with over a full hour of music, and I'm really excited to be releasing it.  Next up on my music project list is probably to sit down and write some sort of awesome song that I can use as an exclusive for starting my Patreon page...

I'm into chapter 4 (the final one) in FFT, and currently going around the map completing Errands/Propositions with my team of 9 generic squad members.  The random battles have gotten to be a little bit of trouble, not because they're usually hard or anything, but because for the past two ones that I went into, one was the rare battle against dragons / hydras / tiamats which I had no way of winning (with just Agrias, Mustadio, and 3 chocobos lol), and in another one I decided to just send only Agrias and Mustadio to make things faster, but realized that it wasn't winnable because one of the enemies was a blue dragon and both Agrias and Mustadio were equipped with Ice Brands and thus had no way of actually damaging it.  Whelp.

Aside from that, my squad is doing pretty well.  I've got:

Ramza, as an Ubersquire with Dual Wield.  He's a little light on HP but is great at just walking up to things and killing them dead real fast.
Anselm is my Dragoon with Attack Up.  He's currently taking a detour and going to become a Samurai so that I can give him Doublehand (I think that increases lance damage, actually still have to check whether it works on jump)
Gerald is a Ninja with Martial Arts.  Does a ton of damage and is basically a finished build.
Dawson is a Monk with Attack Up (to poost Punch Arts).  He's pretty versatile as he can heal a ton of HP/MP with Chakra provided there is some flat ground.
Maronne is my Black Mage/Summoner who has Quick Charge.  A lot of the time she actually just casts Golem since Golem is just an awesome ability, but she's also good at just dealing magic damage with summons too.  I actually wonder if it might be worth teaching someone else Golem, someone with a little more HP to serve as a better buffer.
Lora is my Thief/stealer, who is currently a Ninja for better speed and damage.  I haven't had to use her to steal much, but there are some battles coming up where I'll have to steal some important equipment.
Margry is eventually aiming to be a Black Mage with Draw Out/Iado, and is currently learning the Draw Out/Iado abilities as a Samurai.  Her physical damage sucks right now but Iado really seems awesome.
Ladd is going to be a bard real soon but currently he's a Mediator/Orator and needs one more level before he can transition.  I never played with bards or dancers during my first play of the game so it'll be cool to try them out!  Theoretically I should be using him and Ramza to boost everyone's Brave but it's hard to find good opportunities to do that when everyone's always doing errands all the time...
Alicia is my White Mage.  I don't actually use healing that often besides Chakra, though I think she does also have Throw Item so she could theoretically use items instead of White Magic instead.  She's currently going down the Black Mage path so that she can learn Quick Charge.
Lavian is my Dancer.  Her build is basically done and she's just filling out dance skills at the moment.
Agrias is currently a Monk with Equip Swords so that she can still do good damage with her Holy Knight skills.  She's going to make a stop at Geomancer to pick up Attack Up before returning to being a Holy Knight and basically owning everything.  Might be nice to pick up Move +2 at some point but not sure if that will end up happening.
Mustadio is currently a Knight who is picking up some random Battle Skill skills before returning to an engineer who will be able to just apply disables everywhere with his gun.  I plan to have him use Equip Shield for now but it might actually make more sense to have him get Concentrate.
Rafa and Marach (and Boco) are just plain unused right now, and Luso is super high level compared to my other guys so I haven't actually been using him at all.  He'd probably be a fine character but needs a lot of JP to learn some useful skills.

I'm definitely feeling significantly better off than during my first playthrough where I basically didn't know what I was doing.  I'm sure my characters now would stomp that older set of characters.  Even in terms of equipment, I actually know what I'm doing and am gearing for the correct stats.

Having friends is so's amazing how much difference it can make in your day when you have contact with good people.  I got a new penpal too!~

I played through The Beginner's Guide recently, and thought it was pretty cool!  Probably not everyone's cup of tea, but I very much enjoyed it.

Lots of dance events coming up...I'm not even going to Starlite tonight because there's too much other stuff going on.  Richard is at FNW tomorrow and I'm going to be stopping by his 8PM class, and then Brett and Daniel are hosting a dance later in the weekend.  Then next weekend is both Jammix (in Roble!?) and Boogie by the Bay.

Missed the Kaladesh prerelease because I was busy that weekend with other stuff, including going to the Google Play Indie Games Festival in SF!  There was some cool stuff being exhibited there, including Bit Bit Blocks which we really liked.  Plays really well, has some good design decisions, and is just a blast to play.

Hopefully I can start bringing life back under control this weekend.  I think I just need to remember a little more clearly the drive and willpower that I always had before, and put it to good use.

Thursday, September 15, 2016

I think it's really important to compliment people, and also to thank them and show them your appreciation or admiration.  Sometimes I will randomly message people to say they are awesome for no real reason, or thank them for something that happened ages ago.  Or even apologize for something that doesn't matter because it was all in the past.

We can all be really hard on ourselves sometimes.  Sometimes it can really help to hear a friendly reminder of why your life is worthwhile, and that you are appreciated by someone else.  And it also means a lot when someone "goes out of their way" to show you that they care.  I say "go out of their way", but it really isn't -- it really only takes a couple of seconds and you'll probably end up feeling positive about it too.


This week has been more up and down than the last...and by that I mean there were a couple of downswings.  I'm back to feeling pretty good about life, but I was feeling kind of frustrated and/or just tired of life earlier.  Sometimes it's not really anything catastrophic or systemic, but just little things that happened to stack up against you in the wrong way at the same time.  Or things that bother you more than you'd like it to.  I think everyone probably has days like that...

I've had a legitimate flurry of new album releases over the past week or two:

Watch for Falling Rocks Original Soundtrack on Sept 3
Mysterious Space Original Soundtrack - Volume 2 also on Sept 3
Take My Hand EP on Sept 7
and now Ivory on Sept 15

It feels great to get things out of the backlog!  The tracks for "Take My Hand EP" were started 5 =years= ago, and Ivory has been sitting around for a while too.

Even more exciting is the fact that I've been working on new album art for my social dance music album:

That's right!  It's finally coming around, which makes me super happy.  I'm not 100% sure this will be the actual album design, but I'm coming around on it (still need to design the rest of the physical CD case though).  You'll also notice that I'm no longer calling it "DanceBit" because I really wasn't happy with that title after thinking about it more.  "9-Bit Ballroom" was an idea I tossed around in my head, and I think that would be a good title too, but if I use this image for the album then "Celestial Melodies" definitely fits it.  I'll have to see how I feel about it after thinking it over again.

I made tomato soup for the first time this past week!  I made way too much...@_@, but it was a success!  I followed this recipe from Serious Eats, which is the lazy no-sautee version -- there is a slightly-more-effort version here.  I didn't go nuts with the blender though (it was already jam-packed to the limit so I didn't want it to explode or make a mess or anything), so I left it a little less smooth than it could have been, and had to heat it up using a pot on the stove.  Some of you may not know this but I'm actually super into cooking and try to cook my own meals pretty often.  Things that I want to try next are a cream of mushroom soup (I'm really inexperienced with soups in general, especially western soups, so I've decided to try making some), and I also wanted to have another go at this miso-glazed salmon recipe, which I've done once before.  I generally broil my salmon pretty plainly (and deliciously) but I wanted to change things up a bit for next time.  Salmon is sooooo good. >w<

I've been having a blast playing through Final Fantasy Tactics using my friend's PSP.  I'm currently knee-deep into Chapter 2 and am raising my faithful band of recruits into something fierce.  A lot of them are still just grinding JP to unlock more jobs and abilities before they actually become useful, but I've got a Monk with Attack Up that is pretty great at punching things dead AND healing a crapton of HP with Chakra.  Ramza is unfortunately currently useless as he's currently grinding JP as a Thief, which is a job class with terrible stats for dealing any sort of respectable damage.  But he's gotta get some jlvls before he can become a Ninja and get two swords.  My summoners and mages have actually been the majority of damage output in key battles.

Going to try heading to Starlite Ballroom in SJ tomorrow night with a friend.  How confusing that it's named the same as what used to be Starlite in MV (then Cheryl Burke, now who-knows-what)...regardless, I have no idea what that will be like but am looking forward to getting some dancing in and seeing my friend too!

What else has been going on?  In MtG-related news, I narrowly lost in the finals of the work sealed league that I was running, taking 2nd place as my generous consolation (to be honest I thought that I would be out much earlier than that).  I was extremely happy with how I played game 1 of the final match -- it was a rare scenario where I had all of the variables in my head, thought thoroughly through every important consideration, and was one step ahead of my opponent the whole time.  It was almost perfect ("almost" because I still may have made one or two suboptimal plays.  Magic is hard!!!).  In game 2 I kept a shaky hand with 2 mountains and white spells on the draw and needed to hit a plains in order to really play a fair game.  I bricked and despite casting a lightning axe and then a madnessed alchemist's greeting (discarding to hand size!) there was no way for me to do anything that game.  Going back to it I should have mulliganed that hand, but I think I was thrown off by the fact that I had the lightning axe to take out a threat if I missed on the land early, and if I got there the hand would have had a lot of power as having a lightning axe plus alchemist's greeting in hand is pretty good.  So I think I got trapped by seeing the lightning axe.  Game 3 he gets a faith unbroken on his selfless spirit and I didn't draw one of my 6 answers to it quite in time for it to make a difference.  I perhaps should have sided my other alchemist's greeting from the board given that I knew he had faith unbroken, but in any case, I think I'll certainly accept the loss and take 2nd.  We also did a conspiracy: take the crown draft where I drafted 10 conspiracy cards, lol.  After my first game everyone now just targets me from the onset which makes things impossible @_@.  But probably rightly so, as I have insane card advantage from Summoner's bond, which is pretty awesome.  In other news, Kaladesh spoilers have been popping out but I haven't really been following too closely.  Seems like it should be super exciting though!

So yeah, that's been life recently.  There are some good days and some not-so-good days.  It's a mix, really!