Volcano

Aeres

New member
I am currently putting together a script that does all the stuff I do every day, one of them fetching the Volcoinos.

Is it possible to check The WLF Bunker and check for specific quests? I want to automaticly check if there is an easy quest (for example "smooth velvet bra" or "New Age healing crystal" turn ins) and complete it.
I guess I could use the buffer and check if the page contains the quest text, but I am unsure how to turn the quest in if available.

Just started with kol scripting so any help would be appreciated.
 

Darzil

Developer
My script does this : (Taking advantage of _volcanoItemX preferences which are set when you visit the quest hub)

Code:
	// W.L.F. Bunker
	if ( get_property( "_volcanoItemRedeemed" ) == "false" )
	{
		if ( get_property( "_volcanoItem1" ) == "0" )
		{
			visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
		}
		if ( get_property( "_volcanoItem1" ) == "8425" )
		{
			if ( retrieve_item( 5, $item[New Age healing crystal] ) )
			{
				visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
				run_choice(1);
			}
		}
		if ( get_property( "_volcanoItem2" ) == "8425" )
		{
			if ( retrieve_item( 5, $item[New Age healing crystal] ) )
			{
				visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
				run_choice(2);
			}
		}
		if ( get_property( "_volcanoItem3" ) == "8425" )
		{
			if ( retrieve_item( 5, $item[New Age healing crystal] ) )
			{
				visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
				run_choice(3);
			}
		}
		if ( get_property( "_volcanoItem1" ) == "8470" )
		{
			if ( retrieve_item( 5, $item[gooey lava globs] ) )
			{
				visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
				run_choice(1);
			}
		}
		if ( get_property( "_volcanoItem2" ) == "8470" )
		{
			if ( retrieve_item( 5, $item[gooey lava globs] ) )
			{
				visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
				run_choice(2);
			}
		}
		if ( get_property( "_volcanoItem3" ) == "8470" )
		{
			if ( retrieve_item( 5, $item[gooey lava globs] ) )
			{
				visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
				run_choice(3);
			}
		}
	}
 

Pazleysox

Member
Here's 1 way you can do it:
PHP:
string WLFBunker = visit_url("place.php?whichplace=airport_hot&action=airport4_questhub"); // the URL is found by hovering your mouse over any location
if (WLFBunker.contains_text("smooth velvet bra") && $item[smooth velvet bra].available_amount() >= 3 || $item[unsmoothed velvet].available_amount() >= 9)
	{
	while ($item[unsmoothed velvet].available_amount() > 3)
	cli_execute("create smooth velvet bra");
	print("Turning in smooth velvet bra for a coin.");
	visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
	visit_url("choice.php?pwd&whichchoice=1093&option=1");
	}
if (WLFBunker.contains_text("New Age healing crystal") && $item[New Age healing crystal].available_amount() >= 5)
	{
	print("Turning in New Age healing crystal for a coin.");
	visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
	visit_url("choice.php?pwd&whichchoice=1093&option=2");
	}
if (WLFBunker.contains_text("You've already done your day's work"))
	{print("I've already turned in an item to the WLFBunker.", "blue");}

This checks for the items already in your inventory. If you don't have it, nothing happens. If you want the script to mine the mine for you, that's a little more complicated, and I would suggest searching the forums for MINER.ASH written by That FN Ninja as a place to start.

You can also look at my Rollover Management script (link below) for another good place to start with daily deeds. It does just about everything I could find for casting, and obtaining things. It does not adventure, or look for things that you need to adventure to obtain however.

EDIT: I think Darzil's way is much nicer however. It learns which position the item is in, and buys the item to return it.
 
Last edited:

Pazleysox

Member
Here's the code from my rollover script for the Volcoino.
PHP:
	if(contains_text(body,"airport_plane_70s.gif") && get_property("_infernoDiscoVisited") == "false" && can_interact())
		{
		int smooth;
		int count_smooth;
			outfit ("birthday suit");
			foreach smooth in $items[smooth velvet pocket square, smooth velvet socks, smooth velvet hat, smooth velvet shirt, smooth velvet hanky, smooth velvet pants]
					if ((smooth).available_amount() > 0)
					{count_smooth = count_smooth +1;}
				if(count_smooth == 5)
					{
			foreach smooth in $items[smooth velvet pocket square, smooth velvet socks, smooth velvet hat, smooth velvet shirt, smooth velvet hanky, smooth velvet pants]
					equip(smooth); 
					visit_url("place.php?whichplace=airport_hot&intro=1");
					visit_url("place.php?whichplace=airport_hot&action=airport4_zone1");
					visit_url("choice.php?pwd&whichchoice=1090&option=7&choiceform7=Go+to+the+fifth+floor");
					}
				if(count_smooth == 6)
					{
			foreach smooth in $items[smooth velvet pocket square, smooth velvet socks, smooth velvet hat, smooth velvet shirt, smooth velvet hanky, smooth velvet pants]
					equip(smooth);
					visit_url("place.php?whichplace=airport_hot&intro=1");
					visit_url("place.php?whichplace=airport_hot&action=airport4_zone1");
					visit_url("choice.php?pwd&whichchoice=1090&option=7&choiceform7=Go+to+the+sixth+floor");
					}
				if(count_smooth < 5)
					{
					print_html("You need atleast 5 \"Smooth\" gear to get a bonus from the <font color=#FF0000>Inferno Disco</font>");
					}
		}
 

Aeres

New member
Thanks for the responses, I solved it like this, pretty much checking if the quest text is visible, then doing the first quest found. Seems like yours is a lot cleaner though and doesn't brute force the turn in. How did you find out about the _volcanoItemX preference? Is this documented somewhere?
Code:
status("Checking for daily...");
buffer page = visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
boolean quest = true;
if (page.contains_text("Acquire Medical Supplies")) {
	status("Acquire Medical Supplies daily found");
	cli_execute("retrieve 5 New Age healing crystal");
}
else if (page.contains_text("Acquire Rations")) {
	status("Acquire Rations daily found");
	cli_execute("retrieve 5 gooey lava globs");
}
else if (page.contains_text("Materiel Theft: Rations")) {
	status("Materiel Theft: Rations daily found");
	cli_execute("retrieve SMOOCH bottlecap");
}
else if (page.contains_text("Procure Incinerator Fuel")) {
	status("Procure Incinerator Fuel daily found");
	cli_execute("retrieve smooth velvet bra");
}
else if (page.contains_text("Materiel Theft: Body Armor")) {
	status("Materiel Theft: Body Armor daily found");
	cli_execute("retrieve 3 SMOOCH bracers");
}
else if (page.contains_text("Acquire Offensive Technology")) {
	status("Acquire Offensive Technology daily found. COMPLETE MANUALLY");
	quest = false;
}
else {
	status("No easy daily available today. Skipping...");
quest = false;
}
if (quest == true){
	visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
	run_choice(1);
	visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
	run_choice(2);
	visit_url("place.php?whichplace=airport_hot&action=airport4_questhub");
	run_choice(3);
}
 
Last edited:

Darzil

Developer
Well, I think because I added them, but experiment with “prefref volcano” etc to see which preferences are likely to be right, or switch on the option that shows preference changes in the gcli and then run through the actions in the relay browser.
 

Aeres

New member
Well, I think because I added them, but experiment with “prefref volcano” etc to see which preferences are likely to be right, or switch on the option that shows preference changes in the gcli and then run through the actions in the relay browser.

Wow, that helped, I didn't know about preref. Also sovled my problem on how to check for clip art summons.
 
Top