Book review: 本好きの下剋上 vol. 1 (Ascendance of a Bookworm)

This review is rather overdue; I finished reading this book a couple of weeks ago. As of today I’m moving on to the next volume, again with the WaniKani bookclub, with the goal of finishing it just before the end of the year.

本好き is my first foray into the genre of 異世界 fiction; specifically the “reincarnation” subgenre. The hallmark of this kind of story is that our hero (typically a sad loner with no apparent future) meets an untimely death at the very beginning, and is then reborn into a new world (medieval fantasy settings seem to be the norm) with all his memories intact, and usually with some unbalanced magical power to boot. It’s a very popular concept, but one which has never much appealed to me due to the power fantasy trappings that seem to be endemic.

本好き is a bit different. For one, the main character (literally named “Main”, though the official English translation renders her name as “Mayne”; rhymes with “mine”), a book lover who had recently graduated from college with a degree in library science, actually seemed to have a pretty good life ahead of her before she was tragically crushed to death by a falling bookshelf. Things only get worse and worse from the moment she opens her eyes in her new home; she finds herself as a sickly little girl in a poor family, with not a single book in the house to help her while away the hours in bed. It’s not long before we find out that it’s not just her family; this is a world where being able to write your own name is remarkable, and where a single sheet of parchment is worth a month’s salary. Books will be hard to come by.

Though ostensibly the goal of the series is for Mayne to become a librarian against all odds, it’s a long climb to the top. Her goal throughout the whole first book is to come up with some way of writing, whether that be a pseudo-papyrus made of grass or clay tablets, but each new attempt comes with unforeseen challenges. Interleaved with the bookmaking are smaller, more achievable goals like figuring out how to make shampoo in a dirty, hard-fantasy world, or trying to adapt local ingredients to suit her Japanese tastes. Throughout it all, the narration is delightful and full of character.

At the time of writing there are 25 books in the series, with a new one coming out about every three months, so who knows when I’ll ever actually catch up (especially at bookclub pace). I do intend to continue for a while though. The recent anime adaptation apparently covers the first three volumes, so if any of this sounds interesting, be sure to check it out!

Book review: 狼と香辛料 (Spice and Wolf)

Emboldened by the success of my first fast-paced reading challenge, I reached for my stack of unread Japanese books and picked one that I’d been thinking about for a while; Spice and Wolf, which I had randomly inherited from a friend long before my reading was remotely up to scratch.

My original plan was to read 15 pages per day (a one-page increase over my average pace from last time) and finish it in three weeks, but after the first week it was apparent that this was going to be completely unsustainable and re-targeted to a four-week pace, bringing me to an even 10 pages per day. Even this would prove to be a challenge, though I did manage to finish it one day early.

To briefly summarize the broad concept: whereas some fantasy authors set out to create a world in which to play out their unique ideas for a magic system or to explore a web of political intrigue, Isuna Hasekura has decided to spin a story all about the dirty details of being a merchant. Rather than an encroaching dragon, the driving tension comes from the possibility of taking advantage of a currency speculation scheme that turns out to have some very powerful actors working behind the scenes. I really do have to give him credit; “fantasy economics” isn’t a genre I would have ever thought of, but there’s no reason it shouldn’t work. The political tension between neighboring kingdoms, the risk of dealing with multiple merchant guilds, the potential for worldbuilding with regards to supply and demand across different regions; there’s potential here to tell an endless number of deep, interconnected stories (and considering that there are now 20 books in the novel series alone, it seems that’s exactly what he’s done).

Where it all falls apart is…I just have no interest in what is very clearly the entire point of the book.

The two main characters, Laurence (a traveling merchant) and Holo (an ancient goddess of harvest known as the Wise Wolf) are well written and have good chemistry. Holo in particular is delightful with her old-timey speech style and penchant for mischief. Their scenes together are highly enjoyable, but they’re interspersed with what I can only describe as excerpts from a fictitious textbook on medieval trade theory. It’s quite possible that I wouldn’t have been bothered by this if my Japanese reading ability was higher, but as I am right now, it just felt like a series of speedbumps that got in the way of my enjoyment of the story.

Spice and Wolf is…not a book for me. I can understand what makes it tick, and I can even appreciate what the author has managed to do, but quite frankly there were not a few moments where reading this book made me want to die. What I can say for certain is that I now understand why some of my favorite series — the ones that describe the process of cooking in great detail and go into depth about the nuances between certain ingredients — fall so flat for other people. If you’re not interested in cooking, you probably won’t enjoy a book written by someone who loves it — and I have absolutely no interest in economics.

Translation work – Persona 5 twitter comic

Earlier today I happened to see this tweet from an artist I follow:

To summarize, it’s a post looking for someone to do some (volunteer) translation for an upcoming comic. Naturally I jumped at the opportunity and sent off a message offering to help. One thing led to another (the fact that I had done a translation let’s-play of Persona 5: Scramble probably didn’t hurt), and they accepted my offer. My translation of the original Japanese text can be seen in the English version of the comic in the tweet below:

Even though it’s just four short lines, this is technically my first proper translation gig and it’s pretty exciting that I was able to be in the right place at the right time!

Iridescence Walkthrough by To Ta

I somehow missed this when it first came in, but the itch.io page for Iridescence received a comment that linked to this walkthrough video. During development, I put a lot of effort into the visual design of each component so as to not require any text on the screen, which apparently paid off seeing as the title of this and other videos on the same channel are in Japanese.

While I never expected Iridescence to be a great critical or commercial success, it’s always nice when somebody stumbles across it and seems to enjoy it.

Book review: しあわせの花 (Flower of Happiness)

My third Japanese novel this year comes to a close in much shorter order than my other two. Upon finishing Night Market, it suddenly occurred to me: “I’ve been reading each week’s quota of ten-or-so pages in one sitting — why not keep up that pace for the whole week instead of just for a single day?”

And so, I cracked open Flower of Happiness, which is a light-novel spinoff of the manga series 鬼滅の刃 (aka Demon Slayer: Kimetsu no Yaiba). My original goal was to read 8 pages per day and finish it by the end of the month, but I ended up getting swept along and ended up reading about 14 pages per day, which allowed me to finish it in just two weeks. This is obviously the fastest I’ve read a Japanese novel and I’m excited by the prospect of keeping on this track.

To be honest, I didn’t know anything about this book at all when I bought it — I essentially bought it on a whim after I caught up to the KNY manga and was itching for more content in the same universe (though it would be some time until I actually got around to it). As it turns out, it’s not one full story at all, but rather five short vignettes depicting various characters from the main series.

The first chapter, which shares its name with the book, is set during the time that Tanjiro, Inosuke, and Zenitsu are recovering from their battle in the tsuzumi manor. Upon being invited to attend a wedding in the local town, Tanjiro finds himself wondering whether Nezuko will ever be able to become a bride herself — just in time to hear two girls talking about a rare flower that is said to bring happiness to any woman who carries it…

The second chapter, For Whom, follows Zenitsu on one of his ill-fated attempts to escape from his slayer training. Unfortunately, on his way down the mountain he runs into his greatest weakness — a lady in distress; promised to a demon in order to save her cowardly stepfather’s skin. Zenitsu can be pretty insufferable when it comes to women (and this is definitely the case later in the book), but this story shows him at his best. He seems genuinely concerned about this girl, and considering how terrified he is of demons (not to mention how eager he is to continue with his escape), you can tell it takes a lot of courage for him to help her out.

Next up, The Trouble with Fortunetelling was definitely the most entertaining story of them all, but unfortunately also the most annoying. Set after the events of the Infinity Train arc, Zenitsu is accosted by a fortune teller at a crossroads and told “stay away from women for the rest of the day, if you value your life”. He then spends the rest of the chapter in hysterics, which is somewhat disappointing considering how well he had been written immediately prior. There are some great moments here though — Inosuke picking up a menu at a cafe and immediately exclaiming “I can’t read!” (followed by Tanjiro’s futile attempts at teaching him some letters) had me laughing out loud.

Aoi and Kanao is a great little expansion on the two titular characters, and it’s too bad that more people won’t read it. While Kanao sees significant character growth throughout the manga due to Tanjiro’s positive influence, Aoi feels somewhat neglected despite being set up as an interesting character at the end of the rehabilitation arc. This story gives her a little extra time in the spotlight and serves to flesh her out between manga chapters.

Finally, Kimetsu Academy Stories is a goofy re-imagining of the setting as a typical middle/high school. If you’ve seen the anime, you may recognize this concept from the shorts at the end of some episodes. As might be expected, nothing of importance happens here at all, it’s just a chance to have some fun with the characters. It got a few laughs (my favorite bit was Yujiro pretending to be sick every day so he could see Nurse Tamayo), but this was definitely the weakest one for me.

Overall, despite the fact that it doesn’t add a lot to the story of KNY at large, I liked this book quite a bit. The writer’s style is enjoyable and she did a great job of capturing the characters. I rarely read afterwords but I decided to read this one and it seems like she really likes KNY and was super excited to write a novelization, which was cute and heartwarming. I already have one of the other books (片羽の蝶, One Winged Butterfly) and I’ll be looking forward to reading that as well.

Now that my blog supports Japanese characters I can finally start posting the reading reports I’ve been accumulating. Over the next few days, a large number of posts will be back-dated across the last year and a half.

These reports were originally intended for 日本語と英語, a Discord community for people learning Japanese or English.

The long drought

It’s been about four years since I’ve posted regularly on this blog, and the reason is as simple as it is uninteresting: I really didn’t have that much to say. My former job, which dealt with anti-money-laundering and financial compliance, had me under heavy NDA to the point where I couldn’t discuss any details about the technology we were working with, let alone the day-to-day. We were in a continual state of slipping behind; always pushing back against management in an attempt to stop incurring technical debt, and always being rebuffed. It was a vicious cycle that I fed into by being willing to work extreme hours at the cost of my own mental and physical health — which only served to embolden upper management as they saw that we were capable of “working miracles”.

During this time of working long hours and fighting to keep RSI at bay, my motivation to work on personal projects was at an all-time low. I released the odd update for Glide but besides that, I did very little coding at home. Not only was I unable to write about my professional work, but my passion projects were so neglected that there was nothing to write about in the first place.

Something had to fill the gap left by my hobby programming, and by happy coincidence I had begun studying Japanese around the same time that I started my job. I made lots of missteps the first two years (more on that in a later post), but at around the two-year mark I had a breakthrough and started reading extensively, which turned out to be incredibly effective. I’ve been part of a reading club for over a year now (and have submitted a reading report every single week), but when I tried to crosspost my reports here, I found that my ancient WordPress install was still using a latin database charset and everything I typed would show up as ????????. Unwilling to risk losing my existing posts, I left it alone.

Last night I bit the bullet, nuked my entire website and reinstalled WordPress fresh. Fortunately my posts imported without issue (though some media references are still broken).

Since leaving my job I’ve had a lot of free time to work on personal projects; watch this space more details on that front. And with a shiny new database that supports non-latin characters, I should have a lot more freedom to write about what’s been going on with my life lately.

これからも、よろしくお願いします

Glide update: Tween overwriting

I’ve just added support for property overwriting to Glide, my Tweening engine for C#. This functionality exists in Actuate (a great Haxe library from which I’ve taken a lot of inspiration) and I’ve wanted it in Glide for a while now because it’s just so darn handy.

Imagine you start a tween off on its way:

// move image to (100, 200) over five seconds
Tweener.Tween(image, new { X = 100, Y = 200 }, 5);

…but then something changes, and now you want your image to travel instead to (X = 500) instead, and it should only take two seconds:

Tweener.Tween(image, new {X = 500}, 2);

At first this will work fine, but when the second tween finishes, suddenly the first one takes precedence again and your image will keep moving towards (X = 100). You could cancel the first tween, but that would also cancel the movement towards (Y = 200).

Now, creating a new Tween on an object that’s already being tweened will cancel the movement of any properties that are currently being tracked. In the example above, the new X tween would overwrite the old one, the original Y tween would keep on working, and there’s no need to manually cancel anything.

The old behavior is still available; just pass false to the overwrite parameter. I’m pretty sure that won’t be necessary in the majority of cases, but it does exist if you want it.

What are we up to?

It’s been a while since I last posted on here, so I wanted to give a short update on what’s been going on since we released Baseborn.

Chris and I are both participating in OneGameAMonth, and have each released a few games this year already; Scattered Song, Humphrey’s Tiny Adventure: Remastered, and Must’ve been Rats, a game jam project with our friend Paul Ouellette. I also participated in December’s Experimental Gameplay challenge, and my entry was reviewed by Indie Impressions. and IndieStatik. Having one of my games reviewed was quite a milestone for me, and I’m quite pleased with the reception it recieved.

We’re deep in preproduction for our next game, and I’m hard at work on our new engine, which is coming along really well so far. I’ve found that working on small side projects every now and then is a great way to keep motivated on a larger one, so my monthly game jams have actually increased my productivity while working on the engine. We’ll be officially announcing our next game as soon as we have something to show off.

 

Baseborn released!

I’m very pleased to be able to announce that Baseborn (formerly “codename Ifrit”) is finally out of beta and has hit its first release. Thanks to all of you who tested the game back in January, we were able to squash a ton of bugs and add some new features, including a complete overhaul of the AI, a remastered soundtrack, new physics and effects for weapons, and the ability to restart the game at any time.

Perhaps the most important change is that it’s no longer necessary to download a specific version of the game if you’re a Mac or Linux user; thanks to the most recent version of FLAKit we can bundle the whole game into a single file and run it on any computer through a web page. This should also allow the game to run on computers that aren’t supported by Adobe’s flash projector, like PowerPC Macs.

If you missed it, we ran a series of posts during the last week that went into detail on various aspects of Baseborn’s development process.  You can find them here:

You can download the most recent version of the game here, and the source code is available on the project repository. We hope you enjoy the game!

This post was imported from the now-defunct thaumaturgistgames.com; urls have been updated to suit.