Leaderboard
Popular Content
Showing content with the highest reputation on 12/07/22 in Posts
-
View File Woe Ranking List ( GvG, Emp Break, Guild Rank ) with Points and Shop In response to this post : https://rathena.org/board/topic/122667-woe-ranking-script/ https://rathena.org/board/topic/121631-woe-rankings-script/#comment-373249 https://rathena.org/board/topic/96397-woe-ranking/ https://rathena.org/board/topic/109488-ranking-woe/ By downloading this file, you agree with my Terms of Service: • You are not allowed remove my signature from any of the included files. • You are not allowed claim my work as yours. If you like it, give me a ? Submitter BeWan Submitted 02/26/20 Category PvP, GvG, WoE, Battleground Video Content Author BeWan1 point
-
rAthena compatible Client and Hexed is attached Full Client: http://rofull.gnjoy.com/RAG_SETUP_211105.exe (from: http://nemo.herc.ws/downloads) rAthena server https://github.com/rathena/rathena (master branch) I used the translation present in this repository https://github.com/llchrisll/ROenglishRE (master branch) I left a hexed patched with Nemo to help those who don't know how to do full diff. http://nemo.herc.ws/clients/2021-11-03_Ragexe_1635926200 I also used the latest version of opensetup http://nn.ai4rei.net/dev/opensetup You don't need to do anything, just compile the rAthena server which is already compatible with version 20211103 (packetver) Ragnarok.7z1 point
-
//===== rAthena Script ======================================= //= Job Master //===== Description: ========================================= //= A fully functional job changer. //===== Additional Comments: ================================= //= 1.0 Initial script. [Euphy] //= 1.1 Fixed reset on Baby job change. //= 1.2 Added Expanded Super Novice support and initial Kagerou/Oboro support. //= 1.3 Kagerou/Oboro added. //= 1.4 Rebellion added. //= 1.5 Added option to disable RebirthClass. [mazvi] //= 1.6 Added option to get job related equipment on change. [Braniff] //= 1.7 Readability changes. Also added BabyExpanded and BabySummoner classes. [Jey] //= 1.8 Added option to disable Baby Novice Only but Baby Class can be Enabled [mazvi] //= 1.9 Migrate/Integrate to Global Functions Platinum Skills. [mazvi] //= 2.0 Added 4th class [Lemongrass] //============================================================ maintown,223,223,3 script Job Master 10300,{ function Get_Job_Equip; // Checks if the Player has the required level. // closes if not, returns if yes function Require_Level { if (BaseLevel < getarg(0) || JobLevel < getarg(1)) { .@blvl = getarg(0) - BaseLevel; .@jlvl = getarg(1) - JobLevel; mes "Level requirement:"; mes ((getarg(0)>1)? "^bb0000"+getarg(0)+"^000000 (^bb0000Base^000000) / ":"")+"^00bb00"+ getarg(1)+"^000000 (^00bb00Job^000000)"; mes "You need " + ((.@blvl > 0) ? "^bb0000"+.@blvl+"^000000 more base levels " + ((.@jlvl > 0) ? "and " : "") : "") + ((.@jlvl > 0) ? "^00bb00"+.@jlvl+"^000000 more job levels " : "") + "to continue."; close; } return; } // Checks if the given eac is a baby class function Is_Baby { return ((getarg(0, eaclass())&EAJL_BABY)>0); } // Checks if the player can change to fourth class. // Note: This does not include the level checks. function Can_Change_Fourth { // To change to fourth class you need to be: // * Transcendent Third Class if( !.FourthClass ) return false; // Fourth job change disabled if( (eaclass()&(EAJL_THIRD|EAJL_UPPER)) != (EAJL_THIRD|EAJL_UPPER) ) return false; // Not Transcendent Third Class if( eaclass()&EAJL_FOURTH ) return false; // Already Fourth Class if( roclass(eaclass()|EAJL_FOURTH) < 0 ) return false; // Job has no Fourth Class return true; } // Checks if the player can change to third class. // Note: This does not include the level checks. function Can_Change_Third { // To change to third class you either need to be: // * Second Class // * Transcendent Second Class // * Baby Second Class if( !.ThirdClass ) return false; // Third job change disabled if( !(eaclass()&EAJL_2) ) return false; // Not second Class if( eaclass()&EAJL_THIRD ) return false; // Already Third Class if( roclass(eaclass()|EAJL_THIRD) < 0 ) return false; // Job has no third Class if( (eaclass()&EAJ_UPPERMASK) == EAJ_SUPER_NOVICE ) return false; // Exp. Super Novice equals 3rd Cls, but has it's own case if( Is_Baby() && (!.BabyClass || !.BabyThird) ) return false; // No Baby (Third) change allowed return true; } function Can_Rebirth { // To rebirth, you need to be: // * Second Class if( !.RebirthClass ) return false; // Rebirth disabled if( !(eaclass()&EAJL_2) ) return false; // Not second Class if( eaclass()&(EAJL_UPPER|EAJL_THIRD) ) return false; // Already Rebirthed/ Third Class if( roclass(eaclass()|EAJL_UPPER) < 0 ) return false; // Job has no transcended class if( Is_Baby() && !.BabyClass ) return false; // No Baby changes allowed return true; } // Checks if the given eac is a first class function Is_First_Cls { return (getarg(0) <= EAJ_TAEKWON); } function Check_Riding { // Note: Why we should always check for Riding: // Mounts are considered as another class, which // would make this NPC bigger just to handle with // those special cases. if (checkfalcon() || checkcart() || checkriding() || ismounting()) { mes "Please remove your " + ((checkfalcon()) ? "falcon" : "") + ((checkcart()) ? "cart" : "") + ((checkriding()) ? "Peco" : "") + ((ismounting()) ? "mount" : "") + " before proceeding."; close; } return; } function Check_SkillPoints { if (.SkillPointCheck && SkillPoint) { mes "Please use all your skill points before proceeding."; close; } return; } // addJobOptions is essentially the same like // setarray .@array[getarraysize(.@array)],opt1,opt2,...; // It's just easier to read, since we're using it very often function Job_Options { .@argcount = getargcount(); .@arr_size = getarraysize(getarg(0)); for( .@i = 1; .@i < .@argcount; .@i++) { setarray getelementofarray(getarg(0), .@arr_size++),getarg(.@i); } } // Begin of the NPC mes .NPCName$; Check_Riding(); Check_SkillPoints(); // initialisation .@eac = eaclass(); .@fourth_possible = Can_Change_Fourth(); .@third_possible = Can_Change_Third(); .@rebirth_possible = Can_Rebirth(); .@first_eac = .@eac&EAJ_BASEMASK; .@second_eac = .@eac&EAJ_UPPERMASK; // Note: These are already set in pc.cpp // BaseClass = roclass(.@eac&EAJ_BASEMASK) which is the players First Class // BaseJob = roclass(.@eac&EAJ_UPPERMASK) which is the players Second Class //dispbottom "Debug: eac ("+.@eac+"), third ("+.@third_possible+"), rebirth("+.@rebirth_possible+"), BaseClass ("+BaseClass+"), BaseJob ("+BaseJob+")"; // From here on the jobmaster checks the current class // and fills the the array `.@job_opt` with possible // job options for the player. if( .@rebirth_possible ) { // Rebirth option (displayed on the top of the menu) Require_Level(.Req_Rebirth[0], .Req_Rebirth[1]); Job_Options(.@job_opt, Job_Novice_High); } if( .@third_possible ) { // Third Job change (displayed below rebirth) Require_Level(.Req_Third[0], .Req_Third[1]); Job_Options(.@job_opt, roclass(.@eac|EAJL_THIRD)); } if( .@fourth_possible ) { // Fourth Job change (displayed below rebirth) Require_Level(.Req_Fourth[0], .Req_Fourth[1]); Job_Options(.@job_opt, roclass(.@eac|EAJL_FOURTH)); } if (.SecondExpanded && (.@eac&EAJ_UPPERMASK) == EAJ_SUPER_NOVICE && // is Super Novice !(eaclass()&EAJL_THIRD) ) { // not already Expanded SN // (Baby) Super Novice to Expanded (Baby) Super Novice if( !Is_Baby(.@eac) || (.BabyClass && .BabyExpanded) ) { // .BabyClass & .BabyExpanded must be enabled if the is a baby Require_Level(.Req_Exp_SNOVI[0], .Req_Exp_SNOVI[1]); Job_Options(.@job_opt,roclass(.@eac|EAJL_THIRD)); // Expanded SN is "third" cls } } if (.SecondExpanded && ((.@eac&(~EAJL_BABY)) == EAJ_NINJA || // is (Baby) Ninja (.@eac&(~EAJL_BABY)) == EAJ_GUNSLINGER)) { // is (Baby) Gunslinger // (Baby) Ninja to (Baby) Kagerou / Oboro // (Baby) Gunslinger to (Baby) Rebellion if( !Is_Baby(.@eac) || (.BabyClass && .BabyExpanded) ) { // .BabyClass & .BabyExpanded must be enabled if the is a baby Require_Level(.Req_Exp_NJ_GS[0], .Req_Exp_NJ_GS[1]); // Kagerou, Oboro, Rebellion are considered as a 2-1 class Job_Options(.@job_opt, roclass(.@eac|EAJL_2_1)); } } // Player is Job_Novice, Job_Novice_High or Job_Baby if (.@first_eac == EAJ_NOVICE && .@second_eac != EAJ_SUPER_NOVICE) { // MAPID_NOVICE, MAPID_SUPER_NOVICE, MAPID_NOVICE_HIGH, MAPID_BABY Require_Level(.Req_First[0], .Req_First[1]); switch(Class) { case Job_Novice: // First job change Job_Options(.@job_opt,Job_Swordman, Job_Mage, Job_Archer, Job_Acolyte, Job_Merchant, Job_Thief, Job_Super_Novice, Job_Taekwon, Job_Gunslinger, Job_Ninja); if( .BabyNovice ) Job_Options(.@job_opt, Job_Baby); break; case Job_Novice_High: // Job change after rebirth if( .LastJob && lastJob ) Job_Options(.@job_opt, roclass((eaclass(lastJob)&EAJ_BASEMASK)|EAJL_UPPER)); else Job_Options(.@job_opt, Job_Swordman_High, Job_Mage_High, Job_Archer_High, Job_Acolyte_High, Job_Merchant_High, Job_Thief_High); break; case Job_Baby: if( !.BabyClass ) break; // First job change as a baby Job_Options(.@job_opt, Job_Baby_Swordman, Job_Baby_Mage, Job_Baby_Archer,Job_Baby_Acolyte, Job_Baby_Merchant, Job_Baby_Thief); if( .BabyExpanded ) Job_Options(.@job_opt, Job_Super_Baby, Job_Baby_Taekwon, Job_Baby_Gunslinger, Job_Baby_Ninja); if( .BabySummoner ) Job_Options(.@job_opt, Job_Baby_Summoner); break; default: mes "An error has occurred."; close; } } else if( Is_First_Cls(.@eac) || // First Class Is_First_Cls(.@eac&(~EAJL_UPPER)) || // Trans. First Cls (.BabyClass && Is_First_Cls(.@eac&(~EAJL_BABY))) ) { // Baby First Cls // Player is First Class (not Novice) // most jobs should have two options here (2-1 and 2-2) .@class1 = roclass(.@eac|EAJL_2_1); // 2-1 .@class2 = roclass(.@eac|EAJL_2_2); // 2-2 // dispbottom "Debug: Classes: class1 ("+.@class1+"), class2 ("+.@class2+")"; if(.LastJob && lastJob && (.@eac&EAJL_UPPER)) { // Player is rebirth Cls and linear class changes are enforced Require_Level(.Req_Second[0], .Req_Second[1]); Job_Options(.@job_opt, lastJob + Job_Novice_High); } else { // Class is not enforced, player can decide. if( .@class1 > 0 ) { // 2-1 Require_Level(.Req_Second[0], .Req_Second[1]); Job_Options(.@job_opt, .@class1); } if( .@class2 > 0 ) { // 2-2 Require_Level(.Req_Second[0], .Req_Second[1]); Job_Options(.@job_opt, .@class2); } } } // Displaying the Job Menu defined by .@job_opt. // .@job_opt should not be changed below this line. function Job_Menu; Job_Menu(.@job_opt); close; // Displays the job menu function Job_Menu { // getarg(0) is the .@job_opt array holding all available job changes. function Confirm_Change; while(true) { .@opt_cnt = getarraysize(getarg(0)); if( .@opt_cnt <= 0 ) { mes "No more jobs are available."; close; } .@selected = 0; // Just a single job class given, no select needed if (.@opt_cnt > 1) { // Multiple job classes given. Select one and save it to .@class // After that confirm .@class mes "Select a job."; .@menu$ = ""; for (.@i = 0; .@i < .@opt_cnt; .@i++) { if( getelementofarray(getarg(0), .@i) == Job_Novice_High) .@jobname$ = "^0055FFRebirth^000000"; else .@jobname$ = jobname(getelementofarray(getarg(0), .@i)); .@menu$ = .@menu$ + " ~ " + .@jobname$ + ":"; } .@menu$ = .@menu$+" ~ ^777777Cancel^000000"; .@selected = select(.@menu$) - 1; if( .@selected < 0 || .@selected >= .@opt_cnt ) close; next; mes .NPCName$; } .@class = getelementofarray(getarg(0), .@selected); if ((.@class == Job_Super_Novice || .@class == Job_Super_Baby) && BaseLevel < .SNovice) { // Special Level Requirement because Super Novice and // Super Baby can both be selected in one of the first class // changes. That's why the Level Requirement is after and not before // the selection. mes "A base level of " + .SNovice + " is required to turn into a " + jobname(.@class) + "."; return; } // Confirm the Class Confirm_Change(.@class, .@opt_cnt > 1); next; mes .NPCName$; } return; } // Executes the actual jobchange and closes. function Job_Change { .@previous_class = Class; .@to_cls = getarg(0); next; mes .NPCName$; mes "You are now " + callfunc("F_InsertArticle", jobname(.@to_cls)) + "!"; if (.@to_cls == Job_Novice_High && .LastJob) lastJob = Class; // Saves the lastJob for rebirth if (.@to_cls == Job_Soul_Linker) { clear; mes .NPCName$; mes "You can't change into Soul Linker."; close; } jobchange .@to_cls; if (.@to_cls == Job_Novice_High) resetlvl(1); else if (.@to_cls == Job_Baby) { resetstatus; resetskill; set SkillPoint,0; } specialeffect2 EF_ANGEL2; specialeffect2 EF_ELECTRIC; if (.@previous_class != Class) { if (.Platinum) callfunc "F_GetPlatinumSkills"; if (.GetJobEquip) Get_Job_Equip(); } close; // Always closes after the change } function Confirm_Change { // Player confirms he want to change into .@class .@class = getarg(0, -1); .@back = getarg(1, false); if( .@class < 0 || eaclass(.@class) == -1 ) { mes "Unknown Class Error."; close; } mes "Do you want to change into ^0055FF"+jobname(.@class)+"^000000 class?"; .@job_option$ = " ~ Change into ^0055FF"+jobname(.@class)+"^000000 class"; if( .@class == Job_Novice_High) .@job_option$ = " ~ ^0055FFRebirth^000000"; if (select(.@job_option$+": ~ ^777777" + ((.@back) ?"Go back" : "Cancel") + "^000000") == 1) { Job_Change(.@class); } if (!.@back) close; // "Cancel" pressed return; } // Function which gives a job related item to the player // the items are the rewards from the original job change quests function Get_Job_Equip { // Note: The item is dropping, when the player can't hold it. // But that's better than not giving the item at all. .@eac = eaclass(); if( .@eac&EAJL_FOURTH ) { // Fourth Class Items getitem 490087,1; // Hourglass Necklace } else if( .@eac&EAJL_THIRD ) { // Third Class Items getitem 2795,1; // Green Apple Ring for every 3rd Class switch(BaseJob) { // BaseJob of Third Cls // For Normal Third, Baby Third and Transcended Third Cls case Job_Knight: getitem 5746,1; break; // Rune Circlet [1] case Job_Wizard: getitem 5753,1; break; // Magic Stone Hat [1] case Job_Hunter: getitem 5748,1; break; // Sniper Goggle [1] case Job_Priest: getitem 5747,1; break; // Mitra [1] case Job_Blacksmith: getitem 5749,1; break; // Driver Band [1] case Job_Assassin: getitem 5755,1; break; // Silent Executor [1] case Job_Crusader: getitem 5757,1; break; // Dip Schmidt Helm [1] case Job_Sage: getitem 5756,1; break; // Wind Whisper [1] case Job_Bard: getitem 5751,1; break; // Maestro Song's Hat [1] case Job_Dancer: getitem 5758,1; break; // Dying Swan [1] case Job_Monk: getitem 5754,1; break; // Blazing Soul [1] case Job_Alchemist: getitem 5752,1; break; // Midas Whisper[1] case Job_Rogue: getitem 5750,1; // Shadow Handicraft [1] getitem 6121,1; // Makeover Brush getitem 6122,1; break; // Paint Brush } } else if (.@eac&EAJL_2) { // Second Class (And not Third Class) switch(BaseJob) { // Second Class case Job_Knight: getitem 1163,1; break; // Claymore [0] case Job_Priest: getitem 1522,1; break; // Stunner [0] case Job_Wizard: getitem 1617,1; break; // Survivor's Rod [0] case Job_Blacksmith: getitem 1360,1; break; // Two-Handed-Axe [1] case Job_Hunter: getitem 1718,1; break; // Hunter Bow [0] case Job_Assassin: getitem 1254,1; break; // Jamadhar [0] case Job_Crusader: getitem 1410,1; break; // Lance [0] case Job_Monk: getitem 1807,1; break; // Fist [0] case Job_Sage: getitem 1550,1; break; // Book [3] case Job_Rogue: getitem 1222,1; break; // Damascus [1] case Job_Alchemist: getitem 1126,1; break; // Saber [2] case Job_Bard: getitem 1907,1; break; // Guitar [0] case Job_Dancer: getitem 1960,1; break; // Whip [1] case Job_Super_Novice: getitem 1208,1; break; // Main Gauche [4] case Job_Star_Gladiator: getitem 1550,1; break; // Book [3] case Job_Soul_Linker: getitem 1617,1; break; // Survivor's Rod [0] } } else { // Neither Second or Third Cls // => First Cls or not covered by the switch switch(BaseClass) { // First Class case Job_Swordman: getitem 1108,1; break; // Blade [4] case Job_Mage: getitem 1602,1; break; // Rod [4] case Job_Archer: getitem 1705,1; break; // Composite Bow [4] case Job_Acolyte: getitem 1505,1; break; // Mace [4] case Job_Merchant: getitem 1302,1; break; // Axe [4] case Job_Thief: getitem 1208,1; break; // Main Gauche [4] case Job_Gunslinger: getitem 13101,1; break; // Six Shooter [2] case Job_Ninja: getitem 13010,1; break; // Asura [2] } } return; } OnInit: // Initialisation, do not edit these .NPCName$ = "[Job Master]"; // Settings .FourthClass = false; // Enable fourth classes? .ThirdClass = false; // Enable third classes? .RebirthClass = true; // Enable rebirth classes? .SecondExpanded = false; // Enable new expanded second classes: Ex. Super Novice, Kagerou/Oboro, Rebellion? .BabyNovice = true; // Enable Baby novice classes? Disable it if you like player must have parent to get job baby. .BabyClass = true; // Enable Baby classes? .BabyThird = false; // Enable Baby third classes? .BabyExpanded = true; // Enable Baby Expanded classes: Ex. Baby Ninja, Baby Taekwon, etc. .BabySummoner = false; // Enable Baby Summoner? .LastJob = true; // Enforce linear class changes? .SkillPointCheck = true; // Force player to use up all skill points? .Platinum = false; // Get platinum skills automatically? .GetJobEquip = false; // Get job equipment (mostly weapons) on job change? // Level Requirements setarray .Req_First[0],1,10; // Minimum base level, job level to turn into 1st class setarray .Req_Second[0],1,40; // Minimum base level, job level to turn into 2nd class setarray .Req_Rebirth[0],99,50; // Minimum base level, job level to rebirth setarray .Req_Third[0],99,50; // Minimum base level, job level to change to third class setarray .Req_Fourth[0],200,70; // Minimum base level, job level to change to fourth class setarray .Req_Exp_NJ_GS[0],99,70; // Minimum base level, job level to turn into Expanded Ninja and Gunslinger setarray .Req_Exp_SNOVI[0],99,99; // Minimum base level, job level to turn into Expanded Super Novice .SNovice = 45; // Minimum base level to turn into Super Novice // Setting adjustments by PACKETVER if( PACKETVER < 20161207 ) { if( .BabyExpanded ) debugmes "jobmaster: BabyExpanded is disabled due to outdated PACKETVER."; if( .BabySummoner ) debugmes "jobmaster: BabySummoner is disabled due to outdated PACKETVER."; .BabyExpanded = false; .BabySummoner = false; } end; } May not be the correct way of doing it, but here it is. I just added this in the function Job_Change. if (.@to_cls == Job_Soul_Linker) { clear; mes .NPCName$; mes "You can't change into Soul Linker."; close; }1 point
-
To no one's real surprise, it didn't take long after I learned how to make new skills for me to go mad with power. Something that's always bothered me is that some classes barely have more skills to take than they have skill points. The two worst offenders are Thief and Archer, who have 51 and 50 total points of skills respectively. If you max your first job, you get 49 job points, which leaves you with only 2 / 1 skill levels not to take. This is pretty dumb and effectively gives you no freedom in how you build these classes. So these were the first ones to address. For Thief, they now have two new skills, Gouge and Reprieve, both of which are passives. Gouge is a 10-level skill that gives you a chance to inflict Bleeding when regular attacking with a dagger-class weapon, or when using Back Stab. When it came to thief, I feel like the idea behind the class is to use a lot of auto-attacks, so I wanted a new offensive skill that fit with that playstyle. I don't think I'd usually take this on Sin, but I guess it could be useful to double dagger Sin. Reprieve is a 5-level skill that allows you to get a little bit of HP recovery while Hidden / Cloaked / Chase Walking. The recovery isn't much, and the requirement to take Hiding level 10 is steep, but it can add up over time, particularly with Cloaking. I think this skill is pretty good, but you'll have to give up one of the other skills to get it. Speaking of Bleeding, it's a bit annoying to attack with because by default, there's no indicator when a target has been successfully hit by it. Maybe my client is just out of date, but I added one anyway. Now, when you bleed a target, they do this. If you want this functionality in your server, it's quite easy to add. Just find this in skill.cpp case SC_BLEEDING: case SC_BURNING: tick_time = status_get_sc_interval(type); val4 = tick - tick_time; // Remaining time break; Remove the "case SC_Bleeding" line, then insert this below: case SC_BLEEDING: tick_time = status_get_sc_interval(type); val4 = tick - tick_time; // Remaining time clif_emotion(bl, ET_HUK); break; I also added something similar for Crystalize as well, as that also didn't have any kind of visual display. Moving on to Archer, it also has two new skills. Bullseye is a 10-level skill that increases your crit rate and damage. This is an awesome skill, on a class that would almost never use it. I guess if you're building for some kind of high-aspd auto-Blitz Beat build you could take it, but generally I just liked the idea behind it. Organization is a 5-level skill that increases the amount you can carry before you're considered to be overweight by 5% per level. On the other hand, this is a skill I really want on a low-STR character like Archer. These skills bring Thief and Archer up to having 66 and 65 skill levels available. Much better! Now, the lowest is actually Merchant at 61. So I also gave Merchant one new skill in Lucky Pennies, which adds a small chance to find a bit of Zeny after killing an enemy, similar to the Cramp card. It probably won't offset the money you're burning on Mammo, but at least it's something. Super Novice can also learn all 5 of these skills. But of course I wasn't done there. Hunter also has much the same problem as Archer where it just doesn't have enough skills to take, Technically it has 82, but the vast majority of these are irrelevant trap skills that no one ever uses. So I made a couple tweaks. For starters, Blitz Beat now has 10 levels. I've done this with a few skills, and it's generally the case that at level 10, the skill is a little better than it used to be at level 5, but of course you have to spend 5 more points on it. In Blitz Beat's case, at level 10, it now hits 6 times (it used to hit 5 times at level 5), and the chance of auto-blitz beat improves. You'll want to max it, too, because Falcon Assault now relies on Blitz Beat's level for its damage calculation (Falcon Assault is essentially a max-level Blitz Beat that does bonus damage and ignores your defense). I'm incredibly wary of buffing Falcon Assault because it was a gamebreaker in the past, but there are more cards that can defend against it now (the "MISC" defense type defends against Falcon attacks). Hunter also gets a totally new attacking skill in Tranquilizer. This is an active skill that fires an arrow and has a chance to inflict Sleep. It's not too powerful and requires a fair bit of SP, but I imagine this could be useful in PVP. It requires you to know the Sandman Trap, so that at least gives you a little incentive to take the trap skills. Gypsy and Minstrel also have a new passive skill that gives them a buff to their perfect dodge while dancing, and Throw Arrow / Melody Strike are also more powerful while Dancing. Generally, I want Dancing to feel a bit more useful, particularly when soloing, as these classes tend to just build for Arrow Vulcan and not much else. However, the granddaddy of all changes was to the Star Gladiator class, which is almost a completely different character now. The biggest issue with Star Gladiator is that my server has rebirth for all classes, and Star Gladiator gets SJ_Document as a rebirth skill. SJ_Document allows you to reset your target maps and mobs nearly for free (on my server it requires a 2-carat diamond to use), which is cool but causes a bunch of problems. See, the thing with Star Gladiator is that the skills for the Sun, Moon, and Stars are all almost identical. This kind of makes sense initially, as the idea is that the fact that you basically get 3 copies of those skills gives you redundancy, since those choices are permanent. However, once they become impermanent, there's now no real reason to bother having 3 copies. You can just focus on one of the three, and reset whenever you want to target something else. As such, I pretty much completely redesigned all of the skills so that the Sun, Moon, and Star skills are all different from each other. The Comfort Skills are the only ones that were originally appreciably different from each other, so they are untouched. For the Warmth Skills, Warmth of the Sun is now a self-target heal, and Warmth of the Stars is now self-target Assumptio (Warmth of the Moon remains as the barrier effect). For the anger skills, the Sun remains untouched in increasing your damage. Moon now increases your damage resistance, and Stars gives you extra critical chance. For the blessing skills, Sun remains untouched as extra exp. Moon gives you extra drop rate (albeit, not much extra as drop rate is very centralizing), and Stars gives you bad status resistance. Finally, Star Gladiator also has a bunch of new skills. Taekwon Mastery is a passive that increases the chance to activate Taekwon Kicks. You also need it to take SG_DEVIL. Vision of the Sun, Moon, and Stars is a transcendent passive that counteracts SG_DEVIL, and if levelled to max, you gain permanent intravision (which lets you see hidden targets). Memory of the Sun, Moon, and Stars lets you warp to the map you set as your special map from anywhere (if used on the map itself, it acts like teleport level 1). Wrath of the Sun, Moon, and Stars is a strong debuff to attack speed and defense that you can use on any of your target mobs, and it's one of the only debuffs in the game that does work on bosses. Finally, there are 3 powerful new Magic attacks, Power of the Sun, Moon, and Stars. These are strong, uninterruptable spells, but they can only be used on the appropriate Map, or against the appropriate Target (ie, you can use Power of the Moon against any enemy on the Moon map, or against the Target of the Moon, on any map). Besides being strong, these also inflict status effects, Burning for Sun, Crystallize for Moon, and Paralyze for Star. Of course, the caveat is that this requires you to take at least some Int if you want them to do any real damage. (Why is it always poor lunatics getting obliterated by powerful attacks?) At any rate, I think this class is vastly more interesting now. The last rework is to Blacksmith. Skill-wise, Blacksmith isn't very changed, other than that Hammer Fall can now go to level 10. The bigger issue with Blacksmith is forging, specifically, the fact that there's no reason to ever bother with it. The weapons the Blacksmith can forge have no slots (and cannot have slots, the game stores the forging information in the card slots), and the bonuses given from forging are small, so they're pretty much always outclassed by stuff you can find easily. The latter issue is somewhat easily solved, I simply increased the power of the materials the Blacksmith can add to weapons. Star Crumb now also gives a little bit of crit bonus, and if the Blacksmith is a ranker Blacksmith, their weapons also give a small Aspd bonus. This is enough to make the top-end weapons they can forge at least somewhat viable. But what about the others? Blacksmiths can forge a ton of different weapons, but even with the buffs, these are all totally worthless. Ragnarok makes weaker weapons viable by giving them higher numbers of slots, but since all Blacksmith weapons are unslotted, the strongest ones are obviously the best. So I came up with an inventive solution for this. Weapons forged by Blacksmiths now have unique, card-like bonuses, which differ by weapon. It achieves this by having the Blacksmith forge the previously unused double underscore version of weapons (such as knife__), which now have bonus scripts attached to them. For example, a knife forged by a blacksmith now gives 5 Agi and 5 Dex. (I know what you're thinking, but this isn't instantly the best weapon to hold while making potions or whatever. Lunatic cards give 2 luk, so with a 4 slot weapon you can get 8 luk. It's a decent option until something better is available, though). Meanwhile, a Trident gives +50% bonus damage to Fish enemies. This would be good to use with Wind element! They're all different, save for the top end weapons, which have no bonuses, since they're already the most powerful. I don't think any of the weapons you can forge have "best in class" power, but they're now things that could definitely be useful before the very best equipment is available. It's at least much more interesting to fool around with now. Wow, this was long. Much of this is relevant to my super secret project which I'm still working on, but that's still a long way from being finished. I don't think we're in Kansas anymore, Toto...1 point
-
Don't forget to rep. and rate This keeps us motivated to improve our work! Hello everyone, Any edge sorry for my bad english I use a translator. Bindatcmd Event's Bindatcmd @AFK Bindatcmd @Buy , @Sell Slot Machine Bindatcmd @restock Bindatcmd @killboss1 point
-
Arena PVP Features: 1.Player count in arena room. 2.With 3 different maps ( Prontera, Izlude, Alberta ) 3.Player announce when join room 4.With special effect when join room View Script v1.0 | Download v1.0 View Script v1.1 | Download v1.1 Changelogs: Version 1.0 ~ Script Create Version 1.1 ~ Adding Non Donation Room , Adding Non Buffer Room , Adding Gvg Room ------------------------------------------------------------------------------------------------------------------------------------------- Ingame Second Password Features: 1.Kick from server when insert wrong password 2.Recovery password system 3.Allows you to change your password when you forgot.With conditions must remember the password recovery View Script v1.0 | Download v1.0 View Script v1.1 | Download v1.1 View Script v1.2 | Download v1.2 Changelogs: Version 1.0 ~ Script Create Version 1.1 ~ Add ( Freeze & Berserk ) when you Login Version 1.2 ~ Add Recovery Password using email address ------------------------------------------------------------------------------------------------------------------------------------------- Warp NPC Features: 1.Check Coordinate 2.Warp to your friend 3.Ingame setting cost [ GM Menu ] 4.Check warp cost [ GM Menu ] 5.Waitingroom show warp cost View Script v1.0 | Download v1.0 View Script v1.1 | Download v1.1 Changelogs: Version 1.0 ~ Script Create Version 1.1 ~ Adding GM Name Filter ( Disable Warpto GM ) ------------------------------------------------------------------------------------------------------------------------------------------- Locked Kafra Features: 1.Locked Storage 2.Change Locked Password 3.Change Secret Password 4.Allows you to change your password when you forgot.With conditions must remember the secret password View Script v1.0 | Download v1.0 View Script v1.1 | Download v1.1 Changelogs: Version 1.0 ~ Script Create Version 1.1 ~ Fixed Cutin And Adding @Storage ------------------------------------------------------------------------------------------------------------------------------------------- Element Enchant Features: 1.With 7 different element ( Earth, Wind, Water, Fire, Ghost, Shadow, Holy ) 2.Only 1 Element is allow.More than 1 automatic reset buff 3.Easy Config View Script v1.0 | Download v1.0 View Script v1.1 | Download v1.1 Changelogs: Version 1.0 ~ Script Create Version 1.1 ~ Fixed Getstatus command ------------------------------------------------------------------------------------------------------------------------------------------- Coin Exchanger Features: 1.Coin to Zeny 2.Zeny to Coin View Script v1.0 | Download v1.0 View Script v1.1 | Download v1.1 View Script v1.2 | Download v1.2 Changelogs: Version 1.0 ~ Script Create Version 1.1 ~ Fixed Coin Count Version 1.2 ~ Fixed getitem ------------------------------------------------------------------------------------------------------------------------------------------- Alice Potion Makers Features: 1.20 different potion you can make 2. Count Success or failed make potion 3.Easy Config View Script v1.0 | Download v1.0 Changelogs: Version 1.0 ~ Script Create Special thank : ~ Ratemyserver.net Potion Creation Item : ~ http://ratemyserver.net/index.php?page=creation_db&op=4 ------------------------------------------------------------------------------------------------------------------------------------------- Fishing Features: 1.Fishing and win a random item 2. Easy Config View Script v1.0 | Download v1.0 View Script v1.1 | Download v1.1 Changelogs: Version 1.0 ~ Script Create Version 1.1 ~ Adding @FShop, @FishShop ( Buy Fishing Tool ) & @FSpot, @FishingSpot ( Warp to Fishing Spot ) ------------------------------------------------------------------------------------------------------------------------------------------- Resurrection Ticket Features: 1.Allows you to alive only using resurrection ticket [ Item ID 7199 ] 2.Easy Config View Script v1.0 | Download v1.0 Changelogs: Version 1.0 ~ Script Create ------------------------------------------------------------------------------------------------------------------------------------------- Renamer Features: 1.Allow you to change your name only using Coupon [ Item ID 7037] 2.With filter name 3.Gm Command @gmrenamer [ Enable Npc & Disable Npc ] View Script v1.0 | Download v1.0 Changelogs: Version 1.0 ~ Script Create ------------------------------------------------------------------------------------------------------------------------------------------- BroadCaster Features: 1.With 35 different color 2. Auto Disable Npc ( Woe Start ) & Auto Enable Npc ( Woe End ) 3. Word Filter 4. Broadcast delay count 5. Easy Config View Script v1.0 | Download v1.0 View Script v1.1 | Download v1.1 Changelogs: Version 1.0 ~ Script Create Version 1.1 ~ Removed Same Color , Auto Disable Npc ( Woe Start ) & Auto Enable Npc ( Woe End ), Word Filter, Broadcast Delay Count. Special Thanks: ~ w3schools.com Hex Color: ~ http://www.w3schools.com/html/html_colornames.asp ------------------------------------------------------------------------------------------------------------------------------------------- Anti Fake GM Features: 1.Kick out the player that uses the same name with GM 2.Easy Config View Script v1.0 | Download v1.0 Changelogs: Version 1.0 ~ Script Create ------------------------------------------------------------------------------------------------------------------------------------------- Term & Condition: ~ You are not allowed to reproduce or make profit of this script ~ You are not allowed to upload my script to any website ~ You are not allowed to remove credit ~ Post here if you found bug ~ Use this Script at your own Risk1 point
-
Don't forget to rep. and rate This keeps us motivated to improve our work! My Script Releases In-Game Poll ~> http://rathena.org/board/files/file/3156-in-game-poll/ Click The Pub Event ~> http://rathena.org/board/topic/93430-click-the-pub/Daily Monster Hunt ~> http://rathena.org/board/topic/93336-daily-monster-hunt-v12/Armor Awakening System ~> http://rathena.org/board/topic/92895-quests-games-armor-awakening-npc/ Potion Brewer NPC ~> http://rathena.org/board/topic/92899-quests-games-potion-brewer-npc/ Mining NPC ~> http://rathena.org/board/topic/92900-quests-games-mining-npc/ Daily Gem Collection Quest ~> http://rathena.org/board/topic/92894-quests-games-daily-gem-collection-quest/ Poring Race ~> http://rathena.org/board/topic/92896-quests-games-custom-poring-race/ Yet Another Town Invasion ~> http://rathena.org/board/topic/93385-yet-another-town-invasion-v21/ Yet Another Poring Catcher Event ~> http://rathena.org/board/topic/92897-quests-games-poring-catcher-event/ Yet Another Dice Event ~> http://rathena.org/board/topic/92898-quests-games-dice-event/ Yet Another Daily Rewards Giver ~> http://rathena.org/board/files/file/3130-daily-rewards-giver/ GM Reward Giver with logs ~> http://rathena.org/board/files/file/3118-gm-reward-giver/ @punish ~> http://rathena.org/board/topic/93211-punish/ @minimart ~> http://rathena.org/board/topic/93011-minimart/#entry246777 @empladder ~> http://rathena.org/board/topic/93063-empladder/#entry247019 @mvpladder ~> http://rathena.org/board/topic/93066-mvpladder/ (REQUEST) @hatredreset ~>http://rathena.org/board/topic/93792-r-hatredreset-command-for-players/?p=250701 (REQUEST) @item3 / @item4 ~> http://rathena.org/board/topic/93166-item3-and-item4-for-test-and-no-corruption-purpose/?p=247546 (REQUEST) Account Bound Item Bonus ~> http://rathena.org/board/pastebin/4oand85uxoxt/ (REQUEST) VIP Buffer / Broadcaster ~> http://rathena.org/board/topic/93174-r-npc-full-buffs-for-vip-players/?p=247542 (REQUEST) WoE Supply Giver ~> http://rathena.org/board/topic/93077-npc-script/?p=247395 (REQUEST) Server Maintenance Announcer + Shutdown ~> http://rathena.org/board/topic/93114-qrserver-annoucnement-before-maintenance/?p=247260 Terms & Conditions You are not allowed to reproduce or make profit of this script You are not allowed to take credit for my scripts. Though you can modify/edit it to your liking. I can give you support, but please, use my support topics. It is your own responsibility to create a backup before implementing anything new.1 point
-
Hello everyone, Any edge sorry for my bad english I use a translator. My name is Ariane, old admin of a French private server EternityRO. We subsequently closed due to many ddos attacks and to finalize a sql injection by the Registration Flux Cp system. After that I am now allergic to ragnarok. Finally, a story of my work is not used for anything, I'll share some scripts. eRO Manager ( Kafra with Storage - Guild Storage - Platinums Skills - Rental - Bank ) http://pastebin.com/raw.php?i=iTNhHriB Bloody Branch Quest (100 Dead Branch = 1 Bloody Branch) http://pastebin.com/raw.php?i=vLZ5Knkq 3 Daily Events - Mushroom (you already know) - Est-ce-Moi - Pouring In my events you win here one "Midgard Coin", You can trade in "Midgard Coin Echanger " Mushroom : http://pastebin.com/raw.php?i=xsrShz5B Est-Ce-Moi This is random, the first falling on the right wins. http://pastebin.com/raw.php?i=ZdaZzGUr Pouring Find the Poring with the name "Pouring" http://pastebin.com/raw.php?i=P0gnYMfc Midgard Coin Echanger This is to exchange Midgard Coin earned during Daily Events I used Emistry Shop. Pvp Warper which displays the number of players on the maps and removes all buffs skills ect. http://pastebin.com/raw.php?i=A0DNBz2h My Euphy's Quest Shop with lot of Quests Hats. http://pastebin.com/raw.php?i=rAXtpJ6U1 point
-
Script Name: strDivide Type: Function Link: http://rathena.org/b...ue-in-division/ Script Name: Package Item Trader Type: Item Trader Link: http://rathena.org/b...ge-item-trader/ Script Name: Server Users Online Highest Peak Type: Invicible NPC Link: http://rathena.org/b...ighest-peak-10/ Script Name: Server Users Online Highest Peak Type: Item Trader Link: http://rathena.org/b...eforpoints-npc/ Script Name: Speed Pots Minigame Type: Minigame Link: http://rathena.org/board/topic/60688-speed-pots-minigame/page__pid__87806#entry87806/1 point