Showing posts with label eileen-iii. Show all posts
Showing posts with label eileen-iii. Show all posts

Sunday, June 22, 2025

Week Made Me Weak

Man, that was rough. Be prepared---this is going to be the theme for the foreseeable future.

I mentioned that I was on observation duty. The good news is that the ophthalmologist agrees, and wanted to see me again in three weeks. I counter-offered with two instead, and so that will be it. The neutral news is that I'm still on observation duty, but at least I'm out of the most dangerous period for now, and it ought to be a nothingburger soon enough.

Two other things happened as well; one of them is work-related, the other is family-related. For the work-related, just know that it is bureaucracy-related, and is just plain annoying. For the family-related, it involves not-me, and it's more tiring with some light uncooperativeness with not-me, and the doctors calling at odd hours to the apartment for updates on status. I am not directly handling this bit, but I am getting exhausted being the brains of the outfit, keeping track of information from the doctors, and making sense of the technical terms they are saying in order to provide the necessary reassurances and advice to the rest of the family.

I'm tired from both, and that's all I want to talk about them.

I've also finally done the final processing needed to return my personal equipment from the SAF due to my reaching my statutary age. That... took a while. The alibaba bag of stuff is heavy, and had to be extracted from the deeper part of my storage area. At the same time, I took the opportunity to clean out the dust that had accumulated on the exhaust fan and grill, as well as to get rid of the three music instrument-like objects (one guitar that I never use that has unknown provenance, and two saxophones that could never be re-sold). The bin out at SAFRA Punggol for the disposal was another bugbear, like a final challenge to see if one was truly a former NSMan---the hopper was high up, and opened up to a height that was higher than my shoulders, necessitating an over-the-shoulder lift of the heavy alibaba bag in order to feed it in. But it was dealt with without any new injuries, which means that this part of my life is now truly over.

Time to segue to other things.

------

Juufuutei Raden's Guide for Pixel Museum is a very fun official Picross game by Jupiter Corporation with hololive Production's Juufuutei Raden voice-acting in it. The premise uses Raden's museum curator background to provide nonogram puzzles around various museum-related art themes. The puzzles are fun, Raden's explanations of the significance of the art that the puzzles are based on are instructive (she voice acts in Japanese, with subtitles in English), and for about SGD20.00, it's a fair price.

Love it.

------

I'm back in playthrough three of Cyberpunk 2077, this time opting for a Male-Streetkid V and going for a Netrunner-esque build. Like the other two playthroughs, the tech-tree has drastically changed, and eventually I'll be in the DLC space of Phantom Liberty. Clothes are primarily for looks, with very modest statistics improvements, with the bulk of such things (like reload speed, armour, and the like) being provided for by Cyberware instead. Night City feels a bit different from before, and with the new transformer-architecture DLSS, the frames are smoother still even though I haven't really moved on from Eileen-III just yet.

------

Microsoft recently released their homage to the venerable edit.com from the MS-DOS era with the Rust-rewritten version of Edit. I tried the first version, and it sucked hard with very broken dialogue box semantics (it was clear the author did not live through that era of Text-based UI elements). The current version as at writing, 1.2, isn't too bad, and is quite an upgrade from old school edit.com. With Notepad getting fitted with increasingly useless amounts of unwanted and uncalled for features (like seriously, who asked for ``copilot'' and formatting?!), and the removal of the under-used Wordpad (most people just go straight for MSWord, or LibreOffice Writer on a new machine anyway), the new homage version of Edit seems like a much better replacement.

It works well in the terminal, handling UTF-8 like a champ, and works with terminals of various geometries. My only true complaint is the waste of space on the left margin for the line numbers (in my arrogant opinion, a simple integer on the status bar to indicate what line number one is on is a better use of screen real estate), and perhaps a trifling coent on the inability to customise the colours. Other than that, Edit is a solid recommendation now.

Does this mean that I abandon Vim? Nah... Vim is still my workhorse text editor---hjkl navigation is still unbeatable from a muscle memory perspective.

------

As a result of what happened throughout the week, I find myself utterly drained. I try to get sleep, and usually got enough of it in hours, but the quality is quite suspicious. Combining that with the inability to get enough sunlight/sweat from cycling due to having to avoid jarring my eyeballs, I just ran out of spoons.

And so, tomorrow is yet another ``mental well-being day'' type leave that I take, just to go out there and sweat it out through walking in the sun for a long distance, to get the heart pumping, the muscles moving, and the sweat pouring.

Hopefully that will give some life back into me. There are other [dark] thoughts flowing through me, but I don't think I'm ready to face them now, let alone talk about them publicly here.

Till the next update.

Monday, June 09, 2025

I am on Observation Duty

(sigh)

It's official---I am on observation duty.

It was supposed to be a day where I would laze about, figuring out what to do on this off-in-lieu that I took on a whim because I didn't want to have too many leaves to clear. I woke up, and when I moved my eyes, I saw flashes of light at the peripheries of the lower left quadrant and upper right quadrant of my left eye.

Uh-oh.

See, I've been a high myope (defined as having <−6.00 dioptres of refraction error), which is a high risk factor for retinal detachment, a non-lethal but sure-as-hell-will-fuck-up-your-quality-of-life condition. Combine that with age and the symptoms (not going to link to it directly---just read off the Wikipedia page), I was suitably concerned.

I dallied a little, wondering if it was something intermittent. I chilled out in front of Eileen-III, thinking about what to have for dinner, and when it was nearer the middle of the day, decided to do a quick check on the light flashing situation---I could replicate it, easily.

Uh-oh.

I knew something was up, and brain kicked into overdrive. I was told before to seek immediate medical attention when I saw these symptoms (and was ready for it), but never quite worked out where to head to for this.

General Practitioners would be useless since they don't have the slit lamp that was necessary to accurately see what was going on at the back of my eyeball, and the Emergency Department felt a little too overkill for what I deemed to be Urgent Care at most (I was not actively going blind in the eye, and was thus not an emergency). Calling SNEC put me on hold for too long, and HealthHub told me that they'd get back to me with an appointment in two working days---mind you, it wasn't an appointment in two working days, but the notice of an appointment in two working days.

(sigh)

I ended up back to where I last went more than a decade ago for eye issues---Eastern Hougang Eye Specialist. I went as a walk-in, had my basic eye performance measured out, pupils dilated, and waited for more than an hour (out of the projected three) before I was looked at by the doctor.

Age-related posterior virtreous detachment. Apparently, apart from the increased risk of being a high myope, that I had shitty skin contributed to an increase in risk too, leading to today's episode and eventual diagnosis. Lattice degeneration was not sighted, and prognosis is good.

Generally, we're on official observation duty for the next six to eight weeks to watch out for any retinal tears that come from the shrinking of the vitreous humour due to age-related degeneration, so that we can fix them up pronto before it gets into retinal detachment territory.

The risk of any nonsense happening is highest in this first week, and thus my vigilance for anything novel beyond the new baseline set this morning. More importantly, I know where to head to when things go south---back to the doctor at Eastern Hougang Eye Specialist.

There is nothing else to be done other than observing if any repairs to retinal tears are needed---the general idea is that after the six to eight weeks, the vitreous humour would have stabilised to its new shape/size, thus reducing the amount of mechanical stimulation it is doing to the retina when it jiggles in the loosened up space.

Am I afraid? Not really. As I said, this is something that I had been told would happen a long time ago, and so, I'm quite prepared for it from most fronts, except for the ``how the hell do I kickstart the process'' bit that has since been resolved. That bit on eczema raising the risk factor was the only new thing that didn't know about, but it does make some sense---the origin cells for the retina are similar to that of the epidermis, the very same layer [of cells] that I am having shit-tier inflammation control over.

Meanwhile, nothing that involves knocking the vitreous humour about within my eyeball during this period for me.

And I need to find a new day to clear that off-in-lieu, now that I have a medical certificate to cover for today. 🤦‍♂️

Hopefully, the next visit is next week as planned, and not earlier because something stupid has happened in between.

Till the next update.

Saturday, May 31, 2025

Big Badda Bang of Words

Ah... end of the week. Final-fucking-ly. The week has been long, for a variety of reasons that I will not go into, because it is (1) boring for most people; and (2) involves too any ``other people'' that it really isn't about me any more.

Instead, let's talk about some accumulated things that I had done.

Not too long ago, I learnt about some new HTTP headers needed for security, along with an online tool to test them. The idea behind these ``security headers'' is to provide server-centric instructions to the client browser to ``know'' what kinds of content (static or executable) are to be considered legitimate from the perspective of the server that the client is connecting to. This is the missing information link that is needed to prevent the class of exploits that starts with a man-in-the-middle (MITM) attack, which includes drive-by malware downloads, page hijacking to siphon off user input (and therefore information). It is an explicit white-list to the client on what the server knows as resources/actions that it needs that the client should pay attention to, ignoring/stopping any that do not follow that whitelist.

Intrigued, I tried setting it up on my personal domain. The HTTP headers were created in a no-brainer way, but the behaviours that they created... broke lots of things.

For starters, there is now a strict segregation of the presentation layer (i.e. the HTML and CSS stuff) from the controller layer (i.e. any executable code, often in the form of JavaScript). One can no longer use the on* family of attributes within the HTML tags to create callbacks for specific actions (notably in my case, the onClick, onChange, and onLoad actions).

That broke enough stuff that I had to rewrite my website to do that, and boy did that take a while.

Also, even in the presentation layer, there was a strict enforcement of splitting out the semi-structured layer from the styling layer (i.e. HTML files cannot have embedded CSS styles, no matter how small, nor when they were inserted (like in original HTML file, or as part of some DOM-tree shenanigans)). It wasn't difficult; it was more annoying than anything else.

But after all that effort, my website works well now, and you can verify the Security Headers with the link.

The eagle-eyed will notice that the new pages no longer have referrals to the CSS/HTML validation links. That's because one of the security headers basically blocks the passing of the forwarding page's URL to the forwarded to URL, which made such validation links impossible to operate in the client browser.

My chief constraint is that I have very little control over how to configure the website server program, so I had to do what I had to do just to keep the 'net gatekeepers happy. Like how I ended up creating a damn sitemap, and having to do up an entire toolchain that minifies and GZips individual pages, all because the damn gatekeeprs of the 'net these days state that all websites are clearly meant for machine-to-machine communication, so the sources of the pages themselves should be mangled for efficient machine-to-machine communication, as opposed to something that is human readable (and therefore learnable from).

Man, the ways of the 'net have changed drastically over the past 25 years.

------

I have the ESV Study Bible in hard copy for a few years now, and have wanted to grind through it slowly but surely as part of my own education on my faith. It's not my first time through the Bible (according to my own loose tracking, I've covered the Bible end-to-end two full times by now). But one of the biggest problems was that the book was an inch thick, and has terrible portability, despite it being the ``personal edition'' and having the general dimensions (not counting the thickness) of an A5 sheet of paper.

An e-book version would work wonders on the portability front.

Crossway has it. Unfortunately, it is terrible to use.

You see, unlike the deadtree version where the ESV text sits in the upper half of the page, and the extensive study notes sit as end notes in the bottom half, the official e-book version treats it like a hypertext document with oversized text, where the footnotes are replaced with links that jump to a completely different part of the binary file, and after a few such jumps, being lost becomes the regular state of things, made worse by being on an e-reader like the Kindle [Colorsoft].

In short, the official e-book sucks.

I had been patiently looking to see if there was a version of the ESV Study Bible that was just a straightforward digitisation of the printed version, with all the information where they are, without having to jump all over the place like a punch drunk monkey.

Let's just say my patience paid off and I got ahold of such a version. There was a problem with the images that made up each scanned page---there was a very strong unsaturated red tinge that made the text contrast terrible.

Ignoring lots of [necessary] intermediate steps, I managed to fix the contrast problem at the image level with the following ImageMagick miniscript/command:
find -type f -iname '*.jpg' \
  -exec magick {} -separate -contrast-stretch 0.5%x66% \
  -combine {}_out.jpg \;
So what this does is that it uses the find command to locate all the image files, and then apply the ``auto-leveller'' on each channel separately, allowing up to 0.5% of the pixels to go ``black'', and up to 66% of the pixels to go ``white''. The 66% is empirically determined through checking the output---the idea is that we want the ``background'' colour of the page to have its unsaturated red plus bleedthrough from the other side's text to ``go away'' (the actual paper is thin enough that there is some bleedthrough in real-life, which of course meant that the scan would yield the same problem, decreasing legibility).

I had tried ImageMagick's -auto-level option before, but it did nothing to the contrast. Using the alternative of
magick {} -colorspace Lab -channel 0 \
  -auto-level +channel -colorspace sRGB {}_out.jpg
brightened the contrast, but did not remove the unsaturated red tinge much. It was only after applying the final incantation I specified in the beginning that I saw results.

And the results were dramatic (I'm not showing them here for obvious reasons), and after running the images through an older version of KCC (I used 7.2.0 instead of whatever is there now because the 7.3.x series broke many things), I had something that worked wonderfully on Eirian-VI, my Kindle Colorsoft. In this case, I needed the colour ability of Eirian-VI since colour is used quite extensively as highlights, and for specific diagrams/illustrations within the ESV Study Bible to explain core concepts.

I said that I left out some necessary intermediate steps. They weren't the focus of this discovery, but were needed because magick could not work on the source file directly to generate the type of output needed. I used an updated version of pypdf that needed pillow, which demanded that one does not update one's Cygwin Python3 installation to 3.12, because it messes the hell out of the dependency availability from the mish-mash of libraries under the default 3.9 and newer 3.12.

------

The stupid thing I bought finally showed up yesterday. It was, as they say in Chinese, 又贵又重. Shipping was a bitch, and product delivery took a while.

But it finally arrived.

First impressions: yep, it is as it says on the box---a fucking heavy cup. To ensure that it could have the 10 kg mass, the cup's diameter was large enough to quality as a mug, but its depth was shallow enough that the total volume was still cup-sized. In essence, it was like a bowl with a really extended and heavy-af bassbase. I currently cannot lift it one-handed, and am not expected to do this any time soon. I can also see a litany of overuse injuries in the near future as my deltoids and parts of my pectorals get continually hurt from moving this even as they are healing from their own weakness.

It was as stupid as it gets, and I love it.

I also got the 0.5 lb stainless steel shotglasses (are they still considered shotglasses despite being made of not-glass?), originally three (one for me, two for CP/Elain), but they upped it to four when my order was delayed enough that they graciously upgraded it to their 4-for-3 promotion.

That shotglass(?) felt nice to hold and drink from. There was no ``metallic'' flavour that one might think something like this would have, but then again, after having eaten out of stainless steel plates and cutlery, there was never a real ``metallic'' flavour to begin with.

For both, I would suggest scrubbing the interior a little more thoroughly before using them as a matter of course.

------

I watch lots of VTubers, so many to the point that 8 regular hours a day cannot be enough. So I watch them at 2.5× speed, which is a speed that the observant will realise to be impossible from both the network bandwidth, and web-client viewer perspective.

The answer is yt-dlp. That's all I'll say about this part.

The other parts start with the statement that for the sake of my network, I don't usually need to watch things at 1080+p, for the reason that the video often runs on the vertically aligned screen.

This means that the maximum width of the video that I will be watching, tends to be limited by 1080 px horizontally.

Mathing it with the usual 16:9 ratio of today, this works out to something like 608 px vertically.

YouTube doesn't have anything at 608p, but they do have 480p, which is the resolution that I often watch my videos in. Automatically upscaling it in VLC media player has some blurriness, but throwing in small amount of sharpen filter, it works well enough.

That is, until the game that the VTuber is playing has lots of words (not a secret: am referring to Blue Prince). The encoding at 480p from YouTube tends not to do well with text, and it was getting a little... more frustrating to follow.

The magic is to recode it to 480p using better settings than whatever was used when YouTube was transcoding the source to the different bitrates.

The incantation used looks like:
ffmpeg -i inputfile \
  -vf "scale=-1:480" -c:v h264_nvenc -crf 23 \
  -c:a copy \
  outputfile_480p.mp4
The only reason why I thought this was viable was that the encoder could make use of the NVIDIA graphics card that Eileen-III had (RTX 4090). I didn't try to encode without the h264_nvenc option, seeing that using it meant that it still took time to re-encode the video part.

``Why not just use the source resolution/bit rate and downsample?''

Well... it's slow and doesn't do as good a job as re-encoding. There's also the side issue of avoiding the integrated graphics card [doing the decoding when I'm watching it] from grinding through too many pixels only to discard more than two thirds of them to fit into 1080×608, and end up with a blurry mess due to the lack of access to the kinds of advanced filters that re-encoding can provide.

------

The last thing to bitchtalk about is the trend of ``oh if you see em-dashes in a text, it is 100% AI generated''. Related to that is ``if the AI detector detects that a paragraph of text is AI generated, it is 100% correct''.

On item 1, that's just a lazy way of looking at things. I mean, come on---if you look at this blog, almost all my posts have em-dashes rendered in. I use them extensively, though to be fair, I don't actually type the emdash as is---I type it out LaTeX style as ---, and rely on my pretty-printer to render it as an em-dash.

Which segues into item 2. It seems that ``AI detectors'' these days seem better at estimating the quality of a piece of writing with respect to grammar and diction than to truly ``detect'' the use of [generative] AI.

What I am trying to get at is, just because ``you'' suck at writing doesn't mean that any piece of writing that doesn't suck is ``generative AI'' just because ``you'' cannot write well enough. And if life in the modern world is anything to live by, is that anyone who points fingers and claims that someone else is displaying the qualities consistent with some thing of meta-variable-X, it is more likely than not a projection of the accuser who actually is the thing of meta-variable-X.

And that's about it for this update. Till the next one.

Sunday, March 30, 2025

Flow

And so, the end is near---

Wait, this is not a lyric post. Anyway, I just completed yet another performance with the King's Flute Choir today, this time as a guest player on The Big Flute for a concert under the Emerging Flutists programme. And now, after everything is over, I sit in front of Eileen-III, contemplating about how I'm intending to spend my day for tomorrow's public holiday, and hitting upon a rather simple question.

Why is it that we perform music in front of a live audience?

I mean, for many (not necessarily of the King's Flute Choir), it's their livelihood as entertainers/musicians. But what about us hobbyists, the kind who spend lots of money on gear, lessons, travel, just so that we can perform in front of a live audience?

I think I might have found an answer: the addiction to the feeling of being in a flow state.

For those who are unfamiliar, the ``flow state'' is a moment where one is simultaneously hyper-focused yet hyper-relaxed, with information coming in fast and furious, yet without any form of chaos, as though one is, at that moment, literally One With The Universe, with near omnipotence, capable of handling anything and everything that is coming in, and to deliver the necessary actions/activities/outcomes that go out, all without falling into fear, uncertainty and doubt. One is ``in the moment'', yet with enough cognizance to have an objective perspective on all that is happening, and thus keeping the ability to make quick and accurate decisions even as the rest of the self continues on with the actions that are needed within the flow state itself.

``MT, you sound like you're high.''

No, I'm not; it's hard to explain without using metaphors. It is one of those things that one must experience at least once in their lives, and hopefully be able to regain that feeling in the future when the stakes are high enough, just so that the outward outcomes are not jeopardise by fear, uncertainty, or doubt.

More concretely, I find that when I am playing on my musical instrument on stage and in front of a live audience, I tend to be in the flow state, which leads to outcomes that are better than what I might expect.

And I felt that today, with some verbal confirmation from a third party too. There are a couple of pieces in the setlist that required one to do flute beatboxing, something that I had (1) never done before, and (2) found it quite hard to pull off on The Big Flute due to the need for even more breath to cover for the larger inner diameter. Throughout all the rehearsals, and even during my own practices, I just couldn't do it well enough to sound, let alone be ``correct''. It was to the point that I had to work something out with one of the other players to help with the percussive beatboxing sounds on the regular concert flute.

Yet at the actual concert, somehow I managed to scrabble through, as was the other bass flute player. That player who was helping us with the additional beatboxing support was the one who pointed out that it was the first time that he had managed to hear the beatboxing stuff from the bass-line flutes.

And I know that it was due to being the flow state because if you asked me to replicate it right now, just after the concert, I would likely fail.

Now that we have ``flow state'' defined and understood, let me explain why it is an addictive feeling.

To paraphrase from 《巨婴国》 again, all of us have an innate omnipotent narcissism that some of us eventually learn to acknowledge and tame, bringing us the kind of psychological stability that makes us appear the more matured one. Many of us don't really learn about this, and end up being the kind of self-entitled jerk that everyone loves to hate on the 'net.

But who can blame the for not wanting to acknowledge and tame this innate omnipotent narcissism? It's seductive, it makes one feel powerful. But it is also very unhealthy in the long run, since it becomes the default state of being, which can contradict what the real world may have to offer in return.

Conversely, acknowledging that omnipotent narcissism, and then correcting one's behaviour to avoid triggering that means that one is more comfortable with the world's non-determinism. But acknowledgement and taming is not the same as complete nullification---latent remnants still exist, and as something from the Id, it has a tendency to continuously lurk in the parts of the mind that we aren't paying too much attention to.

Which is why when one is in the flow state, it becomes addictive. Because it is a safe way to satisfy that latent omnipotent narcissism without the negative effects. It is a type of power that is summoned only on occasion, and is therefore considered superior in terms of reactions compared to just living out the omnipotent narcissism fantasy.

But that said, being in flow state from performing on stage and in front of a live audience is not the same as being attention-seeking---the flow state describes an internal state of being of the person, which does not deal with the externalities directly. Thus, when one is in a flow state, one might not even notice the audience, especially if they are the passive sort and are therefore irrelevant anyway. By nature, attention-seeking demands an active audience, and with that, the need to use feedback loops to control one's behaviour to control that of the audience.

And I think that's about it for now. I'm tired---playing The Big Flute ``seriously'' has a tendency of knocking me out because of the need for deep belly-level breathing, which causes too much relaxation despite the obvious efforts needed to actually perform on the music instruments.

Till the next update then.

Thursday, January 23, 2025

The Last Two Days were Nice

When one was younger, and was involved in some humanities class that is teaching history, one had the tendency to be downright indignant at the people of the time for ``not standing up against the obvious bad thing that is happening'' which eventually led into the story arc that made its way into the history books as a lesson to learn.

Sadly, now, no matter where we are, these same young people are experiencing first hand why they could not stand up against the obvious bad thing that is happening.

And this is also where I must admit that even though I say that I do not fear death, it turns out that I do after all. For if I truly do not fear death, and have that sense of commitment that I claimed, then truly nothing will stop me from ever doing the right thing, be it standing up against the injustices, fighting the hypocrites, or spreading the Lord's Word in literal godforsaken places.

Yet here I am still, in SIN city, sitting in front of Eileen-III, typing out this entry.

So we've established that the phrase ``I do not fear death'' is one conditioned upon ``within my current circumstances and not universally''. While sounding hypocritical, I think the ordinary person would not find it problematic as it has some resonance with the human condition---hardly anyone expects anybody to literally abandon their own lives to take radical actions.

God's standards are higher, so in view of that, I shall refrain from making such a claim any more. I fear death in a universal perspective, but within the context of where I am existing right now, I am unafraid, because there really isn't much chance for me to just die ``for no good reason''.

Anyway, whatever happens wherever we are, we will be judged by the young of the future for ``not standing up against the obvious bad thing that is happening'', despite having all the lessons that we ought to have learnt by now from the past that had already occurred.

May God have mercy on our souls.

------

In other news, I had a very lovely two days for yesterday and the day before. I'll try to go chronologically from memory.

The plan for Tuesday was to head out to somewhere a bit frou-frou like The BOOK Cafe to read Aaron A. Reed's 50 Years of Text Games: From Oregon Trail to AI Dungeon in its full hardcover glory (I do have the soft copy as part of the original Kickstarter(?) support---but reading the hardcover version is definitely a treat)). But it required me to make my way downtown, into a location that Google was suggesting to be rather busy at the time that I was intending to be there (around 11 o'clock).

What actually happened then was that I made my way to Great World instead. It was on the TEL, and was formerly ``Great World City'', and used to be the least likely to be visited mall by me in forever just due to how inaccessible it was before the TEL was a thing.

``MT, why Great World? It doesn't fit that frou-frou concept you had in mind!''

So this is where I reveal the ``i'm-forty-bitches'' checklist:
  • Read/high tea with 50 Years of Text Games;
  • Long walk;
  • Long cycle;
  • Pecan pie from Windowsill [pies];
  • Cat and the Fiddle cheesecake;
  • Buy mobo and CPU for Ma's computer; and
  • Fancy sushi at [REDACTED].
Great World checked off Windowsill pies since they had a branch there. It also had what I hoped to be enough frou-frou cafe places that could fulfil the ``read/high tea'' part, without actually doing high tea.

Spoiler: I had to switch out ``high tea'' when I realised that most of the high tea places were for two people (I was only one), and the one that could handle one (from Pan Pacific Hotel) had a hard time limit of 2 hours per session, which wasn't quite what I was expecting for a leisurely read.

And so Great World I went! I had Grasshopper Mint Chocolate instead of Pecan just for variety, knowing that I would be getting at least one for this year's π-day. Brunch was aptly consumed at the Collin's there, and that was also where I cracked open the hardcover 50 Years of Text Games. After that, I roamed about the mall itself, just to soak in the environment, including a stop-and-gape moment at ``The Whisky Distillery'' just to see the four-digit and five-digit whiskys that were there.

After all that, I decided to head out to Somerset station, partly because I wanted to check off ``long walk'', and partly because I wanted to get to a much more accessible location to head towards MusicGear in the late afternoon/evening to hang out with the crew there. There was an inconsequential drizzle as I walked the kilometre or so distance, and stopped by a genuine frou-frou coffee place called Lucine by LUNA, where I got a cup of ``dirty coffee''.

The barista explained it to me, I cannot remember what she said, but I think it's primarily a coffee floating on top of some milk. Don't ask too many questions.

I sat there and read more 50 Years of Text Games even as the trio of salarymen sitting at the table over were talking this and that about markets, marketing strategy, women, working in other countries, and other sundry that a techie like me didn't care too much about. The coffee was nice, the ceiling was high, the room was spacious, but the damn place where it was located in (111 Somerset) was pretty dead by my reckoning.

Aaaaaaaaaanyway, I eventually made my way to 313@Somerset to have some fancy Premium Char Siu Truffle Shoyu Soba from Tsuta.

It tasted fucking amazing. I had a Kirin beer there too, and read even more of 50 Years of Text Games (seeing a theme yet?). The only thing that marred the moment was the leg-shaking bugger in the booth diagonally from me---the benches are coupled, so when the idiot shook her legs, it vibrated the shit out of the bench. I was annoyed enough at some point when I just violently rocked it in retaliation.

Of course they won't give a shit---idiots rarely do. But I got my venting, so that was perhaps fine?

After that, I headed out to MusicGear to hang out with the crew, but learnt that apart from Hanwei and Kristin(?), everyone else was out supporting an event, and wouldn't be around for the week.

Ah well.

------

Yesterday started off bright and early enough for me; it was the day proper after all! I headed off to [REDACTED] for my fancy sushi, and after that, headed out to Marina Square for a look-see.

I then headed out to Suntec City for more walking, and found that Victorinox had a branch there. That got me excited---ever since the old Planet Traveller(?) place closed down, I couldn't find any official Victorinox spare parts dealer any more (not springs---I personally have a kit that had the replacements for the entire Victorinox line, complete with jig and tools to do the replacement; thank you past-MT for spending the nearly USD150 on it). I am down to my last Manager (now renamed to Rambler, which doesn't have a pen (important note to future-MT)), and am looking to see what the next replacement might be when this one gets sufficiently damaged to take out of circulation. The Midnite Manager looks good, but I didn't buy it because I don't trust the batteries of the LED---electronics don't really keep long, even with the best of care, due to the shitty humidity that exists out here in SIN city.

There really isn't much else to talk about for this leg in terms of what I saw/do, since it was just a near aimless ramble walking intermixed with reading more 50 Years of Text Games, before finally returning home to watch VODs of AGDQ 2025.

What I didn't say was how during the last two days, I was never without my slim hipflask that was filled with Glenfiddich 15 years whisky. I was swigging it every now and then, even as I was making my way around.

I refuse to go through this entire week completely sober, and it was glorious.

The other thing I didn't say was how my care group folks dropped me notes of birthday wishes, as well as the music ministry coordinator, and also Chara. That last one was unexpected, but it was nice to be remembered, I suppose.

And I think I've rambled on enough. My other-sister has planned a dinner celebration today, and I have to make some other plans to finish up Ma's computer build (I bought a cheap 32 GB thumbdrive and successfully configured it in Rufus), as well as to finish up the last couple of items in my ``i'm-forty-bitches'' list, among other things.

``Oi, MT, what about that long cycle?''

We'll see. It's just a list---if I can complete it, hallelujah! Otherwise, it's still fine.

I still had a nice few days. (=

Friday, November 01, 2024

No-vem-ber?

It is now November. The astute among yinz would ask me what is this year's NaNoWriMo entry title/topic.

And my answer is simply: I'm not taking part in NaNoWriMo this year.

I mean, check it out: 15 NaNoWriMo entries says something. I'm not burnt out on writing, but rather, a couple of things come to mind as to why I am not participating this year.

Firstly, I just have too many other things to do this time round. I'm playing with the King's Flute Choir again, this time for the flute choir concert at the Autumn Flute Fair 2024. I'm playing on my recently acquired contrabass flute in C called ``The Big Flute'' (yeah yeah... imaginative name). The Big Flute is unlike any other flutes that I have played so far---it is by far, the largest flute with a total length of about 2.73 m shaped like a 4, with an inner diameter that tapers off from 49.62 mm. In short, I needed time to both rehearse the contrabass flute parts, as well as to get used to the different embouchure, breathing, and fingering positions over the large vertically oriented flute.

Secondly, the organisation running NaNoWriMo itself was getting too damn weird and offputting. NaNoWrio's AI policy was controversial, and the next most recent not-so-nothingburger was the aftermath of some serious child grooming scandal. Something of an older vintage was the messed up web design update that happened a few years ago that broke many things, among which was the loss of almost all of one's writing buddies.

It also probably did not help that the municipal liaisons for SIN city have stepped down for their own reasons.

I say that NaNoWriMo was getting too damn weird due to the slow and steady evolution of what was a very clear [but dumb] idea of ``here's thirty days of November, here's a word count goal of fifty thousand words---go!'' into some general writing programme for young writers in the US while still maintaining some kind of international presence, with some rather vocal self-declared leftists turfing out their own fiefdoms of safe-spaces within the forums themselves. I'm all for being inclusive, but I do not necessarily subscribe to the metaphorical carving of feudal lands in what was essentially an open agora in the first place. I resent the hypocrisy of alleged inclusion through the use of identity politics---if you want some safe space for your kind of people, maybe do it elsewhere, and not carve up the public space and practise the hypocrisy of accusing others of being discriminative while practising discrimination on their own.

Thankfully I was never in a position in NaNoWriMo where I had to worry about that---I stick primarily to the regional forum and stay far, far away from the places where the hypocrites lurk---but I cannot help but notice that their sheer vocal loudness was definitely shifting the overall tone of NaNoWriMo itself.

NaNoWriMo was always about reaching the fifty thousand words within the month of November---it was never about what was written. Even the word count tool, when it was still around, did nothing about reading the contents except to count the literal number of words through counting the number of whitespace segments in between the words. So why would anyone care if someone's NaNoWriMo story was some racist diatribe, or if someone wanted a white male as their protagonist with nary a female in sight, or if their writing of the behaviour of the woman in the story was close to some messed up erotica than what a ``real and normal woman'' is?

So yeah, NaNoWriMo was getting weird and offputting.

Will I get back to it next year? Who knows---let me survive my upcoming birthday first, then we talk.

------

In other news, Cookie Clicker. This has been running almost continuously in the background of Eileen-III for the past two or three weeks. Big numbers with big names for big numbers are always fun.

And then, there's Persona 5 Royal that I have been playing after work. It... reminds me too much of the time when I was still studying. Cleared three Palaces, and there are more to go.

I'd keep writing more, but then I realised we're past stupid o'clock. I'm on leave tomorrow (or rather, today), so it's not that big a deal, even though I really want to catch up on sleep.

And thus, adieu.

Monday, September 16, 2024

QCUE Pairing Issues Resolved?

That was... harrowing.

tl;dr: If QCUE isn't willing to pair via Bluetooth, even after factory resetting, then the only way out is to drain the batteries of the two earbuds completely, shove them one by one into the case to check for connectivity, before trying to pair again through the ``normal process'' of holding the back button with the case open till the blue-light blinks.

Context: I bought me some Bose QuietComfort Ultra Earbuds (QCUE) a few months back on a whim to replace the now-broken third pair of the Bose QuietComfort 20 noise cancelling in-ear headphones (QC20). The key difference was that the new QCUE were wireless, as compared to the QC20.

The reason why I said ``on a whim'' was because I already lug around a QuietComfort 35 Wireless Headphones II (QC35II) to replace the QC20, which is wireless and does its job well. Except for the fact that in SIN city, the high humidity and high temperature meant that wearing these over-the-ears headphones for long periods of time was... uncomfortable at best. I still use these for all the various teleconferencing meetings due to the excellent sound isolation (we used to call 'em ``Skyping'' back in the day), but very rarely use them for casual music listening on the go.

And thus, the QCUE is a thing now.

I recently switched phones to the Xiaomi 14 from my Xiaomi 12. Had I a choice, I wouldn't even bother, but since the replacement of the non-working screen of my Xiaomi 12 back in late 2024-06 (was it only less than 3 months ago?!), I knew that the days of my Xiaomi 12 was numbered. Thanks to the myriad of 2FA and other ``app-fication'', the stupid ``smartphone'' has become a piece of critical equipment. As for my Xiaomi 12, the rear-backing was starting to show signs of the glue [from the repair] failing, and I did not want to repeat the same scramble for a fix, this time from potentially greater failure.

And so I went to get that replacement.

``MT, you're long-winded--get to the point!''

I'm getting there. I migrated the information and apps from Xiaomi 12 to Xiaomi 14 (bye bye Geocache Calculator and Barcode Scanner, no thanks to Android 14 and beyond auto-blocking apps targeting old-enough versions of Android).

And then I tried to reconnect my QCUE. Which was what prompted the first statement.

I tried everything---clearing all the Bluetooth lists, resetting the QCUE, resetting the phone's network connections, factory resetting the QCUE, re-do all the steps a few more times.

It didn't work.

That is, until I saw this innocuous comment:
I got the same issue and got to fix it by draining the whole battery of the earbuds, waiting about half an hour more and then charging them again

---Tyras25
Well, that's the one thing I hadn't tried, and so I left out my QCUE for a day and change. It took much longer due to not having any existing connection to tap into to drain the power faster.

And when I finally found that both earbuds are completely drained of power (can tell because the welcome ``vrroomsh'' sound was missing when the earbud was applied to the ear), I pencilled the three contact points per earbud, and put each earbud one at a time into the case, to ensure that it was in good contact before putting in the next.

Then I applied the pairing process with my Xiaomi 14.

Whaddaya know. The pairing was successful!

I did the same for Eileen-III, same.

Now, I still need to verify that the QCUE can actually receive the sound signals, but I cannot do that just yet due to the earbuds being completely drained of power.

But having the pairing working is already a great win.

As a side note, there was also an unknown BT 600 device ID that was emitted by my QCUE---I wonder if this is significant in any way about why the pairing was jank.

And apart from the nugget that saved me, here's the rest of the thread which has other useful information. For how long Reddit will be around for such things to be in existence, is something that only time will tell.

Till the next update.

Friday, August 09, 2024

National Day Grab-bag

Okay, it's a public holiday today celebrating SIN city's independence. That's excellent.

Naturally, most denizens in SIN city that are able, have found ways to head out of country to enjoy the ``free'' long weekend. As for me, I have an even longer weekend due to the extra days of leave that I took for yesterday, and the upcoming Monday.

``But MT, aren't you in the middle of a high-key period? Why the sudden long leave?''

The leave... was planned before any of these things went bananas. And it was roughly when I first learnt that Cat Quest III is released on 2024-08-08. Naturally I had to take leave to play it!

So far, Cat Quest III hasn't been disappointing. True, it is no Elden Ring, but notice that I've given up on Elden Ring, whereas I am still having fun with Cat Quest III.

The primary purpose of a game is to be fun, so as to encourage the key reason for its existence---play. Any game that doesn't encourage play isn't really a game anymore, and should be called something else altogether. And what constitutes as fun is highly subjective, which is absolutely fine---everyone's life circumstances are different. Some things that one finds fun (like playing a musical instrument or programming a computer) might be a job/chore for another (think professional musician/music teacher, and software engineer), but that's diversity and freedom of choice right there.

Speaking of games, I finally completed the last two achievements of Faerie Solitaire, which involved:
  1. Raising all 32 pets to adult forms; and
  2. Completing all Challenges.
It only took me ten years to finish up those two, and after that is done, I promptly installed Faerie Solitaire (Remastered) to have this little game with the updated features (graphics and general quality-of-life updates) set up.

Talk about addictive.

And while we are talking about old games, Jupiter Hell Classic was recently announced to be available on Steam soon. It's really DoomRL v0.9.9.8 in disguise, reskinned heavily to avoid the ZeniMedia Doom IP. I stopped caring about ChaosForge after realising the KK was now beholden to his shareholders instead of the fans, and have not looked into the ChaosForge Forum ever since that day back in 2022.

And no, I haven't really gone back there. And I don't think I will head back there. I never wish KK ill, and sincerely hope that he will continue to succeed. It's just that I will no longer play an active part in his endeavours.

Will I get Jupiter Hell Classic when it is released? Maybe... for old time's sake. It'd be nice to see Nyarlaptoptep's Boots once more, as well as the Mother-In-Law, two items that I have had a hand in naming in one way or another.

And while we are on the old stuff, WordStar 7 has seen a release by science-fiction author Robert J. Sawyer, as noted in his blog entry. WordStar is among the OG of word processing---they came at a time just between the typewriter, and the advent of WYSIWYG word processing, roughly when people were looking for more out of their text processing beyond full-screen text editors.

I sadly never had the need to work with WordStar, but I do enjoy me a good text-mode word processor as a concept. I'm part of that ``weird'' group of people who prefer writing in as distraction free a manner as possible, which was why something as arcane as TeX or the much better successor LaTeX appeals more strongly to me than good ol' MSWord (or these days on Eileen-III, LibreOffice Writer). My writing tool of preference these days is either good old vim, or Q10 on Windows.

There's just something about the 80-character wide monospace font form factor that makes the writing feel more fluid than trying to bang something out in a GUI with proportional fonts, and twiddling with formatting every which way, even though almost all word processors actually have semantic styling defined from the get-go.

But back to WordStar. The modern user may be put off by the need to run this old DOS program in one of several DOS emulators (Sawyer's 680MB package has all these sorted out, while I already have a DOSBox-X set up on Eileen-III), but I think they will be really put off by the entire keyboard interface. The semantics are quite foreign to the modern user as the interface was designed for a time where the keyboard standards weren't standard yet.

The ``WordStar Diamond`` is easy enough to get used to---it's like WASD, except it is ESXD, with control held. It is slightly less arcane than vi's hjkl movement, and thus more tolerable.

The problematic part is text selection (``marking blocks'' in WordStar lingo) is persistent. This means that the text can be marked [in a block], and other things can happen, while the marked block remains marked. So, if one wants to replace the selected text, it is important to execute a block-cut or block-delete before typing in the new text, otherwise the outcome is... not as expected.

I've had my fill of this back in the old days of working with the IDE of Turbo Pascal and Turbo C/C++ from Borland International. They followed the WordStar semantics, and it was usually a pain to turn that option off, mostly because of my scenarios of using them at programming competitions where the hardware and environment are provided for by the organiser.

It's not hard to get used to it, but it does get old pretty quickly.

Old software aside, Beyond Compare 5 has been out for about a month now. I love this file comparison tool---it's multiplatform, it's fast, it can compare stuff over the network, and the price is always reasonable for the functionality it has. The big thing for me to upgrade (for free in my case since I bought Beyond Compare 4 within the window for it) is the ability to have word-wrap enabled when doing text comparison. Oh, it can also handle table comparisons better than before---no more single-sheet preparation like before.

There's also the last bit of switching back to Mozilla Firefox from Google Chrome for my ``serious'' web applications (i.e. logged in stuff that companies would love to use tracking on) due to the shitstorm that is Manifest V3 and how it nerfs ad-blocking. The modern web is not usable without ad-blocking---everyone seems to want to load as many advertisements as they can on their puny web sites. On its own, it's not a problem per se, if these advertisements are tastefully done. But that has not been the case for the better part of a decade now. Apart from the technical problems of increasing the attack surface area, these advertisements (full-blown multimedia extravanganza too, for some of them!) consume precious network bandwidth, making that gigabit Internet connection trudge along slower than the bad old days of dial-up.

Do I recommend switching? Sure... it's pretty painless. But it's still up to individual choice whether to do so.

And anyway, I think that's about it for now. Back to Cat Quest III for me.

Till the next update.

Sunday, February 25, 2024

Maintenance...?

And so, this weekend is about to end.

It's the weekend of maintenance. Aurelia, Stella, and Picc are off to Windworks for COA; my bicycle went to B-Spokes for maintenance, and one of my longest run geocache needed some maintenance [from me] as well.

In theory, things would have been peachy by Saturday, but there was something innately wrong with the rear-shifter for my bicycle that necessitated my bringing it back today for rectification, which resulted in me having to skip out on church today.

``But MT, why must it be today? Couldn't it wait?''

No, not really. It was just after a major maintenance---had I waited for longer, it would have been a bigger mess than it really is now.

Sadly though, a new line of dead pixels have started showing up on Eirian-V. Why and how that happened, I have no idea. But as at now, it isn't completely annoying just yet, so I might just live with it; sort of like my Brother laser printer showing random low-toner density (I think the drum is kaput, but haven't had enough wherewithal to pull up the money to buy a replacement to test the hypothesis).

I also took the chance to use my air-blower to clear out the dust on Eileen-III, as well as my work laptop, something that I had been neglecting to do for about five months now.

Then of course, there is some self-maintenance. I finally chopped my hair down to the right length [of stupid short] with the hair clippers, and am relying on occlusive treatment to force the weepy and inflamed skin on my fingers and palms to calm down. I also replaced my toothbrush, which was at least two months overdue.

Mentally though... I think I might not have done well there. Feeling a little overwhelmed with the barrage of new ``fun'' that came in from the work side. It's not bad, it's just... a lot to take in at once. Not to mention the whole set of loss of spoons from being involved in two large gatherings of people.

I probably should just turn in earlier tonight, after re-packing my backpack to set it up for work, as opposed to errand-running mode.

Sorry this is a short entry---till the next time.

Saturday, September 23, 2023

Saaaaaaaaaaturday~!

Ah... it's a nice-ish Saturday once more, and I'm mildly annoyed at how Eileen-III's keyboard is always doubling the letter `m' as pressed ever so often.

Is it something to do with the timing from my change in typematic rate (I've since set it to 168 ms delay with 8 ms of repeat)? I don't think so---I suspect it is more likely to be related to how I conduct myself on the keyboard, i.e. my index finger when going for the `m' key on the keyboard isn't retracting fast enough for some reason. Recall that the keyboard of Eileen-III isn't quite as centred as I would like, due to the extra column of utility functions that are available on the right side.

It's not completely detrimental yet, but it is definitely rather irritating when it does occur. Funny enough, the letter `m' doesn't really appear all that of often enough like any of ``etaoin shrdlu'' characters that it becomes a massive deal-breaker.

In short, I should ``git gud''.

That minor annoyance aside, let's talk about what happened this week in retrospection. My final team member has finally started on the second week of their tenure, and the team's first big deployment for a project is coming within 7 weeks. It's exciting, it's scary, and it's a trial-by-fire moment. I have a healthy level of expectations of the team that has been put together, and I sincerely hope that they rise up to the occasion and build up sufficient expertise and esprit de corps to pull through as a team to be ready for the larger and more scarier projects to come. As a first time manager working with more than a handful of subordinates, I am definitely full of trepidation, with a healthy dose of fear that my ineptness will let the team and subsequently the entire department/pillar down.

It's that scary thought that keeps me up on some nights.

But that aside, the week marked the end of the parts of the annual appraisal process that were relevant to me. All my subordinates' appraisals have been reviewed and sent in for calibration, while my own with my reporting manager has also been done and fired off. All that is left now on this front is the waiting, and since I'm not really in this job for the purposes of BEEEEEEEEEG MONEY, as long as the outcome is sufficiently fair enough, I'd be happy.

No girlfriend, no wife, no car, no apartment means no matter how shitty the cost of public transport goes up, or how high the CPF ceiling is being pushed up, or how fucked the two-step GST hike will increase the number and magnitude of unscrupulous price increases using the GST hike as a fig leaf, my actual cost of living is low enough relative to what I'm paid that I will come out generally fine.

Not great, not luxurious. Just fine. I dare not go as far as saying comfortable, for the sole reason that I'm still living in an apartment with no air conditioning even as SIN city's mean temperature keeps rising over the years.

But I didn't come here to rant about those things (or did I?). I just wanted to sling some thoughts about here for a bit, even as that thrice damned Amazon.com bot is still scraping my blog.

To that shithead: why?

``But MT, you could always walk away!''

For what? It's not exactly harmful, nor illegal, but is definitely being a shithead. I don't walk away from legal harmless shitheads---I just get mildly annoyed at their audacity, and just move on with life.

I mean, if I didn't want to quietly share my thoughts, I wouldn't be keeping a blog (or three) in the first place, let alone having this one kept alive since 2006.

------

I went back to trying Halls of Torment again, and it wasn't too bad after the fixes. That Agony system still felt really rough to me, and I've not really decided if I liked it or not. HoloCure is still the best execution of the quasi-twin shooter variant of the formula that Vampire Survivors popularised, even though that Stardew Valley-esque ``HoloHouse'' bit is a confusing addition---on the one hand, why a farm simulator in the middle of a reverse-bullet hell game; on the other hand, it does help with the gold meta due to a half-decent ``passive income'' set up through the ``hiring'' of gold miners that need to be fed with either fish or farm-grown produce.

I think I'll try to push Control as far as I can today, and once that is done, I might go back to my solo-world Minecraft to build yet more railways, this time to one of the new biomes having sakura that comes from release 1.20. I know that version 2.0 of Cyberpunk 2077 has released, but it's still a bit too close to my last playthrough for me to be interested in going for it again. I do have one last life-path (Streetkid) left to try, which can justify playthrough number 3, but I have other games in my stable to play through as well.

And I suppose there's that for now.

Whelp, the 1.5× coffee (3× for regular folk) is finally kicking in. Time for some Control, then some practice for the hymns for tomorrow's worship, perhaps on one-key flute (I haven't decided), then TGCO rehearsal in the evening.

Till the next update.

Thursday, August 10, 2023

Past Stupid O'Clock?

Okay, it's past stupid o'clock, but I'm annoyed, so I'm gonna vent.

Eileen-III runs Windows 11---this is an incontrovertible fact; the new CPU architecture demands an updated kernel that only Windows 11 provides, as long as I want to use Eileen-III to play games as opposed to doing work.

Windows 11, for some asinine reason, does not allow anyone to put the taskbar to the top of the screen.

I had used a workaround for this for quite a while (ExplorerPatcher). It's free, and relatively straightforward to use. It had a bit of funkiness to it (while the taskbar is indeed moved to the top, accessing the start menu brings it back to the bottom), but it got the job done.

That is, until the latest Windows 11 update clobbered the shit out of it.

It's a live issue as at now, and there doesn't seem to be a solution to it just yet.

I've switched over to StartAllBack, but really, who knows if these will still work in the future? It does solve the funkiness that ExplorerPatcher had, so I suppose this is a step up.

And that's it. It's almost 0400hrs in the morning, but I'm on leave, so I kind of don't really care.

Till the next update.

Friday, July 21, 2023

A Day Off? A Day Off!

It's a Friday! And I'm on leave! It is therefore a most excellent Friday!

Curbing my exuberance a little, I'm only on leave because of the planning ahead by past-me---July has no gazetted public holidays, and thus I decided to just take some paid time off to create a random long weekend. It's not just for July, there were a couple of other months where this was going to be a problem, and a similar set up was made.

After all, what's the point of amassing paid time off when I have no intention of travelling overseas for quite a while yet?

But back to today. I had the best run for Gunfire Reborn yet, reaching about the half-way point in the third of four acts. This run saw me use a weapon that operated like a shotgun, and it got me thinking about why I was more successful with this run as compared to all the others that failed much earlier.

I think it has got to do with my personal reflex coordination between my left-hand keyboard movement and right hand mouse-aiming. Shotguns in most games involved a shoot-and-scoot method---fire the weapon, and as one was undergoing the [long] reload animation, strafe to the side to dodge attacks until the reload is complete, then aim and repeat. It was something that I learnt/got comfortable with from the old days of Doom and Doom 2, where the shotgun/super shotgun ruled supreme, complete with the Alt-key strafing when one used the default keyboard-only configuration (arrow keys controlled movement, there was no vertical looking, and holding alt-left/alt-right strafed left and right respectively, like the modern day use of A/D keys under the WASD-scheme).

For rapid-fire weapons like rifles/chainguns/pistols, circle strafing was needed. This required good relative motion coordination between the strafing movement from the left hand, while keeping the reticle aimed at the target at all times. The room for error in terms of dodging attacks was much tighter, since one was not maximising the distance that one could dodge through moving orthogonal to the shot fired by the enemy, but was instead moving on a curved route that far shortened the effective orthogonal distance.

I think I'm bad at that. Moreover, shotgun-type weapons were much more effective in dealing with a large group of mobs---literally fire into the throng, and strafe-left/right to dodge, with aim mostly optional. Single shot/rapid fire guns still require good aiming and thus some kind of lock-on, and as a result, requires a much higher reaction time than what I'm used to.

Ah well.

Gunfire Reborn scratches that itch of a first-person shooter rogue-like. I mean, I played Ziggurat but found the maps too square/limiting, wanted to complete Rogue Shooter: The FPS Roguelike, but that game was effectively abandonware. I do have Tower of Guns hiding around somewhere, but have no real reason why I didn't play it.

But to be fair, I only learnt of Gunfire Reborn from this years SGDQ run. It looked fun, was sufficiently fast paced (quick to start, short enough runs), and yet without the kind of boxing-in claustrophobia from allied games like The Binding of Isaac: Rebirth.

Some time back, I accidentally started Firewatch that I had installed on Eileen-III via the GOG Galaxy launcher. I was naturally quite confused, but just went ``eh fuck it'' and played it. The game was not particularly long, but it had lovely scenery that was antithetical to what The Long Dark had (think forest in summer compared to the Canadian tundra). And yes, I have The Long Dark, and love what it represented, having watched quite a few playthroughs by Zisteau, including his latest advanced tutorial series, but that's a sidetrack.

Firewatch. I didn't know what I was expecting, but for the 3--5 hours of gameplay, I found myself having a kind of fun that I have missed for quite a while. I know it's a ``walking simulator'', but really, sometimes all I want is just a relatively relaxing game to help me walk away from the walls that define what what my current life is like. And Firewatch does that wonderfully. No regrets for that discovery that I had accidentally ran that game some how.

In some ways, due to Firewatch, I've also started on Shadow of the Tomb Raider, the last of the trilogy of the modern Tomb Raider series. The thing about the new reboot (it's been about 10 years since the reboot) is that it was a much grittier and realistic depiction of Lara Croft. The graphics saw a big boost in quality compared to their predecessors, but this was more of a product of the times than anything, but also the shifting of the more whimsical and ``friendlier'' style of the past into something a bit more realistic. I remembered seeing my first death of Lara Croft in Tomb Raider---she was very graphically impaled. I didn't remember any of the Tomb Raider games showing death so brutally, and was fairly shocked.

And here's the thing, I'm not the only one.

Brutality aside, the new Tomb Raider series does have lovely scenery at a higher fidelity than the stylised stuff of Firewatch or even The Long Dark (I'll play it soon! I promise!). And playing the latest edition (a circa 2018 game(!)) on Eileen-III is definitely a treat.

Okay, I think I've exhausted what I wanted to write. Going to grab a bit more whiskey (it's still my day off, despite having been summoned for 1.5 h to solve a small-ish PRODuction issue (sighs)), and continue on my adventure in Shadow of the Tome Raider, even as I listen/half-watch some the latest hijinks from the Hololive members.

Till the next update.

Wednesday, July 19, 2023

7×13 Font?

This entry is an extension to a theme that I started from some time ago about bitmap fonts.

So, if you recall, I recently got ahold of Eileen-III. With her 2560×1600 resolution on a 16″ screen, using the 5×10 fonts is a great way to migraine central.

I had been using Unifont adjusted to be monospace-friendly set to scale down from the default 8×16 to 7×13 just so that I can have at least 81×2=162 horizontal characters under a half-screen set up (the math works out to be 1280/162∼7.9=7 pels per character width).

It worked fine, but man it looked ugly. This is generally true for regular vector fonts when we scale it down to the point the mechnical scaling/anti-aliasing starts to destroy the font due to how there is no good way for the text renderers to correctly position pixel-equivalents at pixel scale without losing contrast. When the width of a stroke is down to the width of a single pixel, contrast starts taking on a much outsized role, and that's why some of the best small/tiny fonts are hand-crafted instead of relying on auto-scaling via math.

And in this case, the Unifont version is just ugly.
Just look at it: broken 0 and }, X and Y are suddenly spouting umlauts, and all the glyphs that are supposed to be round at the x-height have a sharp corner or two.

Since I was sick of it, I started to look at the small stash of hand-crafted bitmap fonts that I had lying around. The 6×11 font looked pretty good for the display set up that Eileen-III had, but there was just not enough spacing in it. On a lower resolution (but with comparable physical dimensions) display, a single pixel space was adequate, but for the particular display that Eileen-III had, it was just too small.

So, starting with the 6×11, I expanded it to 7×13 by adding one more column of blank pixels on the left, thus centering all the glyphs (the original 6 pel width used only the first 5 pixel columns for the glyph art work), and added two more rows of blank pixels on the top. I then tweaked some of the oddities that I missed from the 6×11 font, including adjusting how my 6 and 9 look, as well as adjusting the positions of the different types of brackets/pseudo brackets to better fit the larger cell. I also adjusted the overall shape of the glyphs to better match my 5×10 font, in the sense that they looked much closer to how I would envision a good high-resolution super-scaling of my 5×10 font to 7×13 would look like. And here it is:
There are still some things that I could tweak more still, but I think it is excellent for now.

There was one negative side effect of using this 7×13 bitmap font instead of the weirdly scaled down Unifont---CJK characters under this font look much worse than that of Unifont. Unifont will scale its 16×16 CJK fonts to fit into 13×13, which looks remarkably good considering that its complexity meant that any form of approximation looked better than the approximation one saw with the simpler Latin-1 glyphs.

With this font, the CJK characters made the text renderer pull up some other fallback vector font, which again had weird (in this case, worse) scaling and contrast issues that made them illegible.

Is this a problem? Yes. Is this a big problem? Eh... not really. I don't usually need to operate on stuff with CJK when I'm using my ``optimised'' text mode---at that point I will literally pull out my full-scale Unifont set up instead (i.e. 8×16 for single characters, and 16×16 for CJK characters).

And that's it for this post. Till the next one then.

Sunday, July 02, 2023

It's July Already?

Woah, the second of July is upon us. As at noon-ish, literal halfway point of 2023.

Not sure how/what to feel about this. On the one hand, we're getting closer the end of the year, and with it perhaps we will get to cast the dark shadows that came from the COVID-19 pandemic away from our collective trauma, to redevelop a new sense of optimism.

That new sense of optimism is important in this time and age. The doom-saying has been on overdrive for the past three to five years, and it really does show, at least for me.

I cannot seem to live the day without getting blasted with information on global warming, some new development in the spats that come from geo-political posturing/brinkmanship, ever-increasing threats to the livelihood of the vast majority of the white-collar workers through ``AI'', uncontrollable price increases ``due to inflation'', and all the associated over-corrective behaviours that some of these events trigger.

No wonder I'm feeling down more than half the time.

I personally cannot tell how some people can maintain their optimism. Everything just looks so... bleak. The ``Me! Me! Me!'' world that we have today is just such a cavernous echo chamber that there are many times where I cannot even hear myself think.

One might say that I can always walk away. And the truth is, I have been doing so.

Of the few [online] communities that I have been a part of, I've more or less walked away from them all. Some I left because the members became too militant and extreme in their desperation of defining their own safe space, which often times end up creating a similar toxic environment as the one they are acutely hurting from. Some I left because the nature of the community has changed---from an indie passion-project where I could interact nearly personally with and willing to support with whatever I have, to a complete commercial entity that only cares about their shareholders, who incidentally prefer using an unpaid-for third-party ``community'' environment that I didn't agree with.

But these are all about the past---thinking about them isn't bad per se, but if all they are giving are these bad vibes, I really shouldn't be thinking about them, if possible.

(sigh)

With the next half of the year coming up, what should I be looking forward to?

Well, there's always NaNoWriMo in November. It'll be the fifteenth year I'm a part of it (URL will point to the correct place some time in November 2023, so don't fret). The community there was always fractured along the axes of old-bird versus newbie, professional writers versus amateur writers, the non-students versus the students. It's... not a bad thing, but just something to take note of. I'm an old-bird amateur writer who is not a student, and am probably one of the few old-birds that have not done fiction writing professionally (i.e. getting paid to publish).

There are couple of engineered long weekends here and there through careful set up of my leave, so that's always nice. I'm steadily building back my stamina and strength in cycling, and am slowly incorporating cycling back into my set of activities. Nothing hardcore with the road cycles and what-not---just me, my Brompton from November 2017, and wherever I can go, depending on the time of day/week. So some longer trips during the off-peak periods from the engineered long weekends are going to be a part of what's happening.

We're probably going to get a couple of [small] performances coming in for TGCO, which is always a treat---I've always felt it weird if a performing arts group... doesn't perform. Aside from TGCO, I'm starting to prepare my way towards being a more regular musician (with Aurelia) for worship as a part of the music ministry of PPCC.

Aside from all that, more reading, I suppose, and more games to be played on Eileen-III. Nothing on the horizon for the dating front, because honestly, I don't have a good feeling about dating and getting in a relationship. At my age, it feels like... the pros of being with someone are no longer as superlative as the cons. When young, one's future is much more vague, making it easier to meld/remodel it according to the shared expectations of one's partner.

When one gets older and more set in their ways, there is almost no room for negotiations---the keyword being ``almost''. So... the odds aren't good.

As I might have mentioned before, when it's my time to go, it'll be my time, and I'll just... go. I don't expect to be remembered, so it's okay to be alone in the end.

I just kinda pity whomever is going to do the final clean up because I probably won't be able to settle things properly before my time's up. Sorry in advance to whomever that is.

Anyway, I ran out of momentum with what to write. Just wanted to rant a little at the half-year mark for 2023, before I become completely dejected at the prospects of life in general.

Till the next update.

Friday, June 30, 2023

Eileen-III

Alright, it's been a while. Time to write something here.

So, Eileen-II has more or less run her course. It's not that she has broken down, but let's face it---I didn't plonk down serious cash all those years ago ``just'' to use her for web-browsing only.

It has been about the games; it has always been about the games. This time though, there was no COVID-19 lock down to justify getting yet another laptop form-factor, but it was basically a simpler statement: space is premium that is worth paying extra for.

I could rebuild Elysie-II completely, but where would I put her? I've more or less compacted myself into a single room of my childhood apartment home, as things got a little weird with the whole ``study room'' affair, and my general dislike of basically occupying ``public space'' by sleeping in the living room. The day that I discovered that I didn't really need the high-powered ceiling fan in the living room to cool me off was the day that I decided to set up base in the bedroom that I had once shared with my sister before she moved out after getting married, some four to five years ago. I don't remember if I wrote anything about that entire set up phase, but the gist of it was a complete rework of the bedroom---all my books were finally unwrapped and sorted out into the massive shelf that houses that and more.

But that's history. I'm here to talk about Eileen-III.

Eileen-III is an Alienware m16 R1, with an Intel i9-13900HX (24-core (8 P-cores and 16 E-cores), 36 MB cache, up to 5.40 GHz with Turbo Boost), 64 GB DDR5 RAM at 4800 MHz, and an Nvidia GeForce RTX 4090 16 GB GDDR6 discrete graphics card. Her screen is 16″ (2560×1600) with a refresh rate of 240 Hz with G-SYNC, and her storage are 2× 2 TB M.2 PCIe NVMe SSDs in RAID-0 configuration.

In short, she's an absolute beast. Her graphics card is equivalent to the desktop version of the RTX 3080 Ti, but with less power consumption and no over-sized form factor, and her CPU is also doing much, much more while consuming much, much less power.

She also has 4 cooling fans, which is 2 more than what most laptops will have. For operating such a machine in a non-air-conditioned place in SIN city the way I am, having excellent cooling cannot be overstated.

She's superlative to Eileen-II in almost any way, though the keyboard layout is a bit janky---the right shift key does not fully extend to the bottom of the enter key, with the up-arrow key occupying that last sliver. The reason for this jank is the decision to create a new right column of convenience keys for the volume up, down, mute, and microphone mute buttons. They made it such that the right arrow key is now part of that column, instead of being flush with the rest of the main typing area.

It's not bad per se, but considering how the keyboard layouts of my as at then two most commonly used machines' layout are exactly the same as what I had described, the muscle memory kept screwing the crap out of it.

And oh, I had to run Windows 11 for Eileen-III---it was the only [gaming] operating system that could ``understand'' and therefore properly schedule tasks for the heterogenous CPU set up with the P-cores and E-cores.

So, how does she perform?

Like a damn dream. Seriously. Cyberpunk 2077 running at 2560×1600 at an average of 110+ fps. My ``industrial complex'' of farms in Minecraft (link is to the old version) with all the bells and whistles of full-shadow shaders was performing at least 50% better in terms of frames per second than when it was running on Eileen-II (there was severe lag that dropped things to around 40 fps), considering also that we are rendering things at 2560×1600 instead of 1920×1080, a good 97.5% more pixels to draw.

And Grim Dawn did not have a moment of lag while rendering all the fancy effects when procc-ing things.

In short, Eileen-III is a true beast.

Am I happy with the upgrade? Hell yes. It married super-powered graphics power, with fantastic memory/general processing power, with tiny pixels, while keeping the keyboard at a comfortable enough temperature. What's there to not like?

Alright, I think I've gushed enough for now. Yesterday was the public holiday, and today was an additional leave day that I took to just sit around and do nothing.

Till next time.