48 coaches online • Server time: 00:27
* * * Did you know? The oldest player is debog with 649 games played.
Log in
Recent Forum Topics goto Post Star Player Picturesgoto Post NAF LIVE EVENT - 28t...goto Post No seasons. 2016 Pro...
Christer
Last seen 14 hours ago
Christer (5)
Overall
Super Star
Overall
Record
22/4/11
Win Percentage
65%
Archive

2024

2024-08-16 15:38:54
rating 6
2024-07-30 13:00:31
rating 6
2024-06-25 11:47:16
rating 6
2024-06-22 21:49:09
rating 5.6
2024-06-18 15:06:20
rating 6
2024-03-31 20:20:37
rating 6
2024-03-30 15:14:25
rating 6
2024-03-09 00:15:17
rating 5.5
2024-02-02 13:57:16
rating 5.9
2024-01-28 12:41:38
rating 6
2024-01-14 13:14:20
rating 6
2024-01-07 00:13:05
rating 6
2024-01-05 18:07:03
rating 5.9

2023

2023-12-29 22:52:22
rating 6
2023-12-21 21:21:09
rating 6
2023-12-19 16:04:27
rating 6
2023-11-02 13:35:55
rating 6
2023-10-03 18:18:21
rating 6
2023-09-13 19:12:07
rating 6
2023-07-12 18:17:17
rating 5.9
2023-07-11 22:33:25
rating 6
2023-06-29 11:09:33
rating 6
2023-05-27 23:06:09
rating 5.4
2023-05-10 11:45:33
rating 6
2023-05-03 21:31:28
rating 5.9
2023-04-25 18:01:24
rating 5.6
2023-01-29 15:52:51
rating 5.8
2023-01-21 18:35:18
rating 6
2023-01-11 12:39:37
rating 5.4
2023-01-02 18:57:10
rating 6

2022

2022-12-31 12:10:19
rating 6
2022-11-30 23:28:31
rating 5.6
2022-03-28 15:32:21
rating 5.8

2021

2021-10-16 20:23:20
rating 5.9
2021-09-02 11:32:40
rating 6
2021-08-27 23:04:22
rating 6
2021-08-06 23:08:34
rating 5.8
2021-07-26 01:26:31
rating 5.8
2021-07-20 02:46:59
rating 6
2021-07-07 20:30:33
rating 5.9
2021-06-14 14:24:30
rating 6
2021-03-09 00:39:11
rating 5.9

2020

2020-12-09 11:20:11
rating 6
2020-11-30 18:03:36
rating 5.8
2020-10-13 11:59:57
rating 5.9
2020-08-08 22:48:43
rating 5.8
2020-08-07 21:32:26
rating 5.9
2020-03-18 14:09:47
rating 6

2019

2019-12-13 21:32:02
rating 6
2019-11-25 16:00:40
rating 5.9
2019-04-14 23:33:08
rating 6
2019-04-07 16:59:39
rating 6
2019-04-07 00:55:26
rating 6
2019-01-08 15:27:38
rating 5.9
2019-01-05 02:58:18
rating 5.8

2018

2018-08-17 17:28:31
rating 6
2018-08-15 00:05:40
rating 6
2018-07-17 20:17:40
rating 6
2018-06-28 14:28:08
rating 5.9
2018-05-23 17:55:10
rating 6
2018-05-10 22:42:46
rating 6
2018-05-09 19:42:28
rating 6
2018-04-30 10:44:23
rating 5.8
2018-04-23 12:33:02
rating 5.8

2017

2017-04-23 18:06:35
rating 6
2017-04-06 23:00:56
rating 6
2017-04-03 19:06:00
rating 6
2017-03-29 22:35:46
rating 6
2017-03-25 16:18:39
rating 6
2017-03-11 21:24:26
rating 6
2017-02-14 14:23:58
rating 6
2017-02-10 14:54:03
rating 6

2016

2016-11-30 00:04:21
rating 6
2016-11-27 23:40:04
rating 6
2016-11-17 18:18:07
rating 6

2015

2015-09-06 23:59:26
rating 6
2015-01-24 15:56:29
rating 6
2015-01-22 13:10:32
rating 6
2015-01-19 21:20:53
rating 6
2015-01-10 19:03:45
rating 6

2014

2014-09-09 15:35:53
rating 6

2013

2013-04-26 11:48:40
rating 5.7

2012

2012-12-18 17:37:29
rating 5.9
2012-11-18 18:19:19
rating 6
2012-09-25 13:47:16
rating 5.6
2012-08-15 12:31:53
rating 5.9
2012-08-10 23:12:22
rating 5.9
2012-06-27 22:53:48
rating 5.9
2012-04-10 11:56:38
rating 5.9
2012-03-07 13:52:00
rating 5.9
2012-02-16 16:59:56
rating 5.9
2012-02-04 19:00:41
rating 5.3

2011

2011-07-25 23:32:43
rating 5.6
2011-05-23 13:12:52
rating 5.6
2011-02-04 14:26:18
rating 5.4

2010

2010-03-26 11:38:41
rating 5.1
2010-03-01 12:16:53
rating 5.6

2009

2009-12-08 16:40:30
rating 5.8

2008

2008-09-11 14:47:19
rating 4.1
2008-02-26 21:16:54
rating 5.3
2008-01-21 01:01:58
rating 5.6

2007

2007-11-06 21:23:14
rating 5.1
2007-10-16 00:26:11
rating 5.4
2007-09-30 17:10:03
rating 5.4
2007-09-30 12:01:42
rating 5.3
2007-08-09 12:14:57
rating 4.5
2007-08-06 12:02:52
rating 4.9
2007-08-03 17:56:21
rating 5.4
2012-03-07 13:52:00
66 votes, rating 5.9
LFG development
Thought I'd give you a quick update on the development progress of the updated LFG page I mentioned in my last blog post. I'm currently quite far into the process of implementing the new system and for the sake of clarity I'll pretend that I did the work in the order I'll be presenting it here.

As I mentioned in the quick overview blog, the intent was to make it easier to set up games (primarily in the Ranked division). What I wanted to do was a highly visual match maker while still leaving the control to the coach. To accomplish this, I envisioned a system that worked more or less like this:

1. The coach selects which teams he or she wants to play with.
2. A list of potential opponents is shown, and the coach decides to either accept or decline the games.
3. Once a game has been mutually accepted, the game is offered to both coaches.
4. Once both coaches clicks to start the game, the FFB client is launched into the game.

To make this possible on the server side, I ended up designing a state machine system that keeps track of coaches who are looking for games, and each potential game is tracked with the aid of a state machine. Since pen and paper (which is what I started out with) quickly becomes unwieldy in a design process I ended up buying a license for Omnigraffle, a diagramming tool much like Visio, to figure out the state machine for the matches. This is what I came up with:



What this shows is a set of states in which a potential game can be in. A game starts out in the "DEFDEF" state on the left, which indicates that neither coach has made a decision. You'll notice that there are four different possible actions (Accept, Decline, Timeout and Start). Three of these are directly related to clicks by either coach, while the Timeout action is something done automatically on the server after a designated time has passed without an action from a coach.

Once a game has reached the "STASTA" state, which indicates that both coaches have clicked to start the game, the game is launched. Those of you with a good sense of detail will notice that there's a mistake in the diagram (nothing major), and I'll leave that as an excercise to you to figure out what's wrong :)

Most of the back-end code to handle this is implemented at this point.

When it comes to the front-end, development isn't nearly as complete. I have, however, drawn a couple of mockups indicating what I intend to implement.

First off, a coach selecting teams to play with will look something like this:



The idea is that the coach selects the teams, and clicks the "Look for Games" button. The checkboxes will be "sticky" so that next time the page is loaded, the checkboxes will remain toggled the same way they were last time.

Once the button is clicked, the actual LFG page is shown:



The idea here is to show a list of possible games for the selected teams, and allow the coach to accept or decline each game. Once a game is declined, it will be hidden from the list (only to reappear after the timeout has expired on the server side). Accepting a game will simply show it as accepted until the opponent does the same.

Once both coaches have accepted a game, the game offer page is shown:



This page should be fairly easy to understand. Coaches click to start the game and the client will be launched. Once a game has been offered, any other game offers are simply hidden, and once a game has been started all other game offers are declined automatically and the coach is removed from LFG consideration.

My hope is that this system will make looking for games much quicker for everyone and that it will let people spend more time playing the game rather than spending time trying to fine a suitable opponent.

Let me know what you think!
Rate this entry
Comments
Posted by Purplegoo on 2012-03-07 14:05:09
Pretty sweet. Hopefully it will really boost the division!
Posted by maysrill on 2012-03-07 14:14:09
This looks great! Can't wait to see it hit live!

If there was a 7, I'd rate this 7.
Posted by Ehlers on 2012-03-07 14:24:15
Keep up the good work, looks awesome :)
Posted by Balle2000 on 2012-03-07 14:53:22
You are a BB Deity
Posted by Hitonagashi on 2012-03-07 15:02:51
Looks awesome, you've covered all bases really well there.

Just as a matter of interest, have you ever looked into Balsamiq? I use it all the time for UI mocks, and absolutely adore it :D.
Posted by Rijssiej on 2012-03-07 15:06:03
On the mistake in the diagram:
Is it the accept arrows from offdec and decoff to decdec?
Or is it the decline arrows from accsta to offdec and staacc to decoff?
Or is it no decline arrows from accacc?

I do like the idea btw :)
Posted by SvenS on 2012-03-07 15:16:17
Best news Ive seen in quite a while! :D
Posted by icesmooth on 2012-03-07 15:18:10
simply amazing

and whoever rated this anything but a 6 is a ............
Posted by Garion on 2012-03-07 15:29:10
wow that is a brilliant idea :D

great stuff
Posted by PainState on 2012-03-07 15:48:38
Thanks for the upgread Christer...this looks really good and a 100% buff to the ranked match making process.
Posted by Christer on 2012-03-07 16:25:50
Hitonagashi,

As a matter of fact, I use Balsamiq at work for mockups. I, however, wanted a more generic diagramming tool (for example to build state machine or class diagrams).

Balsamiq is a fine product and does what it's designed for very well. If I wanted to find negatives for it, it'd be a slight hesitation in response (Adobe Air isn't exactly lightning fast), the lack of layer support and the lack of easy custom component generation.

Omnigraffle has a pretty good reputation overall, and it seems like a very capable tool. The learning curve is much steeper than Balsamiq so it'll take me more time to become properly productive with it. Having worked a fair bit with Visio helps in that respect.

At the end of the day, I chose Omnigraffle over Balsamiq as that feels like the better tool for my overall needs. The two apps are priced high enough for me to not buy both on a whim ($79 for Balsamiq and $99 for Omnigraffle). I'm pretty sure I'll manage without Balsamiq :)
Posted by The_Murker on 2012-03-07 17:04:26
Beautiful. Simply Perfect. You CAN accept several matches at once while you wait for the first of those other coaches to accept, correct?

Does the pairing system use any FUMBBL match-up data to offer "good" matches only, or does it offer every match that is legal in a TV range? One could still arrange a game in the old method, true?

Campagin drive to pay for that program to be started in the forum!
Posted by Christer on 2012-03-07 17:09:24
The_Murker,

The idea is that you'll be able to accept any number of games and the system will simply pop up the first one where the opponent also accepted as an offer.

It will offer all legal games and not filter anything based on what would be a theoretical best pairing. The sort order may use TV difference as one factor though.
Posted by Hitonagashi on 2012-03-07 17:36:48
Christer:

Thanks for the response, very interesting :).

My pet hate is the Air canvas is limited to 6000 pixels square (a real issue if you want to draw a flowchart involving say, 10-15 iPhone screens), and yeah, I end up grouping everything remotely associated with each other (like a table) together, so I can move it and edit it easily.

I've never looked into Omnigraffle, so I'll have a poke into it. It certainly looks useful.

I do have a question...in your LFG mockup, you've got the middle area as a question mark, but on hover it changes to the controls? What does that question mark mean?
Posted by uuni on 2012-03-07 18:00:58
I think it looks really nice. I like the idea of offering more automatic help for pairing games in [R].

Would such feature benefit from having multiple sort options available for potential pairing? I would like to be able to sort based on: CR, CR dif, FF, FF dif, TV, TV diff and I would not frown upon the use of Box suitability rating also.

Excellent! :-D
Posted by lizvis on 2012-03-07 18:43:01
when i click the 'look for games' button, nothing happens :(
Posted by Ehlers on 2012-03-07 22:33:17
This will also be offered to L and S right? :)
Posted by Ehlers on 2012-03-07 23:00:58
I dont know if you can pick a team already locked in a Scheduled? Might be worth implementing in the new LFG.
Posted by DukeTyrion on 2012-03-08 17:19:52
Wow, 17509 TV, that's a pretty huge Dwarf team :-P
Posted by spelledaren on 2012-03-10 13:25:14
Things like this might get me playing again.
Posted by Woodstock on 2012-03-20 20:59:46
Shush Duke, no talks about the admin client!