Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 06/24/23 in all areas

  1. I missed a variable. This should spawn monsters now: - script EXCLUSIVE_GUILD_MAPS FAKE_NPC,{ OnGuildpointmobDeath: if ( .rate > rand( 10 ) ) { .@point = rand( .guild_amount[0], .guild_amount[1] ); #GUILDPOINTS += .@point; dispbottom "Gained " + .@point + " Point. You got "+F_InsertComma( #GUILDPOINTS ) + " Points now."; } callsub MobSpawn, strcharinfo(3), .respawnGPmobs; end; OnGoldmobDeath: .@r = rand(100); if ( .@r < 3 ) getitem 969, 50; else if ( .@r < 5 ) getitem 969, 20; else if ( .@r < 25 ) getitem 969, 5; else if ( .@r < 50 ) getitem 969, 3; else getitem 969, 1; callsub MobSpawn, strcharinfo(3), .respawnGoldmobs; end; MobSpawn: .@map$ = getarg(0); for(.@i = 0; .@i < getarraysize(getarg(1)); .@i += 3) { .@mobId = getelementofarray(getarg(1), .@i); .@mobType = getelementofarray(getarg(1), .@i + 1); .@mobAmt = getelementofarray(getarg(1), .@i + 2); .@mobTypeName$ = .mobTypeNames$[.@mobType]; .@mobLabel$ =.labels$[.@mobType]; monster .@map$, 0,0, .@mobTypeName$, .@mobId, .@mobAmt, strnpcinfo(0) + "::" + .@mobLabel$; } return; OnInit: //Castle Maps setarray .castleMaps$[0], "prtg_cas01","aldeg_cas05"; // Exclusive Map setarray .exclusiveMaps$[0], "prt_fild07","prt_fild09"; // Guildpoints random amount setarray .guild_amount, 1, 3; // Rate to get Guildpoints .rate = 100; // Mob Spawn // ID, Type (0 = Gold, 1 = Guildpoints), Amount setarray .mobs[0], 1369, 0, 100, 1840, 0, 100, 1934, 1, 50, 1935, 1, 50; // Respawn Mobs Gold // ID, Type (0 = Gold, 1 = Guildpoints), Amount setarray .respawnGoldmobs[0], 1369, 0, 1, 1840, 0, 1; // Respawn Mobs Guildpoints // ID, Type (0 = Gold, 1 = Guildpoints), Amount setarray .respawnGPmobs[0], 1934, 1, 1, 1935, 1, 1; setarray .mobTypeNames$[0], "[DG]Gold", "[DG]Flower"; setarray .labels$[0], "OnGoldmobDeath", "OnGuildpointmobDeath"; for(.@i = 0; .@i < getarraysize(.exclusiveMaps$); .@i++) { setmapflag .exclusiveMaps$[.@i], MF_LOADEVENT; callsub MobSpawn, .exclusiveMaps$[.@i], .mobs; } } byako,152,144,0 script FarmGuild 1,{ copyarray .cpyCastleMaps$[0], getvariableofnpc(.castleMaps$[0], "EXCLUSIVE_GUILD_MAPS"), getarraysize(getvariableofnpc(.castleMaps$[0], "EXCLUSIVE_GUILD_MAPS")); copyarray .cpyExclusiveMaps$[0], getvariableofnpc(.exclusiveMaps$[0], "EXCLUSIVE_GUILD_MAPS"), getarraysize(getvariableofnpc(.exclusiveMaps$[0], "EXCLUSIVE_GUILD_MAPS")); mes "[Entrance Guard]"; if (agitcheck() || agitcheck2() || agitcheck3()) { mes "WoE is currently active you can't enter right now"; close; } if(getcharid(2) == 0) { mes "Your need to be in a Guild, for me to be able to assist you."; close; } .@index = 0; for(.@i = 0; .@i < getarraysize(.cpyCastleMaps$); .@i++) { if(getcastledata(.cpyCastleMaps$[.@i], CD_GUILD_ID) == getcharid(2)) { .@ownedCastleIndexes[.@index] = .@i; .@index++; } } .@ownedCastlesCount = getarraysize(.@ownedCastleIndexes); if (.@ownedCastlesCount == 0 && .@index == 0) { mes "You don't own a Castle. Come back when you do."; close; } if(.@ownedCastlesCount == 0) .@map$ = .cpyExclusiveMaps$[.@ownedCastleIndexes[0]]; if(.@ownedCastlesCount > 0) { for(.@i = 0; .@i < .@ownedCastlesCount; .@i++) .@ownedCastleNames$[.@i] = getcastlename(.cpyCastleMaps$[.@ownedCastleIndexes[.@i]]); mes "You own multiple Castles, select to which Castles exclusive map you want to teleport."; next; select(implode(.@ownedCastleNames$, ":")); .@map$ = .cpyExclusiveMaps$[.@ownedCastleIndexes[@menu - 1]]; } mes "You will be warped to Lost Midgard"; next; warp .@map$, 0, 0; dispbottom "[Guild Message]: Welcome to Lost Midgard"; end; }
    1 point
  2. - script EXCLUSIVE_GUILD_MAPS FAKE_NPC,{ OnGuildpointmobDeath: if ( .rate > rand( 10 ) ) { .@point = rand( .guild_amount[0], .guild_amount[1] ); #GUILDPOINTS += .@point; dispbottom "Gained " + .@point + " Point. You got "+F_InsertComma( #GUILDPOINTS ) + " Points now."; } callsub MobSpawn, strcharinfo(3), .respawnGPmobs; end; OnGoldmobDeath: .@r = rand(100); if ( .@r < 3 ) getitem 969, 50; else if ( .@r < 5 ) getitem 969, 20; else if ( .@r < 25 ) getitem 969, 5; else if ( .@r < 50 ) getitem 969, 3; else getitem 969, 1; callsub MobSpawn, strcharinfo(3), .respawnGoldmobs; end; MobSpawn: .@map$ = getarg(0); for(.@i = 0; .@i < getarraysize(getarg(1)); .@i += 3) { .@mobId = getelementofarray(getarg(1), .@i); .@mobType = getelementofarray(getarg(1), .@i + 1); .@mobAmt = getelementofarray(getarg(1), .@i + 2); .@mobTypeName$ = .mobTypeNames$[.@mobType]; .@mobLabel$ =.labels$[.@mobType]; monster .@map$, 0,0, .@mobTypeName$, .@mobId, .@mobAmt, strnpcinfo(0) + "::" + .@mobLabel$; } return; OnInit: //Castle Maps setarray .castleMaps$[0], "prtg_cas01", "prtg_cas02"; // Exclusive Map setarray .exclusiveMaps$[0], "prt_fild07", "prt_fild08"; // Guildpoints random amount setarray .guild_amount, 1, 3; // Rate to get Guildpoints .rate = 100; // Mob Spawn // ID, Type (0 = Gold, 1 = Guildpoints), Amount setarray .mobs[0], 1369, 0, 100, 1840, 0, 100, 1934, 1, 50, 1935, 1, 50; // Respawn Mobs Gold // ID, Type (0 = Gold, 1 = Guildpoints), Amount setarray .respawnGoldmobs[0], 1369, 0, 1, 1840, 0, 1; // Respawn Mobs Guildpoints // ID, Type (0 = Gold, 1 = Guildpoints), Amount setarray .respawnGPmobs[0], 1934, 1, 1, 1935, 1, 1; setarray .mobTypeNames$[0], "[DG]Gold", "[DG]Flower"; setarray .labels$[0], "OnGoldmobDeath", "OnGuildpointmobDeath"; for(.@i = 0; .@i < getarraysize(.maps$); .@i++) { setmapflag .exclusiveMaps$[.@i], MF_LOADEVENT; callsub MobSpawn, .exclusiveMaps$[.@i], .mobs; } } prontera,150,150,0 script Entrance Guard 112,{ copyarray .cpyCastleMaps$[0], getvariableofnpc(.castleMaps$[0], "EXCLUSIVE_GUILD_MAPS"), getarraysize(getvariableofnpc(.castleMaps$[0], "EXCLUSIVE_GUILD_MAPS")); copyarray .cpyExclusiveMaps$[0], getvariableofnpc(.exclusiveMaps$[0], "EXCLUSIVE_GUILD_MAPS"), getarraysize(getvariableofnpc(.exclusiveMaps$[0], "EXCLUSIVE_GUILD_MAPS")); mes "[Entrance Guard]"; if (agitcheck() || agitcheck2() || agitcheck3()) { mes "WoE is currently active you can't enter right now"; close; } if(getcharid(2) == 0) { mes "Your need to be in a Guild, for me to be able to assist you."; close; } .@index = 0; for(.@i = 0; .@i < getarraysize(.cpyCastleMaps$); .@i++) { if(getcastledata(.cpyCastleMaps$[.@i], CD_GUILD_ID) == getcharid(2)) { .@ownedCastleIndexes[.@index] = .@i; .@index++; } } .@ownedCastlesCount = getarraysize(.@ownedCastleIndexes); if (.@ownedCastlesCount == 0 && .@index == 0) { mes "You don't own a Castle. Come back when you do."; close; } if(.@ownedCastlesCount == 0) .@map$ = .cpyExclusiveMaps$[.@ownedCastleIndexes[0]]; if(.@ownedCastlesCount > 0) { for(.@i = 0; .@i < .@ownedCastlesCount; .@i++) .@ownedCastleNames$[.@i] = getcastlename(.cpyCastleMaps$[.@ownedCastleIndexes[.@i]]); mes "You own multiple Castles, select to which Castles exclusive map you want to teleport."; next; select(implode(.@ownedCastleNames$, ":")); .@map$ = .cpyExclusiveMaps$[.@ownedCastleIndexes[@menu - 1]]; } mes "You will be warped to Lost Midgard"; next; warp .@map$, 0, 0; dispbottom "[Guild Message]: Welcome to Lost Midgard"; end; }
    1 point
  3. Hello, try this: mall01, 92, 135, 5 script Guild Vip Registrar 612,{ if(getcharid(2) == 0) { mes .NPC$; mes "You need to be in a guild to use my services."; close; } query_sql("SELECT TIMESTAMPDIFF(SECOND, NOW(), expiration_time) FROM vip_guild WHERE `guild_id` = " + getcharid(2), .@secondsUntilExpiration); if (.@secondsUntilExpiration > 0) { mes .NPC$; mes "Dear " + strcharinfo(0) + ", your guild " + strcharinfo(2) + " has still vip status. So there is nothing i can really help you with."; close; } mes .NPC$; mes "Hello " + strcharinfo(0) + ", What can i do for you?"; next; if (select("- I want to make my guild vip:- Nothing") - 1) close; mes .NPC$; mes "Okay, to make your guild vip you need the following: "; mes "- " + .Amount + " x " + getitemname(.ID); next; mes .NPC$; mes "So what do you want now?"; next; if (select("Yes, i have those requirements:I'll think over it again") - 1) close; mes .NPC$; mes "Let me check your items to ensure that you meet the requirements."; next; if (countitem(.ID) < .Amount) { mes .NPC$; mes "Sorry " + strcharinfo(0) + ", it seems like you don't meet the requirements."; close; } mes .NPC$; mes "Alright then, i will register your guild as a vip guild."; query_sql "INSERT INTO `vip_guild` (`guild_id`, `expiration_time`) VALUES (" + getcharid(2) + ", DATE_ADD(NOW(), INTERVAL 1 MONTH))"; delitem .ID, .Amount; close; OnPCLoginEvent: .@rowCount = query_sql("SELECT TIMESTAMPDIFF(DAY, NOW(), expiration_time), TIMESTAMPDIFF(SECOND, NOW(), expiration_time) FROM vip_guild WHERE `guild_id` = " + getcharid(2), .@daysUntilExpiration, .@secondsUntilExpiration); if(.@rowCount == 0) end; if (.@secondsUntilExpiration <= 0) { dispbottom "Your guilds vip state has expired"; query_sql("DELETE FROM `vip_guild` WHERE `guild_id` = " + getcharid(2)); end; } dispbottom "Hello " +strcharinfo(0)+ ", your guilds vip state ends in " + callfunc("F_InsertPlural", .@daysUntilExpiration, "day") + "."; end; OnInit: .NPC$ = "[ " +strnpcinfo(1)+ " ]"; .Amount = 30; .ID = 51582; query_sql("CREATE TABLE IF NOT EXISTS `vip_guild` (`guild_id` INT NOT NULL, `expiration_time` DATETIME NOT NULL, PRIMARY KEY (guild_id)) ENGINE=INNODB"); }
    1 point
  4. Version 1.0.2

    363 downloads

    This is exactly the same concept as the original file by Annieruru/Dastgir which is found on this post : @marketclone - creates a clone of your self as if you are making a chatroom. @marketkill - removes the clone you spawned. Yes, there is no need for SRC modification. This is purely done script wise but this will only work for latest server files. Any server files later than October 2, 2022 shouldn't have any troubles running this script. Otherwise, you are required to apply this commit: https://github.com/rathena/rathena/commit/9c2576f47ac12f54738bc714b858fde3a9d6315b to work. Any issues regarding the script, leave me a message or tag me on the support page of this script. If there is any good suggestions for improvements I do wont give support if compatibility is the issue. Compatibility is your responsibility. Use at your own risk.
    Free
    1 point
  5. Version 1.0.0

    1578 downloads

    Settings: Just add your logo in bg.jpg [Located at Configuration > Images] Set your links at config.ini [Located at Confugration] Recompile using ConfigGenerator.exe [Located at Configuration] Edit the main.ini file_url=http://yourwebsite.com/patcher/data/ to your website link [Located at Web > Patcher] Upload the patcher folder in your website [Located at Web] Please do not remove/replace s1 Lykos credit at the bottom.
    Free
    1 point
×
×
  • Create New...