Jump to content

Kavaline

Members
  • Content Count

    14
  • Joined

  • Last visited

About Kavaline

  • Rank
    Member

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. In status.c, status_calc_mob_, I'm trying read the master SC (I want that if I use Summon Flora with some buffs, the plants receive some status boost). I tried some codes, but dont work. Here is my last try: if (flag&16 && mbl) {... if (ud) {... if (ud->skill_id == AM_SPHEREMINE) {... } else if(ud->skill_id == KO_ZANZOU) {... } else { //AM_CANNIBALIZE ... //custom struct status_change* sc = status->get_sc(mbl); if (sc->data[SC_SHOUT]) { mstatus->aspd_rate = 1000;//for test mstatus->batk = 1000;//for test } //end custom How I can do it?
  2. Hi, have any way to attach variables to a specific item (not all Apples, but only a specific Apple)? I tried search how to get the GID of an item, but didn't found a way, and saw no one method for an item hold a variable or attach a variable for a specific item. Only way that I found is the card slots, but I can't use with crafted items that already use the slots, like Alchemist potions, and another scripts that use this, like Sign/Bound NPC. Someone know how I can do it?
  3. How I can get an item GID, or a similar unique variable? For healing item, or equipment, or misc item, anyone? And, is possible to change a script of an only one item? For example, all Apples recover 16~22 HP, but make only one Apple recover 7~10% SP without change all Apples or creating a new Apple? (Before anyone ask, I want the item GID for other purpose. Thinking about the item GID gave me this question, but I need the item GID to solve other problem).
  4. Hi, I need help for a script that break the players equipped weapon (not delete the player weapon, but breaks that return the weapon with broken status). I tried "delequip" with "getitem2", but how I get the slotted cards? And in case of BS/WS crafted weapons and signed weapons, have problem? And, have any way to do it better than: get weapon id; get refine; get card 1; get card 2; get card 3; get card 4; delequip; getitem2(weapon id, 1, 1, refine, 1, 0, card 1~4); Some item script, function, effect, etc, that I can use to do it better/easier?
  5. Hi, I want a script that gives the player 5 seconds to type a word, with 'input'. But when the time runs out, the script runs normally, and after, read the event label of the time out. Here is what I tried: mes "type anything in 5 seconds"; addtimer(5000, strnpcinfo(NPC_NAME_UNIQUE)+"::On5secs"); input(.@text); deltimer(strnpcinfo(NPC_NAME_UNIQUE)+"::On5secs"); next; mes "you did it"; close; On5secs: mes "time over"; close; Maybe is impossible for the 'timer' force close the 'input', but at least, I want a way that after the 'input', run the time out label if the time out, without run the lines above of the script. How I can do it?
  6. @Kenpachi I need exactly for healing/misc items 😕 And is a useful function. I can manually add a new field in the items from item_db2.conf? Some kind of "comment" field? And a function to read this field with "getiteminfo", something like "getiteminfo(<item ID>, ITEMINFO_COMMENT)"? With this, solve my problem.
  7. @meko But have a way to get the AegisName of the item? My script gets a name of an item to appoint to another item. I used the "getequipname()", that returns the "name" field, not the AegisName. With this name, I need get the ID of this item. .@item$ = getequipname(EQI_HAND_R)+"_item"; .@item_id = .@item$; Alread tried before with "delitem" (delitem (getequipname(EQI_HAND_R)+"_item"), 1;) works, but I saw that isn't recommended. And I need to use with others commands too. I will test some tricks here, you gave me an idea of how I can do it. The "name" field can have "_" character without problem? And same name of AegisName? Doing this, I think I can solve, but I don't know if will have some problem. Is for a custom item. @Edit I need a solution that fit this kind of case: //Database modifications: //A equipped weapon called "Red Potion" in field "name" //In potion, ID 501, change the field "name" from "Red Potion" to "Red Potion_item" .@item$ = getequipname(EQI_HAND_R)+"_item"; .@item_id = ~magic_code~; if (.@item_id == 501) mes "Code works."; close; //But, this code works (with same database modifications): delitem (getequipname(EQI_HAND_R)+"_item"),1; close; But not only this case, that I can compare (.@item$ == wanted_name) instead. I need the ID number.
  8. I have a string var with the item name stored (a Jellopy, for example). How I get the ID of the Jellopy by their name? I need do this in this way, because the name that I get is dynamic, based on a long list of items. I want something like "getitemname(<item id>)", but more like "getitemid(<item name>)", or a way to get it, without using "searchitem(<array name>, "<item name>")".
  9. Nice out-of-box suggestion, this gave me a lot of cool ideas
  10. Hi, I need write this kind of script: setarray .arrayAn[1], 1, 2, 3, 4, 5; setarray .arrayA$[1], "a", "b", "c", "d", "e"; setarray .arrayBn[1], 6, 7, 8, 9, 10, 11; setarray .arrayB$[1], "f", "g", "h", "i", "j", "k"; setarray .arrayCn[1], 12, 13, 14, 15; setarray .arrayC$[1], "l", "m", "n", "o"; .@value = rand(1,getarraysize(.arrayAn)); .resultn[1] = arrayAn[.@value]; .result$[1] = arrayA$[.@value]; .@value = rand(1,getarraysize(.arrayBn)); .resultn[2] = arrayBn[.@value]; .result$[2] = arrayB$[.@value]; .@value = rand(1,getarraysize(.arrayCn)); .resultn[3] = arrayCn[.@value]; .result$[3] = arrayC$[.@value]; Have any way to use matrix or other solution, doing something like this: setarray .arrayn[1][1], 1, 2, 3, 4, 5; setarray .array$[1][1], "a", "b", "c", "d", "e"; setarray .arrayn[2][1], 6, 7, 8, 9, 10, 11; setarray .array$[2][1], "f", "g", "h", "i", "j", "k"; setarray .arrayn[3][1], 12, 13, 14, 15; setarray .array$[3][1], "l", "m", "n", "o"; for (.@i = 1; .@i <= 3; ++.@i) { .@value = rand(1,getarraysize(.arrayn[.@i])); .resultn[.@i] = arrayn[.@i][.@value]; .result$[.@i] = array$[.@i][.@value]; } This is a script with testing values that I'm using to find a solution, my original script will needs 100 loops in this case (and will only use integers, for IDs and numbers, in non logical or consecutive order), and without matrix is really unfair. Have another option that help me?
  11. In the NPC files, I saw an auction script, and search on the web how this system works. If is possible, this can be done there, because only one player can get the item, and the time left to end an item can refresh the auction's offers.
  12. Hi, I need a script for a seller, with few specifications: He sell 10 different itens; After 1 hour, change for 10 new itens; Each player can only buy 1 item, and the buyed item are removed from the Seller; Each item from the seller came from a vector with few options (ex: the 1st item are a healing item, that can be one of this: box with 10 white potion, box with 7 slim white potion, box with 5 yggberry, or a +10 food); Someone can help with this, or have a NPC in this style?
  13. I tried edit the client to choose another path for the Gangsi sprite, but had no luck. I'm posting my results for who want help me in this adventure. I want change the Dark Collector and Death Knight too, but will talk only about Gangsi here, because solving one, solve all. My client is 2018-04-18bRagexeRE. Creating a file "data\texture\À¯ÀúÀÎÅÍÆäÀ̽º\renewalparty\icon_jobs_4050.bmp" will prevent an error when enter in char select screen with a Gangsi Job, and other file, "data\sprite\Àΰ£Á·\¼ºÁ÷ÀÚ\¼ºÁ÷ÀÚ_³²_´Ü°Ë_°Ë±¤.spr" (with .act too), will prevent other error that I dont remember now. A sprite file that I put for test is "data\sprite\Àΰ£Á·\¸öÅë\³²\¼ºÁ÷Àa_³².spr" (with .act too, I renamed another sprite extracted from GRF). The Gangsi uses Acolyte sprite, what is called "성직자", but shows "¼ºÁ÷ÀÚ". I changed the last character, "Ú" for "a", to edit only 1 character and test the result. Address 0093684D -> changed "Ú" to "a" here, and the sprite of Gangsi was changed, but Acolyte was changed too. Address 00934045 -> the job name that shows in status area, the only good one. Address 0090E9C0 to 0090F1E0 -> some kind of NPC text, that questions about what is the value of a sum of characters name. And the world, is the unimplemented classes. I tried search the Acolyte name, "¼ºÁ÷ÀÚ", but have 7 results; 2 for male sprite readings ("¼ºÁ÷ÀÚ" and "¼ºÁ÷ÀÚ_h"), 2 for female, the 0093684D that changes both sprites, and other 2 results side to side, that looks like some kind of weapon/item sprites. And had lots of searches and failures, that isn't usefull to share (2 days trying this, with LOTS of mistakes). For easy reference, Sage name (Dark Collector uses their sprite): "¼¼ÀÌÁö"; Knight name (Death Knight uses their sprite): "±â»ç". Anyone can help me to find the right way to choose a separated file for this Jobs? (PS: my english isnt too good, and I'm really dumb in programming and other related things; this was my first time with a Hex editor).
×
×
  • Create New...

Important Information

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