Jump to content

Nardoth

Members
  • Content Count

    26
  • Joined

  • Last visited

  • Days Won

    1

Reputation Activity

  1. Upvote
    Nardoth got a reaction from bWolfie in Costume System   
    Watch out for the bug in which if you try to restore the costume having another item of the same kind in the inventory, it will fail to restore the costume. What this does is delete the item in the inventory and replace it for a new one, and it may cause to lose cards and refine on that item.
    A simple solution is to use the condition countitem(item_id)>1 to stop the script if the player has more than one of these items.
  2. Upvote
    Nardoth reacted to zackdreaver in Guide setting up 2013+ Client for Hercules   
    Hello community,
    I want to share BASIC guide for setting up Client date 2013+
    (custom items, jobs, weapons, etc, go away)

    This is a compact list that you can follow to setup your client, let's start:

    [1]. Download latest kRO Installer from :
    [*] https://www.nickyzai.com/?p=kro [*]http://herc.ws/board/topic/10666-release-2012-04-10-ragexere-full-client/ [*]Torrent : https://kickass.to/ragnarok-online-06-06-2014-kro-client-folder-t9211110.html

    I will update when I found the other links.

    [2]. Choose which client date you want use, list clients date (Ragexe) that available in Hercules:
    [*] 2014 : 2014-01-15, 2014-02-05, 2014-03-05, 2014-04-02, 2014-04-16, 2014-10-16, 2014-10-22  [*]2013 : 2013-03-20, 2013-05-14, 2013-05-22, 2013-05-29, 2013-06-05, 2013-06-12, 2013-06-18, 2013-06-26, 2013-07-03, 2013-08-07, 2013-08-14, 2013-12-18, 2013-12-23, 2013-12-30

    The recomended and stable clients are bolded

    [3]. Download UNPACKED Ragexe from :
    [*]2013 : http://k3dt.eu/Ragexe/unpacked/ [*]2014 : https://github.com/ThemonChan/2014-Ragexe-Client [*]Fixed 2014 April client, Link by @Lilystar : https://mega.co.nz/#!alM3kRyC!9z7xDPmFU3J9UFg4hXjNcv9XnLZxG5AL87iNksjpSiM

    [4]. Use NEMO patcher to diff your client
    [*] http://herc.ws/board/topic/2905-nemo-client-patcher/ , Use the git link, not the zip file. [*]Extract your client then open NEMO.exe [*]Browse and select your client. [*]Click "Load Client" button [*]Click "Select Recomended" button (Its checked all basic diffs) [*]Checked "Load Custom lua file instead of iteminfo.lub" Patch, and fill it with "System/iteminfo.lua" [*]Then click "APPLY SELECTED" button. (Default result will like this : yyyy-mm-ddbRagexe_patched.exe) [*]Move your patched.exe to your Ragnarok folder.

    [5]. Now you got the patched exe, next is to edit your Hercules so it accept your client date
    [*]go to srccommon and open "mmo.h" [*]scroll down to #define PACKETVER [*]then changed "#define PACKETVER yyyymmdd" to your client date (eg: #define PACKETVER 20140416) [*]Add "//" before "#define ENABLE_PACKETVER_RE" , because we use Ragexe [*]Save then compile your hercules. (choose "release", not "debug")

    Compiling guide: http://herc.ws/wiki/Compiling
    Setting up server guide: http://herc.ws/board/topic/968-guide-how-to-setup-hercules/
     
    [6]. Now everything is ready to play, but you don't want to play with korean/unknown letter right?
    [*]Ok, now go to http://herc.ws/board/topic/398-client-translation-project/ [*]Download it, after that, copy the "data" folder to other folder (case sensitive). [*]Add your clientinfo.xml inside it (in folder data), then make a GRF from this. (Use GRF editor http://herc.ws/board/files/file/138-grf-editor/) [*]Save and name it "english.grf". [*]Move it to your Ragnarok folder. [*]Open your DATA.ini, if you don't have it, open your patched.exe, that should create one. [*]Add this line "1=english.grf" below "[Data]", without quote. so it will be like this : [*][Data]1=english.grf2=data.grf [*]Copy all files inside "SystemFont" folder of client translation, then paste it to Ragnarok "SystemFont" [*]Lastly copy "itemInfo.lua" and "Towninfo.lub" from client translation project to your ragnarok "system" folder [*]That's it! run Hercules's "run-server.bat" and open your patched.exe and play.

    [7]. Updating your KRO
    To make sure your KRO fully up to date, download RO patcher by Ai4rei , http://nn.nachtwolke.com/dev/rsu/ Put rsu-kro-rag-lite.exe to your ragnarok folder, run it until the patch is complete , then close it.

     
    P.S : Experimental client like 2014-10-22bRagexe and 2015-05-13aRagexe are NOT RECOMENDED to be used as client for your server.
    many broken feature inside them (like missing packets or unimplemented feature)
    as Developer still working on it (with no exact date), use it at your own risk

    ===============================================
    ===================  F . A . Q  ===================
    ===============================================




    All credits goes to Community
  3. Upvote
    Nardoth reacted to Legend in Item script: On player death, resurrect, consume item   
    I don't have any idea on making it as an item script,
     
    so i did this NPC script:
     
    http://upaste.me/3497327706d02304e
  4. Upvote
    Nardoth reacted to Aeromesi in Item script: On player death, resurrect, consume item   
    Just adjust the Item ID / Requirement in the OnInit.
    Also use @autoheal to Enable/Disable the Auto Phoenix consumption. Inspired by Final Fantasy and brought to the table right to you. Enjoy
    -    script    AutoPhoenix    -,{ end;   OnAtAutoHeal: if ( !AutoHealEnable ) {     AutoHealEnable = 1;     message strcharinfo(0),"[Auto-Heal] Passive skill activated.";     end; } else if ( AutoHealEnable ) {     AutoHealEnable = 0;     message strcharinfo(0),"[Auto-Heal] Passive skill deactivated."; end; }      OnPCDieEvent: if ( AutoHealEnable ) { if (countitem( .ItemReq ) >= .ItemAm ) { delitem .ItemReq, .ItemAm; sleep2 1; atcommand "@raise"; message strcharinfo(0),"[Auto-Heal] Consumed "+getitemname( .ItemReq ) +" x ("+.ItemAm+")."; end; } } else end;   OnInit:     .ItemReq = 501;     .ItemAm = 1;     bindatcmd "autoheal",strnpcinfo(0)+"::OnAtAutoHeal"; end; }
  5. Upvote
    Nardoth reacted to 4144 in click and move cell area max!   
    Bit slower server. Server will use more cpu while calculation walk path
  6. Upvote
    Nardoth got a reaction from Tio Akima in Check Collision in Skill   
    In castend_pos2 there are already variables x and y that are set as parameters of the function, these are the coordinates of the cell the player casted the skill on, so you just have to replace bl->x and bl->y for just x and y respectively. But then again, in NJ_KAMAITACHI the animation does not show up when there are no enemies in the area.
     
    The loop should advance from the last cell the animation showed up to the next one, until it hit's a target or reach the range of the skill, and then continue. I will let you do the math about how to calculate which cell it should go, probably you will have to mess with some conditions about the direction where the target cell is from your point of view.
     
    It would look something like this:
    for(i=0;i<range;i++){ if (0<map->foreachinpath(skill->attack_area,src->m,previous_cellx(i),previous_celly(i),next_cellx(i),next_celly(i), skill->get_splash(skill_id, skill_lv),skill->get_maxcount(skill_id,skill_lv), skill- >splash_target(src),skill->get_type(skill_id),src,src,skill_id,skill_lv,tick,flag,BCT_ENEMY)) continue; } Using the firepillar will be more tricky, since what it does is place a unit on the cell with skill->unitsetting if I guess correctly.
    If that's the case, maybe it will help you to set a variable of the struct skill_unit_group to that unit of firepillar, and set it's alive parameter to a lower number so it does not persist after the skill is done casting and it disappears quickly.
     
     
    PD: My main language is spanish, but I can understand you pretty well.
  7. Upvote
    Nardoth got a reaction from Tio Akima in Check Collision in Skill   
    I know what you are trying to do, what I said was about that. You need to study how kamaitachi works. It uses the map->foreachinpath function to attack to everyone in it's path. That function returns the total amount of damage done in the area, so you may use that to know if it already hit something in a convenient loop (i.e. looping at every cell in the path).
    To set kamaitachi as a ground skill you go to your skill_db.conf and replace Enemy: true to Place: true, but after you do that the skill will stop calling skill->castend_damage_id to use skill->castend_pos2 (and because of that it will stop calling map->foreachinpath unless you set it to do that in castend_pos2).
     
    To loop at everycell in it's range you will have to get the direction the src is facing and calculate the next coordinate it should be heading. 
    Check the available functions in unit.c (or by typing unit-> ).
    It seems to me that this is a very inefficient way to do it but I bet it will do the trick and is the best thing I know to do with the tools we have.
     
    The only problem with this method is that the skill animation wont show up if the skill fails to find an target. The animation is called by clif->skill_damage but it needs a block_list as a target and you only have the coordinates x,y of the targeted cell. In the other hand, using the caster's block_list (src) as a target will make the animation head always to east, which is an issue.
     
    I don't know about you but I never learn C, or C++, or whatever this language is (actually the only language I'm not afraid to say I know a bit is fortran), but after learning I can use printf("string") or printf("%d",int i) my understanding speed of this code increased greatly. It may be helpful to you. The output will be print in the map-server console and to write a new line use printf("\n") to make it readable.
    It helps to find bugs in your code about what it is doing or where it's crashing. Trial and error will help you a lot.
  8. Upvote
    Nardoth reacted to Tio Akima in Edit Skill Fire Pillar   
    Hello people,
     
    I want to edit the skill Fire Pillar - (WZ_FIREPILLAR).
     
    The problem with this skill is that it does not work when you have a monster on the chosen area
     
    You have to use it in an area with no monster.
     
    As removing this condition ????? (bad condition)
     
    I've tried several things, reading skill.c, but have not figured out yet, anyone have any idea?
     
    thanks
  9. Upvote
    Nardoth got a reaction from Tio Akima in Edit Skill Fire Pillar   
    Go to the skill_db.conf in your db/re (or pre-re) folder and comment out "UF_NOFOOTSET: true" in the skill. However cast time and delay for the skill are too short, so I would suggest not doing that because it would lead into imbalance.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.