Monday, November 7, 2011

Forge: Stable and Unstable Versions?


Innistrad token
I love Forge but that does not mean that it is perfect.  Forge is an ever-growing, mutation.  And as we all know some mutations cause the X-Men and other cause the less interesting superheros like Aquaman or The Tick.  Programmers are free to add (almost) any feature that they want, there are no committees or vetoes.  Everybody is allowed to do (almost) anything, so if Forge seems like a patchwork of different ideas…well…it is.

Ideally there would be a stable version of Forge and an unstable version.  Users who did not want to deal with crashes or buggy cards would download and enjoy the stable version.  People who wanted the bleeding edge, with new cards and features would choose the unstable version.  The stable version would always have fewer features and cards than the unstable, because some issues cannot be easily fixed. 

The biggest downside for having a stable and unstable version of Forge is that is requires more time and effort.  Most of the programmers would probably work on the unstable version and a few programmers would solely work on the stable version.  Both versions would share 95% of the same code.  Features that were fixed for the stable version could be integrated into the unstable version and vice versa.

Although this sounds easy in theory, in practice this would require a different mindset.  Most programmers add new cards, which is relatively easy to do.  Cards are not thoroughly checked for accuracy.  There is no set of tests which a card has to pass.  The stable version would require that each card pass a minimum number of tests that were specifically written for each card.  Obviously adding more tests would mean more code and more time.

A couple of years ago I did create very hackish, duck taped patch for Forge that removed a list of buggy cards.  (The cards were replaced with a generic creature card that cost 2 and created a 2/2 creature.)  The card names were kept in a require text file which anybody could update.  While this did not remove the buggy features from Forge, it did remove the buggy cards, which was an improvement.

All in all, Forge is becoming less buggy.  I applaud the efforts of everybody who has helped make Forge the great, fun, fantastic, original program that it is.

Excelsior,
mtgrares

p.s.
The Tick cartoon was actually pretty good but the live-action TV series with Patrick Warburton smelled pretty bad.  Tick’s battle cry was, “Spoooon!”  Which always made me laugh.

3 comments:

Anonymous said...

I was about to Bash you until I saw that P.S.
But yeah you are right on the show. The comic is awesome tho.

Anonymous said...

I am...Batmanuel

Anonymous said...

Hi, I can't find this card: http://gatherer.wizards.com/Pages/Card/Details.aspx?multiverseid=244249
I will be very happy it will be this card: http://gatherer.wizards.com/Pages/Card/Details.aspx?multiverseid=238330
And very big thanks for this mtg game. I respect you for your work.