百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

不止有Excel电竞赛,还有“Excel平台独占游戏”

csdh11 2025-02-13 11:42 35 浏览



谁还没个独占呢?



前段时间,微软Excel官方发布了新一届金融建模世界杯的比赛预告。尤其令人在意的是,他们特意宣称这次比赛将是“一场电竞赛事”。


金融建模世界杯(FMWC)是一个金融建模界的新兴赛事,参赛者都是行业顶尖的金融建模师,通过Excel比拼建模实力来决出高下。在过去的几个月中,这个比赛已经借鉴了许多竞技体育的框架:严格划分的赛季、积分制的世界排名以及分门别类的赛事体系。不过正式打出“电竞”的招牌,这还是第一次。




抱着门外汉看热闹的心情,··比赛当天我准时点开了直播链接的地址,想看看这场金融界的电竞赛事究竟能玩出怎样的花样。但比赛开始10分钟后,我就后悔了。


这场金融建模世界杯的比赛,比我想象得还要更无趣。八位受邀参赛的建模师,在比赛中有40分钟来解决赛事方提供的案例题目,最后分数最高者获得冠军。


原以为这场8人混战的比赛能有一些更具观赏性的形式,来调剂沉闷的比赛本身,但很可惜并没有。组织者最后采用的方式,最公平、最能体现选手实力,但同时也最无聊。






直播间里和我一样冲着“电竞”名号去看的人不少,不时就有人询问“竞技的部分呢?”,但回答他们的大都只是抖机灵的话:“(e-Sports指的是)eXCEL-Sports”。




这场羊头招牌狗肉摊上的“电竞赛事”,似乎用事实给我们展示了Excel这款软件和电竞、游戏间的遥远距离,但事实真是这样吗?



1



在我们普通人眼中,Excel这个微软Office全家桶中的一员,似乎就只是一个用来建表格的专职软件,功能垂直且单一。而在真正精通者的手中,要用它制作一款游戏其实并没有多少技术上的鸿沟——它就是隐藏在我们每一台PC上的“青春版”游戏引擎。


能成为游戏制作工具,Excel强大的图形处理能力功不可没。这一个个能随意调整的方格,天然就是一张像素画画布。


格子间出没的社畜们应该或多或少都和Excel缠斗过,或许无聊时会偶尔给格子填填色、画点什么写点什么。而对于更专业的像素画师来说,即使现在有越来越多更全面、更专业的像素画软件诞生,但Excel依然是一款好用的像素画工具,仍被他们中的许多人当作生产力工具在使用。




除了最直观的像素画之外,Excel还靠着“插入任意多边形”和“3D图形绘制”这两个强大的功能,同样具备了拓展其他绘图领域的潜力。


不管是日漫风格的立绘图,拟真风格的风景画,还是3D建模的真实系绘画,都在它的射程范围内。再加上对Flash动画的插入支持,一款游戏引擎的图形功能它也就被它掌握得七七八八了。




Excel的图形能力固然强大,而真正能让它与游戏引擎一比的,还是它背后对编程语言的支持。


VBA(Visual Basic for Applications)是Excel全面支持的一种编程语言,准确来说它是基于VB语言的宏语言,原本是微软开发用来实现办公自动化服务的。从名字中的“Visual”也能看出,可视化是这个语言的重要特点,它诞生的一大标准就是“简单”,不用太多编程基础就能轻松上手。


因此可能你并没有在“谁是天下第一语言”的争论中听过它的名字,但使用它的人群其实并不算少。远远比不上屠龙之技,但酷暑时节学来打打蚊子绝对够用。


可以直接在Excel中处理代码,逻辑、数据和图形就能轻松绑定到一起,这些图形变成游戏的最后一步也就得以实现。简单地使用VBA和图形功能,已经足够制作出许多游戏的雏形。而对于更精通的高手来说,通过插件实现更多功能,让它变成一个功能齐全的游戏引擎也完全能做到。




Excel拥有如此接近游戏引擎的功能,发现的人自然不会少,好在其中除了有我这样的空想家外还有不少实践者,才诞生了众多“Excel平台独占游戏”。



2



说起“Excel平台独占游戏”,可能许多人早就听说过其中一款。这个游戏不是由用户开发,而是一个能称为“Excel2000的护航大作”的彩蛋——一个通过“作弊秘籍”呼出的Excel赛车游戏。


在Excel2000中,通过把新建表格另存发布为Web页、勾选交互选项并保存、通过IE浏览器打开文件并点击第2000行第WC列的那一格,最后同时按住Ctrl、Alt、Shift按钮再点击Office图标,就能成功呼出游戏。



在短暂的全屏切换后,进入到这个彩蛋游戏中的玩家可以在一条公路上漫无目的地驾驶汽车,能撞击其他汽车也能放出油渍来干扰它们。如果在游戏中留心观察,还会发现公路上写着的单词是一个个名字,他们正是这一版Excel的幕后开发者。


在此前发布的Excel95和Excel97中,也分别有两个藏有开发者名单的彩蛋,而直到这一作才第一次以游戏的形式展现出来,就此成为了许多人小时候计算机课上的回忆。




这些用游戏来刻下自己姓名的开发者,或许自己也不曾想到,他们这款办公软件的游戏之路并没有就此结束,反而在之后成为了许多开发者的一大选择,甚至成为了诸多经典作品的“移植平台”。


如果没有游戏源代码,那么复刻一款游戏的难度就取决于它的规则复杂程度。诸如《Monopoly》《数独》等逻辑性强表现力弱的游戏,自然成了Excel游戏的移植首选。同时因为Excel办公软件身份的隐蔽性,摸鱼党想要划水的需求也成为了开发的动力,让这类游戏在Excel上的版本格外多。


许多经典主机老游戏的逻辑虽然更复杂,但在情怀的推动下这点难度自然算不了什么,也让它们也成为了Excel平台移植的常客。于是《塞尔达传说》《超级马力欧兄弟2》《文明》《勇者斗恶龙》等游戏纷纷登陆,都有着完成度很高的Excel版本。




既然这么多成熟的游戏都在Excel上证明了它作为引擎的可能性,怀着原创热情的开发者自然也不会缺席,《Arena.Xlsm》就是其中知名度最高的作品之一。从它标题的后缀就能看出,这是一款专为Excel打造的独立游戏。



这款游戏是一个俯视角的传统RPG,画面比较粗糙,但玩法设计却很细致。根据作者主页的介绍,游戏有着超过2000种不同AI的敌人、31种法术、39种道具模型、8场不同的BOSS战和4个不同的故事结局,听起来已经相当丰富。更让人没想到的是,游戏内还有积分排行榜功能和100个不同的成就,而这些全都是在Excel中实现的。



《Arena.Xlsm》最初开发于2012年,在这么多年后的WIN10系统里,依然能完美运行它。只要正常安装了Excel的宏功能,就能在Excel 2007以上的版本上开始游戏。


游戏实机上手非常流畅,只是偶尔会有“卡顿”这个Excel游戏共有的通病。角色的加点升级、丰富的道具和技能、以及时不时插入的剧情介绍,都让游戏具有不低的可玩性。


如果它简陋的符号化美术风格能获得升级,相信能感受到它独有魅力的人会更多,但可惜这款游戏的开发者Cary Walkin并不擅长美术,因此他把游戏系统完善升级到1.3版本后就停止了更新。




Cary Walkin是一名加拿大的注册会计师,开发这款游戏时他正在攻读自己的MBA学位。因为自己是一名《EVE》玩家,游戏时也经常会使用Excel来辅助游戏,所以他在一门相关课程的练习中突然想到:与其建立乏味的期权模型,不如用Excel来制作一款复杂的游戏,也能达到同样的练习效果。


就这样,《Arena.Xlsm》诞生了。据Cary Walkin的个人主页统计,至今已有超过60万人次下载游玩过这个游戏。


“我对电子游戏有着热情,任何游戏相关的东西都比税务要好”,Cary Walkin曾在采访中作为游戏开发者这样说。



3



距离Cary Walkin说出这句话已经过去了8年,如今“对游戏更有热情”的他,还是选择成为了一名金融从业者。


完成《Arena.Xlsm》的第二年,他又在Excel上制作了一款扮演《糖果传奇》开发商的模拟经营游戏,游戏反响不错但却没能再获得前作那么高的关注度,他的游戏从业经历也就此停在了这一年。




用Excel开发游戏,终究是一件吃力不讨好的事。国内曾有一款《Excel三国杀》风靡一时,不过在获得足够知名度后,开发者们还是选择了离开这个平台,尽管它们此后的游戏标题中仍然含有“Excel”字样。


毕竟Excel不是专业的游戏开发引擎,办公软件的框架限制给开发和游玩都带来了很多不便。选择更好的平台、开发更好的游戏,这本就是无可厚非的事。但就算这样,也依然有人没做出这个选择。


在B站有一个ID为“hongyunggg”的UP主,从2018年开始就在尝试用Excel制作《王者荣耀》。他的视频点击量从没突破过100,游戏做得也远不如上面提到的那些高手作品。


不过从2018年12月29日的第一个视频开始,他就在周期性地不断更新他的游戏版本视频,很明显能感受到他游戏质量的提升,不管是图形画面,角色技能、AI、界面,还是音效动效等细枝末节处。


直到今年5月底,他依然在视频下方回复着观众的相关技术问题,相信现在他还在继续着这个项目,即使这份努力并没有得到太多人的认可。




跟hongyunggg一样的无名作者我相信还有很多,他们能一直坚持,追求的应该不只有那份他人的认可——爱好从来不是为了取悦他人。别人眼中的“没意义”能照亮自己的一方小世界就够了,这也是有这么多“Excel独占游戏”诞生的原因。


成不了游戏引擎的Excel背后,应该也会一直站有这群,不一定能成功的Excel游戏制作者。



参考资料:

https://carywalkin.ca/

https://en.wikipedia.org/wiki/Visual_Basic

https://www.wikihow.com/Play-a-Car-Race-in-Excel-2000

相关推荐

探索Java项目中日志系统最佳实践:从入门到精通

探索Java项目中日志系统最佳实践:从入门到精通在现代软件开发中,日志系统如同一位默默无闻却至关重要的管家,它记录了程序运行中的各种事件,为我们排查问题、监控性能和优化系统提供了宝贵的依据。在Java...

用了这么多年的java日志框架,你真的弄懂了吗?

在项目开发过程中,有一个必不可少的环节就是记录日志,相信只要是个程序员都用过,可是咱们自问下,用了这么多年的日志框架,你确定自己真弄懂了日志框架的来龙去脉嘛?下面笔者就详细聊聊java中常用日志框架的...

物理老师教你学Java语言(中篇)(物理专业学编程)

第四章物质的基本结构——类与对象...

一文搞定!Spring Boot3 定时任务操作全攻略

各位互联网大厂的后端开发小伙伴们,在使用SpringBoot3开发项目时,你是否遇到过定时任务实现的难题呢?比如任务调度时间不准确,代码报错却找不到方向,是不是特别头疼?如今,随着互联网业务规模...

你还不懂java的日志系统吗 ?(java的日志类)

一、背景在java的开发中,使用最多也绕不过去的一个话题就是日志,在程序中除了业务代码外,使用最多的就是打印日志。经常听到的这样一句话就是“打个日志调试下”,没错在日常的开发、调试过程中打印日志是常干...

谈谈枚举的新用法--java(java枚举的作用与好处)

问题的由来前段时间改游戏buff功能,干了一件愚蠢的事情,那就是把枚举和运算集合在一起,然后运行一段时间后buff就出现各种问题,我当时懵逼了!事情是这样的,做过游戏的都知道,buff,需要分类型,且...

你还不懂java的日志系统吗(javaw 日志)

一、背景在java的开发中,使用最多也绕不过去的一个话题就是日志,在程序中除了业务代码外,使用最多的就是打印日志。经常听到的这样一句话就是“打个日志调试下”,没错在日常的开发、调试过程中打印日志是常干...

Java 8之后的那些新特性(三):Java System Logger

去年12月份log4j日志框架的一个漏洞,给Java整个行业造成了非常大的影响。这个事情也顺带把log4j这个日志框架推到了争议的最前线。在Java领域,log4j可能相对比较流行。而在log4j之外...

Java开发中的日志管理:让程序“开口说话”

Java开发中的日志管理:让程序“开口说话”日志是程序员的朋友,也是程序的“嘴巴”。它能让程序在运行过程中“开口说话”,告诉我们它的状态、行为以及遇到的问题。在Java开发中,良好的日志管理不仅能帮助...

吊打面试官(十二)--Java语言中ArrayList类一文全掌握

导读...

OS X 效率启动器 Alfred 详解与使用技巧

问:为什么要在Mac上使用效率启动器类应用?答:在非特殊专业用户的环境下,(每天)用户一般可以在系统中进行上百次操作,可以是点击,也可以是拖拽,但这些只是过程,而我们的真正目的是想获得结果,也就是...

Java中 高级的异常处理(java中异常处理的两种方式)

介绍异常处理是软件开发的一个关键方面,尤其是在Java中,这种语言以其稳健性和平台独立性而闻名。正确的异常处理不仅可以防止应用程序崩溃,还有助于调试并向用户提供有意义的反馈。...

【性能调优】全方位教你定位慢SQL,方法介绍下!

1.使用数据库自带工具...

全面了解mysql锁机制(InnoDB)与问题排查

MySQL/InnoDB的加锁,一直是一个常见的话题。例如,数据库如果有高并发请求,如何保证数据完整性?产生死锁问题如何排查并解决?下面是不同锁等级的区别表级锁:开销小,加锁快;不会出现死锁;锁定粒度...

看懂这篇文章,你就懂了数据库死锁产生的场景和解决方法

一、什么是死锁加锁(Locking)是数据库在并发访问时保证数据一致性和完整性的主要机制。任何事务都需要获得相应对象上的锁才能访问数据,读取数据的事务通常只需要获得读锁(共享锁),修改数据的事务需要获...