srpg 勝利條件設定_英雄聯盟獲勝條件

srpg 勝利條件設定

介紹 (Introduction)

The e-sports community has been growing rapidly in the past few years, and what used to be a casual pastime has morphed into an industry projected to generate $1.8 B in revenue by 2022. While there are many video games in this ecosystem, few have been a staple of the community like League of Legends, with the game amassing over 100 million unique viewers during their 2019 World Championship.

電子競技社區在過去幾年中一直在快速增長,過去曾經是休閑娛樂,如今已演變成一個行業,預計到2022年將產生$ 1.8 B的收入。 盡管這個生態系統中有許多視頻游戲,但像英雄聯盟這樣的社區中很少有這樣的視頻游戲,該游戲在2019年世界錦標賽期間吸引了超過1億的獨立觀眾。

Released in late 2009, League of Legends is a freemium MOBA (multiplayer online battle arena) video game created by Riot Games which generated a widespread competitive scene early on, with the first World Championship in 2011 generating around 1.6 million viewers. The game has since grown, both in popularity and gameplay, as Riot began to understand how changes could make the game more competitive and fun.

英雄聯盟(League of Legends)于2009年末發布,是由Riot Games創建的免費增值MOBA(多人在線戰斗競技場)視頻游戲,在早期就產生了廣泛的競爭場面,2011年的第一屆世界錦標賽吸引了160萬觀眾。 此后,隨著Riot開始了解變化如何使游戲更具競爭力和趣味性,游戲在受歡迎程度和游戲玩法方面都在不斷發展。

The current state of the game is quite complicated, and if you’re a complete newbie, you should check out this video. To summarize, a League of Legends match poses two teams of five players, each of whom control one unique character or “champion”, and ends when one team’s Nexus, located deep in that team’s base, is destroyed. Along the way, there are many objectives that a team can achieve, such as destroying turrets, killing neutral monsters like dragon and baron for team-wide buffs, and many more. Some objectives, such as destroying at least five turrets and one inhibitor, are necessary to win the game, while others, such as getting First Blood, are helpful, but not necessary. Through this project, I would like to better understand which of these objectives are the most important to win a game of League of Legends. To that extent, the question I posed is as follows:

游戲的當前狀態非常復雜,如果您是一個完全的新手,則應查看此視頻 。 總而言之,英雄聯盟的比賽由兩隊組成,每隊五名球員,每人控制一個唯一的角色或“冠軍”,并在摧毀一支位于該隊基地深處的一支隊的Nexus時結束。 在此過程中,團隊可以實現許多目標,例如銷毀炮塔,殺死整個團隊的增益師等中立怪物,如龍和男爵,等等。 為了贏得比賽,某些目標(例如銷毀至少五個炮塔和一個抑制劑)是必要的,而其他目標(例如獲得“第一血統”)是有幫助的,但不是必需的。 通過這個項目,我想更好地理解其中哪些目標是贏得英雄聯盟游戲最重要的目標。 就此而言,我提出的問題如下:

What objectives are the most important win conditions for a game of League of Legends?

什么目標是英雄聯盟游戲最重要的獲勝條件?

收集數據 (Gathering Data)

Jumping in, I first applied for an app with the Riot Developer Portal and after my app was accepted, I browsed through the APIs tab to understand the type of data I could request. Unfortunately, there wasn’t a direct way for me to pull the last X number of ranked matches from a region, so I had to figure out a way around this.

進入時,我首先向Riot Developer Portal申請了一個應用程序,當我的應用程序被接受后,我瀏覽了API選項卡以了解可以請求的數據類型。 不幸的是,我沒有直接的方法從一個區域中獲取最近的X個排名比賽,因此我不得不想辦法解決這個問題。

My solution was to use a list of summoner names (usernames) to generate a list of recent matches for each player. Through a series of calls to the Riot API using the Python package Riot-Watcher, I populated a Pandas DataFrame of slightly under 10,000 rows with the most recent ranked League of Legends games played by the top 100 players in each of the five regions that make up the largest amount of the League of Legends player base. At a glance, the DataFrame looks something like this:

我的解決方案是使用召喚者名稱(用戶名)列表為每個玩家生成最近的比賽列表。 通過使用Python軟件包Riot-Watcher對Riot API的一系列調用,我為一個熊貓行DataFrame填充了略少于10,000行的數據,其中包括五個區域中每個區域的前100名玩家所玩的最新排名的英雄聯盟游戲最多的英雄聯盟玩家群。 乍一看,DataFrame看起來像這樣:

Image for post
First Ten Rows from Matches DataFrame
Matches DataFrame的前十行

In the first seven columns, a 0 indicated ‘False’ and a 1 indicated ‘True’, while in the later columns, the data encoded in the cell indicated the number of times that event occurred. Each row contained the stats of one team in a League of Legends ranked match. For example, in the first row, the team that did not acquire any objectives first and at all lost the overall game.

在前七個列中,0表示“ False”,而1表示“ True”,而在后面的列中,在單元格中編碼的數據表示事件發生的次數。 每行包含英雄聯盟排名比賽中一支球隊的數據。 例如,在第一行中,首先沒有獲得任何目標的團隊根本就輸掉了整個比賽。

利用熱圖和PCA進行探索性數據分析 (Exploratory Data Analysis with Heat Map and PCA)

I first found that around 91% of winning teams destroyed the first inhibitor, 80% killed the first baron, 70% destroyed the first tower, 63% killed the first dragon, and 59% of winning teams began the game with First Blood. Already, it seemed like the most important win condition is destroying the first inhibitor, which makes sense, as destroying a team’s inhibitor puts pressure on their base and allows the opposing team to have more map control.

我首先發現,大約91%的獲勝團隊摧毀了第一個阻礙者,80%殺死了第一只男爵,70%摧毀了第一座塔,63%殺死了第一只龍,59%的獲勝團隊開始了First Blood游戲。 似乎最重要的獲勝條件是摧毀第一個抑制器,這是有道理的,因為破壞團隊的抑制器會給他們的基礎施加壓力,并允許對方的團隊擁有更多的地圖控制權。

Next, I visualized the correlation across columns in my dataset:

接下來,我可視化數據集中各列之間的相關性:

Image for post
Heat Map Correlation Across Data
跨數據的熱圖關聯

I also pulled up the same correlation heat maps for each individual region represented in my data to compare correlations across different regions, hoping to notice some differences in play styles. Generally though, the correlation matrices looked very alike each other. A possible reason for this is that my data included matches played by the best players of each region, many of whom play on a professional level. Therefore, since good gameplay practices are consistent among the competitive community, the matches represented in my data involve players who navigate each game similarly relative to lower ranked players of each region.

我還為數據中表示的每個單獨區域繪制了相同的相關熱圖,以比較不同區域之間的相關性,希望注意到游戲風格上的一些差異。 通常,盡管相關矩陣看起來彼此非常相似。 造成這種情況的可能原因是,我的數據包括每個地區的最佳球員所打的比賽,其中許多人都是職業球員。 因此,由于良好的游戲習慣在競爭社區之間是一致的,因此我數據中所代表的比賽涉及相對于每個地區的排名較低的玩家相似地瀏覽每個游戲的玩家。

I was now curious to see how well the variance in the data could be explained by fewer features than the ten I would be using to predict the outcome of a game. To that extent, I performed a Principal Component Analysis to understand how many features I could simplify my data into and still preserve most of the variance:

我現在很想知道,用比我用來預測游戲結果的十個特征更少的特征可以很好地解釋數據的差異。 在那種程度上,我進行了主成分分析,以了解我可以將數據簡化為多少并仍然保留大部分差異的功能:

Image for post
Ratio of Variance Explained per New Component
每個新組件說明的方差比率

Over 80% of the variance in the ten predictor columns could be explained by half the amount of features. This was definitely interesting, and by associating each component with the original dataset’s columns, I hoped to understand which features were the most important in explaining the variance of the data, which could help me figure out which columns were most critical to whether or not a team would win.

十個預測變量列中超過80%的方差可以用特征量的一半來解釋。 這絕對很有趣,并且通過將每個組件與原始數據集的列相關聯,我希望了解哪些功能在解釋數據差異時最重要,這可以幫助我確定哪些列對于團隊會贏。

Image for post
Relation Between Dataset’s Columns and Principal Components
數據集的列與主成分之間的關??系

The components that were used to generate the above heat map were from a PCA object with six components, as I wanted the components to explain more than 90% of the variance in the data. It appeared that the number of tower kills, inhibitor kills, and whether or not a team destroyed the first inhibitor were the most important features in determining variance in the data, as the first component explained 40% of the variance and the three aforementioned columns were weighted the most for this component.

用于生成上述熱圖的組件來自具有六個組件的PCA對象,因為我希望這些組件能夠解釋數據中90%以上的方差。 在確定數據差異時,塔式殺傷,抑制劑殺傷的數量以及團隊是否破壞了第一個抑制劑似乎是決定數據差異的最重要特征,因為第一部分解釋了差異的40%,而上述三列為該組件權重最大。

To reiterate the insights I had gathered at this point:

為了重申我在這一點上收集到的見解:

  • From my correlation heat map, whether or not a team destroyed the first inhibitor, how many tower kills a team had, and how many inhibitors a team had destroyed all had the highest correlation with winning.

    從我的相關性熱圖中,一個團隊是否消滅了第一個阻礙者,一個團隊殺死了多少塔樓殺手以及一個團隊消滅了多少個阻礙者都與獲勝相關性最高。
  • From my PCA analysis, whether or not a team destroyed the first inhibitor, how many tower kills a team had, and how many inhibitors a team had destroyed played the largest role in explaining the variance in the data.

    根據我的PCA分析,一個團隊是否銷毀了第一個抑制器,一個團隊殺死了多少塔樓殺手以及一個團隊銷毀了多少個抑制器在解釋數據差異方面發揮了最大作用。

Logistic回歸的數據建模 (Data Modeling with Logistic Regression)

I used a Logistic Regression model to understand the win conditions for a ranked match of League of Legends. My process was to first split my data into a set of features and a set of targets, where my features were all the columns except for the ‘win’ and ‘region’ columns, and my target was the ‘win’ column. I then split my data into a train set and a test set, ran them through a Logistic Regression model, and checked the classification report and confusion matrix to ensure a relatively strong predictive ability. When the Logistic Regression model was run on the overall dataset, the model’s precision and recall were .86 and .85 respectively.

我使用Logistic回歸模型來了解英雄聯盟排名比賽的獲勝條件。 我的過程是首先將數據分為一組功能和一組目標,其中我的功能是除“ win”和“ region”列之外的所有列,而我的目標是“ win”列。 然后,我將數據分為訓練集和測試集,并通過Logistic回歸模型進行了分析,并檢查了分類報告和混淆矩陣,以確保具有較強的預測能力。 在整體數據集上運行Logistic回歸模型時,該模型的精度和召回率分別為0.86和.85。

From here, I performed Logistic Regression on subsets of the data that included only one region, such as matches that were only played in NA, BR, etc., and recorded the model’s coefficients in a Pandas DataFrame. This DataFrame was then visualized so I could compare the different regions:

從這里開始,我對僅包含一個區域的數據子集(例如僅在NA,BR等中進行的比賽)執行了Logistic回歸,并將模型的系數記錄在Pandas DataFrame中。 然后將此DataFrame可視化,因此我可以比較不同的區域:

Image for post
Log Regression Coefficients Across Regions and Overall
跨區域和整體的對數回歸系數

Regression coefficients describe the relationship between a predictor variable and the target variable. For example, when looking at the First Blood predictor variable above, a team getting First Blood was a moderate predictor for the outcome of the game, as a team that achieves First Blood is more likely to win. On the other hand, Rift Herald Kills were actually related in the opposite direction (except for EUNE), and teams that get more Rift Herald Kills are more likely to lose.

回歸系數描述了預測變量和目標變量之間的關系。 例如,當查看上面的“第一血液”預測變量時,獲得“第一血液”的團隊是比賽結果的中度預測因子,因為獲得“第一血液”的團隊更有可能獲勝。 另一方面,Rift Herald Kills實際上是相反的方向(EUNE除外),獲得更多Rift Herald Kills的球隊更有可能輸掉比賽。

Using this analytical process, I understood which columns were more predictive of a win, helping me answer my question regarding win conditions in a game of League of Legends.

通過這種分析過程,我了解了哪些列更能預測獲勝,從而幫助我回答了有關英雄聯盟游戲中獲勝條件的問題。

結論 (Conclusion)

As a result of my project, here are the conclusions I made:

作為我的項目的結果,以下是我得出的結論:

  • In order of greatest to least, First Inhibitor, First Tower, and Tower Kills were the most important win conditions across the dataset, according to my Logistic Regression model.

    根據我的邏輯回歸模型,從最大到最小的順序,First Inhibitor,First Tower和Tower Kills是整個數據集中最重要的獲勝條件。
  • In order from greatest to least, Tower Kills, First Inhibitor, and Inhibitor Kills were the most important win conditions across the dataset, according to my correlation heat map.

    根據我的相關熱圖,從最大到最小的順序,塔式殺手,第一抑制劑和抑制劑殺手是整個數據集中最重要的獲勝條件。
  • Although NA and EUW teams that get the first baron were more likely to win, teams in these regions were more likely to lose with increasing numbers of baron kills.

    盡管獲得第一名男爵的NA和EUW球隊更有可能獲勝,但隨著男爵殺人次數的增加,這些地區的球隊更有可能輸掉比賽。
  • The fact that teams in NA were more likely to win off a First Dragon compared to other regions perhaps indicates that games in NA were more prone to snowballing (when a team expands on a small advantage over the game to win) from dragon buffs and fights around dragon.

    與其他地區相比,北美地區的球隊更有可能贏得“第一龍”冠軍,這可能表明北美地區的比賽更容易因打龍和打架而滾雪球(當一支球隊擴大了對比賽的優勢時)在龍周圍。
  • KR games weren’t unevenly impacted by one feature. This could indicate that KR players understand how to play from behind better than players in other regions, prompting a team to win off a combination of objectives more often than in other regions.

    KR游戲并不受一項功能的影響。 這可能表明KR玩家比其他地區的玩家更了解如何從背后進行比賽,這促使團隊比其他地區的玩家更經常實現目標組合。

If there are any other interesting observations you think I missed out on, let us know in the comments!

如果您認為我錯過了其他有趣的觀察,請在評論中告訴我們!

The GitHub repository that contains my code and the dataset I put together for this analysis can be found here.

可以在此處找到包含我的代碼和為分析而放在一起的數據集的GitHub存儲庫。

翻譯自: https://towardsdatascience.com/league-of-legends-win-conditions-db139f1ed6ca

srpg 勝利條件設定

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/388862.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/388862.shtml
英文地址,請注明出處:http://en.pswp.cn/news/388862.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

[Egret][文檔]遮罩

——遮罩的作用是指定一個顯示對象的可見區域,即這個顯示對象只在這個區域可見。 一、矩形遮罩 將一個矩形對象賦值給顯示對象的 mask 屬性。 shp.mask new egret.Rectangle(20,20,30,50); 【注】:這個矩形的坐標(20,20)和(30,50)是相對于被遮罩對象shp…

clob類型字段最大存儲長度_請教oracle的CLOB字段的最大長度?

CLOB和BLOB都是4G,而LONG ,LONG raw是舊時代的oracle二進制和長文本表示,將來會被廢棄。最長長度是2G.單位是Byte表中單個 LOB 字段 在 9i 版本中可保存 4GB 數據, 在 10g 版本中可保存多達 128TB 的數據.所以理論上是沒限制的ORACLE的數據類型-- ORAC…

JdbcUtil

轉自:https://github.com/ghyg525/util_java_jdbc JdbcUtil.java import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; …

機器學習 綜合評價_PyCaret:機器學習綜合

機器學習 綜合評價Any Machine Learning project journey starts with loading the dataset and ends (continues ?!) with the finalization of the optimum model or ensemble of models for predictions on unseen data and production deployment.任何機器學習項目的旅程都…

silverlight 3D 游戲開發

http://www.postvision.net/SilverMotion/DemoTech.aspx silverlight 3D 游戲開發 時間:2010-10-22 06:33來源:開心銀光 作者:黎東海 點擊: 562次意外發現一個silverlight的實時3D渲染引擎。性能比開源那些強很多。 而且支持直接加載maya,3Dmax等主流3D模型文件。 附件附上它的…

redis終端簡單命令

keys * 獲取所有鍵lRange hongbao:44 0 -1獲取該鍵的所有值del hongbao:44 刪除該鍵的所有值 hgetAll user:44 獲取該鍵的所有隊列hget hongbao:44 8 獲取該隊列用戶為8的值hset hongbao:44 7 asdf設置該隊列用戶為7的值hdel user:44 8 刪除該隊列用戶為8的值 flushall 清空red…

python中ix用法_Python中使用ix的數據幀子集

您可以使用X[var2].iloc[[0,1]]:In [280]: X[var2].iloc[[0,1]]Out[280]:0 NaN4 9Name: var2, dtype: float64由于X[var2]是X的視圖,因此X[var2].iloc[[0,1]]對兩者都是安全的訪問和分配。但是如果你使用這種“鏈式索引”要小心模式(例如這里使用的index…

LintCode 16. 帶重復元素的排列

寫在前面:這題和全排列不含重復元素的那題幾乎一樣,我比較垃圾,就用HashSet去掉了重復的元素但是看了九章算法的答案也沒看懂,他寫的很有感覺。 用了hash,本來想著怎么寫hashcode()和equal()方法的,哪知道都…

皮爾遜相關系數 相似系數_皮爾遜相關系數

皮爾遜相關系數 相似系數數據科學和機器學習統計 (STATISTICS FOR DATA SCIENCE AND MACHINE LEARNING) In the last post, we analyzed the relationship between categorical variables and categorical and continuous variables. In this case, we will analyze the relati…

【洛谷】P1641 [SCOI2010]生成字符串(思維+組合+逆元)

題目 傳送門&#xff1a;QWQ 分析 不想畫圖。 https://www.luogu.org/problemnew/solution/P1641 好神仙的題啊。 代碼 1 // luogu-judger-enable-o22 #include <bits/stdc.h>3 using namespace std;4 typedef long long ll;5 const int maxn15000000;6 const ll MOD2010…

Kubernetes持續交付-Jenkins X的Helm部署

Jenkins X 是一個集成化的 CI / CD 平臺&#xff0c;可用于 部署在Kubernetes集群或云計算中心。支持在云計算環境下簡單地開發和部署應用。本項目是在Kubernetes上的安裝支持工具集。 本工具集中包含&#xff1a; Jenkins - 定制好的流水線和運行環境&#xff0c;完全整合CI/C…

中國石油大學(華東)暑期集訓--二進制(BZOJ5294)【線段樹】

問題 C: 二進制 時間限制: 1 Sec 內存限制: 128 MB提交: 8 解決: 2[提交] [狀態] [討論版] [命題人:]題目描述 pupil發現對于一個十進制數&#xff0c;無論怎么將其的數字重新排列&#xff0c;均不影響其是不是3的倍數。他想研究對于二進制&#xff0c;是否也有類似的性質。于…

2018年10個最佳項目管理工具及鏈接

要在任何業務中取得成功&#xff0c;對項目進行適當的管理非常重要。 項目管理是一系列活動&#xff0c;包括計劃&#xff0c;執行&#xff0c;控制和完成項目。項目管理工具有助于簡化此過程。這里是Best 10項目管理工具及其功能和下載鏈接的精選列表。1&#xff09;AsanaAsan…

Java 8 新特性之Stream API

1. 概述 1.1 簡介 Java 8 中有兩大最為重要的改革&#xff0c;第一個是 Lambda 表達式&#xff0c;另外一個則是 Stream API&#xff08;java.util.stream.*&#xff09;。 Stream 是 Java 8 中處理集合的關鍵抽象概念&#xff0c;它可以指定你希望對集合進行的操作&#xff0c…

[Python設計模式] 第17章 程序中的翻譯官——適配器模式

github地址:https://github.com/cheesezh/python_design_patterns 適配器模式 適配器模式&#xff0c;將一個類的接口轉換成客戶希望的另外一個接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些類可以一起工作[DP]。 當系統的數據和行為都正確&#xff0c;但是接口…

Ubuntu中NS2安裝詳細教程

前言&#xff1a; NS2是指 Network Simulator version 2&#xff0c;NS&#xff08;Network Simulator&#xff09; 是一種針對網絡技術的源代碼公開的、免費的軟件模擬平臺&#xff0c;研究人員使用它可以很容易的進行網絡技術的開發&#xff0c;而且發展到今天&#xff0c;它…

es6核心特性圖

轉載于:https://juejin.im/post/5c19e188e51d452db4753925

帶你利用一句話完成轉場動畫

這篇文章主要給大家介紹了關于iOS如何利用一句話完成轉場動畫的相關資料&#xff0c;文中通過示例代碼介紹的非常詳細&#xff0c;對大家的學習或者工作具有一定的參考學習價值&#xff0c;需要的朋友們下面來一起學習學習吧前言本文介紹SS_AnimationTransition 的使用方法,利用…

14.vue路由腳手架

一.vue路由&#xff1a;https://router.vuejs.org/zh/ 1、定義 let router new VueRouter({mode:"history/hash",base:"基本路徑" 加一些前綴 必須在history模式下有效linkActiveClass:"active", 范圍選擇linkExactActiveClass:"exact&qu…

工程師、產品經理、數據工程師是如何一起工作的?

做為一名工程師&#xff0c;免不了與產品經理打交道&#xff0c;如果公司大一些&#xff0c;數據量多一些&#xff0c;還會有數據工程師這個角色。今天會和你主要聊一聊在工作中&#xff0c;產品經理和數據工程師在哪些方面對我們工程師的幫助最大&#xff0c;以及我從他們身上…