-
Posts
6 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Posts posted by NightTerror
-
-
[Error]: script error on npc\custom\AleconRO\Monsterinvasion-en.txt line 127 parse_simpleexpr: unmatch ')' 122 : mes "[ ^0C66C0Event Helper^00000 0 ]"; 123 : mes "Please choose your desired map!"; 124 : mes "Obviously, the map has to b e valid."; 125 : next; 126 : do{ //Loop to ensure valid map * 127 : input $@Map$;}while(getmapmobs'( '$@Map$) == -1 ); 128 : break; 129 : Case 3: 130 : 131 : mes "[ ^0C66C0Event Helper^00000 0 ]"; 132 : mes "Which monster do you want t o spawn?";
what is this problem?
Getmapmobs seems to be an outdated function, I'm too lazy to update rathena myself, but try to replace "getmapmobs" with "mobcount". It should work if I understood this right.
-
Introduction:
Hi guys, as it took me hours to finish this script I'm sharing it with the community. It's basically a standard kafra, who warps you to towns or dungeon entrances. However, you must have the required dungeon quests if you want to warp to the corresponding dungeons. It ain't that special, but it still took me some hours to finish it. I hope someone finds it useful.
Features:
- Standard Kafra Functions (Storage, Pushcart, Save Position)
- Extended Warp function considering possible dungeon quests
Downloads:
- 1
- Standard Kafra Functions (Storage, Pushcart, Save Position)
-
Hi guys,
i just wanted to edit the @iteminfo command for my personal needs. Everything went fine, save for the item script.
I changed the code of the function ACMD_FUNC(iteminfo) from this:
for (i = 0; i < count; i++) { item_data = item_array[i]; sprintf(atcmd_output, "Item: '%s'/'%s'[%d] (%d) Type: %s | Extra Effect: %s", item_data->name,item_data->jname,item_data->slot,item_data->nameid, itemdb_typename(item_data->type), (item_data->script==NULL)? "None" : "With script" ); clif_displaymessage(fd, atcmd_output); sprintf(atcmd_output, "NPC Buy:%dz, Sell:%dz | Weight: %.1f ", item_data->value_buy, item_data->value_sell, item_data->weight/10. ); clif_displaymessage(fd, atcmd_output); if (item_data->maxchance == -1) strcpy(atcmd_output, " - Available in the shops only."); else if (item_data->maxchance) sprintf(atcmd_output, " - Maximal monsters drop chance: %02.02f%%", (float)item_data->maxchance / 100 ); else strcpy(atcmd_output, " - Monsters don't drop this item."); clif_displaymessage(fd, atcmd_output); } return 0;
to this:
clif_disp_onlyself_type(sd, "====================================", 3); for (i=0;i<count;i++) { item_data = item_array[i]; sprintf(atcmd_output, "nr"); clif_disp_onlyself_type(sd, atcmd_output,3); if(!item_data->slot) { sprintf(atcmd_output, "[%d] %s / %s",item_data->nameid,item_data->name,item_data->jname); clif_disp_onlyself_type(sd, atcmd_output,3); } else { sprintf(atcmd_output, "[%d] %s / %s[%d]",item_data->nameid,item_data->name,item_data->jname,item_data->slot); clif_disp_onlyself_type(sd, atcmd_output,3); } sprintf(atcmd_output, "Script: %s",item_data->script); clif_disp_onlyself_type(sd, atcmd_output,2); } clif_disp_onlyself_type(sd, "====================================", 3); return 0;
Now if I use the @iteminfo command then I'm getting this result:
As you can see, the script field is just showing weird symbols instead of the actual item script. I already searched the forum for some solutions, but i haven't found anything. I hope you guys can help me with this.
Thanks in advance!
-
Customisable Monster Invasion
Hi everyone, as none of the current available Monster Invasion scripts really satisfied my needs, I decided to make my own one. I got inspired by the "Automated MVP Event" from xMachina / Acetito and Emistry, but wrote all the code myself.
Feature List:
- Parameters are defined via an NPC
- Nice and easy ingame defining of monsters and item reward types and quantitys and the desired Map
- Top Killers are listed and rewared after the event is over
- A logmes is generated with information about the top Killer, his kills, the chosen item reward and the count of previous monster invasions to detect possible abuses.
- Temporarily saves inputs
How to operate:
It's pretty simple, you just talk to the NPC and choose the desired options. You don't have to write monster or Item IDs ingame, you define them in the script. I provided a list of pre-defined monsters and items, if you want to alter it then do the following:
1. Mind the 4 lines after the comment: "//define monsterlist and itemlist", i made two categorys for monsters and items respectively for a better overview.
2. Add the desired item/monster ID to the desired category.
3. For monsters: Go to the function "F_ChooseMob" and extend the respective category list with the monster name (mind the correct order!), for items: search for the lines below the comment: "//Item & Item amount list, sorted like rms does" (I was too lazy to make a separate function out of it D:) and do the same (mind the correct order again).
Example for a not working monster list extension (Marin in this case):
changing setarray $@Monsteridweak[1],1301,1297,1403,1654,1268,1507,1830,1307,1302,1635,1655,1636,1777,1837,1656, 1219,1502,1637,1262,1700,1320,1865,1657,1702,1829,1375,1204,1653,1416,1200,1197; to setarray $@Monsteridweak[1],1301,1297,1403,1654,1268,1507,1830,1307,1302,1635,1655,1636,1777,1837,1656, 1219,1502,1637,1262,1700,1320,1865,1657,1702,1829,1375,1204,1653,1416,1200,1197:1242; and changing set @Monsters[getarg(0)],$@Monsteridweak[select("Am Mut:Ancient Mummy:Firelock Soldier:Armeyer Dinze:Bloody Knight:Bloody Murderer:Bow Guardian:Cat o' Nine Tails:Dark Illusion:Eremes Guile:Errende Ebecee:Howard Alt-Eisen:Ice Titan:Imp:Kavach Icarus:Knight of Abyss:Loli Ruri:Margaretha Sorin:Mutant Dragonoid:Observation:Owl Duke:Ragged Zombie:Laurell Weinder:Retribution:Sword Guardian:The Paper:Tirfing/Ogretooth:Wickebine Tres:Wicked Nymph:Zealotus:Zombie Prisoner")]; to set @Monsters[getarg(0)],$@Monsteridweak[select("Am Mut:Ancient Mummy:Firelock Soldier:Armeyer Dinze:Bloody Knight:Bloody Murderer:Bow Guardian:Cat o' Nine Tails:Dark Illusion:Eremes Guile:Errende Ebecee:Howard Alt-Eisen:Ice Titan:Imp:Kavach Icarus:Knight of Abyss:Loli Ruri:Margaretha Sorin:Marin:Mutant Dragonoid:Observation:Owl Duke:Ragged Zombie:Laurell Weinder:Retribution:Sword Guardian:The Paper:Tirfing/Ogretooth:Wickebine Tres:Wicked Nymph:Zealotus:Zombie Prisoner")]; //This won't work because the monster ID is added to the end on one list, while the monster name is added somewhere in the middle on the other list. The positions of the monster IDs and names have to match.
Example for a working monster list extension (Marin in this case):
changing setarray $@Monsteridweak[1],1301,1297,1403,1654,1268,1507,1830,1307,1302,1635,1655,1636,1777,1837,1656, 1219,1502,1637,1262,1700,1320,1865,1657,1702,1829,1375,1204,1653,1416,1200,1197; to setarray $@Monsteridweak[1],1301,1297,1403,1654,1268,1507,1830,1307,1302,1635,1655,1636,1777,1837,1656, 1219,1502,1637,1262,1700,1320,1865,1657,1702,1829,1375,1204,1653,1416,1200,1197:1242; and changing set @Monsters[getarg(0)],$@Monsteridweak[select("Am Mut:Ancient Mummy:Firelock Soldier:Armeyer Dinze:Bloody Knight:Bloody Murderer:Bow Guardian:Cat o' Nine Tails:Dark Illusion:Eremes Guile:Errende Ebecee:Howard Alt-Eisen:Ice Titan:Imp:Kavach Icarus:Knight of Abyss:Loli Ruri:Margaretha Sorin:Mutant Dragonoid:Observation:Owl Duke:Ragged Zombie:Laurell Weinder:Retribution:Sword Guardian:The Paper:Tirfing/Ogretooth:Wickebine Tres:Wicked Nymph:Zealotus:Zombie Prisoner")]; to set @Monsters[getarg(0)],$@Monsteridweak[select("Am Mut:Ancient Mummy:Firelock Soldier:Armeyer Dinze:Bloody Knight:Bloody Murderer:Bow Guardian:Cat o' Nine Tails:Dark Illusion:Eremes Guile:Errende Ebecee:Howard Alt-Eisen:Ice Titan:Imp:Kavach Icarus:Knight of Abyss:Loli Ruri:Margaretha Sorin:Mutant Dragonoid:Observation:Owl Duke:Ragged Zombie:Laurell Weinder:Retribution:Sword Guardian:The Paper:Tirfing/Ogretooth:Wickebine Tres:Wicked Nymph:Zealotus:Zombie Prisoner:Marin")]; //Although not sorted alphabetically, this will work as both Monster ID and name share the same position in their respective lists in this example.
The script kills all summoned monsters if 5 or less remain, because it's boring if you have to teleport 2000 times to find the last ones.
To change this, go to "if(mobcount($@Map$,strnpcinfo(3)+"::OnMobKill") <=5)" in the script and replace the last number with the desired amount.
Well, have fun with it!
Downloads:
Monsterinvasion - German Version
Monsterinvasion - English Version
Monsterinvasion - Spanish Version
Credits:
BlackScythe, who translated the script to spanish. Thanks very much!
Link to eAthena post:http://www.eathena.w...howtopic=282806
- 1
- Parameters are defined via an NPC
Customisable Monster Invasion Event
in Game, Event, Quest Script Releases
Posted
Sucks to be you I guess?