|
|
|
游戏中要打开BF2的控制台,只要按'~'键就可以了(就是按TAB上面那个键)。- l: i* d6 [* q5 r4 y! E, Y
打开后,要看命令的分类,可以按TAB两次。要看特别详细的子分类,进入该命令还是按两次TAB。例如进入renderer,然后按两次TAB,可以看到render的子分类命令。! y; r" a# O5 O2 ]9 p( v
下面是控制台命令的列表(不一定全):
& Y# o7 C- v0 |( A3 O4 [Renderer Commands3 v0 r) i, O" z8 S0 o' K6 q! F2 a* R9 N) o
renderer.drawHud [0,1] - 设置 (HUD)开或关.
% I2 H, r+ q; L6 C( w5 e8 Q) G$ `renderer.drawConsole [0,1] - 如果设置为0,在游戏中不能进入控制台.
$ i( A, B* F3 r! A8 h: A* Arenderer.drawFps [0,1] - 在左上角显示当前的帧频率(FPS、帧/每秒) .
( b F6 T. R: F8 j ]) yGame Commands
0 q9 I3 R2 w: x5 L! l5 `2 Rgame.sayAll [string] - 对所有人说话(是不是和J键功能一样啊?). h9 n8 H% s$ H P
game.sayTeam [number] [string] - 和队友说话(K键?)
0 I+ Q+ ~% a* X8 egame.lockFps [framerate] - 锁定帧频率到指定的数值
( m6 K, {- w0 i6 {6 [& x" zgame.allowToggleFullscreen [0,1] - 如果设置为1,可以允许在全屏模式和窗口模式之间切换。(如果这样,是不是就可以一边打游戏,一边QQ聊天呢?)
9 B- s5 c8 z/ C6 |% Q& T# lgame.toggleFullscreen - 在全屏模式和窗口模式直接切换(是不是和alt+enter的功能一样呢?)( G/ Q% ?8 o' l: R1 D3 a9 J1 {
Demo Commands$ U+ v6 s' O) } {
demo.recordDemo [demoname] - 开始记录当前游戏并保存为文件 demoname.bf2demo。目录在[游戏安装的驱动器 ]\Program Files\EA Games\Battlefield 2\mods\bf2\Demos directory
. }$ O/ ~/ o. A: U$ Ademo.stopRecording - 停止记录
" n- i6 a. M3 f" j0 ddemo.ShutdownDemo - 关闭记录
% J( _( t- e. W8 F4 e5 c U6 KLocalprofile Commands
* q% D* Q" F2 UlocalProfile.save -
% M; [ r l9 d: p |: @& P3 [+ R0 c) C# UlocalProfile.addDemoBookmark [ ] -( [7 | i, H* E' Y/ v
Globalsettings Commands
8 R6 o4 V: X, w* u" v% SSv Commands* Y6 a9 U* @/ F- ^( M
sv.allowNATNegotiation [0,1] -
+ _+ o! B" c8 s) ^$ Isv.interface -7 g3 a j2 T [0 Q" ^
sv.timeBeforeRestarting [0,1] -
' ^( N, N2 p" Q. |* e/ H$ B9 d6 `sv.autoBalanceTeam [0,1] -
; _3 S: N8 c& gsv.teamRatioPercent [0,1] -5 [! y6 c% |/ i. ?% t6 q
sv.autoRecord [0,1] - N+ l7 p1 f+ i; n/ l
sv.demoIndexURL [address] -
- i9 e1 u9 U) M( t& y; h! ]sv.demoDownloadURL [address] -
' x7 f! _% k! jsv.autoDemoHook -
' X1 {* I: V( { w# a0 ?sv.demoQuality -2 W# l, P4 V) B* |- T
sv.adminScript -
3 I6 U8 m- s' G0 U* Y1 K6 Usv.sponsorText -
0 t8 i0 @2 ~) v6 z( l. hsv.sponsorLogoURL [address] -" v7 _8 S8 ?3 c0 S7 Y; ?/ { N
sv.radioSpamInterval -
6 W, z( J, ?$ C7 s& W) asv.radioMaxSpamFlagCount -# f5 a0 D) U2 i" P3 m6 L, ]3 j8 z
sv.radioBlockedDurationTime [seconds] -
& A) B+ r6 N/ l! Hsv.useGlobalRank [0,1] -
5 a0 n$ Z; ]% k& Bsv.useGlobalUnlocks [0,1] -
: L) x! b; `" P1 b+ c# zGamelogic Commands
/ C: L& ], ? l7 s7 P6 b pgameLogic.togglePause - 暂停游戏.
' I1 a! [5 ?0 {' R" p$ ]Settingsmanager Commands
% u3 }0 @( I1 x+ W) }* a+ S下面这些命令比较专业,好像是调试程序的,最好别试了。
. Q9 [3 n0 f! q% B2 X4 B# v) dSettingsManager.stringSet -( k3 a, H, E& }# z
SettingsManager.boolSet -7 I4 B) c& ?9 w7 P: ^4 Z
SettingsManager.IntSet -" }& z$ Y" R& {4 h
SettingsManager.floatSet -
1 @( a& P9 s* l' D( ~9 bSettingsManager.u32Set -5 Y8 V2 n, ~5 ~9 I! G( I2 k& i4 k
SettingsManager.stringGet -
9 F; x3 c7 y5 Z3 WSettingsManager.boolGet -
" U- ?. o4 V! M; b6 i: MSettingsManager.intGet -
+ s# A$ |0 S$ M4 kSettingsManager.foatGet -
. T3 @' ?, q O: E( ], I+ rSettingsManager.U32Get -
o+ @/ G# ~0 v% wInputdevices Commands
9 q C4 F, S. U8 MControlmap Commands
! R. R% Q. Q# a5 M8 s. v7 HcontrolMap.deleteControlMap -3 t/ U4 W$ r2 g( F. F( ]
controlMap.dump -
) x" Y4 w( y4 t& \+ `controlMap.SetButtonFallTime -. n9 l. K+ A) V4 J4 S
controlMap.SetDoubleTapTime -
7 f" o3 B% Y5 Z1 ^- U# GcontrolMap.addAxisToAxisMapping [string] -1 I$ w+ L# }3 V/ Q7 r% C' e3 a9 m
controlMap.addButtonsToAxisMapping [string] -
) n) {" b, F3 bcontrolMap.addKeyAndButtonToAxisMapping [string] -! h% H/ o6 u1 l; U: E4 Y$ z# ?
controlMap.addKeysToAxisMapping [string] -" N4 t* {+ v+ N
controlMap.addButtonToTriggerMapping [string] -
9 \- w* N W4 I0 l3 J$ i, OcontrolMap.AddKeyToTriggerMapping [string] -+ y B) n1 V! K, H3 q5 V8 E
controlMap.addAxisToTriggerMapping -
3 _9 K J O4 N* t* v8 ^controlMap.InvertMouse [0,1] - 1为鼠标反向,0为正常
9 o( I. A" [# s5 o) ]7 @controlMap.mouseSensitivity [number] - 鼠标的灵敏度( d1 B' i& k1 F' H3 b. X2 v8 @" v
controlMap.keyboardSensitivity [number] -键盘的灵敏度
# C! k6 z5 t- V% [Maplist Commands t% v, N* a# v) ~1 G9 p/ [; x
下面这些命令提供给服务器的管理员来管理地图列表。: W* s; T& a: b6 ~$ F# U+ `/ v
These commands are used to manage lists of maps by server administrators.- A# i$ u* n" v) V0 Z& }. W
mapList.list - 列出地图的ID,地图名,游戏模式和玩家数量等等。1 k# \/ d5 H! V7 a; I8 U0 V
mapList.mapCount - 显示当前地图列表中的地图数量
/ [5 Y, u, c0 n6 JmapList.currentMap - 显示当前正在玩的地图的ID
; \$ q; g2 d2 `, ~mapList.clear - 清理当前地图列表- I. P9 z. d: y1 x1 |! {
mapList.remove [map ID number] - 从列表中删除指定的地图8 O0 R8 [! B! `) c8 C0 V* M
mapList.append [map name] [game mode] [number of players] - 添加一个新地图到当前列表中,必须指定游戏模式和玩家数量。- T! ?& p2 K& ?$ P2 p
mapList.insert [map ID number] [map name] [game mode] [number of players] - 和append相似,不过是ID指定的地图前插入。
$ N: z0 Q; u' }; }) `5 tAdmin Commands
3 |# M# g* W# e% z8 z; Z) o服务器管理员使用
; i4 u' d g+ i: h/ f: dadmin.listPlayers - 列出当前连接到服务器的玩家,包括他们的名称和IP4 k% M( }& e- f' i6 l1 d
admin.runNextLevel - 强行终止当前回合,开始下一个地图3 b6 l8 A" h9 q- N/ |+ H
admin.currentLevel - 显示当前玩的地图名称8 n! ^# `" D1 [4 V
admin.nextLevel - 显示下一地图的名称. M" [' @- E- B* b% Z4 K
admin.restartMap -重新开始当前地图3 S0 L/ i) U; N2 Z
admin.banPlayer [player ID number] [timeout] - 禁止某玩家,输入玩家的ID,和禁止的时间。通过IP来识别的,即在指定的时间内,该玩家不能进入服务器了。时间的单位是秒,180即180秒,三分钟。
6 s& Z4 I" ^8 ^0 _4 A9 hadmin.banPlayerKey [player ID number] [timeout] - 也是禁止玩家,不过是通过cdkey来识别。该cdkey的玩家在指定的时间内不能进入,哪怕他换了IP,换了马甲。
0 j+ N; n$ H6 x0 F2 _8 jadmin.addAddressToBanList [IP address] [timeout] - 直接封IP/ Z0 D; |* X% c1 r+ V e# W* [
admin.addKeyToBanList [CD key hash] [timeout] -直接指定cdkey来封。
' ^7 P' N5 |2 e4 }& badmin.removeAddressFromBanList [IP address] - 发慈悲,可以用这个命令把某玩家从禁止列表别删除,指定IP。
6 ~1 N; k, C) V) A) B' J6 W' madmin.removeKeyFromBanList [CD key hash] - 通过CDKey来解除。
0 v! }3 s+ p% o6 Badmin.clearBanList - 大赦,所有被封的玩家都被赦免。
- i. g7 ~5 K5 {9 S5 H, ~* m3 hadmin.listBannedAddresses - 列出被封的IP地址列表.; z# s( f# {! F! Y+ o: m- p" G
admin.listBannedKeys - 列出被封的CDKEY列表.
. }5 _3 c2 f: q# _& t, h" ladmin.kickPlayer [player ID number] - 踢人6 m* R$ Y/ C& F& X+ J
命令行
* ?' X* y$ V1 b. Y" v+ X在Windows中怎样设置游戏的启动命令,或者如何使用命令行,我就不多说了,不会的看一下windows的基础吧。9 }( u' ]) y$ z4 \+ A9 L
例如,要指定游戏以1280 ×1024的分辨率运行,可以在快捷连接中这样设置:
: p8 M5 O; }" p2 w8 w! J7 p6 U"C:\Program Files\EA Games\Battlefield 2\BF2.exe" +menu 1 +fullscreen 1 +szx 1280 +szy 1024: V- A" s* F7 C$ J# S% p
下面是其他一些参数
7 o% x' Q+ Q; L8 B8 Y. r( {$ l+dedicated - 开启纯服务器模式5 o- q* H" X2 D5 e
+multi - 立刻进入多人游戏
. j2 n- I- g7 O* C6 X: O, N+joinserver - 加入一个服务器,要指定服务器的IP或者服务器名9 m( m. p) u/ F9 O B. T k, L
+playername - 设定玩家的名称+ l) U/ Y+ q$ T
+password - 如果设置登录服务器的密码
0 E. P5 X9 \" `7 G+lowpriority - 游戏以低有限度运行(可能是让出更多的资源给其他程序吧?还没有搞明白)
. o. Z$ d/ b( w0 x3 }: }: t+loadLevel - 装载的地图
! r; i; {$ u# s4 n" D3 g* c, @4 g+wx - 指定游戏窗口的位置,x轴8 N/ R& v7 g6 L6 g( K
+wy - 指定游戏窗口的位置,y轴' ?8 V; |% k3 C+ L: H6 M4 G7 j" v
+szx - 指定分辨率的宽度
, i0 j4 A F ?& ~) D7 X% x+szy - 指定分辨率的高度
0 ~- v6 S! G k$ ]% G Y+fullscreen - 全屏运行: r& x4 t7 B; D2 E/ p
+nosound - 无声无息地游戏" g, v; I4 k# r+ T+ N* J, ~/ v
+maxPlayers - 指定最大的玩家数量" q% e' H: @! a2 L8 d/ q7 m
+gameMode - 指定游戏模式) C. k+ F3 o4 {3 Q, ?2 A6 U
+modPath - 指定mod的路径 (默认是 /mods/bf2)
5 {3 H& v4 u- ]1 | ^+help - 显示帮助 A5 H; {: Z* L1 c' y6 m
+playerPassword - 指定玩家帐号的密码
' ^2 f, a a/ \7 j5 o/ F$ |+ u4 C+playNow - Use PlayNow functionality
/ l. Z! b9 f; e7 ~+port - Specifies the network port to be used
: Q- Y. i) y+ v ~2 b+pbPath - Set the path to use for PunkBuster on multi-instance configs, Z4 T/ B& _) E9 S# G" V0 d$ n2 U
+hostServer -5 B s( j# P4 \; a/ E+ w% Y- _
+checkForAvailablePatch -8 g8 @# d& b" p {+ M
+checkForPatch -
0 e' o' K: _6 c( Q- v+ai -; K: |$ G9 r2 E
所有武器解锁
( x. K( F% K( F/ `8 G+ g' m到目录 \Program Files\EA Games\Battlefield 2\python\bf2\stats 目录打开unlocks.py .
2 }' i' ? i7 f" m0 F找到: defaultUnlocks = [0, 0, 0, 0, 0, 0, 0] c/ Q1 N- R& s
修改为: defaultUnlocks = [1, 1, 1, 1, 1, 1, 1]
8 l e) i' Y! A# J1 e: \截图8 Z# D. e5 [4 ?7 M& ~2 A4 f
很简单,按PRTSCN (Print Screen) 键就可以了,文件存在 \Documents and Settings\[username]\My Documents\Battlefield 2\Screenshots\ 中
; |& Y3 J/ L* u8 B
/ h/ M6 ~1 m3 D! X& @ |
|