基于AI对话生成剧情AVG游戏
游戏开发这个领域,一直有较高的学习门槛。作为一个非专业的游戏爱好者,如果想要开发游戏,往往受制于游戏引擎的专业程度,难以完成复杂的游戏项目。
AI IDE的诞生,提供了另外的一种思路,即通过AI 生成项目及代码、资源的方式,仅通过对话来制作游戏。今天、我们就来基于国产的AI IDE :InsCode AI IDE 开发一个简单的AVG游戏,抛砖引玉,希望对有游戏制作兴趣的小伙伴有所帮助。
首先呢,我们需要先到官网 下载安装 InsCode AI IDE ,安装好之后,我们点击:“创建Python工程”。

在弹出的对话框里,输入工程名称:“AVGGame",并选择项目所在地址,下面是Python的解释器选项,一般来说,如果有特定的Python解释器版本要求,可以创建一个虚拟的环境,如果没有要求,可以选择使用原有配置的解释器,也就是电脑上现有的Python版本,这样也省去了每次做游戏都要安装缺失的模块。
因为AI 能够生成项目需要的文件,所以下部的“创建main.py示例脚本”也可以取消勾选。

进入到空项目的开发界面,点击右侧栏位的的“AI”图标,这时会展开AI对话框,对于我们不想写代码的开发者来说,只需要在这个对话框里跟AI对话,就能够开发出游戏了。

AI对话有两种模式:改写和问答,改写模式是直接对工程代码进行改写,问答主要用于回答问题。默认情况下,"改写"选项是选中的,这时我们输入需求就可以生成项目需要的代码和资源文件了。
下面我们输入:“开发一个AVG游戏”,然后回车。没错,就这么几个字,让AI自由发挥去吧。

回车后,很快可以看到AI的输出,包括一些代码和图片文件,并配有文字说明:
- 图片资源:首先需要创建游戏所需的图片资源文件,包括背景图片和角色图片。将这些图片放在
assets目录中。 - 主文件:创建
main.py文件,包含项目的初始化和启动逻辑。 - 游戏逻辑:创建
game.py文件,包含游戏的主要逻辑,如场景切换和角色对话。 - 对话逻辑:创建
dialogue.py文件,处理游戏中角色的对话逻辑。 - 配置文件:修改
.arts/launch.json文件,配置项目的启动参数。
工作完成后,会在下方显示“全部拒绝”和“全部接受”。一般来说,只要能走到这一步,我们看看说明文字基本符合要求,就可以点击“全部接受”,采纳生成的结果。

采纳结果之后,可以在左边的文件资源树下看到所有生成的资源文件和代码,我们点开其中一张背景图,可以看到AI在这里生成了一张背景图和一张主角立绘,效果还是不错的,关键还是无版权限制和免费使用。

第一次生成后,这里我们点击左上角的”运行“按钮,可以看到运行起来的效果。

哈哈,这只是一个体验,实际上,我们想要通过对话让AI生成较好的游戏,我们还需要多做一些工具,比如我们要显示中文,就需要有一个中文字体文件:在这里,我们使用阿里巴巴的普惠体OTF。

然后多给一些明确的说明,在InsCode AI IDE的对话框中输入:"修改所有代码,使用assets中的otf文件来显示对白,并按下列剧情生成中文的对白内容:一个女生去森林里,遇到一个野兽,被吓昏迷,醒来后发现被小仙子救了。",输入完成后回车,这时AI就会基于指定的剧本对项目进行修改,待这个工作完成后,我们再次点击“全部接受”。

这样一个简单的AVG游戏就生成出来了,可以看到它还为我们增加了一些NPC图片,当游戏运行时按下空格,可以看到文字内容也在跟着剧情变化。


至于后面的剧情、、、就要靠咱们的奇思妙想了。
相关文章:
基于AI对话生成剧情AVG游戏
游戏开发这个领域,一直有较高的学习门槛。作为一个非专业的游戏爱好者,如果想要开发游戏,往往受制于游戏引擎的专业程度,难以完成复杂的游戏项目。 AI IDE的诞生,提供了另外的一种思路,即通过AI 生成项目及…...
[flutter] 安卓编译配置
Maven 镜像 android/build.gradle buildscript {ext.kotlin_version 1.7.10repositories {google() // mavenCentral()maven { url https://maven.aliyun.com/repository/google }maven { url https://maven.aliyun.com/repository/jcenter }maven { url https://mav…...
使用ENSP实现NAT(2)
一、NAT的类型 二、静态NAT 1.项目拓扑 2.项目实现 路由器AR1配置: 进入系统视图 sys将路由器命名为AR1 sysname AR1关闭信息中心 undo info-center enable 进入g0/0/0接口 int g0/0/0将g0/0/0接口IP地址配置为192.168.10.254/24 ip address 192.168.10.254 24进…...
解决小程序中ios可以正常滚动,而Android失效问题
解决小程序中 iOS 可以正常滚动,而 Android 失效问题 在开发小程序时,我们经常会遇到一些平台兼容性问题。最近,我在开发一个小程序时遇到了一个问题:在 iOS 设备上可以正常滚动加载更多数据,而在 Android 设备上却无…...
docker安装部署
1.Docker简介 Docker是一个开源的容器引擎,开发者可以打包应用以及相关依赖包到一个可移植的容器中,发布到任何流行的Linux机器上。容器是完全使用沙箱机制,相互之间不会有任何接口,而且更轻量级。 1.1 概念 docker会自动搜索并下载应用镜像,镜像不仅包含应用本身,还包含…...
百度23届秋招研发岗A卷
百度23届秋招研发岗A卷 2024/12/16 1.下面关于 SparkSQL 中 Catalyst 优化器的说法正确的是(ABC) A.Catalyst 优化器利用高级编程语言功能(例如 Scala 的模式匹配)来构建可扩展的查询优化器 B.Catalyst 包含树和操作树的规则集…...
metrics.roc_curve函数介绍
目录 函数介绍使用方法 函数介绍 metrics.roc_curve 是 scikit-learn 中的一个函数,用于计算接收者操作特征曲线(Receiver Operating Characteristic, ROC)曲线的参数。 具体来说,metrics.roc_curve 函数接受真实的标签和预测标…...
stm32进硬件错误怎么回事
STM32进入硬件错误状态,通常是由一些特定的编程或硬件问题引起的。以下是一些可能的原因及相应的解决方法: 可能的原因 数组越界操作:在编程过程中,如果数组访问超出了其定义的边界,可能会导致内存访问错误࿰…...
【网络安全】掌握 Active Directory 攻防审计实操知识点
掌握 Active Directory 攻防审计实操知识点 在深入了解 Active Directory 之前,我们需要先掌握网络基础设施的映射和资源访问管理方式。这一切通常通过目录服务 (Directory Services) 实现,目录服务在组织内提供网络资源的映射和访问。轻量目录访问协议…...
vscode不同项目使用不同插件
转载请注明出处:小帆的帆的博客 在使用vscode开发不同项目时可能会用到不同的插件。手动管理不够优雅,本文介绍使用Profiles的方式的来管理不同项目的插件。 手动管理不同项目的插件 本来vscode安装了有三个插件 这时需要新建一个项目,新…...
oracle存储过程中遇到的各种问题及解决方案集锦
oracle存储过程中遇到的各种问题及解决方案集锦 1、在oracle数据库中,为了存储过程和数据表的关键字不冲突,数据表的别名不能加AS: select a.appname from appinfo a; --正确 select a.appname from appinfo as a; --错误2、在存储过程中&am…...
PHP+MySQL 学生信息管理系统
目录 MySQL建表指令 主页面展示 主页面源代码如下 增:添加学生信息 添加html如下 html:主要用于显示网页内容 成功添加后回显 编辑 增加php如下 删:删除学生信息 删除html如下 成功删除后回显 删除php如下 改:修改学生信息 修改html如下 修改php如下 查:查…...
数据结构-栈与队列
栈:一对一的线性储存结构,先进后出,只允许从一端进行数据的插入与删除的线性数据结构。用于,判断成对出现的东西,如判断回文字符串或者回文数,四则混合运算求值等。 顺序栈(数组)&a…...
c#上班,上学,交通方式接口
using System;namespace INTERFACE {abstract class Person{public string Name { get; set; }public int Age { get; set; }public virtual void ShowInfo(){Console.WriteLine($"Name: {Name}, Age: {Age}");}}// 接口 IWorkinterface IWork{void GotoCompany();}/…...
吴恩达官宣开源,yyds!
最近,GitHub 上又一个开源项目火成了一匹黑马。 开源才短短十几天,star 标星就从 0 飙升到了 8000,可以说是最近看到的涨 star 极其生猛的开源项目之一了。 出于好奇,我也点进去看了看。 好家伙,一看这昵称和头像&am…...
从0到1实现vue3+vite++elementuiPlus+ts的后台管理系统(一)
前言:从这篇文章开始实现vue3vite的后台管理系统,记录下自己搭建后台系统图的过程。 这篇文章完成项目的初始化和基本配置,这一步可以直接跟着vue3官网进行。整个系列只有前端部分,不涉及后端。 vue3官网:https://cn.…...
SpringBoot+Vue3实现阿里云视频点播 实现教育网站 在上面上传对应的视频,用户开会员以后才能查看视频
要使用阿里云视频点播(VOD)实现一个教育网站,其中用户需要成为会员后才能查看视频,你可以按照以下步骤进行开发和配置。这个过程包括上传视频、设置权限控制、构建前端播放页面以及确保只有付费会员可以访问视频内容。 1. 视频上…...
wireshark捕获过滤和操作方式详解
大家觉得有用记得关注和点赞,谢谢。 一、Wireshark介绍 Wireshark(前身是Ethereal)是一个网络封包分析软件,目前是全球使用最广泛的开源抓包软件,别名小鲨鱼或者鲨鱼鳍。 网络封包分析软件的功能是截取网卡进出的网络…...
预处理器Stylus的介绍及使用,并同Less、Sass进行对比(简单介绍)
目录 一、安装与配置 安装Node.js: 安装Stylus: 配置Webpack: 二、编写Stylus代码 定义变量: 使用变量: 嵌套语法: 混合(Mixins): 函数: 6.关键字参…...
MySql-9.1.0安装详细教程(保姆级)
目录 MySQL介绍: 一、下载 Mysql 安装文件 二、Mysql 安装教程 1.下载完成后进入解压,注意不要放在一个非中文路径下的文件夹下面否则后面会报错。我在此处解压放在了D盘MySQL目录下。 2.解压后的文件应该没有.ini文件。因此,需要创建in…...
内存分配函数malloc kmalloc vmalloc
内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...
51c自动驾驶~合集58
我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留,CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制(CCA-Attention),…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
关于nvm与node.js
1 安装nvm 安装过程中手动修改 nvm的安装路径, 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解,但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后,通常在该文件中会出现以下配置&…...
【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
如何为服务器生成TLS证书
TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...
安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)
船舶制造装配管理现状:装配工作依赖人工经验,装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书,但在实际执行中,工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...
基于Java+MySQL实现(GUI)客户管理系统
客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息,对客户进行统一管理,可以把所有客户信息录入系统,进行维护和统计功能。可通过文件的方式保存相关录入数据,对…...
处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...
【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看
文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...
