Thursday, May 23, 2019

I Will Be Speaking At EGLX In Toronto!

#SuzyCube #gamedev #indiedev #madewithunity @EGLXofficial 
EGLX is coming to Toronto from October 26 to the 28th and I will be giving an updated version of the talk I gave in Ottawa for CGX a few months ago! 
Read more »

Thoughts On Theme (Deities & Demigods) - And Artist Needed!

If you've been following this blog, then you probably know that the theme of Deities & Demigods is Greek mythology. You play as a demigod, showing devotion to the gods of Olympus, and asking them to do favors for you (the more they like you, the bigger the favor they do for you).

I like the Greek god theme because it's recognizable. People know that Zeus is the king of the gods. It makes sense that Ares helps you move your troops. Hephaestus is a blacksmith, so obviously he's the one that builds artifacts and buildings... it's the same reason I think generic fantasy works for games like Belfort: it's easy to remember that Elves collect wood and Dwarves collect stone because of the stereotypical traits of elves (associated with the forest) and dwarves (associated with the mountains). While you can argue "that's been done," I believe the familiarity there is useful, it helps the players grok the game.

Deities & Demigods game will be published in 2019 (and incidentally, it could use a different title), and I have been looking for someone to do the art for it. In thinking about the art direction, the Greek god theme looks like a worse and worse idea. While I still like the familiarity aspect mentioned above, if you look at all of the similarly themed games, they all kind of look the same. It's very difficult to stand out and not to get lost among other Greek themed games such as:
etc.

So how do you do make a game with a common theme stand out? Here are some ideas I have had for Deities & Demigods:

First thought was to change the theme to something less common --perhaps Egyptian or Norse pantheons. Egyptian was the front runner here, and perhaps that's the way we'll go. Some of the familiarity may be lost, but to be completely honest, is everyone so familiar with Hephaestus to begin with? And some Egyptian gods, like Ra/Osiris, Horus, etc might be similarly recognizable. Unfortunately, the Egyptian gods seem a little less focused in what they actually do (or maybe that's a plus, as just about any of them could do just about anything in the game).

My first reaction to changing theme was "well, we COULD, but I'd really like to keep the Greek theme." In an effort to do that, my next thought was to just increase the art budget. Try and get some really fantastic looking art, which would stand out amid boxes like Oracle of Delphi. I started looking for artists with this in mind, but I think it's kind of a fool's errand. If you look at some of the games linked above, they've already done that. Not only would the art budget for "fantastic art" be enormous, but it wouldn't even solve the problem of standing out in this case!

Today I had a new idea though, and so far I think it might be a good one. I was looking at games like SPQF and Everdell, and I thought "Would it be totally stupid to do Deities & Demigods as Greek mythology, but with animals instead of people?" And right away the idea began to grow on me. I'm not sure it's the right way to go, but I think it's definitely worth thinking about. It could set the Greek theme apart from other similarly themed games, or it could even work with a change to another pantheon.

Here's a draft of a descriptive blurb I whipped up, which could be the intro in the rulebook, for example:
Atop a hill in the Big Clearing stands a mighty Baobab tree called Olympus. Most days, resting in the shade of Olympus, you can find the lion Zeus, the King of the Jungle. His wife, the lioness Hera, comes around on occasion to make her will known. By the watering hole at the base of the hill, or just inside the tree line, you can always find Hermes, the long-tailed macaw; Ares, the [wild boar][OR][solemn elephant]; and Hephaestus, the orangutan.

All other animals look up to these gods of Olympus, showing their devotion by bringing them gifts of [something to replace gold... food?], or begging for their aid -- the more devoted you are to these mighty animals, the bigger favors they'll do for you.

So what do you think? Is this a good idea? And if you had to re-imagine Greek gods as animals, what would you choose? Feel free to take liberties with changing which gods to use, but keep their game effects in mind:

Zeus: moves you up an Olympus track, which gives various bonuses as you go
Hermes: Gives you gold (food?) with which you show your devotion to the gods
Ares: Moves your troops around the board
Hephaestus: Builds you artifacts, buildings, and monuments
Hera: Bestows start player upon whomever best satisfies her demands for the round.

I wouldn't mind getting another female deity in there...
maybe Athena instead of Ares (though Ares works a little better thematically)?
Or Demeter (goddess of harvest) instead of Hermes (especially if changing people to animals and therefore gold to something like food)?

Let me know what you think in the comments below. And if you're an artist/graphic designer and you think you would be a good fit for this project (and think you can finish it by mid-April), please let me know ASAP!


WADA WELCOMES SIGNIFICANT DECISION BY COURT OF ARBITRATION FOR SPORT


Montreal, 24 April 2019 – A newly developed method for detecting the use of prohibited substances in athletes has led to a significant and unprecedented 29 March 2019 decision by the Court of Arbitration for Sport (CAS) in favour of the World Anti-Doping Agency (WADA).
 
CAS issued a final award confirming Anti-Doping Rule Violations (ADRVs) in the cases of the Ukrainian track and field athletes, Olesia Povh and Olha Zemliak. Both athletes were convicted of using a prohibited substance based on the detection of non-physiological levels of testosterone in their blood serum samples following analysis in the WADA-accredited laboratories in Lausanne, Switzerland, and Seibersdorf, Austria.
 
The testing was initiated by the Athletics Integrity Unit (AIU) of the International Association of Athletics Federations (IAAF). This led to the subsequent investigation, which resulted in these important convictions. The measurement of testosterone levels in blood serum constitutes a further tool for Anti-Doping Organizations (ADOs) to detect and prosecute doping, even where urine samples might be reported as negative.
 
WADA Director General Olivier Niggli said: "WADA welcomes this decision by CAS, which could have a long-term positive impact on clean sport. I would also like to commend the AIU for their excellent work which led to this outcome. The decision sets an important precedent and this new method of detecting doping represents another way for ADOs to secure Anti-Doping Rule Violations against those who choose to cheat. It is a significant victory for clean sport and for athletes around the world."
 
Significantly, CAS ruled that there could be no doubt on the evidence that the method used in measuring testosterone in blood serum was scientifically valid, paving the way for further examples of this method being used in the future.
 
Olesia Povh was sanctioned with a four-year period of ineligibility for intentional doping while Olha Zemliak received an eight-year period of ineligibility as it was her second violation.

Hex Grid Guide Load Time, Part 2

Last year I reimplemented my hexagon grid guide with the goals of making it easier for me to add content and also making it possible to load faster. I was able to speed up load time significantly by pre-rendering the SVG on the server. This is called "SSR with Rehydration" on Google's rendering tech page.

screenshot of Google Lighthouse score
Load time with the prerendered SVG

Last week I experimented with this a bit more. At load time, I was replacing the static SVGs with interactive SVGs. However, there's no need to do this immediately. I changed it to wait until the diagram was visible on screen (using IntersectionObserver). This helps quite a bit! The "time to interactive" score goes from 9.6sec to 4.9sec and the overall page speed score goes from 63 to 89:

screenshot of Google Lighthouse score
Load time with deferred interactivity

I was wondering if I could make it even faster by prerendering only some things on the server ("CSR with Prerendering" on Google's rendering tech page). The page shrinks from 633k to 179k! And the page score goes from 89 to 96. Time to interactive goes from 4.9s to 3.5s:

screenshot of Google Lighthouse score
Load time with deferred SVG

Great! However, it started to bring back the problems that I had solved last year. This version doesn't allow printing the page, loading it without Javascript, using "Reader modes" (including Pocket, Instapaper, RSS, etc.), or Ctrl+F to find diagram text on the page. The more I used the page, the more little glitches I found. None of these are super important, but they're not going to get better. In contrast, the load time will continue to get better as cpu and network speeds increase, HTTP/2 is adopted, and compression protocols improve (Brotli, HPACK, etc.). Another consideration is accessibility. I've been told that most screen readers support Javascript, but deferring the creation of SVG using IntersectionObserver means the SVG may never get created, so it would have the same problem as printing and Ctrl+F.

I decided to keep the pre-rendered static SVG for now, with deferred interactive SVG. It's simpler for me and I have fewer corner cases to deal with. I'll revisit this in the future when I update my A* pages to load faster.

Missed Classic: Spellbreaker - The Chase

Written by Joe Pranevich


You've heard the classic story: boy meets girl, girl meets boy, boy and girl happen to be levitating rocks on a Tron-esque grid? It's classic. If I have to say one thing about Spellbreaker, it is not afraid to have interesting and difficult puzzles. And despite the number of times that I have been stuck in this game, I've nearly always managed to get myself unstuck by looking at the problem in a different way. As we approach the end of the game, the overall picture is coming into focus. Connections are forming between the areas that the cubes take us, but I wish I did not have to spend the first half of the game feeling like I was playing a text-adventure version of Quantum Leap. Oh boy…

One other thing: this game is long. I'm ending this post at just over 18 hours in, making it the longest Infocom game by far and that does not include any of my time replaying from scratch last entry. The only longer game in this marathon is mainframe Zork which clocked in at roughly double where I am now. No actual Infocom release has taken me more than twelve hours to win. If they had planned to make this the "grand finale" of Zork, I think they succeeded under that metric at least.

Let's play!
Wow. That looks complicated.

Two Dead Ends

We ended last week having just solved the octagon maze and with a new cube in-hand. I blorple it to end up in "No Place". It is a lot like a place, except the room description says that we're not in a place and my brain has no idea how to process not being any place, except somehow there are also exits east, west, and south, presumably to places. The mind boggles, but I head east first. That me to a vault filled to the brim with treasure. Could it possibly be the vault we discovered at the end of Zork III? The only exit from the vault is a locked door with a complicated mechanism although it's strange that it is locked from the inside. I cannot seem to interact with it in any way. Is there a puzzle here or just a locked door? Rezrov is not powerful enough to open it.

I start to sift through the room for things I might want, but anything I pick up is listed as "treasure" in my inventory without distinction. I can teleport out with no problem, but doing so transforms the "treasure" into "junk". I either need the treasure and therefore need to exit through the vault door to keep it as-is, or perhaps all the treasure really is an illusion… maybe even the door? I'm not sure where the we are going with this one, but there doesn't appear to be anything for me to do here right now.

Restoring back to "No Place", I discover that west is the typical broken exit that we have with each of the cubes while south leads me to a very strange plain.

The 1980s were truly a special time.

Imagine, if you will, a plane with intersecting lines moving in all directions. There are hovering boulders sliding on the lines from place to place. I cannot follow the lines or go any direction at all because the ground is too slippery for walking. Even magic seems to be broken here as spells just fizzle out. I can't cheat by using the magic carpet either. A green-eyed boulder is nearby and I can talk to her, which is somewhat surprising because she's a rock. She tells me that I'm not as odd as the last person that visited her. Could that be the assailant from the beginning of the game? I point out a brown-eyed rock in the distance and she says simply that he's not as pretty as she is. This increases the total number of vain green-eyed talking boulders in adventure games to… one. The good news is that the she's willing to give me a ride in exchange for some food. All she wants is something high in phosphorus.

Unfortunately, I don't have any and cannot proceed this way. With repeated attempts, I am unable to find anything different in any of the areas that I already explored. There's no way through vault door, nor is there anything else I can do on the plain. I am stuck.


A Whole New (Boring) World

I expect that this game is very difficult to follow in written-out chunks every week or so. I'm taking very good notes which I need to be able to sit down and write against later and I'm still having difficulty keeping the whole game in my head. I am especially confused about places where I experimented and then gave up. Did I do that in my current save? Did I not? I don't remember.

I have a note from last time that I'm not satisfied that I did the correct things with the carpet, either in the way that I bought it with the opal or in what to do with it afterwards. So I head back there and play around. It turns out that you can haggle with the vendor and talk him down to 500 zorkmids. This involves "offering" him different amounts starting from high to low and if you get it just right he'll agree to 500 after a few tries. In my case, I found that if I started with 300 and increased my offer by 50 each time, he eventually comes down that amount and I can pay using my coin, saving the opal for a puzzle later. I feel better about this solution overall.

What should I do with the carpet? I know that if we fly up from the bazaar, we discover that we're in the mountains that have the roc's nest and the guard's tower. I didn't map it before, only explored it more or less at random. I'll take a more structured approach this time. Unlike typical exploration, we have altitude to contend with. I find four separate levels to explore: "above", "high above", "very high above", and "dizzyingly high above" the ground. Any further up than that and it is always the same text, while any lower than that and we crash or land but either way results in death. You can keep going higher and you never seem to die of asphyxiation, but maybe I just wasn't patient enough. For my part, I concentrate on "above" since we need to be able to see things below us to land on them. I do head up and explore a bit higher, but unless there is a castle in the sky or similar, it is all empty air. I can come back if I get stuck again.

When Aladdin sang his song, he expected more interesting terrain.

There are an infinite number of empty rooms stretching in all directions. Just as before, I locate the bird's nest and confirm that the guard's tower just four rooms east. I do not find any way back to the bazaar, the mountain at the beginning of the game, the ocean, or anywhere else. Even so, this is everything I need for a new idea:

I am going to race the roc.

Whenever I come up from the bazaar, the roc is already at its nest. But when I teleport to the oubliette and climb my way up on the ice floe to the guard's tower, the roc is circling and not at its nest. What if I climb out then immediately jump on the carpet and head west? I try that and it works! I beat the roc home and find the nest unsupervised for the first time in the game. Unfortunately, I arrive just as the egg is hatching and if I stay for more than a couple of turns, the hatchling kills me. I memorize my spells in advance so I just land, grab the cube and the carpet, then "blurple" myself away. I am not going to be a snack today!

Portrait of Belboz from Zork: Grand Inquisitor

Third Dead End

Using the Roc's cube takes me to the "String Room" with exits to the south and east. Naturally, only one of the exits work but the other takes me to the "Enchanter's Retreat" where the retired Belboz and other former leaders are retired to a life of quiet meditation. Why aren't they helping since everyone else is a frog? I guess they figure I have it covered. Belboz, my mentor from the first two games, is there and we can ask him a bit about what is going on. He tells me that someone had visited him a few days prior, impersonating me, but that he knew it wasn't me because he did not know things that I would have known. So he asks me a question: "Of the Neuromancers, who is the best known?"

Of course, I have no idea, but I do have the manual and the several trading cards that came with the game.

Oysters and fish are not vegetables.

I answer "Berknip" from the cards and he seems relieved that it is me. He hands me an iron key. I ask him about the cubes and he makes them sound impressive, as if the knowledge of them can make or unmake the world, but nothing else I ask seems helpful. I try the key in the vault and that is not the correct place to use it. I'll have to keep looking.

I am stuck again except this time I do not even have notes that I missed something along the way. I explore more with the carpet. The solution turns out to be going through my spells to see which ones I haven't used yet. I've created frozen icebergs, shrunk giant snakes, put a statue to sleep, repaired a hut, grew out some ragweed, animated a statue, and blew away fog. The only two spells that I haven't found uses for yet are "yomin" to read minds (although that did provide some hints) and "snavig" to transform into an animal. I try to find things to transform into.

A Fishy Solution

It doesn't take me that long to find an animal that I can transform into: a fish. If I use the "water" cube and take a splash landing into the ocean, you end up where I fought with a grouper to capture a message in a bottle. That grouper is still there if you return. After hiding my stuff in the zipper, I try "snavig" and am able to become the fish. Swimming down, I discover a cube at the bottom of the ocean. Unfortunately, the fish still eats my cube and I lose all of my stuff because everything sinks. I have to find an alternate approach.

Instead of stashing my stuff in the zipper, I drop everything I am carrying in the Water Room itself. I memorize "snavig" and "blorple" so I can get back, but I take the dive into the ocean unencumbered. That still doesn't quite do it because the fish will steal the water cube if I am not careful. I can transform and eat it myself, but there doesn't seem to be a way to regurgitate it back out. I eventually settle for also taking the smoked fish with me and feeding it to the grouper as soon as I see him and before I transform. He ignores the now-sinking cube and apparently is not above a little fishy cannibalism. Survival of the fittest, right?

Casting "snavig" takes a few tries and I restore several times to get a casting that works on the first try, but I manage to swim down to his nest. Unfortunately, I cannot pick up the cube while in fish form and I previously learned that eating it was a bad idea. Eventually, I take the wait-and-see approach. I stay underwater until I transform back into a human, immediately grab both cubes, and swim to the surface. I make it just before I run out of air and now I have a new cube! I'm making this sound a bit easier than it was; getting the timing right took trial and error.

"Don't try it, Anakin! I have the high ground!"

Hot Lava!

The new cube takes me to the "Light Room" with one good exit, to a volcano. Immediately after I arrive, a fragment of lava falls at my feet. It is too hot to touch, but I can freeze it to pick it up. There doesn't seem to be anything else to do here so I take the rock back to the strange bounders that I found at the beginning of this section.

Feeding a rock to the boulder is exactly what I needed to do. The green-eyed boulder now allows me to ride her and I can follow the tracks on the plain. Each time I do, the distant brown-eyed rock (which I now see has a cube on its back!) also moves. It's a bit of a dance, made more difficult because I can't quite seem to find a way to speed up the green-eyed rock or catch all the way up to the brown-eyed one. He seems to be avoiding us. I try randomly for a long time, but I do not stumble on the solution. Time to get analytical! I ignore my brown-eyed friend and map out our environment:

It's a document icon!

What I find is a collection of 15 rooms, with north/south or east/west tracks between each room with one exception, a diagonal line in the upper-left corner. I thought initially that going over the same track too many times would rub it away, but that doesn't seem to be the case. Although we can make some good guesses, the text doesn't quite let us know precisely where the brown-eyed rock is at first, only whether it is near or far and in what general direction. Once we have the map drawn and printed out, I put counters down to track where I am and where I think the brown-eyed rock is.

I continue to play with this puzzle, but it's not deterministic. If you save and restore, the rock can choose to move a different way after the restore. But no matter how hard I try, the rock is very effective at always staying a few squares away and there is really no way to trap it. The best you can do is figure out its exact location using the process of elimination.I look for ways that we can block off exits by dropping things onto the track, but that doesn't work. I try to get close enough that maybe I can jump across even if it isn't in the same square as me, but even when I get it on a diagonal I still cannot leap across.

Just to give you an idea how to work out where it is, from the start I tried these directions:
  • I go south and the brown-eyed rock goes north
  • I go west, it goes south
  • I go east, it goes south again
  • I go north, it goes south again

At this point, I am 100% certain that it is in square D4 and I am back in B2. But what good does that do me? Not much except getting us into known spots which allows me to know his exact location for the rest of the puzzle. The trick is obviously something to do with the northwest corner. I thought at first there might be a hidden room, but that doesn't seem to be the case. I try very hard with dozens of restores to force him to go on the diagonal so that I can catch him, but that doesn't work. If I go on the diagonal, I still cannot catch up to the brown-eyed rock because I can never get there when it is anywhere close enough for it to matter. He seems too "smart" for me, even when I save-scum.

In the end, I take a hint from the blog and find that I am on the right path. By heading over the diagonal, I'm essentially taking two moves instead of one and this subtly changes the dynamic between the two stones. It doesn't solve anything immediately and if the brown-eyed rock doesn't make a mistake, it doesn't matter one iota. But… I do that and he eventually moves towards me when he shouldn't. I guess my strange movement disrupted his algorithm. With that, the gap is closed and I am able to successfully maneuver to bump into him in a few turns. As soon as we get close, he is mesmerized by the green-eyed rock's beauty and I can just jump across and grab the cube. I guess she wasn't just vain after all.

With that, I will end our session for this week. We had some great puzzles this time and I am ashamed that I needed to ask for help on the rocks when I probably would have noticed the brown-eyed rock doesn't play perfectly after the diagonal slide. My desperate hope is that I can wrap this very long game up next post. I'm having fun, but it's still time to put this one to bed.

Time played: 6 hr 30 min
Total time: 18 hr 20 min
Inventory: 11x white cubes ("earth", "soft", "water", "air", "bone", "change", "noplace", "string", "light", and an unused one), zipper, magic burin, knife, spell book, pruning shears, gold box, bottle, opal, compass rose, magic carpet, iron key
Spell Book Contains: caskly, throck, blorpie, yomin, rezrov, frotz, gnusto, malyon, jindak, lesoch, espnis, liskon, tinsot, snavig
Score: 415 of 600 (69%)

[Three Hexes] Where Do I Go From Here?

Last week, I published my 52nd Three Hexes - FINALLY reaching my goal of a year's worth of campaign starters. It took me a lot longer than a calendar year - I had a huge creative dry spell hit.

So now what?

Well, I've been thinking about what to do with these campaign starters since I started the series. I've gotten some great feedback on how helpful they were, how they were getting used. That's awesome! That's the kind of thing that really keeps me going, knowing that someone else made use of what I create.

So I have an idea to make them into a book. Right now, I'm going through them, and revamping them. I'm taking a page from Bryce's preachings over at tenfootpole.org and making them far more useful. I'm trying to make each sentence have something concrete in it. Rather than just fluff or background or atmosphere, try to wrap those into something that is immediately useful as a "thing" - whether it's a faction, opponent, NPC, magical item, beastie or treasure - SOMETHING that is useful.

So that means for the campaign, homebase and 3 locations, that's 3 sentences each of something useful.

Once I'm done with that manuscript? Well, we'll see.

The last time I tried to come up with something to sell, it didn't go so well. This time, though, I have a plan and I think it'll be OK.

So for now, Three Hexes is on pause. I'm going to keep blogging about other stuff going on with my games - soooo many games right now, and miniatures painting and Hirst Arts building making and, and, and...

What do you think? What else could I do with them?

Finally, I have to take a moment to pay tribute to a lost friend... my dog of 13 years, Bear.

One of Bear's favorite spots, in a sunbeam.

He was a large chocolate lab and over the winter, his quality of life declined greatly. When we visited the vet a couple of weeks ago, she gently told us that it was time to really think about where our lines were with "too much suffering" and we realized that we were very close. So, family decision made to let him go. We enjoyed a last week with him, and on Monday, April 8th, we sent him over the Rainbow Bridge. We did it in-home, so he got to enjoy his last sunbeam with us around him.

I miss him terribly. He would love it when everyone would come over to game with us. He greeted each and everyone, and made to see if they brought food. He loved the snack table I would set up and I saw him once or twice manage to get something that was dropped to the floor.

I have so many good memories of him, and this still feels surreal that he's gone. He was the bestest, goodest good boy dog.

You Can'T Win Them All

It's surprisingly rare that we buy a game that turns out to be a dud. We're usually pretty good at spotting games that will and won't appeal to us, and I generally read reviews and where possible try games out before purchasing. We've also gotten fairly lucky with impulse buys that turned out to be great games, but that isn't always the case.

I really like 7 Wonders but I've always held off on adding a copy to our collection because of the relatively large player count required to make the game interesting. 7 Wonders: Duel seemed like a perfect solution: a two-player version of the game, and in fairness, it does do a good job of approximating the full game's aesthetic and core mechanics.

The problem is, the whole point of 7 Wonders is that it is a card drafting game, where you start with a hand of cards, keep one, and pass the rest along. There are two basic approaches to drafting: either take the cards you need, or take the cards you don't want your opponents to have. 7 Wonders: Duels approximates the draft using a tableau of cards with rows that overlap one another. Players draft cards from the tableau, with the catch being that you can't draft a card if there's another card on top of it.

This leads to a lot of "take that" style play where you uncover a card you need only to have your opponent draft it, and unlike in the full multiplayer 7 Wonders, you know who is taking your cards. It makes the game just a little bit too frustrating and adversarial, which is too bad because the engine-building part of the game is interesting, and the illustration and graphic design are top-notch.

Rating: 2 (out of 5) Although I do like the game design, I think the game play is just a little bit too adversarial for a two player game that doesn't actually focus on combat.

What we'll play instead: Race for the Galaxy is a similar tableau-building card game that works great for two players and doesn't seem quite as confrontational.