Jump to content

Zeiyan

Members
  • Posts

    275
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by Zeiyan

  1. I forgot what the difference is. I don't want to give out wrong information but I believe lub files are the encrypted version? Me personally I use lua. If you're going to use lua just stick to all luas. If you can read the lub files then simply changing the file extension to lua should be fine.

    On 2/3/2020 at 12:37 AM, behelit said:

    Yeah, I figured it would be in the system folder with all the other .lub files... But I can only find the iteminfo.lua file. Are the two interchangeable? O.O

    EDIT: Okay, so I renamed iteminfo.lua to .lub, and it got rid of that error... But now I have a new error:
    image.png.518acef9ba8cc62deb8b6335052b2e94.png
     

    It's telling you exactly what it is looking for with the file path on where it should be. What I usually do when I get errors like that is google the file name along with the keyword rathena or hercws. chances are somebody already had that issue. Anyway, with just a quick google search I found this for you.

    https://github.com/ThemonChan/RagnarokMainFolder/blob/master/System/Font/RixSquirrel_10.eot

  2. The tutorials are pretty on point imo.

     

    Quote
    A. Organization
    1. Extract the full client in C:\ro_client\RO\ and launch update with rsu-kro-renewal-lite.exe or rsu-kro-rag-lite.exe if you set a pre-re server.
    2. Extract the Ragexe.exe in C:\ro_client\fresh\
    3. Extract data and System folders from the translation Package in C:\ro_client\fresh\
    4. Extract the opensetup.exe in C:\ro_client\fresh\
    5. Extract Mssfast.m3d and Mp3dec.asi from BGM.zip in C:\ro_client\fresh\
    6. Extract N.E.M.O. content in C:\ro_client\NEMO\
    7. Once Step 1 is DONE:
      • Copy All *.dll and *.INI files from C:\ro_client\RO\ to C:\ro_client\fresh\
      • Copy BGM and savedata folders from C:\ro_client\RO\ to C:\ro_client\fresh\
      • Copy rdata.grf and data.grf files from C:\ro_client\RO\ to C:\ro_client\fresh\

    B. Configure the Client

    1. Launch N.E.M.O. and load 2015-05-13aRagexe.exe 
    2. Hit "Select Recommended"
    3. Confirm DATA.INI
    4. Rename iteminfo.lub to iteminfo_n.lub
    5. Now search "Read Data Folder First" and check it
    6. Hit "Apply Selected" and you will have a new 2015-05-13aRagexe_patched.exe file.
    7. You should "Save Profile" now, because you will probably want to edit again your client later :)

    C. Add the translation

    1. Rename C:\ro_client\fresh\System\itemInfo.lub to iteminfo_n.lub
    2. You might need to rename C:\ro_client\fresh\data\texture\À¯ÀúÀÎÅÍÆäÀ̽º\ folder to 유저인터페이스 later, but for now, just skip this step (not sure if you encounter this problem).
    3. Open C:\ro_client\fresh\data\clientinfo.xml with a text editor (I recommend Notepad++)
    4. Update the address with your server IP
      • <address>[ip_address]</address>
    5. Done with the translation. Now we will say to the server, which client players are using.

    This is a guide that I use. but to break it down easily,

     

    1. Zackdeaver's translation project will be your data folder on top of the KRO data.grf and rdata.grf

    2. Clientinfo.xml or sclientinfo.xml will be the file to configure which server your client will be connecting to. that file will be inside the data folder.

    3. Use Nemo diff patcher to configure your actual .exe file to however you wanted it to be. Diffs mostly depend on your client version/date.

    4. Big tip, while googling around for steps on how to set up your server and client. Try to understand how it works rather than following steps blindly, this will give you a better understanding on how the emulator works and how you can customize, troubleshoot and handle your emulator better.

  3. @pajodex I'm trying to make my own clone skill. but I keep crashing the map-server with a segmentation error.

    Can you help explain to me the values for this function?

    int mob_clone_spawn(struct map_session_data *sd, int16 m, int16 x, int16 y, const char *event, int master_id, enum e_mode mode, int flag, unsigned int duration);

    I'd like to understand the code so I can manipulate it according to my will. ?

     

  4. On 1/22/2020 at 7:26 AM, Naruto said:

    its all client side, if you decompiled it and looked youd probably see something relevant

    for example when star gladiator and soul reaper were released we didnt have the stuff right? But as soon as we start adding the IDS belonging to those skills, the effects are linked to the ID

    I used them as "Ammo" often, because of the way you can share certain effects...

    Forexample.. hammer fall? Its a PLACE skill, with an ANIMATION, AND IT SHAKES THE SCREEN... this made a good grenade for me and i would just change the element 

    Also things like throw shuriken and venom knife ARE NOT linked to any effect, but actually their ITEM BMP ( you see the hot bar? Try changing that sprite )

    yeah the documents effect_list is very out dated.... I dont have it anymore but you can go through the effects using @effect from whereever you are and add a description to it, not working effects should be because they have special coding within the client 

    I appreciate it bro. I've talked to stolao on discord and he did mention that some are hard coded in as well. I'm just gonna stay away from directional skill effects for now. ?

     

    For Future reference:

    I was able to do a work around for special effects for my custom skill. This is more of replicating already existing skills. (i.e RK_SONICWAVE). I've used

    in skill.cpp:

    case MY_SKILL:

    skill_attack(BF_WEAPON,src,src,bl,RK_SONICWAVE,skill_lv,tick,0x1000);  --> 0x1000 prevents the skill being "shouted" by the character overhead. This basically uses MY_SKILL to call RK_SONICWAVE.

    in battle.cpp

    since I personally do not want to use the battle calculations for RK_SONICWAVE, I implemented an if statement of

    -- if(sd->class_ == MAPID_ENTERJOBHERE ) 

    skillratio += your values;

     

    With this I've basically cloned RK's sonic wave along with the special effects (proper direction), without the overhead skill shouting as well as implementing my own damage calculations. Hope this helps anyone in the future facing the same issue.

  5. 2 hours ago, Naruto said:

    oh haha i made a mistake i meant this 

    skill_attack(BF_WEAPON,src,src,bl,skill_id,skill_lv,tick,flag);

    
    skill_attack(BF_WEAPON,src,src,bl,RK_SONICWAVE,skill_lv,tick,flag);
    

    replace skill id with the skill name 

    this will work 

    I actually did that one. But when casting the skill. it does the proper effect except for the shouting of the skill (text over the head) Sonic Wave. lol. What's the function to remove the skill shouting?

     

    EDIT: I'll test again. I forgot if it actually calls RK_SONICWAVE or MY_SKILL.

     

    Upon initial testing. It seems that it's using RK_SONICWAVE completely. (battle.cpp damage calculation / effects) The only thing it's retaining on MY_SKILL is the db configurations, (skill_db, skill_cast, etc.)

     

    Big question for anyone: How do default skills call their special effects? When I look at the source code, there's barely any clif_specialeffect functions  used, or any code that I resembles calling any special effect.

    from the client side, the folder (data\luafiles514\lua files\skilleffectinfo) does not contain even a quarter of the skills in the game. Can anyone help me figure this out? I don't want anyone to babysit me, I just need to figure out how the effects are being called then I'm pretty sure I can figure it out on my own. Unless these are hardcoded into the client.

  6. @Naruto

    Yo dude I appreciate the help. I haven't went the skilleffectinfo.lub route yet. But i will try what you suggested. I appreciate the tips. I'll post here as soon as I test it.

     

    4 hours ago, Naruto said:

    case MY_SKILL: skill_attack(RK_SONICWAVE,src,src,bl,skill_id,skill_lv,tick,flag); break;

    @Naruto I tried. But it also does not make a lot of sense to me. because the function of "skill_attack" is this:

    int64 skill_attack( int attack_type, struct block_list* src, struct block_list *dsrc,struct block_list *bl,uint16 skill_id,uint16 skill_lv,t_tick tick,int flag );

     

    first argument requires it to be the "attack_type" where it's usually:

    skill_attack(BF_WEAPON,src,src,bl,skill_id,skill_lv,tick,flag);

     

    I tried it anyways and got an error when casting the skill. I do appreciate the help and wondering if you have any other tips? I think I get what you're trying to do and I would like to do that as well it's just figuring out how to do it. lol. ? 

    Using RK_SONICWAVE as the "ammo" as you said but calling my own skill right?

  7. On 1/21/2020 at 5:58 AM, Naruto said:

    well for the status ones.... idk i didnt experiement totally with them but couldnt you just do a on enter map or whatever and check for those statuses and recast them and get duration or something

     for alot of those skills you should use it like this

    bf_weapon ( src,bl,RK_SONICWAVE

    use the skill id and it should be fine, damage is seperated too 

    I'm a little confused on what you said. lol. The skills are totally working fine. No issues there. It's the special effects that i'm trying to make work properly. I'll post an attachment here in a little bit to show a better picture. ?

     

    This videos is related to my question #2.

    As you can see in the video. It does not matter what direction I'm using the skill with. It shows the effect as if i'm using @effect which i guess the default is north. Using the regular skill of RK_SONICWAVE, the "wave effect" would be towards the target. the code i'm using to call the effect is this:

                clif_specialeffect(src, 832, AREA);

    I've also tried using bl but it would just show the "wave effect" coming from the target instead of the caster.

    This is the "special effect" that I am trying to achieve. I do not see anywhere how the skill RK_SONICWAVE is calling the special effect. I'm assuming it's client side or maybe even hard coded?

  8. I'm not super familiar with the skill. But upon looking it up, It's not an SC_STATUS. according to RMS it's a summoning skill. So it would spawn another "object" along with the character. I checked the doc folder and found this:

    Quote
    *unitexists <GID>;
       
      Checks if the given Game ID exists. Returns false if the object doesn't exist, or true if
      it does.
       
      ---------------------------------------
       
      *getunittype <GID>;
       
      Returns the type of object from the given Game ID. Returns -1 if the given GID does not
      exist.
       
      Return values:
      BL_PC - Character object
      BL_MOB - Monster object
      BL_PET - Pet object
      BL_HOM - Homunculus object
      BL_MER - Mercenary object
      BL_NPC - NPC object
      BL_ELEM - Elemental object

     

  9. 1 minute ago, alexander0203 said:

    how to use the link that u sent this earlier sir? just copy paste inyo data folder to replace lua files like that ?

     

    The first link I gave you was a whole new data folder. The last link I gave you was a complete step by step tutorial on how to properly set your client side files 

  10. No worries. We're all trying to learn here.

    Read this for understanding on the data folder structure:

    https://github.com/rathena/rathena/wiki/Data-Folder

    Then this link will provide step by step basis on how to setup your server. I'm assuming you are already good to go on the server side. Follow the steps for the client side first. Use the data folder on the link that I gave you earlier. Then once you've verified that you are able to connect to your server with no issues, then you can start on adding your custom files by following the guide posted by @Poring King.

    https://herc.ws/board/topic/13146-guide-create-your-server-client-201608/

  11. Your folder names are all wrong. I'm used to dealing with the gibberish ascii characters not the korean characters. I don't think the Korean folders should have the english names in there too. Also, the idnum2....txt files are not used anymore. All you need to edit are the lua/lub files. I think the problem lies in your file and folder names honestly.

     

    I suggest using this data folder.

    https://rathena.org/board/topic/102689-ragnarok-english-translation-project/

  12. 11 hours ago, madlorence said:

    Thanks for this, this is for the account id right. what I mean is to create an ADMIN account. like the one with the admin sprite costume, + the yellow chat text. 

    Once you get in the login tables of phpmyadmin hit "insert" and enter "99" on group Id. along with username, password, etc. Do not fill out the account id (should generate automatically) copy that account id. then on your data folder or grf. You should find a file called clientinfo.xml or sclientinfo.xml (depending on which you are using) then you should see something like <yellow> <200001>,....</yellow>. Inser <youraccountid> between the <yellow></yellow>. Yellow could also be <aid></aid>

    I forgot exactly how it was but should be something like that.

    • Love 1
  13. 4 minutes ago, alexander0203 said:

    i follow that guide sir but still not working

    do i need really to use GRF Editor to do that? or its ok to do manually even not using grf just edit script

    The GRF file contains all client side files that will show up in the game. There is no way around it. Unless you are just using a plain data folder instead of the GRF (not recommended in production servers). then just copy and paste whatever custom item files you have in their respective folders. Make sure the file names matches as well as your lua/lub files.

  14. for #1 change :

    Quote

    set pvp_points, pvp_points - .Price[.@i]*@bought_quantity[.@d];

    to

    Quote

    set #pvp_points, #pvp_points - .Price[.@i]*@bought_quantity[.@d];

     

    for #2: you don't have an array "@bought_nameid" change @bought_nameid to .customs. I believe that should be good enough. I just skimmed the script so i might have missed something else.

  15. I'm configuring my own custom skills mostly based on some already existing skills. My only issue is how do I set which special effects I can use. Please keep in mind the following things that I have already done.

    1. Special effects for self buffs, I've used the clif_specialeffect function. The only downside is when the duration of the skill has expired, the effect remains (this applies to effects that lasts i.e. assumptio, energy coat etc.) and the effect goes away if you refresh or change load into a new map. (normal buffs like LK_CONCENTRATION the effects stay whether you refresh/change maps) For normal 1 time effects no issues since they appear when the skill is cast then goes away like it should be. Question for #1 is how do I make the effect last and stay at the same time as the duration?

    2. For offensive skills. I have one skill that uses the effect of RK_SONICWAVE. Again i'm using the same function of clif_specialeffect. The only problem is the direction of the "wave" is always north. Question #2: Is there a way to control the direction of the effects?

    3. I would prefer doing this client side but for the life of me I can not find the relevant files for the client side effects. the skilleffectinfo folder is not much help since it does not contain all the effects in the const.txt.

     

    Any way to do the effects client side?

    Any thoughts?

  16. I removed / commented SC_FUSION on effects that does not dispel on death. However upon recompiling and testing, the flying effect does go away but my custom effect which is adjusting the ASPD of the character does not go away when dying. Is there any other blocks of code that controls statuses? my ultimate goal for skill behavior is as follows:

    SL_STAR = grants the ability to use the skill of SG_FUSION and can not be used if SG_FUSION is active  (no issues)

    SG_FUSION = (can be toggled on and off (toggle is working HOWEVER it does not remove the buffs after toggling the skill off, only the flying effect seems to be removed)

    SC_FUSION = upon having this status debuff SC_SPIRIT(SL_STAR)

    Any tips? Thanks

     

    Update:

    Attack speed is updated after going back to the save point. but if revived it keeps the adjusted attack speed.

     

  17. 3 hours ago, Tdi123 said:

    Thank you very much, manage to resolve.

    Just put 2 maps in the place of All, that the first map will get normally, with an announcement and ranking, I don't know if it's a bug, but the second map placed in funfa, only the first, and if you put 3 maps, the script stops working

    If 2 maps are in the array, only the 1st map is included in the pvp script? (announcements, ranking etc.) then the 2nd map is not? and adding a 3rd map the script just stop working? Is this what you meant? 

×
×
  • Create New...