It is currently 23 Apr 2024, 07:34
   
Text Size

New constructed game screen for N players

Post MTG Forge Related Programming Questions Here

Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins

New constructed game screen for N players

Postby Max mtg » 22 Nov 2013, 17:48

This is just ugly!

I'll post a screen from Heroes 3 or Starcraft to demonstrate how good games implement such screns.
Even with a obvious limitation on number of players the old interface was much better in terms of information accesibility and number of clicks required to set up a game
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: New constructed game screen for N players

Postby Hellfish » 22 Nov 2013, 18:37

No word when it was the standard on the variant screens? Either way, I'm open to suggestions, I'll even port any changes back to the variants :-)
So now you're
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
User avatar
Hellfish
Programmer
 
Posts: 1297
Joined: 07 Jun 2009, 10:41
Location: South of the Pumphouse
Has thanked: 110 times
Been thanked: 169 times

Re: New constructed game screen for N players

Postby Max mtg » 22 Nov 2013, 19:51

While that was somewhere deep in varaints menu, it just didn't catch the eye.

Sample 1: Each player is represented by a band with summary, details for the chosen player can be changed in right half of the screen

Sample 2: Bigger stripes for each player, wide enough to fit dropdown lists to choose deck type and the very deck. Excuse me for Russian UI (it looks like I don't have an english version).
Attachments
sc2.png
sample 2
homm.png
sample 1
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: New constructed game screen for N players

Postby moomarc » 28 Nov 2013, 13:10

I thought I'd do some quick potential mockups based on the concepts posted by Max. I have zero knowledge of layout coding in java so I can only go as far as the design. I've tried to work with currently used components so assume it should all be possible at least. Layout two below is the winner, but posted both options I was working on for general interest.

Game Setup 1.jpg

The first layout is a bit more compact. Deck randomization would work slightly differently though due to the dropdown list implementation, and I'm quite frankly not sure how we'd implement the random color decks. It would also be difficult to add deck filtering systems.

Game Setup 2.jpg

Layout two is a bit more robust but it will be a close call as to whether it will fit on our minimum screen size. It implements the current deck chooser so should work with any improvements planned for it as well.

General comments:
- Player 1 and two cannot be removed.
- Player 1 name is populated from preferences, but can be edited (possibly overwriting the current preference). The other players names would be assigned randomly as they are currently when starting a match, but can also be changed.
- Player 1 avatar will use the last used avatar while the rest would be assigned randomly as they are currently when starting a match. Clicking the avatar would allow a new avatar to be selected which would finally mean you don't end up playing EvilJeremy that looks like Serra Angel.
- The team selection would be assigned 1 player a team by default. I think it would be easy to then add one extra condition to Player.isAlly(Player) that checks that the players are both on the same team. It would make it easy to customise multiplayer matchups based on player strength.
- Variants could be incorporated into this layout fairly easily. For archenemy teams would be assigned based on the player selected as archenemy (which we'll hopefully be able to assign to someone other than the human). Just add an extra tab to each player for Vanguard selection etc. This would hopefully start making progress towards being able to implement multiple variant games.
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: New constructed game screen for N players

Postby Max mtg » 28 Nov 2013, 16:01

Great sketches, Marc!

I don't have much to add:
Variant 1
- needs that "add player" button positioned inside the scrollable area
- a special panel has to be developed for random colors deck delection.

Variant 2
- the band for player whose options are displayed at the right should be higlighted somehow.
- the callout with 'deck selection' (button?) can be extended with chosen deck summary to take the full width of a band.
- remove player button might become an icon, say a red cross, to free up space for deck summary.
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: New constructed game screen for N players

Postby Chris H. » 28 Nov 2013, 16:08

Looks great Marc! :D
User avatar
Chris H.
Forge Moderator
 
Posts: 6320
Joined: 04 Nov 2008, 12:11
Location: Mac OS X Yosemite
Has thanked: 644 times
Been thanked: 643 times

Re: New constructed game screen for N players

Postby friarsol » 29 Nov 2013, 00:43

Yea the sketches look nice. I definitely agree with all three of Max's Variants 2 points:

Highlighting the "active" player is very important, I almost missed who was selected when I was first looking at it.
And displaying the selected deck by each player is also very important. A Red X in the top right corner should free up the space easily for that.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: New constructed game screen for N players

Postby Max mtg » 29 Nov 2013, 04:14

Ah! One more point, that could be applied to both variants.

That checkboxes in the bottom apply only to random decks, so they could be moved to that right panel and become visible, when random deck is being selected. There are only 8 lines in the deck list, so it can be can be safely shrunk.
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: New constructed game screen for N players

Postby moomarc » 17 Dec 2013, 09:32

I had a bit of time so have applied the suggested changes to make new mockups. I applied across two skins for comparison.

- The active player avatar will be fully opaque while inactive ones will be 50% transparent. Additionally the active player's avatar will have an outline that uses the 'selected' colour swatch while the rest will use the text color.

- Deck selection is now a proper button that spans the width of the panel and shows the current deck selection.

- Random deck checkboxes would appear only when applicable

- Remove player is now a skinned X in the top right of the panel for players 3 - 8.

Good luck to whoever tackles the implementation. Let me know whether there's anything else I should apply to the layout. Maybe including variant options?
Attachments
Game Setup - The Dale.jpg
Revised layout applied to The Dale skin
Game Setup - Journeyman.jpg
Revised layout applied to journeyman skin
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: New constructed game screen for N players

Postby moomarc » 19 Dec 2013, 17:52

I've taken the design one step further to visualize how we could incorporate the variants into the base constructed game setup. The basic layout would be the same except that the player area would have the height reduced slightly to make space for the variant selections at the top.
Game Setup Variants basic.jpg
Basic constructed match setup


My ultimate idea would require a few changes to how the variants are currently implemented as I'd ideally have multiple variants being able to be active at the same time. So we'd probably start with radio buttons instead of checkboxes. But I've designed it around my end vision and hopefully someone can make it work.
Quite simply a variant could be ticked and for each player a few extra buttons would be added depending on the variants selected. Two examples follow:
Game Setup Variants vanguard.jpg
Vanguard variant only
Game Setup Variants mixed.jpg
Vanguard and classic Archenemy enabled


For Vanguard each player gets a new button which, when selected, replaces the deck selection panel at right with an avatar selection and avatar info panel. Planechase and Archenemy would get a split button - one for Planar/Scheme deck selection and one for jumping to the relevant section in deck editor. Commander would only get the jump to deck section button.

Archenemy would have two modes - classic mode where player 1 is the archenemy and everyone else is assigned to the same team. Player 1 would always start. The second mode is archenemy rumble where everyone has a scheme deck and the same life, and dice roll determines who plays first. Each variant mode has the option to use the vanguard avatar/scheme deck/commander etc from the deck list as an option in the relevant section list instead of a checkbox as it is now. If selected and the section is unavailable, it acts as though random was selected.
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: New constructed game screen for N players

Postby friarsol » 19 Dec 2013, 18:34

moomarc wrote:Each variant mode has the option to use the vanguard avatar/scheme deck/commander etc from the deck list as an option in the relevant section list instead of a checkbox as it is now. If selected and the section is unavailable, it acts as though random was selected.
This sounds perfect. And I like how then the Variants submenu on the left menu would then just be rolled into the primary constructed window.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: New constructed game screen for N players

Postby moomarc » 19 Dec 2013, 21:27

friarsol wrote:This sounds perfect. And I like how then the Variants submenu on the left menu would then just be rolled into the primary constructed window.
Thanks Sol. And yip, that was the general idea seeing as the variants are all just variants of constructed, not any other game mode. There will be one extra click for some modes because the deck selection and scheme deck/vanguard /planar deck selection aren't up at the same time, but overall it has a better flow and I'm pretty sure fewer clicks total.

Now I've done the bit my profession is good at and hand over to those that can handle the back end. Out of curiosity, what would be the best/most robust and flexible layout platform to look at for programming this stuff? PM me so as not to clog the thread (unless it's something that someone thinks we need to discuss)
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: New constructed game screen for N players

Postby Marek14 » 20 Dec 2013, 07:23

May I ask how is the position's value for player computed? Is value of each player's cards computed separately and then added and substracted to get the value for a specific player?

Well, what I'm asking is this: how hard it is to implement different opponent structures?

I thought about what would be the most general multiplayer structure in Magic and it seems to me that it would be if you could freely define whether any pair of players are opponents or not. This would cover free-for-all, team variants like 2 vs. 2 and even pentagram where every of 5 players is allied with two of his neighbours. It would also allow "unequal" variants, like 1 player against team of 2, which could be either a challenge or an easy variant, depending on where the human would play.

Well, ideally, every "player" in this structure could also be replaced by a group of players with shared turn, but that's for later :)
Marek14
Tester
 
Posts: 2761
Joined: 07 Jun 2008, 07:54
Has thanked: 0 time
Been thanked: 297 times

Re: New constructed game screen for N players

Postby friarsol » 20 Dec 2013, 14:18

Marek14 wrote:Well, what I'm asking is this: how hard it is to implement different opponent structures?

I thought about what would be the most general multiplayer structure in Magic and it seems to me that it would be if you could freely define whether any pair of players are opponents or not. This would cover free-for-all, team variants like 2 vs. 2 and even pentagram where every of 5 players is allied with two of his neighbours. It would also allow "unequal" variants, like 1 player against team of 2, which could be either a challenge or an easy variant, depending on where the human would play.
The way I see the design, you get to assign team numbers to the players however you want. I'd imagine that the number of possible teams is the same as the total number of players. This allows for free for all (each player has it's own team) and any type of shared allied multiplayer (2 v 2 v 2; 3 v 3; 1 v 3; etc)

In this case, pentagram wouldn't be supported because you don't have shared allies. The player to your left doesn't share the same ally with you. I almost feel like this case isn't worth covering immediately, or at least not on this screen since it's already packed full of information. Maybe next to the start button there could be a "Customize Allies" button. This would display a grid-like structure for all of the current teams already chosen for the selected players. This would allow for you to be as specific as possible for weird Alliance Schemes such as Pentagram.

By default, this grid would have a + for your team (representing an Ally) and a - for all other teams (representing an enemy)

1 2 3
1 + - -
2 - + -
3 - - +

Here's an example Pentagram grid, assuming that each Team # is adjacent to the player +/-1

1 2 3 4 5
1 + + - - +
2 + + + - -
3 - + + + -
4 - - + + +
5 + - - + +
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: New constructed game screen for N players

Postby moomarc » 20 Dec 2013, 17:36

Sol got it right in interpreting my design. By default each player is assigned a separate team so free-for-all is the default with more than two players. Some basic logic would need to be coded such that there are never fewer than 2 teams and the team assignment would automatically shift to fill empty teams. By that I mean that if player 3 is assigned to team 2, then player 4 (who would be team 4 by default) is automatically shifted to the now-empty team 3 (I don't suppose it would really matter much, but the cosmetics of empty teams seems wrong).

Classic archenemy would also automatically set player 1 as the archenemy and team 1, and lock each other player into team 2. When network play becomes available I guess the team restriction could be removed allowing two teams to take on the archenemy while knowing they have to stay strong enough to defend against each other afterwards (or make alliances with the archenemy I guess). In archenemy rumble teams could be allocated freely and defaults to free-for-all.

I had never heard of the pentagram format so never considered it, but I think Sol's suggestion is a good approach.

Last thing I'm not sure of is how the life would work in a archenemy commander mix. Does Commander set your base life at 40, each archenemy gets +20 (and Vanguard applies its modifier last)?
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Next

Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 45 guests


Who is online

In total there are 45 users online :: 0 registered, 0 hidden and 45 guests (based on users active over the past 10 minutes)
Most users ever online was 4143 on 23 Jan 2024, 08:21

Users browsing this forum: No registered users and 45 guests

Login Form