You are not logged in.

61

Saturday, June 14th 2014, 11:16pm

Where can I add some scripts I wrote?

Hey, Just started playing with the FD, and I'm loving it, so easy to set up, and that fdiyce reload is so handy. I wrote scripts for r/wd , ch/m, ch/r, and could make a few more. Do I add the scripts here?
Roxzincrazy r/wd/s/m 87/85/85/85 | Crazybr wd/d 85/63
Roxzin m/wl 85/70 | Roxzn ch/m/r/w 87/70/70/70

62

Sunday, June 15th 2014, 10:24pm

U can post here if u like :)

.frafall

63

Saturday, June 21st 2014, 2:30pm

FuzzyDIYCE v0.52

Releasing version 0.52, major changes:
  • Handle all cooldown calculations within FD, including some synchronization in case of external skills
  • Added tagging of non-gcd skill, also have auto detection but this will taker place during 1st GCD.
  • Update configuration panel to have tuning parameters for cooldown calculations


.frafall

Global Cooldown (GCD)
As global cooldown is handled within FD we need a method of detecting which skills do NOT trigger GCD. This is
done in the trySkill statement as fifth argument:

Source code

1
trySkill("Charged Chop",  PlayerMana >= 260, nil, nil, true)

FD will also auto-detect GCD skills BUT this is only detected during a GCD period, i.e. for optimal performance
tag them manually.

Cooldown Adjustment
FD handles skill cooldown internally, i.e. for a skill with 5s cooldown it times 5s from the time you hit the
macro. Normally the client uses 5s from the time the server responds, approximately 0.1-0.34s after u hit
a skill. So, the cooldown shown on an actionbutton for a 5s skill is typically 5.1-5.35s. To make up for this (I assume)
the server accepts when a skill is hit approximately 0.3s before cooldown is finished. Combat engines like
FD/DIYCE has been relying on the GetSkillCooldown client call to figure out when a skill can be used which has
resulted in lower dps even though we have tried to compensate for this by subtracting 0.3s from the value.

Since FD now handles all cooldown tracking internally there is little need for adjusting but to optimize the
dps I have added the "Cooldown Adjustment" slider, this value will be added to the cooldown of each skill
and GCD, so with a value of -0.1 the real cooldown of a 5s skill will be 4.9s. Note: if you put this at a to low
value skill will fail and you will notice a significant dps drop, I typically have this at -0.15 to -0.20s.

Event timeout
The client will not accept a new skill used before it has received an answer from server of the previous,
this is visible in addons by the COMBATMETER_DAMAGE event which occurs approx 0.1-0.35s after a skill
is used. So, FD listenes for this event and blocks until it is received.

But, during testing I have found to miss a few of these events and even one miss froze FD. So, I have
added a timeout on the events, after this it tags skill event as received. This slider adjusts the time to
wait for an event. I typically use 0.3s.

Manual timeout
When all cooldown calculations is done FD will try to verify its perceived cooldown with the 'real'
cooldown from client. If the client claims remaining cooldown is larger than the 'Manual timeout'
value FD will assume a cooldown is running. This will handle cooldowns on manually pressed skills.
Note that the value of this slider can be viewed as the delta time before cooldown finishes in which
server accepts skill to be used. I use approx 0.3s.

64

Sunday, June 29th 2014, 12:49pm

FuzzyDIYCE v0.53

Releasing version 0.53, major changes:
  • Bug fix in 'trySkill', this bug incorrectly evaluated skills to be used whenever a 'nil' value was give which
    actually happens from quite a lot of the client functions (true, nil). NOTE: as a result you must ALWAYS give
    at least two arguments to the trySkill(skillName, when), i.e. 'when' does NOT default to true anymore.
  • To support non-english clients I have modified the Attack plugin to ALWAYS use english class names on
    calling the combat script. I.E. to use the Attack plugin the attack function will be named ex. RogueMage,
    not the local language equivalent. (ref a Polish issue reported)
  • I have moved all texts in the configuration interface to a language file (locale/default/messages) to
    support translations. Any translations can be located in separate directories ex. locale/de/messages for German.

.frafall

65

Tuesday, July 1st 2014, 6:32am

FuzzyDIYCE v0.54

Releasing version 0.54, major changes:
  • Checking the cooldown of a skill at attack time to facilitate time based skills like 'Shot'
  • Corrected bug in the PlayerMana function which failed for all mana based classes like m/p, m/wd.

.frafall

ThaAmazin

King of Games

Posts: 8

Location: Ghetto

Occupation: Computer Mastermind Creator

  • Send private message

66

Saturday, July 5th 2014, 6:19am

hi im amazin i just been messing around with your FuzzyDiyce for r/w and for some reason the addon not noticing what i changed hes what i kinda made so far

--[[
$Id: RogueWarrior.lua 42 2014-05-18 07:57:41Z frafall $

Rogue/Warrior combat script
--]]
local fd = FuzzyDIYCE
local api = fd.API
local fdvars = fd.FDVars

-- Set the environment for the scripts to run in
api.SetDefaultScriptApartment()

--[[
Rogue/Warrior bleeds
------------------

Bleed : 620313 - 10s (old value 500654?)
Blind Spot Bleed : 620297 - 6s
Sneak Attack Bleed : 500726 - 20s
Slash Bleed : ??
--]]
local bleeds = {620314, 500654}
local debuff = {502894, 622992}
local dangerous = {"boss", "elite"}

function RogueWarrior(...)

local wantWoundAttack = false

-- We have a target?
if GotTarget and IsEnemy and not TargetIsDead then
local BleedTimer = api.CreateFDTimer("Bleed", 0, 0.5)

wantWoundAttack = (TargetHasBuff("Grievous Wound") and TargetHasBuff("Bleed") and not isInCooldown("Wound Attack") )

if wantWoundAttack then
api.FDMsg("!! wantWoundAttack !!")
end

-- MAIN ROTATION
trySkill("Wound Attack", (PlayerEnergy >= 35) and (wantWoundAttack) ) -- I, CD 0:06
trySkill("Low Blow", (PlayerEnergy >= 25) and (not wantWoundAttack) and TargetHasBuff("Bleed")) -- causes 10 sec Grievous Wound
trySkill("Shadowstab", (PlayerEnergy >= 20) and (not wantWoundAttack) and (not TargetHasBuff("Bleed")) ) -- causes 10 sec Bleed

--Attack Buff
trySkill("Death's Touch", fdvars.triggered or (PlayerRage >= 15))

-- RAGE ROTATION
trySkill("Poisonous Infection", fdvars.triggered or (PlayerRage >= 20))
trySkill("Poison Spray", fdvars.triggered or (TargetHasBuff(debuff))

trySkill("WhirlWind", fdvars.triggered or (TargetHasBuff(debuff))
trySkill("Slash", fdvars.triggered or PlayerRage >= 25, BleedTimer(8))

end

if (TargetIsDead or not GotTarget) and (IsSiege or ShiftHeld) then
target("select", "next", "enemy")
end
end

so i am asking why its not working will appericate help or some debugging or just tell me where i mess up on and mistakes my first time playing around with it
Most feared Warrior on the server--Dangerous BattleMonk on server
Palenque Server
The doors here only open one way. They open inward.
Amazin FearlessBloodwar
W/R/P/S/M/K C/Wl/W/P
82/91/92/60/60/60 82/50/83/50

67

Wednesday, August 13th 2014, 12:54am

havent played in a year .
looking at updating my dyice 2 to fd .
not simple but not hard, minor headache with the whole adding ur file several places headache . but its coool


1 question thou , any work around u found for item set skills ? that was an issue that was on the hot plate when i quit the game , any progress in that field ?

kudos on continuing ghostwolf and peryll s work by the way .

68

Sunday, August 17th 2014, 7:32am

Hey guys

By now im using Diyce 2 - german version. There are some functions implemented which allow to call item set skill by name, or count buffs on bosstarget.

I didnt found equivalent function in fd yet. So is it required to call item set skills by actionslot number? and how can i manage counting slash bleed on target?my aim is it to use tactical attack only if the target has minimum 2 bleeds.

thx for help
VaderKid

69

Tuesday, August 19th 2014, 4:15pm

for ISS's I've been using the tryAction, just drag the ISS to your skill bar.

Source code

1
2
3
-- Item-set skill Ultimate Destruction(CD=8s) and disassembly step(CD=5s) respectivelly
tryAction( 66, fdvars.Triggered or TargetHasBuff("Disassembling Stage"))
tryAction( 65, fdvars.Triggered or (not TargetHasBuff("Disassembling Stage")))
Roxzincrazy r/wd/s/m 87/85/85/85 | Crazybr wd/d 85/63
Roxzin m/wl 85/70 | Roxzn ch/m/r/w 87/70/70/70

70

Wednesday, August 20th 2014, 7:56am

@marcel

so ur using position 66 65 on ur skill bar i understand.
how fast do these commands respond , any problems in button mashing (do these steps skip sometimes or does it work well everytime )
any other trouble u encountered using this method ?

krssrb

Beginner

Posts: 20

Location: Serbia

  • Send private message

71

Thursday, August 28th 2014, 7:16pm

i was useing this for item set skill's in my DIYCE v2

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
local CE.SuitSkillsList = {
-- Warrior
	[495475] = "interface\\Icons\\skill_panel_icons\\sp_war_001.dds", -- HoS [Undefeatable King]
	[495476] = "interface\\Icons\\skill_panel_icons\\sp_war_002.dds", -- ZS/DS		[Weapon Guard] pasiv
	[495559] = "interface\\Icons\\skill_panel_icons\\sp_war_003.dds", -- Dalanis	[Tourniquet]
	[495713] = "interface\\Icons\\skill_panel_icons\\sp_war_004.dds", -- WA		[Punishment]
	--[495728] = "", -- RT		[Sword of Imprisonment]
	[496103] = "interface\\Icons\\skill_panel_icons\\sp_war_006.dds", -- GC		[Composure]
	[497918] = "interface\\Icons\\skill_panel_icons\\sp_war_003.dds", -- Sardo		[Tourniquet]
	[498338] = "interface\\Icons\\skill_panel_icons\\sp_war_z21_001.dds", -- ToSH		[Brash Ferocity Strike]
-- Scout
	[495477] = "interface\\Icons\\skill_panel_icons\\sp_ran_001.dds", -- HoS 		[Archer's Glory]
	[495478] = "interface\\Icons\\skill_panel_icons\\sp_ran_002.dds", -- ZS / DS 	[Shatterstar Storm]
	[495560] = "interface\\Icons\\skill_panel_icons\\sp_ran_003.dds", -- Dalanis	[Keen Will] pasiv
	[495714] = "interface\\Icons\\skill_panel_icons\\sp_ran_004.dds", -- WA		[Arrow Shield]
	--[495729] = "", -- RT		[Create Tendrils]
	[496104] = "interface\\Icons\\skill_panel_icons\\sp_ran_006.dds", -- GC		[Hunter's Advantage] pasiv
	--[497911] = "", -- Sardo		[Focus Enhancement] pasiv
	--[498339] = "", -- ToSH		[Shadow of a Thousand Feathers]
-- Rogue
ETC....}

function CE.Suit(arg)
	local spell = TEXT("Sys"..arg.."_name")
	for k, v in pairs(CE.SuitSkillsList) do
		if k == arg then
			-- if spell is equiped to skill plate
			for i = 0, SkillPlateUpdate(-1)-1, 1 do
				local _, texture = SkillPlateUpdate(i);
				if v == texture then
					CastSpellByName(spell)
					return
				end
			end
			-- if spell is not equiped to skill plate
			for i = 1, 11 do
				for s = 1, 11 do
					local name, texture, index = GetSuitSkill_List(i, s - 1)
					if texture == v then
						SkillPlateReceiveDrag(1, index)
						CastSpellByName(spell)
						return
					end
				end
			end
		end
	end
end


and i modifyed my diyce to accept functions as argument ( not only skils and items) and if i wanted to use for example, Archerer's Glory on scout i would use this

Source code

1
{ name = "Function: CE.Suit(495477)", 	use = not combat and boss},	-- Archerer's Glory

Im shure u can modify it for fuzzy diyce too
Warrior80/Mage80/Warlock80

72

Friday, September 5th 2014, 6:43pm

Hey neonsun, I can't notice any lag or failures on that part of the rotation, which uses my ISS's. works fine for me.
Roxzincrazy r/wd/s/m 87/85/85/85 | Crazybr wd/d 85/63
Roxzin m/wl 85/70 | Roxzn ch/m/r/w 87/70/70/70

73

Monday, September 22nd 2014, 12:00pm

Hi, i download this for the rougue/mage and it's working but it use the other skills that i used everytime. For the battle is use the shadowstab->low blow->wound attack. The script in fuzzydiyce casting sneak attack->shadow step->blind spot - i don't use that skills anytime.
How i can do changes to use only my skills?
Another problem - it doesn't target neerest enemy and it doesn't target anything.

74

Sunday, October 12th 2014, 3:33pm

you have to open the scripts on your FuzzyDiyce folder, inside the addon folder. There, find roguemage.lua file, open with a text editor, and edit the order of skills you want. If you want to take the 1st 3 skills from the rotation out, just delete the 3 lines where it says to cast those skills.
Roxzincrazy r/wd/s/m 87/85/85/85 | Crazybr wd/d 85/63
Roxzin m/wl 85/70 | Roxzn ch/m/r/w 87/70/70/70

75

Friday, October 24th 2014, 5:14am

Ok i was do it and its working, but i have question - did i can put number of skill instead the name of skill (for my language it will be better)

76

Wednesday, July 8th 2015, 11:16am

hey i'm playing WD/W and i just installed FuzzyDIYCE, i tried to set up my skills for bossfights but it doesnt seem to be working as i hoped, can anyone help me with this? i didnt make this from scratch, i took the warden/warrior script that was there and changed a bit, but it wont use pulse mastery or slash..
-- We have a target?
if GotTarget and IsEnemy and not TargetIsDead then
trySkill("Charged Chop", fdvars.Triggered or PlayerMana >= 260)
trySkill("Double Chop", fdvars.Triggered or PlayerMana >= 108 )
trySkill("Beast Chop", fdvars.Triggered or PlayerRage >= 20)
tryskill("Pulse Mastery", fdvars.Triggered or (IsTargetBoss and TargetHasBuff("Beast Sigil") and PlayerRage >= 20))
trySkill("Slash", fdvars.Triggered or PlayerRage >= 25, BleedTimer(8 ))
end

This post has been edited 1 times, last edit by "wyver1345" (Jul 8th 2015, 11:35am)