10-02-2013, 09:20 PM
Mesh Markers are used to pass additional behavior information to the bot when running on a navmesh. Without mesh markers, the bot reverts to simple, randomized behavior and lacks intelligence to perform actions such as gathering a specific item, using a specific bait for fishing, or staying in a specific area for grinding. This tutorial will explain how to setup mesh markers and their intended use for each botting mode. Mesh marker information will be saved in a "mesh.info" file corresponding to your mesh name in the /Navigation directory. This file should be distributed with your mesh if you want other users to have access to your marker information.
Setup
Mesh Markers should be created after proper creation and saving of a NavMesh (see the Meshing tutorial for further information). The bot can only create markers at positions that are on the nav mesh; since the nav mesh positions are not available until the mesh has been saved and reloaded, you must save your current navmesh and wait for it to reload before attempting to place a marker. If you do not follow this step properly then the console will display an error message informing you of your lack of attention to detail.
In order to place a marker, open the "Markers" group in the MeshManager. This group contains the following controls:
When naming your marker, consider the fact that marker names are unique across all marker types. This means that if you create a marker "test1" as a botany marker and then attempt to create another marker "test1" as a grind marker, an error will be displayed in the console and the new marker will not be created. However, if the marker is of the same type and you re-"add" it with new information then the marker data will be updated appropriately.
For marker levels, the bot will use markers that are +/- 5 of its current job level for each activity if you do not have "Ignore Marker Lvl" enabled. This allows you to create a single large mesh and tailor it for multiple jobs/levels since the bot will only go to areas of the mesh that you've specified are "safe" for it. You can have markers for every activity and every level on the same mesh and distribute it to others to use for their characters of different level also.
Select Closest Marker and Move To Marker are setup/debugging tools so that you can determine exactly where your markers are at any time and even automate moving to them for testing purposes.
Grind Marker
Grind markers tell the bot which areas of the bot are safe to kill monsters in based on its current level. The bot will spend a random amount of time in the vicinity of each grind marker killing monsters before moving on to the next marker. If you have fate grinding enabled, the bot will go to a fate when it is available and then return to the current marker when the fate is completed. If you have no grind markers on your mesh then the bot will pick a random spot to grind in.
Botany/Mining Marker
Gathering markers are used to give the bot a general vicinity to gather in for a specified amount of time and to tell it which items to gather when interacting with a node in that vicinity. You can use them to tailor your gathering exactly the way you want it. They also provide a mechanism to move the bot across a large mesh since otherwise the bot will sit in one area gathering forever due to the fact that nodes respawn so quickly. See the gathering tutorial for more information on using markers with the Gather Manager for advanced gathering functionality. Without markers, the bot will revert to simply gathering whatever is available in the vicinity and choosing a random item that has > 50% chance of success.
Fishing Marker
Similar to gathering markers, fishing markers tell the bot where valid fishing spots are for the "fishing" mode. Fishing markers also allow you to specify which bait will be used when fishing at that particular location. When placing fishing markers attempt to place them as far on the edge of the mesh (over the water) as possible and remember that the bot will face whichever direction you are facing when you place the marker. This means that if you are facing any direction that does not currently allow fishing when you place the marker then the bot will not be able to fish from this location either. Without markers, the bot will simply attempt to fish at its current position with its currently selected bait forever.
Setup
Mesh Markers should be created after proper creation and saving of a NavMesh (see the Meshing tutorial for further information). The bot can only create markers at positions that are on the nav mesh; since the nav mesh positions are not available until the mesh has been saved and reloaded, you must save your current navmesh and wait for it to reload before attempting to place a marker. If you do not follow this step properly then the console will display an error message informing you of your lack of attention to detail.
In order to place a marker, open the "Markers" group in the MeshManager. This group contains the following controls:
- Selected Marker: This drop down allows you to select a marker on your mesh after it has been created in order to view/update the data or delete it
- Marker Name: This is the identifier for your marker and will be available for selection in the gather manager (see gathering tutorial for more information)
- Marker Level: This value determines which markers the bot will use when "Ignore Marker Lvl" is disabled for each bot mode
- Select Closest Marker: This selects the closest marker to your currrent position in the dropdown menu and displays its information
- Move To Marker: This moves your character to your currently selected marker
- Add XXX Marker: These controls add a marker of the specified type with the displayed values for name/level to the marker list. If the marker name is the same as a marker that already exists than the marker information will be updated with the current position/level if the marker type is the same
- Delete Selected Marker: Deletes the marker currently selected in the dropdown menu
When naming your marker, consider the fact that marker names are unique across all marker types. This means that if you create a marker "test1" as a botany marker and then attempt to create another marker "test1" as a grind marker, an error will be displayed in the console and the new marker will not be created. However, if the marker is of the same type and you re-"add" it with new information then the marker data will be updated appropriately.
For marker levels, the bot will use markers that are +/- 5 of its current job level for each activity if you do not have "Ignore Marker Lvl" enabled. This allows you to create a single large mesh and tailor it for multiple jobs/levels since the bot will only go to areas of the mesh that you've specified are "safe" for it. You can have markers for every activity and every level on the same mesh and distribute it to others to use for their characters of different level also.
Select Closest Marker and Move To Marker are setup/debugging tools so that you can determine exactly where your markers are at any time and even automate moving to them for testing purposes.
Grind Marker
Grind markers tell the bot which areas of the bot are safe to kill monsters in based on its current level. The bot will spend a random amount of time in the vicinity of each grind marker killing monsters before moving on to the next marker. If you have fate grinding enabled, the bot will go to a fate when it is available and then return to the current marker when the fate is completed. If you have no grind markers on your mesh then the bot will pick a random spot to grind in.
Botany/Mining Marker
Gathering markers are used to give the bot a general vicinity to gather in for a specified amount of time and to tell it which items to gather when interacting with a node in that vicinity. You can use them to tailor your gathering exactly the way you want it. They also provide a mechanism to move the bot across a large mesh since otherwise the bot will sit in one area gathering forever due to the fact that nodes respawn so quickly. See the gathering tutorial for more information on using markers with the Gather Manager for advanced gathering functionality. Without markers, the bot will revert to simply gathering whatever is available in the vicinity and choosing a random item that has > 50% chance of success.
Fishing Marker
Similar to gathering markers, fishing markers tell the bot where valid fishing spots are for the "fishing" mode. Fishing markers also allow you to specify which bait will be used when fishing at that particular location. When placing fishing markers attempt to place them as far on the edge of the mesh (over the water) as possible and remember that the bot will face whichever direction you are facing when you place the marker. This means that if you are facing any direction that does not currently allow fishing when you place the marker then the bot will not be able to fish from this location either. Without markers, the bot will simply attempt to fish at its current position with its currently selected bait forever.