It is currently 28 Oct 2025, 00:29
   
Text Size

Developer Plans

Post MTG Forge Related Programming Questions Here

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

Re: Developer Plans

Postby Max mtg » 17 Nov 2012, 22:39

Hellfish wrote:I've made a little headway into adding the Command zone properly, in my local build. Emblems/Effects now use the command zone and their triggers and abilities(static and not) work properly from there and I've got a decent UI representation (basically VField without the player panel). I'll probably keep trucking with this and at least attempt to implement Vanguard, as that seems the simplest variant to begin with.
That's wonderful!

But what is vanguard? (I mean, this game is rarely played and is hardly demanded - PC or commander would be a better idea)
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: Developer Plans

Postby Hellfish » 17 Nov 2012, 22:48

Glad you approve. :)
Vanguard is basically constructed with an extra card in your command zone with different abilities to suit your deck. That card also influences your starting life and starting/maximum hand size.

Planechase, Commander and Archenemy could follow easily by building on the foundations laid implementing Vanguard, I think.
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: Developer Plans

Postby friarsol » 18 Nov 2012, 04:41

Yea I think starting with Vanguard is a good idea, it's relatively simple and can be used as a nice building block for Commander and other formats.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Developer Plans

Postby RumbleBBU » 30 Nov 2012, 10:41

Minor update on my part...

You haven't seen many commits from me in the past week or two. Rest assured, I'm still here. Just a couple of things.

First, I've been suffering from a major lack of free time. This won't be getting much better next week either, but hopefully after that it will. At least for a while.
The second thing is I've been taking some hits in real life. Nothing major, but I'm not entirely ok ATM. Hopefully this too will get better in near future.

When I have the time again, I will return to working on the quest worlds. I've just been running into some concept issues.

The easy part: Define a world + a format and establish a duels/challenges directory structure with decks that coherent with the format. This is pretty straightforward. Also add the ability to change your world from one world to another. Aside from how your challenges would behave this ought to be pretty straightforward too.

The hard part: How on earth should the world format affect the player?

- Option 1a: The player can be awarded only with boosters from sets that are allowed in the world format. This seems pretty obvious but a couple of questions arise. Most importantly, what's the point of defining your custom format at the beginning of the quest and unlocking new sets if that all goes down the drain when you change from one world to another? And what if the player moves to the regular main "full cardpool" world with the current duels and challenges? Will his format become "all sets allowed"?
- Option 1b: Maybe the starting format + unlocked sets would only affect the world where you started the quest. But if done this way, more questions arise: Should it also be possible to unlock and sets to the other worlds as well? And if yes, wouldn't that lead to the player unlocking the same sets several times in the same quest? Or if sets that you unlock in one world are also unlocked in the other worlds, what's the point of having different worlds?
- Option 1c: Custom formats + unlocking new sets and the quest worlds are mutually exclusive. If you start the game in a nonstandard world, you cannot define a custom format or unlock more sets. (Personally, I hate this option.)

- Option 2: Maybe player decks should also be checked to make sure that they are valid for a given world format. However, it would entail a lot of extra work to automatize all this, and not all players would even want that (so it would have to be preference-controlled).

Thoughts, opinions?

Initially, I'll only be implementing the "easy part". Once that is up and running, I'll see what can be done about the "hard part".
User avatar
RumbleBBU
 
Posts: 394
Joined: 18 Aug 2012, 04:24
Has thanked: 29 times
Been thanked: 66 times

Re: Developer Plans

Postby Agetian » 30 Nov 2012, 12:04

I didn't know how exactly the Worlds were supposed to work, but the way I imagined it would work was that the world would define a sort of a meta-format or something like that, together with the quest deck progression and all the other quest-related things - in other words, it would completely control what cards are allowed in the card pool, what expansions are available from the get-go and which ones may potentially become unlocked (which may be none, all, or some specific ones), what quest decks you duel against and what challenges are available, what cards are restricted/banned, etc. Basically, I thought it would be something you choose one time when you begin the quest (as an extra option instead of choosing a format in the standard ways already supported) and then if you choose to begin a quest in a particular world setup, that world setup would completely define all the available and unavailable options and limitations for your quest... It looks like this is the closest to your option 1c, which you hate :), but I honestly don't see how it might work if the world could be changed mid-quest... I mean, all the problems you've outlined are valid and I honestly can't figure out how it's supposed to work if you can freely change worlds at any time - that would bring forward problems with deck compatibility etc. :\ I know I probably haven't contributed much to the discussion, but that's my current understanding of how it can work. :) I'd definitely love to hear some more opinions about the issue, too!

- Agetian
Agetian
Programmer
 
Posts: 3490
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Developer Plans

Postby moomarc » 30 Nov 2012, 12:28

I actually don't mind losing my entire pool and decks if I choose to go to a new world that doesn't support them. So my idea of how it would work is that the current world limits everything much like Agetian said, but you'd be able to basically planewalk at any time. In the new world you would keep any cards that overlap, so you could either effectively start a new quest in a new world after having saved up enough to buy a few boosters from the new world's shops, or you could move to a world that's more similar, requiring less capital to have been saved. Each world would have to store the information of your quest there so that you can jump back to it at any time if you feel like it, regaining your decks and cardpool from that world (I suppose the cardpool would be a communal one that's filtered by the current world's set configuration). Flavorwize, you'd find that the current world affects the way you cast spells and thus limits which of the spells you know can actually be used.

I think this would be great fun because you can slowly move through the history of Magic, opening up new worlds as the multiverse changes around you, or just play several different worlds within the same quest. It really gives the feel of planeswalking as well, in my opinion at least.

Anyway, hope things sort themselvs out soon in your real world. Looking forward to whatever you come up with.
-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: Developer Plans

Postby friarsol » 30 Nov 2012, 14:42

I was picturing Quest Worlds as being mostly mutually exclusive to Custom Formats/Unlocking. Instead of unlocking sets X wins at a time, you could migrate worlds X wins at a time. As far as what you could "take with you" I think having a banned/restricted set and card list plus an enforcing Deck Editor is the best way to handle that. Maybe the deck editor could also filter out cards not legal in your current format, so they would remain in your card pool, just be "inactive" until they are next allowed.

I think this is the safest place to start, since it allows the general concepts to work, without needing to deal with lots of weird questions. There are plenty of possibilities to allow for Custom Formats later on. But I think the concepts are different enough to stay separate for the near term.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Developer Plans

Postby Max mtg » 30 Nov 2012, 14:52

moomarc wrote:I actually don't mind losing my entire pool and decks if I choose to go to a new world that doesn't support them.
I'd suggest to keep all of your cards in inventory. Yet, as you planeswalk, you can use just the ones allowed by your current world.

Imagine different worlds as scenarios you can progress through independently, switching between them an any time.

This game mode is going to be better than any of mtg games ever made!
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: Developer Plans

Postby Agetian » 30 Nov 2012, 15:00

Agree with the points on traversing planes (planeswalking) as you move along, a sweet idea! I like the idea of enforcing sets/cards in each world, too.

- Agetian
Agetian
Programmer
 
Posts: 3490
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Developer Plans

Postby moomarc » 30 Nov 2012, 15:32

Max mtg wrote:
moomarc wrote:I actually don't mind losing my entire pool and decks if I choose to go to a new world that doesn't support them.
I'd suggest to keep all of your cards in inventory. Yet, as you planeswalk, you can use just the ones allowed by your current world.

Imagine different worlds as scenarios you can progress through independently, switching between them an any time.

This game mode is going to be better than any of mtg games ever made!
That's what I meant. I just spread the idea over too many words and lost the general meaning somewhere along the line. Nice summary! :P
-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: Developer Plans

Postby Agetian » 01 Dec 2012, 13:05

My short-time developer plans update: I'm currently done with the card support code arc (I'll be getting back to it eventually) so I'm going back to the sound system arc for a while, will try to look for some sounds on freesound.org that would fit different sounds events, and may as well add a couple missing sound events in the process as well.

A little question: does anyone still have sideboarding in short- or long-time plans? The idea kind of faded away, I'm not sure if I'll be able to tackle it, but I'll see if I can look into it if no one else is working on it anymore.

- Agetian
Agetian
Programmer
 
Posts: 3490
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Developer Plans

Postby friarsol » 01 Dec 2012, 14:05

Agetian wrote:A little question: does anyone still have sideboarding in short- or long-time plans? The idea kind of faded away, I'm not sure if I'll be able to tackle it, but I'll see if I can look into it if no one else is working on it anymore.
The biggest problem with sideboarding is the UI elements of it. I've eyed it a few times, (and even had very basic sideboarding working with a getOrderChoices dialog) but it really needs to look more like a Deck Editor box. The other problem I realized is that after the second game you don't really have access to the deck that was used in the second game, you only have access to the original deck and the original sideboard.

But feel free to give it a shot. Here's the base code I used for getOrderChoices. I had this code in GameNew.java right around where the library was being generated every game, but it probably belongs in Player.java

Simple SIdeboard | Open
DeckSection humanSideboard = humanDeck.getSideboard();
int playerSideboardSize = humanSideboard.countAll();

if (playerSideboardSize > 0) {
// Human Sideboarding
List<Card> newDeck = GuiUtils.getOrderChoices("Sideboarding", "Deck to Play", playerSideboardSize, humanSideboard.toForgeCardList().toArray(), humanDeck.getMain().toForgeCardList().toArray());
PlayerZone library = AllZone.getHumanPlayer().getZone(ZoneType.Library);

// Add Cards to library. You may need to set the Owner before they go in.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Developer Plans

Postby Agetian » 01 Dec 2012, 15:00

Ok, thanks for the info, Sol! I'll eventually get to it! Also, I think that a problem might be enforcing the sideboard size - for Constructed, I think it has to be either 0 cards or 15 cards, right? And for Limited, it can be the entire drafted/opened set that is not in the library.

- Agetian
Agetian
Programmer
 
Posts: 3490
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Developer Plans

Postby friarsol » 01 Dec 2012, 15:39

Agetian wrote:Ok, thanks for the info, Sol! I'll eventually get to it! Also, I think that a problem might be enforcing the sideboard size - for Constructed, I think it has to be either 0 cards or 15 cards, right? And for Limited, it can be the entire drafted/opened set that is not in the library.
Yep, check out how getOrderChoices() works, the third parameter is basically an integer that says "this is how many cards need to remain in the left box (sideboard)" which is perfect for this. If we have rules in the deck editor for enforcing sideboard sizes when creating constructed decks, everything else should work.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Developer Plans

Postby Agetian » 01 Dec 2012, 16:23

This is good, thanks for the tip! :) I'll see what I can do.

- Agetian
Agetian
Programmer
 
Posts: 3490
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 8 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 8 users online :: 0 registered, 0 hidden and 8 guests (based on users active over the past 10 minutes)
Most users ever online was 9298 on 10 Oct 2025, 12:54

Users browsing this forum: No registered users and 8 guests

Login Form