* feat: add vue-i18n * feat: add vue-i18n * feat: add vue-i18n * feat: add language class * add: en templates and configs * add: en names * refactor: name gender id and sect id * feat(i18n): add gettext infrastructure for dynamic text translation (#81) * feat(i18n): add gettext infrastructure for dynamic text translation - Add src/i18n/ module with t() translation function - Add .po/.mo files for zh_CN and en_US locales - Update LanguageManager to reload translations on language change - Add comprehensive tests (14 tests, all passing) - Add implementation spec at docs/specs/i18n-dynamic-text.md Phase 1 of i18n dynamic text implementation. * feat(i18n): expand .po files with comprehensive translation entries Add translation messages for: - Battle result messages (fatal/non-fatal outcomes) - Fortune event messages (item discovery, cultivation gains) - Misfortune event messages (losses, damage, regression) - Death reason messages - Item exchange messages (equip, sell, discard) - Single choice context and option labels - Common labels (weapon, auxiliary, technique, elixir) Both zh_CN and en_US locales updated with matching entries. * test: add .po file integrity tests * feat: i18n for actions * feat: i18n for effects * feat: i18n for gathering * feat: i18n for classes * feat: i18n for classes * feat: i18n for classes * feat: i18n for classes * fix bugs * fix bugs * fix bugs * fix bugs * fix bugs * fix bugs * fix bugs * fix bugs * update csv * update world info * update prompt * update prompt * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug * update * update * update * update * update * update * update --------- Co-authored-by: Zihao Xu <xzhseh@gmail.com>
20 lines
665 B
Plaintext
20 lines
665 B
Plaintext
You are a decision-maker in a Xianxia world, responsible for deciding the next action for two NPCs.
|
|
|
|
World Background:
|
|
{world_info}
|
|
|
|
The dict[AvatarName, info] of the NPCs you need to make decisions for is:
|
|
{avatar_infos}
|
|
|
|
The ongoing action is: {avatar_name_1} initiated action: {action_name} towards {avatar_name_2}. The meaning of this action is: {action_info}
|
|
The choices {avatar_name_2} can make are:
|
|
{feedback_actions}
|
|
|
|
Note: Return the results in JSON format only.
|
|
Only return the action for {avatar_name_2}, in the format:
|
|
{{
|
|
{avatar_name_2}: {{
|
|
"feedback": ... // A valid feedback action name in response to {avatar_name_1}'s action.
|
|
}}
|
|
}}
|