收起左侧

20G Flash 游戏,我给它们找了个能搜的家

2
回复
42
查看
[ 复制链接 ]

1

主题

2

回帖

0

牛值

江湖小虾

## 起因

前阵子网上看到一篇帖子,作者做了个 Flash 游戏站,还分享了 20 多 G 的游戏资源(百度网盘链接)。

我对 Flash 游戏谈不上多狂热,但好奇心驱使下还是把资源下下来了。按教程拉了作者的 Docker 镜像,确实能用。

问题出在**游戏太多了**——那个项目没有搜索功能,几千个游戏全靠下拉滚动条翻。想找某个特定游戏,纯靠运气。

我试了好几次,手指滚累了也没找到想玩的那个。

---

## 于是自己写一个

**做了一个能搜的 Flash 游戏站。**

我本身是写 Java 后端的,前端不太熟练。但最近用 Codebuddy 写代码挺方便的,对话式开发,说需求它出代码。花了两天,凑合搞定了。

**核心就解决一个问题:搜索。**

其他顺手加的功能:

- 自动扫描:容器启动后自动扫描映射目录下的 SWF 文件,入库、分类,不用手动操作
- 首次安装引导:第一次打开网页设置管理员账号密码
- 前端锁:这个功能是我自己需要的——我把服务部署在家里 NAS 上,开了公网访问方便自己和朋友玩。但不想被爬虫或者别人扫到网址直接进来,所以加了密码锁,开启后访客必须输入密码才能看到内容
- 管理后台:改分类、重新扫描、编辑标签

---

## 首次启动

镜像拉起来之后浏览器打开对应端口,会自动跳到初始化页面。设好管理员账号和密码就行。

> ![首次登录设置管理员](2.安装后第一次登入可以设置管理员账号.png)

同时这里可以决定要不要开"前端锁"——如果你也是部署在 NAS 上并且有公网访问需求,建议开着。

设完之后就能用了。游戏文件放进去会被自动扫描入库。

---

## 实际效果

我放了那篇帖子作者分享的 20G 资源,一共扫描进来了 **16882 个游戏**,自动分成了 16 个类别。

> ![管理后台统计](3.游戏数量展示.png)

首页长这样,支持按名字搜索、按分类筛选、按文件大小排序:

> ![首页游戏列表](4.首页展示.png)

16882 个游戏,以前得滚几百页才能看完的量,现在搜一下就出来了。

---

## 部署方式

我在 1Panel 里配的容器编排,挂载两个目录:一个放 SWF 游戏文件,一个存 SQLite 数据库。端口映射看你自己需要,我这里用的是 8035。

> ![在 1Panel 中编排容器](1.容器编排我在1panel中演示.png)

Docker Compose 参考:

`yaml
services:
  flash-games:
    image: lookfuna666/flash-games:latest
    container_name: flash-games
    ports:
      - "8035:3000"
    volumes:
      - /你的路径/game:/app/game
      - /你的路径/data:/app/data
    restart: unless-stopped
# 创建目录,放入 SWF 文件
mkdir -p game data
cp /你下载的游戏/*.swf ./game/

# 启动
docker compose up -d

游戏资源来源说明:我使用的 SWF 文件来自之前提到的那篇文章作者分享的百度网盘资源包,具体链接可以在原文中找到。


技术栈简单说下

部分 用了什么
前端 Vue 3 + Vite + Element Plus
Flash 引擎 Ruffle(自托管 WASM)
后端 Express.js
数据库 SQLite(sql.js,纯 WASM 无需编译)
部署 Docker 单容器

没什么花哨的东西,就是实用。


相关链接

如果觉得有用,去 GitHub 点个 Star 就是对独立开发者最好的鼓励。


收藏
送赞
分享

1

主题

2

回帖

0

牛值

江湖小虾

4 小时前 楼主 显示全部楼层

不是 为什么我点预览就发布了?

1

主题

2

回帖

0

牛值

江湖小虾

4 小时前 楼主 显示全部楼层

审核能帮我删了我重新编辑吗

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则