Prototype #2: A full card

Behold, a new prototype!

It’s here.

This one might be getting across a better picture of what the system is about: namely because this one actually has cards in it! The cards contain everything a Fate Accelerated Edition fractal contains - except for Fate points, and those are due later.

Things you can do with those cards:

  • Shift+click on any aspect, approach (name or score), stunt or consequence to edit its content.
  • Click a stress pip to toggle it being used or not.

Some things you should be able to do later, but can’t yet:

  • Edit the content of a consequence, without having to edit its label (Mild, Medium, Severe). You’re not going to be editing its label very often!
  • Edit the name of a stress track.
  • Add or remove bits. You can’t give Howard stress tracks, and you can’t change the number of Vince’s aspects.
  • Drag the card around.

Fate points will be added at the same time as that last point, because that’s when I’ll start utilising a particular library which has drag-and-drop behaviour (jQuery UI). You can already see how this will work in one of the earlier prototypes.

The various sections of a card are programmed through a modular design that I’ll discuss in a separate blog post.

0 notes

Editing cards

I’ve been on a hiatus whilst dealing with some ongoing personal matters. I’m returning to work on Fate Looms, and I’ll still be posting here from time to time.

In some ways, Fate Looms is inspired by the neatly executed Power2ool, which is a monster, item and power card editor for Dungeons & Dragons 4th edition. Its minimal-obstacle editing method is one particular influence on the design of Fate Looms: one only needs to shift+click on a card in Power2ool to bring up a full editor of its contents. The demo video starts discussing that at 2:50.

It wouldn’t be as effective for the cards in Fate Looms to be edited exactly the same way, but the shift+click is useful. Consider the following card for Vince Noir:

image

It doesn’t look all that pretty at this point, but that’s further down the line.

When dealing with this card during the course of the game, most of your editing will be of single disparate sections here and there. This, you can do by shift+clicking on any portion of the character card:

image

Having a shift+click rather than just any click is necessary, otherwise it’d make it pretty hard to highlight or copy and paste stuff properly.

Aspects are a little different. You don’t edit just one part of them:

image

You edit the whole line at once. Anything before the first colon becomes bolded, and thus you can adjust the name or aspect type* at once. This Aspect is more of a High Concept, so let’s make it that:

image

and hit enter to save it (escape cancels).

image

If you’d rather not give the aspect a type, you can leave out the colon altogether and no part of the line will be bolded, leaving it just as: “Fashionable Prince of Nothing”.

If there’s multiple colons, only the first is treated in a special way and only the words before it are bolded: “Specialty: Power Word: Dance!”

* If there’s an official term for “Aspect”, “Trouble”, “High Concept” and so on, please let me know!


In terms of programming, this used a wonderful trick in Knockout’s features: it works with a custom data binding. It was tricky to work out how to handle approaches, until the obvious solution hit me a couple of weeks down the line. I’ll talk about the programming side more in another post.

Lesson learned: if I’m having trouble, focus on some other part of the project for a while rather than letting one part get bogged down and the whole thing have little progress. Whilst I’m busy doing that, the solution for another challenge might just occur to me out of nowhere, and the project’s still moving ahead even if it doesn’t.

0 notes

A Draft and Prototypes!

A very early (not even alpha) draft of the tabletop of Fate Looms is here:

The draft.

It’s not functionally exciting, but it’s the culmination of a few prototypes which will better explain what will be going on, and it’s the beginnings of the full tabletop system. It’s also only one page on the site: the rest, like group pages and the home page itself, are yet to come.

The earlier prototypes or experiments lie here:

  • Fate cards test 1: an experiment in working out a basic and minimal layout for Fate character cards, an an experiment and attempt with some basic functionality: try dragging the fate points around, or dragging the black bars on top of the cards.
  • Fate cards test 2: an experiment with a less cramped layout. This one was a learning experience: even on a large 1920x1080 screen, you wouldn’t be able to fit more than 3-4 of these cards on the screen at a time. That isn’t good enough for a tabletop system that might have several player characters and NPCs on the table, and it demonstrates how important a compact layout and small cards are.
  • Fate layout prototype: A test implementation of a basic layout design.

If it clears things up: please imagine the cards from the first card test lying within the gridded space in the draft or layout prototype.

The draft is - and the system will be - powered by several technologies and libraries:

  • HTML5: It’s nice. It’s very useful, and it’s necessary for a multitude of reasons. If you’re unaware of it, I recommend reading Dive into HTML5.
  • LESS: A stylesheet language that compiles down into CSS, and does a lot of things CSS can’t. I’m taking advantage of CSS3 features, but I haven’t actually directly written a line of CSS3.
  • CoffeeScript: The author describes it as “an attempt to expose the good parts of JavaScript in a simple way.” I’m using this instead of directly writing JavaScript.
  • Bootstrap 3: This thing was originally started by Twitter. It offers a great starting point for the project in styling, and a lot of components that will be used later.
  • Knockout: One of the available HTML/JS data binding libraries. If you’re not aware of what data binding is, it’s basically a way of keeping in sync the data in the UI and the variables in the program running behind it. Data binding is the middle-man technology that does the syncing work for you, and in circumstances like this, it’s very powerful.
  • JQuery.

There’s also a couple of technologies it doesn’t use yet, but will take advantage of:

  • JQuery UI: Unless I find a better UI library to offer certain interactions like drag-and-drop, I’ll be using this for some of the UI interactions.
  • WAI-ARIA: From the W3C comes this framework I’ll need to use to help make Fate Looms accessible.

That’s a lot of different things, and the list might grow. Many of these things are simply unsupported in older browsers, which is fine, since I’m not going to want to support older browsers anyway.

This draft is the first release that isn’t a throwaway prototype. I’ll continue to work on it, and explain portions and release UI designs in future posts.

0 notes

What’s in a Fractal?

Character cards are more flexible than I dreamed.

In fact, they’re so flexible I can’t call them character cards. I need to use a term that covers a broader category of cards, including mooks, places and characters themselves. I’ll call these fractals - named after (or possibly the namesake of) the Fate Fractal, aka the Bronze Rule, which asserts that anything can be a character.

In designing this system, I don’t want to enforce game logic if I can help it - that would leave no room for house rules or variations - so I don’t want to hand you only the kinds of fractals you’ll find in only one system and say “This is all there is”. Instead, I’m treating all the parts of a fractal as only sections that may be shown or hidden.

For example, a Mook is only a fractal with only good at / bad at, and a stress track, with all other sections disabled. A character, on the other hand, has a few more sections: consequences, stunts, and so on, with skills in place of good/bad stuff. A Place has only aspects.

But this raises an interesting possibility: what if we gave a Place consequences or stress? We can do that. How would we use it though?

Characters in a crumbling ruin could use the ruin’s consequences to absorb their stress - but in return, the place becomes more hazardous, and the ruin’s consequences are available for invocation.

A friend of mine made the same discovery, it turns out. In one of his games, a rival group was attacking the Temple of Bast on a mission to kill the sacred cats - and the temple had a stress track, named Cats.

We could give a Mook a single stunt, too. That Mook might be a basic NPC at first, but becomes a recurring character, eventually with consequences and his good at / bad at section replaced with skills or approaches.

This might not be a new discovery to some, but it is to me - and I hope that as I continue creating this system, it will continue to teach me new things about this game.

0 notes

What’s this about?

This is a development blog for one thing:

An online tabletop environment for Fate.

Fate’s a fantastic game, but currently, to play it online, oone would rely on a small number of services around the internet. My mission here is to change that and provide a complete environment for playing games of Fate online.

Here’s the plan:

  • It’s going to provide a full tabletop and playing environment free. If you want to get some friends together and play a game, you will be able to do so without spending a cent, and keep doing so forever. I want the site to be financially self-sustaining at some point, somehow, but it won’t get in your way of just playing.
  • It’s going to give you everything you need that you’d expect to have at a real table of Fate. You’ll be able to form a group, start and continue games, create and edit and manage character cards, talk with your friends, roll dice, and so on. That is the free stuff, at the very least. (Unfortunately, no snacks or soda. You’ll have to provide those yourself.)
  • It’s going to be usable by blind users, hopefully, and other people who use assistive technology. Because they use the internet and play Fate too.
  • It will start out supporting Fate Core and Fate Accelerated. Later, I hope to support some prior classics, like Dresden Files and Spirit of the Century.
  • Free users will not be hassled to spend a cent. The site might eventually have some kind of subscription, ads, or paid features. Naturally their existence will be conveyed, but in an ethical and friendly way. By that I mean:
    • Paid feaures won’t be sitting there in the middle of a free user’s toolkit, reminding them of what they could have if only they paid some money. Some teams decide to do this. I don’t want to.
    • Ads will not be annoying and will be out of your way. Roll20, an analogous service for D&D, displays ads when joining a game and at occasional intermissions. This is fairly polite.
  • It’s going to work well. You’ll like it, I hope.
0 notes