Monday, May 14, 2018

A partial solution to the Slack problem

A couple of months ago, you may recall, I wrote an open letter to Slack saying that they shouldn't shut down their IRC and XMPP gateways.
Slack sent me a nice reply saying that they had passed it along to their product team. I am sure that their product team read it, and nodded sympathetically, and then didn't change their minds. Slack is still shutting down those gateways on May 15th -- tomorrow.
This is not great, but I have a partial solution.
"...Holy beefwaffles, Zarf just wrote a Slack client?!" Yes! Sort of. Ish? I wrote a very small Slack client -- the most minimal app that could still be called an interactive Slack client.
Before I describe it, let me point out a few alternatives that already exist:
These are cool! They are not quite what I want. I want something that will sit in a terminal window and show all my favorite Slack channels -- just the important ones -- in chronological order. Yes, interleaved.
The point is that I never have to type in this window; I can just keep an eye on it. Conversations flow by. If I want to jump in, I can type a reply there (to any channel).
Of course, my client doesn't handle any of the fancy Slack features like threading, reactions, search, or file attachments. It's just a plain text stream. If I want to do anything more than that, I fire up the official Slack client and go to town.
This sounds like extra work. Okay, it is extra work. But I like having lightweight and heavyweight solutions to the same problem. I use three web browsers, for example, from plain-text Lynx up to full whiz-bang Javascript-enabled Safari.

But you're not here for my computer usage habits! You're here for the Slack client, so here's the repository. (Python3 code.)

Friday, May 11, 2018

Even more Myst Kickstarter stuff

A couple more things happened this week. I know, I know, I promise my next post won't be Myst-related! But for now...
On Wednesday, Cyan announced a stretch goal. But it's not pegged at a dollar level. Rather, they want to hit 3750 backers at the "Writers" tier. That's the $250 level, where you get the metal inkwell and pen (modelled after the one in Gehn's office in Riven). That tier now also includes the three old Myst novels and additional Riven design documents. If they hit the 3750 mark, they'll throw in the Uru soundtrack for all backers, plus some bonus tracks.
When they posted that, they had 1875 backers at that level; they're aiming to double that. Fans seem to be into it. In the past two days, the KS has gotten 450 new backers (or upgrades) to that level, and about $125K in new donations -- an impressive spike.
(They were also featured on the Kickstarter home page for a day, which certainly helped.)
They're asking for another 1400-ish high-tier backers, which is ambitious. But I'm tempted. (I didn't buy in at that level originally, but for design documents...) I'm also tempted to start speculating on the economics behind the move. Maybe the inkwell has a higher minimum order than they expected? Or the fancy box has a higher per-unit cost, so they're trying to make it up with the inkwell money? I'm just juggling ideas here, I have no way to tell.

We have a little more solid info, because Rand Miller did a live ask-me-anything session yesterday. I've transcribed a few of his comments here.

Tuesday, May 8, 2018

Keeping an eye on the Myst Kickstarter

Running commentary on somebody else's project is probably a waste of keystrokes, but I will amuse myself anyway.
The Myst anniversary kickstarter is tootling along nicely, with about two-and-a-half weeks to go. They're up to $1.5M and almost 10000 backers as I write this.
The good news, announced yesterday, is that Mac versions of the games will be available. With some caveats: Myst Masterpiece is "giving [them] trouble", and they probably won't get the Mac versions into the physical DVD package.
The Mac conversions are being done by Codeweavers, so they'll use a Windows emulation layer rather than being native MacOS apps. Sigh, but that's the cost-efficient solution. (To be clear, the Windows 10 versions are themselves going to be some kind of emulation layer wrapped around the original ancient binaries. This project has no budget for any ground-up reimplementation work.)
The other good news, albeit not about this KS, is that the PSVR port of Obduction hits the streets today. Big news if you have a Playstation or get excited about VR! I'm neither, but go for it.
It's instructive to compare the Myst KS with the Obduction KS in 2015. (See KickTraq charts for Myst and Obduction. Gaze only upon the Daily Data tab -- projections will cause you naught but sorrow.)
Obduction finished out at $1.3M and 22000 backers. That means that Myst has already beaten it, but with fewer than half the backers. So we can say that some people will pay a lot for Myst nostalgia and physical artifacts. The most popular reward level is the fancy linking-book package.
Obduction had broader appeal; a lot more people will pay for a brand-new game. But they won't (in general) pay a huge premium for it -- the price level is set by the expectations for software. (Obduction offered a physical box reward tier, but the vast majority of backers just wanted a Steam key.)
Another difference: Obduction's KS had the usual dead patch in the middle of the donation period, but picked up towards the end. Myst, in contrast, kept a remarkably steady $25k flow rate through its first three weeks. (With a spike on 4/19 when they blast-emailed their customer mailing list.) It's only in early May that the pace has slowed. I'm not sure why backers keep trickling in like this. Maybe Myst fandom is highly dispersed, Internet-wise, and there's no common news source they all read?
Or maybe I'm looking at the wrong number. The two kickstarters had similar numbers of backers per day in the middle stretch -- it's just that Myst backers are putting in more money each.
I'm tempted to go off down a side trail of "Should Cyan have done a Firmament kickstarter instead?" (Or in addition.) But there's really not much new to say on the subject. One can reasonably predict that a Firmament KS would look like Obduction -- lots of backers, but relatively few going for the high-level rewards. Remember, the Obduction KS didn't cover all of Obduction's development costs, so this might not be an attractive path.
Anyway, that's the state of the excitement. If the backer curve continues on its current slight decline, the project will come in a little under $2M. If there's a big spike at the end, then higher, but this doesn't seem likely without a stretch goal to generate excitement. (And the company hasn't made any noise about stretch goals beyond "we're thinking about it.")
Other game kickstarters I'm backing or just backed:
  • Archives of the Sky: A tabletop RPG book from my IF pal (and coworker) Aaron Reed. It's a GM-less system; a group of players collaboratively create intimate human stories in a epic far-future setting. Think Alistair Reynolds or Iain Banks.
  • Paradox: The Rusty Lake / Cube Escape series has been trundling away for years on web and now mobile. I enjoy it, in its creepy and slightly gross way, but it's never been splashy enough to talk about much. Now the designers want to make a film short which is linked to their next game. Transmedia! I have no idea if this is going to work, but I'm down to give it a try.
  • Dystoa: Atmospheric walking simulator, what's not to love?
  • The Good Life: I've never played a Swery game, but my videogame friends can't shut up about him, so I threw in a few bucks. This KS just wrapped successfully.
  • Genesis Noir: This wrapped a few months ago, but I'm still excited about it. Noir tropes at the Big Bang, plus William Blake and jazz. I'm there.

Monday, April 16, 2018

Missing moments in games

This weekend I finally played David OReilly's Everything. (I tried a pre-release build a couple of years ago, but I had trouble with the controller and gave up almost immediately. This time I played all the way through, or at least to what I can call an "ending".)
Spoiler warning: I am about to start talking about the ending ("ending") of Everything, and how it is constructed. I'm going to go into detail. So if your kink is surprises, buy Everything and play through it before reading this. It won't take you too long.
Death of the Author warning: I am about to start talking about the intent of games by seeing how they are constructed. Indeed, I will be making assumptions about how the design evolved. That is: I will be reading games as texts. I realize it's perfectly possible to go find the designer and ask what they intended, or how the game evolved -- but that's not the point here. That is not, as Alan Watts says in Everything's adopted narration, the game we're playing.

Monday, April 9, 2018

Myst 25th-anniversary Kickstarter

Cyan just launched a Kickstarter for a 25th-anniversary re-release of Myst. And all four sequels, newly updated for Windows. And the single-player Uru collection (Complete Chronicles). Myst (the first one) will be included in both classic slideshow and full-3D (RealMyst) forms.
Everything will be available on Steam, but the big prize is a physical collection of discs in a case which looks (of course) like a linking book.
(Regrettably, this is Windows-only. They don't have the resources to update all the Mac ports.)
Cyan has been hinting at this for a few days now. Also, you know, posting to Facebook about it, which goes a bit beyond hinting. But here it is.
So that's the headline. Is there anything interesting to say about it, other than "Back this"?
Obviously, we'd prefer a new game rather than a re-release of some old games. I still have all my old CD-ROMs of the Myst series -- although it's a shaky bet which ones might run on any computer that's not buried in a closet. But Myst 3 and Myst 4 have been out of print for a very long time. This release is a first opportunity for a lot of younger players. I'm rather keen on replaying them myself.
(Yes, 3 and 4 have some obvious flaws, which are running jokes in the Myst fan community. So do 1, 2, and 5. There isn't a one of them that I regret playing.)
The more important question, to me, is "What happens to Cyan next?" Recent articles have made it clear that the company is in very tight straits right now. Obduction did not make enough money to fund a new game. In fact, Cyan is still paying for Obduction work, since the PSVR port remains stuck in the pipeline.
So this Kickstarter, if it succeeds, will get some cash into the barrel. But it looks like they're just aiming to raise enough money to fund the production of the physical rewards. (They have, very sensibly, omitted all mention of stretch goals. If the project over-funds, they'll make more of what they've planned.)
Hopefully they've done their spreadsheets right and they'll break even on the rewards. Then they'll have an additional ongoing income stream from Steam sales. I don't know if that will add up to much -- as several developers have posted recently, it's a rough year for narrative games, and re-releases of old games are going to be hard put to compete. But any long tail is better than no long tail.
In the meantime, we'll have nifty memorabilia to fondle.

Sunday, April 8, 2018

Why does Twitter allow third-party clients?

In last month's open letter to Slack, I wrote:
(Twitter may not block third-party clients, but it sure wants to discourage people from using them.)
The next shoe in that caterpillar cavalcade just hit the floor:
After June 19th, 2018, “streaming services” at Twitter will be removed. This means two things for third-party apps:
  • Push notifications will no longer arrive
  • Timelines won’t refresh automatically
That's from a web page, Apps of a Feather, which was just launched as a joint announcement from the developers of four popular Twitter clients. Twitter has responded by "delaying the scheduled June 19th deprecation date" (@TwitterDev, Apr 6) but it's unclear if their new Account Activity API will be sufficient for third-party apps to keep working.
This sucks for me. If third-party clients vanish -- and I see that day coming, soon or late -- I will not be switching to the official Twitter client or web site. I'm not saying that out of principle or anything. I just find the official Twitter experience to be abysmal. I can't do anything with it. It's noisy, it's out of order, and it's full of ads. No.
(Apps of a Feather is hosted by Twitterific, Tweetbot, Talon, and Tweetings. I use Echofon on iOS and Tweetbot on Mac. Echofon hasn't posted or tweeted anything about the issue, which is worrisome in a different direction.)
You might imagine, given my Slack post, that I will now write an open letter to Twitter telling them to continue supporting third-party clients. Sorry; nope; waste of time. Twitter isn't listening to me.
The question isn't why Twitter would drop support for third-party clients. The question is why they've kept supporting them for so long. Remember I just said that the official Twitter experience is full of ads? The clients I use don't show ads. I'm using Twitter ad-free. I am a freeloader! Why does Twitter put up with me?
They've never said, but I have a theory. I believe Twitter sees me as a selling point for their service. Not me, I mean, but people like me: early adopters with a lot of followers, who are seen as important or interesting people to follow. (In one circle or another.) "Influencers," if you will. I am a very small-time influencer, but there are a fair number of such people. Big-name bloggers, pundits, and so on.
We are, I am sure, the biggest users of third-party clients. We started with Twitter early, and we like how early Twitter behaved. (Ad-free, for a start.) We are cranky and unwilling to change our habits.
So for years (my theory says), Twitter has had a problem. They want to keep us early-cohorters around, because their selling proposition for newcomers is "Twitter is full of interesting people." But they don't want newcomers to use Twitter the way we do, because we're free-thinking radicals. Twitter wants newcomers to use the web site, which they have total control over. That's their only hope of getting and staying profitable.
This explains Twitter's weird, half-assed client support over the years. In 2012, they limited how popular third-party clients could get. (So old people could keep using their clients, but it's hard for those clients to acquire new users.) Over the past few years, Twitter has added new features which are not available to third-party clients. (I don't care about those features -- I just want my old-fashioned behavior -- but newcomers will want them.)
The problem with this, of course, is that every year there are more newcomers, and they follow more people who aren't me. Or people like me. Even if I'm right, the early cohort is a shrinking piece of Twitter's selling proposition. One day they're going to just shove us off the boat.
Last week's announcement, and partial retraction, is just another step in that dance. Third-party clients will still work, but maybe they won't refresh as smoothly. Or maybe they will. Nobody knows. Twitter isn't saying, because every year they're a little farther away from caring.
Where does this leave me? Off the boat. I can't use Official Twitter. I'll keep using third-party clients even if they become degraded. (I can use fussy, degraded interfaces for a long time.) If they go away entirely? I guess I lose Twitter.
There will be no Twitter replacement. I mean, there will be no service that is "like Twitter, with a Twitter-sized mass audience, but run with respect for users." You can't get that many users with an open service, because big services are expensive to run, and the only way to make money is to grind up your users for advertising paste.
On the other hand, I don't have a Twitter-sized mass audience. I have about 2500 followers. IF services that I help run, like IFComp and IFTFoundation, are of the same order of magnitude.
I have a Mastodon account: @zarfeblong (on the server). Perhaps the gamedev and IF crowd will migrate to Mastodon. That's not an absurd idea. Mastodon will never become a Twitter replacement, but it might work for my followers. I'm going to stay optimistic. Let's see what happens.

Wednesday, March 21, 2018

The Firmament demo

This morning, I got to play the demo (or "playable teaser experience") of Cyan's planned next game Firmament. This is the first time it's been demoed in public, as far as I know, and I got in within the first hour of the show. So that's some bragging rights for me!

(Nobody cares about me bragging. Okay.)

Firmament is a first-person puzzle adventure game which Cyan announced as a project three weeks ago. As I noted in my previous post, the game is not yet in production. They're hunting for funding. This demo is all that exists, aside from the teaser trailer on the web site. They brought the demo to GDC to show it off and drum up interest.

This demo is VR-only; they've got an Oculus Touch hooked up for people to play with. The game itself is marked "platform TBD", which is the only thing they can possibly say at this early stage. It's probably fair to say that they're designing it with VR in mind, but that doesn't mean it would be VR-only or even VR-first at launch time. (If it ever gets funded at all, right?)

Anyhow, I will describe the experience. I got myself wired up, figured out how to zap the "play" button, and found myself in an ice cube. Big icy cave full of ice cubes. Then a big brass mechanical fork-thing got in my face and chipped me out of the ice.

(Ryan Warzecha warned me, as the game launched, that a machine was about to make me uncomfortable. Fair enough. Is this the VR equivalent of a 3D movie snowballing you in the face? A shock experience to show off how immersive the tech is, regardless of whether the player needs to be shocked? I'm not complaining here, I'm just saying that if you start your demo by apologizing for it, it might be a sign that you should rethink matters.)

Once de-iced, you figure out how to move around (standard VR teleport) and then leave the room. The next room is a frozen dining chamber with a corpse and a polyhedral drone, which wakes up and starts hovering around your head. (The ghost character in the trailer was not visible in this demo.)

You can grab the drone and stick it into various sockets to open doors and generally activate machines. You can also point at a distant socket, and the drone will fly over and plug itself in. If you raise your hand over your head, the drone will fly back towards you from wherever it is, unplugging itself if necessary.

(The drone pathfinding was simplistic; the thing tends to get lost if you move around a corner. Early demo problems, sure.)

The bulk of the demo consisted of climbing an icy mountain, using the drone to lower bridges and so on. You also get to pull some levers. (VR hand controllers!) It pretty clearly acts as a tutorial; by the time you've unlocked the teleport pod at the end, you've demonstrated all the basic drone interactions. The pod takes you to a mechanical hub chamber (visible in the trailer video) and that's the end of the demo.

In fact, the demo cuts off after five minutes, to give the next fan a chance to play. I didn't make it to the pod myself. But I watched a few other people.

I chatted a bit with Ryan Warzecha and Karl Johnson. Items of note:

The demo represents about two months of work. Yes, Cyan laid off some people last month; they're currently at about ten developers. If they get funding for Firmament, they'll staff back up. Ryan noted that he's been laid off from Cyan three times, and he's always happy to go back when they can afford to hire him.

Yes, the PSVR port of Obduction is still going. (I think they said it was in validation at Sony, but I may be misremembering that.)

As noted on the Myst web page, Cyan has gotten agreements and funding to re-release all of the Myst games (for modern Windows machines). They don't have dates for any of this; they'll continue to make announcements throughout this year. They also have some kind of nice swag in mind, and a 25th-anniversary physical package.

That is, I think, all the news.

As for my own reaction: the Firmament demo looks great. Dusty interiors, snowy exteriors, towering machinery, swirling snowflakes. Cyan has definitely gotten the hang of the Unreal engine, and can use it to produce high-detail worlds in a pretty quick time-frame.

The demo contains only the simplest puzzles, as you'd expect from a tutorial scene. There's no sign of an overarching puzzle mechanic like Obduction's spheres. You just have the drone. I have no idea what they have planned for the game, and they aren't saying.

I am still not a VR convert. The demo was an immersive experience, but it wasn't any more immersive than Obduction or Quern or any of the other games I've played on my (non-gigantic) TV. Or I should say: for me, games on my TV are fully as immersive as VR! That's just how my brain works. I can fall into a TV screen... without getting my head all cramped and sweaty... and run to the bathroom any time I want. So that's how I will continue to play games. You play your way.

More Cyan news as it pops.