精華區beta talk 關於我們 聯絡資訊
likebike: QQ 那應該是我搞錯了 過幾天我在試試看@@01/27 00:02
雖然已經過了有點久,但剛剛才把測試結果完成QQ 本篇超級U文請安心觀看(?), 只是這篇只針對我已經完成確定的部分說明,其他就...當推測就好,有錯請告知, 然後為了增加公信力會把原始碼也放上(?),沒興趣就跳過那部分就好. <簡易結論版> 罰單的費用 罰單的費用是直接用你收過罰單的次數去計算, 依照次數*1000P, 如果你直接被一次開出3張罰單, 那麼你每一張罰單就是3000P, 反之,你如果是被開完罰單繳清後再被罰, 那麼第n次收到罰單繳的費用就是1000n. 如果沒錢則沒辦法繳交. 繳罰單的時間 如果真的不幸被開了罰單, 那麼反省的時間也是直接用你收過罰單的次數去計算, 依照次數*3天, 意即,如果你直接被一次開出3張罰單, 那麼你繳罰單的日子就是9天, 同時如果你在反省的時間又被開罰單, 那麼你的反省時間會被加上罰單次數後重新計算, 拿上面的例子,如果在9天反省期內又被開了一張罰單, 那麼你繳罰單就是要反省12天. 被開罰單的權限 一但被開罰單,權限上會有以下的變動: 1.看板限制發文,但在罰單的討論相關板可以發文(發文應該是包含推文). 2.無法投票. 3.限制發文量(為避免違法使用者大量對申訴板轉文,限定每次發文量。). 4.無法進入多人聊天室(T>C). 5.無法使用^U進入使用者選單. 6.會被標記違規,名片會出現 此人違規 尚未繳交罰單 (已累計 n 次). 7.繳罰單成功的當下會被退出系統. 以下是不確定(我解讀不出來QQ)的權限 8.水球功能是否被關閉? (用站長權限丟水球收的到,也可以回丟) 9.是否能進入信箱? 我的測試還是可以,也可以寄出信件,但現在的ptt好像是不行的(?) 這點很可愛,連寫程式的站長(?)都有寫出"但這樣麻煩的是他們就搞不懂發生什麼事" 10.其他我看不懂的原始碼(?? 10-1.是否會被強制現身? <完整版> 這個部分是我用自己架在虛擬器的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 (廢文族の理沙)》之銘言: : ※ 引述《mono5566 ( )》之銘言: : : 那麼,第一次收到罰單1張,第二次收到罰單3張, : : 這樣的話會罰多少? 有人有這樣的經驗嗎@@? : 我來說說ㄅ : 我總共收到3次罰單 : 第一次 1000P : 第二次 2000P : 再來就是關鍵惹 : 一次收到兩張 : 他叫我給4000P : 所以一次收兩張會省錢!(握拳 : 阿不過因為我很不爽跑去申訴 : 就撤銷惹 : 不過也是經驗啦 : 尼ㄉ問題4這樣子ㄇ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.150.48.158 ※ 文章網址: https://www.ptt.cc/bbs/talk/M.1518849840.A.437.html
rrr518: 那個試圖轉出去的在演算法銀行系統裡面滿重要的觀念XD 02/17 14:47
likebike: 怎麼忽然不夠了? 試圖欺騙系統被查到將砍帳號! 02/17 14:48
likebike: 是指這個嗎(?)XD 02/17 14:48
bbbruce: 小摺是學資工的歐? 02/17 14:51
likebike: 當然不是,如果是我就架好站自己玩了\( ̄▽ ̄#)﹏﹏ 02/17 14:53
bbbruce: 我都看不懂原始碼在寫什麼 qq 02/17 14:54
rrr518: 對 02/17 14:55
rrr518: 簡單來說就是運算前要重檢查 02/17 14:56
rrr518: 如果剛好同時兩邊領就有另一個演算法 02/17 14:56
lpbrother: 好專業,3r是被罰了幾次? 02/17 15:11
kiss745745: 小摺好膩害 02/17 15:27
mono5566: 讚讚 收精華 02/17 17:19