宣布更新YSP公開版本到V0.8.0_Pub
YSP公開版本(正式版本)將于2021年10月20日~25日期間擇機更新為V0.8.0_Pub。版本號全稱為V0.8.0_Pub(Build120.1000)_SPOL0.6.5;C++_Qt。因為本次公開版本更新與V0.8.0_Pre4版本功能基本一致,故內部渠道不參與此次版本更新。若有需要,內部渠道用戶可以下載本公開版本,并在程序內手動將更新渠道切換至內部渠道。
內部渠道用戶將在本月底(或下個月中旬)進入V0.9.0的內測。
本次更新是YSP從Python遷移到C++之后的第一個公開版本更新。本次更新后,SPOL版本號從0.6.0變更為0.6.5。
(2021年10月24日補充)SPOL0.6.5與SPOL0.6.0的唯一區(qū)別在于自由文本控制器的默認出字間隔從0恢復到了與講述控制器默認出字間隔一致。該區(qū)別在程序內能正常體現(xiàn),但是由于時間倉促我們并未更新指導文檔中對于該出字間隔的說法,指導文檔中仍然聲稱該值默認為0,請忽略該錯誤。
相比于上一個公開版本V0.7.4_Pub,我們做出了如下更新:

新功能:
應用了增強的按行跳轉邏輯。
現(xiàn)在跳轉播放效果和直接播放效果一致,不會因為跳轉行導致背景與BGM錯誤。程序現(xiàn)在可以自動追加識別跳轉之后的最后一個背景控制器與音樂控制器。
新增了程序的一般設置和高級設置頁面。
用戶可以在一般設置頁面更改播放頁的窗口化與否、窗口化后窗口大小參數(shù),在高級設置頁面更改程序的強制調試模式與更新接受通道。
新增了內置的SPOL文本著色編輯環(huán)境SPOLDev。
SPOLDev可以在開發(fā)頁面進入。該頁面是一個有基本鍵入功能的文字編輯窗口。該功能目前仍處于測試狀態(tài),可能有不穩(wěn)定或其他問題。
SPOLDev通過上方的相對路徑名確定SPOL文檔名稱與在程序目錄內的存儲位置。當您新建文檔時,當前打開的文檔會強制保存。
增強了更新提醒系統(tǒng)。
在該版本更新之后,程序每次更新時會查看當前版本有無更新日志,若有則會給出超鏈接以鏈接到對應頁面,若無則會提示無更新日志。
程序改動:
?toSPOL、運行時報錯、CrashReport、雙擊打開劇情文件的功能暫時下線。
重新確定了翻譯系統(tǒng)的內部代稱?,F(xiàn)在翻譯文本的內部代稱比以前有更高的可讀性。
不再使用base.ini作為記錄語言設置的文檔?,F(xiàn)在這一項設置被移入注冊表之內。這意味著語言設置將在所有0.8及更高版本的程序中通用。
更改了程序主頁的配色。
更改了程序啟動時做出的操作。
因程序內核從K6U2升級到K9UT0,使用濾鏡產生的緩存文檔的后綴與原來不再相同。以前的緩存文件全部失效。
程序將在每次解釋SPOL文檔時都根據(jù)濾鏡生成圖像緩存,不再因為某個緩存文件已經生成過就不再生成。
存儲語言文件的文件夾 lang 現(xiàn)在已經更名為 Language 。
程序優(yōu)化:
優(yōu)化了濾鏡算法,現(xiàn)在不會因為使用“變暗”濾鏡而導致產生緩存的緩存了。
由于不再使用Python,濾鏡算法真正的使用到了多核處理,現(xiàn)在程序運算多濾鏡的速度受CPU核心數(shù)量影響,相比于之前大概有4~20余倍性能利用提升(具體提升正相關于CPU核心數(shù)量)。
優(yōu)化了預處理算法,現(xiàn)在不會因為在解釋時遇到長篇大段的注釋而導致實時解釋過程卡頓。
優(yōu)化了漸變算法,現(xiàn)在不會因為使用超長時間的漸變過渡而導致掉幀或者漸變時間嚴重偏離預期。
優(yōu)化了特效算法,現(xiàn)在特效幀數(shù)會比以前提高。
優(yōu)化了程序主頁算法,現(xiàn)在程序主頁的動效應該比之前更流暢。
上述二項提到的動效、幀數(shù)均由計劃上的30幀提升到了60幀。實際幀數(shù)可能有所出入。
優(yōu)化了程序的運行內存占用與程序包體大小。
問題修復:
修復了在一些特殊情況下打開跳轉頁面時,左側“當前行”位置會顯示文檔最后幾行的行號的問題。
修復了在一些特殊情況下打開跳轉頁面時,左側“當前行”位置會顯示2^16-1的問題。
修復了在一些特殊情況下使用自由文本控制器有幾率導致黑屏的問題。
修復了在缺失語言文件時程序無法啟動的問題。
對于V0.8.0_Pre4內測用戶,修復了更新提醒頁面的文本缺失問題,并完成了余下的英文文本的翻譯工作以及繁體中文的轉換工作。
其他:
程序已經內置部分0.9更新的內容(即原來的0.8內容但是未開發(fā)完全的)。這些內容應該已經被屏蔽,但如果在使用過程中遇到未開發(fā)完整的頁面,請及時向我們反饋,因為這些屏蔽殘余有可能會干擾程序正常功能。
我們正在測試一項來自Qt的固有功能,它使絕大多數(shù)Qt的文本內容可以部分兼容設置文本樣式的HTML標簽。這項功能也被繼承在了YSP程序里,但YSP程序以及SPOL語法并未對此做出系統(tǒng)性的支持。我們尋求在下次大版本更新時官方支持這項內容。
我們曾經預告過,開發(fā)組正在嘗試增加第一批GPOL控制器。但因GPOL特殊性,增加工作已經被推遲。
V0.8的維護工作會在10天內結束,因為V0.8的部分內容被移入了V0.9。開發(fā)組需要馬上投入V0.9版本的開發(fā)工作。
V0.7的維護工作仍在進行,會至少持續(xù)到11月25日。但V0.5、V0.6的維護工作今日即宣布終止。

????????在過去的兩個月里,開發(fā)組在重構過程中遇到了許多意料之外的問題,包括但不限于預想的核心算法不成立、第三方SPOL著色編輯器不再被推薦使用。許多問題現(xiàn)在都已經被克服,但仍有部分問題嚴重干擾了更新計劃,因此本次更新的內容可能與過去兩個月中的預告有所出入。
?
????????作為YSP的第一個C++版本,本次更新主要關注的是還原Python版本的主要功能。對于一些增強性功能并未作太多關注。例如,在本版以及接下來數(shù)個版本里,從游戲內的官方文件轉譯到SPOL文檔的功能都不會再上線,對于其他語言的支持也將暫時擱置。但與此同時,開發(fā)組也更注重于程序的標準化,因此在內部提出了一套稱為IFL的標準。IFL標準定義了解釋SPOL文檔時的九種標準異常,將會在后續(xù)更新中取代原來雜亂的異常報錯系統(tǒng),也會提供更強的SPOL錯誤時程序魯棒性,在那之前,0.8版本的YSP將不再顯示SPOL解釋時的報錯信息,在遇到錯誤的SPOL語句時程序會按照預設的處理方法進行處理,但在處理后有可能發(fā)生崩潰。
?
但是即便如此,我們仍然要宣布本次更新,希望它們能夠提高您使用YSP播放器的體驗。

YSP開發(fā)組
青雅音