Log in

View Full Version : varlink--DOWN ZONE


javewow
01-13-2013, 11:41 PM
varlink--->Items Lead to ZONE DOWN

Help!



my $Warriora = quest::varlink(101229);
my $Clericbb = quest::varlink(83935);
my $Paladinc = quest::varlink(83937);
my $Monk = quest::varlink(83936);

sub EVENT_SPAWN {
quest::settimer("dreadlands5min",300); #Live like is 900
}

sub EVENT_TIMER {
if ($timer eq "dreadlands5min") {
quest::stoptimer("dreadlands5min");
quest::say("The portal to Luclin will become active in five minutes. Please begin gathering at the Spires if you wish to travel.rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::settimer("dreadlands3min",120);
}
if ($timer eq "dreadlands3min") {
quest::stoptimer("dreadlands3min");
quest::say("As a reminder, the portal will become active in three minutes rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk].");
quest::settimer("dreadlands2min",60);
}
if ($timer eq "dreadlands2min") {
quest::stoptimer("dreadlands2min");
quest::say("Two minutes till teleportation. Please be prepared to step inside the circle of Spires. rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::settimer("dreadlands1min",60);
}
if ($timer eq "dreadlands1min") {
quest::stoptimer("dreadlands1min");
quest::say("One minute till teleportation. Please be prepared to step inside the circle of Spires. rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::settimer("dreadlandstimer",60);
}
if ($timer eq "dreadlandstimer") {
quest::stoptimer("dreadlandstimer");
quest::say("The portal to Luclin is about to become active. Please stand inside the circle of Spires and have a shard upon your person. rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::setglobal(nexus_dre,1,3,"S60"); #when the portal is open, global is set true for 1 min.
quest::settimer("dreadlands5min",900);
quest::signalwith(86051,101,0); #triggers the flavor
}
}


next pl Cannot display Warriora ->Item=101229

sub EVENT_SAY {

my $Warriora = quest::varlink(101229);
my $Clericbb = quest::varlink(83935);
my $Paladinc = quest::varlink(83937);
my $Monk = quest::varlink(83936);

sub EVENT_SPAWN {
quest::settimer("dreadlands5min",300); #Live like is 900
}

sub EVENT_TIMER {
if ($timer eq "dreadlands5min") {
quest::stoptimer("dreadlands5min");
quest::say("The portal to Luclin will become active in five minutes. Please begin gathering at the Spires if you wish to travel.rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::settimer("dreadlands3min",120);
}
if ($timer eq "dreadlands3min") {
quest::stoptimer("dreadlands3min");
quest::say("As a reminder, the portal will become active in three minutes rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk].");
quest::settimer("dreadlands2min",60);
}
if ($timer eq "dreadlands2min") {
quest::stoptimer("dreadlands2min");
quest::say("Two minutes till teleportation. Please be prepared to step inside the circle of Spires. rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::settimer("dreadlands1min",60);
}
if ($timer eq "dreadlands1min") {
quest::stoptimer("dreadlands1min");
quest::say("One minute till teleportation. Please be prepared to step inside the circle of Spires. rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::settimer("dreadlandstimer",60);
}
if ($timer eq "dreadlandstimer") {
quest::stoptimer("dreadlandstimer");
quest::say("The portal to Luclin is about to become active. Please stand inside the circle of Spires and have a shard upon your person. rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::setglobal(nexus_dre,1,3,"S60"); #when the portal is open, global is set true for 1 min.
quest::settimer("dreadlands5min",900);
quest::signalwith(86051,101,0); #triggers the flavor
}
}


I want to see if NPC --But not's Working??

Akkadius
01-13-2013, 11:45 PM
No idea what in the hell you are trying to achieve here but you have basic script errors going on here:

- You can't declare your variables as my inside of a sub event if you want to reference them in another sub event because they become localized
- You don't have a bracket finishing off EVENT_SAY

sub EVENT_SAY {
$Warriora = quest::varlink(101229);
$Clericbb = quest::varlink(83935);
$Paladinc = quest::varlink(83937);
$Monk = quest::varlink(83936);
}

sub EVENT_SPAWN {
quest::settimer("dreadlands5min",300); #Live like is 900
}

sub EVENT_TIMER {
if ($timer eq "dreadlands5min") {
quest::stoptimer("dreadlands5min");
quest::say("The portal to Luclin will become active in five minutes. Please begin gathering at the Spires if you wish to travel.rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::settimer("dreadlands3min",120);
}
if ($timer eq "dreadlands3min") {
quest::stoptimer("dreadlands3min");
quest::say("As a reminder, the portal will become active in three minutes rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk].");
quest::settimer("dreadlands2min",60);
}
if ($timer eq "dreadlands2min") {
quest::stoptimer("dreadlands2min");
quest::say("Two minutes till teleportation. Please be prepared to step inside the circle of Spires. rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::settimer("dreadlands1min",60);
}
if ($timer eq "dreadlands1min") {
quest::stoptimer("dreadlands1min");
quest::say("One minute till teleportation. Please be prepared to step inside the circle of Spires. rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::settimer("dreadlandstimer",60);
}
if ($timer eq "dreadlandstimer") {
quest::stoptimer("dreadlandstimer");
quest::say("The portal to Luclin is about to become active. Please stand inside the circle of Spires and have a shard upon your person. rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::setglobal(nexus_dre,1,3,"S60"); #when the portal is open, global is set true for 1 min.
quest::settimer("dreadlands5min",900);
quest::signalwith(86051,101,0); #triggers the flavor
}
}

c0ncrete
01-13-2013, 11:45 PM
1) use proper indentation or your scripts are difficult to read.
2) post the entire script or it's impossible to debug.
3) i see at least one missing closing curly brace in your second script (excerpt?).

lerxst2112
01-13-2013, 11:49 PM
Get rid of
sub EVENT_SAY {
at the beginning of the second file.

ghanja
01-13-2013, 11:53 PM
Darnit, wanted to help you, but, I had to pick up pieces of my brain. Fortunately, others have replied with sound advice.

Please do at least post the entire script, if you did... oh.

javewow
01-14-2013, 12:12 AM
No idea what in the hell you are trying to achieve here but you have basic script errors going on here:

- You can't declare your variables as my inside of a sub event if you want to reference them in another sub event because they become localized
- You don't have a bracket finishing off EVENT_SAY

sub EVENT_SAY {
$Warriora = quest::varlink(101229);
$Clericbb = quest::varlink(83935);
$Paladinc = quest::varlink(83937);
$Monk = quest::varlink(83936);
}

sub EVENT_SPAWN {
quest::settimer("dreadlands5min",300); #Live like is 900
}

sub EVENT_TIMER {
if ($timer eq "dreadlands5min") {
quest::stoptimer("dreadlands5min");
quest::say("The portal to Luclin will become active in five minutes. Please begin gathering at the Spires if you wish to travel.rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::settimer("dreadlands3min",120);
}
if ($timer eq "dreadlands3min") {
quest::stoptimer("dreadlands3min");
quest::say("As a reminder, the portal will become active in three minutes rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk].");
quest::settimer("dreadlands2min",60);
}
if ($timer eq "dreadlands2min") {
quest::stoptimer("dreadlands2min");
quest::say("Two minutes till teleportation. Please be prepared to step inside the circle of Spires. rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::settimer("dreadlands1min",60);
}
if ($timer eq "dreadlands1min") {
quest::stoptimer("dreadlands1min");
quest::say("One minute till teleportation. Please be prepared to step inside the circle of Spires. rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::settimer("dreadlandstimer",60);
}
if ($timer eq "dreadlandstimer") {
quest::stoptimer("dreadlandstimer");
quest::say("The portal to Luclin is about to become active. Please stand inside the circle of Spires and have a shard upon your person. rewards[$Warriora]-[$Clericbb]-[$Paladinc]-[$Monk]");
quest::setglobal(nexus_dre,1,3,"S60"); #when the portal is open, global is set true for 1 min.
quest::settimer("dreadlands5min",900);
quest::signalwith(86051,101,0); #triggers the flavor
}
}

add } but Link item Can't display Warriora

help!

c0ncrete
01-14-2013, 12:23 AM
add } but Link item Can't display Warriora

help!

because you're not following the instructions provided to you.

read your (quest) log files. they will tell you where your errors are. you'll probably see a few lines regarding uninitialized variables.

the reason for this is that you are declaring and defining variables in one block of code and then trying to use them in another. this will not work.

google "perl variable scope" for more information.

javewow
01-14-2013, 12:30 AM
this

A little but not display

ghanja
01-14-2013, 12:33 AM
this

A little but not display

That about did it for me chief.

1. You don't listen to the advice given by those with a great amount of experience and knowledge.

2. You never seem to answer questions.

3. You appear as though you want everything done for you.

4. Your scripts do not appear to make any sense what-so-ever in more cases than none.

5. Do you ever check PM's?

Good luck bud, but, I fear you're testing the patience of more than one here. :(

lerxst2112
01-14-2013, 01:01 AM
I think Noport should be his personal helper. I'm guessing it's bad opcodes breaking them scripts.

wolfwalkereci
01-14-2013, 01:17 PM
Language barrier issues maybe?

Noport
01-14-2013, 07:49 PM
lerxst2112 I am sad to say, "it's The Humble Programmers." You Want to be a Programmer heheha

c0ncrete
01-14-2013, 10:43 PM
package Noport::Response;

use 5.012;
use constant ONLINE => 1;

sub RandomThing {
rand 99 > 49 ? 'try ' . UnrelatedOpcode() : 'incoherent nonsense';
}

sub UnrelatedOpcode {
'0x' . join '', map { unpack "H*", chr rand 256 } 1 .. 2;
}

say RandomThing() while ONLINE;

Akkadius
01-14-2013, 11:05 PM
package Noport::Response;

use 5.012;
use constant ONLINE => 1;

sub RandomThing {
rand 99 > 49 ? 'try ' . UnrelatedOpcode() : 'incoherent nonsense';
}

sub UnrelatedOpcode {
'0x' . join '', map { unpack "H*", chr rand 256 } 1 .. 2;
}

say RandomThing() while ONLINE;

I was saddened by my results when I tried to install this module:


cpan[1]> install Noport::Response
CPAN: Storable loaded ok (v2.20)
Going to read '/root/.cpan/Metadata'
Database was generated on Tue, 31 Jul 2012 01:12:42 GMT
CPAN: Time::HiRes loaded ok (v1.9719)
You do not meet the qualified access level:
Opcode Ninja

c0ncrete
01-29-2013, 07:55 PM
i figured out why you were having zone crashes at least...

http://www.eqemulator.org/forums/showthread.php?t=36351