Jump to content

Rytech

Members
  • Posts

    319
  • Joined

  • Last visited

  • Days Won

    31

Everything posted by Rytech

  1. Im guessing your using the "Read data folder first" diff. That one is bugged and prevents the client from read and saving changes in the RO folder. It acturally causes it to do that stuff in the data folder when it shouldnt. It also causes clientinfo.xml to not be readable in the data folder which it has to be placed in a grf instead. As for Helena's issue, can you list the diff's your using? Are you using the "Skip Packet Header Obfuscation" diff? Its not marked as recommanded, but it it is needed.
  2. Did you go into the src/common/mmo.h file and change the PACKET_VER setting to 20111122 and recompile the login, char, and map servers? If yes then be sure to do a "make clean" before you do a build or compile.
  3. Try using the latest revision since it has the PacketV28 merged in and im not getting any issues. The Rental Mounts patch is broken and waiting for a update which ill do soon. As for your email validation, check your spam or junk box. If still having issues, just PM me here your user name or a link to your account profile and ill validate your account for you.
  4. Im happy to see someone is interested in continuing this project. If I knew more about hex editing and how to find certain things in a client's hex code I would help. Sadly im dumb in that area. Ive been into RO for 7 years and in the dev scene for at least 5 and out of all the client diffing tools ive seen this one is by far the best ever. Why? Its very user friendly, the diff's have descriptions that tell you what they do, you can set a value for certain diffs, and the best part is the diff generator that allows users to (used to) take the latest client, generate diffs, and diff their client. No need to wait for a client dev to release a diff days after. Its a very nice piece of work and would be sad to see it fade away.
  5. I like the look of this topic. Can you also add the dates of when a feature was added as well? Like when was the favorite item tab added, when was the monster HP bar added, when did support for this or that lub get added, when was support for a lub or txt file dropped, etc. This info could help more with figureing out other issues.
  6. Not really. Its more like (maybe) the same reasons other mmorpg's out there raise the level cap every once in a while to make room for adding higher level monsters, equips that requires a higher level, easier expansion for adding more new content.
  7. Information about Themida and how it works can be found on the maker's website.... http://www.oreans.com/themida.php
  8. uhm rytech i guess you overread something^^ this was 2011 xD *face palm* Why do they still have outdated info on that page? For a apple store?
  9. I see in the description.... Starting August 5, 2011 until August 26, 2011, download the game for free and then leave us a review! Depending on how many reviews we get, the greater the reward for all of those that play Ragnarok Violet’s older brother, Ragnarok Online! Share the game with your family and friends and help us help you! www.playragnarok.com
  10. Try changing the HPFactor, HPMultiplicator, and SPFactor column's settings in the job_db1 file for the 3rd jobs. Their currently using the same settings as their 2nd job parts. Also I do remember compareing MaxHP/MaxSP for different level 99 2nd jobs to level 99 3rd jobs and ive found small difference in the MaxHP/MaxSP for them. So changing those columns settings for 3rd's could fix the problem.
  11. I coded the Expanded Super Novice, Kagerou, and Oboro jobs in the exact same way I coded them into 3CeAM. The system treats them as 2nd jobs, but because their max stat limit is 120 just like 3rd jobs, they share the same stat limit config setting as 3rd jobs. If you want them to have a different limit separate from 3rds then its best you edit your source code to a needed custom code for your requirement. I see no reason to make any changes to what we have now. Do remember their max level is also 150 just like 3rd jobs.
  12. I don't like how the Super Novice is being handled in the code. Yes it was done so to use the Novice as a base, but do you know how looooooooooong ago this was done? Super Novice may have the same permissions as a Novice, but should be treated as a 1st class. Heck even changing to the job places all the skills in the 1st class tab. I should probely work on a update that will make the Super Novice a 1st job and the Expanded Super Novice a 2nd job. I had to make Kagerou and Oboro a 2nd job even tho their stat limits are different. Hmmmm.....that means ill have to add to the max_per setting check. ill also have to update every single existing Super Novice check out there. So much work ahead of me if I do this.
  13. Strange. When I tested the cast times with a Sorcerer on official, Memorize halfed the variable cast after stat reductions every time. Why would it half cast times before stat reductions? It always been reduction from stats before anything else. Also that formula is the full formula for reduction from stats. As for reductions from items, equips, and status's im just assuming its the same order as in pre-renewal. Logic tells me it wouldn't make scene if they changed that order.
  14. I totally forgot about this. I gave up not long after I posted that patch since the compiler was being a dick no matter how I coded it. Anyway.... @malufett The heck is this? I fully tested the cast time formula in a official server and got a much simpler result. Not this complex thing. Here's what I got.... Variable Cast Time - Variable Cast Time * (DEX * 2 + INT) / 530 And what do you mean "and why is that the sum_castReduction is not raw in the code it shows that the percentage is already apply in the base cast" ?
  15. Wow we have a monthly digest? This is interesting.
  16. Seriously? A inverted screen? Talk about a lazy fix. They couldn't just update the client to properly support newer video cards and keep the wavy effect?
  17. I finally got the time to work on this today and I hit a dead end. If someone can figure out the issue it would help greatly. Plus I think it would be wise to let others look over the code and try it out first before I commit it later in the future. Here's the diff on the current work I did. Note that I didnt do any cleanup yet. Recoded Cast System 1.patch
  18. Langtype changes will also affect the name of other jobs as well.
  19. The change happened sometime in the middle of 2011 when they gave Tetra Vortex's 4 sub ID's a animation. Each of the 4 has the same animation, but the beam's color depends on the ID. For example the fire ID uses a red beam, water uses blue beam, wind uses yellowish pink (supposed to be full yellow?), and earth uses green. The main ID used by the player to cast the skill isnt supposed to be used for damage dealing anymore. Only reason your seeing it do that is because the skill is currently programed all funky and needs to be recoded to use the 4 sub ID's again.
  20. The client is programed to load sprites like the Knight sprite since their being used as temp sprites since no actual working sprite exists. Gangsi uses Acolyte, Death Knight uses Knight, and Dark Collector uses Sage. Its the same thing like how 3rd jobs used to use 2nd job sprites as temp sprites for testing purposes. Its possible to change what sprite they use by hex editing the client, but im not sure how to do that.
  21. This recode is a response to some issues that rose on 3CeAM when I added Ventus's 1 second fixed time reduction, as well as other issues I discovered when testing the system after that, like how it was very messy. So the new system fixed all the problems and uses a lot less coding, while giving a bunch of configs options for users to set. It even integrates the status's checks that increase/decrease variable and fixed times. After lots of work and testing the system is finished. It handles everything like official pre-re and renewal servers (depending on the settings), uses a lot less coding, and minimizes the number of instructions to keep cpu and memory usage eco friendly. (Maybe not eco friendly, but its very well coded I think) I think this system would be great to add to rAthena. Here's the code below as of 3CeAM r667. Let me know what you think. If it gets approved ill have to make a few minor adjustments before adding it so itl work properly. Remember that 3CeAM is a pre-re emulator. This is the source code for skill.c /*========================================== * Does cast-time reductions based on dex, int (for renewal), status's, item bonuses, and config setting *------------------------------------------*/ int skill_castfix (struct block_list *bl, int skill_id, int skill_lv) { int time = skill_get_cast(skill_id, skill_lv);//Used for regular and renewal variable cast time. int fixed_time = skill_get_fixed_cast(skill_id, skill_lv);//Used for renewal fix time. int final_time = 0;//Used for finalizing time calculations for pre-re and combining time and fixed_time for renewal. int rate = 0;//Used to support the duel dex rates check through castrate_dex_scale and castrate_dex_scale_3rd. int scale = 0;//Used to scale the regular and variable cast times. struct map_session_data *sd; struct status_change *sc; nullpo_retr(0, bl); sd = BL_CAST(BL_PC, bl); sc = status_get_sc(bl); // Calculates regular and variable cast time. if( !(skill_get_castnodex(skill_id, skill_lv)&1) ) { //If renewal casting is enabled, all renewal skills will follow the renewal cast formula. if (battle_config.renewal_cast_3rd_skills == 1 && skill_id >= RK_ENCHANTBLADE && skill_id <= ECLAGE_RECALL) { time -= time * (status_get_dex(bl) * 2 + status_get_int(bl)) / 530; if ( time < 0 ) time = 0;// No return of 0 since were adding the fixed_time later. } else { if (fixed_time < 0)//Prevents negeative values from affecting the variable below. fixed_time = 0; //Adds variable and fixed cast times together to make a full variable time for renewal skills //if renewal_cast_enable is turned off. Non-renewal skills dont have fixed times, causing a //fixed cast value of 0 to be added and not affect the actural cast time. time = time + fixed_time; if ( sd && ((sd->class_&MAPID_UPPERMASK_THIRD) >= MAPID_SUPER_NOVICE_E || (sd->class_&MAPID_UPPERMASK) == MAPID_KAGEROUOBORO )) rate = battle_config.castrate_dex_scale_3rd; else rate = battle_config.castrate_dex_scale; scale = rate - status_get_dex(bl); if( scale > 0 ) // Not instant cast time = time * scale / rate; else return 0;// Instant cast } } // Calculate cast time reduced by item/card bonuses. // Last condition checks if you have a cast or variable time after calculations to avoid additional processing. if( !(skill_get_castnodex(skill_id, skill_lv)&4) && sd && time > 0) { int i; if( sd->castrate != 100 ) time = time * sd->castrate / 100; for( i = 0; i < ARRAYLENGTH(sd->skillcast) && sd->skillcast[i].id; i++ ) { if( sd->skillcast[i].id == skill_id ) { time+= time * sd->skillcast[i].val / 100; break; } } } //These status's only affect regular and variable cast times. if (!(skill_get_castnodex(skill_id, skill_lv)&2) && sc && sc->count) { if (sc->data[sC_SUFFRAGIUM]) { time -= time * sc->data[sC_SUFFRAGIUM]->val2 / 100; status_change_end(bl, SC_SUFFRAGIUM, -1);} if (sc->data[sC_POEMBRAGI]) time -= time * sc->data[sC_POEMBRAGI]->val2 / 100; if (sc->data[sC_MEMORIZE]) { time -= time * 50 / 100; if ((sc->data[sC_MEMORIZE]->val2) <= 0) status_change_end(bl, SC_MEMORIZE, -1);} if (sc->data[sC_SLOWCAST]) time += time * sc->data[sC_SLOWCAST]->val2 / 100; } //These status's only affect fixed cast times. if (sc && sc->count) { if( sc->data[sC__LAZINESS] ) fixed_time += fixed_time * sc->data[sC__LAZINESS]->val2 / 100; if( sc->data[sC_DANCEWITHWUG] ) fixed_time -= fixed_time * sc->data[sC_DANCEWITHWUG]->val3 / 100; if( sc->data[sC_MANDRAGORA] ) fixed_time += 500 * sc->data[sC_MANDRAGORA]->val1; if( sc->data[sC_SECRAMENT] ) fixed_time -= fixed_time * sc->data[sC_SECRAMENT]->val2 / 100; if( sc->data[sC_GUST_OPTION] || sc->data[sC_BLAST_OPTION] || sc->data[sC_WILD_STORM_OPTION] ) fixed_time -= 1000; } if( sd && pc_checkskill(sd, WL_RADIUS) && skill_id >= WL_WHITEIMPRISON && skill_id <= WL_FREEZE_SP ) fixed_time -= fixed_time * (5 * pc_checkskill(sd, WL_RADIUS) + status_get_int(bl) / 15 + status_get_lv(bl) / 15) / 100; //Check prevents fixed times from going below to a negeative value. if (fixed_time < 0) fixed_time = 0; //Only add variable and fixed times when renewal casting for renewal skills are on. Without this check, //it will add the 2 together during the above phase and then readd the fixed time. if (battle_config.renewal_cast_3rd_skills == 1 && skill_id >= RK_ENCHANTBLADE && skill_id <= ECLAGE_RECALL) final_time = time + fixed_time; else final_time = time; // Config cast time multiplier. if (battle_config.cast_rate != 100) final_time = final_time * battle_config.cast_rate / 100; // Return final cast time. return (final_time > 0) ? final_time : 0; } This is whats in the skill.conf battle file. // At what dex does the cast time become zero (instacast)? castrate_dex_scale: 150 // How much DEX is needed to instant cast 1st and 2nd job skills // when the player is a 3rd job? This also includes Expanded Super Novice, Kagerou, and Oboro. castrate_dex_scale_3rd: 150 // Enable renewal casting/cycling system for 3rd jobs skills and other skills released in renewal? // This will make all 3rd job skills and other skills added since renewal use the renewal casting system. // This means skill cast times will use a Variable/Fixed setup, variable cast times will be affected by INT/DEX. // Disabling the system will make all these skills use the prenewal cast system where only DEX affects cast times // and fixed times dont exist. Renewal skills thats 100% fixed will only be reduceable and fixed cast reduction methods. // (Default: Yes) renewal_cast_3rd_skills: yes
  22. A new skill tag and ID was added today, but sadly it has nothing to do with any new jobs. Here's the info I got from the lub files and translated through google.... =ID's Skill ID 2543 ALL_RAY_OF_PROTECTION Status ID 676 EFST_RAY_OF_PROTECTION =Skill Name 수호의 빛 Guardian of the Light =Skill Info Max Lv: 1 SP Req: 0 Cast Range: 1 (Might be self cast) =Status Info 특정 상태이상 해제 Off more than a certain state 특정 상태이상 면역 Particular state or immune Also here's some pics of new items that were added. Is that a new hammer and anvil I see?
  23. What revision are you using?
  24. Their's a problem with the "Read data folder first" diff for the 2011-11-22 client. It doesent read the clientinfo.xml file from a data folder, and its causing the client to read SaveData folder from a data folder and not from the root of your RO folder. Its annoying, but I got around it. Not so good for public server use sadly due to the bug.
  25. He did. Over 20 skill trees was removed from the skill tree file by accident (Told him he didn't need to touch it), which I just fixed in r15895. I dont know if anything else was accidently reverted, but I did notice a lot of unnecessary looking changes in skill.c. Like lots of data for 1st and 2nd job skills moved around for unknown reasons. Yeah the sprite for Kagerou and Oboro won't show in 2011-11-16aRagexeRE.exe ,But if you use 2011-12-28aRagexeRE.exe and up you'll see the sprite . BTW Finally rAthena have updated Sorcerer and Genetic and also other new classes . Thanks and Keep it up rocking :) . Im using a 2011-11-22 RagexeRE client and I can see Kagerou and Oboro just fine.
×
×
  • Create New...