PDA

View Full Version : Complete perl function list


fathernitwit
10-28-2004, 04:59 PM
Hey,

I had to make this list for some work im doing on perl, and I figured you guys could use it.


int ChooseRandom(int, int, int....);

void echo(const char *str);
void say(const char *str);
void me(const char *str);
void summonitem(int32 itemid, uint8 charges = 0);
void write(const char *file, const char *str);
void spawn2(int npc_type, int grid, int unused, float x, float y, float z, float heading);
void setstat(int stat, int value);
void castspell(int spell_id, int target_id);
void selfcast(int spell_id);
void addloot(int item_id, int charges = 0);
void Zone(const char *zone_name);
void settimer(const char *timer_name, int seconds);
void stoptimer(const char *timer_name);
void emote(const char *str);
void shout(const char *str);
void shout2(const char *str);
void depop(int npc_type = 0);
void settarget(const char *type, int target_id);
void follow(int entity_id);
void sfollow();
void cumflag();
void flagnpc(int32 flag_num, int8 flag_value);
void flagcheck(int32 flag_to_check, int32 flag_to_set);
void changedeity(int diety_id);
void exp(int amt);
void level(int newlevel);
void traindisc(int discipline_tome_item_id);
void safemove();
void rain(int weather);
void snow(int weather);
void surname(const char *name);
void permaclass(int class_id);
void permarace(int race_id);
void permagender(int gender_id);
void scribespells();
void givecash(int copper, int silver, int gold, int platinum);
void pvp(const char *mode);
void movepc(int zone_id, float x, float y, float z);
void gmmove(float x, float y, float z);
void movegrp(int zoneid, float x, float y, float z);
void doanim(int anim_id);
void addskill(int skill_id, int value);
void setlanguage(int skill_id, int value);
void setskill(int skill_id, int value);
void setallskill(int value);
void attack(const char *client_name);
void save();
void faction(int faction_id, int faction_value);
void setsky(uint8 new_sky);
void setguild(int32 new_guild_id, int8 new_rank);
void settime(int8 new_hour, int8 new_min);
void itemlink(int item_id);
void signal(int npc_id);
void setglobal(const char *varname, const char *newvalue, int options, const char *duration);
void targlobal(const char *varname, const char *value, const char *duration, int npcid, int charid, int zoneid);
void delglobal(const char *varname);
void ding();
void rebind(int zoneid, float x, float y, float z);
void start(int wp);
void stop();
void pause(int duration);
void moveto(float x, float y, float z);
void resume();
void addldonpoints(sint32 points, int32 theme);
void setnexthpevent(int at);
void respawn(int npc_type, int grid);

Z.Wylde
11-10-2004, 08:29 AM
where do you type this stuff in? in game? in cmd? sorry i'm a noob, and have no clue

RangerDown
11-10-2004, 09:14 AM
If you're going to code perl quests, and have the prerequisite quest scripting know-how (which is beyond the scope of this thread), then those are the perl functions you can use under that new perl system Father is making.

If you don't do perl quests, then you may disregard this entire thread :P

Darkened
11-10-2004, 01:28 PM
i've searched high and low , but where is a thread detailing the new quest system? i'm making a quest pack for EQEmu (all official quests from live) and i don't want to write them in the old format if theres a new format.

fathernitwit
11-10-2004, 01:49 PM
The format is exactly the same; the only thing that's changed is the format behind it.

If you're working on a quest pack, you might want to drop by #npcmovdb on irc, perhaps you'd like to join the official peq team

Darkened
11-10-2004, 03:02 PM
sure , i'm interested in joining if thats acceptable by the staff :D

i'm in the irc chan now , also Cofruben or zordon can usually get ahold of me if i'm not in irc, as i'm involved in other projects with them as well.

mamba666
05-08-2007, 06:06 AM
void changedeity(int diety_id);

Which is it Diety or Deity?


Is it possible to do something like

sub EVENT_SAY
{
if(($text=~/hail/i) && ($deity_id==1))
{
quest::say("Hello fellow Norrathian.");
}
}


I just want to be able to do some quests based on the characters deity.

I think that the deity implementation on live is so sparse. There are a couple of tradeskills and very few deity oriented quests. It is sad to see this go to waste.

gernblan
10-23-2007, 02:30 PM
Just wondering if this is still up to date .. I mean, if someone knows offhand? I'd have to do research and stuff and am wondering if anyone just KNOWS :)

Thank you.

gernblan
10-23-2007, 02:42 PM
void changedeity(int diety_id);

Which is it Diety or Deity?


Is it possible to do something like

sub EVENT_SAY
{
if(($text=~/hail/i) && ($deity_id==1))
{
quest::say("Hello fellow Norrathian.");
}
}

.


Read those as a guide... not truly literal.

An example of how to "read" them...

Let's do yours:

void changedeity(int diety_id);

Ok...

First, scrap void. Change that to quest::

So...

quest::changedeity();

Now what?

Inside the parens are the TYPES of values you give the function.

So for follow it wants the deity_id which is of type integer (the list of values and Deitys they represent are probably on the wiki somewhere). So in the parens just give it the value you want.

So now it becomes:

quest::changedeity(4);

That changes the player to Deity #4 (whatever that is...).

Make sense?

The others, just work them out the same way. The definitions inside the parens simply tell you what the function WANTS in terms of the data type and stuff. The rest of it can be figured out in context to what the function actually is supposed to do.

KingMort
04-29-2009, 07:24 AM
Could some one update this ?

drakelord
04-29-2009, 09:05 AM
That would be nice. In fact, I'd say the entire perl lexicon needs an update, as there are a lot of new EVENT types and such that have been added along with plugins and the like.

cavedude
04-29-2009, 09:07 AM
Use the wiki, it is kept up to date. http://www.eqemulator.net/wiki/wikka.php?wakka=QuestTutorial

drakelord
04-29-2009, 09:42 AM
Hoshi~ Thanks cavedude. Most of the stuff on the wiki hasn't been edited in a while, so I assumed the wrong thing.