I'm still relatively new with the source engine, but I hit a dead end that I
ran out of ideas on where to look.  I'm trying to have full custom files
with no half-life content at all anymore. Our company liscenced the engine
for our own purposes, and we have no monsters, headcrabs, or weaponry. It's
not even really a FPS. So we finally decided to dig in and throw all this
unneccesary code out of our projects.  We were trying to learn by using a
HL2 Singleplayer Mod to get familiar with it all.

I went through and removed all the files in the HL2 folders in both the
client and server projects, and replaced all files and classes that were
required to be created with my own. Here's the list of files I had to
replace content in:

Client:
c_basehlplayer.h & c_basehlplayer.cpp
c_hl2_playerlocaldata.h & c_hl2_playerlocaldata.cpp
hl2_clientmode.cpp
clientmode_hlnormal.h & clientmode_hlnormal.cpp
hl_prediction.cpp
hl_in_main.cpp
vgui_rootpanel_hl2.cpp

Server:
script_intro.h & script_intro.cpp
hl2_client.cpp
hl2_eventlog.cpp
hl_movedata.h
hl2_player.h & hl2_player.cpp
hl2_player_shared.h
hl2_playerlocaldata.h & hl2_playerlocaldata.cpp
hl_playermove.cpp

Both:
hl_gamemovement.cpp
hl2_gamerules.h & hl2_gamerules.cpp
hl2_usermessages.cpp

At first I was getting an error message from the engine that reads:
"OnGameRulesCreationStringChanged: missing gamerules class 'CVR2' on the
client"

CVR2 is the name of my gamerules object, similar to the Half-Life 2 one. I'm
not sure which part of this process I forgot to do, but it shuts down the
game immediately with no gamerules object created.  After realizing my code
wasn't updating the DLLs because of source control, I re-built my projects
and got a different problem.

When I run, I immediately get disconnected with these messages:

No matching RecvTable for SendTable 'DT_VR2_Player'.
No matching RecvTable for SendTable 'DT_VR2Proxy'.
Missing RecvProp for DT_BasePlayer - DT_LocalPlayerExclusive/m_bFalling

The falling variable I added long ago in BasePlayer, and it was working fine
for so long. As for the other two, I have what appear to be matching tables
in the client and server projects. Here's what they look like

Player
Client:
IMPLEMENT_CLIENTCLASS_DT(C_VR2_Player, DT_VR2_Player, CVR2_Player)
RecvPropDataTable( RECVINFO_DT(m_VR2Local),0,
&REFERENCE_RECV_TABLE(DT_VR2Local) ),
RecvPropBool( RECVINFO( m_fIsSprinting ) ),
END_RECV_TABLE()

Server:
IMPLEMENT_SERVERCLASS_ST(CVR2_Player, DT_VR2_Player)
SendPropDataTable(SENDINFO_DT(m_VR2Local),
&REFERENCE_SEND_TABLE(DT_VR2Local), SendProxy_SendLocalDataTable),
SendPropBool( SENDINFO(m_fIsSprinting) ),
END_SEND_TABLE()

Proxy
Client:
BEGIN_RECV_TABLE( CVR2Proxy, DT_VR2Proxy )
RecvPropDataTable( "vr2_gamerules_data", 0, 0, &REFERENCE_RECV_TABLE(
DT_VR2GameRules ), RecvProxy_VR2GameRules )
END_RECV_TABLE()

Server:
BEGIN_SEND_TABLE( CVR2Proxy, DT_VR2Proxy )
SendPropDataTable( "vr2_gamerules_data", 0, &REFERENCE_SEND_TABLE(
DT_VR2GameRules ), SendProxy_VR2GameRules )
END_SEND_TABLE()

It seems to be convinced I don't have the recieve tables on the client-side,
but they're obviously there and they seem to match my server tables as well.
 I have to be misunderstanding something important in this whole process.
I just have no way of knowing where to look.  I'm willing to send source
code to anybody who would take a quick look.  Thanks for any help.

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today - it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/


_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to