Skip to main content

Arena Presets

RODENT provides six predefined arena configurations.

All presets are JSON files stored in:

presets/

Each preset uses:

schema_version: 2

and defines its arena, simulation settings, stimuli, protocol, treatment, controller, rodent configuration, and UI settings.

The six presets are:

PresetRegionsWallsDoorsPrimary purpose
Multivariate Concentric Square Field9137Anxiety, exploration, shelter-seeking and risk assessment
Open Field Test100Locomotion, anxiety and habituation
Light Dark Box211Light aversion and preference
T-Maze4110Spatial decision-making and memory
Four Room Arena988Zone preference and place conditioning
Complex Habitat9107Multi-feature naturalistic behaviour

These are intended experimental configurations. Their stated purposes describe the behaviour each configuration is designed to investigate; they should not be interpreted as evidence that the simulator itself scientifically validates those behaviours.

Preset Location

The complete preset collection is:

presets/
├── mcsf_sprint_one.json
├── open_field.json
├── light_dark_box.json
├── t_maze.json
├── four_room_arena.json
└── complex_habitat.json

1. Multivariate Concentric Square Field

File:

presets/mcsf_sprint_one.json

Name:

Multivariate Concentric Square Field

The MCSF preset is the most feature-rich of the standard arena configurations.

It combines multiple behavioural zones into a single arena.

Arena

The arena contains:

  • 9 regions
  • 13 inner walls
  • 7 doors
  • 6 material definitions
  • outer walls
  • raised bridge geometry

The outer wall height is configured as:

28

Regions

The arena contains regions representing different functional areas, including:

  • open areas
  • corridors
  • shelter-related areas
  • risk areas
  • exploration areas
  • transition areas
  • bridge-related areas

Walls and Doors

The 13 inner walls divide the arena into its functional zones.

Seven doors provide controlled passages between areas.

Door states can therefore be used to control access between regions.

Bridge

The preset includes:

mcsf_bridge

The bridge configuration specifies:

type: bridge
region_id: bridge
entry_region_id: bridge_slope_entry
exit_region_id: bridge_slope_exit
elevation: 6.0

The renderer creates:

  • bridge base
  • entry ramp
  • exit ramp

Stimuli

The preset includes:

  • bridge light
  • DCR odour
  • ambient sound

Treatment

The treatment configuration uses a medicine condition with:

Dose: 10 mg
Administration step: 50

Intended Use

The MCSF configuration is designed to combine:

  • anxiety-related exploration
  • shelter-seeking
  • risk assessment
  • exploration of different arena zones

It also demonstrates several renderer features in one preset.


2. Open Field Test

File:

presets/open_field.json

Name:

Open Field Test

The Open Field Test is the simplest preset.

Arena

The arena contains:

  • 1 region
  • 0 inner walls
  • 0 doors
  • 6 material definitions

The configuration is an open arena without internal barriers.

Stimulus

The preset includes an active field light.

Intended Use

The preset is designed for general measurements involving:

  • locomotion
  • exploration
  • anxiety-related behaviour
  • habituation

Because there are no internal walls or doors, it provides a simple environment for observing movement without complex region transitions.


3. Light Dark Box

File:

presets/light_dark_box.json

Name:

Light Dark Box

The Light Dark Box divides the arena into two contrasting environments.

Arena

The arena contains:

  • 2 regions
  • 1 divider wall
  • 1 circular door
  • 6 material definitions

The two main regions are:

light_room
dark_room

Door

The divider contains a circular door connecting the two rooms.

The door provides controlled movement between the light and dark environments.

Stimuli

The preset includes:

  • an active light source in the light room
  • a disabled dark odour stimulus

Intended Use

The configuration is designed for investigating:

  • light aversion
  • preference between contrasting zones
  • transitions between light and dark environments

4. T-Maze

File:

presets/t_maze.json

Name:

T-Maze

The T-Maze represents a branching decision environment.

Arena

The arena contains:

  • 4 regions
  • 11 inner walls
  • 0 doors
  • no outer walls
  • 6 material definitions

The four regions are:

left_arm
upper_arm
lower_arm
junction

Stimuli

The preset contains:

  • an active left-arm light
  • a disabled right-side odour stimulus

Intended Use

The T-Maze is designed for:

  • spatial decision-making
  • arm choice
  • navigation through a branching environment
  • spatial memory tasks

5. Four Room Arena

File:

presets/four_room_arena.json

Name:

Four Room Arena

The Four Room Arena combines four rooms with a central connecting hub.

Arena

The arena contains:

  • 9 regions
  • 8 inner walls
  • 8 doors
  • 6 material definitions

The configuration represents four rooms connected through a cross-shaped central corridor or hub.

Stimuli

The preset includes:

  • an active hub light
  • a disabled north-west odour stimulus

Doors

Eight doors provide controlled transitions between the different rooms and connecting areas.

Intended Use

The configuration is designed for:

  • zone preference
  • place conditioning
  • movement between multiple rooms
  • repeated region transitions

6. Complex Habitat

File:

presets/complex_habitat.json

Name:

Complex Habitat

The Complex Habitat is designed to demonstrate a more naturalistic multi-region environment.

Arena

The arena contains:

  • 9 regions
  • 10 inner walls
  • 7 doors
  • 6 material definitions

The configuration includes:

  • shelter areas
  • foraging areas
  • corridors
  • bridge-related areas
  • multiple connected regions

Stimuli

The preset contains:

  • bridge light
  • dark odour
  • foraging tone
  • centre light

Protocol

The protocol includes events at:

Step 30
Step 60
Step 90

These events allow stimulus activity to change during the experiment.

Treatment

The treatment configuration includes:

Medicine
Dose: 10 mg
Administration step: 50

Intended Use

The Complex Habitat is intended to demonstrate:

  • multi-room navigation
  • shelter and exploration behaviour
  • foraging-related scenarios
  • stimulus scheduling
  • treatment configuration
  • complex arena geometry

It is also useful as an integration preset because it exercises many of the arena engine's supported features.


Preset Feature Comparison

The six presets deliberately cover different levels of arena complexity.

FeatureMCSFOpen FieldLight Dark BoxT-MazeFour RoomComplex Habitat
Multiple regionsYesNoYesYesYesYes
Inner wallsYesNoYesYesYesYes
DoorsYesNoYesNoYesYes
Outer wallsYesYesYesNoYesYes
Multiple materialsYesYesYesYesYesYes
StimuliYesYesYesYesYesYes
BridgeYesNoNoNoNoYes
TreatmentYesNoNoNoNoYes
Protocol eventsYesNoNoNoNoYes

Preset Selection

A suitable starting preset depends on the purpose of the experiment.

For a simple movement environment:

Open Field Test

For contrasting light and dark environments:

Light Dark Box

For branching navigation:

T-Maze

For multi-room preference experiments:

Four Room Arena

For a feature-rich naturalistic environment:

Complex Habitat

For a combined multi-zone arena with elevated bridge geometry:

Multivariate Concentric Square Field

Preset Validation

Preset files are checked automatically by the project's validation scripts.

The primary validator is:

tests/validate_presets.py

Run:

python tests/validate_presets.py

The determinism configuration test is:

tests/test_determinism_ci.py

Run:

python tests/test_determinism_ci.py

The validators check the required structure of the preset files, including schema version, simulation configuration, arena configuration, regions, walls, doors, stimuli, protocol, treatment, rodent configuration, and controller settings.

Adding a Custom Preset

Custom presets should be created in:

presets/

and should use:

"schema_version": 2

A custom preset should reference materials defined in its own:

arena.materials

collection.

Region, wall, and door references must remain internally consistent.

In particular:

door.wall

must refer to an existing wall ID, and every referenced:

material_id

should correspond to a material defined in:

arena.materials

After creating a preset, run:

python tests/validate_presets.py

before using it in the application.