What about alpha 2?

Posted June 15, 2008 by
Categories: OCTGN.net

Okay, I think that by now everyone knows I am feature-complete for alpha 2 (except for tokens, which may or may not appear in time for alpha 2; probably not). So where is the build?

The truth is that there’s still a lot of work to do:

  • With the new release comes a brand new website. Some admins are working on it. Why do I have to wait on the website to publish alpha 2? See below.
  • I want to be able to push updates more often. Alpha 2 is very playable, and I’d like to push the missing pieces one at a time and not wait for 6 months like I did between alpha 1 and 2. Of course, to auto-update one needs a well-defined place to get the software. Hence the need for the website.
  • Alpha 2 being unlocked, you will be able to play any game you want. This implies that alpha 2 will get a lot of attention (trust me on that, I was amazed by the attention alpha 1 got, even though only Blue Moon was playable). This will generates tons of comments and feedback. The blog is not the good place for this to happen. So hopefully the new forums will be good.
  • I still have to do a final round of private testing with my favorite personnal tester (namely Fork). I don’t want to push too many bugs in the wild. Some people are very easy on the criticism (I know you aren’t).
  • Depending on the final tests, between 0 and 2 weeks of bug fixing will be required.
  • Because alpha 2 is unlocked, I can foresee that the big mess will begin. Incompatible software updates as I work my way to 2.0 release, different people creating the same game, and even udpates to games. I have to find a way to keep versionning manageable. Not sure how I’ll do that. But if it is unlocked, it has to have a solution to versionning.
  • Finally I made a choice, which may not be so wise. I am currently using .NET 3.5 SP1, which is in beta. The good news is that it is full of goodies. The bad is that I don’t want to push the beta unto you, and I don’t know when it’s going to be released. Official wording is “this summer”.

So to sum up. The checklist for alpha 2 release is: website + auto-update + tests + versionning + .NET 3.5 SP1. I’ll post progress in this blog, of course.

One last thing you may want to know. I get my well-deserved holidays in July. From July, 1st, I am leaving for three weeks. I go to a remote island. There’s no electricity, even less internet. So there no work will be done and no news posted during this period.

It is highly unlikely that everything gets completed in the next two weeks. So I’d say alpha 2 release should occur beginning of August.

Collapsed groups

Posted June 8, 2008 by
Categories: OCTGN.net

Most games use several groups, some of which you really don’t need that often. That’s why in OCTGN 1.x there was the possibility to show/hide some piles. I’ve added this feature to O2, although a group is never completely hidden, I’d rather say it is collapsed.

See the two blocks on the right of my piles? Those are my collapsed piles. When the mouse is over a pile, a small arrow appears at the bottom and clicking on it collapses the pile (note there’s no arrow visible on my graveyard). Simply clicking on a collapsed pile restores it to normal. There’s an animation going from/to the collapsed state, so that it feels very natural.

The collapsed piles are still functionnal. You can drop cards on them. You can right-click them and perform an action, or simply see their contents in a popup window like regular groups. So there are very few differences between an expanded and collapsed pile (except seeing the top card, being able to move a card to the bottom, and the commodity of having a bigger drop target; hopefully another expanded-only feature will appear in beta 1). I even expect people playing games with a very large number of cards in hand to play with all piles collapsed.

In addition to that I’ve killed one feature from my alpha 2 list. I don’t feel it was really required and other new ideas have roughly the same use-cases. Maybe the killed feature will be in the final release, but I’m not even sure of that. The new ideas will be in beta 1 though (that is: after alpha 2). So the feature list for alpha 2 is down to one (1) single feature! woot?

The last feature is token creation. It’s not hard at all, but it requires a bit of work on new GUI elements and game definitions. So it may take a bit of time. Actually, to haste the release of alpha 2, I think I may ship without tokens. I can add them later as they aren’t required to play a lot of cards. We’ll see…

I can feel the excitement growing! I have to tell you that having all features completed doesn’t mean I’m ready to put the binaries online. (But it surely means I’ll put it online soon.) There are a few things I want to take care of for alpha 2. This post is already very long, so more about this next week!

Highlights and shortcuts

Posted June 1, 2008 by
Categories: OCTGN.net

Last time I showed multiple selection, which was highlighting selected cards.

This feature has been extended to be available to scripts, which now can highlight cards using whatever color they’d like to.

As an example, this can be used to implement the OCTGN 1.x “Attack” and “Block” commands.

You may notice a second new feature on this screen shot: game-defined keyboard shortcuts! So just like in 1.x you can simply hit F4 with your mouse over one of your cards to attack.

Of course, every game is free to define its own actions and shortcuts.

3 features left to do for alpha 2. I know it may seem like few, but the three that are left are a bit more complicated than today’s.

By popular request

Posted May 25, 2008 by
Categories: OCTGN.net

Selecting several cards makes its apparition inside OCTGN 2.0!

It works pretty much like everyone asked for:

  • You click on the table and drag to create a selection rectangle;
  • Any cards which intersects with the rectangle is included in the selection;
  • You can add or remove cards to the selection by clicking on cards while holding Ctrl down;
  • You can move cards around as a block on the table, or move all the cards to another group (incoming order is random);
  • You can apply any action to all cards in the selection. This usually works nicely. There may be some weird cases, though. E.g. if you have 3 selected cards, one of them being tapped. If you tap them, 2 will become tapped and the third will untap;
  • Double-click will apply the default action to all cards (e.g. tap them all).

Screeny of selecting cards:

 

(I know that yellow doesn’t come out well over the background. Of course there’s no color that fits all possible backgrounds. E.g. yellow is awesome over the Blue Moon background. I think I’m just gonna change the default background color.)

This feature is enabled on the table only. I think it’s by far the main use-case. I may add it to other groups as it has a few benefits. But this requires extra work (mainly with the visual feedback when moving cards) so it won’t be added at the moment. Also, it will never be possible to select cards from different groups at the same time.

Speaking of the visual feedback, everything is nice and you get a preview when moving the cards. Also, if you go to another group the preview collapses into one card (you’ll have to wait for alpha 2 to see it for yourself)!

Many people have asked for it after alpha 1 and it’s a big feature, so I’m glad it’s finally inside the code base! And it was actually easier than I thought, so I’m really satisfied!

5 features left before alpha 2! Yeah that’s two less than last week because I decided to remove one feature from the list. It was über-cool so I surely will add it for the beta. But it’s a bit complicated and not really required… So in order to speed-up the release of alpha 2 I postponed it. (And don’t ask what it was… it’s a very nice surprise.)

New gestures

Posted May 17, 2008 by
Categories: OCTGN.net

A few news from the OCTGN 2 front!

After the big feedback from alpha 1, I changed the gesture to pan the table. Many people didn’t like the simple click on an empty space and drag. So now you can click anywhere, but you have to press on the space bar first (which is the quite common shortcut to pan in many programs, notably image editing software).

Of course, this is also preparing the way for multiple card selection. It seemed everyone wanted to be able to select multiple cards! I’m going to do that, but I’d like a bit more input on what you intend to do! Since I’m not a user of multiple selection myself, tell me how you use it:

  • Do you like to select cards intersecting your selection rectangle, or cards completely inside the rectangle?
  • Are you using this feature primarily to move cards around?
  • Are you interested in appling cards actions to all selected cards (which may be non-intuitive for some custom script actions, but I suppose it should be possible)? What would be an example of that?

I’ve also changed the gesture to move a card to the bottom of a pile. I am not fan of keyboard modifiers so I try to remove them when I can. I changed from holding Ctrl down (in alpha 1) to a specific zone appearing when you hover the card on the target pile. A picture’s worth a thousand word: 

(The image is clipped in the default WordPress layout, click to see it in full size.)

6 left to go!

Reordering

Posted May 3, 2008 by
Categories: OCTGN.net

In continuation to the work done on the hand a few weeks ago, I’ve added the following features:

  • The possibility to bring a card at the top or the bottom of other cards on the table. This is accessible in the context menu and has a keyboard shortcut associated. When the mouse is over a card on the table, hit PageUp to bring it to the front, or PageDown to send it to the back.
  • The possibility to reorder any group, just like I did with the hand in a previous post. Again, everything is neatly animated and intuitive feedback is given to indicate where the card would be dropped.

 

It was a bit longer and more difficult than I expected. Mostly because of the scrollbar. Anyway now everything is fixed and if you drag a card near the top or the bottom of the list, it automatically scrolls. (and it do so nicely with a progressive acceleration).

…9

-jods

Boring stuff

Posted April 20, 2008 by
Categories: OCTGN.net

Hello!

Quick follow-up on previous week poll. I have decided to keep what is currently coded, i.e. Shift + left click = targetting (single card as well as drag and drop to create arrows). I take note that many of you would like to see the possibility to choose to use the middle button as well. I can easily put that back into the code as an option and I may do so when I get some time (as usual: features required to play are implemented before features which are “nice to have”).

Nothing fancy to show off this week, unfortunately. I did a good amount of hard work on a few problematic inner workings of OCTGN and fixed a bug or two. There’s a very basic “About” window as well. Anyway, it’s not fancy but I’m sure you would love to hear that after that “boring” work the countdown to alpha 2 is now at 10.

-jods

Any idea for targetting?

Posted April 13, 2008 by
Categories: OCTGN.net

As mentionned in some comments on previous posts, I am not happy with the use of the middle mouse button to target cards.

Because there are two kind of people, who can’t comfortably use the middle button:

  • Those without a middle button (think cheap mouses, laptops)
  • Those with a very high tech mouse, so much high tech that dragging with the middle button is very hard to do. (Believe it or not I now fall into this category. My middle button is at the same time a wheel, a middle button, and can be pushed to the right or to the left - don’t ask me what this actually does. But the result is that everytime I press the middle button I end up pushing left or right and everything goes nuts)

So, middle button being unusable to target, I need a replacement. I don’t really like keyboard modifiers (shift, alt, ctrl) because they aren’t discoverable. If you don’t know about them, you probably won’t find them out by yourself. Of course there is a user manual, but who read those anyway (seriously)? 

My initial idea was to have some kind of button appear on (or next to) the card when the mouse cursor is over it. It is not intrusive (since the button is invisible when your mouse is not on a card) and you can’t miss the feature. I was extremely happy with the idea until I tried to code it. Two usability problems arose:

  • Animations, different zoom levels, rotated cards… All of those interfer with the button placement. But it’s not too bad, there usually is a way to compensate and still keep a coherent user interface. The biggest problem is number two;
  • Very often cards are on top of one another (on the table and in your hand). And this is very annoying.
    Do I put the button on top of everything or at the same level as the card? If you put it at the same level as the card, it potentially gets obscured by an overlapping card. Which means you can’t click it, which implies you can’t target the card, which is bad.
    So you put it on top of everything. But having the button to target card A appear on card B is very confusing for the user. Even worse: when I move my mouse to the button I have to go over card B… which makes the button disappear and instead the targetting button for card B appears. Confusing and I still can’t manage to target my card!
    I can hear the most clever amongst you: why not find a space on the card which is not overlapped! E.g. there’s one easy spot: the point where the mouse is! First, this makes the button appears at a different place each time, which is very confusing (some people have been confused by the big card view, although there is a very logical rule to its placement). Second, sometimes there is no place big enough for the button to fit and the result may just be ugly. And third, if you consider making the button appear under the mouse it’s a bad idea because it gets in the way of the most common operation: drag a card.

I have to admit I don’t have a good idea for an easy-to-use, nice and discoverable interface to target cards.

Currently, I’m back to using the left mouse button + holding Shift. It’s easy to use, the only thing I don’t quite like is that it’s not discoverable. But it’s not a blocking issue so I may get over it. Playing a card face down will probably use Shift as well anyway, since it’s hard to come up with a nice idea that doesn’t get in the way of playing a card normally (the most common operation).

Does anyone have an idea?

PS: oh, and this brings us down to 13 or 12, depending on whether you consider the targetting issue fixed or not. (If you don’t know what I’m talking about, you may want to read the previous post)

A Better Hand

Posted April 6, 2008 by
Categories: OCTGN.net

Hi everyone,

I’ve done plenty of boring fixes and tweaks to OCTGN.
Amongst the boring stuff, there’s one new feature that shines. One can now reorder his hand. Here’s a screen shot of this feature in action.

The reordering features comes complete with nice animation to indicate where you are about to drop the card plus very nice layout-to-layout animations. The overall feel is extremely dynamic and cool.

Also, I have made a list of issues/features I’d like to do address for the next release (tentatively called alpha 2, how original?). Although the list is subject to unpredictable growth it currently contains 14 items.

Have a nice day!

-jods

Survey: HD

Posted March 27, 2008 by
Categories: OCTGN.net

I was wondering: are you interested in good support for very high-definition images?

Using relatively large card pictures has a few advantages. Zoomed on, they’re big on your screen, easy to read and provide very detailed illustrations.

On the flip side, they are also big in bytes size. Which implies:

- larger patches (e.g. 70Mo for a core set, is that a lot?)
- needs more space to host on the web
- more time required to download
- takes more space on your HD
- loading images from the HD is slower
- memory usage and pressure goes up
- and on older machines, the overall performance may decrease because of the additional resizing and image filtering work required.

Of course, big card pictures simply “work” in OCTGN just as well as smaller ones. Pretty well, actually (but I admit I have a good PC). But there are a few use cases where specific adaptations are called for to provide the best experience (e.g. doing a bit of prefetching to hide the increased loading times.)

Before coding anything, I would like to know: are you interested in high definition card images?

  • Yes! I would love to see big and crisp close-ups of my cards. Never mind the size of the patches, everyone has 1To hard-drives and 1Go/s optic fiber anyway.
  • I don’t care. Big cards are ok but the current size is fine as well.
  • No thanks. I don’t want uselessly huge pictures which covers 90% of my screen when I see one card’s details. Not to mention I spent 2 hours downloading that damn 100+Mo patch.