You are not logged in.

Applications: [GameMaster: OPEN] | [Volunteer Testers: OPEN]


This forum will be permanently shut down on Friday 13.07.2018
Please copy or save all important information from old forum before they will be deactivated
We have moved to new board. https://forum.runesofmagic.gameforge.com/Come join us.

ghostwolf82

Professional

Posts: 859

Location: Kalvans Trunk

Occupation: It's dark in here

  • Send private message

1,321

Tuesday, February 1st 2011, 2:33pm

Quoted from "firescue17;383296"

lol ... It sank on the Failboat. Something is wrong with it. It stopped doing what I was expecting it to do as the code got longer and more complicated. I plan to repost, but it needs some tweaks yet.

OK, I look forward to your updated script. It gave me some new ideas of my own after seeing what you had plans for. It's a solid idea, wish I had thought of it. :p

1,322

Wednesday, February 2nd 2011, 1:15am

Quoted from "ghostwolf82;383406"

OK, I look forward to your updated script. It gave me some new ideas of my own after seeing what you had plans for. It's a solid idea, wish I had thought of it. :p


Reposting the original:

Quoted

I've read through most of this thread - 100 plus of the 120 some odd pages.

This was designed around a Rogue / Druid. The Earth Pulse can be replaced by arrows, lightening bolts or whatever for other class combinations.

Source code

1
2
3
4
5
6
local spell_range   = GetActionUsable(21) -- Earth Pulse
local throw_range   = GetActionUsable(22) -- Throw
local melee_range   = GetActionUsable(23) -- Shadowstab
local front         = GetActionUsable(24) -- Blind Stab only usable from front
local back          = GetActionUsable(25) -- Blind Spot only usable from rear
local stealth       = GetActionUsable(26) -- Sneak Attack only usable out of combat from rear
Theory:
All: False. No target selected or way out side of aggro range. Safe to run buffs and character maintenance.

(spell_range) only: True. Close enough to pull the mob. I'm using mine with conditionals (not combat) and (enemy) and (mana >= .75) and (arg2=="pull"). This pulls a mob when I'm close enough using a free, renewable resource (mana) to save projectiles.

(throw_range): True. Same as above except uses a projectile to pull when mana is at a premium and is better reserved for possible heals.

(melee_range): True. Mob is within general melee attack distance. Position is not yet determined.

(melee_range) and (front): Both True. Used for frontal attacks.

(melee_range) and (back): Both True. In back AND in combat. Used for rear attacks.

(stealth): True. In back AND out of combat. Used for stealth attacks.

I'm only about halfway through writing my entire script and haven't thoroughly tested it yet. At this point the only apparent flaws I can find are 1) when positioned at some very odd side attack angles when you're not in front OR in back of the mob; and 2) during the 10 second cooldown from Blind Stab I've experience some odd stuff. However, I'm not familiar enough with how the cooldowns are read to know if the engine knows a skill WILL BE usable once the cooldown expires. Regardless, during those small windows the generic attacks suffice. I will probably drop the melee_range entirely later on as all the generic, front and rear attacks have the same 50 range.

I am missing anything obvious? Are there any secrets in the last 20 pages of this thread I haven't gotten to yet?

Well, I am out of ideas. It does not work. The Theory seems sound. Either there is a problem with my understanding of GetActionUseable() or as more likely seems to be the case is the way the game engine itself (not DIYCE) handles Blind Stab and Blind Spot which are being used to identiy front and back. My suspicion at this point lies with the game engine due to the following tests:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
                  Target    Range                Expected Skill State     Actual Skill State
1. Blind Stab     None      N/A                  Not Ready                Ready
1. Blind Spot     None      N/A                  Not Ready                Ready

2. Blind Stab     Self      N/A                  Not Ready                Ready
2. Blind Spot     Self      N/A                  Not Ready                Ready

3. Blind Stab     Enemy     Out of Range         Not Ready                Not Ready
3. Blind Spot     Enemy     Out of Range         Not Ready                Not Ready

4. Blind Stab     Enemy     In Range / Front     Ready                    Ready
4. Blind Spot     Enemy     In Range / Front     Not Ready                Ready

5. Blind Stab     Enemy     In Range / Rear      Not Ready                Ready
5. Blind Spot     Enemy     In Range / Rear      Ready                    Ready
TEST SUMMARY:
TEST 1: Unexpected value. Skills should not be ready as you do not even have a target to use them on.
TEST 2: Unexpected value. Skills should not be ready as there is no reason you would want to attack yourself.
TEST 3: The only test that worked as expected.
TEST 4: Unexpected value for Blind Spot. Blind Spot should not be ready as you are in front of the target.
TEST 5: Unexpected value for Blind Stab. Blind Stab should not be read as you are behind the target. This is the exact opposite problem from Test 4.

It appears (to me) the game engine assumes these skills are always ready and the actual check is not made until the button is pushed. I am not certain if this is accurate or actually what is happening. When I pulled my original post I had only noticed the problem with no target and self target. I thought I could get around it using:

((enemy) and (front/back/stealth))

Not only did that not work, it doesn't begin to address the issue with front and back. For the time being I've reverted to using UnitIsUnit("player", "targettarget") based upon the inaccurate assumption that you are only in front of the mob when tanking. The downside of course is it doesn't work with a real tank in the group.

Based upon what I have read previously, using multiple variables with some nature of (and) conditions to determine location "feels" like a leap forward, but it's not quite there yet.

As I have yet to see another one, I am posting the full Rogue/Druid code as it stands now for discussion and troubleshooting:

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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
function RogueDruid(arg1, arg2)
    local Skill            = {}
    local i                = 0
    local energy           = UnitMana("player")
    local mana             = PctS("player")

    local buffs_player     = BuffList("player")
    local buffs_target     = BuffList("target")
    local combat           = GetPlayerCombatState()
    local dps_assrage      = string.find(buffs_player, "Assassins Rage")
    local dps_fattack      = string.find(buffs_player, "Fervent Attack") -- VERIFY BUFF NAME WHEN ACQUIRED
    local dps_informer     = string.find(buffs_player, "Informer") -- VERIFY BUFF NAME WHEN ACQUIRED
    local enemy            = UnitCanAttack("player","target")
    local vanished         = string.find(buffs_player, "Vanish")

-- DEBUFF VARIABLES
    local blind            = BuffTimeLeft("target", "Blind")
    local bleed            = BuffTimeLeft("target", "Bleed")
    local wound            = BuffTimeLeft("target", "Grievous Wound")

-- POSITION VARIABLES
    local tank             = UnitIsUnit("player", "targettarget")
    local front            = GetActionUsable(31) -- Blind Stab only usable from front
    local back             = GetActionUsable(32) -- Blind Spot only usable from rear
    local spell_range      = GetActionUsable(11) -- Earth Pulse
    local throw_range      = GetActionUsable(3) -- Throw
    local melee_range      = GetActionUsable(28) -- Shadowstab
    local stealth          = GetActionUsable(27) -- Sneak Attack only usable out of combat from rear

-- AUTO VANISH IF IMMINENT DEATH
    if vanished then
    return
    end

    i=i+1; Skill[i] = {name = "Vanish",                     use = (PctH("player") <= .15)}

-- HEALS
    i=i+1; Skill[i] = {name = "Action: 41 (Health Pot)",    use = (PctH("player") <= .40)}
    i=i+1; Skill[i] = {name = "Action: 42 (Health Pot)",    use = (PctH("player") <= .40)}
    i=i+1; Skill[i] = {name = "Action: 43 (Health Pot)",    use = (PctH("player") <= .40)}
    i=i+1; Skill[i] = {name = "Action: 44 (Health Pot)",    use = (PctH("player") <= .40)}
    i=i+1; Skill[i] = {name = "Action: 45 (Health Pot)",    use = (PctH("player") <= .40)}
    i=i+1; Skill[i] = {name = "Recover",                    use = (PctH("player") <= .60) and (not string.find(buffs_player, "Recover"))}

-- CURES
-- INSERT CURE SCRIPT HERE

-- BUFFS
    if ((arg2=="pull") and (not combat)) then
    i=i+1; Skill[i]    = {name = "Savage Blessing",         use = ((not string.find(buffs_player, "Savage Blessing")))}
    i=i+1; Skill[i]    = {name = "Poison",                  use = ((not string.find(buffs_player, "Poison")))}
    i=i+1; Skill[i]    = {name = "Hysteric Vengeance",      use = ((not string.find(buffs_player, "Hysteric Vengeance")))}
    end

-- INSERT AMMO SCRIPT HERE

-- PULL
    if ((arg2=="pull") and (enemy) and (not combat)) then
    i=i+1; Skill[i] = {name = "Earth Pulse",                use = (mana >= .75)}
    i=i+1; Skill[i] = {name = "Throw",                      use = (mana <  .75)}
    end

-- STEALTH AND ELITE COMBAT
    if ((enemy) and (not combat)) then
    i=i+1; Skill[i] = {name = "Premeditation",              use = ((energy >= 25) and (not string.find(buffs_player, "Premeditation")))}
    i=i+1; Skill[i] = {name = "Sneak Attack",               use = ((energy >= 35) and (stealth))}
    end

    i=i+1; Skill[i] = {name = "Assassins Rage",             use = ((UnitSex("target") >= 2))} -- INSERT ADDITIONAL DPS BUFF CHECKS WHEN ACQUIRED TO AVOID OVERLAP
    -- INSERT INFORMER BUFF WHEN ACQUIRED
    -- INSERT FERVENT ATTACK BUFF WHEN AQUIRED

-- GENERIC COMBAT
    if (enemy) then
    i=i+1; Skill[i] = {name = "Wound Attack",               use = ((energy >= 40) and (bleed > 1) and (wound > 1))}
    i=i+1; Skill[i] = {name = "Low Blow",                   use = ((energy >= 35) and (bleed > 2) and (wound < 3))}
    i=i+1; Skill[i] = {name = "Shadowstab",                 use = ((energy >= 25) and (bleed < 3))}
    i=i+1; Skill[i] = {name = "Attack",                     use = (PctH("target") > .99)}
    end

-- POSITIONAL COMBAT
    if (enemy) then
    i=i+1; Skill[i] = {name = "Blind Stab",                 use = ((energy >= 25) and (blind < 3) and (tank))}
    i=i+1; Skill[i] = {name = "Blind Spot",                 use = ((energy >= 30) and (bleed < 3) and (not tank))}
    end

-- NON ESSENTIAL MAINTENANCE
    i=i+1; Skill[i] = {name = "Action: 46 (Mana Pot)",      use = (mana <= .50)}
    i=i+1; Skill[i] = {name = "Action: 47 (Mana Pot)",      use = (mana <= .50)}
    i=i+1; Skill[i] = {name = "Action: 48 (Mana Pot)",      use = (mana <= .50)}
    i=i+1; Skill[i] = {name = "Action: 49 (Mana Pot)",      use = (mana <= .50)}

    MyCombat(Skill, arg1)
end

Source code

1
2
3
4
5
/run RogueDruid("v2", "pull")
/run SendSystemChat("END PULL.")

/run RogueDruid("v2")
/run SendSystemChat("END COMBAT.")

1,323

Wednesday, February 2nd 2011, 9:12am

I posted the below code just as it reads. Everything works except the Mana Return. Afterwards, I tried changing it to "Holy Seals 1" but to no avail. Any suggestions? I tried searcing this thread & couldn't find it. Sorry if I missed it.

PS: I am only a level 7 Knight.
PPS: excellent work with all this coding. You've got a talent!

Quoted from "Sixpax;214214"

This one is a baseline Knight function so it won't have any secondary or elite skills. We can use this one to build on for the various different Knight combos.

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function KnightGeneric(arg1, arg2)
    local Skill = {}
    local i = 0
    local friendly = (not UnitCanAttack("player", "target"))
    local shield = (GetEquipSlotInfo(17) ~= nil)
    local combat = GetPlayerCombatState()
 
    local pbuffs = BuffList("player")
    local tbuffs = BuffList("target")
 
    i=i+1; Skill[i] = { name = "Whirlwind Shield",     use = ((not friendly) and shield) }
    i=i+1; Skill[i] = { name = "Enhanced Armor",       use = (not string.find(pbuffs, "Enhanced Armor")) }
    i=i+1; Skill[i] = { name = "Holy Seal",            use = (not string.find(pbuffs, "Holy Seal")) }
    i=i+1; Skill[i] = { name = "Threaten",             use = (string.find(tbuffs, "Holy Seals 3") and (not string.find(pbuffs, "Threaten")) and (arg2 == "threaten")) }
    i=i+1; Skill[i] = { name = "Mana Return",          use = (string.find(tbuffs, "Holy Seals 3")) }
    i=i+1; Skill[i] = { name = "Punishment",           use = ((not friendly) and string.find(tbuffs, "Light Seal III")) }
    i=i+1; Skill[i] = { name = "Holy Strike",          use = (not friendly) }
 
    MyCombat(Skill,arg1)
end
You'll have to pass it the string "threaten" as the 2nd argument if you want to use the Threaten skill or not. So that way you can have one macro for soloing:

Source code

1
/run KnightGeneric()
and one for grouping:

Source code

1
/run KnightGeneric("","threaten")

1,324

Wednesday, February 2nd 2011, 2:05pm

Quoted from "firescue17;383703"

Reposting the original:

Well, I am out of ideas. It does not work. The Theory seems sound. Either there is a problem with my understanding of GetActionUseable() or as more likely seems to be the case is the way the game engine itself (not DIYCE) handles Blind Stab and Blind Spot which are being used to identiy front and back. My suspicion at this point lies with the game engine...


As I'm sure you've already figured out, GetActionUsable() only checks to see if the skill is ready (not on cooldown), that you have sufficient resources (mana/rage/energy/focus), and that the target is in range. So it doesn't really live up to it's name. This is also the case for skills like Feint, which is only usable after the target dodges... you can't use GetActionUsable() to determine if that event occurred.

1,325

Wednesday, February 2nd 2011, 2:11pm

Quoted from "pickycb;383851"

I posted the below code just as it reads. Everything works except the Mana Return. Afterwards, I tried changing it to "Holy Seals 1" but to no avail. Any suggestions? I tried searcing this thread & couldn't find it. Sorry if I missed it.

PS: I am only a level 7 Knight.
PPS: excellent work with all this coding. You've got a talent!


Are you sure the target actually had 3 Holy Seals on it? Those only get applied on auto-attack hits, and they aren't the same as Light Seals (some people get that confused). It's possible that you're killing the mob before 3 seals are applied.

You can re-try your 1-seal experiment, but use the string "Holy Seal" instead.

1,326

Wednesday, February 2nd 2011, 6:20pm

You are absolutely right. Must be I was killing just before Mana Return could take place. I changed to "Holy Seal" & it's beautiful. Now I can adjust between 1,2, & 3 as I move up in mobs.

You're great! Thanks for helping everyone.

1,327

Wednesday, February 2nd 2011, 8:23pm

Quoted from "pickycb;383948"

You are absolutely right. Must be I was killing just before Mana Return could take place. I changed to "Holy Seal" & it's beautiful. Now I can adjust between 1,2, & 3 as I move up in mobs.

You're great! Thanks for helping everyone.


For 2 seals, use "Holy Seals 2", and of course back to the original for 3 seals.

1,328

Friday, February 4th 2011, 3:58am

I've got this code pasted in just as shown and I can't get it to work for some reason.

Source code

1
   i=i+1; Skill[I] = { name = "Action: 72 (Health Potion)",    use =  (PctH("player") < .75) }[/I]


I've tried Backpack Slots & action bar slots. (left side first 2 slots should be 61 & 62). I've tried my hardest all day to read, research the forums, learn what I can but I can't seem to figure it out.

I found the slot #'s but I can't be sure if the posts I'm reading are right. I even moved the pots to the lower bar so I could be sure what the Action bar slot#'s were.

I know the original code system works with & without this line, but I can't get him to drink a mana nor a health potion. Any idea's?

PS: I'm havin loads of fun working with this!




Here's the whole code....just in case!

[i]

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
function KnightCombo2(arg1, arg2)
    local Skill = {}
    local i = 0
    local friendly = (not UnitCanAttack("player", "target"))
 local shield = (GetEquipSlotInfo(17) ~= nil)
    local combat = GetPlayerCombatState()
    local pbuffs = BuffList("player")
    local tbuffs = BuffList("target")
    local health, buffs
    if friendly then
        health = PctH("target")
        buffs = tbuffs
    else
        health = PctH("player")
        buffs = pbuffs
    end
    i=i+1; Skill[i] = { name = "Action: 34 (Mana)",    use = (PctS("player") <= .75) }
 i=i+1; Skill[i] = { name = "Action: 36 (Health)",  use = (PctH("player") <= .75) }
 i=i+1; Skill[i] = { name = "Enhanced Armor",       use = (not string.find(pbuffs, "Enhanced Armor")) }
    i=i+1; Skill[i] = { name = "Holy Seal",            use = (not string.find(pbuffs, "Holy Seal")) }
    i=i+1; Skill[i] = { name = "Holy Shield",          use = (health <= .55) }
 i=i+1; Skill[i] = { name = "Urgent Heal",          use = (health <= .75) }
    i=i+1; Skill[i] = { name = "Regenerate",           use = ((health <= .85) and (not string.find(buffs, "Regenerate"))) }
    i=i+1; Skill[i] = { name = "Shield of Atonement",  use = ((not friendly) and shield) }
    i=i+1; Skill[i] = { name = "Whirlwind Shield",     use = ((not friendly) and shield) }
    i=i+1; Skill[i] = { name = "Mana Return",          use = (string.find(tbuffs, "Holy Seals 3")) }
    i=i+1; Skill[i] = { name = "Punishment",           use = ((not friendly) and string.find(tbuffs, "Light Seal III")) }
    i=i+1; Skill[i] = { name = "Holy Strike",          use = (not friendly) }
    MyCombat(Skill,arg1)
end

ghostwolf82

Professional

Posts: 859

Location: Kalvans Trunk

Occupation: It's dark in here

  • Send private message

1,329

Friday, February 4th 2011, 5:27am

I do believe you need to insert the name of the actual health/mana potion into the code.

Source code

1
i=i+1; Skill[i] = { name = "Action: 34 ([B]CHANGE THIS TO THE POTION NAME[/B])",    use = (PctS("player") <= .75) }


However there are other ways to cause the use of potions that are easier to use, and easier to edit on the fly...Whereas all you have to do is to change out the potion currently in the action bar slot, and do not need to edit the code each time you get a new potion.

1,330

Friday, February 4th 2011, 1:04pm

Quoted from "pickycb;384499"

I've got this code pasted in just as shown and I can't get it to work for some reason.

Source code

1
   i=i+1; Skill[I] = { name = "Action: 72 (Health Potion)",    use =  (PctH("player") < .75) }[/I]
I've tried Backpack Slots & action bar slots. (left side first 2 slots should be 61 & 62). I've tried my hardest all day to read, research the forums, learn what I can but I can't seem to figure it out.


You're missing the index on the Skill table entry. Try this:

Source code

1
   i=i+1; Skill[i] = { name = "Action: 72 (Health Potion)",    use =  (PctH("player") < .75) }


Lua can be sooo picky sometimes :)

Kethgwan

Beginner

Posts: 0

Location: Nottingham, UK

  • Send private message

1,331

Friday, February 4th 2011, 2:39pm

Hey has something changed with the DIYCE addon? Mine has been working perfectly fine for quite awhile now but for some unknown reason it stopped working yesterday.

I've tried deleteing all of the files and setting it up from scratch again but still no luck.

I can do the /run ReadSkills() and it will tell me that it's "Reading Class Skills"
however when I actually go to use the macro I get the "global" error of it being a nill value.

Any idea what's going on?

Thanks.
-Kethgwan-
-Insurgence-
-Grimdal - PVP-
-Rogue - 62 | Scout - 62-

~39,452 Physical Attack (unbuffed)~
~51,041 Hit Points (unbuffed)~

1,332

Friday, February 4th 2011, 2:59pm

Quoted from "Kethgwan;384590"

Hey has something changed with the DIYCE addon? Mine has been working perfectly fine for quite awhile now but for some unknown reason it stopped working yesterday.

I've tried deleteing all of the files and setting it up from scratch again but still no luck.

I can do the /run ReadSkills() and it will tell me that it's "Reading Class Skills"
however when I actually go to use the macro I get the "global" error of it being a nill value.

Any idea what's going on?

Thanks.


Mine is still working. Can you post the function that your macro is calling?

Thanks.

Kethgwan

Beginner

Posts: 0

Location: Nottingham, UK

  • Send private message

1,333

Friday, February 4th 2011, 3:07pm

It's :

Source code

1
/run if IsShiftKeyDown() then RogueScout("v1","cooldowns") else RogueScout("v1") end


For :

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
function RogueScout(arg1, arg2)
    local Skill = {}
    local i = 0
    local energy = UnitMana("player")
    local focus = UnitSkill("player")
    local friendly = (not UnitCanAttack("player", "target"))
    local combat = GetPlayerCombatState()
    local tspell,ttime,telapsed = UnitCastingTime("target")
    local pbuffs = BuffList("player")
    local tbuffs = BuffList("target")



    i=i+1; Skill[i] = { name = "Fervent Attack",  use = (arg2 == "cooldowns") }
    i=i+1; Skill[i] = { name = "Energy Thief",    use = (arg2 == "cooldowns") }
    i=i+1; Skill[i] = { name = "Assassins Rage",  use = (arg2 == "cooldowns") }

    i=i+1; Skill[i] = { name = "Shot",            use = ((not friendly) and (energy <= 30)) }
    i=i+1; Skill[i] = { name = "Vampire Arrows",  use = ((not friendly) and (energy <= 20)) }


    i=i+1; Skill[i] = { name = "Wound Attack",    use = ((not friendly) and (energy >= 35) and string.find(tbuffs, "Bleed") and string.find(tbuffs, "Grievous Wound")) } 
    i=i+1; Skill[i] = { name = "Low Blow",        use = ((not friendly) and (energy >= 25) and string.find(tbuffs, "Bleed")) }
    i=i+1; Skill[i] = { name = "Shadowstab",      use = ((not friendly) and (energy >= 20)) }  


    MyCombat(Skill,arg1)
end
-Kethgwan-
-Insurgence-
-Grimdal - PVP-
-Rogue - 62 | Scout - 62-

~39,452 Physical Attack (unbuffed)~
~51,041 Hit Points (unbuffed)~

1,334

Friday, February 4th 2011, 3:40pm

Nothing really jumps out at me. Try running just:

/run RogueScout("v2")

And see if you get any information.

Also, look for a red flashing icon around your minimap in case there's an error.

Kethgwan

Beginner

Posts: 0

Location: Nottingham, UK

  • Send private message

1,335

Friday, February 4th 2011, 3:46pm

Quoted from "Sixpax;384600"

Nothing really jumps out at me. Try running just:

/run RogueScout("v2")

And see if you get any information.

Also, look for a red flashing icon around your minimap in case there's an error.


Using /run RogueScout("v2") I get the same error message

"[string 'RogueScout('V2')']:1: attempt to call global 'RogueScout' (a nil value)"

I don't get it either, like I said I have been using it for quite awhile without any problems it just stopped working yesterday. No new addons installed or anything changed oO it's very weird..
-Kethgwan-
-Insurgence-
-Grimdal - PVP-
-Rogue - 62 | Scout - 62-

~39,452 Physical Attack (unbuffed)~
~51,041 Hit Points (unbuffed)~

1,336

Friday, February 4th 2011, 5:01pm

Quoted from "Kethgwan;384601"

Using /run RogueScout("v2") I get the same error message

"[string 'RogueScout('V2')']:1: attempt to call global 'RogueScout' (a nil value)"

I don't get it either, like I said I have been using it for quite awhile without any problems it just stopped working yesterday. No new addons installed or anything changed oO it's very weird..


That error means it's not able to parse your .lua file so it's not being read into memory. Any other code in that same file that you might have changed? Also, did you remember to add your .lua filename to the DIYCE.toc file (assuming it's in the same directory)?

Kethgwan

Beginner

Posts: 0

Location: Nottingham, UK

  • Send private message

1,337

Friday, February 4th 2011, 5:45pm

Quoted from "Sixpax;384615"

That error means it's not able to parse your .lua file so it's not being read into memory. Any other code in that same file that you might have changed? Also, did you remember to add your .lua filename to the DIYCE.toc file (assuming it's in the same directory)?


Theres no other code in that file other than what I posted and yeah I tripple checked all that.

The only thing I did yesterday which could have effected it (although I don't see how) is I downloaded and installed the slim client just to see the difference between the two so I had both of the clients installed however in their own folders with their own addon folders.

While I have been trying to figure it out today I have since removed the slim client since I couldn't really see any difference and my computer can handle the normal client anyways so I just removed it to see if that was causing some weird conflict but it wasn't as it's still not working since removing the slim client and all of its remaining files after the uninstall.
-Kethgwan-
-Insurgence-
-Grimdal - PVP-
-Rogue - 62 | Scout - 62-

~39,452 Physical Attack (unbuffed)~
~51,041 Hit Points (unbuffed)~

1,338

Friday, February 4th 2011, 5:53pm

The only other thing I can suggest is installing the "ABugCatcher" addon from curse.com and see if it reports any errors. That does a better job than the in-game error catcher.

Also, if you just want to test that the DIYCE is functioning, you can run this macro:

Source code

1
/run MyCombat({ [1] = { name = "Shot", use = true }}, "v1")


If that fires Shot, then it's working.

Kethgwan

Beginner

Posts: 0

Location: Nottingham, UK

  • Send private message

1,339

Friday, February 4th 2011, 6:09pm

Quoted from "Sixpax;384644"

The only other thing I can suggest is installing the "ABugCatcher" addon from curse.com and see if it reports any errors. That does a better job than the in-game error catcher.

Also, if you just want to test that the DIYCE is functioning, you can run this macro:

Source code

1
/run MyCombat({ [1] = { name = "Shot", use = true }}, "v1")
If that fires Shot, then it's working.



Using

Source code

1
/run MyCombat({ [1] = { name = "Shot", use = true }}, "v1")


worked fine, fired off the shot. Checking out that bug catcher addon now.
-Kethgwan-
-Insurgence-
-Grimdal - PVP-
-Rogue - 62 | Scout - 62-

~39,452 Physical Attack (unbuffed)~
~51,041 Hit Points (unbuffed)~

ghostwolf82

Professional

Posts: 859

Location: Kalvans Trunk

Occupation: It's dark in here

  • Send private message

1,340

Friday, February 4th 2011, 6:26pm

My only suggestion would be to encapsulate the string.find's in your code. I have ran into errors when those are not encapsulated.

Like this:

Source code

1
i=i+1; Skill[i] = { name = "Low Blow",        use = ((not friendly) and (energy >= 25) and (string.find(tbuffs, "Bleed"))) }