Sounds like a great idea! but I'm glad I'm not programming it ;-) -Ankhst > All the talk of single stash v Treehouse set has me thinking hard about > the whole "Category paradigm" in use at Icehousegames.org. I mean, is > there even an "All Categories" page, for instance? How would a new > player know to search on various categories? How do designers know > exactly which categories work best for their games? > > And then it HIT me... this is a plug-in waiting to happen: > > == THE CanPlay APPLET == > > PLAYER ENTRY: > - Imagine a "What Can I Play" form (on the Main Page) that any > registered user can filled out and Submit. > -- The form is just a a slew of checkboxes and spinners: > ---- # of each type of Treehouse set: > -------- #/Rainbow, #/Xeno > ---- # of each color of stash: > -------- #/Black, #/White, #/Gray, #/Red, #/Orange, #/Yellow, #/Green, > #/Cyan, #/Blue, #/Purple > ---- # of Martian Coasters sets > -------- # of Black Coasters > > - When you Submit the form to the plug-in, it parses out what you've > told it into a complete "audit" of every piece, color, and type you own > (e.g. # of red smalls; # of black larges, etc; number of each color of > single Martian Coaster). > -- It then formats a query of the new "CanPlay" database and submits it > (continues below). > > DESIGNER ENTRY: > - On the game page editing side of things, there's a new, not-rendered > "ProductsNeeded" widget--like an invisible InfoBox--which is a more > extensive form. > -- The form allows you to specify *precisely* what the game needs: > ---- # of stacks of a PARTICULAR color > ---- # of stacks of ANY color > ---- # of stacks OPAQUE > ---- # of stack TRANSPARENT > ---- # of individual pieces, in an array of spinners organized by size > and color > ---- # of MCs sets > ---- and anything else I'm not considering at the moment > -------- Basically, the player form from above, exploded out into every > reasonable data entry field worth programming. > > -- When you Save a page with a "ProductsNeeded" widget, the widget > contents are parsed into an "audit" much the same way as when a player > does it. > ---- The parsing is written as a single record in the "CanPlay" > database. > > PLAYER RESULTS: > - So, when a player Submits a form (from above): > -- A database query will take the parsed audit and test it against the > game database's parsed records, compiling a hyperlinked list for each > TRUE result. > ---- When done, it generates a new wiki page--"[user_name] Can > Play"--that lists the collection of hyperlinked games in as fiddly a > presentation as we can do. > -------- A proper table output view with sortable columns is ideal and > is probably a MySQL default. > > -- At any time, players can go to their "[user_name] Can Play" > page--which includes the "What Can I Play" form--and just add to the > values and click Submit. > ---- Their pages are refreshed with the TRUE games, with changes tracked > like any wiki page edit, and they see new games! > > ... > No, it's not a one-day code job. But, no, it's not a pipe dream, either. > > The database format is not that big a deal--it's a single table: > + Each game is one record: > ++ Title string (record key, unique) + Wikilink string + Description > string + 33 integer fields: > ++++ 33 Integers = 11 colors + 3 sizes (44 Integers, if we want to be > forward-compatible with eventual zero-pip pieces). > > + The "auditing" process is simple math, run by a server script (or > maybe by MySQL itself--not an expert on the various apps): > ++ Based on form field populated, simple multiplication, parsing > (#/stacks -> #/SMs, MDs, & LGs), and addition (final fields) will > complete the audit. > > + The tricky part could come with the wiki integration: > ++ Forms in a wiki page? > ++ Form Submit -> SQL -> new wiki user page/update existing wiki user > page > ++ ProductsNeeded code scanning (module) -> SQL -> new record in > database > > ... > Sorry so long, but I wanted to get as much out there as I could, in one > shot, rather than plopping back into the list repeatedly with "Oh, > yeah, and...!" > > The above is is pseudo-code; it would go on the wiki fine (IIRC), if > someone on the list is an admin and wants to promote this as a possible > avenue for the wiki's development. You'd know better than I what's > possible with our setup, how to "reach out" via the wiki functionality > to those who might help, and if there's any real demand for this (i.e. > search log analysis, basically). > > I feel confident that this would be a GREAT thing for growing the > overall brand. One TH stash, and the customers are quickly informed of > what they can play; every time they buy more, the number of other games > they can play ramps up visibly, viscerally. > > When I have the Single Stash games PDF out, I will turn to this as a > Major Project. > David > > _______________________________________________ > Icehouse mailing list > Icehouse@xxxxxxxxxxxxxxxxxxxx > http://lists.looneylabs.com/mailman/listinfo/icehouse