如何用bat做一个游戏
A. 做一个BAT游戏试用文件
@echo off
setlocal enabledelayedexpansion
for /l %%i in (1001,1,1005) do (
set a=%%i
if exit !a:~1,3!.txt call yunxing !a:~1,3!
)
echo 对不起,你的使用次数已到!
pause
exit
:yunxing
cls
echo 是否运行游戏? (Y/N)
set select=
set /p select=
if "!select!"=="" call yunxing %1
if "!select:~0,1!"=="y" start "" "游戏程序.exe" && del %1.txt
if "!select:~0,1!"=="Y" start "" "游戏程序.exe" && del %1.txt
echo 结束程序。
ping -n 3 127.1 1>nul 2>nul
exit
B. 如何使用BAT文件在DOSBOX中自动运行游戏
很简单,配置个游戏对应的conf,bat调一下就好了
dosbox -conf xxx.conf
C. 如何用bat编程实现以下功能
可以
游戏目录 c:\mygame
游戏程序名 fire.exe
假设你的游戏要删的文件为 c:\mygame\log.txt
以后运行这个批处理,自动处理文件和调用游戏。批处理如下:
@echo off
c:
cd c:\mygame
del /q /f c:\mygame\log.txt
start c:\mygame\fire.exe
exit
D. 【十三】如何在Batocera中运行DOS游戏
如何在Batocera中运行DOS游戏
以下是游戏Alley Cat的一个简单示例:
首先为您的游戏创建一个名为的文件夹AlleyCat.pc,前面的文件夹名称的第一部分 必须等于或少于8个字符并避免使用特殊字符。
将游戏的所有文件复制到此文件夹。
在其中创建一个dosbox.bat文件并编辑它用来调用游戏的可执行文件
例如/media/ share/roms/dos/AlleyCat.pc下的执行文件是CAT.EXE
那我们编辑dosbox.bat文件,里面写上对应执行文件名字CAT.EXE
编辑完毕后,重新启动或刷新游戏列表以查看游戏
要退出模拟器,请使用键盘输入ctrl + F9
E. 我想制作一个.bat游戏关闭程序,知道了关闭代码,如何加一个按键触发代码
需要用到第三方工具Ckey.execkey0118if%errorlevel%==1taskkill-imbf3.exe-f把Ckey.exe放在这个.bat旁边即可。Ckey.exe下载地址:
F. 我写了一个bat文件,用来启动游戏
要用英文引号
@echo off
start "E:\game\Plants vs. Zombies\PlantsVsZombies.exe"
exit
G. 用bat模式能让一个游戏开机就运行吗能的话要怎么做
直接给游戏图标建立一个快捷方式。然后把快捷方式直接添加到启动项里。然后就可以开机自动进入游戏。
H. 关于bat,用于做自制游戏补丁方法
x /y c:\123.txt d:\
复制过去,x命令带上/y即可自动覆盖
I. 怎么做一个BAT命令,点他就可登陆网游,连账号和密码都自动填上,直接进游戏,或者别的命令,求助
那目前都不行滴!!!!!
J. 用BAT文件怎么写才能让游戏自动添加注册表并正常游戏(不修改客户机的情况下)
改成这样就好了。
@echo off @的意思是这句也不显示。
y| E:\劲舞团\1.reg
y| E:\劲舞团\patcher.exe 相当于按Y
你试试吧
----------------------------
以下是详细说明。
常用命令
echo、@、call、pause、rem(小技巧:用::代替rem)是批处理文件最常用的几个命令,我们就从他们开始学起。
==== 注 ===========
首先, @ 不是一个命令, 而是DOS 批处理的一个特殊标记符, 仅用于屏蔽命令行回显. 下面是DOS命令行或批处理中可能会见到的一些特殊标记符:
CR(0D) 命令行结束符
Escape(1B) ANSI转义字符引导符
Space(20) 常用的参数界定符
Tab(09) ; = 不常用的参数界定符
+ COPY命令文件连接符
* ? 文件通配符
"" 字符串界定符
| 命令管道符
< > >> 文件重定向符
@ 命令行回显屏蔽符
/ 参数开关引导符
: 批处理标签引导符
% 批处理变量引导符
其次, :: 确实可以起到rem 的注释作用, 而且更简洁有效; 但有两点需要注意:
第一, 除了 :: 之外, 任何以 :开头的字符行, 在批处理中都被视作标号, 而直接忽略其后的所有内容, 只是为了与正常的标号相区别, 建议使用 goto 所无法识别的标号, 即在 :后紧跟一个非字母数字的一个特殊符号.
第二, 与rem 不同的是, ::后的字符行在执行时不会回显, 无论是否用echo on打开命令行回显状态, 因为命令解释器不认为他是一个有效的命令行, 就此点来看, rem 在某些场合下将比 :: 更为适用; 另外, rem 可以用于 config.sys 文件中.
=====================
echo 表示显示此命令后的字符
echo off 表示在此语句后所有运行的命令都不显示命令行本身
@与echo off相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能影响当前行)。
call 调用另一个批处理文件(如果不用call而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令)。
pause 运行此句会暂停批处理的执行并在屏幕上显示Press any key to continue...的提示,等待用户按任意键后继续
rem 表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考用的(相当于程序中的注释)。
==== 注 =====
此处的描述较为混乱, 不如直接引用个命令的命令行帮助更为条理
-------------------------
ECHO
当程序运行时,显示或隐藏批处理程序中的正文。也可用于允许或禁止命令的回显。
在运行批处理程序时,MS-DOS一般在屏幕上显示(回显)批处理程序中的命令。
使用ECHO命令可关闭此功能。
语法
ECHO [ON|OFF]
若要用echo命令显示一条命令,可用下述语法:
echo [message]
参数
ON|OFF
指定是否允许命令的回显。若要显示当前的ECHO的设置,可使用不带参数的ECHO
命令。
message
指定让MS-DOS在屏幕上显示的正文。
-------------------
CALL
从一个批处理程序中调用另一个批处理程序,而不会引起第一个批处理的中止。
语法
CALL [drive:][path]filename [batch-parameters]
参数
[drive:][path]filename
指定要调用的批处理程序的名字及其存放处。文件名必须用.BAT作扩展名。
batch-parameters
指定批处理程序所需的命令行信息。
-------------------------------
PAUSE
暂停批处理程序的执行并显示一条消息,提示用户按任意键继续执行。只能在批处
理程序中使用该命令。
语法
PAUSE
REM
在批处理文件或CONFIG.SYS中加入注解。也可用REM命令来屏蔽命令(在CONFIG.SYS
中也可以用分号 ; 代替REM命令,但在批处理文件中则不能替代)。
语法
REM [string]
参数
string
指定要屏蔽的命令或要包含的注解。
=======================
例1:用edit编辑a.bat文件,输入下列内容后存盘为c:\a.bat,执行该批处理文件后可实现:将根目录中所有文件写入 a.txt中,启动UCDOS,进入WPS等功能。
批处理文件的内容为: 命令注释:
@echo off 不显示后续命令行及当前命令行
dir c:\*.* >a.txt 将c盘文件列表写入a.txt
call c:\ucdos\ucdos.bat 调用ucdos
echo 你好 显示"你好"
pause 暂停,等待按键继续
rem 准备运行wps 注释:准备运行wps
cd ucdos 进入ucdos目录
wps 运行wps
批处理文件的参数
批处理文件还可以像C语言的函数一样使用参数(相当于DOS命令的命令行参数),这需要用到一个参数表示符"%"。
%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。
例2:C:根目录下有一批处理文件名为f.bat,内容为:
@echo off
format %1
如果执行C:\>f a:
那么在执行f.bat时,%1就表示a:,这样format %1就相当于format a:,于是上面的命令运行时实际执行的是format a:
例3:C:根目录下一批处理文件名为t.bat,内容为:
@echo off
type %1
type %2
那么运行C:\>t a.txt b.txt
%1 : 表示a.txt
%2 : 表示b.txt
于是上面的命令将顺序地显示a.txt和b.txt文件的内容。
==== 注 ===============
参数在批处理中也作为变量处理, 所以同样使用百分号作为引导符, 其后跟0-9中的一个数字构成参数引用符. 引用符和参数之间 (例如上文中的 %1 与 a: ) 的关系类似于变量指针与变量值的关系. 当我们要引用第十一个或更多个参数时, 就必须移动DOS 的参数起始指针. shift 命令正充当了这个移动指针的角色, 它将参数的起始指针移动到下一个参数, 类似C 语言中的指针操作. 图示如下:
初始状态, cmd 为命令名, 可以用 %0 引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9
经过1次shift后, cmd 将无法被引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9
经过2次shift后, arg1也被废弃, %9指向为空, 没有引用意义
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8
遗憾的是, win9x 和DOS下均不支持 shift 的逆操作. 只有在 nt 内核命令行环境下, shift 才支持 /n 参数, 可以以第一参数为基准返复移动起始指针.
=================