Everything about how island profiles work in Super Dodo Terminal (SDT): what they are, what they store, and how to use the Profile Viewer & Editor.
Table of Contents
- What Is a Profile?
- Where Profiles Are Stored
- How to Open the Profile Viewer & Editor
- Profile Selector Bar
- Tab: Basic Settings
- Tab: Groups
- Tab: Switch IPs
- Tab: SDT Profiles
- Tab: Anchors
- Tab: Tile Pairs
- Assigning a Profile to an Island
- Profile Icon (Header Button)
- How Profiles Connect to Other Features
- What's Inside a Profile Folder
- Cross-App Sharing (DTL / HostHelper)
- Tips & Troubleshooting
What Is a Profile?
A profile is a named collection of settings for one island. It holds everything SDT needs to connect, host, and manage that island — Switch IP, host name, island name, Discord bot setup, queue/strike rules, map freeze settings, anchor points, website images, and more.
Profiles are separate from island tiles. You create a profile once, then assign it to an island tile on the main grid. This means:
- You can remove a tile and re-add it later without losing settings.
- Multiple features (hosting, Discord bot, website, orders) all read from the same profile.
- Profiles are portable — they're stored in a shared folder that other Dodo Suite apps (HostHelper, DodoTerminalLite) can also read.
Where Profiles Are Stored
All profiles live in a shared folder:
%AppData%\DodoTerminal\Profiles\<ProfileName>\
Each profile is a subfolder containing config.json and any related files (anchors, strikes, player data, etc.).
If you used an older version of SDT that stored profiles under %AppData%\SuperDodoTerminal\Profiles\, they are automatically copied to the shared location on first launch.
How to Open the Profile Viewer & Editor
Click the profile icon button in the main window header. This is the button with either your chosen profile icon image or a default person icon.
The Profile Viewer & Editor opens as a separate window with six tabs.
Profile Selector Bar
At the top of the window (visible on the Basic Settings tab) is a profile selector bar with:
- Profile dropdown — Pick which profile to view or edit.
- New — Create a brand-new empty profile.
- Rename — Change the name of the currently selected profile.
- Delete — Permanently delete the selected profile and all its files (settings, anchors, strikes, etc.). You'll be asked to confirm.
When you switch profiles in the dropdown, all fields on the Basic Settings tab update to show that profile's saved values.
Tab: Basic Settings
This is where you edit the core settings for one profile. The tab has a second "Selected Profile" dropdown at the top — both dropdowns stay in sync so you always know which profile you're editing.
Sections on this tab
Switch Connection
- Switch IP Address — A dropdown listing all your saved Switch IPs. You can also type an IP directly. Use the "+ Add New" button to save a new IP to your list.
- Port — The connection port (almost always 6000; don't change unless you know your setup needs something different).
Island Info
- Host Name — Your display name (shown on Discord announcements, the website, etc.).
- Custom Island Name — The name displayed for this island across the app and website.
- Profile Notes — A free-text area for your own notes about this profile (visible in the SDT Profiles tab list).
- Island Map Image Path — Path to an image of your island map. Browse to pick a file (PNG, JPG, or SVG). Used on the website island page.
- Zone Map Image Path — Optional. For order islands, this image is shown to visitors when it's their turn so they know which zone to go to.
Group Assignment
- Group Badge — Assign this profile to a group. Islands using this profile will show the group's badge icon on their cards in the main grid. Groups are managed on the Groups tab.
File Output (legacy)
A collapsed section for a legacy feature that saves dodo codes and visitor lists to text files. It's kept for backward compatibility but generally not needed.
Saving
Click the Save button at the bottom right to write all changes to the profile's config.json.
Tab: Groups
Groups let you organize multiple islands together. Each group gets a custom name, abbreviation (like "A", "B", "GC"), and a badge icon. When you assign a profile to a group, every island tile using that profile shows the group's badge on its card.
Current Profile Group
A dropdown to assign the currently selected profile to a group (or "None").
Manage Groups
A list of all your groups, each showing its badge icon, name, and abbreviation. Select a group to Edit or Delete it, or click Add Group to create a new one.
When adding or editing a group, a dialog lets you:
- Set a group name and abbreviation.
- Pick a badge icon from the available badge images.
Badge Icon Upload
You can point to a custom badge folder on your computer containing your own badge images. Files should be named IslandIcon_0.svg, IslandIcon_1.svg, etc. (or .png). If no custom folder is set, SDT uses its built-in badge icons.
Tab: Switch IPs
Switch IPs are managed separately from profiles. This means you can save an IP once and reuse it across any number of profiles.
Add New Switch IP
Type an IP address and an optional label (like "Living Room Switch" or "Upstairs Switch"), then click Add.
Saved Switch IPs
A list of all saved IPs, each showing its label and IP address. Each row has:
- Edit — Change the IP or label.
- X (Delete) — Remove it from the list. Islands already using that IP keep it until you change them.
These saved IPs appear in the Switch IP dropdown on the Basic Settings tab and in other places throughout SDT.
Tab: SDT Profiles
A read-only overview of all your profiles in one scrollable list. Each card shows:
- Profile name
- Folder path (under
Profiles\<name>) - Notes (from the Profile Notes field on Basic Settings)
Each card has two buttons:
Duplicate
Creates a full copy of a profile. Everything is copied — host settings, map file path, anchor points, host rules, strike system, Discord bot token, server ID. A few things are cleared so you can assign new values:
- Switch IP (since each island typically uses a different Switch)
- Discord channel IDs (each island needs unique channels)
You'll be prompted to confirm or change the new profile's name. SDT auto-suggests an incremented name (e.g., "GardenCove" → "GardenCove 2").
Edit
Switches you to the Basic Settings tab with that profile selected so you can start editing it right away.
Tab: Anchors
Anchor points are saved coordinates on your in-game island used for automation (opening/closing the airport gate, teleporting your character, etc.). Each profile stores its own set of anchors.
Current Profile Anchors
Shows how many anchors are configured for the selected profile (out of 7 possible). The Open Anchor Setup button reminds you that anchor setup requires a live connection — you configure anchors from the island detail panel while connected to the Switch.
Bulk Apply Anchors to Multiple Profiles
This powerful feature lets you copy one anchor file to many profiles at once. This is useful when multiple islands share the same map layout and airport position.
Important warnings are displayed prominently because:
- Anchors contain exact map coordinates (where the airport door is, where Orville's desk is, where the host waits).
- If your maps don't have the airport in the same spot, the gate automation won't work correctly.
- If airports match but wait zones differ, you'll need to manually edit the Host Wait Position per profile afterward.
How to use Bulk Apply:
- Click Browse to select a source
anchors.jsonfile. - Check the profiles you want to apply those anchors to (or use "Select All").
- Click Apply Anchors to Selected Profiles.
- Existing anchors in those profiles will be overwritten.
Each profile in the checklist shows a tooltip with its group info for easy identification.
Tab: Tile Pairs
Tile pairs are a record of every profile that has been used on an island tile. They're saved automatically when you set up islands through Quick Setup. This tab lets you manage those pairings.
Each tile pair shows:
- Profile name
- Island name, Switch IP, and port
- A status dot: green if that profile is currently on a tile in the main grid, red if it's not.
Add Tile
For pairs that aren't currently on the grid (red dot), click Add Tile to put that island back on the main grid using the saved profile, IP, and port. This is a quick way to restore islands you removed.
Delete
Remove a tile pair from this list. This only removes it from the pairing list — the profile and all its settings still exist.
Active tile pairs (green dot) can't be deleted from here — remove the island tile from the main grid first.
Assigning a Profile to an Island
Profiles are assigned to island tiles from the Island Detail Panel (click any island tile in the main grid to open it).
- In the island detail panel, click Load Profile.
- The Profile Picker dialog appears, showing all existing profiles.
- Pick one from the list and click OK, or click "Create new profile from this island" to make a fresh profile using the island's current name and Switch IP.
Once assigned:
- The island tile uses that profile's settings for everything — connecting, hosting, Discord, website, orders.
- The profile name shows in the island detail panel's title bar.
- All settings windows (Host Settings, Bot Settings, etc.) read from and save to that profile.
A profile must be assigned before you can connect to a Switch, open host/bot settings, or start any automation.
Profile Icon (Header Button)
The profile icon is the button image in SDT's header bar that opens the Profile Viewer & Editor. This is a cosmetic/app-level setting — it's not stored per island profile.
First-run setup
On your first launch (or if no icon is set), SDT automatically shows a setup dialog where you can:
- Pick a default icon from the theme folder's Profile Icons gallery.
- Browse for your own custom image file.
Changing it later
Go to General Settings and click "Change profile icon" to reopen the same setup dialog.
The chosen icon is saved in the app config (ProfileIconPath) and displayed as the header button.
How Profiles Connect to Other Features
Profiles are the central settings hub. Here's how they feed into everything else:
Connecting to a Switch
When you click Connect on an island, SDT loads IslandProfileConfig from the profile folder, reads the Switch IP (from the island tile first, falling back to the profile), and starts a DodoBot connection. The bot, all services, and automation run using that profile's settings.
Discord Bot & Queue System
When Discord bot settings are configured in the profile (Bot Token, Guild ID, channel IDs), SDT starts a Discord bot service after connecting. If queue settings are enabled, a queue system is created using the profile's queue rules (max visitors, cooldown, join method, etc.). The profile's settings are adapted through IslandProfileConfigAdapter to feed the queue system.
Website / Dashboard
The dashboard server reads profile settings to display island info, maps, boarding passes, host info text, and zone maps. Per-island pages pull their content from the assigned profile's config.
Map Freeze & Automation
Map freeze settings (rate, auto-freeze on connect, map file path) are stored in the profile. Anchor points for gate automation live in the profile's anchors.json.
Order Fulfillment
When order fulfillment is enabled on an island, the profile stores the API port, order zones, and related settings. The order system resolves anchors from the profile folder.
Strike System
Player strikes are stored per-profile in PlayerStrikes.json inside the profile folder. Strike rules (max strikes, punishment type, etc.) are part of the profile config.
Monetization
Profiles store whether an island is monetized, subscription settings, price IDs, and website access controls. The monetization window reads and writes these per profile.
HostHelper Integration
HostHelper reads profiles from the same shared folder. A status.json file in the profile folder is written by SDT while connected, letting HostHelper display live island status. The IslandProfileConfigAdapter bridges SDT's profile format to the queue system's expected format.
What's Inside a Profile Folder
Each profile folder (%AppData%\DodoTerminal\Profiles\<name>\) can contain:
| File | What it stores |
|---|---|
config.json |
All island settings (identity, Switch, Discord, queue, strikes, map, website, monetization, and more) |
anchors.json |
Automation anchor coordinates (host wait, airport door, Orville desk, exit) |
PlayerStrikes.json |
Strike records for visitors to this island |
PlayerDiscordMap.json |
Mapping between in-game player names and Discord accounts |
player_map.json |
Discord bot player registration data |
dodo.txt |
Current Dodo code (written while connected, cleaned up on disconnect) |
status.json |
Live status snapshot for HostHelper (written while connected) |
villager_rotation.txt |
Villager rotation list (when rotation mode is enabled) |
Sensitive values in config.json (Discord bot token, webhook URLs, website password) are encrypted on disk using Windows data protection.
Cross-App Sharing (DTL / HostHelper)
Profiles are stored in a shared location (%AppData%\DodoTerminal\Profiles\) so they work across the Dodo Suite:
- Super Dodo Terminal creates and manages profiles here.
- HostHelper reads profile folders to display island status and can trigger actions via the control bridge.
- DodoTerminalLite (and the original DodoTerminal) can also read/write profiles in this folder.
If profiles were previously in the old location (%AppData%\SuperDodoTerminal\Profiles\), SDT automatically migrates them on first launch.
Tips & Troubleshooting
"Assign a profile first" If you see this message when trying to connect or open settings, click Load Profile in the island detail panel to assign one.
I deleted a profile by mistake The profile folder and all its files are permanently deleted. If you had a duplicate or backup, you can recreate it. The Duplicate feature on the SDT Profiles tab is a good way to keep backups of important profiles.
My anchors don't work after bulk apply Anchors contain exact map coordinates. If the target profiles have islands with different airport positions or map layouts, the anchors won't line up. You'll need to set anchors individually for islands with different layouts.
Switch IP shows blank after profile load Switch IPs are stored separately from profiles. If the IP in the profile isn't in your saved Switch IP list, it still shows in the dropdown as typed text so it's not lost. You can save it to your list with the "Add New" button.
Profile not showing in HostHelper
Make sure the profile has a valid status.json (written while SDT is connected to that island). HostHelper needs to see that file to display the island.
I want to use the same profile on two tiles SDT prevents adding a tile if another tile is already using that profile name. Each island tile needs its own unique profile to avoid conflicts with services and status tracking.
Last updated: 2026-03-29