劇本寫法
在Librian中,編寫劇本很快很簡單。
劇本格式取材於真實的劇本,只需要稍加瀏覽就能立即明白——
文本格式
其實參考主頁的樣例劇本大概就明白了。
就是直接寫的一段話就是旁白。前面帶名字的就是人物對話。
簡單的樣例
機房的門上鎖了,潘大爺被關在外面。
潘大爺 「你們別玩了快來給我開門!」
第一句是旁白,第二句是 潘大爺 說的話。
人物對話的特徵是,用方引號 「」 圈住言語。
中間的空格加不加都可以。
旁白的特徵是……沒有什麼特徵。
只要不以特殊符號開頭又不是對話的都是旁白。
效果:

更多內容的對話
名字的變體:
張主任|黑衣人 (推眼鏡)「你,沒有節操!」
結果: 人物立繪展現爲 張主任 ,但對話框的名字是 黑衣人 ,用於劇情上人名無法得知的場合。此時立繪中 張主任 的表情是 推眼鏡 ,如果你正確地準備了立繪文件的話,就會使用他推眼鏡的表情。
使用特效:
潘大爺 [灰](驚)「什麼情況!」
結果: 潘大爺 擺出 驚 的表情,人物呈現爲灰色。
其中 灰 爲使用的特效,可以和表情一起使用,也可以單獨使用。
關於可用的內置特效和自定義特效,參考 進階/特效。
多行對話
潘大爺 「歡迎來到莆田理工大學……
欸,上面已經說過這句了嗎?
不好意思。」
在遊戲中也會表現爲三行對話。
空格縮進都不是必須的。
同樣可以使用人物的表情、特效以及豎線符號。
喂—— \
出來!
此外也可以在行尾使用續行斜線,這樣的話旁白之類的語句也可以續行。
隱式對話
潘大爺 (嘆)
相比之下少了後面的方引號內的內容。
這不會作爲 潘大爺 說的一句話來處理,也不需要玩家點擊來跳過,但是會把鏡頭指向 潘大爺 並改變潘大爺的表情和特效。
關於鏡頭,參考 用戶指南/立繪。
在文本中加入HTML
文本中可以自由地嵌入HTML來增強表現力,HTML也會渲染到畫面中。
舟舟 「<small>不是特意給你做的</small>」
顯示的效果大概是這樣:
舟舟
「不是特意給你做的」
你可以用這個功能搞出許多花樣,比如用 <ruby> 來註出奇怪的讀音什麼的。
旁白轉義
有時候,旁白恰好會符合對話的格式,比如符卡的名字——
靈符「夢想天生」
這個時候,可以在這行前面加上一個冒號:來防止它被當成對話,行首的冒號不會顯示在畫面上。
使用你習慣的寫法
用雙引號代替直角引號——
潘大爺 “真是沒辦法呀。”
如果你或你的輸入法不喜歡直角引號 「」,也可以使用雙引號 “” 代替,效果是相同的。
還可以用冒號代替——
潘大爺: 真是沒辦法呀。
如果你喜歡用冒號:寫劇本,效果也是相同的。可以用中文或者英文冒號。
你也可以用🐴代替冒號,用來表達對親朋好友的親切問候。
劇本命令
我們注意到,在主頁的劇本中使用了 > BG 中庭 來載入中庭的背景圖片。
顯然,這個語句是不是人物對話也不是旁白,而是對演出進行輔助的劇本命令。
用法
一般以 > (大於號) 開頭的是控制的函數。
它們將會對劇本的演出產生控制作用。
包括:
- BG
更換 背景圖片 - BGM
更換 背景音樂 - CG
顯示或消除CG - EF
爲畫面元素添加 特效 - VIDEO
播放一段 視頻 - WRAP
快速控制選項和跳轉
關於詳細的劇本功能介紹,參考劇本命令。
快捷跳轉
「?」
你可以用問號表達式來快速地設置一組跳轉,它們的格式是 ? {選項} -> {去哪裏}。
每個選項被選擇後,就會跳到 -> 所指定的劇本去。
> BG 機房
潘大爺 「我覺得你需要治療!」
? 接受治療 -> 壞結局.liber
? 放棄治療 -> 好結局.liber

跳轉的目標位置可以是一個劇本的文件名,也可以是在文件名後加上逗號來跳轉到其中的躍點,比如 劇本.liber, H的部分。
關於躍點,參考下面的「*」。
(我猜你能明白我在說什麼……)
想要瞭解進階的流程控制的話,可以參考進階/嵌入代碼。
角色操作
角色操作的語句以 @ 開頭,就好像你在@這個人一樣。
「+」
加號 —— 用來設置人物的衣着。
給 潘大爺 穿上 西裝 :
@潘大爺 + 西裝
關於更詳細的表情和衣着,參考 用戶指南/立繪 。
「|」
豎線 —— 用來設置人物在對話框中顯示的名字。
回到之前的例子——
張主任|黑衣人 (推眼鏡)「你,沒有節操!」
在這句話中, 張主任 在對話框中的名字是 黑衣人。
但是如果在一大段劇本中 張主任 都叫 黑衣人 的話,每次都要寫就很不方便。
@張主任|黑衣人
這個操作會使 張主任 的顯示名稱持續變成 黑衣人,直到下次設定 張主任 的顯示名稱爲止。
持續操作的優先級不如嵌入操作高,因此在設置了顯示名稱的情況下,將名稱直接嵌入對話中仍然是有效的。
@張主任|黑衣人
張主任 「這外套不錯,我穿上試試」
張主任|內衣人 「感覺不太適合我,還是脫掉吧」
張主任 「有點冷,還是穿回來吧。」
在這個例子中,在第1句和和第3句中, 張主任 顯示爲 黑衣人 ,在第2句中, 張主任 顯示爲 內衣人。
劇本記號
「#」
井號。
以 # 開頭的一整行都是註釋,在演出時會被跳過,不會有實際影響。
# 我覺得這段劇本還要修改。
# 當然讀者是不知道的。
「*」
星號。
* 表示一個躍點,普通的時候和註釋一樣會被跳過。不過在劇本跳轉的時候指定這個位置,也就是星號後面的文本,就可以跳轉。
*原點
「+」「-」
加號和減號。
+ 和 - 用於設置鏡頭,鏡頭是組織立繪的工具,可以自動管理和顯示立繪。
讓 潘大爺 和 林梓雨 站在一起。
+ [潘大爺, 林梓雨]
關於更詳細的鏡頭,參考 用戶指南/鏡頭 。
「===」
三個以上的等號。
使用一張圖片將劇本切斷一小段時間。比如第一章結束,第二章開始的時候就用 =====二章.png 來插入第二章的標題。
3個以上的等號都是可以的。
===第一章.png
=========================第一章.png
嵌入代碼
你還可以使用 ``` 三個反引號在劇本裏直接嵌入程式代碼。
(是tab上面和波浪線在一起的鍵)
可以使用的語言包括Python、JavaScript、HTML。
劇本執行到嵌入代碼的地方的時候,代碼就會運行。
Python會在後端運行,JavaScript會在前端運行,HTML會直接渲染在畫面上。
```html
<img src="https://librian.net/圖/librian.png"
style="position:absolute; top:100px; left:420px;" />
```
潘大爺 「這不是把我的頭都擋住了嘛!」

此外可以參考 進階/嵌入代碼。
語義着色
「資源」中贈送的sublime語義文件可以幫助你進行語義着色。
在我這裏,着色後的劇本看起來就像這樣。

sublime真是太棒了!
(不過這個語義文件寫的很差)