找回密码
 注-册

QQ登录

只需一步,快速开始

查看: 2696|回复: 7

[技术] 教你录制 HLTV格式demo(适合CS DOD)

[复制链接]
Leya 发表于 2008-6-5 02:37:59 | 显示全部楼层 |阅读模式
在这里我简单介绍一下录制 HLTV格式demo 的方法
首先要在桌面上建立一个 hltv.exe的快捷方式

图一.jpg
例如:X:\ sierra\Half-Life\hltv.exe +connect 61.187.55.87:27025 -port 27020 +name PUNK
connect 是指定HLTV连接
61.187.55.87:27025 是指定连接的CS服务器地址,我用的是CCSK8#的服务器
-port 27020 指定HLTV端口为27020 (别人可以进入你所建立的hltv 服务器中观看,你的服务器地址为,你的IP:制定的端口 例如我的218.104.97.71:27020)
+name PUNK 指定观看者名字为PUNK(这是你在你所进入的服务器中的ID)
如果你所连接的cs服务器有密码的话,假设密码是123 ,那么你需要在hltv.exe所在的目录下找到hltv.cfg文件,打开它,添加一行serverpassword 123 启动hltv服务器才能连进cs服务器

图二.jpg
保证你现在已经在联网状态
运行 hltv在桌面上创立的快捷方式
可以看到如下画面
(左下角的那个是因为截图的快捷键导致的,这里可是不能输入中文的)
图三.jpg
录制录像的命令和普通游戏一样
record *** 录制文件名为***_1的demo. 他在你的sierra\Half-Life 文件夹底下
用stoprecord命令来结束demo的录制
图四.jpg
几点说明
当你开始运行hltv以后,他会自动不断地连接你所选择的服务器,每三秒一次,直到连上为止。掉线也一样,他会自动将你得demo分段进行录制
HLTV的核心就是hltv.exe这个代理程序.HLTV代理可以连接到某些特定的服务器上,搜集一切
有关信息,然后将这些信息传播出去.HLTV需要一个客户端以观战者的身份加入游戏来进行直播
.如果玩家使用LAN活着ISP这种不支持多点传送技术的连接协议的话,那么你可以通过HLTV来进
行观战.HLTV代理能够支持的客户端人数是由硬件配置和网络状况来决定,不同的HLTV代理之间
也可以互相连接,从而使观战的玩家可以同时看到不同场次的比赛.
在所有的设置中,只有一个HLTV代理直接与游戏相连接,它被称为主代理.主代理以观战者的角
度来播放游戏和搜集并分析游戏中的有关信息,其它的HLTV代理(也称作转接代理)再通过与主
代理相连接而形成一个播放网络,将游戏的实时信息传送到与它相连接的玩家.转接代理不能延
迟游戏或者转换播放视角,这些工作只能由主连接来完成.只有主连接才被允许发出多点传送命
令.非常重要的一点是,每个代理都必须拥有自己的一个独立的多点传送组,否则不同的信号将
可能互相干扰.
HLTV将会把正在播放的游戏的信息传送给WON服务器,而玩家则可以通过内建于Half-Life里的
观战功能来进行连接.连接HLTV代理将与连接游戏服务器一样简单.玩家还可以通过在命令界面
输入"connect"命令来连接HLTV服务器.如果HLTV正在使用多点传送技术播放,那么玩家将自动
进入这个多点网络.
目前HLTV代理可以使用如下命令:
connect - 使用特定端口连接到某个服务器或者代理 (默认 27015)
disconnect - 与服务器或者代理断开连接
quit - 退出HLTV系统
exit - 等同于quit
retry - 重新与上次连接过的服务器或者代理连接
name - 设定代理的名称
password - 设定服务器密码

clients - 列出所有进行播放的观战者的名称
kick - 把观战者从代理中踢出
say - 向所有观战者发送文本信息
chatmode <0|1|2> - 如果设定为0,观战者将无法交谈.设定为1,则只有连接到同一代理的观
战者可以互相交谈.如果设定为2,则所有处于同一播放网络内的玩家可以互相交谈.(主代理和
转接代理都必须设定为2).
ping - 测试与服务器特定端口之间的PING值 (默认 27015)
heartbeat - 发送一个状态包到指定的WON主服务器

rcon - 发送一个遥控命令到其它服务器/代理
rcon_address - 发送遥控命令到特定地址
rcon_password - 为遥控的服务器设定密码
proxypassowrd - 重新确认输入的密码

rate - 绑定服务器与代理之间的传输速率为N字节/秒
updaterate - 每N秒钟服务器与代理之间进行一次更新
maxclientrate - 设定观战客户端的最大连接速率

delay - 设定从服务器传来的信息的延迟秒数,默认为30秒,以避免作弊.最小设定为1
0秒.

loop <0|1> - 如果回路设定为1,那么即便代理与服务器断开连接或者录像文件播放结束,
所有与这个代理的连接用户将 保持连接并重播上一个游
戏录像.

multicast <0|1> - 开始或者结束主代理上的多点传输
connectip - 为多点传输组设定D级IP(默认 234.5.5.1:27025)
gameip - 同上
fullupdateinterval - 多点传输时,允许丢包连接客户端每隔N个未压缩帧包重新连接
(默认每20帧)
cmdlist - 列出所有设定的命令
logfile <0|1> - 开始/结束从hltv.log文件中读取的设定命令
status - 打印所有活跃模式的信息
exec - 运行.cfg文件
developer <0|1> - 在高级模式中显示添加的状态信息
fakeloss - 模拟丢包,n=可能的丢包单元(默认0.

record - 记录所有的游戏信息,使用文件名为filename1.dem到filename99.de
m
playback - 开始播放上一个录像(如果回路loop设定为1,则反复播放)
stop - 停止录像文件的回放


按下回车键,程序将自动完成整个命令的输入.所有在hltv.cfg文件中设定好的命令语句将在
游戏开始时自动运行.

下边这些变量只能在命令行中输入:
-maxframes - 设定最大的缓存帧数(默认240
-cachesize - 帧缓存规格(默认32帧)
-port - 设定观战客户端与HLTV代理的连接端口(默认2702
-maxclients - 设定可连接到HLTV代理的最大客户端数目(默认128 )
-comm - 设定不同于woncomm.lst文件的服务器信息文件
-multicastttl - 设定多点传输包的Time-To-Live数值
-highpriority - 设定HLTV代理为优先进程
-nomaster - HLTV代理不向WON服务器发送回馈信息

这些变量在运行过程中无法改变,因此他们不可以在设定文件中进行设定.

所有的设定命令都可以在命令行中设定,用"+"号可以同时使用几个命令,例如:
hltv.exe +connect localhost:27015 -port 27021 +rate 7000

Half-Life服务器可以设定sv_proxies , 从而决定多少个代理允许连接.如果HLTV代理要
被禁止,把这个变量设定为0.设定为1则准许主代理连接,其它数值仅供测试使用.

由于Half-Life新版本加入了语音功能,因而可以实现某个客户对游戏进行实时评述.而评述
者必须与主代理连接,需要输入的命令如下:

commentator

这个密码与代理的RCON密码相同.评述者可以跟进行游戏一样进行评述,而所有其它的观战者
都可以同步听到声音.如果观战者录下这个游戏的话,那么评述声音也会被记录在内.

linux下HLTV服务器建设方法(也适合WIN2000)

WIN2000 下建设HLTV服务器的方法网上有很多文章都做了很详细的介绍。在此暂略
LINUX下建设HLTV服务器 和建设CS服务器的方法基本上都一样 只是配置文件的和执行文件不一样而已:HLTV.CFG 在LINUX下需要建启脚本。启动脚本的做法和LINUX下建CS服务器的脚本做法一样:
#/bin/bash
./hltv +connect 192.168.0.1:27019 -port 27015 -nomaster
以上是一个最简单HLTV脚本
HLTV的基本脚本如下:
hltv +connect localhostort -port 27020 +rate 4000 -maxclients 50
如果是局域网的话就是要加上
hltv +connect localhostort -port 27020 +rate 5000 -maxclients 50 -nomaster"
现在详细的说明一下命令行:
connect iport 需要连接的服务器IP和端口号
rate x 用户可用的最大带宽或者速率
-maxframes 设置最小缓冲帧(默认是2400)
-port HLTV服务器的端口号
-maxclients 可以连接到该服务器的最大人数(默认128)
-nomaster 局域网用

现在说HLTV。CFG命令
connect 连接指定端口的服务器
disconnect 断开服务器连接
quit 退出
exit 和QUIT一样
retry 重新连接服务器
autoretry 如果N》0 服务器在每N秒连接服务器
name 设置名字
password 服务器密码
clients 例表所有连接的用户ID
kick 剔除
say 向每个人说话
infotext 设置游戏文本信息
rcon 为另外的游戏设置远程控制
rcon_address 设置远程控制目标
rcon_password 设置远程控制密码
proxypassword proxy的密码
clientpassword 用户密码
rate 每秒发送的字节大小
updaterate 每秒的更新速率
maxclientrate 设置每个用户的带宽大小
delay 延迟时间(推荐为30S)
。。。。。 其他的可以参看README
附录 HLTV。CFG

Here is the default
// HLTV Proxy configuration file
//
// HLTV proxy executes this file on start up
// This file should only be edited if you want to broadcast a game

hltv.cfg内容如下:

// HLTV Proxy configuration file

// HLTV proxy executes this file on start up
// This file should only be edited if you want to broadcast a game

// set HLTV proxy name as shown in score board
// 观众服务器在分数板上的名称
name "PUNK's CS Game TV"

// 观众服务器的名称
hostname "PUNK's CS Game TV"

// set offline info text clients will see as reject reason if HLTV isn’t broadcasting yet
// 被观众服务器踢出的客户端看到的踢出原因的文字。
offlinetext "Sorry, game is delayed. Please try again later."

// delays broadcasting for 30 seconds
// 延迟播放比赛多少秒
delay 30.0

// auto director addes 1/2 slowmotion with a probability of 0.2 for important events
slowmotion 0.5 0.2

// keep multicast disabled until you’re definitely sure
// that your LAN or ISP supports multicast
multicast 0

// allow 3.5 KByte/sec as client rate. This is good a value
// for internet broadcasts. On LAN you may set this value to 10000
// 最高客户端速率,Internet互联网 3500 , Lan/IPX局域网 10000
maxclientrate 3500

// log HLTV console in proxy.log
// 是否记录HLTV日志文件到proxy.log文件
logfile 1

// local chatting for HLTV spectators enabled
// 谈话模式 0禁止 1连接到同一个观众代理服务器的观众可以相互谈话 2 所有观众都能相互谈话
chatmode 1

// if game server is paswword protected, enable this line
// serverpassword SecretServerPassword

// proxy’s adim password for rcon, commentator etc.
// adminpassword "mypassword"

// allow joingame for HLTV spectators
// 允许客户端使用joingame命令加入游戏。
allowjoingame 1

// show message for 5 seconds each 60 seconds in center of X axis (-1) and
// above help text bar (0.85). Color given as hexadecimal RGBA .
//loopcmd 1 60(每隔60秒) localmsg "You’re watching PUNK’s CSTV. Visit http : / / www.ccsk.net"(显示的信息内容) 5(显示5秒) -1(X轴-1表示中间) -1(Y轴-1表示中间) 7700FFFF(RGBA颜色值:红、绿、蓝、透明度 16进制2位表示)
loopcmd 1 60 localmsg "You’re watching PUNK’s CSTV. Visit http : / / www.ccsk.net" 5 -1 0.85 5577FFFF


// hltv.wad contains the HLTV banner and my be different on each proxy
// banner format should be 240x48, 256 colors (same like player logo in pldecal.wad)
// 观众服务器的自定义Banner(横幅)大小:240x48,256色
// decalfile "hltv.wad"

// hltv.tga will be shown instead of the default HLTV logo in spectator GUI
// 观众服务器的自定义Logo在观察者的界面上
// bannerfile "hltv.tga"

// these commands will be executed on connecting spectator client and may be used
// to adjust settings for HLTV (for example voice parameters)
// 设置客户端的语音部分
signoncommands "voice_scale 2; voice_overdrive 16; volume 0.5; echo Voice adjusted for PUNK's CS Game TV"
回复

使用道具 举报

Melo 发表于 2008-9-12 16:06:24 | 显示全部楼层

晕了

已经晕了,Fox那傻鸟在不,就这个!
回复

使用道具 举报

yangning007911 发表于 2009-12-6 15:57:23 | 显示全部楼层
正版找不到hltv.exe
回复

使用道具 举报

左小岸 发表于 2010-2-24 17:19:53 | 显示全部楼层
这个可以顶...但是咱不弄``
回复

使用道具 举报

471086952 发表于 2010-2-25 08:20:58 | 显示全部楼层
晕了
回复

使用道具 举报

webking 发表于 2010-3-9 11:32:46 | 显示全部楼层
这个 插件 里面 那个 录制demo 不能用?还要这么麻烦?
回复

使用道具 举报

Kar-43 发表于 2010-8-26 02:56:58 | 显示全部楼层
好深奥哦
回复

使用道具 举报

无聊 发表于 2010-9-7 10:14:57 | 显示全部楼层
学习一下还挺复杂。
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|DoDVip ( 桂ICP备14000730号 )

GMT+8, 2024-5-3 17:55 , Processed in 0.064890 second(s), 23 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表