Mage Wars forum bbcode

The Mage Wars game by Arcane Wonders allows players to create spellbooks from several hundred spell cards. The Mage Wars forum allows fans to discuss the game and as part of that Arcane Wonders wants a way to display card data inside the forums.

Their forum software solution is SMF which makes it quite easy to include custom BBCode tags. As the first part of the solution I quickly made a custom BBCode tag and rendered it out into HTML. That HTML then had some custom CSS added as well as some JQuery code to handle displaying a div with the card preview and then hiding it again on mouseenter and mouseleave events.
Continue reading →


jQuery and Bootstrap popovers update

Things are never as easy as you assume they will be. I got the Bootstrap popovers working in one part of my application but when I added them to the data table that I was dynamically creating they stopped working.


The issue was that the Datatables code was rewriting the inner HTML of the row that I was updated each time I updated it. Meaning that the events attached to that HTML were removed each time.

The solution was easy enough after I figured the problem out, reset the events each time I wrote a new row or updated one, but it seems kludgy and I am going to check to see if there is a better solution.

That is the future’s problem though as I still have features that I need to add.

Warlock triumphs!

Dave and I met up again last night for some Mage Wars gaming. We managed to fit in two games as our first game ended quite quickly.

Game 1 involved my tweaked Warlock against a new(ish) Force Master build that David put together. It was a fairly decent build (my Warlock was the standard Demon/Fire build) and he was able to exert some decent pressure on me but I managed to get two burn tokens on him that wouldn’t go out and between my Demons and the flames the Force Master quickly went down.

After suffering from this fate myself this is the main reason why some of my Mages have Geyser in their spellbooks. Nothing is quite as distressing as beeing cooked by multiple Burn tokens.
Continue reading →

jQuery and Bootstrap popovers

I had a bit of an issue with the Mage Wars Spellbook Builder I am coding. The application provides a small preview of a card when a user clicks on it. The preview is placed in an accordion panel so that the user can show or hide the preview as they see fit. Sadly the area where the users will be wanting previews is lower in the screen than the preview area

Card preview

I decided to use the popover class in Bootstrap to enable a preview when the user clicked on the card name. There were a few issues.
Continue reading →

Mage Wars nail biter

Dropped by Sentry Box last night to have a game of Mage Wars against a fellow, David, that I met last Sunday. I brought out an Air Wizard build that I haven’t used in a while and Dave played an interesting Warlord build that involved ranged attacks and Tanglevines.

The game went right down the the very end with David’s Warlord having two Life left after some very punishing attacks from a Gremlin and my Wizard left with the same Life remaining but sadly stuck in a Tanglevine.

I don’t know if it was deliberate or not but David had a Dwarven Panzerfaust creature in the same zone as the Tanglevine and with its Guard enabled I wasn’t able to attack the Tanglevine and free myself. My spell book only had a single Thunderbolt spell (range 0-3) and so I wasn’t able to effect David’s Warlord with spells other than a Chain Lightning spell that leapt across the table to hit him with a single dice. A roll of a critical 2 would have won the game but it was not to be.

I was able to survive in a zone with an Iron Golem and the Dwarven Panzerfaust due to a Force Sword, my Voltaric Shield and some armour but ultimately David took my Mage down with a well placed shot from a Goblin Slinger. A ignoble end if there ever was one.

Applescript is my enemy

One of the things I need to do for the current project with Arcane Wonders is to take a large amount of Excel data and turn it into HTML.

In the past I would have done this sort of thing in Director and built a quick Lingo function to read in some CSV data and then spit out the HTML. For years I did this sort of thing and it was the main reason why, despite not using it for any projects, that Director stayed on my hard-drive. Whatever one might think of Director, Lingo is actually a wonderfully adept language that is easy to use.
Continue reading →

Mage Wars spellbuilder

I think that if, a year or so ago, you would have told me that I would be building a data driven web application in jQuery and Javascript I would have not taken you seriously.

And yet that is what is currently happening.

As part of my work for Arcane Wonders, the publishers and developers of Mage Wars, I am writing a spell book building web application using Bootstrap and jQuery. The original code was created by another developer and I have taken it and used it as the basis for a new application.

The original was quite nice but I am expanding the use of Bootstrap to create a more traditional application and also updating the code to use Bootstrap 3 and add some addition functionality like multiple export formats.

It has been an unusual process since, prior to this, I really don’t like working in Javascript but jQuery is another thing entirely. It removes a lot of the issues with selecting HTML elements and the library is used for a huge number of plugins and expansions like the Datatable plugin that is being used to turn HTML tables into sortable, live dataviews.

Once I have the beta version ready for testing I will post a link and some more information.