AionScript

08/21/2016 09:56 nussxxx#271
finaly i found the other grinderframework.(i guess is was the last working from as side)
i dont know exactly why this grinder dont have problem with berserking and gk skill.
think is the other skill name list what is used in this version.

[Only registered and activated users can see links. Click Here To Register...]
08/21/2016 23:04 gorguss#272
Okay so. I know this thread is active. And many post are related directly to weather "AionScript" is working or not. Through my trial and error I have discovered some... minor? stuff. There is plenty of room in many of these default scripts for improvement. nussxxx, if you can read this, please, ask me to post some of my thoughts and ideas on how to improve the bot as is.

I will elaborate slightly to help sway your decision, as I have not had any response from the user Aionscript or nussxxx im not sure if I'm being shunned or what lol but here goes.

This is something that needs to be added into the lines at 111 or so of the Settings.lua
Code:
		--"In the shadows we march."
		self.Assassin = {
			-- Indicates weather or not skills using DP are allowed.
			AllowDpSkills = true,
		};
To more accurately find this particular settings.lua follow the folder breakdown; AionScript3>Scripting>OfficialGrinderFramework>Set tings.lua

This next line needs to be pasted in the class folder Assassin.lua at line 195


Code:
	 --DP Skill: Divine Strike
	if Settings.Assassin.AllowDpSkills and not Entity:IsPlayer() and Player:GetDP() >= 2000 then
			if Helper:CheckAvailable( "Divine Strike" ) then
				Helper:CheckExecute( "Divine Strike" );
				return false;
		end
	end
Again, this is probably something all of you know how to do. I just don't know if you don't because well.... no one has replied to me lol. I have a lot more tricks in the Assassin class folder changed to make it better.

Here is what my Assassin buffs look like:
Code:
	-- Use devotion and such when in range.
	if Range <= Player:GetAttackRange() + 10 then
	
		-- Buff 1: Oath of Accuracy
		if Helper:CheckAvailable( "Oath of Accuracy" ) then
			Helper:CheckExecute( "Oath of Accuracy" );
			return false;
		end

		-- Buff 3: Apply Deadly Poison
		if Helper:CheckAvailable( "Apply Deadly Poison" ) and Player:GetState():GetState( Helper:CheckName( "Apply Deadly Poison" )) == nil then
			self._iApplyDeadlyPoisonTime = Time() + 400;
			Helper:CheckExecute( "Apply Deadly Poison" );
			return false;
		end
		
		-- Buff 4: Clear Focus
		if Helper:CheckAvailable( "Clear Focus" ) then
			Helper:CheckExecute( "Clear Focus" );
			return false;
		end
		
		-- Buff 5: Calming Whisper
		if Helper:CheckAvailable( "Calming Whisper" ) then
			self._iCalmingWhisperTime = Time() + 119;
			Helper:CheckExecute( "Calming Whisper" );
			return false;
		end

		-- Buff 6: Devotion
		if Helper:CheckAvailable( "Devotion" ) then
			Helper:CheckExecute( "Devotion" );
			return false;
		end

		-- Buff 7: Flurry
		if Helper:CheckAvailable( "Flurry" ) then
			self._iFlurryTime = Time() + 179;
			Helper:CheckExecute( "Flurry" );
			return false;
		end
		
	end
As well as I have input some more code at the begging of the Assassin.lua at line 61 under Blastradius' note:
Code:
		-- Check timer used for Cooldowns
	if self._iSkillDelay == nil or self._iSkillDelay < Time() then
	end

	--Food Checks / Scrolls;
	if Settings.CritFood then
		self:CheckCritFood();
	end

	if Settings.AttackFood then
		self:CheckAttackFood();
	end

	if Settings.NaturalHeal then
		self:CheckNaturalHeal();
	end

	if Settings.AttackScroll then
		self:CheckAttackScroll();
	end

	if Settings.RunScroll then
		self:CheckRunScroll();
	end
To go with, inserted at like 367 of the Assassin.lua, is:

Code:
function CheckCritFood()

stateID = {10224,10225,9976,9989,10051,10064};
foodName = {"Calydon Meat Dumpling","Wild Ginseng Pickle","Tasty Calydon Meat Dumpling","Tasty Wild Ginseng Pickle","Innesi Herb Dumpling","Poma Wine Herb Dumpling","Tasty Innesi Herb Dumpling","Tasty Poma Wine Herb Dumpling"};
flag = 0;

    for _,v in ipairs(stateID) do
        if Player:GetState():GetState( v ) ~= nil then
            flag = flag + 1;
        end
    end

    if flag == 0 then
        for a,b in ipairs(foodName) do
            if Helper:CheckAvailableInventory( b ) then
                PlayerInput:Inventory( b );
                break;
            end
        end
    end


return true;
end

--------------------------------
function CheckAttackFood()

stateID = {10051,10064,10224,10225,9976,9989};
foodName = {"Minor Focus Agent","Lesser Focus Agent","Focus Agent","Greater Focus Agent","Major Focus Agent","Fine Focus Agent"};
flag = 0;

    for _,v in ipairs(stateID) do
        if Player:GetState():GetState( v ) ~= nil then
            flag = flag + 1;
        end
    end

    if flag == 0 then
        for a,b in ipairs(foodName) do
            if Helper:CheckAvailableInventory( b ) then
                PlayerInput:Inventory( b );
                break;
            end
        end
    end
return true;


end
-----------------------------------
function CheckNaturalHeal()

stateID = {10044,10094};
foodName = {"Minor Rally Serum","Lesser Rally Serum","Rally Serum","Greater Rally Serum","Major Rally Serum","Fine Rally Serum","Tasty Ormea Cocktail"};
flag = 0;

    for _,v in ipairs(stateID) do
        if Player:GetState():GetState( v ) ~= nil then
            flag = flag + 1;
        end
    end

    if flag == 0 then
        for a,b in ipairs(foodName) do
            if Helper:CheckAvailableInventory( b ) then
                PlayerInput:Inventory( b );
                break;
            end
        end
    end
return true;

end

-----------------------------
function CheckAttackScroll()

stateID = {9959};
foodName = {"Greater Courage Scroll"};
flag = 0;

    for _,v in ipairs(stateID) do
        if Player:GetState():GetState( v ) ~= nil then
            flag = flag + 1;
        end
    end

    if flag == 0 then
        for a,b in ipairs(foodName) do
            if Helper:CheckAvailableInventory( b ) then
                PlayerInput:Inventory( b );
                break;
            end
        end
    end
return true;

end
--------------------------
function CheckRunScroll()

stateID = {9960};
foodName = {"Greater Running Scroll"};
flag = 0;

    for _,v in ipairs(stateID) do
        if Player:GetState():GetState( v ) ~= nil then
            flag = flag + 1;
        end
    end

    if flag == 0 then
        for a,b in ipairs(foodName) do
            if Helper:CheckAvailableInventory( b ) then
                PlayerInput:Inventory( b );
                break;
            end
        end
    end
return true;

end

function Pause()

	-- Nothing was executed, continue with other functions.
	return true;
	
end
Thoughts?

Code:
return true;

end
--- Perform healing checks both in and our of combat.
--
-- [MENTION=1985011]param[/MENTION]	bool	Indicates whether or not the function is running before force checks.
-- [MENTION=326673]return[/MENTION]	bool

function Heal( BeforeForce )

	-- Nothing was executed, continue with other functions.
	return true;
	
end

function Pause()

	-- Nothing was executed, continue with other functions.
	return true;
	
end
08/22/2016 06:34 marinos122#273
how i can make the luncher run 32bit? eu

nvm i made it run 32 bit

i neeed a SORCERER IUA update if any1 has
08/22/2016 18:56 adritill#274
im testing grinder with an sm, now it walks and kills mobs smoothly but after some minutes it stops walking, so i think it is an issue with some skill loop or something
08/22/2016 20:02 gorguss#275
Quote:
Originally Posted by adritill View Post
im testing grinder with an sm, now it walks and kills mobs smoothly but after some minutes it stops walking, so i think it is an issue with some skill loop or something
At line 62 in the Spiritmaster.lua assassuming you are running the one from the "Aionscript 3" nussxxx provided add at line 62:
Code:
-- Check timer used Cooldowns
	if self._iSkillDelay == nil or self._iSkillDelay < Time() then
	end
I think this should be in every class .lua I'm pretty sure it helps read cooldowns. Again don't take my word for it.

Quote:
Originally Posted by marinos122 View Post
how i can make the luncher run 32bit? eu

nvm i made it run 32 bit

i neeed a SORCERER IUA update if any1 has
Does the sorcerer.lua in the latest download not work?

Also make sure in all your pathing in the dropdown box it says "action" and not move.
08/22/2016 20:57 marinos122#276
it works,but maybe some1 made a better 1, like using stamina absorption when its low hp

also how i can make it use scrolls potions?
sorry for the spam, i appreciate any help

i get this error also ---> - [string "GrinderFramework.lua"]:597: attempt to index a nil value after an half hour or so its stoping attacking mobs
08/23/2016 00:43 gorguss#277
The 597 in referring to the line. Its probably the last one in the script. If you didn't mess with it then it needs to be looked at by someone with a sorcerer who knows how to edit the scripts. nussxxx....

for the food/scrolls you still have to do some editing but here what I did.
paste this in the settings file
Code:
------------------------------------------------------------------------------
				self.CritFood = false; -- Uses Crit Food if true
			        self.AttackFood = true; -- Uses Attk Food if true
			        self.NaturalHeal = true; -- Uses Natural Heal Mana if true
			        self.AttackScroll = false; -- Uses Attack speed Scroll if true
			        self.RunScroll = false; -- Uses Running Scroll if true
		 		self.BuffFood = false; -- Marble of Transfiguration
	-----------------------------------------------------------------------------------
This in the class file in the attack function:
Code:
--Food Checks / Scrolls;
	if Settings.CritFood then
		self:CheckCritFood();
	end

	if Settings.AttackFood then
		self:CheckAttackFood();
	end

	if Settings.NaturalHeal then
		self:CheckNaturalHeal();
	end

	if Settings.AttackScroll then
		self:CheckAttackScroll();
	end

	if Settings.RunScroll then
		self:CheckRunScroll();
	end
and this at the end of the class file:
Code:
---------------Bufovani-------------
function CheckCritFood()

stateID = {10224,10225,9976,9989,10051,10064};
foodName = {"Calydon Meat Dumpling","Wild Ginseng Pickle","Tasty Calydon Meat Dumpling","Tasty Wild Ginseng Pickle","Innesi Herb Dumpling","Poma Wine Herb Dumpling","Tasty Innesi Herb Dumpling","Tasty Poma Wine Herb Dumpling"};
flag = 0;

    for _,v in ipairs(stateID) do
        if Player:GetState():GetState( v ) ~= nil then
            flag = flag + 1;
        end
    end

    if flag == 0 then
        for a,b in ipairs(foodName) do
            if Helper:CheckAvailableInventory( b ) then
                PlayerInput:Inventory( b );
                break;
            end
        end
    end


return true;
end

--------------------------------
function CheckAttackFood()

stateID = {10051,10064,10224,10225,9976,9989};
foodName = {"Minor Focus Agent","Lesser Focus Agent","Focus Agent","Greater Focus Agent","Major Focus Agent","Fine Focus Agent"};
flag = 0;

    for _,v in ipairs(stateID) do
        if Player:GetState():GetState( v ) ~= nil then
            flag = flag + 1;
        end
    end

    if flag == 0 then
        for a,b in ipairs(foodName) do
            if Helper:CheckAvailableInventory( b ) then
                PlayerInput:Inventory( b );
                break;
            end
        end
    end
return true;


end
-----------------------------------
function CheckNaturalHeal()

stateID = {10044,10094};
foodName = {"Minor Rally Serum","Lesser Rally Serum","Rally Serum","Greater Rally Serum","Major Rally Serum","Fine Rally Serum","Tasty Ormea Cocktail"};
flag = 0;

    for _,v in ipairs(stateID) do
        if Player:GetState():GetState( v ) ~= nil then
            flag = flag + 1;
        end
    end

    if flag == 0 then
        for a,b in ipairs(foodName) do
            if Helper:CheckAvailableInventory( b ) then
                PlayerInput:Inventory( b );
                break;
            end
        end
    end
return true;

end
-------------------------------------
function CheckAttackScroll()

stateID = {9959};
foodName = {"Greater Courage Scroll"};
flag = 0;

    for _,v in ipairs(stateID) do
        if Player:GetState():GetState( v ) ~= nil then
            flag = flag + 1;
        end
    end

    if flag == 0 then
        for a,b in ipairs(foodName) do
            if Helper:CheckAvailableInventory( b ) then
                PlayerInput:Inventory( b );
                break;
            end
        end
    end
return true;

end
--------------------------
function CheckRunScroll()

stateID = {9960};
foodName = {"Greater Running Scroll"};
flag = 0;

    for _,v in ipairs(stateID) do
        if Player:GetState():GetState( v ) ~= nil then
            flag = flag + 1;
        end
    end

    if flag == 0 then
        for a,b in ipairs(foodName) do
            if Helper:CheckAvailableInventory( b ) then
                PlayerInput:Inventory( b );
                break;
            end
        end
    end
return true;

end
let me know if it works.
08/23/2016 08:45 nussxxx#278
foodName = {"Running Scroll"};
foodName = {"Courage Scroll"};

[Only registered and activated users can see links. Click Here To Register...]
08/23/2016 12:29 adritill#279
does anyone knows a way to avoid the constant buffing on constant use of hots skills with low cd? there may be an issue with the getState function that doesnt get the skill correctly and keeps bufing.
08/23/2016 12:33 nussxxx#280
@ gorguss
i didn replay to us cuz u got problem on run Aionscript.

i guess u got windows defenter or sthing else what is blocking AS as virus. u need setup virus scanner to allowed Aionscript folder.

and ofc u free to make any .lua better and post it here.

Quote:
Originally Posted by adritill View Post
does anyone knows a way to avoid the constant buffing on constant use of hots skills with low cd? there may be an issue with the getState function that doesnt get the skill correctly and keeps bufing.
command it out till lev update grinder.
08/23/2016 19:35 gorguss#281
alright well I have Aionscript allowed now from my antivirus. and I've just been tinkering with the scripts trying to make them better. ty for finally responding! :)

Quote:
Originally Posted by adritill View Post
does anyone knows a way to avoid the constant buffing on constant use of hots skills with low cd? there may be an issue with the getState function that doesnt get the skill correctly and keeps bufing.
You will need to add code to the line that executes and checks for that spell.

I think I know what you mean, for example, the Assassin buff "apply Deadly Poison" is a self buff that last 5 minutes. But the cooldown is only 10 seconds to reuse it. It was spamming the buff before I added these two things.
Code:
	-- Buff 3: Apply Deadly Poison
		if Helper:CheckAvailable( "Apply Deadly Poison" ) and Player:GetState():GetState( Helper:CheckName( "Apply Deadly Poison" )) == nil then
			self._iApplyDeadlyPoisonTime = Time() + 230000;
			Helper:CheckExecute( "Apply Deadly Poison" );
			return false;
		end
the 230000 is representing miliseconds so. its like 4 minutes and something seconds, but reguardless the bot doesn't try to refresh it. this may be due to this line of code or this one:
Code:
-- Check timer used Cooldowns
	if self._iSkillDelay == nil or self._iSkillDelay < Time() then
	end
Which is pasted in the top under where the bot begins attack functions.

I think just by reading the like of code you can see it checks the self._iSkillDelays probably including everything in your script that has self._ after it. This would include self buffs but may not include HoTs. Which class are you playing and i'll look through it and see if I can mess with it :cool:
08/24/2016 02:32 dada79#282
I share my sorcerer.lua script , stamina absorption, flame spray and refracting shard skills are added , buff like flame robes and old buff are removed because its consumes too many mana each 10s.Character doesn't need life serum or mana serum with my skills rotation :) -->
[Only registered and activated users can see links. Click Here To Register...]

this script works fine with [Only registered and activated users can see links. Click Here To Register...] provide by nussxxx (get no error 597)

enjoy :)
08/24/2016 20:35 gorguss#283
Is there a way to bot multiple accounts on the same computer with aionscript?
08/24/2016 20:41 Manita90#284
Solved.
08/24/2016 20:55 7life#285
Quote:
Originally Posted by gorguss View Post
Is there a way to bot multiple accounts on the same computer with aionscript?
with sandboxie you can run as many clients as your pc can handle. and with console lock fps at 20 max 30 to save cpu and gpu usage!