Robot Skill To Camera icon Robot Skill To Camera Capture a robot skill's display and stream selected area as video to a configured camera device with FPS and live preview crop. Try it →
Asked

Script AI Needs Track Mapping

I need a little guidance with getting the Script AI assistant to do what I need. Maybe I'm not asking correctly so it understands what I want.

I've been trying a while now to get it to change a bunch of soundboard controlCommands I currently have have that are using the old track number format to the new filename format.

For example I want it to change all of these commands in a script from

controlCommand("Dr_Smith", "Track_2")
to
ControlCommand("Dr_Smith", "Play", "Evil purpose.mp3");

I've already waisted 200 credits trying to figure this out. Oddly sometimes the AI will convert the commands like I want but it will only do about 8 out of 50 I have scripted. Other times it will tell me I need to give it the mapping to the file names. I thought this Script AI knew my project? If I provide mapping I could do this replacement myself.

This is kinda frustrating and expensive on waisted credits. Any suggestions on how I can talk to this AI to get it to do what I want?

Below is an example of one of the conversations I've had with the scripting AI assent trying to get it to simply replace my track numbers with the corresponding track names (file names) listed in the soundboard:

You:
replace all Track_# with Play + filename from that soundboard.
AI:
Which function(s) do you want me to update first (e.g., doDr_Smith, doR2D2, etc.), and do you already have the exact filenames for each Track_# in those soundboards?
You:
Update all functions. The exact file names for each track_# are the track titles corsponding to the track_# in thouse soundboards.
AI:
I can update every Track_# to Play "filename" but I need the actual file name for each track number in each soundboard (e.g., Dr_Smith Track_1 = "DrSmith.mp3", Track_2 = "Evil purpose.mp3", etc.).
Can you provide the track-number  filename mapping for each soundboard (Dr_Smith, R2D2, Will, Don, Maureen, John, Tufeld, Judy, Wall_e, Penny, Hal9000, Bender, Robby, SFX, Soundboard v4), or confirm you want me to use index-based play (e.g., controlCommand("Dr_Smith", "Play", 1)) instead?


Related Hardware (view all EZB hardware)
EZ-B V4 by EZ-Robot
EZ-B v4/2 robot controller: dual Cortex ARM, Wi-Fi, audio/video, 24 servo/digital ports, I2C/UART, camera and Synthiam ARC control for custom robots
Wi-Fi / USB
Servos 24
Camera
Audio
UART 3
I2C
ADC 8
Digital 24

Related Robot Skills (view all robot skills)
Manage and execute multiple scripts in a single Script Manager using ControlCommand(), with Control Details showing available commands.
Soundboard (EZB) by Synthiam
Play WAV/MP3 via EZ-B v4, manage tracks, add timed scripts for synced robot actions, control via ControlCommand(), volume and clipping indicators.

ARC Pro

Upgrade to ARC Pro

Experience the transformation – subscribe to Synthiam ARC Pro and watch your robot evolve into a marvel of innovation and intelligence.

Author Avatar
PRO
Canada
Twitter YouTube GitHub
#1  

Yes - what you’re seeing is expected behavior, and the missing piece is not the filename format, it’s that the AI needs explicit track mappings or a better project description to safely rewrite every call.

Why it’s asking for mappings

ARC’s AI assistant can see your project context, but it does not automatically infer every soundboard track name from the old Track_# calls unless those tracks are clearly described in the skill and the project metadata is rich enough.

So when you say:

controlCommand("Dr_Smith", "Track_2")

the AI knows you want a change, but it may not reliably know that Track 2 = "Evil purpose.mp3" unless:

  • the Soundboard skill’s tracks are named clearly,
  • the skill title is descriptive,
  • and/or the soundboard list is available in the project context the assistant is using.

The key limitation

The assistant can rewrite code, but it can’t guess the correct filename for every track number if that mapping is not clearly available to it. That’s why you only get partial conversions or a request for track mapping.

Best way to ask it

Instead of:

replace all Track_# with Play + filename

use a very specific request like:

Update every controlCommand() call that uses Soundboard track numbers to the new filename-based Play command. Use the exact filenames from the soundboard track list. Do not leave any Track_# calls unchanged. If any mapping is unclear, stop and ask before changing the code.

Even better, if you want it to succeed in one pass, give it the mapping in a structured way.

Example prompt

Replace all Soundboard track number calls in this script with filename-based Play commands.

Mappings:
Dr_Smith:
Track_1 = "Doctor intro.mp3"
Track_2 = "Evil purpose.mp3"
Track_3 = "Laugh.mp3"

R2D2:
Track_1 = "beep1.wav"
Track_2 = "beep2.wav"

Do this for every soundboard in the script. Keep all other code unchanged.

That gives the assistant an unambiguous conversion table.

A better workflow to avoid wasting credits

Because you’ve already spent a lot of credits, I’d suggest this approach:

Option 1: Convert one soundboard at a time

Ask it to only update one soundboard name per run:

Only convert Track_# calls for the Dr_Smith soundboard to filename-based Play commands. Leave all other soundboards unchanged.

That reduces ambiguity and lets you verify the pattern before doing the next one.

Option 2: Use a script-aware search/replace yourself

If the filenames are already visible in ARC’s Soundboard skill, it may be faster to:

  1. Open the script in ARC
  2. Use Find
  3. Replace controlCommand("Dr_Smith", "Track_2") manually with the correct Play command
  4. Repeat with the rest

For large scripts, though, the ARC AI Assistant can still be useful if you feed it the exact mappings.

Important: make the AI assistant work with your project setup

Per the ARC AI Assistant workflow, it helps a lot if you:

  • rename soundboard skills to meaningful names
  • make sure the track titles in the Soundboard are descriptive
  • fill in AI descriptions on scripts and skills

That way the assistant has better context when rewriting code.

See:

One more thing: use filename-based Play exactly

For Soundboard (EZB), the filename-based command should look like:

controlCommand("Dr_Smith", "Play", "Evil purpose.mp3")

If you want scripts embedded in the audio timeline to run, you’d use the 4-parameter form:

controlCommand("Dr_Smith", "Play", "Evil purpose.mp3", true)

My recommendation

If you want, paste one soundboard’s full track list and I can help you craft the exact prompt that will make the ARC AI Assistant do a clean full conversion without wasting more credits.

Or, if you paste one of your scripts here, I can help you convert the Track_# calls into a proper JavaScript version using the filename-based Play commands.

I am a customer support AI and still learning. Please verify important answers in our support documentation. For advanced AI features, use the AI Script Agent built into ARC.