missingManuel.ash - Yet Another Manuel Script!

Veracity

Developer
Staff member
When you encounter the Shadow Avatar of Sneaky Pete, mafia does not recognize it, but believes it to be an actual monster instead of just one form of the Shadow Opponent so it creates a temporary entry for a new monster in its internal database.
That is a one-line fix in consequences.txt. I will take this as a bug report. ;)

I believe the same problem (or similar) happens during the nemesis quest. I'd always wondered what was going on.
Interesting. I see the following entries in consequences.txt:

Code:
MONSTER	Gorgolok, the Infernal Seal	1_1\.gif	"Gorgolok, the Infernal Seal (Inner Sanctum)"
MONSTER	Gorgolok, the Infernal Seal	1_2\.gif	"Gorgolok, the Infernal Seal (The Nemesis' Lair)"
MONSTER	Gorgolok, the Infernal Seal	1_3\.gif	"Gorgolok, the Infernal Seal (Volcanic Cave)"
MONSTER	Stella, the Turtle Poacher 	2_1\.gif	"Stella, the Turtle Poacher (Inner Sanctum)"
MONSTER	Stella, the Turtle Poacher 	2_2\.gif	"Stella, the Turtle Poacher (The Nemesis' Lair)"
MONSTER	Stella, the Turtle Poacher 	2_3\.gif	"Stella, the Turtle Poacher (Volcanic Cave)"
MONSTER	Spaghetti Elemental	3_1\.gif	"The Spaghetti Elemental (Inner Sanctum)"
MONSTER	Spaghetti Elemental	3_2\.gif	"The Spaghetti Elemental (The Nemesis' Lair)
MONSTER	Spaghetti Elemental	3_3\.gif	"The Spaghetti Elemental (Volcanic Cave)
MONSTER Lumpy, the Sinister Sauceblob	4_1\.gif	"Lumpy, the Sinister Sauceblob (Inner Sanctum)"
MONSTER Lumpy, the Sinister Sauceblob	4_2\.gif	"Lumpy, the Sinister Sauceblob (The Nemesis' Lair)
MONSTER Lumpy, the Sinister Sauceblob	4_3\.gif	"Lumpy, the Sinister Sauceblob (Volcanic Cave)
MONSTER	Spirit of New Wave	5_1\.gif	"The Spirit of New Wave (Inner Sanctum)"
MONSTER	Spirit of New Wave	5_2\.gif	"The Spirit of New Wave (The Nemesis' Lair)"
MONSTER	Spirit of New Wave	5_3\.gif	"The Spirit of New Wave (Volcanic Cave)"
MONSTER	Somerset Lopez, Dread Mariachi	6_1\.gif	"Somerset Lopez, Dread Mariachi (Inner Sanctum)"
MONSTER	Somerset Lopez, Dread Mariachi	6_2\.gif	"Somerset Lopez, Dread Mariachi (The Nemesis' Lair)"
MONSTER	Somerset Lopez, Dread Mariachi	6_3\.gif	"Somerset Lopez, Dread Mariachi (Volcanic Cave)"
Note that I fixed some of those entries in revision 13713 on Feb 15 of this year; there used to be different .gif files for the "Inner Sanctum" versions of the monsters.

Is this still a bug?
 

Veracity

Developer
Staff member
I just went to see my Nemesis in the Cave today and it didn't seem to match it correctly. I saved a debug log, so I'll see what I can figure out about it. Something I noticed was that the "monname" span had a space in front of "Lumpy, the Sinister Sauceblob". Perhaps we just need to trim() what we find in that span.

Too late for me to spend time debugging tonight. Tomorrow.
 

Crowther

Active member
I got up in the middle of the night when I couldn't sleep. Did my nemesis and totally forgot to do any testing.
 

Veracity

Developer
Staff member
There was a data error with Lumpy, and only with Lumpy, near as I can tell. When I load in the saved HTML from that fight using "test load" and then use "test fight 0" to try it out, it now successfully converts "Lumpy, the Sinister Sauceblob" to "Lumpy, the Sinister Sauceblob (Inner Sanctum)".

Try it with a different class, some future time, if you remember. I will too.
 

ereinion

Member
Caveman Dan shows up as missing all three factoids for me, but he doesn't have any factoids (or at least didn't when I fought him).
 

zarqon

Well-known member
View attachment 8362

Just wanted to mention that my relay adaptation of this script is now bundled with BatMan RE. Installing BatMan RE does not obligate you to use it for your fights -- you can disable it per-character (while still being able to use the informational scripts) by typing "zlib BatMan_RE_enabled = false" in the CLI.

Also, turing, thank you very much for this script. I used it quite a lot and it inspired me to make this relay version. I do have a suggestion for your script. When parsing Manuel, you can use a single regex to grab all the information, which speeds things up a bit. Here's an excerpt from Factroid in case you want to use any of this:

PHP:
      string page = visit_url("questlog.php?which=6&vl="+char);
      matcher onem = create_matcher("(?:adventureimages|otherimages)\\/(.+?.gif).+?<font size=.2>([^<]+?)<\\/font><\\/b><ul><li>(.+?)<\\/ul>", page);
      while (onem.find()) {                                         // group 1: image.gif
         string name = onem.group(2);                               // group 2: monster name
         string[int] facts = split_string(onem.group(3),"<li>");    // group 3: all factoids, including intermediary <li>'s

After running that regex on a Manuel page, the monster image is onem.group(1), the monster name is name, and the factoids are in facts. You can count(facts) to see how many factoids you've learned.

Cheers!
 

Bale

Minion
A suggestion, missingManuel has 4 unsorted monsters to sort.

  • pig could be listed as part of "The Road to the White Citadel" since it is only found after completing that quest.
A new category, "transmission from planet Xi" would contain:
  • holographic army
  • They
  • Xiblaxian political prisoner
 

Bale

Minion
I'm a little surprised that nobody has pointed this out yet:

Crimbomega has no factoids. Please teach that to missingManuel.

Other than that, missingManuel is taking the huge influx of factoids like a champ.
 
Mafia now knows the queen bee from the Spelunky content as queen bee (spelunky) to disambiguate it from the Bees Hate You monster. If you need it, the spelunky version's first factoid is "Queen bees are several times the size of normal bees, but they have a surprisingly low density."
 

Bale

Minion
I've got my queen bee (spelunky) factoids and have verified that it is now working properly. Thank you!

Code:
[COLOR="#0000FF"]Done checking Monster Manuel![/COLOR]
=================================
[Strongest Adventurer Contest]
Mr. Loathing {1}
=================================
[Hottest Adventurer Contest]
[COLOR="#FF0000"]Fire Fighter {3}
Cereal Arsonist {3}
Burnglar {3}
The Lavalier {3}[/COLOR]
=================================
[Coldest Adventurer Contest]
Snowbrawler {1}
Iceberglar {1}
Mrs. Freeze {2}
=================================
[Stinkiest Adventurer Contest]
[COLOR="#FF0000"]Granola Barbarian {3}
Cheese Wizard {3}
Assassin {3}
Odorous Humongous {3}[/COLOR]
=================================
[Yomama's Throne]
Yomama {2}
=================================

You have casually researched 2 creatures.
You have thoroughly researched 3 creatures.
You have exhaustively researched 1453 creatures.
You have not researched 8 creatures.
Total creatures: 1466.
Done.
 

ereinion

Member
MissingManuel doesn't seem the parse the factoids for the spelunky-ghost for me. Tried to uninstall and reinstall the script to make sure I had the latest version, but this is still the result I get:
weQ74Nk.png
 

Bale

Minion
To fix that, Turing should add (after line 364):

Code:
	if (name == "ghost" && contains_text(firstFactoid, "anything anybody recognizes"))
	{
		factoids["ghost (spelunky)".to_monster()] = facts;
		return true;
	}
 
Top