Comments (5)
I've studied and defined installation instructions for both Python and FCEUX below.
Python
Ensure your installation of Python is available in your windows PATH. This can be accomplished on installation - using either Anaconda or vanilla Python installer - by ticking the Add ... to my PATH environment variable option. If you've already installed Python, you'll need to manually adjust your PATH.
- click the Start Menu and type
Advanced
then clickView advanced system settings
. - click the
Advanced
tab, then click theEnvironment Variables...
button- Anaconda (User)
- Under
User Variables
selectPath
then clickEdit
- Click
New
then add the path:%USERPROFILE%\AppData\Local\Continuum\anaconda3
- Under
- Anaconda (System)
- Under
System Variables
selectPath
then clickEdit
- Click
New
then add the path:%SYSTEMROOT%\ProgramData\anaconda3
- Under
- Vanilla Python: TODO
- Anaconda (User)
- Open a Command Prompt and verify that running
python
spawns the interactive Python shell
FCEUX
- Download FCEUX for windows and unzip the contents into
%USERPROFILE%\AppData\Local\FCEUX
- click the Start Menu and type
Advanced
then clickView advanced system settings
. - click the
Advanced
tab, then click theEnvironment Variables...
button - Under
User Variables
selectPath
then clickEdit
- Click
New
then add the path:%USERPROFILE%\AppData\Local\FCEUX
- Open a Command Prompt and verify that running
fceux
spawns an FCEUX window
EDIT: cleanup formatting
from gym-super-mario-bros.
Unfortunately, I overlooked the communication medium between the Python process and FCEUX's Lua interpreter. Because this system is currently using named pipes - a Unix exclusive feature - support for Windows is nontrivial. As seen below, the mkfifo
command doesn't exist on Windows. There are Windows alternatives for named pipe-like support (in Python at least, not sure about Lua), but as I have no use case for this system on Windows I wont be seeking to implement this functionality. Anyone with experience using named piped on Windows is welcome to implement the functionality and open a PR, however.
C:\Users\XianLordOfWorlds\Downloads\gym-super-mario-bros-master\gym-super-mario-bros-master>python play_human.py
Traceback (most recent call last):
File "play_human.py", line 69, in <module>
play(env, keys_to_action=keys_to_action, callback=callback)
File "C:\Users\XianLordOfWorlds\AppData\Local\Continuum\anaconda3\lib\site-packages\gym\utils\play.py", line 116, in play
obs = env.reset()
File "C:\Users\XianLordOfWorlds\AppData\Local\Continuum\anaconda3\lib\site-packages\gym\wrappers\time_limit.py", line 44, in reset
return self.env.reset()
File "C:\Users\XianLordOfWorlds\Downloads\gym-super-mario-bros-master\gym-super-mario-bros-master\gym_super_mario_bros\nes_env.py", line 237, in reset
self._start_emulator()
File "C:\Users\XianLordOfWorlds\Downloads\gym-super-mario-bros-master\gym-super-mario-bros-master\gym_super_mario_bros\nes_env.py", line 108, in _start_emulator
self._open_pipes()
File "C:\Users\XianLordOfWorlds\Downloads\gym-super-mario-bros-master\gym-super-mario-bros-master\gym_super_mario_bros\nes_env.py", line 179, in _open_pipes
os.mkfifo(self._pipe_in_name)
AttributeError: module 'os' has no attribute 'mkfifo'
from gym-super-mario-bros.
The 3.0 release (coming in the next 30 days) features a brand new backend emulator (nes-py) that should be fully windows compatible. I haven't tested this yet, but will get around to it when the 3.0 release is closer to completion. Will report back with results soon.
from gym-super-mario-bros.
Version 3.0 is live. I've not tested windows compatibility, but it should work assuming your python instance can communicate with a C++ 14 compatible compiler.
from gym-super-mario-bros.
As of 3.0.5, Windows is officially supported! Checkout the installation notes over on nes-py (the new emulator that 3.0 runs on). You basically just need to have Visual Studio >=14.0 tools installed. Closing issue.
from gym-super-mario-bros.
Related Issues (20)
- Can't install on M1 MacBook? HOT 4
- exception: access violation reading 0x000000000003C208 HOT 3
- Kindly ask how to produce augmented roms? HOT 1
- SuperMarioBros-v3 environment color conflicts HOT 2
- just got many errors at gym_super_mario_bros HOT 1
- x_pos value unexpectedly drops while it shoud be increasing (Mario still moving to the right) HOT 2
- KeyError: 'render_modes' raised by gym_super_mario_bros.make('SuperMarioBros-v0') HOT 4
- Sample screenshot from random state HOT 1
- `unexpected keyword argument 'stages'` when I want to play the game with keyboard HOT 5
- Incorrect number of arguments from call to env.step(action) HOT 5
- Which action can make the little man jump up to the hightest green pip in the first world? HOT 1
- how to get the mario's position in the rended picture HOT 1
- error while trying to install nes-py HOT 1
- osError after updating python
- Why there doesn't have a function that could set Mario to a certain x-position?
- How to play all stages in `SuperMarioBros-v0` but using models trained in separate stages? HOT 1
- Update step function in nes_env.py HOT 3
- CMD code problem
- env has already been closed
- Random (or predefined) Mario initial position in stage
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gym-super-mario-bros.