Closed GoogleCodeExporter closed 9 years ago
A mercenary for non-alchemist characters can be configured in two ways. The
first is to configure default settings that are most intelligent for the map
you are on. This is more difficult to do, especially when there are many
different kinds of monsters.
For example, when going to kill Goats, I often set a mercenary to simply attack
everything. When it runs into a plant or a harpy, I will move away or teleport
so that it is only killing goats.
A more complicated way is to look at the configuration setting MobIDMode (at
http://code.google.com/p/ro-rail/wiki/StateFileIndex#MobIDMode ). If you set
that to "once" for a Mercenary, it will load the MobIDFile when it starts. This
is more complicated because you will need to generate a MobIDFile with a
homunculus first, or have a friend generate one for you.
To generate a Mob-ID file with the Homunculus, set MobIDMode to "overwrite" and
move to the map you will be using the Mercenary on. Once there, change
MobIDMode to "update" and teleport around the map until you think you've seen
every individual monster there. (It may take minutes). Then after that, backup
the MobID file. When you go onto your character with the mercenary, copy your
backup to the location specified by the mercenary's MobIDFile setting.
Afterward, the mercenary will be able to use ByType for most of the monsters it
sees. Anything that is summoned with a dead-branch, or that was never seen by
the homunculus, will use default settings.
I hope that helps. If anything is not clear, please don't hesitate to ask.
Original comment by faithful...@gmail.com
on 9 Sep 2010 at 7:39
Thanks for the explanation, my thoughts were correct then, however can you
explain how mobID works for servers? that's what is not really clear to me, if
i want to generate a MobIDFile with a homunculus how long do i have to stay in
that map looking at monsters? do MobIDs work as a range (very raw ex. Goats go
from 50000 to 500100)? Because i've used a homun/merc duo once and sometimes
the IDs for the same monster are not the same.
Those are pretty much my doubts right now.
Original comment by Kusanag...@gmail.com
on 9 Sep 2010 at 8:34
Since I've never written a Ragnarok server or client, I can't talk much about
how mob ID works for servers. That said, I assume it's similar to the AI
scripts. Each mob ID is a number that is unique to the map (and potentially all
maps that the server controls; I know that iRO has a few different servers
maintaining various maps. This used to cause loss of buffs when changing
servers, but keeping buffs when changing maps within the same server)
Set-spawn monsters, that appear on a map normally, have a specific ID that does
not change even after it respawns. Summoned monsters (such as DBs and
homunculi) that do not appear normally are assigned a new one-time-use ID until
they die. Players use their account ID and this is static across all
zone-servers in the same service (iRO Valkyrie is a "service" as a cluster of
zone-servers).
There's no defined range on maps. It just depends on how the map was built by
GRAVITY, or maybe how the map was initialized when the server started. The only
way to definitively know which mobID is which type is to view it with a
homunculus. There's no guarantee for any guesses at ranges, because they change
when the server restarts and timed-spawns or monsters off screen may have
different IDs and be placed in the middle of what appears to be a range of
goats, for example.
The type of a single mobID will be different only if the monster changes it's
type before the mercenary reloads the Mob_ID.lua file. (Without Mob_ID.lua,
mercenaries have no way of distinguishing type.) But to prevent the script from
reloading Mob_ID.lua at an insane pace, it only loads it whenever there is a
monster with an unknown type on the screen. In the case that you have seen all
monsters on a server, but they are changing types, the mercenary's information
will be outdated and the logs will show different types for the same monster.
Does that clarify anything for you?
Original comment by faithful...@gmail.com
on 22 Nov 2010 at 5:00
Closing this discussion for now.
Original comment by faithful...@gmail.com
on 4 Dec 2010 at 11:28
Original issue reported on code.google.com by
Kusanag...@gmail.com
on 6 Sep 2010 at 11:54