-
Posts
392 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Posts posted by Sneaky
-
-
I clearly didn't ask for the code I saw on annie's patch.
-
You may want to post your battle_check_target function here if you want any help (Not all of it though).
-
Lol my old nickname is right there //honor, just like brunoshp said, you need a few other mods on the source to be able to have that script working. I think I have a version working on rAthena, because the one made for this script was eAthena and it was a revision from like 05~06.
But honestly with the new script party commands added here on rAthena you can easily replicate the queue system Xilero used back then.
-
@c2greentea, sorry for the curse thing, I used Euphy's script, didn't even read or browsed through the buffs lol. Should work with @capuche's solution (I guess).
@Moriarty, of course, in athena's scripting, 0 means false, to destroy variables you can just set them to 0, that's why I don't count 0 as a value. By any value I mean 1 or higher. Yet again I specified here in athena's scripting, because as you mentioned in most programming languages, it doesn't work that way
! -
There are a few issues in the script you have @c2greentea.
The script below should work pretty well.
- script Healer -1,{ [email protected] = 0; // Zeny required for heal [email protected] = 0; // Also buff players? (1: yes / 0: no) [email protected] = 10; // Heal delay, in seconds if (@healDelay > gettimetick(2)) { mes callfunc("Time2Str" ,@healDelay)+" seconds to heal again."; close; } if(BaseLevel >= 95) { mes "[Healer]"; mes "My free healing service is only for players below lvl 95. And if you are below lvl 50, you get free buffs!"; mes " "; mes "For players above lvl 95, my charge will be 780 z (w/o buffs). Thank you for your understanding."; mes " "; mes "^777777Delay: 1-3 minutes^000000"; set [email protected],780; // Zeny required for heal set [email protected],rand(60,180); // Heal delay, in seconds } else if(BaseLevel < 50) { mes "[Healer]"; mes "My free service is only for players below lvl 95. And if you are below lvl 50, you get free buffs!"; mes " "; mes "^777777Delay: 10 secs^000000"; set [email protected],1; // Also buff players? (1: yes / 0: no) set [email protected],10; // Heal delay, in seconds } if ([email protected]) { message strcharinfo(0),"Healing costs "[email protected]+" Zeny."; if (Zeny < [email protected]) { mes "^ff0000You don't have enough Zeny^000000."; message strcharinfo(0),"You don't have enough Zeny."; close; } if(select("^0055FFHeal^000000:^777777Cancel^000000") == 2) close; Zeny -= [email protected]; } specialeffect2 EF_HEAL2; percentheal 100,100; if ([email protected]) { specialeffect2 EF_INCAGILITY; sc_start SC_INC_AGI,240000,10; specialeffect2 EF_BLESSING; sc_start SC_BLESSING,240000,10; } if ([email protected]) @healDelay = gettimetick(2)[email protected]; close; }@Pneuma, just like @Moriarty said, you have no idea whatsoever of basic programming. Quite surprising how you even got that title.
Let's just say in athena's scripting when you compare a variable alone, example:
if(@variable)
it actually checks if it has a value, and if it does, it will execute whatever it is inside the if-statement.
if(@variable) //@variable has a value then...
{
//doThis;
}
Hope it helps
! -
It must be this line.
mes "You only have "+countitem($QuestItem1HM)+" of ^FF0000"+getitemname($QuestItem1)+"^000000, "+countitem($QuestItem2HM)+" of ^FF0000"+getitemname($QuestItem2)+"^000000, "+countitem($QuestItem3HM)+" of ^FF0000"+getitemname($QuestItem3)+"^000000.";
So in the countitem it should be $QuestItem1 instead of pointing out the quantity $QuestItem1HM. Same for the 2 and 3.
Just replace the one above, for this one below:
mes "You only have "+countitem($QuestItem1)+" of ^FF0000"+getitemname($QuestItem1)+"^000000, "+countitem($QuestItem2)+" of ^FF0000"+getitemname($QuestItem2)+"^000000, "+countitem($QuestItem3)+" of ^FF0000"+getitemname($QuestItem3)+"^000000.";
-
src\map\skill.c
case KN_BOWLINGBASH: case MS_BOWLINGBASH: if(flag&1){ if(bl->id==skill_area_temp[1]) break; //two hits for 500% skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,SD_ANIMATION); skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,SD_ANIMATION); } else { //Weirdo dual-hit property, two attacks for 500% skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,0); skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,0); } break;and for charge attack
case KN_CHARGEATK: { bool path = path_search_long(NULL, src->m, src->x, src->y, bl->x, bl->y,CELL_CHKWALL); unsigned int dist = distance_bl(src, bl); unsigned int dir = map_calc_dir(bl, src->x, src->y); // teleport to target (if not on WoE grounds) if( !map_flag_gvg(src->m) && !map[src->m].flag.battleground && unit_movepos(src, bl->x, bl->y, 0, 1) ) clif_slide(src, bl->x, bl->y); // cause damage and knockback if the path to target was a straight one if( path ) { skill_attack(BF_WEAPON, src, src, bl, skillid, skilllv, tick, dist); //skill_blown(src, bl, dist, dir, 0); //HACK: since knockback officially defaults to the left, the client also turns to the left... therefore, // make the caster look in the direction of the target unit_setdir(src, (dir+4)%8); }Not sure if it Works.
-
this would definitely be more efficient. +1 maki
-
Then just copy the monsters of the renewal to the pre-re mob_db
-
Goodluck to you guys, and to us all. Congratulations Arcenciel (I still remember when we both just started as script moderators), too bad I didn't have the time to keep up. And goodluck Johnny, life's good ^^;
-
Gracias kiova24! cierro tema.
-
Antes de cerrarlo me gustaria que postearas la solucion, solo para dejarlo como Log. (ayuda para usuarios futuros que tengan este mismo problema).
-
if(!strcmp(target,"Alliance")) { struct guild *g, *g_; char out[256]; int j, len; if( !sd->status.guild_id || (g=guild_search(sd->status.guild_id))==NULL ) { sprintf(out,"You have to be in a guild to talk with possible Alliances!"); clif_disp_onlyself(sd,out,strlen(out)); return; } sprintf(out, "[%s] %s : %s", g->name, sd->status.name, message); len = strlen(out); for(i=0;i<MAX_GUILDALLIANCE;i++) { if(g->alliance[i].guild_id != 0 && g->alliance[i].opposition == 0) { g_ = guild_search(g->alliance[i].guild_id); if(g_==NULL) continue; for(j = 0; j < g_->max_member; j++) { if(g_->member[j].sd != NULL) clif_disp_onlyself(g_->member[j].sd,out,len); } } } guild_send_message(sd,out,len+1); return; }xilero's code...xd
Can it be implemented a new symbol?
Something like
IMO it looks better than&my message@command my messageAnd since you brought in this subject, what about an option to whether or not view guild hp members (+ ally --optional as well) ?
I like the &my message idea. Even though I don't think it's really necessary to add this since it's really up to them (server owners) to customize it the way they want it to work.
-
what svn did use that conf? eA or rA or 3ceAM..? XD
I believe you have to add it yourself.
-
Indeed most servers use this function, but there are also servers that they don't (They like it better to just Resurrect via warp), I'd say make it a conf that applies for both at go and warp, in /battle/misc.conf. warpbeingdead: yes/no
Or, just let 'em add/remove the code however they want it to work. But yeah as I said above at least the mayority of the servers use that function.
-
1
-
-
Lol I never read this before (well I do remember a discussion 'bout this in IRC, from sketchyphoenix)...
This is a pretty good idea.
Question:
Would it affect server's stability somehow? like lag or something...
-
I don't understand, you're removing WoE2, but you want to have it? ._.
-
I don't see what's the problem with this, if you're having problems because of your keyboard or whatever, then don't allow those symbols to be used in char names. Easy as that, this is not really necessary at all.
And if you're not the server owner to make that call, then, figure it out, that's why you were "chosen" to be part of the Staff. So you can "work" it out.
-
If you're using eAmod, and it was removed as you said, then you should take out everything that has to do with woe2.
in that case, would be:
AgitEnd; AgitEnd2;
Remove the AgitEnd2;
-
File Name: Soul Hunters
File Submitter: Spyra
File Submitted: 16 Aug 2012
File Category: Games, Events, Quests
Content Author: Spyra/og2 (Honor)
Small Description:
You can read the game information in game directly from the NPC, it has an option to do that.
This minigame, is easily configurable, in game, so you don't really have to edit anything directly from the script.
Installation:
Simply just add it in our scripts_custom.conf, add in your folder, and run your server, should run just fine!
* To configurate the default values you may just log in game with your GM account lvl 99 and click the NPC.
Not confirmed known bugs:
Autowin not working, once reach the MAX amount of points, doesn't count it as win also, until the timer runs out.
- Report any other bug found -
~Enjoy~
-
SC_MANHOLE not be used alongside a trap already active
I'm not exactly sure, but I think this may be it.
-----------------------------------------------------------------
src > map > skill.c
Find:
//Non stackable on themselves and traps (including venom dust which does not has the trap inf2 set)
Add above:
case SC_MANHOLE:
--------------------------------------------------
It should look like this:
case RA_ICEBOUNDTRAP: case SC_DIMENSIONDOOR: case SC_MANHOLE: //Non stackable on themselves and traps (including venom dust which does not has the trap inf2 set) if (skillid != g_skillid && !(skill_get_inf2(g_skillid)&INF2_TRAP) && g_skillid != AS_VENOMDUST && g_skillid != MH_POISON_MIST) return 0; break;
PS: All these requests you're making should go in Source Request forum, not in support, since you do not have any code that needs fix, you are requesting the whole thing (I'm not going to move them, I'd rather let a moderator do it, their point of view could be different ^_~).
-
That's the point, Asura is a very powerful skill, one that should have item disable after its use. If not, you could just ASURA+Healing Item, then do again. Not a fair play, I tell you this from my experience playing and not only that but also as game moderator.
-
1
-
-
No problem,
@micheru:
I don't really see the difference, what's the difference from not using any healing items for 10 seconds.
Are you going to change your coat? your garmet? your helm? what difference does it make? you still have no SP, So you can't do anything.
-
1
-
-
^ Edit just as Emy said:
(100 + 40*skill_lv)/100;
To raise you could change it like (Supposing your server is 255/70, highrate):
(160 + 55*skill_lv)/80;
Weapon stats request
in Script Requests
Posted
if(isequipped) and you should also put if(isequipped) everytime you're making a comparison.
- script RoyalWeapon -1,{ OnPCKillEvent: if(isequipped(25621) || isequipped(25622) || isequipped(25623) || isequipped(25624) || isequipped(25625) || isequipped(25626) || isequipped(25627) || isequipped(25628) || isequipped(25629) || isequipped(25630) || isequipped(25631) || isequipped(25632) || isequipped(25633)) { if ( @kill < 10 ) { set @kill,@kill + 1; message strcharinfo(0),"You got "[email protected]+" Kills"; } } end; OnPCDieEvent: if(isequipped(25621) || isequipped(25622) || isequipped(25623) || isequipped(25624) || isequipped(25625) || isequipped(25626) || isequipped(25627) || isequipped(25628) || isequipped(25629) || isequipped(25630) || isequipped(25631) || isequipped(25632) || isequipped(25633)) { if ( @kill > 0 ) { set @kill, @kill/2; message strcharinfo(0),"You got "[email protected]+" Kills"; } } end; }