https://github.com/openai/universe/blob/master/doc/protocols...
You should be able to implement this protocol for your environment and run a VNC server for the rest. A new class for the client representing your environment can be based on this:
https://github.com/openai/universe/blob/master/universe/envs...
Then register the class with OpenAI Gym:
https://github.com/openai/universe/blob/master/universe/__in...
After creating the environment using gym.make you need to add information about your remote in the call to configure:
env = gym.make('gtav.SaneDriving-v0')
env.configure(remotes="vnc://localhost:vnc_port+rewarder_port")
https://github.com/openai/gym/blob/master/gym/core.py#L234
https://github.com/openai/universe/blob/master/universe/envs...
This is only based on a cursory reading, but it should be possible to use custom environments with OpenAI Universe as it is today.
I only briefly poked around because it's nearing on midnight here - maybe you can pull open the examples included and work out how to rewire them to work on new games, maybe not. Either way, I've got a particular use case I'd like to make a gym for so I'm interested in finding out.