Difference between revisions of "Engines"

From Entropy
(Created page with "An Engine in Entropy is an alternate engine for the default combat system.<br/> Entropy currently has three (3) engines.<br/> Engines can be changed with <code>/entropy engin...")
 
Line 10: Line 10:


= Engine 2 =
= Engine 2 =
Engine 2 replaces the classes `misc_dps()` routine and the `burn()` routine for that class.
Engine 2 replaces the classes <code>misc_dps()</code>` routine and the <code>burn()</code> routine for that class.<br/>
It allows you to design all your miscellaneous combat skills, what to use and how to use them.
It allows you to design all your miscellaneous combat skills, what to use and how to use them.<br/>
The misc combat skills are created with the `/miscdps`. There are no checks or balances to this except for what you make.
The misc combat skills are created with the </code>/miscdps</code>. There are no checks or balances to this except for what you make.<br/>


This also requires you to create and maintain your own burn routine. Again, you set up what to use and all the checks associated with it.
This also requires you to create and maintain your own burn routine. Again, you set up what to use and all the checks associated with it.<br/>
The burns you want to use can be created and controlled with `/burn`.
The burns you want to use can be created and controlled with <code>/burn</code>.<br/>
 
Burn activations, circumstances they are initiated with, like number of mobs in area, or a named, are still controlled the same way. 


Burn activations, circumstances they are initiated with, like number of mobs in area, or a named, are still controlled the same way.


= Engine 3 =
= Engine 3 =

Revision as of 16:53, 8 May 2021

An Engine in Entropy is an alternate engine for the default combat system.
Entropy currently has three (3) engines.

Engines can be changed with /entropy engine # [1-3]


Engine 1

Engine 1 is the default, out of the box combat engine. I write all the code the characters follow, what to use for burns, how they interact with other class burns, and so on. All of it is on me.

Engine 2

Engine 2 replaces the classes misc_dps()` routine and the burn() routine for that class.
It allows you to design all your miscellaneous combat skills, what to use and how to use them.
The misc combat skills are created with the /miscdps. There are no checks or balances to this except for what you make.

This also requires you to create and maintain your own burn routine. Again, you set up what to use and all the checks associated with it.
The burns you want to use can be created and controlled with /burn.

Burn activations, circumstances they are initiated with, like number of mobs in area, or a named, are still controlled the same way.

Engine 3

Engine 3 is an ungodly experiment that may be the end of us all. It is not meant for the weak of soul. It is a complete circumvention of all combat routines, requiring you to build them at the function level.


This engine requires use of the custom.inc file and the creation of 3 routines for every class you use this for.


    • Note** - CLASSSHORTNAME is like CLR or ROG


The pre sub, is hit constantly and considered out of combat. Anything placed in here will be checked ~5 times/second.

sub e3_pre_CLASSSHORTNAME(bool _debug)
  | pre/out of combat things to check/do
/return


The combat sub will only be called when you have an assist with a valid target and have reached your engage %s.

sub e3_combat_CLASSSHORTNAME(bool _debug)
  | things to do during a combat cycle
/return


The post sub is hit after every combat cycle. Useful for things like mana or stamina checks.

sub e3_post_CLASSSHORTNAME(bool _debug)
  | things to do after every single combat cycle
/return


If you choose, you can create your own variables on mac start and place them in a sub in your custom.inc file. This is optional but can be very useful. See: [Creating your own variables to use](HowTo)


Using this engine, you are required to create/call any and all combat/facing/pet/nuking/wanking functions you want to use in your routine. The code will not do anything you do not tell it to do if you go this route.