Jump to content

Akinari

Members
  • Posts

    247
  • Joined

  • Last visited

  • Days Won

    18

Posts posted by Akinari

  1. I'm pretty sure just disabling the sc_start in skill.c will do what you want.  Not sure what you've currently done to make it not work with the icon.

     

    Either:

    skill.c

    #ifdef RENEWAL
    				sc_start(src,src,SC_EXTREMITYFIST2,100,skill_lv,skill_get_time(skill_id,skill_lv));
    #endif
    

     

    To:

    #ifdef RENEWAL
    //				sc_start(src,src,SC_EXTREMITYFIST2,100,skill_lv,skill_get_time(skill_id,skill_lv));
    #endif
    

     

    Or:

    status.c

    #ifdef RENEWAL
    	set_sc( MO_EXTREMITYFIST     , SC_EXTREMITYFIST2   , SI_EXTREMITYFIST   , SCB_NONE );
    #endif
    

     

    To:

    #ifdef RENEWAL
    	set_sc( MO_EXTREMITYFIST     , SC_EXTREMITYFIST2   , SI_BLANK   , SCB_NONE );
    #endif
    

     

    Untested, but should work.

  2. July/August Digest 2013
    The following digest covers the month of July and August, 2013.

    Development Team

    Development Highlights

    • Major updates:
      • Made the move to GIT. (Topic 85124)
      • Implemented src/custom folder for custom script and @ commands. (a4fdc72)
      • Official Renewal battle support and major battle calculation engine refactoring. (f926d87, Topic 84568)
      • Many 2011 skill adjustments and Renewal attack fixes.
      • Huge updates to Renewal item database. (5f12351, 94c8a9c, 4a4fab0)
      • Finished Port Malaya quests and instances. (695e832, 32b8d2e, e4e8566, a1adc15)
      • Implemented Navigation System in Renewal guides. (6bed814)
      • Updated Renewal EXP and re-added Pre-Renewal EXP support. (be95412)
      • Added questlog support to many scripts (missing since 2009). (0202126)
      • Enabled all official GM Management NPCs and added some missing ones. (5ab4d5e)
      • Added tons of 2011-2013 Renewal changes in many scripts.
      • Added inf3 to Skill DB. (a9b48ba, 8bd0985)
      • Added Skill Damage Adjustment modification by @Lilith. (cd9a776)
      • Implemented Renewal Item DB class update. (5f12351, Topic 86816)
    • Renewal scripts:
      • Implemented official kRO Novice Training Grounds (soon to be overwritten with Academy). (26036ef)
      • Finished Renewal Izlude NPCs (excluding Academy) and duplicate maps (izlude_[a-d] and prt_fild08[a-d]). (d32e3c8, 11860e2)
      • Implemented Old Glast Heim instance (by Ziu). (914dbda)
      • Updated Izlude Arena with Renewal changes. (13b281b)
      • Updated all 1st class training quests. (4589a4d)
      • Updated Eden Quests 71-85. (4589a4d)
      • Implemented other new scripts like Job Repair, Stone Change, Weapon/Shield Card Separation, etc.).
    • Event scripts:
      • Implemented 2011 RWC Golden Poring script. (ec00251)
      • Implemented 2010 Easter script. (2981bac)
      • Implemented Upgrade Weapon Enchants. (5debd8c)
    • Other:
      • Script style standardization (labels, cases, consants, headers, K&R). (bf68cce, fdd0fd1)
      • Added client support for rank listings and many 2013 clients. (342745d)
      • Enabled TravisCI automatic building. (fb74928)

    Misc. Stats

    • Upvote 4
  3. You're right about the command always checking for player first, but a check for the second argument in the command is no good as the second argument can also contain a party ID, guild ID, or map name.  I think (untested) the real fix would look like this.

     

    Index: src/map/script.c
    ===================================================================
    --- src/map/script.c	(revision 17485)
    +++ src/map/script.c	(working copy)
    @@ -12883,10 +12883,8 @@
      *-------------------------------------------------------------------------*/
     BUILDIN_FUNC(recovery)
     {
    -	TBL_PC *sd = script_rid2sd(st);
    -
    +	TBL_PC *sd;
     	int map = 0, type = 0, revive = 1;
    -
     	type = script_getnum(st,2);
     
     	if(script_hasdata(st,4))
    @@ -12896,6 +12894,8 @@
     		case 0:
     			if(script_hasdata(st,3))
     				sd=map_charid2sd(script_getnum(st,3));
    +			else
    +				sd = script_rid2sd(st);
     			if(sd == NULL) //If we don't have sd by now, bail out
     				return 0;
     			recovery_sub(sd, revive);
    @@ -12915,8 +12915,10 @@
     			}
     			if(script_hasdata(st,3))
     				p_id = script_getnum(st,3);
    -			else
    +			else {
    +				sd = script_rid2sd(st);
     				p_id = (sd)?sd->status.party_id:0;
    +			}
     			p = party_search(p_id);
     			if(p == NULL)
     				return 0;
    @@ -12943,8 +12945,10 @@
     			}
     			if(script_hasdata(st,3))
     				g_id = script_getnum(st,3);
    -			else
    +			else {
    +				sd = script_rid2sd(st);
     				g_id = (sd)?sd->status.guild_id:0;
    +			}
     			g = guild_search(g_id);
     			if(g == NULL)
     				return 0;
    @@ -12959,8 +12963,10 @@
     		case 3:
     			if(script_hasdata(st,3))
     				map = map_mapname2mapid(script_getstr(st,3));
    -			else
    +			else {
    +				sd = script_rid2sd(st);
     				map = (sd)?sd->bl.m:0; //No sd and no map given - return
    +			}
     			if(map < 1)
     				return 1;
     		case 4:
    
    

     

    Also, something like this should have been posted in bug reports.

    • Upvote 1
  4. Do to the new set of developers we have, I feel this should be brought up again.  Currently, Cydh is working on simply bringing Lillith's mod into the source.  Before this is done, we should actually finish this discussion as a map zone database may be the way to go.

     

    Pros:

    • Everything is in one place, rather than scattered throughout different files
    • More versatility with the same DB (Lillith's mod for example)

    Cons:

    • More processing time
    • Breaks backwards compatibility
    • Support for transition will need to be provided

     

    I am on the fence with this change, but I feel that with the work already completed (at least updating the diff shouldn't be that hard), changing over to this system is much less of a task than starting from scratch.  Can we have some other developer input on this?

  5. It's been discussed and most of the developers are in favor of porting this modification over.  Since it was planned to also do multi-client support in the future, this has been put on hold until a resolution is found.I have re-opened discussion on this to other developers and will post any updates.

    • Upvote 1
  6. Not anytime soon.  We have many, many other bugs to get through first and haven't even begun implementing the other skills for 3rd jobs.  Our main focus should be on emulation accuracy and stability before jumping into implementing new skills that will probably be changed a bunch of times before actually reaching mainstream servers.

    • Upvote 1
  7. File Name: Item Binding

    File Submitter: Akinari

    File Submitted: 20 Jul 2013

    File Category: Utilities

    Content Author: Akinari

    I made this while taking a short break from the normal rAthena work I do. It works with the item bound system added a little over a month ago. You need to have revision 17351 or newer for this to work. It's mostly focused around guild binding as that was the original intention of the script but I then decided to support the other types. The other types are good simply because this allows players to bind items and log these in a separate NPC table by default. You could also disable unbinding (just remove the option in the switch) and make it a better form of security for users.

    Features:

    • Allows users to bind items to their account, character, or guild
    • Multiple configuration options to choose what item types to allow
    • Automatically builds a menu list based on your configuration

    Configuration:

    OnInit:	//* Configuration *\\	//Price	.bindprice = 0;	.unbindprice = 100000;	//What to allow to be bound - Add as necessary	//1 = Equipment - 2 = Consumables - 4 = Etc	.allowbind = 1;	//Log binds via NPC?	.logbinds = 1;	//Other stuff	.boundtypes$[1] = "account";	.boundtypes$[2] = "guild";	.boundtypes$[4] = "character";	end;

    Please report any issues and feature requests. Thanks for downloading.

    Click here to download this file

    • Upvote 4
  8. I've been using addrid for years myself and while I've seen the arguments of this being too processor intensive, it has never caused issues for me.  Really it goes back to how the scripts are written.  The added usefulness for custom scripts, especially event types, makes this an extremely powerful command and I would like to see this added into rAthena myself.

     

    Yes, that's a +1 from me.

    • Upvote 1
  9. This really shouldn't be a discussion anymore.  There have been many man hours put into preserving pre-re throughout the renewal attack modification, so branching it out at this point would not only be a waste of time, but a disgrace to the one(s) who put all the time and effort into preserving pre-re the way it is now.  If anyone feels this should remain an open suggestion, I will leave this open for the next day or 2 before rejecting it.

    • Upvote 2
  10. Renewal magic attack was implemented for players last November.

     

    See: http://rathena.org/board/tracker/issue-5689-renewal-matk-and-mdef-formula-issue/

    And: r16981

     

    As malufett had stated the remaining portion that is incorrect is mob calculations.

     

    See: bugreport:5103

     

    This post serves as a reminder that monster magic attack still needs to be completed as I had totally forgotten about that important detail.  Thanks Rage.

    • Upvote 1
  11. The old repository will update automatically.  If you want to stay up to date with latest revisions, switch your SVN repo.

     

    cd /path/to/trunk/
    

     

    svn switch --relocate https://rathena.svn.sourceforge.net/svnroot/rathena/trunk http://svn.code.sf.net/p/rathena/svn/trunk

     

    Run a repo checkout before relocating.  Tools like RapidSVN and Tortoise have these features built-in to relocate.

×
×
  • Create New...