Skip to content

elct9620/open-story

Repository files navigation

Open Story

Maintainability Test Coverage Test

「開放故事」是一個實驗性的專案,源於程式的脈絡這篇文章所提及如果將程式仔細加入脈絡(Context)的話會有類似 小說的感覺,那麼基於小說的方式用程式描述世界觀,並讓使用者互動是否可行,進而產生了這個專案。

系統的設計是可擴充、可延伸修改的。

背景

這是一個剛出現的世界,因為某些原因我們的意識似乎能夠投影到這個世界產生一些影響,那麼我們能在這個世界做些什麼呢?

投影

指的是系統觀測(Observe)來自外部的訊息做出反應的行為。

觀測

名稱 說明 原始碼
噗浪 當使用者使用關鍵字(#OpenStory)時有可能被觀測到,進而出現一些反應。 lib/openstory/plurk

噗浪是目前唯一跟這個世界連結的地方

行動

這個世界只會受到「文字」的影響,當符合條件的文字被觀測到時,會產生「行動」進而對世界造成影響。

路徑 說明
app/actions 行動細節的定義
config/router.rb 行動條件的定義

因為世界觀沒有被構築,因此只有簡單的敘述被產生、不會有任何狀態上的變化

世界觀(Worldview)

用於定義世界運作的要素,能夠被行動參照進而產生各種類型的變化。

舉例:生命概念、地區概念

子系統(Sub-system)

因為完整的世界過於複雜,因此被劃分為各種不同小的系統處理特定類型的情境。

舉例:戰鬥、探索

模型(Model)

抽象的描述特定事物的概念,能夠進一步被細分為「個體」「群體」跟「數值」兩種概念。

舉例:玩家(個體)、工會(群體)、生命力(數值)

法則(Rule)

能夠對模型造成影響的規則,可能會隨著時間改變其中的規則。

舉例:傷害公式、行動條件

事件(Event)

對世界的變化有重大影響的情報,只有在必要時會被記錄下來。

舉例:遺跡探索完畢(其他玩家無法探索)

About

The experimental open world story bot

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 2

  •  
  •