48 coaches online • Server time: 16:53
Forum Chat
Log in
Recent Forum Topics goto Post All Star Bowl!goto Post Secret League Americ...goto Post test mode doesnt wor...
SearchSearch 
Post new topic   Reply to topic
View previous topic Log in to check your private messages View next topic
Christer



Joined: Aug 02, 2003

Post   Posted: Jun 24, 2016 - 13:57
FUMBBL Staff
Reply with quote Back to top

First of all, I don't want this thread to become another place for people to post suggestions and bug reports for the custom roster system. For those kinds of posts, there is a Separate thread.

Instead, I wanted to talk a bit about something I've been thinking about for quite a while and would like some feedback on. As you can see, this is a pretty long post, and I will understand if you don't feel up for reading this Smile

Basically, the current structure of rulesets, leagues and groups is somewhat confusing and it's both hard to understand and at the same hard to explain. From a developer perspective, it's also a bit difficult to come up with good ways of implementing certain features (moving teams between different rulesets etc). I've not really had a comprehensive conceptual model of how these various concepts fit together.

I spent a fair amount of time yesterday thinking about this and feel that I have something that feels like a good way of explaining these concepts and gives me a potential way to improve usability of these systems.

Before I go through my conceptual model, I'll start with a short explanation of the terminology and technical components in the current system:

Ruleset
This is a concept that describes a set of rules for use when playing the game: Team Settings (# players on the team, starting treasury and progression), Client Options (players on the pitch, and various in-game rule settings) and Rosters (ie, which rosters are available to play; both LRB and custom ones).

Group/League
This is pretty complex, and is what's been causing problems for me. Groups are where player-run tournaments are run and can be connected to custom rulesets. Teams can join a group, and the commissioners has options to do things like setting a score for teams (mostly for tournament purposes).

Division
A division is in a sense a "default group" where membership is not optional. There's a ruleset connected to a division (which defines default behaviour). Even though it forces constraints on which matches can be played, it's not important in the context of this post/discussion. Just assume the division to be "League" for these purposes.


As I mentioned, the group/league duality has caused me problems. From a technical perspective, there's no significant difference between a league and a group. Effectively a league is a group with an assigned custom ruleset. Very simple distinction.

However, when trying to model how this would be used in practice things get very much more complex. A team can be part of multiple groups, exactly like things have been in the past. This is an important feature and I don't want to remove this. At the same time, all of these groups could technically be switched to a league, and it's not clear what would happen when that is done.

In the underlying data model for this whole system, nothing in particular will happen with a team when this happens. A team is inherently connected to a specific league (either the default one for the division, or the one where it was originally created) and there is no way to change this (at the moment - more on this later).

Clearly, this isn't ideal. It's confusing and not at all intuitive. When trying to deal with matches between leagues, and dealing with moving teams between rulesets, things become hard even from a development perspective. Making a user interface that makes sense, both from a commissioner and a team perspective is really hard.

This complexity and confusion is a pretty big red flag for me as a developer. It's a sign that things are not really well designed, and I needed to take a bit of time off from writing code to rethink all of this. I'd much rather take the time now to completely rethink how all of this is structured and potentially do a major rewrite than going down a path that will eventually lead to a dead-end and have to back-track (trying to use a non-technical analogy here, I'm sure you get the idea).

So after a bit of thinking and talking about it on the IRC chat with a few people, I feel I've found a way of thinking that makes sense and gives me a direction that feels intuitive and right.

Essentially, what I've come to realize is that the underlying technical architecture is reasonable. I don't intend to make any major restructuring by, for example, connecting teams directly to a ruleset rather than to a league (this is something I seriously considered). Instead, I want to effectively restrict some features to make things more clear. The core conceptual difference from before is that I now consider a "League" to effectively be a player-controlled division. This is really important from a conceptual level, and makes it possible for me to progress with the development work.

From a coach perspective, they could look up the league page, and create a team (much like now). This would automatically let coaches play in an "open play" type of environment using the league's ruleset, and doesn't really require or need the whole invite or join request process that regular groups have.

And here's the first limitation of a league: Leagues can't have teams in the same way as groups.

From this, a natural extension would be a second restriction: A league can't run tournaments.

Instead, the existing groups that wanted a custom ruleset would need to create a new league page in addition to the current group. For a group that wanted to switch to a custom ruleset, I imagine they would create a new Group, convert it to a league (assigning the ruleset), and have individual coaches migrate their teams into the league (from the default).

For new commissioners (Secret League, or whatever) the starting up process becomes more complex than now:

1. Create the ruleset, and configure it appropriately.
2. Create a League (create a group and convert it to a league by connecting it to the ruleset). This could obviously be simplified with some kind of user interface improvement.
At this point, open play matches is possible in the league
For tournaments, a group would need to be created as well:
3. Create a group, configure as appropriate
4. Set up the tournament.

With this slight modification of structure, it becomes much more clear that a team can only be part of a single league. Conceptually, it's up to a coach to move from one league to another (and I can actually think clearly about how this would work from a UI and technical perspective).

The whole reason I've written this post is to try to explain my thinking behind this, and get some input from you guys (especially commissioners who plan on implementing custom rulesets in their groups). Let me know what you think about this, and if you have any suggestions when it comes to this stuff (note that I still don't want custom roster related things in this thread Smile ).
mister__joshua



Joined: Jun 20, 2007

Post   Posted: Jun 24, 2016 - 14:15
FUMBBL Staff
Reply with quote Back to top

I think that makes sense. This in effect solves what I requested which was to see all the teams created with a ruleset > only it'd be in a league and they'd all be added automatically. That's great. The rest would function similar to now.

As a useful analogy to help describe it, it'd be like having a 'league' be the FA (Football Association) and then a separate 'group' for the league structure (Premiership, Championship, League 1&2).

_________________
"Yeah, well, you know, that's just, like, your opinion, man." - The Dude

Mr. J's LRB7 / Forum
SzieberthAdam



Joined: Aug 31, 2008

Post   Posted: Jun 24, 2016 - 14:21 Reply with quote Back to top

Nice concept Christer, definiately better than the current one.

However, for the first read I came up with another idea:

It would seem even more straightforward to me to allow creation of custom divisions instead of Group+Ruleset->League conversion. Divisions are designed for this in the first place. Ambiguity of the naming (League) would be also solved. Gamefinder(/Scheduler?) could be also easily aware which opponents to offer.

To restrict mass creation of divisions, it could imply an admin approve.

Groups could be formed like before but they could start tournaments of any custom divisions + League (+ Stunty?).

Migrations could be dealt later.

EDIT: Well, an initial migration is necessary of course. That will be a pain I know. Teams created for this and that group should be assigned to the respective custom divisions.

_________________
ImageImageImage
tussock



Joined: May 29, 2011

Post   Posted: Jun 24, 2016 - 15:59 Reply with quote Back to top

It's not really a new division though.

League Division has been LRB6-League, where users can do whatever they like with other LRB6 League teams.
Secret-League is different teams, but users can still do whatever they like with them with other SL teams.
CBBA-League is new teams and custom rules for them, but users can still just make teams with it and do whatever they like, with other CBBA teams.

That's League division. Users making their own rules for using teams and effectively doing whatever they like with them, and now also making their own Leagues with custom rosters and fixed custom rules (rather than just custom rules for each tournament).

Groups are then a thing where you keep track of various teams or provide tournaments for them, from any Division or any League. The League page will presumably link to various groups that use the League's associated teams.

I can see eventually something like SSL/NSL, once we can transfer teams in, it'd be nice to have a custom ruleset that automated a few more things for us. Keep the groups for the old tournaments, start a new league to drag all the teams into, could make life much easier here and there.



Anyway: divisions are for different user requirements, (purely competitive games, no choosing your opponents) League is basically "do what you want", or "do what any group agrees to".

_________________
ImageImage
koadah



Joined: Mar 30, 2005

Post   Posted: Jun 24, 2016 - 17:10 Reply with quote Back to top

Christer wrote:

For new commissioners (Secret League, or whatever) the starting up process becomes more complex than now:

1. Create the ruleset, and configure it appropriately.
2. Create a League (create a group and convert it to a league by connecting it to the ruleset). This could obviously be simplified with some kind of user interface improvement.
At this point, open play matches is possible in the league
For tournaments, a group would need to be created as well:
3. Create a group, configure as appropriate
4. Set up the tournament.


That is pretty much how Secret League Open is planning to do it now. Smile

However I have a bit of trouble with two of my key use cases.

i.e.

Open play between divisions and tournament play between divisions.

Transferring teams between divisions for each tournament sounds cumbersome. Worse for open/gamefinder matches.

We could put everyone on the same ruleset. But that would mean rulesets with a huge number of rosters. Some commishes wouldn't want all the rosters in their event.

That is why I suggested splitting rulesets and "rostersets".
If teams are linked to the same base rules is there a reason why they cannot play teams from any roster?

e.g. Secret League Open, OLC, All Stars, 145 Club or whatever else will not use the same rosters. But teams from all those leagues could want to play in something like the Open League Cup, Fumbbl Cup Massive Edition or Heavyweight Swiss.

Though OLC, All Stars, etc use different rules they could be linked to "standard" rules then override them on tournament setup.

Some leagues will need a custom ruleset but a lot won't. Those that don't could go "standard rules" but custom rostersets for maximum flexibility for their teams.

_________________
Image
O[L]C 2016 Swiss! - April ---- All Star Bowl - Teams of Stars - 4 more teams needed
zakatan



Joined: May 17, 2008

Post   Posted: Jun 30, 2016 - 12:50 Reply with quote Back to top

So you would create a group within the league to run tournaments with the league ruleset?

_________________
Image
koadah



Joined: Mar 30, 2005

Post   Posted: Jun 30, 2016 - 13:06 Reply with quote Back to top

I think that what Christer is proposing is that you create another group for the tournaments. That group should NOT be a 'league'.

Create teams from the 'league' group. But 'sign up' at the 'tournament' group.

That actually works out being easier to manage as you can clear the tournament group after a tournament to avoid confusion.
You can also have teams sign up at the league group so that you have a record of all league members.

_________________
Image
O[L]C 2016 Swiss! - April ---- All Star Bowl - Teams of Stars - 4 more teams needed
zakatan



Joined: May 17, 2008

Post   Posted: Jun 30, 2016 - 13:17 Reply with quote Back to top

So the League would be like a "New division" with its own team creation rules, but the client rules are specified in the Group?

League -> Available Rosters, starting gold, and other team creation options
Create team within the League
Apply for a Group
Group -> Run tournaments, define tournament rules (spiked ball, clawpomb nerfs...) on a per tournament basis.

In this scenario which would be the default rules for the Group? Ruleset 6?

_________________
Image
koadah



Joined: Mar 30, 2005

Post   Posted: Jun 30, 2016 - 13:26 Reply with quote Back to top

I believe it would be ruleset 6. But I don't know to what extent that matters. It is just a group.

The teams would have been created in your "league" so the I would expect the league rules to be the base. I would expect you to override those on the tournament.

Probably need Christer to confirm/clarify. Wink

_________________
Image
O[L]C 2016 Swiss! - April ---- All Star Bowl - Teams of Stars - 4 more teams needed
Roland



Joined: May 12, 2004

Post   Posted: Oct 23, 2016 - 13:20 Reply with quote Back to top

I manage two leagues that don't show up in the groups page. Why?

https://fumbbl.com/p/groups

Both are set to league with a custom ruleset and both groups have been active recently.

The groups:
SLUBBA
Svenska Ligan
bghandras



Joined: Feb 06, 2011

Post   Posted: Oct 23, 2016 - 13:25 Reply with quote Back to top

Did you sent the status as actively recruiting? I had similar issue, and that solved it.

_________________
Image
Roland



Joined: May 12, 2004

Post   Posted: Oct 23, 2016 - 13:35 Reply with quote Back to top

bghandras wrote:
Did you sent the status as actively recruiting? I had similar issue, and that solved it.


OK. That solved it for one but not the other....

Svenska Ligan is both public AND recruiting but not visible...
Roland



Joined: May 12, 2004

Post   Posted: Oct 24, 2016 - 21:38 Reply with quote Back to top

I think I know why now, it's because no team has ever played a game within the ruleset I created yet...
giorss



Joined: Nov 22, 2007

Post   Posted: Nov 02, 2016 - 11:35 Reply with quote Back to top

I created a League : https://fumbbl.com/p/group?op=view&group=10484
with ruleset: https://fumbbl.com/p/ruleset?id=165
League goal is to find matches on gamefinder with teams created like naf tournaments
My problem is that skills does not appear when matches are launched

Ruleset configuration on team options is:
Team Progression - no progression
Skill Progression - predetermined
Skills - 1:7D
Skills per Player - 2


is that a problem of ruleset configuration?
is there any tournament which allows to play matches by gamefinder?
should I create group instead of league?

_________________
Image


Last edited by giorss on %b %02, %2016 - %13:%Nov; edited 1 time in total
koadah



Joined: Mar 30, 2005

Post   Posted: Nov 02, 2016 - 13:19 Reply with quote Back to top

You could only play matches against teams created from the same ruleset.

Gamefinder does not tell you which ruleset teams were created with.

_________________
Image
O[L]C 2016 Swiss! - April ---- All Star Bowl - Teams of Stars - 4 more teams needed
Display posts from previous:     
 Jump to:   
All times are GMT + 1 Hour
Post new topic   Reply to topic
View previous topic Log in to check your private messages View next topic