The Grimoire


I created this project during my first years of University. Back in the days I had very basic skills in computer science. Most of my knowledge came from self-learning so I'm used to create didactic but practical project like this with the goal to learn but with a real purpose.
I was a Magic: The Gathering player so I had the need to build and test decks, for this reason I created this project as a simple database but, in my mind, it had to evolve in something much bigger and useful. But the project was too big, I was alone, my skills too limited and a lot of bigger and more useful projects born in the same days.
This program, though, became quite popular among my friends since our Internet connections sucks (still today) and the other tools were not mature enough or online-only. We used it frequently until I had no more time to spend on it.

Technical Data
Name: The Grimoire
Developers: Ruggero Riccobene
Languages/Technologies used: C# (.NET 2.0), ODBC
Platform(s) Windows Linux (through Mono)
Releases: none available
License: not available
The Grimore card detail window
The card detail window was really untidy but it had every useful information... even the useless ones. Personally I like the flavour text of Magic cards, so it become a must add this field.
The database was a huge pain but in the end I was able to support all the Magic expansions from Alpha to Mirrodin (then I stopped updating it).

The Grimoire search window
The Search window was untidy as well but pretty usable. It was possible to filter for tournament validity, single or multiple expansions and exclude or include banned or limited cards from tournaments.
The browser shows the result of the filter. Clicking on an image pop up the Card detail window.

The Grimoire filter window
The filter window was the core of the program. Since it was one of my first attempt to create a real program with a huge and complex database I made a disaster with the code.
In the end everything worked fine although some search function were limited. Since I was at the first year of University I didn't see a real database not even in my deepest dreams, so I created a rough form of Regular Expression but much more limited and with a lot of spaghetti code. Ah, the youth!
The database itself was a Microsoft Access database but there were no SQL queries to interrogate it. Instead I used to gather all the information in my own structures and use my code to filter it.
A terrible behavior. But, again, I was a kid: I had no knowledge of SQL, didn't know of the existence of database like SQLite and other technologies.

Even with these premises the program was working: it was possible to search and filter by (multiple) color(s), arch-type, strength and/or health and so on.

Unfortunately I can't find the original source nor a working build right now. I will look for the original files in some of my old computers but I fear the worst.

Add new comment

Comment Text

  • Allowed HTML tags: <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
To prevent automated spam submissions leave this field empty.
Answer the question and don't bother me with spam.