Skip to main content
You can render games in several ways:

Terminal Rendering (bounded)

Text-based rendering with frame rate limiting:
env = arc.make("ls20", render_mode="terminal")

Terminal Rendering (unbounded)

Text-based rendering without frame rate limiting:
env = arc.make("ls20", render_mode="terminal-fast")

Human Rendering

Matplotlib visualization with frame rate limiting:
env = arc.make("ls20", render_mode="human")

Custom Renderer

Provide your own rendering function:
from arcengine import FrameDataRaw

def my_renderer(steps: int, frame_data: FrameDataRaw) -> None:
    print(f"Step {steps}: {frame_data.state.name}")

env = arc.make("ls20", renderer=my_renderer)