utofaery
-
Content Count
101 -
Joined
-
Last visited
-
Days Won
1
Posts posted by utofaery
-
-
Sir,
What will be the max expandable limit of this expandable Inventory expanding?
-
Yes my script is total mess.
Which is why am posting for help.
Only those don't want to be helped will refuse to ask for it or worst reject it.
But something else comes in my mind.
Curiously...
Why is there got bhatch;
And there hasn't got any breturntoegg; ?
Or could you create something like that too?
Side stuff:
At this time I am using phone to browsing here
But out of curiosity why there is so many guess which outnumbered members which logged in.
-
I have a broken pet egg exchanging old egg to new egg script which need help in fixing.
- script F_PetTrader FAKE_NPC,{ disable_items; getinventorylist; for ( .@i = 0; .@i < @inventorylist_count; ++.@i ) { .@item_type = getiteminfo( @inventorylist_id[.@i], ITEMINFO_TYPE ); if ( .@item_type == IT_PETEGG ) { if ( .petid[ @inventorylist_id[.@i] ] && !.@compare[ @inventorylist_id[.@i] ] ) { .@found[.@c++] = @inventorylist_id[.@i]; .@compare[ @inventorylist_id[.@i] ] = false; } } } .@menu$ = "+&Sort&Count&Item&Name+&^FF0000Quit^000000:"; for ( .@i = 0; .@i < getarraysize(.@found); ++.@i ) { mes getitemname( .@found[.@i] ); .@menu$ += .@i + " " + countitem(.@found[.@i] ) + " " + getitemname(.@found[.@i]) + " :"; dispbottom ( " .@i :: " + .@i + " Count item :: " + countitem(.@found[.@i] ) + " ItemName :: " + getitemname(.@found[.@i]) ) ; } .@i = select(.@menu$)-1; if ( .@i > getarraysize(.@found) ) { dispbottom ( " Dont mess with bug or I bug you! " ) ; close2; end; } else { mes (" .@i " + .@i ); .@EggItemId = .@found[.@i]; .@EggCount = countitem(.@found[.@i] ); if ( .@EggItemId ) { delitem ( .@EggItemId, .@EggCount ) ; makepet ( .@EggItemId ); mes ( " Exchanged :: " + .@EggCount + " of " + .@EggItemId ) ; } else { dispbottom ( " .@EggItemId :: " + .@EggItemId + " .@EggCount :: " + .@EggCount ) ; } } close; OnInit: .@nb = query_sql( "select id from item_db where type & "+( 7 ), .@id ); freeloop true; for ( .@i = 0; .@i < .@nb; ++.@i ) .petid[ .@id[.@i] ] = true; end; }
It is suppose to list what egg in player inventory but always returning poring egg..
sometimes nothing is listed..or 0
somewhere is broken and I failed to find out where
and the .@menu$ part is confusing for me since it's not something I always messing with.
-
.@nb = query_sql( "select id from item_db where equip_locations & "+( EQP_COSTUME_HEAD_TOP|EQP_COSTUME_HEAD_MID|EQP_COSTUME_HEAD_LOW|EQP_COSTUME_GARMENT ), .@id );
Say after collected this list EQP_COSTUME_HEAD_TOP|EQP_COSTUME_HEAD_MID|EQP_COSTUME_HEAD_LOW|EQP_COSTUME_GARMENT
I want to put extra check which exclude some of the item from being listed in the
.@id[.@c++] = @inventorylist_id[.@i];
like putting in an extra check so it doesn't get included in the .@id[.@c++]??
mes getitemname( .@id[.@i] );
then in this part it won't list the excluded "certain item"?
-
2 hours ago, JeanM said:ok, I had seen the question of the bonuses quoted, but I would like it to be temporary, and using these bonuses, I would need to add to the script in a garment and / or shoes item.
would you have any changes you could suggest? my intention at this time would be to create two consumable items "Chemical Protection Shoes Scroll" and "Chemical Protection Garment Scroll" because we originally only have Chemical Armor / Helm / Shield / Weapon.I thank the attention.
Scroll ... cant be done yet unless you create custom SC_ProtectGarment / SC_ProtectShoes.
This can be put into Garment or Shoes or any combo items???
autobonus...
autobonus "{ bonus bUnbreakableGarment,100 }",50,10000,BF_WEAPON,"{ specialeffect(EF_ENHANCE, AREA, playerattached()); }";
on attack has random chance to make garment unbreakable..
-
13 hours ago, AnnieRuru said:prontera,155,185,5 script kjsdhfksjf 1_F_MARIA,{ disable_items; getinventorylist; for ( .@i = 0; .@i < @inventorylist_count; ++.@i ) { .@item_type = getiteminfo( @inventorylist_id[.@i], ITEMINFO_TYPE ); if ( ( .@item_type == IT_WEAPON || .@item_type == IT_ARMOR ) && !@inventorylist_equip[.@i] && !.costumeid[ @inventorylist_id[.@i] ] ) .@id[.@c++] = @inventorylist_id[.@i]; } mes "Equipments found that are not costumes"; if ( !.@c ) { mes "<none>"; close; } mesf "Total -> %d", .@c; for ( .@i = 0; .@i < .@c; ++.@i ) mes getitemname( .@id[.@i] ); close; OnInit: // SQL query to fetch all the costumes .@nb = query_sql( "select id from item_db where equip_locations & "+( EQP_COSTUME_HEAD_TOP|EQP_COSTUME_HEAD_MID|EQP_COSTUME_HEAD_LOW|EQP_COSTUME_GARMENT ), .@id ); // build the 'pointers' to compare later freeloop true; for ( .@i = 0; .@i < .@nb; ++.@i ) .costumeid[ .@id[.@i] ] = true; end; }
I really fix up a lot of other script I have by comparing your script with whatever is in my script folder...
On 2/11/2019 at 3:51 PM, utofaery said:1. How to add exclusion on this script like another array which exclude items from being found?
I guess it's my bad for not explaining this correctly..
on .nb part where it query_sql to fetch all the costumes, can I have another array to
.@arrayA which include a list of item which not to be compared or "found"? from the big list of query_sql?
-
On 2/10/2019 at 6:09 PM, AnnieRuru said:btw, can you get a clean hercules and test on it before posting ?
you make hercules sounds like a crappy emulator because it gives you lots of errorNot really since I am the one not get used to read all those source stuff so anything I change error'ed out on me...
On 2/10/2019 at 2:03 PM, utofaery said:When multiple stormgust cast'ed on the same cell and mapserver keep putting out
[Warning]: skill_unitgrouptickset_search: tickset is full. ( failed for skill 'W
Z_STORMGUST' on unit 2 )does it has something to do with this setting? or should I set it to 31 instead so it don't put any warning of this type?
land_skill_limit: 14 // xsa // 9
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary)My original setting is 14 instead of default 9
say it has a lot to do with it lol.
after I change that 14 to 31 no more tickset warning...
I tested with this script for all the value 9, 14, and 31
only 14 has that error all the time.
Spoilerfunction script F_summonX {
.@x = 30;
for (.@i = 0; .@i < .@x; .@i++ )
atcommand "@summon 1956";
atcommand "@spawn 1502";
return;
}
-
Not my suggestion but forced by microsoft to download that 17763 version of visual studio.
it says i have something missing blablabla and need download a whole package of 8~10 GB of stuff which is so far away from what I intended.
(which is the small visual studio download suggested by someone here and the download size would be (less than 2GB) which opps me out
regarding the heal error
I found it...
original line in skill.c
//xsa if (status->isimmune(bl) || (dstmd != NULL && (dstmd->class_ == MOBID_EMPELIUM || mob_is_battleground(dstmd))))but I make it to this line:
if ( dstmd->class_ == mob_is_battleground(dstmd))//xsaso it crash whenever I try to these skills.
case HLIF_HEAL: // [orn]
case AL_HEAL:
case AB_HIGHNESSHEAL:
case SU_TUNABELLY:but if I change that line to this It's not crashing anymore...
if (status->isimmune(bl) || (dstmd != NULL && (mob_is_battleground(dstmd))))//xsaif (status->isimmune(bl) << how to make heal work on immuned Player (AKA GTB card equipped player) or anything???
-
5 hours ago, Mina-chan said:Hi! Does anyone have any problem with this and Browedit? I've tried to make either of the dowloads work with Browedit 586, 620 and 2, but it doesn't want to. I get messages like this:
Other grfs also don't want to work (updated or not), except for an old one that I have.
Thank u in advance!browedit has not updated since I dont know when
but I think it work perfectly fine with anything 2016 but not after...
-
20 hours ago, AnnieRuru said:EDIT: no longer repeat the costume value
Why and how does it repeat the costume at the first place ?
was it because there is not enough limitation or conditions check that causing the loop then?
and the loop can loop more than once??
because in some cases I have seen
.@i got bigger than .@c in some test
for ( .@i = 0; .@i < .@c; ++.@i )
side note:
for the code box thing could changes be made so that it only run Codebox script after posting?
so it load faster when trying to posting (aka before post is made)
then after the post is made only then it load it's code?
20 hours ago, AnnieRuru said:similar topic ->
and since you want method 3
prontera,155,185,5 script kjsdhfksjf 1_F_MARIA,{ disable_items; getinventorylist; for ( .@i = 0; .@i < @inventorylist_count; ++.@i ) { if ( .costumeid[ @inventorylist_id[.@i] ] && !.@compare[ @inventorylist_id[.@i] ] ) { .@found[.@c++] = @inventorylist_id[.@i]; .@compare[ @inventorylist_id[.@i] ] = true; } } if ( !.@c ) { mes "no costume found on your character"; close; } mesf "%d custome found on your character", .@c; for ( .@i = 0; .@i < .@c; ++.@i ) mes getitemname( .@found[.@i] ); close; OnInit: // SQL query to fetch all the costumes .@nb = query_sql( "select id from item_db where equip_locations & "+( EQP_COSTUME_HEAD_TOP|EQP_COSTUME_HEAD_MID|EQP_COSTUME_HEAD_LOW|EQP_COSTUME_GARMENT ), .@id ); // build the 'pointers' to compare later freeloop true; for ( .@i = 0; .@i < .@nb; ++.@i ) .costumeid[ .@id[.@i] ] = true; end; }
1. How to add exclusion on this script like another array which exclude items from being found?
-
5 minutes ago, AnnieRuru said:I need to test this, if this is true, this really save a lot of time ...
by the way, isn't this will make the emulator bug ? because our code isn't intended to be coded this way
Nah all this time
I am on window 7 Enterprise ultimate x32<<EDIT
with visual studio 2017 and let the installer which downloaded from microsoft download all the package itself which resulted in 8~10GB total size
and then when try to compile visual studio says retarget project or nothing...
so I retarget ok build solution done. ... nothing happen lol. except where I did source edit which resulted heal(28) not working...
The only sad thing about hercules is development is slowish compare to rathena
but rathena is a ship with lots of hole and slow speed...
-
First off don't get mad to link from rathena:
https://rathena.org/board/topic/118192-on-checking-array-items-infinite-loop/
This is the test case I try to redo the thing but it's gotten into loop again and again.
Don't get mad at me for not understanding this stuff. I always ask things till I get it.
Spoiler
function script F_testarraycompare {
setarray ( .@costumes[getarraysize(.@costumes)] ,
19500, 19501, 19502, 19503, 19504, 19505, 19506, 19507, 19508, 19509, 19510, 19511, 19512, 19513, 19514,
19515, 19516, 19517, 19518, 19519, 19520, 19521, 19522, 19523, 19524, 19525, 19526, 19527, 19528, 19529,
19530, 19531, 19532, 19533, 19534, 19535, 19536, 19537, 19538, 19539, 19540, 19541, 19542, 19543, 19544,
19545, 19546, 19547, 19548, 19549, 19550, 19551, 19552, 19553, 19554, 19555, 19556, 19557, 19558, 19559,
19560, 19561, 19562, 19563, 19564, 19565, 19566, 19567, 19568, 19569, 19570, 19571, 19572, 19573, 19574,
19575, 19576, 19577, 19578, 19579, 19580, 19581, 19582, 19583, 19584, 19585, 19586, 19587, 19588, 19589,
19590, 19591, 19592, 19593, 19594, 19595, 19596, 19597, 19598, 19599, 19600, 19601, 19602, 19603, 19604,
19605, 19606, 19607, 19608, 19609, 19610, 19611, 19612, 19613, 19614, 19615, 19616, 19617, 19618, 19619,
19620, 19621, 19622, 19623, 19624, 19625, 19627, 19628, 19629, 19630, 19631, 19632, 19633, 19634, 19635,
19636, 19637, 19638, 19639, 19640, 19641, 19642, 19643, 19644, 19645, 19646, 19647, 19648, 19649, 19650,
19651, 19652, 19653, 19654, 19655, 19656, 19657, 19658, 19659, 19660, 19661, 19662, 19663, 19664, 19665,
19666, 19667, 19668, 19669, 19670, 19671, 19672, 19673, 19674, 19675, 19676, 19677, 19678, 19679, 19680,
19681, 19682, 19683, 19684, 19685, 19686, 19687, 19688, 19689, 19690, 19691, 19692, 19693, 19694, 19695,
19696, 19697, 19698, 19699, 19700, 19701, 19702, 19703, 19704, 19705, 19706, 19707, 19708, 19709, 19710,
19711, 19712, 19713, 19714, 19715, 19716, 19717, 19718, 19719, 19720, 19721, 19722, 19723, 19724, 19725,
19726, 19727, 19728, 19729, 19730, 19731, 19732, 19733, 19734, 19735, 19736, 19737, 19738, 19739, 19741,
19740, 19742, 19743, 19744, 19745, 19746, 19747, 19748, 19749, 19750, 19751, 19752, 19753, 19754, 19755,
19756, 19757, 19758, 19759, 19760, 19761, 19762, 19763, 19764, 19765, 19767, 19766, 19768, 19769, 19770,
19771, 19772, 19773, 19774, 19775, 19776, 19777, 19778, 19779, 19780, 19781, 19782, 19783, 19784, 19785,
19786, 19787, 19788, 19789, 19790, 19791, 19792, 19793, 19794, 19795, 19796, 19797, 19798, 19799, 19800,
19801, 19802, 19803, 19804, 19805, 19806, 19807, 19808, 19809, 19810, 19811, 19812, 19813, 19814, 19815,
19816, 19817, 19818, 19819, 19820, 19821, 19822, 19823, 19824, 19825, 19826, 19827, 19828, 19829, 19830,
19831, 19832, 19833, 19834, 19835, 19836, 19837, 19838, 19839, 19840, 19841, 19842, 19843, 19844, 19845,
19846, 19847, 19848, 19849, 19850, 19851, 19852, 19853, 19854, 19855, 19856, 19857, 19858, 19859, 19860,
19861, 19862, 19863, 19864, 19865, 19866, 19867, 19868, 19869, 19870, 19871, 19872, 19873, 19874, 19875,
19876, 19877, 19878, 19879, 19880, 19881, 19882, 19883, 19884, 19885, 19886, 19887, 19888, 19889, 19890,
19891, 19892, 19893, 19894, 19895, 19896, 19897, 19898, 19899, 19900, 19901, 19902, 19903, 19904, 19905,
19906, 19907, 19908, 19909, 19910, 19911, 19912, 19913, 19914, 19915, 19916, 19917, 19918, 19919, 19920,
19921, 19922, 19923, 19924, 19925, 19926, 19927, 19928, 19929, 19930, 19931, 19932, 19934, 19935, 19936,
19937, 19938, 19939, 19940, 19941, 19942, 19943, 19944, 19945, 19946, 19947, 19949, 19950, 19951, 19952,
19953, 19954, 19955, 19956, 19957, 19958, 19959, 19960, 19961, 19962, 19963, 19964, 19965, 19966, 19967,
19968, 19969, 19970, 19971, 19972, 19973, 19974, 19975, 19976, 19977, 19978, 19979, 19980, 19981, 19982,
19983, 19984, 19985, 19986, 19987, 19988, 19989, 19990, 19991, 19992, 19993, 19994, 19996, 19997, 19998,
19999, 20000, 20001, 20002, 20003, 20004, 20005, 20006, 20007, 20008, 20009, 20010, 20011, 20012, 20013,
20014, 20015, 20016, 20017, 20018, 20019, 20020, 20021, 20022, 20023, 20024, 20025, 20026, 20027, 20028,
20029, 20030, 20031, 20032, 20033, 20034, 20035, 20036, 20037, 20038, 20039, 20040, 20041, 20042, 20043,
20044, 20045, 20046, 20047, 20048, 20049, 20050, 20051, 20052, 20053, 20054, 20055, 20056, 20057, 20058,
20059, 20060, 20061, 20062, 20063, 20064, 20065, 20066, 20067, 20068, 20069, 20070, 20071, 20073, 20074,
20075, 20076, 20077, 20078, 20079, 20080, 20081, 20082, 20083, 20084, 20085, 20086, 20087, 20088, 20089,
20090, 20091, 20092, 20093, 20094, 20095, 20096, 20097, 20098, 20099, 20100, 20101, 20102, 20103, 20104,
20105, 20106, 20107, 20108, 20109, 20110, 20111, 20112, 20113, 20114, 20115, 20116, 20117, 20118, 20119,
20120, 20121, 20122, 20123, 20124, 20125, 20126, 20127, 20128, 20129, 20130, 20131, 20132, 20133, 20134,
20135, 20136, 20137, 20138, 20139, 20140, 20141, 20142, 20143, 20144, 20145, 20146, 20147, 20148, 20149,
20150, 20151, 20152, 20153, 20154, 20155, 20156, 20157, 20158, 20159, 20160, 20161, 20162, 20163, 20164,
20165, 20166, 20167, 20168, 20169, 20170, 20171, 20172, 20173, 20174, 20175, 20176, 20177, 20178, 20179,
20180, 20181, 20182, 20183, 20184, 20185, 20186, 20187, 20188, 20189, 20190, 20191, 20192, 20193, 20194,
20195, 20196, 20197, 20198, 20199, 20200, 20201, 20202, 20203, 20204, 20205, 20206, 20207, 20208, 20209,
20210, 20211, 20212, 20213, 20214, 20215, 20216, 20217, 20218, 20219, 20220, 20221, 20222, 20223, 20224,
20225, 20226, 20227, 20228, 20229, 20230, 20231, 20232, 20233, 20234, 20235, 20236, 20237, 20238, 20239,
20240, 20241, 20242, 20243, 20244, 20245, 20246, 20247, 20248, 20249, 20250, 20251, 20252, 20253, 20254,
20255, 20256, 20257, 20258, 20259, 20260, 20262, 20263, 20264, 20265, 20266, 20267, 20268, 20269, 20270,
20271, 20272, 20273, 20274, 20277, 20278, 20279, 20280, 20281, 20282, 20283, 20284, 20285, 20286, 20287,
20288, 20291, 20292, 20293, 20294, 20295, 20296, 20297, 20298, 20299, 20300, 20301, 20302, 20303, 20304,
20307, 20311, 20312, 20313, 20314, 20315, 20316, 20317, 20318, 20319, 20320, 20321, 20322, 20323, 20324,
20325, 20326, 20327, 20328, 20329, 20330, 20331, 20332, 20333, 20334, 20335, 20338, 20339, 20340, 20341,
20342, 20345, 20346, 20347, 20348, 20349, 20350, 20351, 20352, 20353, 20354, 20355, 20356, 20357, 20358,
20359, 20360, 20361, 20362, 20363, 20364, 20365, 20366, 20367, 20368, 20369, 20370, 20371, 20372, 20373,
20374, 20375, 20376, 20377, 20378, 20379, 20380, 20381, 20382, 20383, 20384, 20386, 20392, 20393, 20394,
20396, 20397, 20398, 20399, 20400, 20401, 20402, 20403, 20404, 20405, 20406, 20407, 20408, 20409, 20416,
20417, 20418, 20419, 20420, 20421, 20422, 20423, 20424, 20425, 20426, 20427, 20428, 20429, 20430, 20431,
20432, 20433, 20434, 20435, 20436, 20437, 20438, 20439, 20440, 20441, 20442, 20446, 20447, 20448, 20449,
20450, 20451, 20452, 20455, 20456, 20458, 20457, 20459, 20460, 20461, 20462, 20463, 20464, 20465, 20466,
20467, 20468, 20470, 20476, 20481, 20482, 20483, 20484, 20485, 20486, 20487, 20488, 20489, 20490, 20491,
20492, 20495, 20496, 20497, 20498, 20499, 20500, 20502, 20504, 20506, 20507, 20508, 20509, 20510, 20511,
20512, 20514, 20515, 20516, 20517, 20530, 20533 ) ;disable_items;
getinventorylist;
for ( .@x = 0; .@x < getarraysize(@inventorylist_count); ++.@x ) {
for ( .@y = 0; .@y < getarraysize(.@costumes); ++.@y ) {
if ( @inventorylist_id[.@x] == .@costumes[.@y] ) {
dispbottom ( " Found item :: " + @inventory_id[.@x] ) ;
.@i++;
}
.@z++;
}
}
dispbottom ( " .@x :: " + .@x ) ;
dispbottom ( " .@y :: " + .@y ) ;
dispbottom ( " .@z :: " + .@z ) ;
dispbottom ( " .@i :: " + .@i ) ;
return;
} -
9 hours ago, AnnieRuru said:download visual studio, 1 day ...
hercules need Windows 10 SDK 10.0.15063 ... download 1 day ...
rathena need Windows 8.1 SDK ... download another 1 day...I don't know if you realise this.
You could retarget project even if you are not on
Windows 10 SDK 10.0.15063
Windows 8.1 SDK
I used 10.0.17763.0
and retarget project by rightclicking solution in solution explorer.
function ok I think even in newer version of sdk
for both rathena and hercules (retarget)
and about download speed
Do make use of internet download manager ...
it's like "@speed 0" compare to normal way of download which is "@speed 100"
it shorten download time by at least 75% if you use it.
13 hours ago, AnnieRuru said:compare windows to linux ... of course linux better ...
to be honest, I'm the only hercules staff member using windows, all other staff members use linuximgur ... no ... if I make this topic fully load with screenshots, it eats lots of bandwidth
Nah I would not agree only developer grade or someone pro on source code stuff love linux more
even when linux has nice and improved desktop environment the keyboard shortcut are all different if you are above pro window user you hate it
(it's like your kitchen stuff is not where it should be and you need to learn or find them when you need them)
13 hours ago, AnnieRuru said:How did I learn to ride bicycle ?
my father rent a bicycle and I ride on it while I was 7~8 years old,
nobody push at the back, no book, no guide, straight on to the real thing, fell a few times
... typical chinese teaching method ... yes I'm chineseEDIT: yes, how the chinese children learn how to swim -> throw them into the water
that's why western culture thinks chinese are child abuseI guess same here dah
Westerner try to judge asian people's way to teach kid...sick and bad
When I got the chance to learn to ride motorcycle I had nobody to teach me nothing
all the adult say is keep your balance and hold on to the speed...including fall and break the bone.
forgotten this:
You should include the internet download manager into the guide too
it helps with download speed with anything bigger than 500MB
-
3 hours ago, AnnieRuru said:apply patch failed, sorry can't help. You are on your own on this one
k
The down side is Only player can't play or use Heal(28) and some unknown crashy stuff...
any way thanks for helping though.
-
1 hour ago, lllaaazzz said:1
Because. .. Sure i can add another skill but theres very little point when you can barely get special effects to look good on it, i can use specialeffect function but theres no point when i can just edit the existing skills the give the illusion of real skills instead of my work around of making damage DoT with misc damage 1, could do that but aoe skills are still wonky and cast on all targets, so even if i just use the BF_MAGIC function and just call ignition break, its still broken cause it casts on every target + it wont even cast if mobs arent in my vicinity so that just makes it look really ugly. . . so thats why im trying to edit an existing skill. rather then just making a new skill that does the same thing.
specialeffects works rather well with non damaging skills though
2
But if daddy cant fix this ill just have to use tab 1 + etc and go with plan d)
1.
In the ancient age where everyone is still crawling around "eathena" which died out already,
I ask a question, can we get something like Skill_avail.txt just like mob_avail.txt?
and no answer or it's too complicated to do...
I guess it's hard since skill are tied to source or what's not then..
2. I see 2 way you could go from where you are right now.
It would do you good if you would choose "plan D", since this "Plan C" of yours are currently dying.
But if you do insist use custom skill way to implement it downside are you gonna have to do your own graphic for the "custom skill" (really cool sprite to showoff somehow)
-
1 hour ago, AnnieRuru said:5 yes
6. item_db2.conf
{ Id: 39999 AegisName: "Jellopy__" Name: "Jellopy__" Buy: 6 Weight: 10 BuyingStore: true Sprite: 909 },
5 because your answer simply is a single yes so i take it both can which is
setarray #name[.@i] , blablabla
setarray #name$[.@i] , blablablacan be done.
and sql CREATE something blablabal?
6 means only need this line only?
Sprite: 909
2
land_skill_limit: 14 // xsa // 9 < this is in config files
and tested with @summon 1956 atleast 30 of them
against target with really high hp about 7m and all 1956 casted aoe spell
(multiple stormgust and meteorstorm) at the target like 10 minimum count of aoe spell on cell where target is at.
then map server spit up alot of these ...
[Warning]: skill_unitgrouptickset_search: tickset is full. ( failed for skill 'W
Z_STORMGUST' on unit 2 )1.
then it's weird last time it need me go to change every file but not import folder to take effect...
3
One simple question:
does array start with -1 or 0?
sometime it return 0 sometime -1
confusing...
-
41 minutes ago, AnnieRuru said:why you start your topic by saying NOT using bindatcmd, but then 2nd post says want to use bindatcmd ?
if using script way WITHOUT using bindatcmd, then its impossibleMay be high on coffee or something lol
any way thanks for that script haven't test it yet.
-
Have you search through this file already ??
Ragnarok\data\luafiles514\lua files\skillinfoskilltreeview.lub << this is the reason if it's not the server doing it.
skillinfo_f.lub << and this is the script from the client doing the showing skill position << check it out...
9 hours ago, utofaery said:Hercules\db\re\skill_tree.conf
Follow through this and test again:
The reason I suggest you to go through the links is because it would be easier to add new skill lol.
Skill are unique stuff not like mob can be avail'ed although hercules I have not found item_avail.txt.
-
short questions first then long long question...
4.
Why @summon'ed white plant or any thing can move but not
@summon 2042 (SilverSniper) or
@summon 1511 (Amon ra)
can't move at all?in eathena amonra moves if summon ( if memory serves me correctly or was it otherwise. )
5.
in cases of storing arrays of Item Id from getinventorylist.
can we make use of permanent player variable to store that array??
or should I create a custom sql table for that purpose?
6
have item avail gone from hercules?
1.tested multiple times on gunslinger against pupa...
Hercules\conf\map\battle\battle.conf
arrow_decrement: 0 << edits inside here works no using up any ammunitions of any kindHercules\conf\import\battle.conf
arrow_decrement: 0 << edits inside here NOT working at all??? ammunitions decreasing...so question is does the import folder of hercules actually working at all??
entries on Hercules\conf\map\battle.conf is unchanged.
another case
bow_unequip_arrow: false // xsa // true
Setting placed in Hercules\conf\import\battle.conf no read
but if place in Hercules\conf\map\battle\items.conf it got read and effectiveso how hercules import folder actually works for battle.conf?
don't know if other files in import folder behaves like this or not.
2.When multiple stormgust cast'ed on the same cell and mapserver keep putting out
[Warning]: skill_unitgrouptickset_search: tickset is full. ( failed for skill 'W
Z_STORMGUST' on unit 2 )does it has something to do with this setting? or should I set it to 31 instead so it don't put any warning of this type?
land_skill_limit: 14 // xsa // 9
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary)3
I have script like this:
How do I check if getarg(1) == empty or null
which is suppose to be filled as .x1 but it's not filled (which is intended)Spoiler- script IT_ArrayCentral FAKE_NPC,{
OnInit:
setarray .x0[0], x, y, z;
setarray .x1[0], x, y, z;
end;
}called from another npc
callfunc ( "F_xTestArrayinfunction",.x0 ) ; // filled getarg(0) but not filling getarg(1)function script F_xTestArrayinfunction {
if ( getarg ( 0 ) == 0 ) { // How do I make proper check here?? if getarg(0) is filled or not filled? (especially array)
dispbottom ( " arguement 0 is 0 " ) ; // << This shows up but not the else'd dispbottom why??
} else {
dispbottom ( " Array 0 :: size :: " + getarraysize(getvariableofnpc( getarg(0) , "IT_ArrayCentral" ) ) ) ; // << This is expected to show up but it's not.
}
if ( getarg ( 1 ) == 0 ) {
dispbottom ( " arguement 1 is 0 " ) ;
} else {
dispbottom ( " Array 1 :: size :: " + getarraysize(getvariableofnpc( getarg(1) , "IT_ArrayCentral" ) ) ) ;
}
return;
}
-
20 hours ago, lllaaazzz said:Any ideas?
Hercules\db\re\skill_tree.conf
Follow through this and test again:
-
Is there script way ?? apart from @mobsearch?
-
#include "common/hercules.h" #include "map/pc.h" #include "common/HPMDataCheck.h" HPExport struct hplugin_info pinfo = { "getstoragelist", SERVER_TYPE_MAP, "x_O", HPM_VERSION, }; BUILDIN(getstoragelist) { struct map_session_data *sd = script->rid2sd(st); char card_var[SCRIPT_VARNAME_LENGTH]; int i = 0, j = 0, k = 0; if ( sd == NULL ) return true; for ( i = 0; i < VECTOR_LENGTH(sd->storage.item); i++ ) { pc->setreg( sd, reference_uid( script->add_variable("@storagelist_id"), j ), VECTOR_INDEX(sd->storage.item, i).nameid ); pc->setreg( sd, reference_uid( script->add_variable("@storagelist_amount"), j ), VECTOR_INDEX(sd->storage.item, i).amount ); pc->setreg( sd, reference_uid( script->add_variable("@storagelist_refine"), j ), VECTOR_INDEX(sd->storage.item, i).refine ); pc->setreg( sd, reference_uid( script->add_variable("@storagelist_identify"), j ), VECTOR_INDEX(sd->storage.item, i).identify ); pc->setreg( sd, reference_uid( script->add_variable("@storagelist_attribute"), j ), VECTOR_INDEX(sd->storage.item, i).attribute ); for ( k = 0; k < MAX_SLOTS; k++ ) { sprintf( card_var, "@storagelist_card%d", k +1 ); pc->setreg( sd, reference_uid( script->add_variable(card_var), j ), VECTOR_INDEX(sd->storage.item, i).card[k]); } pc->setreg( sd, reference_uid(script->add_variable("@storagelist_expire"), j ), VECTOR_INDEX(sd->storage.item, i).expire_time); pc->setreg( sd, reference_uid(script->add_variable("@storagelist_bound"), j ), VECTOR_INDEX(sd->storage.item, i).bound); for ( k = 0; k < MAX_ITEM_OPTIONS; k++ ) { sprintf( card_var, "@storagelist_opt_id%d", k + 1 ); pc->setreg(sd, reference_uid(script->add_variable(card_var), j), VECTOR_INDEX(sd->storage.item, i).option[k].index); sprintf( card_var, "@storagelist_opt_val%d", k + 1 ); pc->setreg(sd, reference_uid(script->add_variable(card_var), j), VECTOR_INDEX(sd->storage.item, i).option[k].value); sprintf( card_var, "@storagelist_opt_param%d", k + 1 ); pc->setreg(sd, reference_uid(script->add_variable(card_var), j), VECTOR_INDEX(sd->storage.item, i).option[k].param); } j++; } pc->setreg( sd, script->add_variable("@storagelist_count") , j ); return true; } HPExport void plugin_init (void) { addScriptCommand( "getstoragelist", "", getstoragelist ); } // src/plugins/xGetStorageList.c #include "common/hercules.h" #include "map/pc.h" #include "common/HPMDataCheck.h" HPExport struct hplugin_info pinfo = { "maxbaselv", SERVER_TYPE_MAP, "x_O", HPM_VERSION, }; BUILDIN(maxbaselv) { struct map_session_data *sd = script->rid2sd(st); if ( sd == NULL ) return true; script_pushint( st, pc->maxbaselv(sd) ); return true; } BUILDIN(maxjoblv) { struct map_session_data *sd = script->rid2sd(st); if ( sd == NULL ) return true; script_pushint( st, pc->maxjoblv(sd) ); return true; } HPExport void plugin_init (void) { addScriptCommand( "maxbaselv", "", maxbaselv ); addScriptCommand( "maxjoblv", "", maxjoblv ); } // src/plugins/xMaxLvlCheck.c
The 2 plugins.
Mobbranch.txt << need seperate it.
db/mob_customMVP.txt
db/mob_customNormal.txtUnversioned files are not here,
or do I need to pack them up as zip???
-
Spoiler- script BmapMobList -1,{ OnInit: bindatcmd "mapmoblist2", strnpcinfo(0)+"::Onaaa"; end; Onaaa: if ( .@atcmd_numparameters ) { if ( getmapusers(.@atcmd_parameters$) == -1 ) { dispbottom "Map not exist"; end; } .@map$ = .@atcmd_parameters$; } else .@map$ = strcharinfo(3); .@size = getunits( BL_MOB, .@bl, false, .@map$ ); freeloop true; for ( .@i = 0; .@i < .@size; ++.@i ) { .@string$ = rid2name(.@bl[.@i]); if ( !getd(".@"+ .@string$) ) { .@mobname$[.@c] = .@string$; getmapxy .@map$, .@x, .@y, UNITTYPE_MOB, .@bl[.@i]; .@mobx[.@c] = .@x; .@moby[.@c] = .@y; .@mobhp[.@c] = getunitdata( .@bl[.@i], UDT_HP ); .@mobmaxhp[.@c] = getunitdata( .@bl[.@i], UDT_MAXHP ); ++.@c; } setd ".@"+ .@string$, getd(".@"+ .@string$) +1; } dispbottom " === These are monsters in "+ .@map$ +" ==="; for ( .@i = 0; .@i < .@c; ++.@i ) if ( getd(".@"+ .@mobname$[.@i]) ) dispbottom ( ++.@j )+". "+ .@mobname$[.@i] +" : "+ getd(".@"+ .@mobname$[.@i])+"x"; if ( getgmlevel() < 99 ) end; // Hercules doesn't catch dead monsters as being alive dispbottom " === Location of unique monsters === "; for ( .@i = 0; .@i < .@c; ++.@i ) if ( getd(".@"+ .@mobname$[.@i]) == 1 ) dispbottom .@mobname$[.@i] +" --> X = "+ .@mobx[.@i] +" Y = "+ .@moby[.@i] +" | Hp left = "+ .@mobhp[.@i] +"/"+ .@mobmaxhp[.@i]; end; }
I found this script
1. I hope to know how do I make a script to check for only a specific monster count from script without use bindatcmd?
like directly check for specific monster count in a map but not other monster on the same map. -
Unhandled exception thrown: read access violation.
**dstmd** was nullptr. occurredThis happen'd when I use Heal skill (28) on any target.
Spoiler'map-server.exe' (Win32): Loaded 'C:\Users\Rio\Desktop\Hercules\map-server.exe'. Symbols loaded.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\ntdll.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\kernel32.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\KernelBase.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\ws2_32.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\msvcrt.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\rpcrt4.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\nsi.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Users\Rio\Desktop\Hercules\libmysql.dll'. Module was built without symbols.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\wsock32.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\advapi32.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\sechost.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Users\Rio\Desktop\Hercules\zlib1.dll'. Module was built without symbols.
'map-server.exe' (Win32): Loaded 'C:\Users\Rio\Desktop\Hercules\pcre3.dll'. Module was built without symbols.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\user32.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\gdi32.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\lpk.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\usp10.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\cryptsp.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\rsaenh.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\cryptbase.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\imm32.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\msctf.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\api-ms-win-core-synch-l1-2-0.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\nlaapi.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\NapiNSP.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\pnrpnsp.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\mswsock.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\dnsapi.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\winrnr.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\IPHLPAPI.DLL'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\winnsi.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\FWPUCLNT.DLL'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\rasadhlp.dll'. Cannot find or open the PDB file.
'map-server.exe' (Win32): Loaded 'C:\Users\Rio\Desktop\Hercules\plugins\HPMHooking_map.dll'. Symbols loaded.
'map-server.exe' (Win32): Loaded 'C:\Users\Rio\Desktop\Hercules\plugins\mapcache.dll'. Symbols loaded.
'map-server.exe' (Win32): Loaded 'C:\Users\Rio\Desktop\Hercules\plugins\xGetStorageList.dll'. Symbols loaded.
'map-server.exe' (Win32): Loaded 'C:\Users\Rio\Desktop\Hercules\plugins\xMaxLvlCheck.dll'. Symbols loaded.
'map-server.exe' (Win32): Loaded 'C:\Windows\System32\WSHTCPIP.DLL'. Cannot find or open the PDB file.
The thread 0x2ca8 has exited with code 0 (0x0).
Unhandled exception thrown: read access violation.
**dstmd** was nullptr.
H>why did it spitting this out???
in Script Support
Posted
As we know that Thursday is emperium war day...
on server start map server spiting multiple error of these few lines may be 30 or more time.
[Error]: script_rid2sd: fatal error ! player not attached!
[Debug]: Function: strcharinfo (1 parameter):
[Debug]: Data: constant name='PC_MAP' value=3
[Debug]: Source (NPC): testflag at guild_vs2 (52,52)
[Status]: NPC_Event:[OnAgitStart] Run (49) Events by @AgitStart. << and then it ends here..