I did spend a couple of hours last week and worked on a new user interface for Forge. (User interfaces are usually abbreviated gui, pronounce gooey, for graphic user interface.) It is amazing how complicated a “simple” gui can be. Forge doesn’t even have any animation or movement but coding a gui is still painfully slow.
GUIs look simple, they take 2 minutes to evaluate and 2 weeks (or more) to write. GUIs have a ton of details like “what is the icon size for your graveyard?” Do you want it to be 8 x 8 or 16 x 16 or 32 x 32 or something else? Additionally it is hard to make a gui look symmetrical and “clean”. Creating a messy gui is very easy but a “nice”, easy-to-use one takes many hours.
The good news is that I found a gui that I want to copy so I don’t have to juggle as many details. Magarena has a very nice gui, see below. I find it very aesthetically pleasing. Magarena also supports themes so you can customize the gui yourself and since Magarena already has a nice assorted of themes, Forge’s new gui will be able to use Magarena’s themes. (Everybody says code reuse is good right?!)
Hopefully the right panel in Forge, which I call the “card detail” panel, will slide in and out of view so you will have more space to see which cards are in play. I may be able to get rid of it completely by allowing the card picture to popup when your mouse is hovering over a card. The popup card picture would have to regular top of the card and the lower part could be Forge’s text view of the card, like keywords (flying, fear) and abilities.
In conclusion, writing a gui is a lot like writing a novel. Having one great idea isn’t enough, you need to fill in millions of details. And “millions of details” is the very definition of computer programming.
Thanks for reading,
mtgrares
p.s.
--Random computer quote, “Computers are useless. They can only give you answers” by Pablo Picasso.
--You really need to play Magarena. It has a great AI.