diff --git a/README.md b/README.md index dcfeaaf..e476759 100644 --- a/README.md +++ b/README.md @@ -56,13 +56,12 @@ Did some miscellaneous house-keeping, like moving global config settings into th CRC | MD5 | SHA1 ------------- | ------------- | ------------- B19ED489 | CDD3C8C37322978CA8669B34BC89C804 | 6B47BB75D16514B6A476AA0C73A683A2A4C18765 -3. Clone the repository or download the zip file and place the neat-mario folder in your \BizHawk-2.2\Lua\SNES\ folder. (like: BizHawk-2.2\Lua\SNES\neat-mario) -4. Open config.lua and change variable _M.BizhawkDir to point on your BizHawk directory. -5. Open BizHawk (EmuHawk.exe) -6. Click File > Open ROM (Ctrl + O) and find Super Mario World (USA).sfc file. -7. Once loaded, click Tools > Lua Console -8. In the new window, click Script > Open Script (Ctrl + O) and select mario-neat.lua in your \BizHawk-2.2\Lua\SNES\neat-mario folder. -9. The NEAT control window will display and you can then click Start to begin training. +3. Clone the repository or download the zip file and place the neat-mario folder in your BizHawk-2.2.2\Lua\SNES\ folder. (like: BizHawk-2.2.2\Lua\SNES\neat-mario) +4. Open BizHawk (EmuHawk.exe) +5. Click File > Open ROM (Ctrl + O) and find Super Mario World (USA).sfc file. +6. Once loaded, click Tools > Lua Console +7. In the new window, click Script > Open Script (Ctrl + O) and select mario-neat.lua in your BizHawk-2.2.2\Lua\SNES\neat-mario folder. +8. The NEAT control window will display and you can then click Start to begin training. [1]:https://github.com/wts42/Neat-Genetic-Mario/wiki/MarI-O [2]:https://github.com/mam91/Neat-Genetic-Mario diff --git a/neat-mario/FitnessChangesOnly/config.lua b/neat-mario/FitnessChangesOnly/config.lua index 011199f..03ee2ce 100644 --- a/neat-mario/FitnessChangesOnly/config.lua +++ b/neat-mario/FitnessChangesOnly/config.lua @@ -1,8 +1,8 @@ local _M = {} _M.NeatConfig = { ---Filename = "DP1.state", -Filename = "C:/Users/mmill/Downloads/BizHawk-2.2/Lua/SNES/neat-mario/pool/DP1.state", +--Filename = "DonutPlains1.state", +Filename = "C:/Users/mmill/Downloads/BizHawk-2.2.2/Lua/SNES/neat-mario/pool/DonutPlains1.state", Population = 300, DeltaDisjoint = 2.0, DeltaWeights = 0.4, diff --git a/neat-mario/FitnessChangesOnly/mario-neat.lua b/neat-mario/FitnessChangesOnly/mario-neat.lua index b100818..aa9247e 100644 --- a/neat-mario/FitnessChangesOnly/mario-neat.lua +++ b/neat-mario/FitnessChangesOnly/mario-neat.lua @@ -964,7 +964,7 @@ function flipState() end function loadPool() - filename = forms.openfile("DP1.state.pool","C:\Users\mmill\Downloads\BizHawk-2.2\Lua\SNES\neat-mario\pool") + filename = forms.openfile("DonutPlains1.state.pool","C:\Users\mmill\Downloads\BizHawk-2.2.2\Lua\SNES\neat-mario\pool") --local filename = forms.gettext(saveLoadFile) forms.settext(saveLoadFile, filename) loadFile(filename) @@ -996,7 +996,7 @@ function onExit() forms.destroy(form) end -writeFile("C:/Users/mmill/Downloads/BizHawk-2.2/Lua/SNES/neat-mario/pool/temp.pool") +writeFile("C:/Users/mmill/Downloads/BizHawk-2.2.2/Lua/SNES/neat-mario/pool/temp.pool") event.onexit(onExit) diff --git a/neat-mario/config.lua b/neat-mario/config.lua index 5704ba8..8fd970a 100644 --- a/neat-mario/config.lua +++ b/neat-mario/config.lua @@ -7,15 +7,15 @@ _M.TestName = "test1" --[[ If LoopStates in NeatConfig is enabled it will loop through the states in order changing states with each generation. - States currents have to be manually added to the list below as well as put in the state folder. + States currently have to be manually added to the list below as well as put in the state folder. --]] _M.State = { - "DonutPlains1.state", - "DonutPlains4.state", - "IggyCastle.state", - "YoshiIsland1.state", - "YoshiIsland2.state" + "DonutPlains1.state", + -- "DonutPlains4.state", + -- "IggyCastle.state", + -- "YoshiIsland1.state", + -- "YoshiIsland2.state" } --[[ @@ -29,23 +29,23 @@ _M.State = { _M.StartPowerup = 0 _M.NeatConfig = { -LoopStates = false, -Population = 300, -DeltaDisjoint = 2.0, -DeltaWeights = 0.4, -DeltaThreshold = 1.0, -StaleSpecies = 15, -MutateConnectionsChance = 0.25, -PerturbChance = 0.90, -CrossoverChance = 0.75, -LinkMutationChance = 2.0, -NodeMutationChance = 0.50, -BiasMutationChance = 0.40, -StepSize = 0.1, -DisableMutationChance = 0.4, -EnableMutationChance = 0.2, -TimeoutConstant = 20, -MaxNodes = 1000000, + LoopStates = false, + Population = 300, + DeltaDisjoint = 2.0, + DeltaWeights = 0.4, + DeltaThreshold = 1.0, + StaleSpecies = 15, + MutateConnectionsChance = 0.25, + PerturbChance = 0.90, + CrossoverChance = 0.75, + LinkMutationChance = 2.0, + NodeMutationChance = 0.50, + BiasMutationChance = 0.40, + StepSize = 0.1, + DisableMutationChance = 0.4, + EnableMutationChance = 0.2, + TimeoutConstant = 20, + MaxNodes = 1000000, } _M.ButtonNames = { diff --git a/neat-mario/mario-neat.lua b/neat-mario/mario-neat.lua index a96f881..9362b99 100644 --- a/neat-mario/mario-neat.lua +++ b/neat-mario/mario-neat.lua @@ -969,7 +969,7 @@ function flipState() end function loadPool() - filename = forms.openfile("DP1.state.pool",config.PoolDir) + filename = forms.openfile("DonutPlains1.state.pool",config.PoolDir) --local filename = forms.gettext(saveLoadFile) forms.settext(saveLoadFile, filename) loadFile(filename) diff --git a/neat-mario/pool/.gitkeep b/neat-mario/pool/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/neat-mario/pool/DP1.State b/neat-mario/state/DonutPlains1.state similarity index 100% rename from neat-mario/pool/DP1.State rename to neat-mario/state/DonutPlains1.state