創作內容

33 GP

【為什麼會有這種腳本(4)】把公會串變成創作!

作者:海角一沙鷗│2019-12-16 01:20:02│巴幣:66│人氣:941

【為什麼會有這種腳本(4)】把公會串變成創作!

寫在前面

奇妙的插件系列第四彈!(居然呀...第四代了XD)

這個東西...說實在話,以前應該有人就想過了
『如果說我能夠快速的把公會串存成創作,那是不是會很方便呢?』
沒錯!存串麻煩的地方就在於複製麻煩、貼上麻煩、整理成相同格式更麻煩!
如果今天能有魔法代勞呢?

就在今天!這個方便的魔法誕生了!
只要一鍵!一鍵幫你把對串轉存到創作!

覺得固定的格式太呆版?
沒有問題!自訂的樣版讓你有客製化的存串格式!

2020的存串新觀念,與其靠別人,不如自己來!

安裝腳本

有鑑於好像很多人不知道【使用者腳本】是個怎樣的東西,還請容我耐心解釋:

  使用者腳本讓您控制您的瀏覽體驗。當您安裝後,使用者腳本可以為網頁增加功能、簡化使用方法、或移除煩人的東西。(引用自GreaseFork官網)

只要你知道該怎麼修改一個網頁,
使用者腳本就可以幫你把原有的網頁增加許許多多新功能囉
那麼在使用腳本之前,你會需要一個使用者腳本管理器
關於這個東西我之前已經寫過很多次了:

這個腳本需要您先安裝使用者腳本管理器,我推薦你以下的選擇:
Chrome、Vivaldi使用者:Tampermonkey 或 Violentmonkey
Firefox:Greasemonkey、Tampermonkey、或 Violentmonkey
Safari︰Tampermonkey
Microsoft Edge︰Tampermonkey
您應該可以在瀏覽器的軟體商店中找到這些軟體。
當然,其他瀏覽器的使用者也有類似的選擇
我們將相關的教學連結放在這裡,您應該可以找到合適的腳本管理器。

沒有安裝好使用者腳本管理器,是沒法安裝腳本的喔~

想安裝腳本的朋友,這次的腳本有點麻煩,一共有兩個腳本要安裝
第一個腳本,是這項功能的核心,負責所有事情:連結
第二個腳本,主要在連動創作頁面,讓你能夠直接把對串貼過去:連結
(目前確定第二個腳本會影響圖片上傳功能,如果你發現圖片無法上傳或有其他問題,請將腳本暫時禁用之後F5在試一次)


第二個腳本很短,不用害怕,就真的只有一行而已XD
也不用擔心順序問題,只要安裝兩個都有安裝好,功能就會啟動囉~

使用方法

安裝完之後,請將巴哈姆特的首頁重新整理一次,
再點進去任何一個串裡面(要進去看才看的到喔)
你就會發現右側欄位多出一個區塊【公會串轉存創作】了~


你目前有兩個方式可以轉存創作,
左邊的【轉存公會創作】會幫您打開新增創作的編輯器,
並且把轉存的串內容貼到原始碼裡頭,
你只需要稍作修改,就可以輕鬆的把對串轉存創作囉

(目前確定在轉存上可能會出現沒有自動貼上轉存結果的狀況,不用擔心,請點擊原始碼模式,按CTRL+V就可以將結果貼上囉~)

請看看這個將主線劇本轉存成創作的範例:


那如果你想要把轉存的內容貼到別的地方(例如說WIKI)的話?
右邊的【複製到剪貼簿】可以把轉存的內容送到剪接簿,
這樣你就可以在任何地方貼上結果囉~

如果你不喜歡我的預設樣板該怎麼辦?那你會需要自己創作模板的!

客製化修改

【管理轉存樣板】

客製化~這個腳本賦予你可以動手的能力,一切就從按下【管理轉存樣板】開始
點下去之後會彈出新的視窗:


首先我要來介紹一點技術性質的東西,這個腳本的原理是運用模板引擎,把蒐集到的對串資訊當成變數,再加上預先設定好的模板,兩者結合在一起後就可以得到轉換後的結果囉~

我們使用art-template這套頗具話題的模板引擎負責進行渲染,理所當然的,你的模板必須以符合art-template的格式進行撰寫,身為魔法師的你不用害怕,這個引擎有美好的中文文件,你可以在無壓力的狀況下寫出屬於你的art-template樣板~

至於不是魔法師的你們......我答應你們,之後會寫一篇文章好好講解如何撰寫模板的,
所以,不要擔心,好嗎(#

【變數定義】

至於裡頭的變數定義,我們規範如下:

變數名稱 定義
guild_id 該串所屬的公會名稱
guild_name 該串所屬的公會編號
player_stat 參與該串的玩家與其對串數量,dictionary型態(表2)
reply_data 回覆內容,array型態(表3)
total_reply 總回覆數量
msg_id 該串的串編號
msg_owner_nickname 開串者的暱稱
msg_owner_id 開串者的帳號
msg_owner_picurl 開串者的大頭貼網址
msg_text 該串的串首內容
msg_create_time 該串的開串時間
表1:變數定義

在這裡頭,player_stat算是比較複雜的型態,他是由兩組dictionary所構成的,請看下面的定義:

變數名稱 定義
player_stat['XXX'] XXX為參與對串的用戶帳號
player_stat['XXX']['nickname'] 該玩家的暱稱
player_stat['XXX']['count'] 該玩家的留言次數
表2:player_stat定義

reply_data是標準的array,裡頭以dictionary記錄各回覆內容,其定義如下:

變數名稱 定義
reply_id 回覆的官方編號(通常不重要)
user_id 回覆者的帳號
user_nick 回覆者的暱稱
content 回覆內容
time 回覆時間
msgid 該串的串編號(等於msg_id)
reply_num 回覆的流水號(其實就是第幾串啦)
表3:reply_data定義

如果你完全不知道我在說什麼.....不要緊,請先點一下【複製到剪貼簿】
之後打開開發者工具(Chrome是按下F12),
每一次的轉存都會把變數用console.log輸出到開發者工具中,
請找到像object的東西,然後展開他:


登登~變數就會一覽無遺囉~這樣應該會讓你更能夠了解變數的定義~

【模板內容】

當你千辛萬苦地開發完新的模板之後,請把模板貼到【管理轉存樣板】網頁的【模板內容】中,這樣你的客製化模板就會開始運作囉~

為了怕你模板寫到壞掉(不要嫌我烏鴉嘴,你知道我預設模板寫多久嗎XDD)
當你發現使用客製模板後功能失常,請打開開發者工具檢查錯誤訊息,
我有把樣板引擎的DEBUG模式打開~

而為了讓你更快的上手,我把我設計的預設樣板貼在這裡,這樣你應該能比較快上手

【Eval 模式】
慮到你會有需要修改變數的時候,為了方便各位魔法師的作業,
這個腳本裡準備了一個Eval() Before Render欄位,
讓你可以在準備渲染之前對變數進行操作

在這裡頭,將要被送入渲染引擎的變數名為template_value
而模板的內容為template_str,有這兩個東西,你就可以隨心所欲地亂搞了XD

但容許小弟提醒您!eval的危險性應該每個操作JS的魔法師們都心知肚明了
這項功能極為強大,但也是把雙面刃,所以....

如果你有一絲絲不確定你在幹嘛,就不要動這個東西!

結語

花了一個晚上寫了這篇文件,我果然很不喜歡寫文件的說......

這個腳本的由來......其實是看到有新人在反應現有的存串方式並不好用,
所以才起了念頭,把這個很久以前就有的想法寫成了腳本

不過這個東西並不是我的首創喔,相似的東西有非常多人寫過了,例如說像這個....
而我不過就是繼承了這個想法,繼續把這個點子打磨成品而已

說真的,沙鷗邁入了新的階段,實在是越來越懶得繼續創作.....

趁著我還有心力開發新的東西,希望這份小小的作品能夠送給新來公會之人
願這份微不足道的禮物,能夠幫助各位在對串後好好收藏每份回憶
如果這能成為你的助力,那就是對沙鷗最大的鼓勵了

更新紀錄
VER 0.1:初次發布
引用網址:https://home.gamer.com.tw/TrackBack.php?sn=4622640
All rights reserved. 版權所有,保留一切權利

相關創作

同標籤作品搜尋:公會區|巴哈姆特|瀏覽器插件|chrome|程式|javascript|開放原始碼

留言共 4 篇留言

Mosaic Li
一早起來看到馬上點喜歡,剛看完又想再點一次喜歡的時候發現給過了ww

12-16 07:30

洛伊絲
https://truth.bahamut.com.tw/s01/201907/e4653fc82f8f405daed9a87a5ddb070d.JPG?w=300

12-16 07:38

小洛
感謝沙鷗讚嘆沙鷗 [e12]

12-16 10:41

小日本
いただきます。( ノ-_-)ノ
讚美沙鷗~

12-16 15:41

我要留言提醒:您尚未登入,請先登入再留言

33喜歡★jason21716 可決定是否刪除您的留言,請勿發表違反站規文字。

前一篇:【為什麼會有這種腳本(3... 後一篇:【RPG公會】【羅巴防線...

追蹤私訊切換新版閱覽

作品資料夾

robert286 ლ(´•д• ̀ლ
ლ(´•д• ̀ლ看更多我要大聲說昨天23:18


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】