Beta 21 – Map Updates, Episode 2 – Drawings and Things Thought Lost

Posted in Announcements, EpicTable Development on July 17, 2012 at 3:21 am

Beta 21 contains part 2 of a large set of map-related updates. If drawings confuse you, if you asked for more control over tabs back at the dawn of time and think I’ve forgotten about you, read on.

I’m about to ramble on for a bit, so if you want, you can just Download Beta 21, and you can get a much-abbreviated version of this in the Revision History page.

For the rest of you….

Here’s what’s in it:

Drawing Just Got a Lot Less Confusing

The Case of the Disappearing Ink

One of the stranger things I’ve ever seen was the appearing and disappearing drawings of one of the beta test groups. I joined their session to see what was going on. Otherwise, it would have been hard to believe. But there it was–a drawing on a map…drawing itself, then un-drawing itself. Other drawings were popping in and then winking back out. I wasn’t sure what I was seeing.

Like most weird issues, though, this one had a fairly simple explanation–one that has a lot to do with my having written the initial freehand drawing support for EpicTable at 3am on the second day of Gen Con last year.

I’d pictured the GM drawing on a map, just like he’d draw on a wet erase battlemat. That’s how I demoed it, that’s how I tested it, but you guys are a lot more creative than that.

The Messy Realities of Drawing

My image of a GM drawing while everyone else looked on didn’t match the reality. The reality was a lot messier. Multiple people drawing and people staying in draw mode for substantial amounts of time were both things I hadn’t considered. So, my drawing updates, which were simply broadcasts of the new state of the entire drawing, led to the bizarre effects mentioned above.

  1. Alice would draw a red circle, and so this new drawing consisting of a red circle would get sent to everyone.
  2. Meanwhile, Bob has drawn a black rectangle, and that gets sent to everyone.
  3. Alice sees her circle disappear, replaced by Bob’s black rectangle.
  4. Bob sees Alice’s circle replace his rectangle.
  5. Joe, who got Bob’s message last, sees the rectangle.
  6. Sue, who entered draw mode and has been sketching out a room, doesn’t see any of this. She exits draw mode, and her sketch gets sent to everyone
  7. …but Joe’s entered draw mode already to draw an arrow pointing at Bob’s rectangle, so everyone knows where it’s supposed to be. He exits draw mode, wiping out Sue’s room with his arrow and Bob’s rectangle….

You get the idea–it gets very confusing very quickly, and you see “old” drawings reemerge because someone had it “preserved” by being in draw mode while all the new work was going on.

The Fix, Slaying the Erase-by-Pixel Hydra, and Other Tales

No way around it. I had to rewrite the drawing update mechanism to be stroke-by-stroke rather than entire-drawing. It was a bit of a bear–not made easier by the fact that erasing by pixel results in new strokes. Just like chopping the head off a hydra, when you use the eraser to, say cut a stroke in half, two new strokes are created…but they weren’t drawn, so I don’t get any events for these new strokes–they’re just there. It was a nasty beast to slay, but now, you can have multiple people drawing at once, happily receiving each other’s new strokes. Now, if you both use the pixel-based eraser on the same stroke…well, the monster’s got to win sometimes or it’s not a good story, right?


Hidden Moves

“I’m in the room.”
“No, you’re not.”
“What room?”

Have you had one of these conversations? Here’s why.
Prior to beta 21, when you were in drawing mode, you were drawing on top of a snapshot of the map as it appeared at the time you entered draw mode. This works pretty well when you draw, everyone watches attentively, and you exit draw mode once you’ve dazzled everyone with your sketch of the Lizard King’s Throne Room. But that didn’t always happen. Sometimes you’d stay in draw mode awhile. Sometimes people would move around while you were in draw mode.

I say “you” in this vaguely accusatory way–like you should know better. Well, “you” includes “me”. More than once I found myself in a cold sweat over what looked like fundamental synchronization issues. And then I’d say, “Oh, hey–I’m in draw mode.” Clearly, something had to change. You shouldn’t have to know that you’re in a weird state of suspended animation when you’re in draw mode–you especially shouldn’t have to know about this if I can’t even remember it. So it’s fixed.

What changed? Now, when you’re in draw mode, you’re no longer looking at a static snapshot of the way things were when you entered draw mode. You see actions on the map just as if you were out of draw mode. There’s no reason for it to be any other way.

Set Focus (aka “Everybody, Look Over Here!”)

Long ago, several of you requested a feature that would let the GM draw everyone’s attention to a specific map, even a specific part of a specific map. Lots of conversation ensued, and while I was sympathetic to the idea (especially when motivated by the projection setup one of you guys have), there were lots of other things that kept robbing this of the priority needed to get it done. I never stopped thinking about it, though, and as beta-21 was wrapping up, and I was absolutely out of time for another feature…I decided to squeak in another feature.

“Set Focus” allows the GM (or more accurately, people with the right to do so–more on that later) to direct everyone’s attention to his current view. When the GM right-clicks on a tab and selects the “Focus” item, EpicTable notifies the other participants of the GM’s request to switch to a specific tab and center their view on the GM’s view. This notification is presented in the form of a little popup message in the lower-right, such as this one.

Screenshot of the Set Focus notification popup

Let’s dissect this popup a little bit. The requestor and the target map or tabletop are identified in the text, and the user is asked to receiver the focus change. The receiver has a number of choices at this point.

 Accept – You’ll immediately be taken to the GM’s tab and your view will be centered to the same point as the GM’s.

 Decline – Dismisses the notification without taking any action.

 Always Accept – Like “Accept”, but your acceptance will be automatic for future focus requests.

If the receiver does nothing, the note will fade away after about 10 seconds, effectively declining the request. (Later, the fade time and the response-upon-fade will be configurable.)

There are some other options the user has beyond simply answering the request:

 Move the note – you can drag it to a move convenient location, if you like

 Postpone – pinning the note allows the receiver to postpone his decision. The notification won’t fade away while pinned.

 Close it – if you’ve pinned the note and others have come in, or it’s just not relevant anymore, you can close it.

There’s no difference between closing, declining, and letting a not fade away.

Unleash the Drones!

Some of you don’t want the user to respond. You have a computer connected to a projector or big screen, and you want it to just follow your lead. No problem, you can set that computer up to auto-accept focus requests. This setting is located on the “Preferences” tab of the new application menu (hiding under the round dragon button).

This is the same setting that gets checked when you hit the “Always Accept” button. So, if you’ve decided you really don’t want to follow your GM’s every whim, here’s where you’d change revert that “Always Accept” decision.

More Tab Goodies

Sharing the Easy Way

To make a private tab shared, you used to have to close it, go to the map or tabletop gallery and open it as shared. No longer. Now, you get share and unshare options when you right-click on a tab.

Bullet-Proof Shoes

Many of you requested restrictions on the tabletop–not necessarily to reign in out-of-control players, but to stop people from inadvertently shooting themselves in the foot. One of the way people could do that was to hit the close button on a tab. This unshared it, which led to lots of conversations like, “Wait!” (alarmed) “My map just disappeared!”. Now, by default, there is no little red X button unless you’re the owner of the map or tabletop in that tab.

Table Options

“But we liked the fact that EpicTable was wide open! We play GM-less indie games, and we all co-author the world we play in.”
Don’t worry–I’m right there with you. Thus was born the Table Options panel. This is available from the little gear icon on the Main tab of the ribbon.

From here, you can choose between the “GM-Controlled Table” and “Open Table”. The “Open Table” is the “anyone can do anything” EpicTable some of you have grown to know and love. The “GM-Controlled Table” is the new default. It’s still fairly open, but it puts more control in the hands of the GM. It’ll become a little more restrictive over time–right now, it mainly affects tabs and who can share or set focus. Later, it will expand to limit interaction with characters that are not your own.

The Table Options panel is the new place for setting your game’s visual theme. You’ve been able to do this for awhile, but now you have a neat little gallery with sample images that expand when you hover over them.

More Visible Support Options

There’s actually quite a bit of EpicTable information available, but it hasn’t always been easy to find. This tab under the application menu (the round dragon button) aims to help.

What Else?

There were other little bug fixes and things. For a full list of what’s in beta 21, check out the Beta 21 Release Notes.

  • Similar Posts

  • Recent Posts

  • Tags