HowTo: Difference between revisions

From Entropy
 
(14 intermediate revisions by the same user not shown)
Line 15: Line 15:
/env auto on
/env auto on
</pre>
</pre>
this will set up a targetable buff to cast on others in your dannet (your crew).
this will set up a targetable buff to cast on others in your dannet (your crew).  


[[File:wiki/images/4/40/Buff_example_single.mp4]]
[[File:Buff_example_single.mp4]]
 
<video src="https://entropy.exspes.com/wiki/images/4/40/Buff_example_single.mp4" controls="">
 
 
<video src="https://entropy.exspes.com/wiki/images/4/40/Buff_example_single.mp4" controls="">


== set up a heal ==
== set up a heal ==
load a single target heal in gem 1
load a single target heal in gem 1
- `/heal 1 gem1`
<pre>
- `/heal 1`
/heal 1 gem1
- `/heal 1 tag single add`
/heal 1
- `/cc mode heal on`
/heal 1 tag single add
- `/heal group`
/cc mode heal on
- `/env auto on
/heal group
and there you go, you have a healer using 1 heal to heal your group. 
/env auto on
<div style="float:none;"><video src="https://entropy.exspes.com/wiki/images/9/9a/Heal_example_single.mp4" controls=""></div>
</pre>
[[File:Heal_example_single.mp4]]


== set up a nuke ==
== set up a nuke ==
load a single target nuke into gem1
load a single target nuke into gem1
- `/nuke 1 gem1`
<pre>
- `/nuke 1 on`
/nuke 1 gem1
- `/cc mode nuke on`
/nuke 1 on
- `/cc ass smart g`
/cc mode nuke on
- `/env auto on
/cc ass smart g
/env auto on
</pre>
now you have a nuker that will assist you groups main assist.
now you have a nuker that will assist you groups main assist.


== set up mezing ==
== set up mezing ==
load an AE mez in gem 2 and a single target mez in gem 1
load an AE mez in gem 2 and a single target mez in gem 1
- `/debuff mez ae gem2`
<pre>
- `/debuff mez single gem1`
/debuff mez ae gem2
- `/debuff mez use on`
/debuff mez single gem1
- `/cc mode cc`
/debuff mez use on
- `/cc ass smart g`
/cc mode cc
- `/chr ae 2
/cc ass smart g
/chr ae 2
</pre>
and you have a mezzer. it will ae mez when theres more then 1 mob in camp.
and you have a mezzer. it will ae mez when theres more then 1 mob in camp.


== set up a basic tank ==
== set up a basic tank ==
dust off your favorite speed bump
dust off your favorite speed bump
- `/pull rad 300
<pre>
- `/pull with melee
/pull rad 300
- `/pull active on
/pull with melee
- `/pull mode nav`
/pull active on
- `/home deathclear on
/pull mode nav
- `/home incombat on
/home deathclear on
- `/home facefast on
/home incombat on
- `/agro active on`
/home facefast on
- `/cc mode melee on`
/agro active on
- `if you are part of a group, have the group leader set you as Main Assist
/cc mode melee on
- `/env rad 40
if you are part of a group, have the group leader set you as Main Assist
- `/env auto on
/env rad 40
this will set you up as a simple melee puller. you will run out, smack a mob with whatever is in your nads and run back to camp
/env auto on
</pre>
this will set you up as a simple melee puller. you will run out, smack a mob with whatever is in your hands and run back to camp


= Multiple Pullers =
= Multiple Pullers =
With Entropy, you can easily have more then one puller in a group. Some guidelines to making it work properly;   
With Entropy, you can easily have more then one puller in a group. Some guidelines to making it work properly;   


Set your main assist, whatever that is, on base pulling with a reasonable radius. Basically, they control the local camp.  
Set your main assist, whatever that is, on base pulling with a reasonable radius. Basically, they control the local camp.<br/>
From there, you can use other classes to get mobs farther away back to the assist.
From there, you can use other classes to get mobs farther away back to the assist.<br/>
Set a ranger on base pulling with a 340 radius.  
Set a ranger on base pulling with a 340 radius.<br/>
Set a pet class on pet pull with a stupid large radius, or whatever.
Set a pet class on pet pull with a stupid large radius, or whatever.<br/>
Set a melee class, on nav pulling with a large radius.
Set a melee class, on nav pulling with a large radius.<br/>
    
    
There is no limit to the number of pullers you use. If you do not apply a little common sense, they will run off and do stupid things tho.
There is no limit to the number of pullers you use. If you do not apply a little common sense, they will run off and do stupid things tho.


= Hooks =
= Hooks =
A hook allows you to inject your own code into existing subroutines. The only real limit to hooks are the pre populated places for the injections and your imagination.   
A hook allows you to inject your own code into existing subroutines. The only real limit to hooks are the pre populated places for the injections and your imagination.<br/>  
    
    
A hook can be placed into any part of the code using the following example:   
A hook can be placed into any part of the code using the following example:<br/>  
`GETINPUT main_loop swAuto|${maEnv.Find[swAuto].Value}
<code>GETINPUT main_loop swAuto|${maEnv.Find[swAuto].Value}</code><br/>


`GETINPUT` is a call to a routine that will create the hook if the following two conditions are met.
<code>GETINPUT</code> is a call to a routine that will create the hook if the following two conditions are met.<br/>
- the `GETINPUT` must be followed by the name of the subroutine you want to create
- the <code>GETINPUT</code> must be followed by the name of the subroutine you want to create<br/>
- and the name must be followed by either a `NULL|NULL` or a `variablename|variable value
- and the name must be followed by either a <code>NULL|NULL</code> or a <code>variablename|variable value</code><br/>


In your `data\custom.inc` file, you can create the hook with the code that you want to run. Give the previous example, you would create a subroutine like this:   
In your <code>data\custom.inc</code> file, you can create the hook with the code that you want to run. Give the previous example, you would create a subroutine like this:   
```
<pre>
sub hook_main_loop(string _auto)
sub hook_main_loop(string _auto)


Line 100: Line 102:


/return
/return
```
</pre>
Hooks can get as complicated as anything else, drawing upon existing variable, maps, lists, whatever. Even making your own.
Hooks can get as complicated as anything else, drawing upon existing variable, maps, lists, whatever. Even making your own.<br/>
Only going to say this part once, You are on your own with hooks. You break it, you bought it.
Only going to say this part once, You are on your own with hooks. You break it, you bought it.<br/>
    
    
You will need to enable `/entropy hook on` and restart the macro for this to take effect.
You will need to enable <code>/entropy hook on</code> and restart the macro for this to take effect.
 
 
 


= Creating your own variables to use =
= Creating your own variables to use =
In `data\custom.inc` create a subroutine called `custom_define(bool _debug)`;
In <code>data\custom.inc</code> create a subroutine called <code>custom_define(bool _debug)</code>;<br/>
```
<pre>
sub custom_define(bool _debug)
sub custom_define(bool _debug)


Line 117: Line 116:


/return TRUE
/return TRUE
```
</pre>


This routine will get loaded just prior to the individual class data loading. You can create them as normal MQ variables, or use/add to existing maps or lists, or even create your own. Can even add to the existing databases here.
This routine will get loaded just prior to the individual class data loading. You can create them as normal MQ variables, or use/add to existing maps or lists, or even create your own. Can even add to the existing databases here.

Latest revision as of 05:41, 8 May 2021

A very unorganized list on how to do some things...


Quick and Dirty

These are some very basic settings. There are a lot more details, but this will get the ball rolling.

set up a buff

load a targetable buff in gem 1

/buff 1 gem1
/buff 1 on
/buff 1 tag crew add
/buff crew on
/env auto on

this will set up a targetable buff to cast on others in your dannet (your crew).

set up a heal

load a single target heal in gem 1

/heal 1 gem1
/heal 1
/heal 1 tag single add
/cc mode heal on
/heal group
/env auto on

set up a nuke

load a single target nuke into gem1

/nuke 1 gem1
/nuke 1 on
/cc mode nuke on
/cc ass smart g
/env auto on

now you have a nuker that will assist you groups main assist.

set up mezing

load an AE mez in gem 2 and a single target mez in gem 1

/debuff mez ae gem2
/debuff mez single gem1
/debuff mez use on
/cc mode cc
/cc ass smart g
/chr ae 2

and you have a mezzer. it will ae mez when theres more then 1 mob in camp.

set up a basic tank

dust off your favorite speed bump

/pull rad 300
/pull with melee
/pull active on
/pull mode nav
/home deathclear on
/home incombat on
/home facefast on
/agro active on
/cc mode melee on
if you are part of a group, have the group leader set you as Main Assist
/env rad 40
/env auto on

this will set you up as a simple melee puller. you will run out, smack a mob with whatever is in your hands and run back to camp

Multiple Pullers

With Entropy, you can easily have more then one puller in a group. Some guidelines to making it work properly;

Set your main assist, whatever that is, on base pulling with a reasonable radius. Basically, they control the local camp.
From there, you can use other classes to get mobs farther away back to the assist.
Set a ranger on base pulling with a 340 radius.
Set a pet class on pet pull with a stupid large radius, or whatever.
Set a melee class, on nav pulling with a large radius.

There is no limit to the number of pullers you use. If you do not apply a little common sense, they will run off and do stupid things tho.

Hooks

A hook allows you to inject your own code into existing subroutines. The only real limit to hooks are the pre populated places for the injections and your imagination.

A hook can be placed into any part of the code using the following example:
GETINPUT main_loop swAuto|${maEnv.Find[swAuto].Value}

GETINPUT is a call to a routine that will create the hook if the following two conditions are met.
- the GETINPUT must be followed by the name of the subroutine you want to create
- and the name must be followed by either a NULL|NULL or a variablename|variable value

In your data\custom.inc file, you can create the hook with the code that you want to run. Give the previous example, you would create a subroutine like this:

sub hook_main_loop(string _auto)

	/if (${_auto}) {
		/echo hi this is my hook, not yours.
	}

/return

Hooks can get as complicated as anything else, drawing upon existing variable, maps, lists, whatever. Even making your own.
Only going to say this part once, You are on your own with hooks. You break it, you bought it.

You will need to enable /entropy hook on and restart the macro for this to take effect.

Creating your own variables to use

In data\custom.inc create a subroutine called custom_define(bool _debug);

sub custom_define(bool _debug)

  | stuff goes here

/return TRUE

This routine will get loaded just prior to the individual class data loading. You can create them as normal MQ variables, or use/add to existing maps or lists, or even create your own. Can even add to the existing databases here.