6.9 KiB
My Novel — điểm khởi đầu cho tiểu thuyết tương tác của riêng bạn
My Novel là tiểu thuyết tương tác hoàn chỉnh nhỏ nhất trong dự án: một thị trấn lúc chiều tối, một quán bar và một ngôi nhà, nối với nhau bằng các lựa chọn. Nó không có nhân vật, vật phẩm hay chiến đấu — chỉ có cảnh, những tệp kịch bản ngắn và bản dịch của chúng. Mod được làm ra để copy: đổi tên nó, rồi nuôi lớn câu chuyện của riêng bạn từ ba địa điểm này.
Chơi từ Chơi → My Novel → Trò chơi mới. Đây là nội dung của trò chơi My Novel (bộ sưu tập novel_template).
Bên trong có gì
my_novel_game/
├── manifest.json
├── scenes/
│ ├── my_novel_town.json lối vào thị trấn, trò chơi bắt đầu ở đây
│ ├── my_novel_bar.json quán bar với âm thanh nền riêng
│ └── my_novel_home.json tiền sảnh ngôi nhà
├── scenarios/
│ ├── my_novel_town.scenario
│ ├── my_novel_bar.scenario
│ └── my_novel_home.scenario
└── locale/
├── en.properties tên và mô tả mod
└── scenarios_<lang>.properties bản dịch các dòng kịch bản
Hình ảnh và âm thanh quán bar không nằm trong mod này: chúng đến từ Town Pack, để mẫu vẫn nhỏ gọn và cho thấy một trò chơi tái sử dụng nội dung chung thế nào. Nhạc đến từ Music Pack; các mod engine là Vỏ 2D, engine hội thoại và engine âm thanh.
Câu chuyện chảy thế nào
Thị trấn là điểm trung chuyển. Mỗi lần ghé lại thấy cùng một lựa chọn; quán bar và ngôi nhà đều dẫn đường quay về.
┌────────────────────┐
│ my_novel_town │ (bắt đầu)
│ "Đi đâu đây?" │
└──┬──────────────┬──┘
Vào quán bar Về nhà
▼ ▼
┌──────────────┐ ┌──────────────┐
│ my_novel_bar │ │ my_novel_home│
└──────┬───────┘ └──────┬───────┘
└─ Quay lại thị trấn ─┘
Tệp cảnh nêu tên nền và âm thanh nền:
{
"name": "my_novel_bar",
"defaultBackground": "bar/bar",
"defaultAmbient": "bar/bar_ambient"
}
Kịch bản trùng tên với cảnh sẽ chạy khi bước vào cảnh đó:
scene: my_novel_town
priority: 10
---
# The town is the hub: every visit shows the same choice.
text "Evening town. The street lamps are already lit and a cool draught runs along the cobbles." key=my_novel/town/intro
select "Where to go?" key=my_novel/town/prompt
option "Go into the bar" key=my_novel/town/opt_bar -> :bar
option "Go back home" key=my_novel/town/opt_home -> :home
:bar
switch_scene my_novel_bar
end
:home
switch_scene my_novel_home
end
Văn bản tiếng Anh được viết ngay trong kịch bản. Mỗi key= gọi tên bản dịch của dòng đó trong locale/scenarios_<lang>.properties, ví dụ bản tiếng Tây Ban Nha:
my_novel/town/intro = La ciudad al anochecer. Las farolas ya están encendidas y una corriente fresca recorre los adoquines.
Biến nó thành của bạn
- Copy và đổi tên mod. Đặt theo tên trò chơi của bạn với hậu tố
_game, ví dụharbor_game. Đổi tên thư mục vàidtrongmanifest.jsonthành cùng một giá trị, và đổi các khóamod_my_novel_game_name/_desctronglocale/*.propertiesthànhmod_harbor_game_name/_desc. - Làm cho nó một trò chơi. Trong Mods & Collections → Bộ sưu tập, mở sơ đồ của My Novel và bấm Nhân bản, rồi thay
my_novel_gamebằng mod của bạn trong khối Câu chuyện. Cảnh mở đầu được đặt trong bộ sưu tập ("entry": { "scene": "my_novel_town" }). - Đổi tên các cảnh nếu muốn:
namecủa cảnh, tệp của nó, dòng đầuscene:trong kịch bản của nó và mọiswitch_scenedẫn tới nó phải khớp nhau. - Giữ hoặc thay phần hình ảnh. Giữ
town_packtrongdependsđể giữ nguyên thị trấn, hoặc thêmbackgrounds/vàsounds/của riêng bạn rồi trỏdefaultBackground/defaultAmbientvào đó.
Thay đổi đầu tiên: thêm một địa điểm
Đây là một buổi làm việc thật trong trình soạn thảo, chạy bên trong My Novel với mod Editor Tools được thêm vào. Trình soạn cảnh đã tạo cảnh my_novel_park, và một lựa chọn cùng một nhãn được gõ vào kịch bản của thị trấn:
option "Go to the park" -> :park
:park
switch_scene my_novel_park
end
Sau khi lưu, thị trấn lập tức đưa ra lối mới, và chọn nó sẽ mở cảnh mới:
Để có trình soạn thảo trong trò chơi của riêng bạn, thêm mod Editor Tools vào sơ đồ, hoặc khởi động trò chơi một phiên cùng chúng:
godot --path . -- --game=novel_template --new --with-mods=editor_tools
Dòng mới không có key= hiện văn bản nguyên văn trong mọi ngôn ngữ; thêm khóa và bản dịch khi câu chuyện sẵn sàng để dịch.
Khi không hoạt động
- Một lựa chọn không dẫn đi đâu. Tên trong
switch_scenephải bằngnamecủa cảnh đích, kể cả chữ hoa chữ thường. - Một cảnh không có văn bản. Dòng đầu
scene:trong kịch bản của nó phải gọi đúng tên cảnh đó. - Văn bản hiện tiếng Anh ở ngôn ngữ khác. Dòng đó không có
key=, hoặc khóa thiếu trongscenarios_<lang>.propertiescủa ngôn ngữ đó. - Nền đen thui. Tên nền viết sai chính tả, hoặc mod đang giữ bức hình không có trong
depends.



