Monday, September 29, 2008

Want to help? Write My Gui

I stink at writing user interfaces. I think they are hard, tedious and like getting a root canal (thankfully I’ve never gotten one but I’ve heard bad, bad things). The good news is that I’m making it easier for you to help me write the gui, prounounced gooey if you are actually talking to another living, breathing person about programming instead of just writing about it, joke, laugh.

The user interface in MTG Forge is pretty basic anyways. The gui basically shows cards and you can only click on those cards. I’ve made those component into abstractions (Java interfaces) so someone else could easily come along and say, “I can easily write this 3D stuff that has a virtual playmat, do you want that?” And I would say, “Sure, dude.”

The other good news is that I’m making it even easier because I am already handling all of the events of the abstract components. In other words if you were writing the code to display a Magic card, you don’t have to worry about what to do if the user clicks on the card, you worry about what is the coolest way to display that card. All of the events are already being handled, which makes the coding more complicated for me but less complicated for you. Thanks, your welcome.


Nanocore said...

Cool, it would be great if someone did that (unfortunately I am graphically challenged so it can't be me). It would also be very cool if that interface would be cross platform, just like mtgforge is now. Granted, not that it be a requirement, but it would certainly be nice that this would continue to be playable on NON MS Windows systems.

Gando the Wandering Fool said...

It occurs to me that maybe what is needed is someone to do a mockup in an art format and let a programmer make it.

Anonymous said...

That would be nice, but I am oblivious to the programing world. Also, could you think about adding a patch feature to it.

Forge said...

Well I'm planning for the far future. The user interface for version 2.0 looks exactly like the current one. Basically this article talks about the ability for "future upgrades."

Theoretically even I could upgrade the user interface if I got good enough. I realize this article was more about programming that Magic, so I might have lost some people.

Anonymous said...

To the author of MTG Forge:

In regards to an interface, what the MTG community NEEDS right now badly is a collaboration between your project and OCTGN 2, which is opensource now. If you haven't seen screen shots of his newest version i recommend that you check them out BECAUSE.... you my friend have the killer app in the world of mtg. You're the only project around that has AI and i'm sure you already know that. What SEVERAL people would like to see from most of the magic projects floating around the net is still not available, the ability to play mtg against a friend, with the same style of rules checking that is found in mtg online. Your project goes further than that by allowing for AI matches against the computer. What I am proposing is this: Why don't you take a look at the source for octgn 2 alpha 2 that was just released, and consider speaking with jods about using some of his work. It would provide you with the instant functionality of a Beautiful interface with handles to all of your projects events already included, and would allow for connection of 2 players over the internet, while potentially utilizing your AI to judge correct game play for both newcomers to the game, or just for confusing scenarios. This is something that no one else out there can do right now except for MTGO. Please just consider my suggestion because I know that if you could pull this off you would be making a million MTG fans extremely happy people. Thanks