Dev Mode QoL
Developer overlay quality of life: localized item and level names, search by any language or pinyin, free camera keeps the view direction, Escape closes the F3 menu.
| Date uploaded | 2 weeks ago |
| Version | 1.1.0 |
| Download link | ryuka_labs-Dev_Mode_QoL-1.1.0.zip |
| Downloads | 18 |
| Dependency string | ryuka_labs-Dev_Mode_QoL-1.1.0 |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2305README
Dev Mode QoL
Quality of life fixes for SULFUR's developer overlay (F3). Developer mode only - without it the
mod stays inert.
The free camera keeps the view direction
Vanilla drops the view direction on both sides of the F3 transition, so the free camera starts facing wherever it was left and the player comes back facing wherever they left. Both hand-overs now work:
- Entering the free camera continues from the direction the player was looking at.
- Leaving the free camera after teleporting with
Tmakes the player look where the free camera was looking at the moment the overlay closed. - Leaving the free camera without a teleport changes nothing: the player returns to the original spot with the original view direction, because the free camera can be far away from it.
The teleport is remembered per free camera session and forgotten every time the overlay opens.
Escape leaves the overlay
Vanilla only closes the overlay with F3. Escape now backs out one layer at a time.
- Level select list open - the game's own cancel closes the list, as before.
- Spawn menu open - Escape closes the spawn menu.
- Free camera only - Escape closes the overlay, exactly like
F3.
Gamepad cancel behaviour is unchanged.
The game binds both Escape and Backspace to the same UI cancel, so Backspace used to close the
spawn menu, and one press in the search box threw away everything typed instead of deleting one
character. Backspace now never closes anything - that is Escape's job - and in the search box it
is plain text editing. The game's own handling is untouched, so Backspace still closes the level
select list as it always did.
Escape does reach a focused search box, which uses it to stop editing; only once the box has let
go does Escape start closing menus.
The overlay follows the game language
The game is fully localized; the developer overlay is not. It labels spawn menu buttons with the untranslated authoring name - even though it already sorts them by the translated one - and level buttons with the level's authoring identifier only.
- Spawn menu item buttons and the "selected" label now show the item name in the game's language, the same one the inventory shows.
- Level select buttons keep their identifier line (
Act_01_Caves 2: MakerSet_Caves_B) and gain a second line with the name the player sees in game (Caves II). - The search box now finds an item by its name in any language the game has loaded, as well as
by its internal asset name. Type
bandage,绷带orVerbandand the same button shows up. - Chinese names are also found by their pinyin, so there is no need to switch input method - see below.
- Everything is rebuilt when the language is switched.
The overlay also never had the game's font localization, so its labels use a latin-only font and a Chinese, Japanese, Korean or Cyrillic name draws blank. A label that cannot draw the text it was given is handed the font the game uses for the current language; a label that already copes keeps the overlay's original font, so an English game looks exactly as before.
Names come from the game's own localization terms, so they always agree with the rest of the game. Unit, attribute and mutation buttons, the category buttons and the overlay readouts carry no translation in the game's data and keep the game's own labels.
Pinyin search
Typing a Chinese name into the search box means switching input method for one word and switching back. The search accepts the latin spelling instead, typed the way a Chinese keyboard is typed.
Every one of these finds 手枪:
shouqiang full syllables
sq initials
shouq full syllable, then an initial
sqiang an initial, then a full syllable
shouqia a syllable left half-typed
shq zh / ch / sh typed in full
A character read several ways is found under any of them, and ü is spelled both ways:
xdq sdq both find 霰弹枪, because 霰 reads xian or san
zjq cjq both find 重机枪, because 重 reads zhong or chong
lvjian lujian both find 绿箭
A character with several readings matches on any of them, spaces and brackets in a name are stepped
over rather than typed, and qiang finds 手枪 as well - the match works anywhere in the name. Only
a query written in latin letters is treated as pinyin; a query that already contains Chinese goes
through plain text search.
Configuration
Settings live in BepInEx/config/ryuka.sulfur.dev_mode_qol.cfg.
InheritOrientationOnEnter
Entering the free camera keeps the direction the player was looking at.
[1 - Free Camera]
InheritOrientationOnEnter = true
InheritOrientationOnExit
Leaving the free camera hands the camera direction back to the player, but only when the player
was teleported with T during that session.
[1 - Free Camera]
InheritOrientationOnExit = true
CloseWithEscape
Escape closes the spawn menu and the developer overlay.
[2 - Menu]
CloseWithEscape = true
LocalizeItemNames
Spawn menu item buttons show the item name in the language the game is set to. Turn this off to see the authoring names instead.
[2 - Menu]
LocalizeItemNames = true
SearchEveryLanguage
The search box matches an item name in any language the game has loaded, as well as its internal asset name. Turn this off to search the visible names only.
[2 - Menu]
SearchEveryLanguage = true
PinyinSearch
The search box also matches Chinese names by how they are pronounced. Only applies to a query typed in latin letters.
[2 - Menu]
PinyinSearch = true
ShowLevelNames
Level select buttons get a second line with the level name the player sees in game.
[2 - Menu]
ShowLevelNames = true
VerboseLogging
Logs every camera hand-over, overlay close and localization pass. Diagnostics only, it does not change behaviour.
[3 - Diagnostics]
VerboseLogging = false
Compatibility
Only touches the developer overlay, so it does not interact with gameplay mods. It patches
DevToolsManager and the developer level list, reads the game's localization data, and adds
nothing to the normal game loop.
Credits
Pinyin readings are derived from the Unicode Han Database (Unicode License). The pinyin search behaviour follows Just Enough Characters.
CHANGELOG
Changelog
1.2.0
- The spawn menu now lists every item the game has. Vanilla builds the list from the items tagged
for it and then drops any item whose data still says it is not part of the early access build,
which hides 17 items that shipped long ago -
Dinner Jacketamong them. That flag is read nowhere else in the game, so those items work normally everywhere except in the overlay. The list is now completed from the game's own item registry and the filter is lifted while the menu is built. Items the game leaves out on purpose, such as weapons flagged as not usable by the player, stay out. - New setting
ShowEveryItem(on by default) turns that back into the vanilla list.
1.1.0
- The developer overlay now follows the game language.
- Spawn menu item buttons and the selected entry label show the translated item name.
- Level select buttons keep their identifier line and gain a second line with the level name the player sees in game.
- Labels are rebuilt when the language is switched.
- Labels whose own font cannot draw the translated name - the overlay ships a latin-only font, so Chinese, Japanese, Korean and Cyrillic names came out blank - are given the font the game uses for the current language. Labels that already cope are left alone.
- The spawn menu search now finds an item by its name in any language the game has loaded, as well as by its internal asset name.
- The search also finds Chinese names by their pinyin, typed the way a Chinese keyboard is typed:
full syllables (
shouqiang), initials (sq), the two mixed (shouq,sqiang), a syllable left half-typed (shouqia), andzh/ch/shtyped in full (shq). Characters read several ways match on any of them, so bothxdqandsdqfind 霰弹枪. - Fixed:
Backspaceclosed the spawn menu, and oneBackspacein the search box threw away everything typed instead of deleting one character. The game bindsBackspaceto the same UI cancel asEscape, and a text field reads a cancel as "stop editing and put back the text you started with".Backspaceis now only ever text editing; closing a menu isEscape's job. The game's own handling is untouched, soBackspacestill closes the level select list as before.
1.0.0
- The developer free camera (
F3) now continues from the direction the player was looking at. - After teleporting with
T, leaving the free camera hands the camera direction back to the player. Without a teleport the player keeps the original view direction. - Escape closes the developer overlay, and closes the spawn menu first when it is open.