User talk:Laurlybot/quest bot

Status
Start coming up with some good test cases. Laurly 16:27, 16 March 2008 (UTC)
 * Parsing quest from wow head (done)
 * loading to template (done)
 * currently testing see testing at the bottom for examples of quests run. Laurly 14:32, 20 March 2008 (UTC)

Eirik comments
Eirik's thoughts in no particular order (I'll slim this down for the 'main bot wishlist'):
 * On Sky's downers:
 * /agree: most subpages can be avoided. For quest chains of 4 or more, a separate page for them MIGHT be justified as a seed for a "questchain page", if someone wants to come by later and make one.
 * /agree: wiki-table markup, T:Item. With a bot, 'using longhand' is not a psychological problem.  I would mostly use templates to ensure the page is easy to maintain by hand.  (Tooltip, for instance...)
 * I feel T|lootbox is vastly overused, particularly with item tooltips available.  Opinions on it vary, though.  I feel it should probably be reserved for select instances, making it less useful to bot it.
 * Quest name collisions: what have you thought on automating these?
 * Horde/Alliance is relatively easy. (Combined quest pages ala Terokkar Mana Bomb are the exception rather than the rule, and require identification that is probably beyond a bot.)
 * Quest chain, and even chain+faction have developed customs: the number goes on the second and further pages.
 * Multiple feeder quests (Gnome Engineering) we may need consensus for
 * All of these, you may want a "first pass warning" for, asking human intervention.
 * Are laurlybotted pages automatically added to the watchlist for the bot initiator? Would it do any good?  There are about 1K entries in "bot editing requests".
 * should we have subcategories of bot editing requests, by bot?
 * External link footers are in, this season. :)
 * Quest chain generation, you said, was out?
 * Where did chain info come from, in the past? Wowhead? Thottbot?  (Both have their flaws, but wowhead generally does a better job of connecting the dots, in my experience.)
 * Could the bot include, as inactive code, reference that it thinks are useful, and provide comments in the 'fixme' warning?

I'll add more as it comes to me. --Eirik Ratcatcher 19:34, 10 March 2008 (UTC)

ok let me start with templates the bot is going to use a template to make the quest this way we can edit it how ever we like. check User:Laurlybot/quest_bot/template for an example edit the page its showing up messie in wiki. Now quest chains. The bot does rip from wowhead. the problem with it generating the quest chains was that it couldn't pick the name correctly. we ended up with (9) crap on the end. I would rather avoid having her generate quest names totally. If you want a page run you need to supply the page name for the bot to put it on as well as the quest id. As far as generating the quest chains she can supply the name and id for the quest chain from wowhead but shes not going to run them unless someone requests it. Someone will have to then go into the quest and corect the quest name on the quest chain. Unless you can come up with a better way to do it. I like the idea of a laurlybot fix me cat. All for now will add more soon. Laurly 07:49, 11 March 2008 (UTC)


 * Lesse here...
 * Please be assured: If you favor a format, DO speak up for it.  While I "want what I want", one of the things I want is to not chase folks away.  Especially folks that make working on quests a matter of cleaning up a bot's work rather than constructing something out of whole cloth...
 * Name and ID for the bot: Should I understand from this that the bot cannot identify name collisions automatically  (That is, without extra work on your part)?  If so, no problem.  It sounds like "can't use the page name because of disambig requirements".  I can live with that.   And since you have to be explicit with the instructions to Laurlybot, I don't think she'll be running over quest pages that have useful content just automatically.  Which was almost certainly more a complaint I had about her users than her self.
 * Quest chains: As long as there's some fixme tag, whatever the bot generates (within reason, including a "quest progression" section with html comments for content), I can live with it.
 * By the way, have I said "thank you" for having created Laurlybot v1.0, and working on LaurlyBot v1.5 or v2.0 yet? It may aggravate me sometimes, but on the whole, it's a benefit.  --Eirik Ratcatcher 17:20, 11 March 2008 (UTC)
 * I havet even started working on the quest bot yet. It take long to recode it once i start but i thought we should take a few days brain storming about how we want it to work and how we dont want it to work ahead of time.Laurly 07:41, 12 March 2008 (UTC)


 * Ok heres how the old bot worked. She had a huge db think it was about 80mb last i checked. i had first gone and riped every and i mean every quest out of wowhead and throtbot by zone.  So she knew most of the quest names.  When a new page was submitted she would reload the page and generate it.  If it had a quest chain she would check her db if the name was unique or had more then one.  if there was more then one she would add (#) on the end and create the evil disambig pages she used to make.  And then she would go and generate all those pages if they didn't exist in wiki.   See how confusing it got.  With the new bot i want to cut all that out.  The bot wont have a huge database of all the quests.   She can only get name and quest id on a quest page.  I could have her check those pages as well to find out the faction and quest level which i may do in phase 2.  But i would rather not have her crawling the quest chain creating pages thats just going to lead to more evil disambig crap and loading a lot of extra pages trying to find a unique name.  Even then her unique name may not be the right one to use on wiki some ppl have been adding all kinds of stuff after the quest name to make it unique.   I think its going to be better when you submit a quest you have to give the page name to put it on and the quest id to fetch.  It will lead to less headaches. This bot is fast generates a quest in about 4 sec depending on the lag to the diffrent webpages. So having users submit each page in a quest chain isnt really going to be a big deal.  Laurly 12:42, 18 March 2008 (UTC)


 * Sounds good to me. And the result of a lot of hard work on your part.  --Eirik Ratcatcher 18:49, 18 March 2008 (UTC)

Example
Laurlybot 1110|Put it on this page.


 * Laurlybot will go over to wowhead find quest_id=1100
 * rip all the data make it look nice using the template.
 * Then upload it to "put it on this page." on wiki.

The question is if there is already something on that page do we want her to stop or assume the person requesting it knew what they where doing? Laurly 07:45, 12 March 2008 (UTC)


 * I'd prefer a specific tag of some sort, to indicate that "yes, the user knows this is going to overwrite this, and is fine with that". Proves indisputably that there was a human in the loop.  I think this is more an issue where someone was invoking laurlybot via a commandline sort of thing, though, wasn't it?  Do you recall (m)any overwrites that happened when someone put a tag on a page? If I'm right, then simply requiring the requester to initialize the page (what you currently plan) might provide the authentication I'm talking about.  --Eirik Ratcatcher 18:50, 12 March 2008 (UTC)
 * I think most of the over wrights where done when the bot was crawling quest chains. Which brings us back to the problems with her generating unique quest names.  If we use the old tag and just add an id option to it and a sign so that we know who added the tag this should solve the problem of her over writing data. this is the tag we used to use User:Laurlybot/Doquests Laurly 07:25, 14 March 2008 (UTC)


 * I think the usual culprit was pcj, which was javascripted and thus nearly semi-automatic. I don't think there will be an issue now with improper naming, though it might be wise to go bug KB about possibly getting some policy together on the bots in general, as they do tend to come into conflict with human editors more often than not. --Sky (t · c · w) 07:32, 14 March 2008 (UTC)


 * Witness my inclusion here... :) --Eirik Ratcatcher 20:32, 14 March 2008 (UTC)
 * <-- thats the tag we use currently. shouldnt be that hard to change it to require a quest id. Laurly 12:46, 18 March 2008 (UTC)

Template suggestions
Looking over the (messy) quest bot template, here are what I've noticed. Again, I hope this helps. --Eirik Ratcatcher 17:32, 11 March 2008 (UTC)
 * Sky has commented on the preload quest template that it might be a useful format change to have the TOC below the Objectives section, before the quest text/description section. You might want to join in on that discussion.  Would be simple, putting an explicit TOC directive in.  But consensus is good.
 * You've got sample text (Hillsbrad) in your template. Don't know if you intended that or not.
 * Thank you for loot vs Item. :) And... "lootbox".  'nuf said.  No worries.
 * I believe we've been using "Quest progression" standard for the quest chain section title. That's another boilerplate decision thing, I guess.
 * I have been away for a few months so my wiki syntax editing is rusty not that it was ever very good. Feel free to change the template i will check though it before i grab it for the bot to make sure none of the template code was messedup Laurly 07:43, 12 March 2008 (UTC)
 * I will try, but I think that my own wiki syntax editing has never risen to the 'rusty' level. I do very very little work with conditional wiki code. I'm a bear of simple mind. --Eirik Ratcatcher 18:52, 12 March 2008 (UTC)


 * I did not want an explicit ToC. xD. I said I think we should remove the header for the objectives. Example:


 * Some vague text (as Laurly has it on the template currently). Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Quisque tellus dolor, suscipit nec, gravida a, sollicitudin quis, lectus.


 * Go to this place, kill this person. Alternatively collect:
 * 3 of these things
 * 3 of those things.


 * == Description ==


 * And so forth with boilerplate.


 * Like so. --Sky (t · c · w) 07:45, 14 March 2008 (UTC)


 * Apologies for my misunderstanding. However, that leads to a second area I'm unclear on:  The Objectives section is created from text the WoW client gives us.  I'm unclear how your proposal separates "Objectives" text from "text Ye Editor put in to describe the text".  Could you provide an example of that? --Eirik Ratcatcher 20:36, 14 March 2008 (UTC)


 * The separation would be with a double enter, as with any new paragraph. --Sky (t · c · w) 22:03, 16 March 2008 (UTC)


 * Another idea would be to have that random blurb, and then indent the objectives. Like so:

Some vague text (as Laurly has it on the template currently). Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Quisque tellus dolor, suscipit nec, gravida a, sollicitudin quis, lectus.


 * Some objective
 * Some objective

== Description ==

And etc. --Sky (t · c · w) 00:40, 22 March 2008 (UTC)

Chain question
Rather than break the template, I will ask here... The template has a 'next' line that seems unconditional, and does not have a 'prev' line. Am I hallucinating? There doesn't seem enough conditional examining of names and what-all here. --Eirik Ratcatcher 20:40, 14 March 2008 (UTC)
 * nope your not i have been adding stuff to the template as i have been working on it. Recheck it i will post the new one now Laurly 16:24, 16 March 2008 (UTC)

Quest examples
On the assumption that you can sandbox laurlybot page requests (IE direct laurlybot to put an arbitrary quest on an arbitrary page), here are a few existing pages that might be useful for a testing suite. Dont think so. you are going to give her an ID and a name to put it on its up to you to know if that name/page needs to be disambig. Laurly 21:43, 17 March 2008 (UTC) Is a list like this useful? --Eirik Ratcatcher 19:33, 17 March 2008 (UTC)
 * Morrowgrain research (quest ids: 3781-2, 3785-6) - 4 quests with same name, different factions. Ideally, bot would note need for disambiguation?
 * 3781 or 3782 - quest results in multiple count of item as reward.
 * 3786 - quest objective has nonzero count.
 * Poor Old Blanchy (quest Id: 151) - "and" for rewards
 * looking for a quest that has both "and" and "or" on rewards. I know at least a few exist.

Yes very useful as i can test them as i go. Find me one that starts with an object or ends at an object. or you have to find an object.... dont the buzzbox ones do that? objects are diffrent then items they have object_id instead of item_id Laurly 21:27, 17 March 2008 (UTC)


 * Might want to preserve a "clean" list of quest IDs somewhere handy for you...
 * Buzzboxes... ones after the first start with a device, end with a device. Buzzbox 323, ID 1002.
 * also The Sparklematic 5200! (ID 2951) - device, again
 * In_Search_of_The_Temple (ID 1448) - objective is "find a location"
 * --Eirik Ratcatcher 00:56, 18 March 2008 (UTC)


 * Laurly, what about multiple quests in one chain which need disambiguating? When you generate the quests, you're going to end up adding quest links in questbox as well as in the progression spot to the disambiguation page, aren't you? --Sky (t · c · w) 00:37, 22 March 2008 (UTC)
 * Bot runs it using the quest names it can gets then tags it User:Laurlybot/Chainnotice Laurly 08:39, 22 March 2008 (UTC)

Testing
Quest chains: I have added a new template so that we know what pages we have to go back and tweak. Laurly 14:55, 20 March 2008 (UTC)

Testing has started:


 * Morrowgrain_Research_%28Horde%2C_1%29
 * Morrowgrain_Research_%28Horde%2C_2%29


 * Opinion: Don't use (Horde, 1), but rather (Horde 1). I don't know why some pages use commas and others don't, but I would personally prefer the one without a comma. --Sky (t · c · w) 00:38, 22 March 2008 (UTC)
 * I didn't come up with the name The page was tagged for the bot to run. so i ran it. Laurly 08:37, 22 March 2008 (UTC)

Wish list Moved from fount page.
Add any comments you have on how the existing bot worked. What you would like to see done or changed.

Sky's not happy requests: for paragraphs.
 * Get rid of the subpages, as it bloats the article count of the wiki.
 * Use wiki-table markup, as opposed to templates. Templates are just adding a (possibly) confusing step
 * Don't use T:Item for anything. It's a transclusion nightmare. (some might disagree with not using it, but the 2nd statement is cold fact).
 * Don't use

Sky's happy requests
 * Do eliminate usage of the category "Guilds".
 * Use T:Guildbox to deprecate T:Guild US and T:Guild EU, and maybe even T:Guild (last would require community input).

Eirik's requests (undifferentiated...)
 * /agree: provide quest ID number to ensure proper data retrieval. Alternately, if a name provides a name collision, simply provide fixeme comments (see below).
 * fixme flags with comments: verify quest chain, name collision, whatever other conditions it can identify.
 * possibly: items it identifies as in dispute, sourced and in inactive sections of the page, for lazy human editors? :)
 * External links footers are in, this season.
 * Reputation in tooltip as well as gains/rewards section. When reputation award can be identified.
 * Nice but not necessary: subpages for quest chains, but only if they are 4 or more in the chain, as a seed for a future 'questchain page'. If you still identify chains.  If not, it's easy enough to do the "cut the chain to a questchain page, and insert translcusion of said page".
 * un-htmlizing content. It's a stupid thing, really, but when I'm editing, and I find , or &lt;br&gt; unnecesarily, it drives me nuts...  Harder to read while editing, mostly I think.  I think for quest text, the brs and lt/gt' can be safely converted.
 * good plan i will take care of that tomrrow Laurly 21:24, 17 March 2008 (UTC)


 * Cues to the cleanup editor in the form of html comments (&lt;-- --&gt;) for things that are recognizable but beyond the bot's purview (say, chains, NPC titles/race/whatever).  But only if 'easy' for the bot to discover.

Chain requests
Can a chain be added here: Dusky Crab Cakes (quest) Or a how-to for tagging the page for a visit. Thanks. -- ScratchMonkey (talk) 05:25, 5 March 2009 (UTC)