Jump to content

Seravy

Members
  • Posts

    176
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by Seravy

  1. I don't think this used to happen in older versions of the game and while most of it I don't mind there is one thing that is absolutely annoying, when the monsters do this while hiding or cloaking. Is there a way to disable that? I defeats the purpose of the mob hiding if it yells "Hiding!!!!!" while doing it... I don't mind disabling the feature entirely, it's not like I really need the monster to tell me the name of the skill it's using, if disabling it on hiding monsters specifically isn't possible. I found no options for this in the conf and nothing in src either so I assume it's clientside.
  2. Yeah I noticed, it broke when I updated my master, meh git makes things hard. You need to apply these two in this order : https://github.com/SeravySensei/rathena/commit/e02ba8bd88c626baca4619bbb2dbaecd30c93f9b https://github.com/SeravySensei/rathena/commit/b928ee02b19ef18460a82a37c170473877bf11f1 add .diff or .patch to the end to get the diff or patch.
  3. Because it's extra work that doesn't improve functionality so it's not important. Maybe after everything else is already complete. Question : How do I check for the remaining time of a status effect? if (sd->sc.data[SC_LAUDAAGNUS]->timer<=200) doesn't seem to work, timer seems to be a variable that stores a reference to where the actual timer data is stored and i have no idea how to use it. It would be useful if maxhp increasing effects could be recast before they expire. Meanwhile added Warlock, Rune Knight and Royal Guard skills. The latter two are still untested.
  4. Good idea, if no bugs are found in the next few days, I'll do that!
  5. Several such releases exist on the forum but all of them are old and don't work anymore. I updated one of them, this now works on the latest Rathena, apply both in this order : https://github.com/SeravySensei/rathena/commit/e02ba8bd88c626baca4619bbb2dbaecd30c93f9b https://github.com/SeravySensei/rathena/commit/b928ee02b19ef18460a82a37c170473877bf11f1 (add .diff or .patch to the url to get those)
  6. Both linked articles say " and any spells that were reflected back to you via Kaite will simply disappear ", but Maya card is not Kaite. In skill.cpp, //Spirit of Wizard blocks Kaite's reflection if( type == 2 && tsc && tsc->data[SC_SPIRIT] && tsc->data[SC_SPIRIT]->val2 == SL_WIZARD ) Remove the part "type==2 &&", that's what says only Kaite is reflected as far as I understand.
  7. It's not random - they'll find and attack the nearest monster, assuming one is within walkpath range and they're in "tanking" mode. Otherwise they'll do nothing. However the leader is supposed to be set to the character you're playing manually. I mean, why would I want to follow an AI player when they can follow me instead?
  8. Get/setunitdata works incorrectly and gets/sets from wrong variables because it doesn't implement renewal changes to stat mechanics properly. This is what I had to do to make it work for the matk stats : https://github.com/rathena/rathena/pull/3968 I haven't investigated the atk stat yet. However, like matk, the min and max values are calculated. Setting them makes no sense because they are not the base values so they'll be replaced as soon as the unit is recalculated. Monsters only have one base atk value, and it's atk1. atk2 is their base matk stat. It's really disappointing such basic functionality was remaning broken for this long.
  9. I tried with fire arrow, arrow and silver arrow and had no problem with either.
  10. " I am having a problem in arrow change so I changed it to this. " What's the problem? I see no major functional change in your code other than allowing the use of "bad" arrows at lowest priority. (that's a bad idea you don't want to use your fire arrows on an efreet. Even if you have nothing else you still don't want to. It'll heal the boss.) index = pc_search_inventory(sd, arrows); this should be arrows, same there a = arrows;
  11. As far as I remember, in C languages you can't use == for strings because it compares the pointers instead of the contents. You have to use something else, strcmp maybe?
  12. Seravy

    Waterball

    Doesn't work. Adding +X there delays when the first waterball appears by that many miliseconds, it doesn't chance the time interval between the hits.
  13. I see, don't worry I'm good at using hex editors! That seems to have worked for all but Clown which insists to use the same name as the 3rd job no matter what - I guess I have a client version where both had the name Minstrel so they share the text constant. For that, I had to hex $6CD931 to 53 BF D1 and the same for $6CD89F to redirect it to the "Clown" text constant or more precisely one character in front of it because I needed 1 extra character to have "Composer".
  14. I want to rename some classes so i edited jobnamegender.lub but nothing changed. (In fact the file had weird class names in them making it obvious it's not being used) So where/how do I change it then? (A Clown? Why? What does that have to do with music? I rather have a Composer thank you very much lol)
  15. MIN and MAX MATK are calculated values in renewal so changing them without changing the base stats they are calculated from doesn't really work. You have to change the stats they are being calculated from instead : INT, MATK (aka ATK2) and LEVEL. However, that's the theory. In practice, I do remember I had to actually fix/update the source to make it work, as MATK wasn't even available as a thing to read/write on mobs. See : https://github.com/rathena/rathena/pull/3968 Note this is for MATK specifically, I haven't really tested any of the other stats yet. There is a good chance they are also broken. This is how my script that scales monster strength currently looks like : setunitdata $@mobid[.@i], UMOB_LEVEL, getmonsterinfo( getarg(1), MOB_LV ) * (100+getarg(3)) / 150; setunitdata $@mobid[.@i], UMOB_MAXHP, getmonsterinfo( getarg(1), MOB_MAXHP ) * (100+3*getarg(3)) / 150; setunitdata $@mobid[.@i], UMOB_ATKMIN, getmonsterinfo( getarg(1), MOB_ATK1 ) * (100+3*getarg(3)) / 150; setunitdata $@mobid[.@i], UMOB_ATKMAX, getmonsterinfo( getarg(1), MOB_ATK2 ) * (100+3*getarg(3)) / 150; setunitdata $@mobid[.@i], UMOB_MATK, getmonsterinfo( getarg(1), MOB_MATK ) * (100+3*getarg(3)) / 150; setunitdata $@mobid[.@i], UMOB_STR, getmonsterinfo( getarg(1), MOB_STR ) * (100+getarg(3)) / 150; setunitdata $@mobid[.@i], UMOB_AGI, getmonsterinfo( getarg(1), MOB_AGI ) * (100+getarg(3)) / 150; setunitdata $@mobid[.@i], UMOB_VIT, getmonsterinfo( getarg(1), MOB_VIT ) * (100+getarg(3)) / 150; setunitdata $@mobid[.@i], UMOB_INT, getmonsterinfo( getarg(1), MOB_INT ) * (100+getarg(3)) / 150; setunitdata $@mobid[.@i], UMOB_DEX, getmonsterinfo( getarg(1), MOB_DEX ) * (100+getarg(3)) / 150; setunitdata $@mobid[.@i], UMOB_LUK, getmonsterinfo( getarg(1), MOB_LUK ) * (100+getarg(3)) / 150; setunitdata $@mobid[.@i], UMOB_DEF, getmonsterinfo( getarg(1), MOB_DEF ) * (100+getarg(3)) / 150; setunitdata $@mobid[.@i], UMOB_MDEF, getmonsterinfo( getarg(1), MOB_MDEF ) * (100+getarg(3)) / 150;
  16. In general, github can turn anything into a patchfile by adding ".patch" to the end of the URL so assuming the compare button produced the correct set of commits... try this : https://github.com/rathena/rathena/compare/master...SeravySensei:Autopilot.patch
  17. Are you sure it's not failing because you simply failed to roll a success? You did do your tests with a high enough success rate? I don't see anything else in the quoted code, once the monster type does match the taming item, it's all up to the random roll. The success rate is the preset default (15% in your quoted data), modified by taming rate config, your base level, LUK, the monster's base level and health. It's possible to have a success rate of zero if you're using a level 1 GM character to test because the target is level 99. (well, strictly speaking the lowest you can get is 0.01% but that's pretty close to zero) If your slot machine shows "Failure" that means you didn't roll a success. If it shows success but you still don't get your egg then something else is wrong.
  18. pet 0; is wrong in your item script. So it should be pet 1;
  19. I'm guessing that's the animation for failure through this : In that case, it implies is still true. Which means either "pet" is false or sd->catch_target_class == PET_CATCH_UNIVERSAL is false. I suggest placing a breakpoint on that line and checking which. If pet is false then there is something wrong in the pet db (wrong mob id, wrong file format - I heard yml files aren't exactly user friendly and care about the position of tabs and spaces and stuff- or something like that). Otherwise the taming item/method is inappropriate for the monster ( = isn't generic and only works on a specific monster with a different ID). That's everything I can think of.
  20. I believe that might be the problem. Bosses are status immune. So excluding status immune targets excludes bosses.
  21. .@d is the loop variable set by this : so anywhere above that it is zero. However if you bought only one item at a time, then @bought_nameid [0] does reference that item correctly. Otherwise it'll only show the first, as it's displayed outside the loop. furthermore, the loop finds you which item in your Price array was bought - and that's in .@i. So the correct price is .Price[.@i] and again, only inside the loop, below the Line which ensures the variable .@i has the correct number.
  22. Check if that's the correct IP address - do you have a fixed IP address or dynamic? Check if your firewall is letting the connection through - maybe it's blocking it.
  23. Seravy

    Waterball

    I want to reduce the time between each waterball created to make the spell finish faster. I tried looking for any uses of WZ_WATERBALL but haven't found any interval. I tried changing the -1 in skill_unit_db but it did nothing either.
  24. Yes, I plan to keep updating this and eventually add the remaining 3rd (or other) jobs. Sure, you can make a patch file but if you do make sure you keep it updated. I haven't had much time to add more to this in the past month but there will be updates sooner or later. I stopped waiting for the job rebalancing to happen and added whichever parts I truly wanted on a per line basis from the open PR, and implemented the AI for all the missing 1st/2nd/rebirth classes. I'll most likely take a longer break before I work on 3rd jobs and/or spend that time playing the game... Every skill where the AI should be adjusted for official versions of the skills is marked by a comment starting with **Note**, however that's already assuming the official implementation will be https://github.com/rathena/rathena/pull/4072 so pay extra attention to that.
×
×
  • Create New...