Bringer
-
Posts
742 -
Joined
-
Last visited
-
Days Won
1
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Posts posted by Bringer
-
-
you can still use the old Soul Linker Mod
sample of Old Codecase CR_SHIELDCHARGE: if (sd && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_CRUSADER) skillratio += 60 * skill_lv; else skillratio += 20 * skill_lv; break;
latest rathena changed the sd->sc.data[SC_SPIRIT] to sd->sc.getSCE(SC_SPIRIT)
new code will beif (sd && sd->sc.getSCE(SC_SPIRIT) && sd->sc.getSCE(SC_SPIRIT)->val2 == SL_CRUSADER)
-
4 hours ago, Tokei said:
The purpose of encrypting the file table is to not be able to see the files anymore. While possible, retrieving the file listing would be... quite counter productive? Perhaps this feature is something you don't want to use as it doesn't seem to fit what your needs.
i still want to give it a try and retrieve it , even if it will not be productive, is it possible because i want to know what its got so i can add as back up
-
3 hours ago, Rynbef said:
Can you please rephrase your question, because I don't understand exactly what you want?
Rynbef~
Make new grf then save advance choose File Encrypt File Table and try to open the grf 100% blank
-
How can I retrieve files when using Encrypt File Table?
-
Status.cpp
case SC_KAAHI: val2 = 200*val1; // HP heal val3 = 5*val1; // SP cost break; case SC_KAITE: val2 = 1+val1/5; // Number of bounces: 1 + skill_lv/5 break; case SC_KAUPE: switch (val1) { case 3: // 33*3 + 1 -> 100% val2++; case 1: case 2: // 33, 66% val2 += 33*val1; val3 = 1; // Dodge 1 attack total. break; default: // Custom. For high level mob usage, higher level means more blocks. [Skotlex] val2 = 100; val3 = val1-2; break;
-
14 hours ago, harold_flood said:
I am also looking for this please
try check this site
https://ronovelty.com/product/rental-offline-vending-system-new-ui/ -
On 3/10/2024 at 9:50 AM, Tero said:
I think you're saying you want an item or card script that can trigger the Wizard's Magical Amplification ability? That's fairly straightforward.
no like this
-
@Tero can you make free src for Wizard have ability goes Critical Magic when using Current item or card weapon? Just like at ROM Eternal Love?
-
missing
skill.hpp -
1 hour ago, IsabelaFernandez said:
Hi guys, I have this custom script and whenever the player enters the Stone Curse state, the @buffs remove command. Is there any solution to not be removing it?
unless you edit your SC_BLESSING on your status.cpp
case SC_BLESSING: // !TODO: Blessing and Agi up should do 1 damage against players on Undead Status, even on PvM // !but cannot be plagiarized (this requires aegis investigation on packets and official behavior) [Brainstorm] if ((!undead_flag && status->race != RC_DEMON) || bl->type == BL_PC) { if (sc->data[SC_STONE] && sc->opt1 == OPT1_STONE) status_change_end(bl, SC_STONE, INVALID_TIMER); if (sc->data[SC_CURSE]) { status_change_end(bl, SC_CURSE, INVALID_TIMER); return 1; // End Curse and do not give stat boost } } if(sc->data[SC_SPIRIT] && sc->data[SC_SPIRIT]->val2 == SL_HIGH) status_change_end(bl, SC_SPIRIT, INVALID_TIMER); break;
- 1
-
14 minutes ago, GM Winter said:
im using item_db.yml already
in that case
https://github.com/rathena/rathena/commit/55d3c1578cc6e9cc925d17f23fbacc8a0bafd8d0
https://github.com/rathena/rathena/commit/7e626708826f9026cb14b062b987d77e14396515 -
5 minutes ago, GM Winter said:
i try it but sadly i cant find this lines in atcommand
your emulator is OLD that's why you can't find the line and
I have reviewed your atcommand.cpp file and noticed that you are still using itemdb.txt Could you please confirm if this is still the case?
if YES
You can select the version that is compatible with your emulator.
-
i'm using 20180621 client too
since my emulator YML Version already but dont have feature.itemlink: on
i commit this
1st
https://github.com/rathena/rathena/commit/55d3c1578cc6e9cc925d17f23fbacc8a0bafd8d0
2nd
https://github.com/rathena/rathena/commit/7e626708826f9026cb14b062b987d77e14396515
I Successfully diff the 2 commit above this YML Version now
and my other emulator older version i use this diff
itemlink-20190319-e6f1f21d.diff
sprintf(atcmd_output2, " %s %02.02f%%", createItemLink(item_data->nameid, 0, NULL).c_str(), mvppercent);
on my Yml Version
sprintf(atcmd_output2, (dropbonus > 0 ? " - %s %02.02f%% + (%02.02f%%)" : " - %s %02.02f%%"), item_db.create_item_link(id).c_str(), (float)droprate / 100, (float)dropbonus / 100);
see the different of the codes
for using item_db.create_item_link
use this link
https://rathena.org/board/topic/133347-i-want-to-modify-mi-to-look-like-the-picture-can-someone-give-me-a-solution-thanks/?do=findComment&comment=414605
Older Emulator
use this Link
https://rathena.org/board/topic/133347-i-want-to-modify-mi-to-look-like-the-picture-can-someone-give-me-a-solution-thanks/?do=findComment&comment=414463 -
post your ACMD_FUNC(mobinfo)
and visit this link
-
18 hours ago, sakura125 said:
Does anyone able to mitigate the Soul Link Modification using the latest git? Can anyone help me mitigate it?
can you post your SL MOD
old Codeif((skill = pc_checkskill(sd,HT_BEASTBANE)) > 0 && (status->race == RC_INSECT || status->race == RC_BRUTE || status->race == RC_PLAYER_DORAM) ) { damage += (skill * 4); if (sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_HUNTER) damage += sd->status.str; }
New Code
if((skill = pc_checkskill(sd,HT_BEASTBANE)) > 0 && (status->race == RC_INSECT || status->race == RC_BRUTE || status->race == RC_PLAYER_DORAM) ) { damage += (skill * 4); if (sd->sc.getSCE(SC_SPIRIT) && sd->sc.getSCE(SC_SPIRIT)->val2 == SL_HUNTER) damage += sd->status.str; }
sd->sc.data[SC_SPIRIT]
Change to
sd->sc.getSCE(SC_SPIRIT)
-
find all SC_CONCENTRATE on status.cpp
case SC_SIGHT: // Reveal hidden ennemy on 3*3 range case SC_CONCENTRATE: status_change_end(bl, SC_HIDING, INVALID_TIMER); status_change_end(bl, SC_CLOAKING, INVALID_TIMER); status_change_end(bl, SC_CLOAKINGEXCEED, INVALID_TIMER); status_change_end(bl, SC_CAMOUFLAGE, INVALID_TIMER); status_change_end(bl, SC_NEWMOON, INVALID_TIMER); status_change_end(bl, SC_STEALTH, INVALID_TIMER);
- 1
-
17 hours ago, friomixx said:
next is for src/map/script.cpp with below error message, can i also ask for help to fix the error?
Error C3861 'itemdb_searchname': identifier not founditem_data = item_db.searchname(item_name)
-
It's okay, guys. I already fixed this a long time ago.
-
Spoiler
- script MVP_EVENT FAKE_NPC,{
OnInit:
// Mobinfo
bindatcmd "walk",strnpcinfo(3)+"::OnSpawn",99,99;
.mob = 20581;
.map$ = "morocc";
.x = 154;
.y = 92;
.respawn_time = 15; // Respawntime in minutes
.percent = 1; // Item drop every x hp percent.// <x, y>..
setarray(.path, 158, 87, 162, 90, 166, 87, 161, 91, 156, 90);// Dropiteminfo
.item = 7227;
.repetition = 30; // How often the item drops per x hp percent
.expiration_time = 1; // Expiration time in minutes
.stack_size = 1; // Stacksize per drop// Buffinfo
.skill_effect = 34; // The id of the buff skill
.skill_effect_value = 0; // The value the skill effect shows, for example when the skill is heal.
.status_effetc_type = SC_BLESSING;
.status_ticks = 240000;
.status_value1 = 10;
.status_value2 = 0;
.status_value3 = 0;
.status_value4 = 0;
// CONFIG END //
.move_count = getarraysize(.path) - 2;
donpcevent("MVP_EVENT::OnBuffcheck");.respawn_time *= 1000 * 60;
.expiration_time *= 60;OnSpawn:
monster(.map$, .x, .y, strmobinfo(1, .mob), .mob, 1);
.gid = $@mobid[0];.curr_pointer = -2;
donpcevent("MVP_EVENT::OnDestinationReached");.@next_drop_percent = 100 - .percent;
.@last_hp_percent = 100;freeloop(1);
while(unitexists(.gid)) {
getunitdata(.gid, .@mvp_data);
.@curr_hp_percent = .@mvp_data[UMOB_HP] * 100 / .@mvp_data[UMOB_MAXHP];if(.@curr_hp_percent == .@last_hp_percent) {
sleep(500);
continue;
}if(.@curr_hp_percent > .@last_hp_percent)
.@next_drop_percent = (.@curr_hp_percent / .percent) * .percent;.@last_hp_percent = .@curr_hp_percent;
if(.@next_drop_percent >= .@curr_hp_percent) {
donpcevent("MVP_EVENT::OnDrop");
.@next_drop_percent -= .percent;
}sleep(500);
}
freeloop(0);sleep(.respawn_time);
donpcevent("MVP_EVENT::OnSpawn");
end;OnDrop:
for(.@i = 0; .@i < .repetition; .@i++) {
getunitdata(.gid, .@mvp_data);
//makeitem(.item, 1, mapid2name(.@mvp_data[UMOB_MAPID]), .@mvp_data[UMOB_X], .@mvp_data[UMOB_Y], 1);
makeitem(.item, .stack_size, mapid2name(.@mvp_data[UMOB_MAPID]), .@mvp_data[UMOB_X] + rand(-8, 8), .@mvp_data[UMOB_Y] + rand(-8, 8), 8);
}end;
OnDestinationReached:
if(!unitexists(.gid)) end;if(.move_count == .curr_pointer)
.curr_pointer = 0;
else
.curr_pointer += 2;unitwalk(.gid, .path[.curr_pointer], .path[.curr_pointer + 1], "MVP_EVENT::OnDestinationReached");
end;OnBuffcheck:
freeloop(1);
while(true) {
addrid(5, 0, .map$);.@item_count = countitem(.item);
if(.@item_count > 0) {
getinventorylist(getcharid(0));
for(.@i = 0; .@i < @inventorylist_count; .@i++) {
if(@inventorylist_id[.@i] == .item && @inventorylist_expire[.@i] == 0) {
delitemidx(@inventorylist_idx[.@i], @inventorylist_amount[.@i]);
break;
}
}for(.@i = 0; .@i < .@item_count; .@i++)
rentitem(.item, .expiration_time);
}if(rentalcountitem(.item) > 0 && getstatus(.status_effetc_type) == 0) {
sc_start4(.status_effetc_type, .status_ticks, .status_value1, .status_value2, .status_value3, .status_value4);
skilleffect(.skill_effect, .skill_effect_value);
}detachrid;
sleep(100);
}
freeloop(0);
}Here my Script @Winterfox
the buffs fuction is Working
how about i have different drops let say
Red Potion,Yellow Potion,OrangePotion,BluePotion,GreenPotion
will it give me different buffs according to item i picked up, is this possible?
and buffs can be stack let say pickup RedPotion Buffs is STR + 10, then i pick again another red potion it will add up and will make it now 20str, till it reach maximum level 10 -
4 hours ago, GM Winter said:
in the future better update your makeitem we got same error i just diff this commit https://github.com/rathena/rathena/commit/2eebafb70330e37dd69a384ce0af52570b4956c2
-
@Winterfox question is possible when they pickup the item players gain Buffs from item and item will be disappear current time ? let say 15mins
buffs only work MAP EVENT ? -
4 hours ago, Winterfox said:
This will make the mob move and allows configuring how often an item is dropped per percent threshold and how often the item is stacked.
The movement is sadly a bit limited. You will have to set several waypoints, for the mob to follow, and the mob will stop permanently when attacked.
I didn't find a fix for the problem of stopping, so I will leave it like this. Maybe someone else can help you fix this issue.100% Working Thank So Much !!
my Custom mob Setup Can Move No Random Walk MVP Knockback Immune Status Immune
4 hours ago, Winterfox said:The movement is sadly a bit limited. You will have to set several waypoints, for the mob to follow, and the mob will stop permanently when attacked.
I didn't find a fix for the problem of stopping, so I will leave it like this. Maybe someone else can help you fix this issue.dMotion = 0
how long it is before the monster/player can move again. Endure is dMotion = 0, obviously. -
10 hours ago, playniks said:
Sir @Bringer just a question. How to make a converted costume be enchantable?
check this https://github.com/llchrisll/rAthena-Scripts/blob/master/requests/costume_enchant.txt
-
11 hours ago, Winterfox said:
- script MVP_EVENT FAKE_NPC,{ OnInit: // Mobinfo .mob = 1159; .map$ = "prontera"; .x = 150; .y = 150; .respawn_time = 15; // Respawntime in minutes .percent = 10; // Item drop every x hp percent. // Dropiteminfo .item = 7959; .amount = 5; OnSpawn: monster(.map$, .x, .y, strmobinfo(1, .mob), .mob, 1); .@gid = $@mobid[0]; getunitdata(.@gid, .@mvp_data); .@max_hp = .@mvp_data[UMOB_MAXHP]; freeloop(1); while(unitexists(.@gid)) { getunitdata(.@gid, .@mvp_data); .@curr_hp_percent = ceil((.@mvp_data[UMOB_HP] * 100 / .@max_hp) - .percent, .percent); if(.@curr_hp_percent == .@last_hp_percent) { sleep(500); continue; } if(.@curr_hp_percent > .@last_hp_percent) .@next_drop_percent = .@curr_hp_percent - .percent; .@last_hp_percent = .@curr_hp_percent; if(.@next_drop_percent >= .@curr_hp_percent) { makeitem(.item, .amount, mapid2name(.@mvp_data[UMOB_MAPID]), .@mvp_data[UMOB_X], .@mvp_data[UMOB_Y], 1); .@next_drop_percent -= .percent; } sleep(500); } freeloop(0); sleep(1000 * 60 * .respawn_time); donpcevent("MVP_EVENT::OnSpawn"); end; }
on my orignal trunk i got this error FIXED ERROR https://github.com/rathena/rathena/commit/2eebafb70330e37dd69a384ce0af52570b4956c2
so test latest rathena is working but
monster just like normal summon
i can request to monster using unitwalk just like on the video monster only WALKING so monster walk only the giving coordinate
1st Respawn.map$ = "new_1-4"; .x = 11; .y = 188;
once summoned monster will move
1st waypoint then 2nd waypoint and so on then repeat until the monster reach last waypoint then repeat again the loop2nd Request
can you make it drop shower? tell say 5x5 ?
Updated Soul Link Modifications for Highrate Server
in Source Requests
Posted
//Nothing stripped. - if( sd && !i ) + if (sd && !i) clif_skill_fail( *sd, skill_id ); + if (sd && tsc && sd->sc.getSCE(SC_SPIRIT) && sd->sc.getSCE(SC_SPIRIT)->val2 == SL_ROGUE) { + int item_id = 7139; // Glistening Coat + int ii; + ARR_FIND(0, MAX_INVENTORY, ii, sd->inventory.u.items_inventory[ii].nameid == item_id); + if (ii < MAX_INVENTORY) { + pc_delitem(sd, ii, 1, 0, 0, LOG_TYPE_CONSUME); + clif_emotion(src, ET_HUK); + } + } break; }