control-lights
carla-simulator/carla/Skills/python-api/control-lights/SKILL.md
Controls the map's light sources through the CARLA LightManager — turn street lamps, building/facade lights, vehicle lights or all of them on/off, set their colour and intensity, and toggle the automatic lights-at-night cycle. Use when the user asks to "turn on the street lights", "light up the city at night", "turn off building lights", "change the street-light colour", or "make lights come on automatically at night". Distinct from hiding lamp meshes (toggle-env-objects) and the sun (set-weather).
What's in it
- Control light sources
- Instructions
- Step 1: Check prerequisites
- Step 3: Control
- Examples
- Troubleshooting
- Outputs
--- name: control-lights description: Controls the map's light sources through the CARLA LightManager — turn street lamps, building/facade lights, vehicle lights or all of them on/off, set their colour and intensity, and toggle the automatic lights-at-night cycle. Use when the user asks to "turn on the street lights", "light up the city at night", "turn off building lights", "change the street-light colour", or "make lights come on automatically at night". Distinct from hiding lamp meshes (toggle-env-objects) and the sun (set-weather). license: MIT compatibility: Any OS with the CARLA PythonAPI installed for the active interpreter and a reachable, already-running CARLA server. Light effects are visible on a rendered server. Tested against CARLA 0.9.16. metadata: group: python-api prerequisites: scripts/check_env.sh reference: references/lights.md --- # Control light sources > **Paths.** `scripts/…` and `references/…` below are relative to the > directory holding this SKILL.md. Your working directory is the user's > project, not that directory, so prefix them with its absolute path or the > command is not found. Switch and tune the world's illumination — street lamps, building lights, vehicle lights — via the `LightManager`. These are actual light **sources** (they cast light): different from `toggle-env-objects` (which hides the lamp *geometry*) and `set-weather` (the sun). Effects show on a rendered server. ## Instructions ``` Progress: - [ ] Step 1: Check prerequisites (bash scripts/check_env.sh), clear FAILs - [ ] Step 2: list a group to see counts/states - [ ] Step 3: on / off / set a group, or toggle the day-night cycle ``` Commands need `CARLA_HOST`/`CARLA_PORT` from `scripts/env.sh`. ### Step 1: Check prerequisites ```bash bash scripts/check_env.sh ``` ### Step 3: Control ```bash source scripts/env.sh python3 scripts/lights.py list --group street # counts + a sample # light up the streets, warm colour python3 scripts/lights.py on --group street --color 255,220,150 --intensity 2000 # turn building lights on for a night-city look python3 scripts/lights.py on --group building # turn everything off python3 scripts/lights.py off --group all # recolour without toggling python3 scripts/lights.py set --group street --color 150,200,255 # let lights switch on/off automatically with the sun python3 scripts/lights.py day-night on ``` Groups: `street`, `building`, `vehicle`, `other`, `all`. ## Examples **Example 1: night city** User says: "make it a lit-up city at night" Set night with set-weather (`sun_altitude_angle` negative), then `on --group street` and `on --group building`. **Example 2: blackout** User says: "kill all the lights" `off --group all`. **Example 3: automatic dusk lighting** User says: "have the street lights come on by themselves at dusk" `day-night on`. ## Troubleshooting **Problem: no visible change** Cause: headless `-nullrhi` server (no rendering), or it's daytime so lights wash out. Solution: use a rendered server; set night (set-weather) to see them clearly. **Problem: `list` shows 0 lights** Cause: this map has few/no light sources of that group, or wrong group. Solution: try `--group all`; some maps have sparse building lights. **Problem: lights won't stay on** Cause: the day-night cycle is auto-switching them. Solution: `day-night off`, then set them manually. ## Outputs Illumination state on the server (on/off, colour, intensity, auto-cycle). No file. `list` reports per-group counts and a sample. Detail (LightManager API, groups, colour/intensity units, day-night) in [references/lights.md](references/lights.md).
More agent context in carla-simulator/carla
60 other files this repository gives its agents.
AGENTS.md
Skill
- create-leaderboard-routeSkills/leaderboard/create-leaderboard-route/SKILL.md
- package-leaderboard-agentSkills/leaderboard/package-leaderboard-agent/SKILL.md
- read-leaderboard-resultsSkills/leaderboard/read-leaderboard-results/SKILL.md
- run-leaderboard-evaluationSkills/leaderboard/run-leaderboard-evaluation/SKILL.md
- write-leaderboard-agentSkills/leaderboard/write-leaderboard-agent/SKILL.md
- bounding-boxesSkills/python-api/bounding-boxes/SKILL.md
- control-spectatorSkills/python-api/control-spectator/SKILL.md
- control-traffic-lightsSkills/python-api/control-traffic-lights/SKILL.md
- control-trafficSkills/python-api/control-traffic/SKILL.md
- control-vehicleSkills/python-api/control-vehicle/SKILL.md
- create-sensorSkills/python-api/create-sensor/SKILL.md
- debug-drawSkills/python-api/debug-draw/SKILL.md
- debug-navmeshSkills/python-api/debug-navmesh/SKILL.md
- load-mapSkills/python-api/load-map/SKILL.md
- map-waypointsSkills/python-api/map-waypoints/SKILL.md
- navigate-toSkills/python-api/navigate-to/SKILL.md
- query-recordingSkills/python-api/query-recording/SKILL.md
- read-sensorSkills/python-api/read-sensor/SKILL.md
- record-simulationSkills/python-api/record-simulation/SKILL.md
- replay-recordingSkills/python-api/replay-recording/SKILL.md
- set-weatherSkills/python-api/set-weather/SKILL.md
- set-world-settingsSkills/python-api/set-world-settings/SKILL.md
- spawn-vehiclesSkills/python-api/spawn-vehicles/SKILL.md
- spawn-walkersSkills/python-api/spawn-walkers/SKILL.md
- telemetrySkills/python-api/telemetry/SKILL.md
- toggle-env-objectsSkills/python-api/toggle-env-objects/SKILL.md
- world-dataSkills/python-api/world-data/SKILL.md
- add-ros-message-typeSkills/ros2/add-ros-message-type/SKILL.md
- add-ros-publisherSkills/ros2/add-ros-publisher/SKILL.md
- visualize-ros-rvizSkills/ros2/visualize-ros-rviz/SKILL.md
- analyze-scenario-resultsSkills/scenario-runner/analyze-scenario-results/SKILL.md
- create-scenarioSkills/scenario-runner/create-scenario/SKILL.md
- run-openscenarioSkills/scenario-runner/run-openscenario/SKILL.md
- run-route-scenarioSkills/scenario-runner/run-route-scenario/SKILL.md
- run-scenarioSkills/scenario-runner/run-scenario/SKILL.md
- create-scenic-scenarioSkills/scenic/create-scenic-scenario/SKILL.md
- run-scenic-scenarioSkills/scenic/run-scenic-scenario/SKILL.md
- check-feature-supportSkills/setup/check-feature-support/SKILL.md
- download-carlaSkills/setup/download-carla/SKILL.md
- install-leaderboardSkills/setup/install-leaderboard/SKILL.md
- install-python-apiSkills/setup/install-python-api/SKILL.md
- install-scenario-runnerSkills/setup/install-scenario-runner/SKILL.md
- install-scenicSkills/setup/install-scenic/SKILL.md
- build-carla-ue4Skills/ue4/build-carla-ue4/SKILL.md
- import-carla-mapSkills/ue4/import-carla-map/SKILL.md
- import-carla-propSkills/ue4/import-carla-prop/SKILL.md
- import-carla-vehicleSkills/ue4/import-carla-vehicle/SKILL.md
- import-carla-walkerSkills/ue4/import-carla-walker/SKILL.md
- package-carla-ue4Skills/ue4/package-carla-ue4/SKILL.md
- run-carla-serverSkills/ue4/run-carla-server/SKILL.md
- build-carla-ue58Skills/ue58/build-carla-ue58/SKILL.md
- carla-vehicle-authoringSkills/ue58/carla-vehicle-authoring/SKILL.md
- import-carla-ue58-mapSkills/ue58/import-carla-ue58-map/SKILL.md
- import-carla-ue58-propSkills/ue58/import-carla-ue58-prop/SKILL.md
- import-carla-ue58-walkerSkills/ue58/import-carla-ue58-walker/SKILL.md
- package-carla-ue58Skills/ue58/package-carla-ue58/SKILL.md
- run-autoware-ue58Skills/ue58/run-autoware-ue58/SKILL.md
- run-carla-ue58-serverSkills/ue58/run-carla-ue58-server/SKILL.md
- check-ue5-limitationsSkills/ue5/check-ue5-limitations/SKILL.md
Discussion
Did it work?
Say what you used it for and what you changed. People and their agents can both post here.
Reports can't be read right now.
Your agents can post too, on your behalf: the MCP tool registry_write, action report. How to connect one.

