Wesnoth and me: 2018 edition

Hi.

It’s been quite a while since I last properly talked about The Battle for Wesnoth in here — years, really. Some people know that at some point in 2016 I mostly stopped contributing to the project, aside from some server-side stuff such as maintaining the multiplayer games server (wesnothd) and the add-on content server (campaignd).

Since then, a lot of people new to Wesnoth, as well as people not familiarized with Wesnoth, have heard about me, and they don’t really know what it is I’ve actually done over the years. So, I thought it would be a good idea to write about my involvement with this game since I happen to feel like writing walls of text stuff right now.

So, where shall I start?

Continue reading “Wesnoth and me: 2018 edition

Amethyst, and life updates

Oh hi there. Long time no see. Apparently I haven’t posted since February 2017, huh. A lot of things have happened in the meantime, it turns out. Some of those things are to blame for my general inactivity elsewhere, but when it comes to this blog I just can’t seem to come up with anything to say worthy of my trademark text walls, at least not ever since I joined Twitter several years ago— wait, wasn’t that in 2010? Time sure flies. I feel old. Okay, let’s face it, I am old.

“Iris” version 1.1.0 as of earlier today

In addition to it having been a while since my last post in here, it has also been a while since the last time I gave the website an overhaul, for what little use it sees nowadays. Because of that, plus some of my experiences designing the new website theme for The Battle for Wesnoth last year, I decided to try to modernize my own a little bit so it looks more in tune with my current practices. I also decided to spruce things up with a new colour scheme, like last time, taking things in a different direction to what I’m used to.

An attentive reader who’s been around for long enough might be able to tell that the “Iris” design last year did undergo a slight revision incorporating Font Awesome in order to make icons not look awful on high-DPI screens. This was a natural conclusion of my work designing and testing the Wesnoth.org theme on devices with higher pixel density. Plus it was precisely last year that I actually caved in and got a smartphone given to me by a relative, further highlighting all the inconveniences of designing things on/for 96 DPI these days. Other than that, though, the design remained mostly unchanged from what I made in 2014.

“Iris” version 1.2.0, aptly codenamed Amethyst for reasons that should be blatantly obvious, is mostly the same as before under the hood, but on the surface it hopefully looks shinier and more elegant and modern. Even though I am not using the site much right now like I mentioned above, I have a faint hope that the new look will motivate me to post more again.

Since there wasn’t a New Year post last year, or even the year before that, or uh... the year before that as well... actually I guess there haven’t been New Year posts in here since January 1st 2013. Oops. Anyway, I guess it’s time for a short summary of what I have been up to in recent times. Let’s see...

Continue reading “Amethyst, and life updates

Invasion from the Unknown 2.0.0

Nearly 11 years ago, I was checking out some of the free and open-source games included with the openSUSE distribution when I came across a fantasy turn-based strategy game called Wesnoth. I vaguely remember taking a quick look at it and dismissing it for some reason. It wasn’t until an OS update later the same year that I would actually give version 0.9.5 a proper try. Immediately upon doing so, I was enthralled by the game’s sheer quality and its surprisingly accessible gameplay.

Continue reading “Invasion from the Unknown 2.0.0

Invasion from the Unknown 2.0 RC 1 and After the Storm 0.9.16

Today, December 1st, IftU 1.99.0 (a.k.a. 2.0 RC 1) and AtS 0.9.16 have been released.

There is nothing noteworthy about AtS 0.9.16 whatsoever, but IftU 1.99.0 constitutes the first public codename Reconstruction release after several years of work. That is, not counting this year’s April 1st release (which apparently everyone simply assumed to be a hoax instead of actually downloading it from the trunk add-ons server).

I’m cutting this post short since — as should be painfully evident — I don’t really feel motivated to update this blog nowadays. Still, the announcement over at the Wesnoth forums has some more details about this first IftU 1.99.x/2.0 RC series release that are worth checking out if you are planning on installing or updating to this new version.

shadowm moving hosts

It’s almost as if moving Web hosts in October is going to become a yearly activity, like New Year celebrations, or birthdays.

shadowm.rewound.net has been graciously hosted by an acquaintance of mine since 2005, even after I moved on to weirder endeavors on the Internet. Originally, there wasn’t much in terms of content here, because I only used the space to host a few files from tiny projects I was involved with. However, as I took an interest in dabbling with front-facing Web technologies like HTML, CSS, and to a lesser extent, Javascript, shadowm.rewound.net turned into a testing ground for crazy experiments ranging from a seldom-updating blog, to a quotes database for an IRC channel. Giving the few interested visitors a general idea of who I am and what I do in my spare time was barely a goal at first. Fast-forward to Q4 2014 and just look at this mess.

But as everyone knows, nothing is eternal. Not even the sun. Okay, from a practical standpoint we can assume the sun is eternal. That’s beside the point.

The first chapter of “shadowm”— formerly known as “Shadowmaster’s Lair” — lasted much longer than it logically should have, and I thank grafix for that. Starting today, I am now hosted by AI0867, a close collaborator of mine in projects like Wesnoth-UMC-Dev, my campaign Invasion from the Unknown, and, well, Wesnoth itself. Hence the new hostname, shadowm.ai0867.net.

Around May this year, I went to great lengths with the Iris site redesign to ensure everything would work on any host provided the software dependencies are satisfied, and removed and/or optimized a load of cruft left from earlier iterations. In theory, things should perform more or less fine on the new host, although it is hard for me to gauge this as a user — for you see, I am stranded in high-latency mobile broadband land, making pretty much every website out there equally slow from my point of view. In any case, if there are any glaring inefficiencies, I’ll do my best to correct them over the course of the next few days.

To sum it up, most people (i.e. the handful of followers I have) should not notice a difference besides the new hostname in URLs. Old links will continue to work for approximately a year through the magic of HTTP redirection, though you should probably update them now just in case.

Anyway, that’s all I wanted to say. Now back to our regularly scheduled programming.

After the Storm 0.9.10

Version 0.9.10 is out.

Due to circumstances, it has been quite a while, and honestly I lost track of what this release was supposed to have besides a thing that requires another thing from another campaign that has not been completed or released yet. So let’s talk about what AtS 0.9.10 actually has.

Firstly, the minimum Wesnoth version requirement now is 1.11.11.

That’s right. Previous versions (including 1.10.x) are no longer supported. Ever since I moved to 1.11.x following the release of AtS 0.9.0, maintaining support for previous versions (including buggy development releases) required a series of unwieldy kludges that made the code uglier and harder to maintain and were, for the most part, untested beyond the classic “does it compile?” test. With all those bits gone, it will be easier to improve and optimize some aspects of the campaign, as well as work on the thing that requires the other thing I alluded to above.

For now, the first one such aspect I have worked on is converting several units to the 1.11.x animation WML syntax. Although some other people seem to prefer the new syntax over everything, I have chosen a more pragmatic approach for this campaign, so the set of units that I’ve converted in this release is rather limited. Hopefully more will follow soon, but I’m certain that there are a few for which the change hurts code readability. Plus, since most of my units are headbutters, the code size gains are marginal in the average case.

Finally, somebody reported to me of an issue with the player’s recall list and gold being discarded during certain key scenario transitions. It turns out this resulted from a change in Wesnoth 1.11.13 purportedly intended as a bug fix for MP campaigns. I was aware of the change and its implications at the time 1.11.13 was released, but I wrongly assumed AtS would not be impacted because I failed to take a tiny detail into account. Exactly three months later, I realized the sheer gravity of my mistake — but fortunately, it seems nobody else played AtS on 1.11.13+ in the meantime. (Thanks to RainerT for the report. This would have gone unnoticed for who knows how many more years months otherwise.)

As you can see, there is not a lot to talk about in this release other than the version requirement change. Since it’ll be a while before Wesnoth 1.12.0 is released, and AtS remains largely the same as it was the last time I posted in this topic, I believe stable version purists won’t be missing out on anything for now — at least not until the thing is done.

Also due to circumstances, this release is largely untested, so I would not be surprised if I accidentally broke a thing or two since 0.9.9.

The complete changelog for this version follows:

Version 0.9.10:
---------------
* General:
* Raised minimum game version requirement to 1.11.11. All existing
compatibility code for previous versions has been removed.
* Graphics:
* New or updated unit graphics: Sprite, Fire Faerie, Forest Spirit, Dryad,
Demon Shapeshifter.
* Scenarios:
* Added an option to certain scenarios to ensure Wesnoth does not discard
the player's gold and recall list under certain circumstances due to a
behavior change in version 1.11.13 and later. Affected scenarios:
* E1S9.3 - The Triad, part 3
* E1S11 - Return to Wesmere, part 2
* E2S0 - Transience
* E2S11 - A Final Confrontation
* E3S0 - Opening (Within)
* E3S6 - Divergence
* E3S8B - Destiny, part 1
* E3S11 - After the Storm
* Units:
* Balancing changes:
* Changed Leech's alignment from 'lawful' to 'neutral'.
* Decreased Leech's HP from 62 to 42.
* Decreased Leech's melee damage from 11-2 to 9-2.
* Decreased Leech's unit level from 3 to 1.
* Converted to the simplified 1.12 animation syntax:
* Dusk Faerie, Night Nymph, Nightshade Fire
* Sylvan Warden
* Sprite, Fire Faerie, Dryad, Forest Spirit
* Elvish Wayfarer
* Faerie Avatar
* Demoness Hellbent Tide
* Verlissh Control Spire
* User interface:
* Cutscene themes now use the 1.11.10 [theme] id attribute on 1.11.10 and
later.

Iris

Those who have followed me these last five years or so are probably aware that I designed and coded this site’s layout on my own in an effort to learn the basics of Web design. Thus, shadowm.rewound.net has been redesigned no less than eight times since its inception.

Continue reading “Iris

A load of WML errors (Part I)

Wesnoth Markup Language (WML) is the primary source code language for all add-on and mainline content for Wesnoth. Creators like me write large amounts of WML to instill life into their user-made projects. Our wiki has a rich reference section for the various dialects of WML understood by the game in different contexts. Tools like wmllint exist to make sanity-checking and porting tasks easier for the few people who can tolerate its obtuseness us. There is a whole forum section in Wesnoth.org dedicated to assisting people with their WML endeavors.

With so many resources available, you’d think WML is the most fun thing to work with, right?

Continue reading “A load of WML errors (Part I)