Jump to content

Radian

Members
  • Posts

    1546
  • Joined

  • Last visited

  • Days Won

    19

Everything posted by Radian

  1. Radian

    Item GUID

    I tested the latest revision. but there's a debug message.
  2. Thanks! 1 more question If ever I deactivate this //Activate/Deactivate repeatable quests (1 - activated, 0 - deactivated) set .quest_repeat, 0; this line will still activate right? //Quest Delay (seconds) //24 hours = 86400 seconds set .quest_delay, 86400; ex : 1 quest finish (once) wait for 24 hours before you can use the npc again or accept a quest again.
  3. Tr0n is it possible to make it once per quest? (you can only quest it once not twice.) and set it to per account?
  4. Nice released!
  5. The script he posted doesn't use SQL O_O I thought it was. My bad xD
  6. Did you apply the sql for the PvP Ladder? create table pvpladder ( char_id int(11) not null default '0' primary key, name varchar(30) not null default '', streaks smallint(6) unsigned not null default '0', kills smallint(6) unsigned not null default '0', deaths smallint(6) unsigned not null default '0', streaktime datetime ) engine = myisam; create table ownladder ( guild_id int(11) not null default '0' primary key, name varchar(24) not null default '', currentown smallint(6) unsigned not null default '0', highestown smallint(6) unsigned not null default '0', owntime datetime ) engine = myisam;
  7. Thank you.. but how can I do that ?
  8. Hello everyone can I request something like this. =========================================================== Example in the group.conf : id: 0 name: "Player" level: 0 char_limit: 9 // Character limitation [ Min 1 / Max 9 ] ===========================================================
  9. @offtopic Maybe its time to upgrade your emulator to the latest
  10. Thanks.
  11. Hello Everyone, I am currently looking on a translated about the new skills of 3rd job. anyone got an idea?
  12. here's the link : tell your host that you need to put this files on your sql. https://github.com/rathena/rathena/tree/master/sql-files
  13. That's because its on the same folder of main.sql and logs.sql on server side.
  14. Radian

    Converter

    You can use ItemConverter. Thanks!
  15. Radian

    Converter

    I see thanks anyway.
  16. Radian

    Converter

    Hi is there a software that can convert idnum2itemdesctable, idnum2itemdisplaynametable and idnum2itemresnametable to iteminfo.lub ?
  17. I didn't test this one yet. /* CREATE TABLE `changelog` ( `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, `changelog` VARCHAR(300) NOT NULL, `date` VARCHAR(30) NOT NULL, `author` VARCHAR(24) NOT NULL, PRIMARY KEY (`id`) ) ENGINE = InnoDB; */ maintown,115,85,6 script Changelogs 837,{ if (getgmlevel() >= .minGMLevel) goto chlog_GM; // -- Player Menu -- chlog_Player: mes .npcname$; mes "Hey choose the Changelog you want to read."; // --- Generating Menu --- query_sql "SELECT id FROM changelog ORDER BY id DESC LIMIT 1",@chamt; set .@menu$ = ""; set .@limit = 0; for (@i = @chamt; @i >= 1; @i=@i-1 ) { query_sql "SELECT id,changelog,date,author FROM `changelog` WHERE id='"+@i+"'",@id,@changelog$,@date$,@author$; query_sql "SELECT COUNT(*) FROM `changelog` WHERE id='"+@i+"'",@check; if (@check == 0) continue; @id2 = 1+(@id/10); @id$ = @id2+"."+(@id%10); set .@menu$,""+.@menu$+"Changelog "+@id$+" [ "+@date$+" ]"; if (@i >= 1) set .@menu$,.@menu$+":"; @limit=@limit+1; if(@limit == .loglimit) break; } // ----------------------- @pick = select(@menu$); next; query_sql "SELECT id FROM `changelog` ORDER by id DESC LIMIT 1 OFFSET "+(@pick-1)+"",@pick; query_sql "SELECT id,changelog,date,author FROM `changelog` WHERE id='"+@pick+"'",@id,@changelog$,@date$,@author$; @id2 = 1+(@id/10); @id$ = @id2+"."+(@id%10); @chcount = countstr(@changelog$, "|"); explode(@changelog$, @changelog$, "|"); mes "[Changelog "+@id$+"]"; for (@i = 0; @i < @chcount; @i=@i+1) mes "ï "+@changelog$[@i]; mes " "; mes "By : "+@author$+""; next; mes .npcname$; mes "Do you want to read other logs ?"; next; if(select("Yes:No")==1) goto chlog_Player; mes .npcname$; mes "Ok, Happy RO ^^"; close; // ----------------- // -- GM Menu -- chlog_GM: set .@a = 0; set .@finish = 0; mes .npcname$; mes "Hello Mr. "+strcharinfo(0)+"."; mes "How can I assist you ?"; next; menu "~ Add a Change Log",chlog_add, "~ Edit a Change Log",chlog_edit, "~ Remove a Change Log",chlog_rm, "~ Clear all the Change Logs",chlog_clear, "~ Open Player Menu",chlog_Player; chlog_add: // --- Tutorial about adding Change Log -- if (#ch_tutorial != 1) { ch_tutor: mes .npcname$; mes "Okay I guess it's your first time adding changelog. I'll throw you an example."; next; mes .npcname$; mes "This is the example: "; mes " "; mes "[^FF0000Changelog 1.1^000000]"; mes "ï ^3661deAdded new monster 'Poring'^000000"; mes "ï ^de8229Pressure now deals 3000 fixed damage^000000"; mes "ï ^3661deRune Knight now rides Lunatic instead of Peco^000000"; mes " "; mes " ------------- "; mes "^515151Author: 2essy2killu^000000"; mes "^515151Date: 12-07-1997^000000"; next; mes .npcname$; mes "First you are going to add the change points"; mes "From the previous example you are going to add 3 Point"; mes "Added New monster 'poring"; mes " "; mes "Pressure now deals 3000 fixed damage"; mes " "; mes "Rune Knight now rides Lunatic instead of Peco"; next; mes .npcname$; mes "Date and Author can be removed from the Changelog though from the Configuration menu"; next; mes .npcname$; mes "Do you want to hear the tutorial again ?"; next; menu "Yes",ch_tutor,"No",ch_tutor_x; ch_tutor_x: #ch_tutorial = 1; } // ----------------------------------------- do { mes .npcname$; mes "Input a note:"; if (@a > 0) mes "You have added "+@a+" note(s)."; if (@a > 0) mes "Previous Point : "+@point$[@a-1]+"."; mes " "; mes " - Commands -"; mes "input 0 to cancel the whole thing"; mes "input 1 to finish and save"; mes "input 2 to delete the last point"; input @point$[@a]; if(@point$[@a] == "0") { end; } else if(@point$[@a] == "1") { set @finish,1; } else if(@point$[@a] == "2") { @a=@a-1; } else { @a=@a+1; } next; } while (@finish != 1); set .@pointmerge$ = ""; for( @i = 0; @i < @a; @i=@i+1 ) { set .@pointmerge$,.@pointmerge$+""+@point$[@i]; if (@i < @a) set @pointmerge$,@pointmerge$+"|"; } set @date$,""+gettime(5)+"-"+gettime(6)+"-"+gettime(7)+""; query_sql "INSERT INTO `changelog` (changelog, date, author) VALUES ('"+@pointmerge$+"','"+@date$+"','"+strcharinfo(0)+"')"; if(.broadcast == 1) announce strcharinfo(0)+" has added a new changelog.",bc_all; mes .npcname$; mes "You've successfully added a Change Log"; end; chlog_edit: mes .npcname$; mes "Hey choose the Changelog you want to edit."; // --- Generating Menu --- query_sql "SELECT id FROM changelog ORDER BY id DESC LIMIT 1",@chamt; set .@menu$ = ""; for (@i = 1; @i <= @chamt; @i=@i+1 ) { query_sql "SELECT id,changelog,date,author FROM `changelog` WHERE id='"+@i+"'",@id,@changelog$,@date$,@author$; query_sql "SELECT COUNT(*) FROM `changelog` WHERE id='"+@i+"'",@check; if (@check == 0) continue; @id2 = 1+(@id/10); @id$ = @id2+"."+(@id%10); set @menu$,""+.@menu$+"Changelog "+@id$+" [ "+@date$+" ]"; if (@i < @chamt) set .@menu$,.@menu$+":"; } // ----------------------- set .@pick = select(.@menu$); next; do { mes .npcname$; mes "Input a note:"; if (@a > 0) mes "You have added "+@a+" note(s)."; if (@a > 0) mes "Previous Point : "+@point$[@a-1]+"."; mes " "; mes " - Commands -"; mes "input 0 to cancel the whole thing"; mes "input 1 to finish and save"; mes "input 2 to delete the last point"; input @point$[@a]; if(@point$[@a] == "0") { end; } else if(@point$[@a] == "1") { set @finish,1; } else if(@point$[@a] == "2") { @a=@a-1; } else { @a=@a+1; } next; } while (@finish != 1); set ,@pointmerge$ = ""; for( @i = 0; @i < @a; @i=@i+1 ) { set .@pointmerge$,.@pointmerge$+""+@point$[@i]; if (@i < @a) set .@pointmerge$,.@pointmerge$+"|"; } set @date$,""+gettime(5)+"-"+gettime(6)+"-"+gettime(7)+""; query_sql "SELECT * FROM `changelog` LIMIT 1 OFFSET "+(@pick-1)+"",@pick; query_sql "UPDATE `changelog` SET changelog='"+@pointmerge$+"' WHERE id='"+@pick+"'"; query_sql "SELECT id,changelog,date,author FROM `changelog` WHERE id='"+@pick+"'",@id,@changelog$,@date$,@author$; @id2 = 1+(@id/10); @id$ = @id2+"."+(@id%10); if(.broadcast == 1) announce strcharinfo(0)+" has edited the Changelog "+@id$+".",bc_all; mes .npcname$; mes "You've successfully edited a Changelog"; end; chlog_rm: mes "Hey choose the Changelog you want to edit."; // --- Generating Menu --- query_sql "SELECT id FROM changelog ORDER BY id DESC LIMIT 1",@chamt; set .@menu$ = ""; for (@i = 1; @i <= @chamt; @i=@i+1 ) { query_sql "SELECT id,changelog,date,author FROM `changelog` WHERE id='"+@i+"'",@id,@changelog$,@date$,@author$; query_sql "SELECT COUNT(*) FROM `changelog` WHERE id='"+@i+"'",@check; if (@check == 0) continue; @id2 = 1+(@id/10); @id$ = @id2+"."+(@id%10); set .@menu$,""+.@menu$+"Changelog "+@id$+" [ "+@date$+" ]"; if (@i < @chamt) set @menu$,@menu$+":"; } // ----------------------- next; set .@pick = select(@menu$); query_sql "SELECT * FROM `changelog` LIMIT 1 OFFSET "+(@pick-1)+"",@pick; query_sql "SELECT id,changelog,date,author FROM `changelog` WHERE id='"+@pick+"'",@id,@changelog$,@date$,@author$; @id2 = 1+(@id/10); @id$ = @id2+"."+(@id%10); query_sql "DELETE from `changelog` WHERE id='"+@pick+"'"; mes .npcname$; mes "You've successfully deleted a Changelog"; end; chlog_clear: mes .npcname$; mes "^FF0000YOU ARE ABOUT TO REMOVE THE ENTIRE CHANGELOGS YOU'VE MADE"; mes "THIS CAN'T BE REVERTED OR RECOVERED^000000"; mes "Are you sure about this ?"; if(select("No:Yes") == 1) end; query_sql "DELETE from `changelog` WHERE id>0"; next; mes .npcname$; mes "You've successfully deleted the whole changelog."; end; // ----------------- OnInit: // ------------- Inline Configuration ----------------- set .npcname$,"[ ^3a68ffChangelog^000000 ]"; set .minGMLevel,99; // The minimum level of GM to make, edit, or remove a log. set .broadcast,1; // 0=Disabled || 1=Enabled, broadcast when a GM edit / add a Change Log. set .loglimit,5; // The Limit of Changelogs displayed waitingroom "News & Updates",0; end; // ---------------------------------------------------- } add this : waitingroom "News & Updates",0; into this line so it will look like this. set .loglimit,5; // The Limit of Changelogs displayed waitingroom "News & Updates",0;
  18. Try this one. - script KoE -1,{ OnInit: disablenpc "The King#KoE"; disablenpc "Exit#KoE"; bindatcmd "koe", strnpcinfo(0)+"::Oncommand", 99,99; end; Oncommand: if ( compare( .@atcmd_parameters$, "on" ) ) goto L_start; else if ( compare( .@atcmd_parameters$, "off" ) ) goto L_end; else { dispbottom "type - '@koe on' to start the event"; dispbottom "type - '@koe off' to end the event"; } end; OnHour12: L_start: gvgon "koe"; announce "The King of Emperium Hill has begun!", bc_all; set .start = 1; enablenpc "The King#KoE"; disablenpc "Exit#KoE"; $koegid = 0; donpcevent "::OnRevKoE"; maprespawnguildid "koe", $koegid, 7; monster "koe",49,49,"EMPERIUM",1288,1,"KoE::OnEmpDead"; end; OnHour13: L_end: gvgoff "koe"; announce "The King of Emperium Hill is over!", bc_all; .start = 0; enablenpc "Exit#KoE"; disablenpc "The King#KoE"; killmonsterall "koe"; // maprespawnguildid "koe", $koegid, 6; end; OnEmpDead: $koegid = getcharid(2); announce "The current King of Emperium Hill is the ["+ strcharinfo(2) +"] guild.", bc_all; donpcevent "::OnRevKoE"; maprespawnguildid "koe", $koegid, 6; sleep 500; if ( .start ) monster "koe",49,49,"EMPERIUM",1288,1,"KoE::OnEmpDead"; end; } // KoE Entrance phtownall,221,211,4 script The King#KoE 58,{ mes "[The King]"; if ( !getcharid(2) ) { mes "You must have a guild to participate in the ^FF0000King of Emperium Hill Tournament^000000."; close; } mes "Hello."; mes "Would you like to participate in the ^FF0000King of Emperium Hill Tournament^000000?"; if ( select ( "Yes", "No" ) == 2 ) close; switch( rand(1,4) ){ case 1: warp "koe", 50, 88; end; case 2: warp "koe", 88, 50; end; case 3: warp "koe", 50, 11; end; case 4: warp "koe", 11, 50; end; } } // KoE Exit koe,49,56,5 script Exit#KoE 51,{ mes "[Exit]"; mes "See ya."; if ( getcharid(2) == $koegid ) getitem 7711, 2; // configure prize here close2; warp "Save",0,0; end; } // Flags koe,49,38,4 script King of Emperium Hill#1::koe_flag 722,{ if ( !$koegid ) end; mes "[King of Emperium Hill]"; mes "The Current King of Emperium Hill is the ["+ getguildname($koegid) +"] guild."; close; OnRevKoE: flagemblem $koegid; end; } koe,61,49,6 duplicate(koe_flag) King of Emperium Hill#2 722 koe,38,49,2 duplicate(koe_flag) King of Emperium Hill#3 722 koe,49,61,0 duplicate(koe_flag) King of Emperium Hill#4 722 koe mapflag nobranch koe mapflag nomemo koe mapflag nopenalty koe mapflag noreturn koe mapflag nosave SavePoint koe mapflag noteleport koe mapflag gvg_noparty koe mapflag nowarp koe mapflag nowarpto koe mapflag guildlock this one is set at OnHour12: means it will activate on 12:00 server time.
  19. Try this one. not tested. // ALTER TABLE `guild` ADD `storage_restriction` INT( 11 ) NOT NULL DEFAULT '0' - script Gstorage -1,{ set .@char_id = getcharid(0); set .@guild_id = getcharid(2); if( !.@guild_id ){ mes "You dont have any guild."; }else{ query_sql( "SELECT `storage_restriction` FROM `guild` WHERE `guild_id` = '"+.@guild_id+"'",.@restriction ); query_sql( "SELECT `position` FROM `guild_member` WHERE `char_id` = '"+.@char_id+"'",.@position ); switch( select( "Access Guild Storage",( .@position )?"":"Edit Restriction" ) ){ Case 1: if( .@restriction && .@restriction & ( 2 << .@position ) ){ mes "Your position cant access this Storage.."; }else{ mes "Storage opened."; guildopenstorage(); } break; Case 2: query_sql( "SELECT `position`,`name` FROM `guild_position` WHERE `guild_id` = '"+.@guild_id+"'",.@guild_position,.@guild_position_name$ ); do{ .@menu$ = ""; .@i = 1; while( .@i < .guild_max_position ){ .@menu$ = .@menu$ + (( .@restriction & ( 2 << .@i) )?"^FF0000[Disabled]":"^EE55FF[Enabled]" )+" "+.@guild_position_name$[.@i] +"^000000" +":"; .@i++; } mes "Select a Position"; mes "^FF0000RED - Disable Access^000000"; .@i = select( .@menu$+":Done" ); if( .@i <= .guild_max_position ){ .@bitvalue = ( 2 << .@i ); if( .@restriction & .@bitvalue ){ .@restriction -= .@bitvalue; mes "Position : ^0055FF"+.@guild_position_name$[.@i]+"^000000 granted Storage Access."; }else{ mes "Position : ^0055FF"+.@guild_position_name$[.@i]+"^000000 disabled Storage Access."; .@restriction += .@bitvalue; } next; } }while( select( "Continue Edit","Finished Edit" ) == 1 ); query_sql( "UPDATE `guild` SET `storage_restriction` = '"+.@restriction+"' WHERE `guild_id` = '"+.@guild_id+"'" ); mes "Guild Storage Restriction updated."; default: break; } } close; OnInit: .guild_max_position = 20; end; } @TC Why not upgrade your emulator to the latest like rAthena?
  20. What emulator are you using ??
  21. The error says it all. its Curlys = " } { " missing. here. - script GM Kick -1,{ OnPCLoginEvent: if( !getgmlevel() || getgmlevel() >= 90 ) end; if( agitcheck() || agitcheck2() ) goto OnAgitStart; set .GMList$[ getarraysize( .GMList$ ) ],strcharinfo(0); end; OnPCLogoutEvent: for( set .@i,0; .@i < getarraysize( .GMList$ ); set .@i,.@i + 1 ) if( strcharinfo(0) == .GMList$[.@i] ) deletearray .GMList$[.@i],1; end; OnAgitStart: for( set .@i,0; .@i < getarraysize( .GMList$ ); set .@i,.@i + 1 ) atcommand "@kick "+.GMList$[.@i] } // <= This what causes the error. the missing " } "
  22. Try this. as far as I know getgroupid() was changed into getgmlevel() http://rathena.org/board/topic/58877-r15572-new-gm-commands-permissions-system/ - script GMNAmes -1,{ OnPCLoginEvent: if(getgmlevel() >= 50 ) end; set .Yourname$,strcharinfo(0); setarray .GmNames$[0],"GM","Admin","Staff","Police","P0lice","AwesomazingRO","AwesomazingR0","Juan"; for( set .x, 0; .x < getarraysize(.GmNames$); set .x, .x +1) if(compare(.Yourname$,.GmNames$[.x])) { mes "Are you trying to be Fake GM?"; mes "You Automatic Kick From Server"; sleep2 3000; atcommand "@kick "+strcharinfo(0); end; } percentheal 100,100; end; }
  23. if that's the case there must be something wrong or error showing up on your map server?
  24. Did you apply the item_db.sql? And other SQL's?
  25. Your question is related to your old post right here http://rathena.org/board/topic/99448-about-frozen-and-luk-resistane/
×
×
  • Create New...