-
Posts
2997 -
Joined
-
Last visited
-
Days Won
72
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Posts posted by Euphy
-
-
Consider taking a look at db/re/item_package.txt, a relatively new database that should suit your purpose. There's documentation for it in doc/item_group.txt.
-
I asked the question in this topic: http://rathena.org/board/topic/74682-regentype-argument-in-mob-spawn/
It's a mystery. It's also probably safe to ignore, for now.
- 1
-
Lemongrass implemented this in 27cbc7f.
-
This was a bug with our implementation of "fake" instances, seems like no one's fixed it yet. x.x
-
It's just an 'and' (&&) operator.
if (checkquest(80001,HUNTING) == 2 && checkquest(81001,HUNTING) == 2) {}
- 1
-
The normal, official Battlegrounds scripts come enabled, so you don't need to make any changes. They're located in npc/battleground/. There are different types of matches, which you can read about on iRO Wiki.
The "custom" battlegrounds have been moved into npc/custom/battleground/unofficial/ as of 163a98c to avoid confusion. As stated in npc/scripts_custom.conf, they are custom implementations of the official scripts which were written before the Aegis conversion (i.e. the accurate, official scripts currently in npc/battleground/). As such, they shouldn't be used, and are still there largely for history; however, if you prefer them to the official scripts, comment out the official scripts and uncomment the custom ones (since they have identical names).
-
It's not implemented yet. It's very unlikely that we'll have any scripts from new episodes before iRO implements them (since they do most of the translating from kRO), so chances are it'll be a while before you see anything related to Dali.
- 1
-
It's easiest (and more efficient) if you just add multiple quests instead, and check if all are completed. That's how official servers always handle multiple-objective quests.
- 1
-
[info=Development Update][/info]Major custom folder update: 163a98c
New scripts:
- npc/custom/battleground/bg_emp.txt
- npc/custom/battleground/bg_pvp.txt
- npc/custom/card_seller.txt
- npc/custom/etc/autopot.txt
- npc/custom/etc/mvp_room.txt
- npc/custom/events/devil_square.txt
- npc/custom/events/mvp_ladder.txt
- 1
-
Do you think it'd be more useful to have an array sorting command instead? I imagine most applications of a search being repeated multiple times, so it'd be more effective to search through sorted arrays. Opinions?
-
Ah, it won't for users with PCRE disabled. I'll add a placeholder command later to prevent console errors.
EDIT: 007b88f
-
That label doesn't exist. I think you mean OnNPCKillEvent - see doc/script_commands.txt for details.
-
Please read this topic: Officially supported client versions
Instead of supporting bits and pieces from every client, we've decided to support three main, stable clients. Until we officially shift into newer clients, packet updates like these aren't high priority for us.
- 1
-
preg_match(<regex pattern>,<string>{,<offset>})
commit: 957f495
Searches a string for a match to the regular expression provided. The offset parameter indicates the index of the string to start searching. Returns offsets to captured substrings, or 0 if no match is found.
This command is only available if the server is compiled with the regular expressions library enabled.For some examples, read the "F_GetArticle" function in 957f495#diff-1. -
Can't you just use @hidenpc and @shownpc for that?
-
prontera,150,150,1 script GM Tracker 101,{
.@gm_name$ = "GM Untrustworthy";
mes "Tracking: " + .@gm_name$;
next;
.@i = select("Get coordinates.:Warp to GM.");
if (!getcharid(0,.@gm_name$)) {
mes .@gm_name$ + " is not online.";
close;
}
getmapxy(.@map$,.@x,.@y,0,.@gm_name$);
if (.@i == 1)
mes sprintf("%s is at %s (%d,%d).",.@gm_name$,.@map$,.@x,.@y);
else
warp .@map$,.@x,.@y;
close;
}
- 1
-
-
A couple of updates!
- Added an Auto-Potion script (@autopot) that automatically uses potions when a player is hit. (idea from this topic)
- Updated All-in-One NPC with Rebellion class job change.
- Changed all svn links to link to updated scripts in the GitHub repository.
-
@Annie: applied your fix in ad13f26. Thanks!
Here's an update to my script: [paste=1i3e79nbonx]
Replace line 68 with this (since escape characters are still not supported):
bonus_script "{ callfunc \"start_autopot\"; }",86400,8,0,SI_INCHEALRATE;
- 1
-
In src/common/mmo.h:
#define START_ACCOUNT_NUM 2000000 #define END_ACCOUNT_NUM 100000000
The 'killerrid' variable will be between the two game ID bounds (START_ACCOUNT_NUM and END_ACCOUNT_NUM) for players, and greater than END_ACCOUNT_NUM for mobs. -
Implemented in 11e507b.
-
Here's a sample using 'autobonus2': [paste=6y8ui2jsunt8] (obviously credits to Annie for a lot of parts XD)
It's not as convenient as Annie's script, but should cause less strain on the servers since it only triggers when hit (instead of running all the time). This of course has its disadvantages, such as not being able to work for SP.
Also, for some reason I couldn't get 'consumeitem' to work while testing (probably due to the weird mixing of 'bonus_script', 'autobonus', functions, 'itemheal'...) so you have to add items manually. x.x
-
I haven't tried it, but the autobonus commands might be useful for this ('autobonus2' in particular). For instance, something like this:
autobonus2 "{}",10000,1,BF_WEAPON|BF_MAGIC,"{ if (Hp < MaxHp && countitem(504)) { delitem 504,1; consumeitem 504; specialeffect2 EF_POTION4; } }";
No idea if it would work or not, but just another/simpler approach. -
Added 'bonus bAddMaxWeight,n;' in 0b6c542. Thanks, Annie!
- 1
OnPCLoadMapEvent
in Scripting Support
Posted
First off, you've written your condition as "getgmlevel() <= 80", which would include normal players as well. Not sure if that's what you intended...
If OnPCLoadMapEvent triggers on a map, 'mf_loadevent' must have been set on that map (you can type @mapinfo to confirm this). You might have another mapflag script running (security scripts often do this); if you remove all the 'mapflag' lines from this script, for instance, does the label still get triggered?
A workaround is to run a map name check on the label, although you should really see if you can resolve the larger issue first.