From 361816557b78538da588b044eece3822e619e964 Mon Sep 17 00:00:00 2001 From: "Johnny C. Lam" Date: Wed, 21 May 2014 13:08:08 +0000 Subject: [PATCH] Generate reference scripts from SimulationCraft profiles. These reference scripts are modified by hand to create the default Ovale scripts. Save the generated scripts to more easily see what has changed in the SimulationCraft action lists and to determine what needs to be updated in the default scripts. git-svn-id: svn://svn.curseforge.net/wow/ovale/mainline/trunk@1481 d5049fe3-3747-40f7-a4b5-f36d6801af5f --- OvaleSimulationCraft.lua | 25 +- generate.lua | 5 +- scripts/files.xml | 30 ++ .../simulationcraft_deathknight_frost_1h_t16h.lua | 180 ++++++++++++ .../simulationcraft_deathknight_frost_2h_t16h.lua | 191 ++++++++++++ .../simulationcraft_deathknight_unholy_t16h.lua | 203 +++++++++++++ scripts/simulationcraft_druid_balance_t16h.lua | 124 ++++++++ scripts/simulationcraft_druid_feral_t16h.lua | 303 ++++++++++++++++++++ ...mulationcraft_druid_feral_t16h_adv_rotation.lua | 303 ++++++++++++++++++++ scripts/simulationcraft_hunter_bm_t16h.lua | 136 +++++++++ scripts/simulationcraft_hunter_mm_t16h.lua | 150 ++++++++++ scripts/simulationcraft_hunter_sv_t16h.lua | 133 +++++++++ scripts/simulationcraft_mage_arcane_t16h.lua | 148 ++++++++++ scripts/simulationcraft_mage_fire_t16h.lua | 128 +++++++++ scripts/simulationcraft_mage_frost_t16h.lua | 128 +++++++++ .../simulationcraft_monk_windwalker_1h_t16h.lua | 141 +++++++++ .../simulationcraft_monk_windwalker_2h_t16h.lua | 141 +++++++++ .../simulationcraft_paladin_protection_t16h.lua | 136 +++++++++ .../simulationcraft_paladin_retribution_t16h.lua | 154 ++++++++++ scripts/simulationcraft_priest_shadow_t16h.lua | 156 ++++++++++ .../simulationcraft_rogue_assassination_t16h.lua | 117 ++++++++ scripts/simulationcraft_rogue_combat_t16h.lua | 141 +++++++++ scripts/simulationcraft_rogue_subtlety_t16h.lua | 154 ++++++++++ scripts/simulationcraft_shaman_elemental_t16h.lua | 160 +++++++++++ .../simulationcraft_shaman_enhancement_t16h.lua | 211 ++++++++++++++ .../simulationcraft_warlock_affliction_t16h.lua | 155 ++++++++++ .../simulationcraft_warlock_demonology_t16h.lua | 159 ++++++++++ .../simulationcraft_warlock_destruction_t16h.lua | 136 +++++++++ scripts/simulationcraft_warrior_arms_t16h.lua | 171 +++++++++++ scripts/simulationcraft_warrior_fury_1h_t16h.lua | 272 ++++++++++++++++++ scripts/simulationcraft_warrior_fury_2h_t16h.lua | 275 ++++++++++++++++++ .../simulationcraft_warrior_protection_t16h.lua | 154 ++++++++++ 32 files changed, 5016 insertions(+), 4 deletions(-) create mode 100644 scripts/simulationcraft_deathknight_frost_1h_t16h.lua create mode 100644 scripts/simulationcraft_deathknight_frost_2h_t16h.lua create mode 100644 scripts/simulationcraft_deathknight_unholy_t16h.lua create mode 100644 scripts/simulationcraft_druid_balance_t16h.lua create mode 100644 scripts/simulationcraft_druid_feral_t16h.lua create mode 100644 scripts/simulationcraft_druid_feral_t16h_adv_rotation.lua create mode 100644 scripts/simulationcraft_hunter_bm_t16h.lua create mode 100644 scripts/simulationcraft_hunter_mm_t16h.lua create mode 100644 scripts/simulationcraft_hunter_sv_t16h.lua create mode 100644 scripts/simulationcraft_mage_arcane_t16h.lua create mode 100644 scripts/simulationcraft_mage_fire_t16h.lua create mode 100644 scripts/simulationcraft_mage_frost_t16h.lua create mode 100644 scripts/simulationcraft_monk_windwalker_1h_t16h.lua create mode 100644 scripts/simulationcraft_monk_windwalker_2h_t16h.lua create mode 100644 scripts/simulationcraft_paladin_protection_t16h.lua create mode 100644 scripts/simulationcraft_paladin_retribution_t16h.lua create mode 100644 scripts/simulationcraft_priest_shadow_t16h.lua create mode 100644 scripts/simulationcraft_rogue_assassination_t16h.lua create mode 100644 scripts/simulationcraft_rogue_combat_t16h.lua create mode 100644 scripts/simulationcraft_rogue_subtlety_t16h.lua create mode 100644 scripts/simulationcraft_shaman_elemental_t16h.lua create mode 100644 scripts/simulationcraft_shaman_enhancement_t16h.lua create mode 100644 scripts/simulationcraft_warlock_affliction_t16h.lua create mode 100644 scripts/simulationcraft_warlock_demonology_t16h.lua create mode 100644 scripts/simulationcraft_warlock_destruction_t16h.lua create mode 100644 scripts/simulationcraft_warrior_arms_t16h.lua create mode 100644 scripts/simulationcraft_warrior_fury_1h_t16h.lua create mode 100644 scripts/simulationcraft_warrior_fury_2h_t16h.lua create mode 100644 scripts/simulationcraft_warrior_protection_t16h.lua diff --git a/OvaleSimulationCraft.lua b/OvaleSimulationCraft.lua index 5a501ca..448b393 100644 --- a/OvaleSimulationCraft.lua +++ b/OvaleSimulationCraft.lua @@ -23,6 +23,7 @@ local strlower = string.lower local strmatch = string.match local strsplit = strsplit local strupper = string.upper +local strsub = string.sub local tconcat = table.concat local tinsert = table.insert local tonumber = tonumber @@ -174,11 +175,24 @@ do for class in pairs(SIMC_CLASS) do local simcName = profile[class] if simcName then + profile.simcName = strsub(simcName, 2, -2) profile.class = class - self:Append(script, "# Based on SimulationCraft profile %s.", simcName) - self:Append(script, "# class=%s", class) + break end end + + self:Append(script, "local _, Ovale = ...") + self:Append(script, "local OvaleScripts = Ovale.OvaleScripts") + self:Append(script, "") + self:Append(script, "do") + self:Append(script, [[ local name = "SimulationCraft: %s"]], profile.simcName) + self:Append(script, [[ local desc = "[5.4] SimulationCraft: %s" ]], profile.simcName) + self:Append(script, " local code = [[") + + self:Append(script, [[# Based on SimulationCraft profile "%s".]], profile.simcName) + if profile.class then + self:Append(script, "# class=%s", profile.class) + end if profile.spec then self:Append(script, "# spec=%s", profile.spec) end @@ -231,6 +245,12 @@ do for _, v in ipairs(symbols) do self:Append(script, format("# %s", v)) end + self:Append(script, "]]") + if profile.class then + self:Append(script, [[ OvaleScripts:RegisterScript("%s", name, desc, code, "reference")]], strupper(profile.class)) + end + self:Append(script, "end") + return script end end @@ -380,6 +400,7 @@ do ["^$"] = false, ["^auto_attack$"] = false, ["^auto_shot$"] = false, + ["^elixir$"] = false, ["^flask$"] = false, ["^food$"] = false, ["^snapshot_stats$"] = false, diff --git a/generate.lua b/generate.lua index c3dafdc..16122cc 100644 --- a/generate.lua +++ b/generate.lua @@ -7,7 +7,7 @@ do local OvaleSimulationCraft = Ovale.OvaleSimulationCraft local profilesDirectory = "..\\SimulationCraft\\profiles\\Tier16H" - local outputDirectory = "profiles" + local outputDirectory = "scripts" local saveInput = io.input() local saveOutput = io.output() @@ -23,7 +23,8 @@ do local simc = OvaleSimulationCraft(simcStr) simc.simcComments = true - local outputFileName = string.gsub(filename, ".simc", ".txt") + local outputFileName = "simulationcraft_" .. string.lower(string.gsub(filename, ".simc", ".lua")) + outputFileName = string.gsub(outputFileName, "death_knight", "deathknight") print("Generating " .. outputFileName) local outputName = outputDirectory .. "/" .. outputFileName io.output(outputName) diff --git a/scripts/files.xml b/scripts/files.xml index 11b8383..1a94f89 100644 --- a/scripts/files.xml +++ b/scripts/files.xml @@ -27,4 +27,34 @@