All Activity
- Past hour
-
Hello, this is Cydh's @autostore feature. // @autostore [Cydh] if (autostoring && sd->state.autostore && !item->expire_time && !id->flag.autoequip && !sd->state.storage_flag && !sd->npc_id) { if ((!sd->autostore_weight || (sd->autostore_weight && get_percentage(sd->weight, sd->max_weight) >= sd->autostore_weight)) && ( (sd->autostore_type&1 && (id->type == IT_HEALING || id->type == IT_USABLE || id->type == IT_DELAYCONSUME || id->type == IT_CASH)) || (sd->autostore_type&2 && (id->type == IT_ARMOR || id->type == IT_WEAPON || id->type == IT_SHADOWGEAR || id->type == IT_PETEGG || id->type == IT_PETARMOR)) || (sd->autostore_type&4 && (id->type == IT_ETC || id->type == IT_AMMO || id->type == IT_UNKNOWN || id->type == IT_UNKNOWN2)) || (sd->autostore_type&8 && id->type == IT_CARD) ) ) { char output[CHAT_SIZE_MAX]; sd->weight += w; clif_updatestatus(*sd, SP_WEIGHT); storage_storageadd(sd, &sd->storage, i, amount); storage_storageclose(sd); clif_storageclose(*sd); sprintf(output, "[ Autostore ] %dx %s", amount, id->ename.c_str()); clif_messagecolor(&sd->bl, color_table[COLOR_LIGHT_GREEN], output, false, SELF); achievement_update_objective(sd, AG_GET_ITEM, 1, id->value_sell); return ADDITEM_SUCCESS; } } ---------------------------------------------------------- - ID: 2 Name: "Storage 2" Table: storage2 Max: 300 - ID: 3 Name: "Storage 3" Table: storage3 Max: 300 This is the part where it stores the item in the storage. storage_storageadd(sd, &sd->storage, i, amount); Any idea how I can call storage ID: 2 or 3 in that part, so that the item to be autostored will go to the custom storage I created?"
- Today
-
is this normal coz what happen here after clearing the rebirth system database and do some rebirth the rebirth counts still continue instead of clearing all characters/account rebirth/grand rebirth and also if possible for account base rebirth ranking once any of the characters in the account do a grand rebirth all of the rebirth made by other characters are also wiped or reset. thanks @Racaae
-
Hello try lang search sa youtube halos lahat ng guide ginawan na ng ating mga kasamang pinoy
-
Guys sorry mejo visual learner kasi ako nahirapan ako dito https://github.com/rathena/rathena/wiki/Adding-a-Script meron bang video tutorial? 1. Create your own NPC folder and *.conf file. This will make it much easier to keep track of your own scripts and can reduce the hassle when merging new revisions of rA. eto kasing part na to ung nalito ako, saan ako gagawa ng folder? pag iclone ung git dahil sa update hindi ba mawala ung folders ko? C:\Users\Tite\Desktop\Ragmanok\2.Emulator\rathena C:\Users\Tite\Desktop\Ragmanok\2.Emulator\rathena\npc 2. Follow the basic layout of the other *.conf files and remember to import the *.conf in Etong mga conf files nakita ko panu daw gagawin ung import the *.conf in? C:\Users\Tite\Desktop\Ragmanok\2.Emulator\rathena\conf 3. Panu ilagay yung NPC? na enable ko na ung gusto kong script dito scripts_custom.conf tamang section po ba ito or mali? ilipat ko nalang if ever. Salamat. nagkaroon kasi ng error sa map server din eto screenshots.
-
Thanks a lot sir I highly appreciate this
-
Thank You R-Jarn !
-
Want to try your hand at making cool ice cream by the sea? Papa’s freezeria lets you manage an ice cream shop, making and decorating according to customers’ requests. With simple yet challenging gameplay, the game offers an exciting and entertaining experience!
-
Perfect suggestion for wordle of the day
Marynechum replied to Marynechum's question in General Support
Have you ever felt stuck while playing Wordle and couldn't find the right word? Don't worry, Wordle Hint will help you overcome the challenge easily! This is a great support tool, helping you find the right hints to guess words faster. With smart tips and optimal strategies, you can improve your gaming skills and increase your winning rate. Whether you are a beginner or a pro, Wordle hint will help you conquer every challenge effectively! -
Have you tried playing Wordle? This is a pretty popular game these days. Every day, a new word needs you to decipher. If you get stuck because you don't know how to play or can't guess the word of that day, Then wordle hint is a perfect choice; Wordle Hint can help you with any difficulty about how to play or how to get to the answer as quickly as possible.
-
The sql table is working fine for me. Does any error appear on the server console? Stat Points Doesnt clear out after rebirth only the allocated stats. Changed. In what line I can edit the reward for Grand Reset, all I can see was the reward for the Reset after they reach 150 reset. It's the same reward. Is it possible that after grand reset all of the "STAT POINTS" earned during Rebirth can be wiped and start as new rebirth. Added config for this. GM selection to clear out rankings for Rebirths and Grand Rebirths. Added character log in SQL should be per character not per account ( Ex: char1 have 5 rebirth char2 has 3 when you check in DB char1 has 8 Rebirths already ) tried this but still same Added config for this. Drop the old table. //===== rAthena Script ======================================= //= Rebirth System //===== Description: ========================================= //- Go back to Level 1 to gain bonus status points //===== Changelogs: ========================================== //= 1.0 First version. [Capuche] //= 1.6 Added Grand Rebirth. [Racaae] //============================================================ /* CREATE TABLE IF NOT EXISTS `rebirth_system` ( `player_id` int(11) unsigned NOT NULL default 0, `name` varchar(255) NOT NULL DEFAULT 'NULL', `num_rebirth` int(11) unsigned NOT NULL default 0, `num_grand` int(11) unsigned NOT NULL default 0, `last_ip` varchar(100) NOT NULL default '', PRIMARY KEY (`player_id`) ) ENGINE=MyISAM; */ prontera,141,179,5 script Rebirth System 531,{ function checkItem; // check if player have all item required function colorItemrequired; // color the text. Red : not enough item, green otherwise function deleteItem; // delete all items required function displayItemneed; // display all items need at start function getItemReward; // give the items reward //function weightreq; // check if your current weight is highter than weight high novice if (.grand_reset_max > -1 && num_grand_rebirth >= .grand_reset_max) { mes "You can only grand rebirth x"+ .grand_reset_max +"."; emotion e_gasp; } else { .@eac = eaclass(); if( BaseLevel < 255 || JobLevel < 120 || ( !( .@eac&EAJL_2 ) || !Upper ) && ( Class != Job_Ninja && Class != Job_Gunslinger && Class != Job_Soul_Linker && Class != Job_Star_Gladiator) ) mes "You must be max level/max job level to rebirth."; else { if ( num_rebirth == .reset_max ) { mes "You have reached the maximum rebirth."; emotion e_gasp; .@s2$ = "^777777~ Grand Rebirth"; } else .@s1$ = "^777777~ Rebirth"; mes "Items need :"; displayItemneed(); } } next; switch( select( .@s1$, .@s2$, "^777777~ Informations", (.rebirth_ranking?"~ Rebirth ranking":""), (.grand_ranking?"~ Grand Rebirth ranking":""), "~ Good bye^000000", (getgroupid() < 90 ?"":"^FF0000[GM]^000000 Reset Rebirth Rankings") )) { case 1: checkItem(); deleteItem(); num_rebirth += 1; .@account_id = getcharid(3); if (.ranking_type) .@player_id = .@account_id; else .@player_id = getcharid(0); query_sql "insert into `rebirth_system` ( `player_id`, `name`, `num_rebirth`, `last_ip` ) select "+ .@player_id +", '"+ escape_sql( strcharinfo(0) ) +"', '"+ num_rebirth +"',`login`.`last_ip` from `login` where `login`.`account_id` = "+ .@account_id +" on duplicate key update `rebirth_system`.`num_rebirth` = `rebirth_system`.`num_rebirth` +1"; announce "[ Rebirth system ] : "+ strcharinfo(0) +" Successfully Rebirth!", 0; break; case 2: checkItem(); deleteItem(); getItemReward(); num_grand_rebirth += 1; num_rebirth = 0; .@account_id = getcharid(3); if (.ranking_type) .@player_id = .@account_id; else .@player_id = getcharid(0); query_sql "insert into `rebirth_system` ( `player_id`, `name`, `num_grand`, `last_ip` ) select "+ .@player_id + ", '" + escape_sql( strcharinfo(0) ) +"', '"+ num_grand_rebirth +"',`login`.`last_ip` from `login` where `login`.`account_id` = "+ .@account_id +" on duplicate key update `rebirth_system`.`num_grand` = `rebirth_system`.`num_grand` +1, `rebirth_system`.`num_rebirth` = 0"; announce "[ Rebirth system ] : "+ strcharinfo(0) +" Successfully Grand Rebirth!", 0; specialeffect2 EF_GLOW4; break; case 3: do { switch(select("My status", "Rebirth", (.grand_reset_max!=0?"Grand Rebirth":""), "Cancel")) { case 1: if (num_grand_rebirth) mes "You performed Grand Rebirth ^ff0000x"+ num_grand_rebirth +"^000000."; if (num_rebirth) mes "You already rebirth ^ff0000x"+ num_rebirth +"^000000."; else if (num_grand_rebirth == 0) mes "You did not rebirth."; break; case 2: mes "Rebirthing can be done when one reaches the pinnacle, that is, maximum base and job level."; mes "It reverts your base level back to 1 and gives you ^ff0000"+ .num_status +" bonus status points^000000."; next; mes "Items required each time:"; displayItemneed(); mes "After ^ff0000"+ .change_reward +" rebirths^000000, more items are necessary."; next; if (.reset_job) mes "You will be back as a simple novice."; else mes "You will maintain your job class, job level and skills."; mes "One can only rebirth ^ff0000x"+ .reset_max +"^000000."; if (.grand_reset_max != 0) mes "When you reach the maximum you can perform the ^0000FFGrand Rebirth^000000."; break; case 3: mes "After rebirthing "+ .reset_max +" times you can merge all past rebirth into a powerful ^0000FFGrand Rebirth^000000 upon reaching max level!"; next; mes "The process will reward you with item:"; for (.@i = 0 ; .@i < .size_reward; .@i += 2 ) mes .reward[ .@i+1 ] + " " + mesitemlink(.reward[.@i]); mes "Also all bonus status points gained are forfeit since the rebirth count goes back to zero."; next; mes "Then you can repeat the process of Rebirths and ^0000FFGrand Rebirth^000000 for even more glory."; if (.grand_reset_max > 0) mes "^0000FFGrand Rebirth^000000 can be perfomed " + .grand_reset_max + " times."; else mes "There is no limit on how many ^0000FFGrand Rebirth^000000 can be perfomed."; break; case 4: mes F_Bye; close; } mes "What do you want to know about?"; next; } while (true); case 4: mes "TOP " + .rebirth_ranking + " of rebirth"; mes "Name - Number of rebirth"; .@size = query_sql( "select `name`, `num_rebirth` from `rebirth_system` WHERE num_rebirth > 0 ORDER BY `num_rebirth` desc limit " + .rebirth_ranking, .@name$, .@value ); if( .@size ) { for( .@i = 0; .@i < .@size; .@i++ ) mes "^777777"+ F_GetNumSuffix( .@i +1 ) +"^000000 : "+ .@name$[.@i] +" : ^FF0000"+ .@value[.@i] +"^000000"; } else mes "^0000ff* the list is empty *^000000"; close; case 5: mes "TOP " + .grand_ranking + " of grand rebirth"; mes "Name - Number of rebirth"; .@size = query_sql( "select `name`, `num_grand` from `rebirth_system` WHERE num_grand > 0 ORDER BY `num_grand` desc limit " + .grand_ranking, .@name$, .@value ); if( .@size ) { for( .@i = 0; .@i < .@size; .@i++ ) mes "^777777"+ F_GetNumSuffix( .@i +1 ) +"^000000 : "+ .@name$[.@i] +" : ^FF0000"+ .@value[.@i] +"^000000"; } else mes "^0000ff* the list is empty *^000000"; close; case 6: mes "Bye."; close; case 7: callsub S_GM; close; } if (.reset_job) { if ( Upper ) { // just in case the user change the setting... lastJob = roclass( .@eac&EAJ_UPPERMASK ); jobchange Job_Novice_High; } else jobchange Job_Novice; } resetlvl 1; resetstatus; // Will reset the statpoints //StatusPoint = .default_statuspoints; StatusPoint += .num_status * num_rebirth; if (.grand_reset_points == false) StatusPoint += .num_status * (num_grand_rebirth * .reset_max); mes "Done!"; close2; sleep2 10000; removespecialeffect2 EF_GLOW4; end; S_GM: switch(select("Cancel", (.rebirth_ranking?"^FF0000Confirm Reset Rebirth Ranking!":""), (.grand_ranking?"^FF0000Confirm Reset Grand Rebirth Ranking!":""))) { case 1: close; case 2: query_sql "UPDATE rebirth_system SET num_rebirth = 0"; announce "[ Rebirth system ] : The Rebirth Ranking has been reset!", 0; break; case 3: query_sql "UPDATE rebirth_system SET num_grand = 0"; announce "[ Rebirth system ] : The Grand Rebirth Ranking has been reset!", 0; break; } query_sql "DELETE FROM rebirth_system WHERE num_rebirth = 0 AND num_grand = 0"; mes "Reset done."; close; function checkItem { for ( ; .@i < .size_item; .@i += 2 ) if ( countitem( .item_req[.@i] ) < .item_req[ .@i+1 ] + num_rebirth ) { mes "You don't have enought "+ getitemname( .item_req[.@i] ) +". ^ff0000["+ countitem( .item_req[.@i] ) +"/"+ ( .item_req[ .@i+1 ] + num_rebirth ) +"]^000000"; close; } if ( num_rebirth >= .change_reward ) if ( .add_item_req[1] + num_rebirth - .change_reward > countitem( .add_item_req[0] ) ) { mes "You don't have enought "+ getitemname( .add_item_req[0] ) +". ^ff0000["+ countitem( .add_item_req[0] ) +"/"+ ( .add_item_req[1] + num_rebirth - .change_reward ) +"]^000000"; close; } return; } function colorItemrequired { if ( countitem( .item_req[ getarg(0) ] ) < .item_req[ getarg(0)+1 ] + num_rebirth ) return "^ff0000"; return "^00ff00"; } function deleteItem { for ( ; .@i < .size_item; .@i += 2 ) delitem .item_req[.@i], ( .item_req[ .@i+1 ] + num_rebirth ); if ( num_rebirth >= .change_reward ) delitem .add_item_req[0], ( .add_item_req[1] + num_rebirth - .change_reward ); return; } function displayItemneed { for ( ; .@i < .size_item; .@i += 2 ) mes colorItemrequired( .@i ) +" - x"+ ( .item_req[ .@i+1 ] + num_rebirth ) +" "+ (PACKETVER>=20230302?"^i["+ .item_req[.@i] + "]":"") + getitemname( .item_req[.@i] ); if ( num_rebirth >= .change_reward ) { if ( .add_item_req[1] + num_rebirth - .change_reward > countitem( .add_item_req[0] ) ) .@color$ = "^ff0000"; else .@color$ = "^00ff00"; mes .@color$ +"- x"+ ( .add_item_req[1] + ( num_rebirth - .change_reward ) ) +" "+ (PACKETVER>=20230302?"^i["+ .item_req[.@i] + "]":"") + getitemname( .add_item_req[0] ); } return; } function getItemReward { for ( ; .@i < .size_reward; .@i += 2 ) getitem .reward[.@i], .reward[ .@i+1 ]; return; } function weightreq { if ( Weight > 50000 ) { mes "You have too much items on you. Your weight will be too high after rebirth."; close; } return; } OnInit: .reset_max = 10; // how many reset max .grand_reset_max = 100; // how many grand rebirth max (-1:unlimited) (0:disable) .change_reward = 6; // after the set rebirth, change reward .num_status = 10; // + X number of status points .reset_job = false; // character will go back to Novice? .rebirth_ranking = 0; // How many tops in normal rebirth ranking? (0=disable) .grand_ranking = 5; // How many tops in grand rebirhh ranking? (0=disable) .ranking_type = 0; // 0 = ranking by character. | 1 = ranking by account. .grand_reset_points = true; // Bonus status points will be back to 0 upon Grand Rebirth? .default_statuspoints = 48; // Default status points upon Lv1 in your server // item required <item ID>, <number> setarray .item_req, 7179, 50, 7227, 50, 969, 300; // additionnal items after rebirth >> .change_reward // <item ID>, <number> setarray .add_item_req, 7179, 100; // Grand Rebirth rewards <item ID>, <number> setarray .reward, 674, 50; .size_item = getarraysize( .item_req ); .size_reward = getarraysize( .reward ); query_sql("CREATE TABLE IF NOT EXISTS `rebirth_system` (" + " `player_id` int(11) unsigned NOT NULL default 0," + " `name` varchar(255) NOT NULL DEFAULT 'NULL'," + " `num_rebirth` int(11) unsigned NOT NULL default 0," + " `num_grand` int(11) unsigned NOT NULL default 0," + " `last_ip` varchar(100) NOT NULL default ''," + " PRIMARY KEY (`player_id`)" + " ) ENGINE=MyISAM;"); end; }
-
I am testing random options and the drop pillars. My PACKAGEVER is 20220331, and if I try to use ORANGE_PILLAR, the server returns an error, and defaults effect to none. Any ideas on how to expand the colors available?
-
Vengo del futuro, también como mod y cooperador de divinero y divinelol, espero poder despertar a Eves
-
Putting 63 70 73 2E 64 6C 6C into the client's hex when it does nothing besides tricking the GRF Editor into thinking that the client reads cps.dll even though it doesn't. I did this before just by copy-pasting cps.dll...compress...uncompress, and, as expected, it's not that simple. The client still lacks the function to call cps.dll.
- Yesterday
-
hello brother! i got the same issue, but here when i diff the vanilla ragexe with the profiles, somehow i managed to login to my server and play. HOWEVER if i try to hit any monster for example, i get the same error message as you do. Module Name: \2022-04-06_Ragexe_1648707856_patched.exe Time Stamp: 0x62453b95 - Thu Mar 31 02:26:45 2022 Exception Type: 0xc0000005 0xc3b54063 eax: 0x5da09b68 ebx: 0x17b2a040 ecx: 0x5da09b68 edx: 0x54214d68 esi: 0x0069d1d8 edi: 0x17b2a150 ebp: 0x0019b2a0 esp: 0x0019b124 stack 0019b124 - 0019b524 0019B124 : 4B 00 00 00 07 00 00 00 0F 56 DA 81 10 1A 12 01 0019B134 : 2C 56 D3 00 40 A0 B2 17 61 63 AE 77 00 00 00 00 0019B144 : EF 34 A9 77 40 66 B8 77 68 EC 52 1E 00 00 00 00 0019B154 : 00 00 00 00 00 00 00 00 00 00 00 00 FD FF FF FF 0019B164 : 64 5B 2F 54 00 00 00 00 60 08 62 01 2F 55 DA 81 0019B174 : FC B2 19 00 C0 A2 BF 00 00 00 00 00 00 00 00 00 0019B184 : 6B 65 7C 00 00 00 00 00 0B 00 00 00 00 00 00 00 0019B194 : C4 B1 19 00 00 00 00 00 20 C1 13 01 68 EC 52 1E 0019B1A4 : 50 A1 B2 17 1B C8 69 00 01 B1 19 00 F8 39 A9 77 0019B1B4 : 10 0C 65 76 68 9B A0 5D 40 A0 B2 17 68 EC 52 1E 0019B1C4 : 20 C1 13 01 70 78 13 74 20 C1 13 01 F0 B1 19 00 0019B1D4 : 69 E3 8C 77 10 0C 65 76 90 7E 94 77 E8 B1 19 00 0019B1E4 : 00 00 00 00 70 78 13 74 20 C1 13 01 68 EC 52 1E 0019B1F4 : D3 7C 60 76 72 F1 D0 06 00 00 00 00 10 27 00 00 0019B204 : 00 00 00 00 D8 B3 90 00 68 EC 52 1E 20 C1 13 01 0019B214 : 81 B4 90 00 00 00 00 00 00 00 00 00 00 00 00 00 Launch Info 02A8 02A7 02A6 00A4 00A4 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 Job : Imperial Guard prontera.rsw 156 180 renderer.cpp 838 my guess would be something related to the diff and client side folder files
-
You need a client with date 2023+ if im correct.
- 1 reply
-
- 1
-
-
is it ok to patch the data.grf of this client? if yes where can i get the rsu for this. Thank you!
-
i didnt touch import for skills and my server runs pre-renewal so im using pre-re folder
-
i didnt touch import for skills and my server runs pre-renewal so im using pre-re folder
-
i didnt touch import for skills and my server runs pre-renewal so im using pre-re folder
-
You can also do a script call func base for much easier use for 1 item
-
thanks mate. tested and working. just some modif in server side. anyway thanks thanks.
-
I'm trying to enable the Proxy Support and Cash Shop Preview. proxy.1337 file and ExtendCashShopPreview.1337 file.
-
Here you go bro, I think this link could help: https://github.com/rathena/rathena