-
Content Count
1677 -
Joined
-
Last visited
-
Days Won
245
Reputation Activity
-
AnnieRuru got a reaction from Hadeszeus in Ultimate Guild Ranking
just tested
alter table `char` add kills int(11) unsigned not null default 0 after unban_time, add death int(11) unsigned not null default 0 after kills, add index (kills), add index (death);select * from `char`;select name, kills, death, kills/death, kills/(death+1) from `char` order by kills desc;select name, kills, death, kills/death, kills/(death+1) from `char` order by death asc;select name, kills, death, kills/death, kills/(death+1) from `char` order by kills/death desc;select name, kills, death, kills/death, kills/(death+1) from `char` order by kills/(death+1) desc;the last one ... is the one that we should useso just make the ratio as +1 to death only when calculating, not on the ladder itself
btw ... I'm not interested in making this script ... just too big
rather just update my sql dota ladder script
-
AnnieRuru got a reaction from Alexandria in cp credit converter to items custom
prontera,156,187,6 script dfkjhsdfkjs 100,{ query_sql "select balance from cp_credits where `account_id` = "+ getcharid(3), .@points; if ( .@points >= 1 ) { if ( !checkweight( 7608, .@points ) ) { dispbottom "You can't carry enough "+ getitemname(7608); end; } query_sql "update cp_credits set balance = balance -"+ .@points +" where account_id = "+ getcharid(3); getitem 7608, .@points; } else dispbottom "You don't have anymore voting points"; end;}I always forgot the *checkweight command =/ -
AnnieRuru got a reaction from leloush in [how to make this work]
- script kjdfkjsdfhks -1,{OnInit: monster "guild_vs2", 0,0, "--ja--", 1002, 100, strnpcinfo(0)+"::Onaaa"; .itemid = 501; end;Onaaa: monster "guild_vs2", 0,0, "--ja--", 1002, 1, strnpcinfo(0)+"::Onaaa"; if ( !getcharid(1) ) { getitem .itemid, 1; } else { getpartymember getcharid(1), 1; getpartymember getcharid(1), 2; for ( .@i = 0; .@i < $@partymembercount; .@i++ ) { if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) { attachrid $@partymemberaid[.@i]; if ( strcharinfo(3) == "guild_vs2" ) { .@count++; } } } if ( .@count < 4 ) .@itemget = 1; else if ( .@count < 8 ) .@itemget = 2; else if ( .@count < 12 ) .@itemget = 3; for ( .@i = 0; .@i < $@partymembercount; .@i++ ) { if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) { attachrid $@partymemberaid[.@i]; if ( strcharinfo(3) == "guild_vs2" ) { getitem .itemid, .@itemget; } } } } end;}wonder whats so special about this script
and, in case you don't know, an alchemist can summon homunculus and set it to aggressive
afk inside there as many as possible and get maximum income like this, kinda exploitable
-
AnnieRuru got a reaction from Alexandria in cp credit converter to items custom
prontera,156,187,6 script dfkjhsdfkjs 100,{ query_sql "select balance from cp_credits where `account_id` = "+ getcharid(3), .@points; if ( .@points >= 1 ) { query_sql "update cp_credits set balance = balance -1 where account_id = "+ getcharid(3); getitem 7608, 1; } else dispbottom "You don't have anymore voting points"; end;} -
AnnieRuru got a reaction from Mystery in Poring Summoner
hohoho ... I Approve the topic in eAthena xD -
AnnieRuru got a reaction from Kong in Emperium Breaker ladder
being asked too much in script request section, so better just release one
script
emp_breaker_ladder_1.0.txt
patch ... no need recompile ...
http://upaste.me/0b1d4993914f05487
what this script do ?
hmm ... just display the top players who has broke emperium ..
-
AnnieRuru got a reaction from Like it~* in Scuffle Event 2.1
this one ... Paskie sent me the topic link asked me to write so ...
http://rathena.org/board/topic/93022-random-pker/
I finished it...
Download 2.1
scuffle_event_2.1.txt
also needs source modification of -> getmemberaid
this is a twist to last man standing event
every few hours (configurable), this event will randomly select a few players
those players who are quick enough to type '@scuffle' will be able to join the event
then its a last man standing ... the last one who stay in the map gains the prize
the condition to pick the players for the registrations are : ( by default )
- not a vendor
- not in a chatroom
- not inside an event map (nowarp and nowarpto mapflag)
- not a GM
- active in last 30 seconds
- base level above 55
- no same ip
to configure the time, simply change
OnClock0000: // Configure time here ...OnClock0600:OnClock1200:OnClock1800:..
-
AnnieRuru got a reaction from Hadeszeus in Emperium Breaker ladder
being asked too much in script request section, so better just release one
script
emp_breaker_ladder_1.0.txt
patch ... no need recompile ...
http://upaste.me/0b1d4993914f05487
what this script do ?
hmm ... just display the top players who has broke emperium ..
-
AnnieRuru got a reaction from Adam in [ Req ] Npc Reward Player online
oh
edited
http://upaste.me/54511096937d17482
players being jailed has SC_JAILED status, so no need to use sec_pri
-
AnnieRuru got a reaction from Dramosith in Scuffle Event 2.1
this one ... Paskie sent me the topic link asked me to write so ...
http://rathena.org/board/topic/93022-random-pker/
I finished it...
Download 2.1
scuffle_event_2.1.txt
also needs source modification of -> getmemberaid
this is a twist to last man standing event
every few hours (configurable), this event will randomly select a few players
those players who are quick enough to type '@scuffle' will be able to join the event
then its a last man standing ... the last one who stay in the map gains the prize
the condition to pick the players for the registrations are : ( by default )
- not a vendor
- not in a chatroom
- not inside an event map (nowarp and nowarpto mapflag)
- not a GM
- active in last 30 seconds
- base level above 55
- no same ip
to configure the time, simply change
OnClock0000: // Configure time here ...OnClock0600:OnClock1200:OnClock1800:..
-
AnnieRuru got a reaction from Adam in Emperium Breaker ladder
being asked too much in script request section, so better just release one
script
emp_breaker_ladder_1.0.txt
patch ... no need recompile ...
http://upaste.me/0b1d4993914f05487
what this script do ?
hmm ... just display the top players who has broke emperium ..
-
AnnieRuru reacted to evilpuncker in EmP Break Ranking for Hercules
this may help you, no spoon feed today
-
AnnieRuru got a reaction from Helena in Annie's mission board, drop missions on reborn?
not sure you can understand, but I have level up my scripting skill 3 times2006~2007 just learned how to script
2007~2009 2nd generation
2010~2011 3rd generation
2013~ now 4th generation
let me just brief you my past scripting techniques
example like search a value in array
http://upaste.me/91c4109597fd86270
in other words, any script that I made before 2012 is consider outdated script for me
.
.
.
.
stupid maki ... make eathena forum down againluckily I still have the plans in my old backup-disk
so the script should be
http://upaste.me/058f109570518cb1f
with the source modification of
http://upaste.me/6e0710958b3a393e1
-
AnnieRuru got a reaction from Yoh Asakura in Help to update this npc
LOL you mixed up both
sql query, this one added the index
alter table `char` add empbreak smallint(6) unsigned not null default 0 after unban_time, add index (empbreak);..
npc/guild/agit_main.txt
query_sql "UPDATE `char` SET empbreak = empbreak+1 WHERE char_id = " + getcharid(0);which is already correct.
.
////============================//// Emp Breaking Ladder////============================prontera,155,183,4 script Emperium Ranking 722,{ .@nb = query_sql( "select name, empbreak from `char` where empbreak > 0 order by empbreak desc limit 10", .@name$, .@empbreak ); mes "^FF0000[ Emperium Ranking ]^000000"; for ( .@i = 0; .@i < .@nb; .@i++ ) mes "^0000FF"+ ( .@i +1 ) +".^000000 " + .@name$[.@i] +" - ^FF0000"+ .@empbreak[.@i] +"^000000 Break(s)"; mes " "; query_sql "select empbreak from `char` where char_id = "+ getcharid(0), .@empbreak; mes "^0000FF["+ strcharinfo(0) +"'s]^000000 Emperium Break's is ^FF0000" + .@empbreak + "^000000 Break(s)"; close;OnInit:// waitingroom "Emperium's Ranking",0; // Look on the configuration! end;}use this script -
AnnieRuru got a reaction from Adam in Need this script applied to the party, not only the killer in the party
Patskie's script uses Scenario #1
for Scenario #2, its even easier
- script custom_drop -1,{OnNPCKillEvent: if ( !getcharid(1) ) { if ( rand(4000) < 25 ) // .@rand_gc_drop ... 25/4000 = 1/160 getitem 512,1; if ( rand(2000) < 5 ) // .@rand_sc_drop .... 5/2000 = 1/400 getitem 513,1; if ( rand(1000) < 1 ) // .@rand_gc_drop .... 1/1000 getitem 511,1; } else { getpartymember getcharid(1), 1; getpartymember getcharid(1), 2; for ( .@i = 0; .@i < $@partymembercount; .@i++ ) { if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) { if ( rand(4000) < 25 ) // .@rand_gc_drop ... 25/4000 = 1/160 getitem 512,1, $@partymemberaid[.@i]; if ( rand(2000) < 5 ) // .@rand_sc_drop .... 5/2000 = 1/400 getitem 513,1, $@partymemberaid[.@i]; if ( rand(1000) < 1 ) // .@rand_gc_drop .... 1/1000 getitem 511,1, $@partymemberaid[.@i]; } } } end;} -
AnnieRuru got a reaction from Mystery in Guild Alliance Chat -> @ally
Download:
plugin <-- for those who knows how to install plugin
patch <-- for those who thinks plugin is pain
I don't think there's anything special about this mod
yes it is, I sooo feels stupid now
hercules already have #ally chat
-
AnnieRuru got a reaction from Adam in Guild Alliance Chat -> @ally
Download:
plugin <-- for those who knows how to install plugin
patch <-- for those who thinks plugin is pain
I don't think there's anything special about this mod
yes it is, I sooo feels stupid now
hercules already have #ally chat
-
AnnieRuru got a reaction from Dramosith in Guild Alliance Chat -> @ally
Download:
plugin <-- for those who knows how to install plugin
patch <-- for those who thinks plugin is pain
I don't think there's anything special about this mod
yes it is, I sooo feels stupid now
hercules already have #ally chat
-
AnnieRuru got a reaction from Adam in Force warp back upon death
I still think that's a bug
because there is a workaround for this ... detachrid
prontera,156,189,5 script Raid 100,{ dispbottom "Aww...You hit the wrong one! Try again next time!"; .@aid = getcharid(3); detachrid; unitkill .@aid;// sleep 2000; if ( !attachrid(.@aid) ) end; warp "prontera",156,184; end;}in the source code it says ... if ( sd->st->state ) ... so if detachrid, then sd is not read, thus it work -
AnnieRuru reacted to Dastgir in my custom battleground *createbgid doesn't work on OnQuit when using battleground queue
Queue is not specifically for bg, its an improved waitingroom, can be used with many events , etc.
Got the problem, its hercules bug(cant report/bug/pull request bcoz am on mobile) ,maybe its condition problem.
Map.c
if( sd->bg_id && !sd->bg_queue.arena ) /* TODO: dump this chunk after bg_queue is fully enabled */ bg->team_leave(sd,1); As I think, that ! Should not be there, since if someone has bgid, it wont be null , this is causing the server to not execute the logoutevent of bg.(just done a quick analysis, it may be bigger problem, so bug report would be good, so dev can check in deep) or maybe that condition is correct, and its wip, bcoz theres an todo note over that line.
-
AnnieRuru got a reaction from Mhalicot in [AtCommand] afk
that's a very reassuring answer ..
fixed
http://upaste.me/0fd910896b0cf5621
-
AnnieRuru got a reaction from Hadeszeus in Raid instances
its not triple post, I split topic so answering your question doesn't conflict with other member's post
spoon feed btw
http://upaste.me/4eaa1086717a3d067
-
AnnieRuru got a reaction from Skyline in Redeemer NPC / Coupon NPC / Promotional NPC
perfectly built script, I can only see 1 bug and 2 improvements
1.
bindatcmd "claim",strnpcinfo(3)+"::OnClaim"; bindatcmd "code",strnpcinfo(3)+"::OnEditCode";when you write an atcommand that player can usealways set charcommand level to 99 or 100
its simple to reproduce
when pvp/gvg, type '#claim <player name that you hated>' and will send a chat box on the player,
cause him to have a moment of pause because need to type something
yet again ... this kind of knowledge can only acquire when you have work on a live server =/
2.
so change into like this
bindatcmd "claim",strnpcinfo(3)+"::OnClaim", 0, 100; bindatcmd "code",strnpcinfo(3)+"::OnEditCode", 99, 100;so you don't have to ( getgmlevel() < 99 ) end;
3.
query_sql "SELECT `nameid`, `amount` FROM `reward_codes` WHERE `code` = '" + escape_sql(.@pc$) + "'", .@item, .@amt; if ( !.@item ) dispbottom "Either invalid code or the code is already claimed by other people";can be simplify as if ( !query_sql( "SELECT `nameid`, `amount` FROM `reward_codes` WHERE `code` = '" + escape_sql(.@pc$) + "'", .@item, .@amt ) ) dispbottom "Either invalid code or the code is already claimed by other people"; -
AnnieRuru got a reaction from Kido in [Solved] Ladder script with dota announcement
http://www.eathena.ws/board/index.php?showtopic=177918
I tag it as [bug] but still peoples are still using it
yes the script isn't bug at all but I don't want members using this outdated script ...
I always want to rewrite this script but ... just couldn't find the time ...
I've improved so much since then and right now I'm able to make any kind of script ...
no it doesn't because I don't have the time to rewrite this script,currently I'm more focus in making battleground/instance scripts
but I just tested it still working fine on current hercules
didn't notice there is already 2k+ downloads ...
-
AnnieRuru reacted to Ind in getserverdef
Added in https://github.com/HerculesWS/Hercules/commit/950e3ebcdbbde96b090fa681ce88ecf4069f2f64