a bot that learns to play super mario bros. a work in progress. kinda sucks right now.
Go to file
2018-06-13 01:42:36 +02:00
ars.lua restore step logging, remove adamant (for now) 2018-06-13 01:42:36 +02:00
Base.lua forgot this 2017-06-30 06:17:26 +00:00
config.lua overhaul SNES (importance sampling, adaptation sampling, etc) 2018-06-13 01:19:32 +02:00
gameconfig.lua temporarily remove sprite type (it's busted anyway) 2018-06-10 16:41:07 +02:00
main.lua restore step logging, remove adamant (for now) 2018-06-13 01:42:36 +02:00
nn.lua allow Dense layers without biasing 2018-06-13 01:02:41 +02:00
README.txt display decisions made instead of frame count 2018-06-10 16:48:02 +02:00
smb.lua temporarily remove sprite type (it's busted anyway) 2018-06-10 16:41:07 +02:00
snes.lua restore step logging, remove adamant (for now) 2018-06-13 01:42:36 +02:00
strict.lua split strictness to its own file 2018-05-03 16:48:12 +02:00
util.lua overhaul SNES (importance sampling, adaptation sampling, etc) 2018-06-13 01:19:32 +02:00
xnes.lua restore step logging, remove adamant (for now) 2018-06-13 01:42:36 +02:00

this program is largely incomplete and not in a presentable state.
please be mindful when sharing it.
however, feel free to copy any snippets of code you find useful.

TODOs: (that i can remember right now)
- normalize `for i=a,b` code style
- normalize and/or embed sprite type inputs
- settle on a network architecture
- compute how many input neurons the network needs instead of hardcoding
- add some detection for enemies later in the game
- fix cfg.enable_overlay (smb.lua doesn't see it being changed)

naive:
- learn any combination of buttons, starting from title screen
- learn to run network without frameskip
- learn other games