Leaderboard
Popular Content
Showing content with the highest reputation on 04/30/20 in all areas
-
View File WoWRO FluxCP Theme A "just-for-fun" project that I was working on about 65 billion years ago. This theme has been updated to work with the current rAthena FluxCP theme system. Server status and online player count on the homepage works. All standard FluxCP pages should work just fine, but you'll need to re-jigg the item and mob index tables to squash them in. I hate adding an overflow to them for horizontal scroll, so you're encouraged to merge some table columns instead ? Images are supplied as-is. I don't have a PSD for any of them, they were all ripped from a site around 2009-ish. Submitter Akkarin Submitted 04/30/2020 Category Fully Coded Themes Video Content Author Blizzard, Akkarin1 point
-
1 point
-
Version 1.0.0
141 downloads
A "just-for-fun" project that I was working on about 65 billion years ago. This theme has been updated to work with the current rAthena FluxCP theme system. Server status and online player count on the homepage works. All standard FluxCP pages should work just fine, but you'll need to re-jigg the item and mob index tables to squash them in. I hate adding an overflow to them for horizontal scroll, so you're encouraged to merge some table columns instead ? Images are supplied as-is. I don't have a PSD for any of them, they were all ripped from a site around 2009-ish.Free1 point -
- script HHE -1,{ OnInit: set .DefaultBaseRates,getbattleflag("base_exp_rate"); set .DefaultJobRates,getbattleflag("job_exp_rate"); set .Access,80; // GM access lvl OnTimer3600000: // After 1 hour OnStop: stopnpctimer; set .Event,0; callsub(L_Start, .DefaultBaseRates, .DefaultJobRates); end; OnClock1000: OnClock1600: callsub(L_Start, 2, 2); // 2x end; OnWhisperGlobal: if (getgmlevel() < .Access) end; if (@whispervar0$ == "Start") { if (.Event == 1) { dispbottom "Event already started"; } else { dispbottom "Input New Base Rate"; input .@BaseExp; dispbottom "Input New Job Rate"; input .@JobExp; callsub(L_Start, .@BaseExp, .@JobExp); } end; } else if (@whispervar0$ == "Stop") { if (.Event == 1) { donpcevent strnpcinfo(3)+"::OnStop"; } else dispbottom "Event not started."; end; } end; L_Start: .@BaseExp = getarg(0, 1); .@JobExp = getarg(0, 1); if (.@BaseExp < 1) .@BaseExp = 1; if (.@JobExp < 1) .@JobExp = 1; setbattleflag "base_exp_rate",.@BaseExp*100; setbattleflag "job_exp_rate",.@JobExp*100; dispbottom "Event has been started."; initnpctimer; set .Event,1; announce "Happy Hour EXP: Floating rates event started. New rates: Base - "+.@BaseExp+"x, Job - "+.@JobExp+"x",0; return; } try1 point
-
Pretty sure that thing is really buggy ... some things dont necessarly balance the way they should like on ashura strike, but i mean it still does its job // 1 - Normal (the maps that aren't classified as these maps below) // 2 - PVP // 4 - GVG // 8 - Battlegrounds // 16 - 'skill_damage' mapflag looks like thats not how your supposed to be writing it at all and its like the old database with the whole 0x000000 thing for equipment requirements So to increase damage in PvP GvG and BG maps you would write 14 (8 + 4 + 2)1 point
-
If you're talking about "Skill Damage" skill_damage_db.txt is your if else or whatever condition it made for you to adjust the damage easily, you dont need to edit src which need recompile just @reloadskilldb Ex. Sonic Blow 100% Damage skill_damage_db.txt : set -50% in GVG *Result* : Sonic Blow 50% damage in GVG so it's working like if(map == GVG) Sonic Blow Damage Ratio = Sonic Blow Damage Ratio / 2 *Result* : Sonic Blow 50% damage in GVG same result but more simple1 point
-
OnPCLoadMapEvent: if (strcharinfo(3) != "guild_vs1" || strcharinfo(3) != "guild_vs2" || strcharinfo(3) != "other_maps") { atcommand "@load"; end; } end; But will work for all the time player loadmap. meaning teleport to a different map serverwide. Im sensing you need this for event? if that's the case this won't be usefull for you.. would need mor information.1 point
-
1 point
-
here - shop ex_card_shop -1,501:1000 prontera,160,181,5 script card_exchange 474,{ mes "[ Card Exchange ]"; mes "Give to me your old cards in exchange I'll give you OCA."; mes "You currently have "+ex_cd_pts+" point(s)."; mes "Each card equals "+.points+" point(s)."; mes .limit+" point(s) will earn you "+.amount+" "+getitemname(.item)+"(s)."; callshop "ex_card_shop",2; npcshopattach "ex_card_shop"; end; OnSellItem: for (.@i = 0; .@i < getarraysize(@sold_nameid); .@i++) { if( getiteminfo( @sold_nameid[.@i], 2 ) != 6 ) { dispbottom "I only accept cards."; end; } if( .mvp ) { .@str$ = substr( getitemname( @sold_nameid[.@i] ), 0, getstrlen( getitemname(@sold_nameid[.@i]) ) -6 ); query_sql ( "SELECT count(*) FROM `mob_db_re` WHERE `iName` LIKE '"+.@str$+"' AND `MEXP`;", .@count ); if( .@count ) { dispbottom "I'm sorry but I don't accept mvp cards..."; end; } } if( countitem( @sold_nameid[.@i] ) < @sold_quantity[.@i] ) { dispbottom "Wth...?"; end; } delitem @sold_nameid[.@i], @sold_quantity[.@i]; ex_cd_pts = ex_cd_pts + ( @sold_quantity[.@i] * .points ); if( ex_cd_pts >= .limit ) { ex_cd_pts = ex_cd_pts % .limit; .@numbers = ex_cd_pts / .limit; getitem .item, .@numbers * .amount; } } end; OnInit: .mvp = 1; // Search and ignore mvp cards? .points = 1; // Points per card. .limit = 50; // The number of points required for ".item". .item = 616; // Item you get for reaching ".limit". .amount = 1; // The amount of ".item" you get per ".limit" reached. } or Putty //===== rAthena Script ======================================= //= Card Trader //===== By: ================================================== //= Elias (og2) //===== Current Version: ===================================== //= 1.4 //===== Compatible With: ===================================== //= rAthena SVN r15340+ //===== Description: ========================================= //= Card and Points Trader //===== Additional Comments: ================================= //= v1.0 Translated from the Official [Elias] //= v1.1 Fixed variables and optimized script [Elias] //= v1.2 Fixed char being stuck with breaks [Elias] (bugreport:5374) //= v1.3 Optimized: reduced from 123kb to 7kb! [Euphy] //= v1.4 Variables don't need to load OnInit. [Euphy] //============================================================ prt_vilg01,99,100,0 script Putty 90,{ if (!.card[1]) { setarray .card1[0], 4001,4006,4009,4019,4075,4033,4012,4016,4026,4022, 4027,4028,4038,4025,4021,4050,4079,4081,4090,4094, 4101,4104,4110,4114,4119,4108,4095,4231,4280,4008, 4011,4013,4014,4015,4020,4032,4037,4039,4041,4045, 4046,4010,4023,4029,4052,4048,4056,4071,4093,4031, 4036,4034,4042,4055,4061,4087,4096,4116,4122,4170, 4215,4220,4228,4226,4212,4227,4267,4257,4278,4286, 4287,4292,4311,4315,4319,4322,4084,4078,4113,4149, 4153,4196,4240,4247,4256,4057,4066,4067,4112,4150, 4152,4186,4187,4181,4173,4167,4162,4176,4195,4193, 4200,4223,4194,4190,4189,4192,4224,4244,4248,4261, 4260,4259,4274,4275,4313,4299,4304,4294,4076,4127, 4154,4157,4156,4213,4214,4225,4235; setarray .card2[0], 4293,4297,4288,4283,4295,4307,4308,4309,4132,4326, 4341,4335,4337,4345,4344,4331,4333,4332,4089,4161, 4177,4178,4180,4184,4191,4206,4199,4273,4282,4268, 4289,4321,4316,4343,4339,4369,4377,4385,4383,4382, 4380,4381,4378,4379,4390,4389,4388,4391,4405,4400, 4401,4402,4404,4002,4003,4004,4005,4007,4017,4024, 4030,4035,4040,4043,4044,4049,4051,4053,4058,4060, 4062,4063,4064,4065,4068,4069,4070,4072,4073,4074, 4077,4080,4082,4083,4085,4086,4088,4091,4092,4097, 4098,4099,4100,4102,4103,4106,4107,4109,4111,4115, 4117,4118,4120,4124,4125,4126,4138,4139,4141,4151, 4158,4164,4165,4182,4185,4159,4160,4166,4172,4175, 4188,4201,4202,4204,4205,4208,4209; setarray .card3[0], 4120,4216,4217,4219,4221,4222,4230,4234,4233,4232, 4237,4238,4242,4243,4245,4246,4249,4252,4255,4258, 4262,4264,4276,4270,4271,4218,4239,4251,4253,4269, 4334,4105,4133,4136,4229,4272,4277,4279,4281,4284, 4285,4290,4296,4298,4301,4310,4314,4317,4325,4327, 4328,4329,4338,4340,4346,4347,4348,4349,4350,4351, 4353,4354,4355,4356,4358,4360,4362,4364,4366,4368, 4370,4371,4373,4375,4387,4406,4129,4155,4291,4392, 4393,4394,4409,4410,4411,4412,4413,4414,4415,4416, 4417,4418,4420,4421,4422,4423,4424,4427,4427,4428, 4429,4431,4432,4433,4434,4435,4436,4437,4438,4439, 4440,4442,4443,4444,4445,4447,4448,4449,4450,4452, 4453; setarray .card[1], getarraysize(.card1), getarraysize(.card2), getarraysize(.card3); } set .@points,oversea_event9; if (!.@points) { mes "[Putty]"; mes "Hi there."; mes "I don't know if I can be"; mes "of any assistance, but I"; mes "am trying to help older veterans"; mes "by exchaning the cards that"; mes "they are no longer using."; next; switch(select("Ask for more information!","I don't have any cards right now.")) { case 1: mes "[Putty]"; mes "I am giving 1 point for each card that you bring me."; mes "The points can be used to exchange for items that I have."; next; mes "[Putty]"; mes "For ^CC0000100 points^000000: ^0000CC1 Old Card Album^000000."; mes "For ^CC000050 points^000000: ^0000CC20 Yggdrasil Berry^000000."; mes "For ^CC000020 points^000000: ^0000CC10 Blue Potion^000000."; mes "For ^CC00001 point^000000: ^0000CC4 Honey^000000."; next; break; case 2: mes "[Putty]"; mes "Well, remember this offer!"; close; break; } } else { mes "[Putty]"; mes "Welcome back!"; mes "I see you already have some"; mes "trading points. Actually, you currently have ^00cc00" + .@points + "^000000."; next; mes "[Putty]"; mes "Would you like to exchange these"; mes "points now, or you would like to exchange more cards?"; next; } switch(select("I would like to exchange cards.","Can I exchange the points?")) { case 1: mes "[Putty]"; mes "Please tell me what card you want to exchange."; next; input .@i$; set .@input$, "_"+.@i$; set .@card,0; //freeloop(1); for(set .@j,1; .@j<4; set .@j,.@j+1) { for(set .@i,0; .@i<.card[.@j]; set .@i,.@i+1) if (compare(.@input$,"_"+getitemname(getd(".card"+.@j+"["+.@i+"]")))) { set .@card, getd(".card"+.@j+"["+.@i+"]"); break; } sleep2 10; // For good measure if (.@card) break; } //freeloop(0); mes "[Putty]"; if (!.@card) mes "Please, come back here if you want to exchange a monster card."; else { set .@count, countitem(.@card); if (!.@count) { mes "You don't have any ^0055FF"+getitemname(.@card)+"s^000000 with you!"; close; } mes "You've got ^0055FF"+.@count+" "+getitemname(.@card)+((.@count>1)?"s":"")+"^000000."; mes " "; mes "Would you like to exchange 1 point for each of them?"; next; switch(select("Yes, please!","No, thank you.")) { case 1: delitem .@card,.@count; set oversea_event9, (.@points+.@count); mes "[Putty]"; mes "Alright, you have received ^CC0000"+.@count+"^000000 points."; break; case 2: mes "[Putty]"; mes "Okay, let me know if I can help you with something else."; break; } } close; case 2: if (.@points) { mes "[Putty]"; mes "These are the items that I have."; next; switch(select("1 Old Card Album - 50 Points","20 Yggdrasil Berry - 50 Points","10 Blue Potion - 20 Points","4 Honey - 1 Point","^777777Nerver mind.^000000")) { case 1: if (.@points < 100) break; mes "[Putty]"; mes "Great, I wish you the best"; mes "of luck with this album. I have a"; mes "very good feeling about this one!"; set oversea_event9, .@points - 100; getitem 616,1; close; case 2: if (.@points < 50) break; mes "[Putty]"; mes "Oh, you must like adventures."; mes "Here you go, just what you need!"; set oversea_event9, .@points - 50; getitem 607,20; close; case 3: if (.@points < 20) break; mes "[Putty]"; mes "Blue Potions? Are you sure?"; mes "If that's what you want, here they are!"; set oversea_event9, .@points - 20; getitem 505,10; close; case 4: if (.@points < 1) break; mes "[Putty]"; mes "It took many bees"; mes "to make all of this."; mes "Make good use of it."; set oversea_event9, .@points - 1; getitem 518,4; close; case 5: mes "[Putty]"; mes "Alright, come back when you have more points."; close; } mes "[Putty]"; mes "Sorry, but you don't have enough points."; close; } else { mes "[Putty]"; mes "You have 0 points. You need at least 1 point to exchange."; } break; } close; }1 point
-
Solucionado Se trataba de un error con el bonus IG_Potion (id 37) que estaba mal escrito: bAddItemHealRate en lugar de bAddItemGroupHealRate que es el correcto.1 point