※ 本文轉寄自 ptt.cc 更新時間: 2025-12-21 17:24:12
看板 LoL
作者 標題 [閒聊] 拳頭工程師分享梅爾反彈是怎麼做出來的
時間 Sat Dec 20 23:00:16 2025
【身為拳頭公司程式設計師,我是如何實現梅爾的反彈的? -嗶哩嗶哩】
https://b23.tv/kZvbXd5
Up主是Riot現役程式工程師(注意!不是設計師)
也是梅爾技能的技術開發者
分享了他是怎麼實現設計師要求的技能反彈這效果的開發過程
。本來柔伊的技能組就想做反彈,但當時技術無法實現
。初版梅爾的反彈技能更接近賽垃圾的偷大,儲存和施放是分開的
但是被設計師嫌這個版本無法做到瞬間即時反饋的效果,所以又重弄
。梅爾的核心技術是從犽宿風牆的飛設物檢測魔改出來的
。但一開始純粹統一往一個英雄方向反彈
會讓艾希W這種多個指向物全部射回她身上
所以工程師怎麼解決呢?
把 他 們 都 當 成 例 外 分 開 重 寫
幾十個技能效果全部當特例
respect
。然後後面又為了實測中發現梅爾的反彈會讓玩家混淆
搞了一個實時渲染功能,讓所有彈回去的技能變成金色
本來開發端甚至沒有實時渲染這項技術功能
還找人家軟體公司合作最後才完成
懶人包:設計師得給碼農磕頭的科技業鬼故事系列
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.216.188.182 (臺灣)
※ 作者: rainnawind 2025-12-20 23:00:16
※ 文章代碼(AID): #1fHhe2-5 (LoL)
※ 文章網址: https://www.ptt.cc/bbs/LoL/M.1766242818.A.F85.html
推 : 屎山代碼就是這樣累積出來的 ==1F 12/20 23:05
推 : 這什麼鬼故事2F 12/20 23:05
推 : RD:垃圾PM開三小spec3F 12/20 23:06
推 : 果然原型是風牆==4F 12/20 23:06
→ : 印度人跟中國人完全沒有創造力 只會魔改5F 12/20 23:06
→ : 真的不要靠北工程師寫的爛 提這鬼需求的設計師沒被6F 12/20 23:06
→ : 打死就不錯了
→ : 打死就不錯了
推 : 不愧是拳頭公司wwww8F 12/20 23:07
推 : 屎山程式碼就是這樣來的9F 12/20 23:07
推 : 看到都是特例 頭超痛==10F 12/20 23:08
→ : 系統會越來越肥就是這些東西搞出來的11F 12/20 23:13
推 : 我記得夜曲關燈是弄一個超大小兵擋螢幕==12F 12/20 23:17
→ : 那個同一個程式師已經闢謠了13F 12/20 23:18
推 : 垃圾PM 你行你上14F 12/20 23:23
推 : 全部當成例外 靠北15F 12/20 23:24
→ : 這樣代表每一次出新角色 梅爾也要重新更新16F 12/20 23:25
推 : 靠北17F 12/20 23:26
推 : 看完只感嘆果然是老遊戲了18F 12/20 23:27
推 :19F 12/20 23:27
推 : 屎山代碼20F 12/20 23:28
推 : 哇操勒 那不就一個一個刻出來的 都是血淚21F 12/20 23:30
→ : 真的是垃圾PM22F 12/20 23:32
推 : 我的天…..23F 12/20 23:32
推 : 以後這邊出bug就一個一個改 讚喔24F 12/20 23:32
→ : 夜曲之前有確定的是Q的那團黑是一堆小兵,黑影消失25F 12/20 23:33
→ : 等於小兵死掉,造成在遇到特朗德時就產生會讓
→ : 特朗德瘋狂回血
→ : 等於小兵死掉,造成在遇到特朗德時就產生會讓
→ : 特朗德瘋狂回血
推 : 「我們覺得很酷」 「酷你老媽xxx」28F 12/20 23:33
→ : 用刻的 無敵了 維護的真的改到死29F 12/20 23:34
→ : 拉基PM32F 12/20 23:37
推 : 設計師:我覺得這樣會很好玩,你做看看33F 12/20 23:39
※ 編輯: rainnawind (36.230.39.201 臺灣), 12/20/2025 23:42:58推 : 竟然是全部技能一個一個重寫…?34F 12/20 23:44
→ : 這樣好像有語病 不是"所有"都當特例重寫35F 12/20 23:45
→ : 他指得是艾希W like的那種多重投射物的技能
→ : 比如泡麵頭W 原本按邏輯都會從發散 反彈時變成集中
→ : 這樣就太鬼了 所以"這類"技能才全部被拆開來重寫
→ : 他指得是艾希W like的那種多重投射物的技能
→ : 比如泡麵頭W 原本按邏輯都會從發散 反彈時變成集中
→ : 這樣就太鬼了 所以"這類"技能才全部被拆開來重寫
推 : 其實這樣才好寫 疊床架屋 反正壞也是壞梅爾= =39F 12/20 23:52
推 : 太苦了工程師40F 12/20 23:53
推 : 原始程式代碼太古老了 只好一項一項加進去41F 12/20 23:57
推 : 跟軟體的架構有關阿 沒遇過這類問題的都覺得很好解42F 12/21 00:02
推 : 這種堆積出來的屎山代碼 只要寫出來的人離職了 後面43F 12/21 00:06
→ : 接替的人都會很痛苦
→ : 接替的人都會很痛苦
推 : 光看敘述就覺得屎山代碼 ...45F 12/21 00:07
推 : 好寫是好寫阿 可是後面維護跟修改的話很痛苦46F 12/21 00:08
推 : 牛逼 一個一個刻47F 12/21 00:09
推 : 本來沒有實時渲染的話,那就都是先烘培好的內48F 12/21 00:11
推 : 工程師鬼故事49F 12/21 00:13
噓 : 笑死 拉10坨屎還能吹50F 12/21 00:21
→ : 這狗屎還能commit難怪整天產出垃圾
→ : 這狗屎還能commit難怪整天產出垃圾
推 : 本來就只能這樣寫 程式又不是天馬行空就可以套用可52F 12/21 00:25
→ : 以跑又可以兼顧平衡
→ : 以跑又可以兼顧平衡
推 : 都那麼大公司又不是路邊小公司 寫之前好好規劃下吧54F 12/21 00:26
→ : 設計師真的應該學寫程式 我每次聽到莫名其妙要求都55F 12/21 00:26
→ : 會覺得很幹
→ : 會覺得很幹
→ : 這東西都能給過代表從上面就是個智障57F 12/21 00:28
→ : 你要往前改 抽積木可能垮一堆 只好不停蓋違建了58F 12/21 00:35
推 : 以後出新英雄的邏輯就是 先看技能能不能符合梅爾的59F 12/21 00:40
→ : 反彈程式 不行就在寫多一條程式碼 繼續疊床架屋
→ : 反彈程式 不行就在寫多一條程式碼 繼續疊床架屋
推 : 還以為有甚麼神技 原來是屎山代碼61F 12/21 00:47
推 : 以後有其他交互導致BUG就好玩囉62F 12/21 00:49
推 : ...63F 12/21 00:51
推 : 暴力解永遠是你最後的手段64F 12/21 01:02
推 : 樓上那個小兵的那被設計師證實是假的了 有空可以去65F 12/21 01:11
→ : 看那個訪問
→ : 看那個訪問
推 : 都是例外 乖乖重寫67F 12/21 01:12
推 : 基本上跟小兵有關的謠言都是假的68F 12/21 01:12
→ : 上面當然給過.會覺得上面不給過絕對沒待過科技業69F 12/21 01:14
推 : 這聽起來就是隨便一搞就會出Bug欸70F 12/21 01:19
→ : 你是要寫出超幹爆屌的代碼然後超時還是寫一坨屎但71F 12/21 01:21
→ : 準時,選前者的肯定是好研究者,選後者的肯定是好
→ : 員工
→ : 準時,選前者的肯定是好研究者,選後者的肯定是好
→ : 員工
推 : 好可怕的程式碼74F 12/21 01:24
推 : 蠻屌的 哈哈哈哈 不亞於一個個判斷1-1000的質數75F 12/21 01:25
推 : 垃圾PM 我工作量又增加了76F 12/21 01:26
推 : 見證屎山代碼的出生77F 12/21 01:31
推 : 工程師: 拉基spec 拉基引擎78F 12/21 01:44
噓 : 幹破角79F 12/21 02:00
推 : 挖靠 只能說是愛啊w80F 12/21 02:02
推 : 幹笑死 史山底層+181F 12/21 02:04
推 : 給工程師一個respect82F 12/21 02:07
推 : 辛苦工程師了,代表每出一個英雄就要特例83F 12/21 02:46
推 : 做不出來 土法煉鋼84F 12/21 02:49
推 : 爛code85F 12/21 03:13
推 : 設計師的美好幻想都要工程師絞盡腦汁86F 12/21 03:19
推 : 太苦了RD87F 12/21 03:20
推 : 嗯,好寫,然後以後的角色要必須跟梅爾交互,又要88F 12/21 04:16
→ : 全部一個一個寫,哈哈 好寫
→ : 全部一個一個寫,哈哈 好寫
推 : 硬A90F 12/21 04:18
推 : 那這樣加個新英雄就要測一遍哇喔91F 12/21 04:43
→ : 只能說來拳頭工作真的是對遊戲很有熱誠很有愛心錢92F 12/21 04:45
→ : 跟大廠畢業不是很多 這老哥CMU本科畢業還來搞這種
→ : 屎山
→ : 跟大廠比也*
→ : 跟大廠畢業不是很多 這老哥CMU本科畢業還來搞這種
→ : 屎山
→ : 跟大廠比也*
推 : 將來必出BUG XDDD96F 12/21 05:34
推 : 滿滿特例 多了多少代碼97F 12/21 06:39
推 : 能跑的代碼就是好代碼98F 12/21 07:34
![[圖]](https://i.mopix.cc/HnaxdA.jpg)
推 : 垃圾PM100F 12/21 08:20
推 : 一個個既能單獨寫喔 靠北 等於以後有新英雄出來的話101F 12/21 08:21
→ : 梅爾也得跟著動刀耶 可以預期以後會BUG滿天飛了
→ : 梅爾也得跟著動刀耶 可以預期以後會BUG滿天飛了
推 : .....103F 12/21 08:36
噓 : 堆疊屎山 然後繼續領高薪 笨色PM==104F 12/21 08:38
推 : 屎的代碼 完全不意外105F 12/21 08:44
推 : 是自以為很了不起想炫技其實是在暴露自己短絀嗎= =106F 12/21 08:52
推 : 可憐垃圾公司107F 12/21 09:10
推 : 為了這招感覺用超多記憶體108F 12/21 09:15
推 : 要存施術者的數值 方向 然後還要加金色
推 : 要存施術者的數值 方向 然後還要加金色
推 : 能這樣硬拼有的沒的還能保證低配備能跑110F 12/21 09:46
→ : 其實底子還算不差?
→ : 其實底子還算不差?
推 : 跑固定的程序硬體負擔不大112F 12/21 09:58
→ : 記憶體也應該只用存場上的英雄技能就好
推 : 反正過幾年等AI進步 到時候讓AI重寫二代就行
→ : 170個英雄的技能組 靠人去寫怎麼寫都會有BUG的
→ : 新英雄也不一定會有多重彈道 LOL也不一定剩幾年
→ : 只要能運行的方法就是好方法
→ : 記憶體也應該只用存場上的英雄技能就好
推 : 反正過幾年等AI進步 到時候讓AI重寫二代就行
→ : 170個英雄的技能組 靠人去寫怎麼寫都會有BUG的
→ : 新英雄也不一定會有多重彈道 LOL也不一定剩幾年
→ : 只要能運行的方法就是好方法
推 : 這串一定一堆人沒寫過程式...118F 12/21 10:10
→ : 重寫有重寫的好處119F 12/21 10:17
→ : 這才是人比ai值錢的地方
→ : 這才是人比ai值錢的地方
推 : 底層code很爛121F 12/21 10:20
→ : 程式碼這樣寫...真的是鬼故事122F 12/21 10:28
推 : 寫之前要怎麼好好規劃? 前面已經堆疊這麼多123F 12/21 10:30
→ : 後面的人只能見招拆招了
推 : 剛建這專案時也沒想過這個遊戲能夠活下來吧
→ : 後面的人只能見招拆招了
推 : 剛建這專案時也沒想過這個遊戲能夠活下來吧
推 : 難怪代碼會山積….126F 12/21 10:48
推 : 你用現在的眼光看當然覺得屎山代碼 你覺得當初開發127F 12/21 10:56
→ : 的那幾個會想的到後來要出這幾種機制的英雄 ?
→ : 的那幾個會想的到後來要出這幾種機制的英雄 ?
推 : 屎山代碼又更屎山了129F 12/21 10:57
推 : 屎山代碼上面堆屎的真實案例130F 12/21 11:05
推 : 所以以後新英雄都要再新增例外 科科科131F 12/21 11:36
推 : 靠AI重寫喔 我連叫AI讀之前的測試和production cod132F 12/21 11:37
→ : e來產生新的測試 他都能寫出一陀大便了
→ : 別神話AI了
→ : e來產生新的測試 他都能寫出一陀大便了
→ : 別神話AI了
推 : 每做一支新英雄就得確認賽勒斯維爾戈梅爾這三隻的135F 12/21 11:42
→ : 互動 我是工程師肯定問候設計師全家 鍵盤甩他臉上
→ : 互動 我是工程師肯定問候設計師全家 鍵盤甩他臉上
推 : 畢竟一開始就沒想過會有這種需求 後面要趕上開發進137F 12/21 11:47
→ : 度 一定只能疊床架屋
→ : 度 一定只能疊床架屋
推 : 腦殘coding139F 12/21 11:48
推 : 一路switch case 到底 夭壽140F 12/21 12:11
推 : 這就是狗屎code可以存在15年的由來141F 12/21 12:22
推 : 不是 你這樣手刻 那新增腳色不就要全這樣做142F 12/21 12:25
推 : 厲害,原來是屎山代碼堆出來的角色143F 12/21 12:32
推 : 有新例外就再刻代碼144F 12/21 12:40
推 : 下次有設計師再敢設計這種大量互動英雄就直接尻過去145F 12/21 12:41
推 : 終極屎山代碼 每次更新都有可能出包146F 12/21 12:52
推 : 設計師都這樣出一張嘴 要求一堆嗎?太狗幹了吧147F 12/21 12:54
推 : PM是用什麼心情把這些狗屎寄信給RD的148F 12/21 13:01
推 : switch無敵149F 12/21 13:14
→ : 現實是很多時候真的只能這樣疊出來XD150F 12/21 13:17
推 : 漂亮 這種code 一律ctr+a del處理151F 12/21 13:19
推 : 可以理解..152F 12/21 14:01
推 : 好笑歸好笑要預留未來的擴展空間本來就是很麻煩的153F 12/21 14:02
→ : 你什麼都想到好永遠都寫不完
→ : 更不用說設計師還可以搞出花樣什麼是根本想不到
→ : 你什麼都想到好永遠都寫不完
→ : 更不用說設計師還可以搞出花樣什麼是根本想不到
推 : 所以才需要那種同時會設計又同時會程式的 那個縮寫156F 12/21 14:17
→ : 我忘記了
→ : 我忘記了
推 : IT鬼故事158F 12/21 14:22
推 : 工程師每年的生日願望都要留一個希望設計師還沒玩159F 12/21 14:24
→ : 過dota2的meepo
→ : 過dota2的meepo
→ : 好的設計本來就不一定要考慮怎麼實現 實現就工程師161F 12/21 14:25
→ : 的事 考慮實現難易度才是本末倒置
→ : 的事 考慮實現難易度才是本末倒置
推 : 你完全說反= = 好的設計就是要考慮怎麼實現163F 12/21 14:27
→ : 不考慮怎麼實現跟老闆話唬爛差在哪
→ : 不考慮怎麼實現跟老闆話唬爛差在哪
→ : 怎麼會有人覺得有更好的方案啊165F 12/21 14:30
推 : 完全不考慮怎麼實現叫不負責任166F 12/21 14:30
→ : 有沒有寫過程式啦,你找一百個工程師,會有一百零167F 12/21 14:31
→ : 一個用跟他同樣的做法
→ : 一個用跟他同樣的做法
推 : 反正最後都是要溝通的,玩笑放一邊當初需要多少功169F 12/21 14:32
→ : 能就寫多少是很正常的,為了活過十幾年增加內容到
→ : 需要暴力魔改也是很正常的
→ : 能就寫多少是很正常的,為了活過十幾年增加內容到
→ : 需要暴力魔改也是很正常的
→ : 新入職的只能在後面跟著疊阿 不然怎麼辦172F 12/21 14:32
→ : PM開規格 RD負責做出來 做不出來再回頭討論173F 12/21 14:32
→ : 但設計師本質就是設計角色 頂多說有考慮實現會更好
→ : 但設計師本質就是設計角色 頂多說有考慮實現會更好
推 : 你都說有考慮會更好了 那怎麼會不用考慮175F 12/21 14:36
→ : 什麼架構要多乾淨擴展性要多好都是理論,而且這理176F 12/21 14:38
→ : 論還是沒有真正共識的
→ : 論還是沒有真正共識的
→ : 畫個飛碟叫工程師造出來 你覺得現實嗎178F 12/21 14:38
→ : 甚至設計角色要考慮更多 數值、入手難易 更多方方面
→ : 面 怎可能光靠想像力天馬行空隨便設計
→ : 甚至設計角色要考慮更多 數值、入手難易 更多方方面
→ : 面 怎可能光靠想像力天馬行空隨便設計
推 : 所以PM就是開一堆沒經過腦袋的規格才這麼人人喊打181F 12/21 14:41
→ : 我覺得你有點滑太遠了,他說的大概就賽垃圾維爾戈182F 12/21 14:43
→ : 這種程度的吧
→ : 做不到還是會被打槍或妥協但不影響你提出來討論
→ : 這種程度的吧
→ : 做不到還是會被打槍或妥協但不影響你提出來討論
推 : 簡單說就是像卡比變身 多幾個人就多幾個變身185F 12/21 14:45
→ : 出去隨便跟客戶畫餅 然後就把承諾的規格丟給RD 要R186F 12/21 14:45
→ : D想辦法生出來 沒生出來不干我PM的事 生出來肯定是
→ : 把案子接回來的我大PM最大功臣 沒錯 就是一堆這種
→ : 低能PM
→ : D想辦法生出來 沒生出來不干我PM的事 生出來肯定是
→ : 把案子接回來的我大PM最大功臣 沒錯 就是一堆這種
→ : 低能PM
→ : 這又不是接案子 而且我明明有說不行再討論…190F 12/21 14:47
→ : 預設兩端都溝通不良 那當然只有工程師自己當設計師
→ : 預設兩端都溝通不良 那當然只有工程師自己當設計師
推 : 靠北這個用skill[a,b]就能解決的事情192F 12/21 14:57
噓 : RD:拉基PM193F 12/21 15:27
推 : 還好吧 能正常運行的就不要改 你想全部打掉弄個簡潔194F 12/21 15:28
→ : 的一定會觸發一堆BUG 進入DEBUG地獄
→ : 的一定會觸發一堆BUG 進入DEBUG地獄
推 : 跟史一坨的代碼196F 12/21 16:20
→ : 宇智波反彈197F 12/21 16:25
噓 : 反彈真的是弱智技能 真的應該把這設計師開除198F 12/21 16:28
→ : 能跑就沒問題 遇到新屎怎麼辦 寫一百種衛生紙解決阿199F 12/21 16:45
推 : 這也太屎了==200F 12/21 17:00
推 : 屎山程式碼,辛苦後面的新人了201F 12/21 17:09
推 : ...一坨202F 12/21 17:10
推 : 一堆特例就是屎山代碼的原因203F 12/21 17:18
--
※ 看板: LoL 文章推薦值: 0 目前人氣: 0 累積人氣: 106
回列表(←)
分享