Overview.png

概览

全球玩家挑战赛是由 Flutter 和全球公民组织赞助的为期 8 周的挑战赛,旨在利用 Flutter 设计、构建和发布可持续发展游戏。加入我们,了解可持续发展游戏如何赋能玩家为环境采取小行动,这些行动汇集起来将产生巨大影响,并体验构建 Flutter 游戏的乐趣!

开始使用
SuperDash.png

获取灵感

Flutter 休闲游戏工具包

Flutter 休闲游戏工具包是模板和开发者资源的集合,旨在提高使用 Flutter 进行游戏开发的效率。探索游戏工具包,为您的全球玩家挑战赛游戏获取一些灵感!

立即探索
Prizes.png

奖品

争夺前往纽约与 Flutter 团队聚会以及参加下一届全球公民音乐节 VIP 待遇等奖品。请查看竞赛页面上的奖品和类别。

探索奖品
Wallet.png

额外学分

Google 钱包

如果您想获得额外学分,我们与 Google 钱包合作,提供一项额外挑战:在您的游戏中部署 Google 钱包 API 的创新集成。

了解更多

日程

全球玩家
挑战赛
时间线

Global Gamers Schedule

2024 年 1 月 9 日:提交开放

务必尽早组建团队并提交参赛作品!

2024 年 3 月 5 日:提交截止

在 DevPost 上提交您的项目。截止时间为太平洋标准时间下午 2:59 (UTC-8)。

2024 年 3 月底:公布前 20 名

请回来查看您的项目是否进入了前 20 名!

2024 年 5 月:公布获奖者

前 20 名决赛选手将争夺 10 个最终获奖者名额,获奖者将于 2024 年 5 月公布。

资源

查看下面列出的资源,以帮助您启动全球玩家挑战赛的提交!

可持续发展资源

我们与全球公民组织合作开展这项挑战,因为我们相信,当技术人员和活动家携手合作时,才能产生最佳解决方案。最成功的提交将展现对环境游戏所代表的问题和机遇的深刻理解。查看我们合作伙伴的这些资源,以快速掌握情况。

Flutter 入门

学习新技能可能很困难。查看下面的资源,了解我们关于入门的一些建议。

  • IDE → 如果您是 Flutter 新手,您首先需要做的是设置您的开发环境。编写 Flutter 代码的经典方法是下载 Flutter SDK 并在 IDE 中本地构建(例如,使用VS CodeFlutter 扩展),这样您就可以体验 Flutter 的全部功能,例如热重载。如果您没有 IDE 或想跳过 SDK 安装过程以快速入门,我们还提供了其他一些选项
    • Project IDX → 一项实验性计划,旨在将您的整个全栈、多平台应用程序开发工作流带到您的网络浏览器中。注意:IDX 目前处于候补名单中,但他们已为全球玩家挑战赛参与者开放了注册名单,因此请务必使用您注册的相同电子邮件访问 IDX 以尝试!在您在 DevPost 上注册黑客马拉松后,可能需要 1-2 天才能访问 IDX。
        注意
      • 1) IDX 目前处于候补名单中,但他们已为全球玩家挑战赛参与者开放了注册名单,因此请务必使用您注册的相同电子邮件访问 IDX 以尝试!在您在 DevPost 上注册黑客马拉松后,可能需要 1-2 天才能访问 IDX。
      • 2) 欧盟的开发者目前无法访问 IDX。这是他们需要解决的首要问题之一,他们正在与 Google 的法律和隐私团队的合作伙伴密切合作,以便尽快为您提供访问权限。
    • FlutterFlow → 一款低代码构建器,可让您设计和构建 Flutter 应用。
  • 代码实验室
    • 了解如何构建您的第一个 Flutter 应用 → 如果您是 Flutter 新手,但有一些开发背景,这是开始您的 Flutter 开发之旅的绝佳方式。
    • 构建您的第一个 Flutter 游戏 → 尝试这个代码实验室,您将使用 Flame 游戏引擎构建您的第一个 Flutter 游戏!在这个代码实验室中,您将构建一个灵感来自 70 年代视频游戏经典之一 Steve Wozniak 的 Breakout 游戏。您将使用 Flame 的组件来绘制球拍、球和砖块。您将利用 Flame 的效果来动画化球拍的移动,并了解如何将 Flame 与 Flutter 的状态管理系统集成。
  • 社区聊天 → 加入参与全球玩家挑战赛的社区,获取帮助和想法!寻找标题为 #global-gamers-challenge 的频道!
  • 项目规划技巧 → 大型项目可能很难跟上。查看 DevPost 的这些技巧,将您的项目分解成更小的部分,以确保您按时完成!

Flutter 休闲游戏工具包

Flutter 休闲游戏工具包是模板和推荐开发者资源的集合,旨在通过 Flutter 使游戏开发更具生产力。您可以随意增强其中一个模板以加速您的游戏开发时间线,或者仅仅从模板和资源中获取灵感。

  • 文档 → 如果您正在寻找更具体的信息,请直接前往文档。
  • Flutter 游戏美术入门工具包 → 除了 Flutter 休闲游戏工具包中包含的游戏美术资源外,我们很高兴能分享我们多年来专门为本次挑战创建的 Flutter 游戏和演示中的资产。
    • 注意:资产只能用于提交,不能用于其他目的

Flutter 和全球公民组织

了解 Flutter 如何赋能全球公民组织!

下载应用

竞赛更新

全球玩家挑战赛公告视频

了解您需要了解的关于全球玩家挑战赛的一切

全球玩家挑战赛评委公告

认识全球玩家挑战赛的评委!

#全球玩家挑战赛前 20 名决赛选手

第一轮评审已经完成……现在是揭晓进入 #全球玩家挑战赛最后一轮的 20 强游戏的时候了!

公布 #全球玩家挑战赛获奖者

我们请您构建史诗般的 Flutter 游戏,协助保卫地球。来自 50 个国家的 3500 多人做到了!观看视频查看获奖者!

Flutter 游戏

介绍 Flutter 休闲游戏工具包

了解为什么 Flutter 是游戏开发者的绝佳选择,并认识 Flutter 休闲游戏工具包,这是一系列工具、模板和资源,旨在使 Flutter 中的游戏开发更快、更容易,免费开源,以便开发者可以轻松修改和调整以适应他们的需求。

在 Flutter 中快速开始构建游戏

Flutter 正在成为游戏开发中流行的工具。该视频是 Google 努力使 Flutter 开发者更容易开始构建游戏的一部分。

可观察的 Flutter:慢速编码 Pong

观看 Craig Labenz 与 Flame 的创建者 Lukas Klingsbo (@spydon) 一起修饰上周仓促的 Pong 实现,并讨论 Flame 最佳实践。

Flame(本周软件包)

Flame 是一个基于 Flutter 构建的游戏引擎。它带有构建游戏经常需要的构建块,如游戏循环、对象组件系统、碰撞检测等等!

使用 Flutter 和 Flame 构建 Doodle Dash | 学习飞行

在《学习飞行》第二季中,我们正在构建一款名为 Doodle Dash 的游戏,灵感来自 Doodle Jump。扮演 Dash,通过跳上平台帮助她尽可能高地到达。这是一款垂直无限跑酷游戏!

Doodle Dash 和 Flame:碰撞检测、菜单等等!| 学习飞行

在《学习飞行》第二季中,我们正在构建一款名为 Doodle Dash 的游戏,灵感来自 Doodle Jump。扮演 Dash,通过跳上平台帮助她尽可能高地到达。这是一款垂直无限跑酷游戏!

为 Doodle Dash 添加敌人、道具和自定义配置 | 学习飞行

我们的 Flame 游戏开始成形。为了完善一切,我们添加了全新的自定义 Doodle Dash 资产和更多选项!将 Doodle Dash 扮演为 Dash 或 Sparky。所有新的平台、敌人和道具。

使用 Flame 构建 Dash 游戏 | 学习飞行

在本期《学习飞行》中,Khanh 在 Flutter 中重构了一款经典游戏……Flappy Dash!帮助 Dash 安全地穿梭于空中,同时躲避掉落的行李。我们还首次欢迎一位特别嘉宾来到 Flutter YouTube 频道!

Flutter、Dart 和树莓派

了解 Flutter 在树莓派上如何让创客构建令人兴奋的新型嵌入式用户界面。树莓派最初被引入作为教授计算机科学的工具,但自推出以来,它一直是每个创客工具箱中的必备品。它被用作物联网设备、游戏模拟器和信息亭等创客项目的基础。那么这就是“Flutter 和树莓派游戏机是什么样子?”的答案。

探索

挑战指南

这是一个指导性的路径,助您打造一款出色的 Flutter 游戏!将其视为典型的游戏地图。探索下面的每个任务,您可以随意跳过您已经熟悉或对您的成功无用的任务。

Challenge Guide
flutter-content-card-background

编写你的第一行 Flutter 代码!

1
flutter-content-card-background

在 DevPost 注册!

2
flutter-content-card-background

成为全球公民!

3
flutter-content-card-background

找到你的团队!

4
flutter-content-card-background

设置你的开发环境!

5
flutter-content-card-background

构建你的第一个 Flutter 应用!

6
flutter-content-card-background

构建你的第一个 Flutter 游戏!

7
flutter-content-card-background

使用 Flutter 休闲游戏工具包入门!

8
flutter-content-card-background

探索 Google 钱包 API!

9
flutter-content-card-background

提交您的项目!

10

Google 钱包 API 挑战赛

Google 钱包将所有重要物品安全地集中在一个地方,无论您身在何处,都可以访问您的支付卡、会员卡、音乐会门票等。而且,借助通用通行证功能,Google 钱包对您可以添加到钱包中的通行证类型没有限制。

我们希望挑战您,思考创新方法来数字化资产并将其添加到用户的 Google 钱包中,同时赋能他们共同为环境保护采取行动。

作为通用通行证可能性示例,在 Google I/O ‘23 上,我们与 Flutter 团队合作,使用通用通行证为 I/O FLIP 游戏创建了一套可收集卡片。如果您查看 U-go-I/O 演示并正确回答问题,您就可以将来自 I/O FLIP 游戏的 Dash、Dino、Sparky 和其他角色作为可收集卡片添加到您的 Google 钱包中。为了让您对这项挑战更加兴奋,您可以通过点击下面的按钮添加其中一张可收集卡片

挑战赛

使用 Google 钱包 API 在您的全球玩家挑战赛游戏中发行和分享通行证!

奖品

Google 钱包将在两个不同的类别中颁发奖品:最佳 Google 钱包 API 集成,以及最佳 Google 钱包 API 集成(带日语本地化)。在每个类别中,将为最佳集成、亚军和第三名颁发奖品。

最佳集成将获得 7,500 美元奖金,亚军获得 5,000 美元奖金,第三名获得 2,500 美元奖金。所有获奖者还将有机会与 Google 钱包团队成员进行虚拟咖啡交流,并根据 Google 的酌情权推广他们的项目。

评判

  1. 您的提交必须成功集成 Google 钱包 API,这意味着您的用户需要能够将您的通行证添加到他们的 Google 钱包中。您的通行证可以是抽奖券、收藏卡、收藏奖励或您可以创建的任何其他资产!
  2. 我们将考虑集成的社交分享功能:您的应用程序是否以促进用户之间互动的方式使用 Google 钱包 API。一些示例可以是用户之间收集和分享通行证(例如收藏品),或者与现实世界中的事物(例如二维码)进行互动,以便在您的 Google 钱包中收集特殊通行证。
  3. 我们将考虑您使用 Google 钱包 API 的创新程度。我们提到了收藏品,例如收藏卡,但您可以发挥您的想象力,创建任何物品的数字版本,并让您的用户将其保存到 Google 钱包中。

资源

Google 钱包 API 开发者文档:developers.google.com/wallet

Google 钱包 API 示例存储库:github.com/google-wallet/rest-samples

Google 钱包 API 开发者时事通讯注册:g.co/wallet/newsletter

注意:Google 钱包在这些国家/地区可用

奖品

我们致力于奖励不仅仅是优秀的编码能力。探索下面的奖品列表,看看您可能符合什么资格——每个人都有机会!

Global Gamers Prizes

决赛奖

评委将选出最多 10 名决赛选手。每个团队最多 3 名成员将获得前往纽约市的旅费和住宿、与 Google 纽约办公室的 Flutter 团队共度一天、2024 年全球公民音乐节的 VIP 门票、数字表彰和一个礼品包。

决赛选手将

  • 解决重大的可持续发展问题
  • 具有实际影响的潜力
  • 包含创新且引人入胜的游戏概念
  • 展示高质量的代码,包括但不限于遵守可访问性和性能的最佳实践
  • 以下情况将获得加分
    • 多平台部署
    • 教育元素
    • 社交互动

额外奖品

额外奖品获得者将获得一个礼品包和数字表彰。

最佳演示

最佳演示视频将以清晰、简洁和引人入胜的方式呈现游戏概念和玩法,从而吸引观众。它将展示游戏的优势,突出其可持续发展信息、创新功能和迷人的玩法机制。演示结束后,观众会想拿起设备玩游戏,并让观众对游戏的价值和潜在影响有清晰的理解。

最佳教育内容

最佳教育内容的游戏将超越单纯的游戏玩法,提供与游戏体验无缝融合的学习机会。它将利用游戏的力量来教育玩家可持续发展问题或游戏开发的技术方面,提供准确、引人入胜且适合年龄的信息。教育内容可以是教程、测验、互动游戏元素,甚至是与游戏叙事和信息相符的分支故事情节。

荣誉奖

未被选为决赛选手的 20 个顶级项目将获得荣誉奖。

社区选择奖

社区将在 DevPost.com 上投票选出他们最喜欢的游戏。获得最多票数的 5 款游戏将获得社区选择奖。

Google 钱包奖品

Google 钱包还将为 Flutter 游戏中 Google 钱包 API 的创新集成提供高达 30,000 美元的现金奖励。在此处了解有关挑战的更多信息。

最佳集成 - 第一名(7,500 美元)

最佳集成 - 第二名(5,000 美元)

最佳集成 - 第三名(2,500 美元)


最佳日语集成 - 第一名(7,500 美元)

最佳日语集成 - 第二名(5,000 美元)

最佳日语集成 - 第三名(2,500 美元)

编辑此 Flutter 乒乓球游戏

通过这个快速教程和挑战,初步体验在 Flutter 中开发游戏的感觉

第 1 步:运行游戏

点击运行并尝试完成游戏,感受它的运作方式。

第 2 步:更改背景颜色

游戏的当前背景颜色是红色。以下代码将背景颜色更改为蓝色。将其更改为您选择的颜色。

                    
                      @override
                      Color backgroundColor() => Colors.blue;
                    
                  

第 3 步:让球移动得更快

现在这个游戏就是要让球快速移动。看看你能不能通过以下改变让球移动得更快一点

                    
                      static const double startingBallSpeed = 2.5;
                    
                  

第 4 步:更改元素大小!

根据前两步,您能弄清楚如何改变球的大小和/或球拍的宽度吗?(提示:图片会告诉您在哪里可以找到!)

挑战 #1 纵横比和响应性

游戏目前只在特定的纵横比下保持平衡。您能否决定一个不同的纵横比,并将游戏嵌入到该纵横比在实际可用空间中所能占据的最大空间中?

挑战 #2 角度和物理

在真实的 Pong 游戏中,球会以不同的角度从球拍弹开,这取决于它击中球拍的位置。在这个 Pong 游戏中,它不会(它总是以 45° 角弹开)。

您能否实现一个更接近原始 Pong 实际算法的弹跳算法?

提示:在 Pong 中,球的弹跳不遵循正常的物理定律。相反,如果球击中球拍的精确中心,无论其入射角度如何,它都会直接弹回。否则,球与球拍碰撞的位置越高,其向上弹跳的角度就越陡峭。同样,球与球拍碰撞的位置越低,其向下弹跳的角度就越陡峭)

所有获奖者

获奖者

Waste Wise

废物智者

获奖者

PlasticPunk

塑料朋克

获奖者

Gomiland

高米兰

获奖者

Craftown

工艺小镇

获奖者

Ocean Rangers

海洋游侠

获奖者 & Google 钱包 - 最佳集成 - 第一名

Better World

更美好的世界

获奖者 & Google 钱包 - 最佳日语集成 - 第二名

Last Bottle

最后一瓶

社区选择 & Google 钱包 - 最佳集成 - 第二名

Recyclo

回收者

Google 钱包 - 最佳集成 - 第三名

Urban Eco Adventures

城市生态冒险

Google 钱包 - 最佳日语集成 - 第一名

Turtle escape

海龟逃生

Google 钱包 - 最佳日语集成 - 第三名

Ocean Cleanup

海洋清洁

社区选择奖

One Click, One World

一键,一世界

社区选择奖

Ofeka Earth

奥菲卡地球

社区选择奖

Green Capitalist

绿色资本家

社区选择奖

ECO-G

ECO-G

演示视频和教育内容

Eco Toss

生态投掷