Wednesday, September 26, 2018

Hoo boy...let's catch up again.



Samurai Shaver Latency Calibration

It took way longer than it should have, but after hearing several (more) complaints about audio synchronization issues, I've finally finished implementing a nice audio calibration screen for Samurai Shaver, as well as changed the default to use predictive audio instead of dynamic audio for the slash sounds.  Latency calibration is always a tricky thing, and ideally I would have a more fully-featured system that also allows calibration of =input= latency...

There are basically 3 separate things you have to consider: input latency (time between your input and when the game processes it, usually low but notably higher for many touchscreen APIs), display latency (time between the game updating graphcs and when you actually see it), and audio latency (time between the game playing a sound and when you actually hear it).  You can't actually measure all three, but you don't actually need to either -- you just need two relative measurements of display latency vs input latency and audio latency vs input latency.

So if you show a pulse and time the user's tap in response to it, you're measuring visual + input latency.  Hopefully this is low enough that you don't have to worry about it in most cases, but that's not really a guarantee.  If you have 100ms of combined visual + input latency, then you need to show your visuals 100ms before the corresponding event processing.

If you also play a beat and time the user's tap in response to it, you're measuring audio + input latency.  This is usually higher (especially for android devices), and tells you how much to shift your audio track earlier.  If this is too high then any dynamic audio you play in direct response to user input will (necessarily) be delayed significantly, which can really throw off timing.

Anyhow, for Samurai Shaver I only took the latter measurement and act as though there is 0 visual and input latency.  In reality there is a noticable amount of input latency (and/or display latency, you can't really tell the difference), which means that the visual indicators will lag behind by that amount, which is a bit unfortunate.  Fortunately it seems to work out well enough anyways, and it's probably not worth the extra effort to add in more logic for.  Maybe for Rhythm Quest...except Rhythm Quest doesn't really have that much of a good way of compensating for input + display latency in the first place because of the nature of the game...

Annnnyways, that's probably more than you wanted to know.  Suffice to say that even though it's long overdue, I've finally got it working more or less as it should be.  Hopefully my fans in Asia will appreciate that work (not sure if people are even still playing?).



Tactics Ogre

I've made a heaping ton of progress in Tactics Ogre: Let Us Cling Together!  I finished my first playthrough (doing the Neutral route), beating the final boss and everything.  The last fight was a bit interesting -- it's a two-phase fight where in the first phase you fight both the boss's first form alongside with exact dopplegangers of the team that you send in, which is pretty interesting.  I definitely had to experiment with some different strategies for that fight, as just going at it head on was not working at all.  My units were...well, evenly matched, obviously, and then the boss's first form can basically just one-shot anybody in range.  After a couple of attempts at bumrushing the boss (didn't work at all) I eventually had better luck by removing all of my counterattack skills to reduce the amount of damage going around (on both sides), and then playing a longer game where I slowly picked off units one by one and retreated + healed as necessary, always making sure to stay out of range of the boss's main attack.  That paid off and I made it into the second stage of the fight, where your remaining units just have to fight against the boss's final form (a singular unit).  The second form didn't really involve a ton of strategy, more of just a test to see how well you got out of the first stage, but I eventually managed to just squeak out a victory.  Hooray!

After that you unlock the "World" feature, which allows you to jump back and forth along the story timeline and take other branches, unlock other characters, etc., while keeping your current army and inventory and all.  I went through the first sidequest dungeon again, but this time picked up all of the crafting recipe drops...unfortunate that Tactics Ogre has all of these hidden drops and quests and such that you basically have to read a FAQ to get info about.  They're not even guaranteed drops, either...sometimes the map doesn't even spawn the right enemy to drop them...

Anyhow, I finished that off, and afterwards I warped back all the way to Chapter 1 so I can start going through the Law route (my first playthrough was the Neutral route) and recruiting some of the exclusive characters from that route.  Because Denam (the main character) has to be in every story battle, the enemies levels always scale to his, but fortunately, these earlier chapter battles are easy enough that I've been taking the opportunity to use all of my lower-leveled classes that I got later on, like hoplite, juggernaut, matriarch, fusilier, bucaneer, etc.  Leveling has slowed down for those since they are now catching up and are around level 16-17, but anyways, it's good to see that they are finally getting to be on par (level-wise) to my primary units.  Some of them still seem a bit underwhelming, but 5 levels can probably make a significant difference, so I'll reserve judgment for now.  My gryphon is still having a bit of trouble, as it can't seem to take all that much punishment (gets hit easily, especially by magic), and on the flipside can't really dish out damage that effectively either as it has accuracy problems, even with a ring of agility.  Maybe I just need to keep leveling it...perhaps at some point I'll also see what the other monster classes have to offer.

I had this grand plan to have my Familiar learn the various "kiss"-type debuff skills and then transition to being a rogue, so she could use a crossbow or something to shoot from afar to accumulate TP and then use those debuff skills, but that really didn't end up panning out too well, so she's back to just being a mage.  Right now she fills the same role as Catiua in her priest class -- namely, a healer that can also cast offensive divine magic (though the familiar can't use the AoE damage spells).  That seems to at least work decently.



Cooking

I don't really know how, but after the Nth time of trying, something must have clicked or something because somehow I feel like I "get" how to make pan sauces now.  Was trying to practice braising chicken thighs in preparation for cooking some more of those quails that my best friend is planning to cull, and ended up reducing the braising liquid into a decent sauce...amazing.  I cooked a cod fillet I had in the freezer on Monday -- coated it in corn starch first, and unfortunately ended up sticking to the pan a bit, but fortunately that wasn't a huge deal as I ended up just scraping up the stuck bits later and adding sherry to make a sauce for that.  Feels like I've unlocked a small little world to play around with, which is pretty interesting as I'm not always sure how the end result will end up tasting.



Life and Work

For those who haven't already heard, this week is my last week at my current job!  It's been a good run, but it's time for me to (finally) put a close to that chapter of life and wipe the dust off of the proverbial slate.  I plan to just not think about employment at all for a good bit, as I definitely need time to myself to just focus on my own personal life.  It's pretty exciting!  Anyways, for now I'm basically just scrambling to get everything done in the last few remaining days I have...then I'll be home free!



Return to OHC

I don't have a ton of concrete plans about what I'll do with my time once work has ended, but one thing I do plan on doing is starting up with One Hour Compo again!  Pretty excited about that, as I feel like I've lost a bit of the confidence that I used to have when I was doing it every week.  One thing I still haven't quite figured out is how to resume doing my Monthlies releases along with my other music as well as how to handle that on Patreon, etc.  I don't want to just start charging 5x per month to my patrons, so I'll have to think of a good option to deal with that...maybe make one paid post per month for the entire monthlies release.  I could also switch my campaign to being a monthly one...it really depends.  Patreon is weird, haha.



No comments :

Post a Comment