精華區beta talk 關於我們 聯絡資訊
※ 引述《likebike (小小摺)》之銘言: : 推 likebike: QQ 那應該是我搞錯了 過幾天我在試試看@@ 01/27 00:02 : 雖然已經過了有點久,但剛剛才把測試結果完成QQ : 本篇超級U文請安心觀看(?), : 只是這篇只針對我已經完成確定的部分說明,其他就...當推測就好,有錯請告知, : 然後為了增加公信力會把原始碼也放上(?),沒興趣就跳過那部分就好. : <簡易結論版> : 罰單的費用 : 罰單的費用是直接用你收過罰單的次數去計算, : 依照次數*1000P, : 如果你直接被一次開出3張罰單, : 那麼你每一張罰單就是3000P, : 反之,你如果是被開完罰單繳清後再被罰, : 那麼第n次收到罰單繳的費用就是1000n. : 如果沒錢則沒辦法繳交. : 繳罰單的時間 : 如果真的不幸被開了罰單, : 那麼反省的時間也是直接用你收過罰單的次數去計算, : 依照次數*3天, : 意即,如果你直接被一次開出3張罰單, : 那麼你繳罰單的日子就是9天, : 同時如果你在反省的時間又被開罰單, : 那麼你的反省時間會被加上罰單次數後重新計算, : 拿上面的例子,如果在9天反省期內又被開了一張罰單, : 那麼你繳罰單就是要反省12天. : 被開罰單的權限 : 一但被開罰單,權限上會有以下的變動: R. 違法通緝中 ˇ R這項權限會被打開, 個人資料裡有一項 違法紀錄 每開一張罰單就會增加一次. : 1.看板限制發文,但在罰單的討論相關板可以發文(發文應該是包含推文). 只要看板設定的發表權限裡, R選項被打勾, 就可以正常發文. : 2.無法投票. 就和水桶一樣, 不能發文推文修文刪文投票但是可以改標題. 板主權限被開罰單除了不能發推文和小d砍文以外, (大D^D正常) i^P裡的功能正常, mLg和精華區也正常, 也可以設定水桶. 組長權限連退註都不受影響, 罰單當然也是如此. 站長權限則是可以無視罰單與退註正當執行各項功能. : 3.限制發文量(為避免違法使用者大量對申訴板轉文,限定每次發文量。). : 4.無法進入多人聊天室(T>C). : 5.無法使用^U進入使用者選單. : 6.會被標記違規,名片會出現 : 此人違規 尚未繳交罰單 (已累計 n 次). 這點補充: 如果沒通過註冊或被停權的帳號, 不會出現 尚未繳交罰單6個字. 被帳號總管直接設定打開R權限但沒有罰單紀錄的人, 不會出現 已累計 n 次. : 7.繳罰單成功的當下會被退出系統. 因為系統要重新設定權限, 把R權限拿掉, 所以會強制斷線. : 以下是不確定(我解讀不出來QQ)的權限 : 8.水球功能是否被關閉? : (用站長權限丟水球收的到,也可以回丟) 只是不能主動丟水球, 但是可以回丟. : 9.是否能進入信箱? 可以, 阿不然那些人怎麼寄信? : 我的測試還是可以,也可以寄出信件,但現在的ptt好像是不行的(?) 之前就有被人騷擾過結果檢舉開完罰單繼續寄垃圾信=.= : 這點很可愛,連寫程式的站長(?)都有寫出"但這樣麻煩的是他們就搞不懂發生什麼事" : 10.其他我看不懂的原始碼(?? : 10-1.是否會被強制現身? yes, 隱身功能失效, 原先隱身的會被強制現身. 站長隱身術依然有效就是了XD : <完整版> : 這個部分是我用自己架在虛擬器的BBS站做出的結果, : 因為沒有很用心去架(?),加上沒有即時更新, : 可能得到的結果只適用舊版BBS系統,所以各節會放上現在運行的原始碼. : 給有興趣的人參考,如果有需要測試什麼的我也可以盡量幫忙\( ̄▽ ̄#)﹏﹏ : 1.罰單費用部分 : 罰單部分我總共是放了3張的罰單,所以時間上這麼晚才出現(加上我平常沒有開 : 【 繳罰單中心 】 : 這是你第 1 次違法 必須繳出 1000 Ptt幣 : 你是否確定以後不會再犯了? : 確定嗎?[y/N]: : 【 繳罰單中心 】 : 這是你第 2 次違法 必須繳出 2000 Ptt幣 : 你是否確定以後不會再犯了? : 確定嗎?[y/N]: : 然後...如果按下N的話... : 不想付嗎? 還是不知道要按 y ? : 請養成看清楚系統訊息的好習慣。 : 會被系統嗆喔\( ̄▽ ̄#)﹏﹏ : 如果惡意按N超過10次的話,就要重新反省. : 第3次因為我手動開錯罰單,所以就順便試試看沒錢的話系統會說什麼吧XD" : 這是你第 3 次違反本站法規必須繳出 3000 Ptt幣;但你目前只有 0 ,數量不足!! : ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ 請按任意鍵繼續 ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ : 所以沒錢不要想說就可以不要繳罰單,還是會被系統嗆的喔(? : 然後..→ civilian: 與其繳罰單不如發給我啊 : 這一點確定是可行的!! : 被開罰單還是可以把錢轉走喔XDD : 然後當你繳完罰單的當下,你會被系統強制踢出. : 罰單反省期沒什麼好測試的,就反省期被開會重新計算而已,請自行參閱原始碼. : 罰單系統原始碼的部分: : https://github.com/ptt/pttbbs/blob/c02eea20b9f9164d6abc7d78a1911768debe188d : /mbbsd/bbs.c#L255 : 第255行~第326行: : /* Heat CharlieL */ : int : save_violatelaw(void) : { : char buf[128], ok[3]; : int day; : setutmpmode(VIOLATELAW); : clear(); : vs_hdr("繳罰單中心"); : // XXX reload lots of stuff here? : pwcuReload(); : if (!(cuser.userlevel & PERM_VIOLATELAW)) { : vmsg("你沒有被開罰單~~"); : return 0; : } : day = cuser.vl_count*3 - (now - cuser.timeviolatelaw)/DAY_SECONDS; : if (day > 0) { : vmsgf("依照違規次數(%d), 你還需要反省 %d 天才能繳罰單", : cuser.vl_count, day); : return 0; : } : reload_money(); : if (cuser.money < (int)cuser.vl_count * 1000) { : snprintf(buf, sizeof(buf), : ANSI_COLOR(1;31) "這是你第 %d 次違反本站法規" : "必須繳出 %d " MONEYNAME ";但你目前只有 %d ,數量不足!!" : ANSI_RESET, (int)cuser.vl_count, (int)cuser.vl_count * 1000, : cuser.money); : mvouts(22, 0, buf); : pressanykey(); : return 0; : } : move(5, 0); : prints("這是你第 %d 次違法 必須繳出 %d " MONEYNAME "\n\n", : cuser.vl_count, cuser.vl_count * 1000); : outs(ANSI_COLOR(1;37) "你是否確定以後不會再犯了?" ANSI_RESET "\n"); : if (!getdata(10, 0, "確定嗎?[y/N]:", ok, sizeof(ok), LCECHO) || : ok[0] != 'y') : { : move(15, 0); : outs(ANSI_COLOR(1;31) "不想付嗎? 還是不知道要按 y ?\n" : "請養成看清楚系統訊息的好習慣。\n" ANSI_RESET); : pressanykey(); : return 0; : } : //Ptt:check one more time : reload_money(); : if (cuser.money < (int)cuser.vl_count * 1000) : { : log_filef("log/violation", LOG_CREAT, : "%s %s pay-violation error: race-conditionn hack?\n", : Cdate(&now), cuser.userid); : vmsg(MONEYNAME "怎麼忽然不夠了? 試圖欺騙系統被查到將砍帳號!"); : return 0; : } : pay(1000 * (int)cuser.vl_count, "繳付罰單 (#%d)", cuser.vl_count); : pwcuSaveViolateLaw(); : log_filef("log/violation", LOG_CREAT, : "%s %s pay-violation: $%d complete.\n", : Cdate(&now), cuser.userid, (int)cuser.vl_count*1000); : vmsg("罰單已付,請重新登入。"); : u_exit("save_violate"); : exit(0); : return 0; : } : 好啦偷偷說其實按10次按N會被要求重新反省是騙人的XD(? : 2.被開罰單的權限變動 : 2-1. 發文限制,僅能在相關看板發文 : 這點還蠻好理解的,總之就不是全站水桶的概念, : 而是只能在一些看板發文,不然怎麼申訴發單嘛XDD : 如果是其他看板,就會出現這一部份: : d - 開放 自刪文章 發文與推文限制: : r - 開放 推薦文章 *罰單未繳 : s - 開放 噓文 : f - 開放 快速連推文章 名單編輯與其它: (需板主權限) : i - 推文時 不會 記錄來源 IP w)設定水桶 v)可見會員名單 : a - 推文時 不用對齊 開頭 m)舉辦投票 o)投票名單 : k - 板主 無法 刪除部份違規文字 c)文章類別 n)發文注意事項 : x - 轉錄文章 不會 自動記錄,且 不需 發文權限 p)進板畫面 : j - 未 設為冷靜模式 : 8 - 允許 未滿十八歲進入 : ★ 您在此看板無發文或推文權限,詳細原因請參考上面顯示為紅色或有 * 的項目。 : 原始碼: : https://github.com/ptt/pttbbs/blob/6461cbbacb868363ecba12fce305ab74bd42e6b0 : /mbbsd/cache.c#L246 : 第246~第271行(有一併寫出未完成認證的帳號也是如此) : if (!HasUserPerm(PERM_POST)) : return (PERM_POST == PERM_LOGINOK) ? "未完成認證" : : "無發文權限"; : /* 秘密看板特別處理 */ : if (bp->brdattr & BRD_HIDE) : return NULL; : else if (bp->brdattr & BRD_RESTRICTEDPOST && : !is_hidden_board_friend(i, usernum)) : return "看板限制發文"; : if (HasUserPerm(PERM_VIOLATELAW)) : { : // 在罰單的討論相關板可以發文 : if (bp->level & PERM_VIOLATELAW) : return NULL; : else : return "罰單未繳"; : } : if (!(bp->level & ~PERM_POST)) : return NULL; : if (!HasUserPerm(bp->level & ~PERM_POST)) : return "未達看板要求權限"; : return NULL; : } : 2-2. 無法投票 : 也是簡單解釋,如果按大V進入投票系統,會出現: : ◆ 罰單未繳清,無法投票。 [按任意鍵繼續] : 原始碼: : https://github.com/ptt/pttbbs/blob/6461cbbacb868363ecba12fce305ab74bd42e6b0 : /mbbsd/vote.c#L980 : 第980~995行(一樣有說明未通過註冊的不能投,其他投票部分有興趣自己再看就好) : static const char * : voteperm_msg(const char *bname) : { : const char *msg; : if (!HasBasicUserPerm(PERM_LOGINOK)) : return "對不起! 您未完成註冊程序, 還沒有投票權喔!"; : if (HasUserPerm(PERM_VIOLATELAW)) : return "罰單未繳清,無法投票。"; : if ((msg = banned_msg(bname)) != NULL) : return msg; : return NULL; : } : 2-3 為避免違法使用者大量對申訴板轉文,限定每次發文量。 : 這個我真的不知道是說什麼,也沒有試過,就直接放原始碼了. : https://github.com/ptt/pttbbs/blob/c02eea20b9f9164d6abc7d78a1911768debe188d : /mbbsd/mail.c#L1994 : 第1994~2000行 : // XXX TODO 為避免違法使用者大量對申訴板轉文,限定每次發文量。 : if (HasUserPerm(PERM_VIOLATELAW)) : { : static int violatecp = 0; : if (violatecp++ >= MAX_CROSSNUM) : return DONOTHING; : } : 應該是跟轉錄部分有關係吧(? : 2-4,2-5,2-10-1 一併處理,被開罰單能不能進入聊天室...強制現身 : 目前僅知如果被開罰單的使用者,是不能進入聊天室的. : ◆ 請先繳罰單才能使用聊天室! [按任意鍵繼續] : 原始碼"應該"是分做兩段,不過我就不貼這部分了. : 裡面有說道站長隱身,回應空氣等水球功能 : https://github.com/ptt/pttbbs/blob/6461cbbacb868363ecba12fce305ab74bd42e6b0 : /mbbsd/talk.c#L36 : 第36行開始;第2050行開始 : 2-6,2-7,2-9 跟其他我就不多做解釋了,在站上還蠻常看到的, : 如果有需要就自己去把原始碼拉出來看囉\( ̄▽ ̄#)﹏﹏ : 以上大概是這次的測試結果, : 如果有跟事實不符的再麻煩告知囉. : 這篇應該屬於U文吧XD : 感謝大家的收看,不知道稿費有多少!! : 如果有什麼問題可以提出,我會盡量試試看的QQ : ※ 引述《rrr518 (廢文族の理沙)》之銘言: : : 我來說說ㄅ : : 我總共收到3次罰單 : : 第一次 1000P : : 第二次 2000P : : 再來就是關鍵惹 : : 一次收到兩張 : : 他叫我給4000P : : 所以一次收兩張會省錢!(握拳 : : 阿不過因為我很不爽跑去申訴 : : 就撤銷惹 : : 不過也是經驗啦 : : 尼ㄉ問題4這樣子ㄇ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.231.84.109 ※ 文章網址: https://www.ptt.cc/bbs/talk/M.1518851496.A.A24.html ※ 編輯: axbycz0123 (61.231.84.109), 02/17/2018 15:13:02 ※ 編輯: axbycz0123 (61.231.84.109), 02/17/2018 15:13:27