[hlcoders] Log console output
Anyone know the command to turn console output to log to a file? I had found it before but forget the command... r00t 3:16 CQC Gaming www.cqc-gaming.com ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Climbing Ladders
Hello, Has anyone else noticed an inability to climb ladders in the MP SDK code? At first I thought this was because the CSDKGameMovement class declared its own constructor without calling the base class constructor and something was not being initialized, but this does not help. I've been digging around in game_movement.cpp. It appears that in CGameMovement::LadderMove() only the top bit is being executed before the traceline. I spit a message to the console right after this traceline, but I only see it a few times at the beginning of a map, and then never again. I will look into this more later, but school has now started up (so I am stuck with java right now ;( ). Any thoughts? Greetings, -Markus ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Movetypes and CollisionTypes
Hmmy attempts to change the collision rules don't seem to change anything. I set my projectile up as follows: pBullet->SetMoveType( MOVETYPE_FLYGRAVITY, MOVECOLLIDE_FLY_CUSTOM ); pBullet->SetCollisionGroup(COLLISION_GROUP_PROJECTILE ); Then in ShouldCollide() in both the sdk_gamerules.cpp and in gamesrules.cpp I set it to always return false if one of the objects in the collision is of COLLISION_GROUP_PROJECTILE. However, my projectiles collide with everything. I tried changing to AddSolidFlags( FSOLID_NOT_SOLID ); but still, they collide with everything. very confused, suicide Jay Stelly wrote: COLLISION_GROUP_NONE is the default collision group. These collide with everything. Other collision groups have special rules. E.g. COLLISION_GROUP_DEBRIS doesn't collide with other COLLISION_GROUP_DEBRIS. In the end, collision group is simply an id. The behavior of it is controlled by the mod's implementation of gamerules' ShouldCollide() function. In there you specific whether any pair of collision groups collides with each other. So you can make it do anything you want. If you don't want an entity to have any collision, you set the solid flag FSOLID_NOT_SOLID. AddSolidFlags( FSOLID_NOT_SOLID ); -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Hasan Aljudy Sent: Friday, January 07, 2005 8:37 PM To: hlcoders@list.valvesoftware.com Subject: Re: [hlcoders] Movetypes and CollisionTypes I don't know what's the deal with collision groups, but it seems when you put COLLISION_GROUP_NONE in a traceline it hits everything :/ On Fri, 07 Jan 2005 18:09:35 -0800, SuicideCommando <[EMAIL PROTECTED]> wrote: I'm trying to model bullets as projectiles. I based my bullet class off of CBaseEntity. I can get them to move correctly, but I'm having trouble with the collisions. I set the bullets as SetMoveType( MOVETYPE_FLYGRAVITY, MOVECOLLIDE_FLY_CUSTOM ); SetCollisionGroup(COLLISION_GROUP_NONE); thinking they would fly as projectiles, but not have any collisions set up. Instead, they fly straight thru the ground on the test map, but stick to objects (the hills and rocks). Anyone know why it's doing this? thanks, suicide ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] Respawn Bug MP SDK
Doing AddEffects( EF_NOINTERP ) when the player respawns will fix this in most cases. There's a known bug in EF_NOINTERP where they'll still interpolate sometimes, but we'll be fixing that in an SDK update. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Tommi Bordi Sent: Monday, January 10, 2005 11:08 AM To: hlcoders@list.valvesoftware.com Subject: [hlcoders] Respawn Bug MP SDK This is a multi-part message in MIME format. -- [ Picked text/plain from multipart/alternative ] Hi, Has anyone else noticed the respawn bug in multiplayer? If not, heres a short description of it: When you kill a player and when he is about to respawn, you can see that the playermodel is created first above his corpse (ragdoll, what you wish to call it). And then you can actually see how the playermodel is moved to the spawnpoint and ends the rest of the spawn code there. Yes, it moves rather fast but you can easily predict where he is going to spawn and it Can be seen rather easily in a small map where you have visual range to the spawnpoint(s). I have tried to trace it, but with not much success. (*bump*) Tried to look in the different functions that involve playerdeath and respawning. Both in CBasePlayer and CSDKPlayer. Can anyone confirm this, or is just my SDK/Code/Computer/Friends Computer? Or even perhaps a solution? Hehe :-) Thanks! Best Regards Tommi 'MindBlaster' Bordi Note: Please forgive me for any typos.. -- ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Rotating a player, physically. Along with their view. And hitboxes
with regards to changing the hitbox .. if you're working with the single player, it's not automatic. On Mon, 10 Jan 2005 12:37:23 -0800, David Byttow <[EMAIL PROTECTED]> wrote: > 1. I don't have the code in front of me. Doesn't CBasePlayer have a > pointer or some way to access its own anim state? If so, you can > change it there? > > 2. Probably because it is calculated at end of frame or something from > the camera matrix. Do a find in files for all accessors or set > breakpoints to determine where. > > 3. What do you mean you created a prone position? When the player goes > prone this is updated automatically. > > On Sat, 8 Jan 2005 12:55:32 -0800, Trauts <[EMAIL PROTECTED]> wrote: > > 1) I've figured out that if I make m_angRender[PITCH] in > > CBasePlayerAnimState = 90, then it'll rotate the player model. But how can I > > make it so it'll rotate it from inside the CBasePlayer? > > > > 2) I can't seem to get the view to change. I'm guessing its in view.cpp, but > > it could be in_camera.cpp. My changes don't seem to do anything. I know how > > to change the matrix, supposing I knew where. There's a matrix in view.cpp, > > but changing it doesn't do anything > > > > 3) Finally, I created a prone position. How can I modify the player's hitbox > > so that collisions / damage will be proper again? Or is this automatic in > > HL2? > > > > -Trauts > > > > ___ > > To unsubscribe, edit your list preferences, or view the list archives, > > please visit: > > http://list.valvesoftware.com/mailman/listinfo/hlcoders > > > > > > ___ > To unsubscribe, edit your list preferences, or view the list archives, please > visit: > http://list.valvesoftware.com/mailman/listinfo/hlcoders > > ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Problem...constantly getting Disconnected from Steam servers
Mike Michaels wrote: Whenever I try to play HL2 Multiplayer online, I find that I am constantly getting disconnected from every server I log into. I get disconnected on average of about once every 5-10 minutes. Upon disconnection, I always receive one of the two following error messages: Disconnected Error Message: My guess is a crappy (or improperly configured) network connection. If you are using Routers/Switches/Gateways, try removing them and connect directly to your service provider and see if the problem goes away. If so, you know the Router/Switch/Gateway is not configured properly, not compatible with HL2, and/or just plain broken. If there is no change (connection still drops without R/S/G), try contacting your ISP and ask them to run a "loop back" diagnostic on your internet connection (they may has something misconfigured in your neighborhood NID or bridge). -- Jeffrey "botman" Broome ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] Problem...constantly getting Disconnected from Steam servers
This is inappropriate for this list, the Steam forums or technical support (as you have already tried) are the correct places to ask this. The networking problem you mention are typically caused by a bad NAT device (linksys ones seem to be the worst offenders at the moment). - Alfred Original Message From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Mike Michaels Sent: Monday, January 10, 2005 12:30 PM To: hlcoders@list.valvesoftware.com Subject: [hlcoders] Problem...constantly getting Disconnected from Steam servers > I tried contacting Valve regarding this problem, but they haven't > responded in over 3 weeks. HL Elite programmer (007) told me that > "hlcoders" were more efficient than Valve/Steam technical support and > that I might be able to find help this way. Basically, my problem is > as follows: > > Whenever I try to play HL2 Multiplayer online, I find that I am > constantly getting disconnected from every server I log into. I get > disconnected on average of about once every 5-10 minutes. Upon > disconnection, I always receive one of the two following error > messages: > > Disconnected Error Message: > > 1) Disconnect: ProceedUserCmds: Incorrect Reading Frame (ch > > and/or > > 2) Disconnect: ProceedUserCmds: Overflowed Ready Usercm > > Any assistance on how to fix this problem I am having would be > greatly appreciated. Thanks a lot. > > My system specs are as follows: > (FYI - all components have the mosted updated drivers) > > CPU: P4 2.8Ghz > Motherboard: Gigabyte GA-8PIPE-ProG Raid Socket 478 > Memory: 1 Gig PC4200 DDR DRAM > Hard Drives: 60Gb ATA133 Maxtor 7200rpm > OS: Windows XP Home > Video Card: Radeon 9800Pro 128mb > Sound Card: Creative Labs Sound Blaster(r) Audigy IEEE(r) 1394 > > - Mike > > ___ > To unsubscribe, edit your list preferences, or view the list > archives, please visit: > http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Rotating a player, physically. Along with their view. And hitboxes
1. I don't have the code in front of me. Doesn't CBasePlayer have a pointer or some way to access its own anim state? If so, you can change it there? 2. Probably because it is calculated at end of frame or something from the camera matrix. Do a find in files for all accessors or set breakpoints to determine where. 3. What do you mean you created a prone position? When the player goes prone this is updated automatically. On Sat, 8 Jan 2005 12:55:32 -0800, Trauts <[EMAIL PROTECTED]> wrote: > 1) I've figured out that if I make m_angRender[PITCH] in > CBasePlayerAnimState = 90, then it'll rotate the player model. But how can I > make it so it'll rotate it from inside the CBasePlayer? > > 2) I can't seem to get the view to change. I'm guessing its in view.cpp, but > it could be in_camera.cpp. My changes don't seem to do anything. I know how > to change the matrix, supposing I knew where. There's a matrix in view.cpp, > but changing it doesn't do anything > > 3) Finally, I created a prone position. How can I modify the player's hitbox > so that collisions / damage will be proper again? Or is this automatic in > HL2? > > -Trauts > > ___ > To unsubscribe, edit your list preferences, or view the list archives, please > visit: > http://list.valvesoftware.com/mailman/listinfo/hlcoders > > ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] External ballistics
The problem is that these are line traces, not fast moving bullets. So, the best way I can see is to precalculate the target and then move the object down based on gravity. When a bullet is fired, you can line trace to see what it hits, then, you can easily determine (based on time) how far down gravity would have taken it. If you are just concerned with showing "hit fx" at this location so that if the player is shooting at a wall far away it is shown accurately, then just use this position and end it. However, if you are concerned w/ actual accuracy where this "gravity" would actually cause the gun to "miss" a target far away (which I really don't see a need for), then you need to do a bit more. Using this "new position" then do *another* line trace from the muzzle to it. If it hits the same object, you're done, if not, find a new position and repeat until it hits the same object after adjusting the position. Does this make sense? I think that's as good as you're going to get and should work well w/out any conceivable inaccuracy. On Sun, 9 Jan 2005 13:36:03 -0800, Andrew Foss <[EMAIL PROTECTED]> wrote: > Okay, when a bullet leaves a gun, it doesn't fly in a straight line, > it drops at 9.8m/s^2. You can, if you fire a gun over a level > surface, with the barrel parallel to the ground, drop a bullet at the > same height as the muzzle, and the two bullets will impact the ground > at the same time. > > Now, every shooter knows this, and will "zero" their sights at a > certain range. If you zero your sights at 100 yards, your bullet will > hit the exact spot you aimed at (not considering crosswind, and other > factors.) at 100 yards. Your sights could also be correct for another > solution at a closer range (5-10 yards) Consider: when you shoot, the > bullet follows a very shalow parabola in path. when your sights are > zeroed, you cut a line through the parabola. there are 2 solutions > where that line intersects the parabola. Your sights aren't right on > the path of the bullet, and this is why you have to zero them. > > http://chrony.ca/tgraph.gif is an example of .222 remington's > ballistic path. Take that image and add a line that slopes from 5 > pixels above (0, 0) and intersects the point at 200 yards. anything > above that line is shooting high, anything below that is shooting low, > and if the points intersect, you have a zero at that range. > > That is with a sight zeroed at 200 yards. If you re-zero your sight to > 250 yards, the bullet will hit higher on a 200 yard target. (to get > more distance, you have to angle the barrel higher) this has the > effect of changing the angle of your sights in relation to the barrel. > While the actual difference isn't as extreme as the above makes it out > to be, it's not trivial. > > (I strongly suggest everyone wanting to implement ballistics should > download the demo copy of Ballistic Explorer or another such program. > it has data for all sorts of common and uncommon calibers.) > > points I overed in my previous post: I'll touch on them briefly. > Minute of angle: MOA is usually a cone, where 1 MOA is a 1 inch > diameter cone, 100 yards long, with the point originating in the > barrel of the weapon. > > You probably won't have to worry too badly about perfection in your > calculations. If you can do them quickly but less accurately, or just > use regular physics and forget the concept of traceline-based bullets. > It looks like suicidecommando is doing/has done this, so it's do-able. > you might want to keep an eye on calculation load and check accuracy > against known real life data, I have no clue how Source would handle > something moving ingame at a few thousand feet per second. > > ___ > To unsubscribe, edit your list preferences, or view the list archives, please > visit: > http://list.valvesoftware.com/mailman/listinfo/hlcoders > > ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Problem...constantly getting Disconnected from Steam servers
I tried contacting Valve regarding this problem, but they haven't responded in over 3 weeks. HL Elite programmer (007) told me that "hlcoders" were more efficient than Valve/Steam technical support and that I might be able to find help this way. Basically, my problem is as follows: Whenever I try to play HL2 Multiplayer online, I find that I am constantly getting disconnected from every server I log into. I get disconnected on average of about once every 5-10 minutes. Upon disconnection, I always receive one of the two following error messages: Disconnected Error Message: 1) Disconnect: ProceedUserCmds: Incorrect Reading Frame (ch and/or 2) Disconnect: ProceedUserCmds: Overflowed Ready Usercm Any assistance on how to fix this problem I am having would be greatly appreciated. Thanks a lot. My system specs are as follows: (FYI - all components have the mosted updated drivers) CPU: P4 2.8Ghz Motherboard: Gigabyte GA-8PIPE-ProG Raid Socket 478 Memory: 1 Gig PC4200 DDR DRAM Hard Drives: 60Gb ATA133 Maxtor 7200rpm OS: Windows XP Home Video Card: Radeon 9800Pro 128mb Sound Card: Creative Labs Sound BlasterĀ® Audigy IEEEĀ® 1394 - Mike ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Respawn Bug MP SDK
This is a multi-part message in MIME format. -- [ Picked text/plain from multipart/alternative ] Hi, Has anyone else noticed the respawn bug in multiplayer? If not, heres a short description of it: When you kill a player and when he is about to respawn, you can see that the playermodel is created first above his corpse (ragdoll, what you wish to call it). And then you can actually see how the playermodel is moved to the spawnpoint and ends the rest of the spawn code there. Yes, it moves rather fast but you can easily predict where he is going to spawn and it Can be seen rather easily in a small map where you have visual range to the spawnpoint(s). I have tried to trace it, but with not much success. (*bump*) Tried to look in the different functions that involve playerdeath and respawning. Both in CBasePlayer and CSDKPlayer. Can anyone confirm this, or is just my SDK/Code/Computer/Friends Computer? Or even perhaps a solution? Hehe :-) Thanks! Best Regards Tommi 'MindBlaster' Bordi Note: Please forgive me for any typos.. -- ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Re: Help with RemoveFromPlayerSimulationList ?
I apologize for the extended dialogue with myself here. I converted it from CPhysicsProp to CPhysicsPropMultiplayer and now I don't get that error anymore. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Re: Help with RemoveFromPlayerSimulationList ?
Update .. I've narrowed down the problem to be caused by a class I derived from CPhysicsProp. Sometimes when this class spawns, for reasons a mystery to me, it starts calling destructors and goes up the chain from C_BreakableProp all the way to C_BaseEntity. I used the debugger in VS.NET to watch this. The original sdk code did not do this. Is there something changed with respect to how PhysicsProps are handled? On the server my class is called CValtrainPhysicsProp and inherits from CPhysicsProp. On the client my class is called C_ValtrainPhysicsProp, inherits from C_PhysicsProp, and only contains an empty constructor and destructor. I also see that there is a CPhysicsPropMultiplayer class, what is the difference between CPhysicsProp and CPhysicsPropMultiplayer? If I'm doing an MP mod, should I only be using CPhysicsPropMultiplayer? I was able to use the CPhysicsProp derived class in the original sdk code without any problems. Anyone have any ideas? Thanks! From: Patrick Flanagan <[EMAIL PROTECTED]> Date: Sun, 9 Jan 2005 16:35:16 -0500 Subject: Help with RemoveFromPlayerSimulationList ? To: hlcoders@list.valvesoftware.com I just recently merged my mod with the latest SDK update, previously I was using the first version of the SDK code. With the new code, I notice a lot of times if I'm spawning or even just running around, I get an assertion failed in CBasePlayer::RemoveFromPlayerSimulationList which checks Assert( other->GetSimulatingPlayer() == this ). I did not get this error when I was running my code with the first version of the SDK code. I tried printing out the classname of the object that was being removed to get an idea of what is causing it, but it just reports C_BaseEntity. Does anyone have any insight into what sort of thing might cause this or how I might track it down? Thanks! ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Server Plugins - Interfaces?
Hi Jeffrey, First: thanks for your fast answer! > Here's some that I've tried (you'll need to include the appropriate .h > file yourself). The commented ones definitely don't work... That's what I was looking for and since valve has commected the code pretty good I think I can handle it from here :) > Not, "rcon kick", just issue the "kick" command as a Server Command > (using the player name or player index as the argument to kick). Make > sure to put the "\n" newline at the end of the "kick" command. I'm not at home right now so I can't check the source, but I guess I can issue "server commands" through a method of the engine interface? > Try this... > > http://www.mail-archive.com/hlcoders%40list.valvesoftware.com/ Yep that's what I need, now I won't be asking questions again that already have been answered (hopefully;) Thanks again, Chris ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Server Plugins - Interfaces?
And the one botman posted presents it in a better tree, sometimes the mailman archive screws it up ** Draco Coder for Perfect Dark http://perfectdark.game-mod.net ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Server Plugins - Interfaces?
<[EMAIL PROTECTED]> wrote: > In response to your last question: > > http://list.valvesoftware.com/mailman/private/hlcoders/ The valvesoftware.com archive isn't searchable. Jeffrey "botman" Broome ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] Server Plugins - Interfaces?
In response to your last question: http://list.valvesoftware.com/mailman/private/hlcoders/ -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Christian Marschalek Sent: Monday, January 10, 2005 7:50 AM To: hlcoders@list.valvesoftware.com Subject: [hlcoders] Server Plugins - Interfaces? Hi everyone, If I understood the server plugin example correctly, I can only access certain features through interfaces. Now I wonder if there's a list of interfaces I can use in a server plugin? What I'm looking for especially is a good method of disconnecting a client. I know that the engine interface has a execute client method, but somehow executing a "disconnect" on a client to kick him from a server does not feel right. I wonder if I have access to the same methods that disconnect a user when I execute an "rcon kick" command? BTW: Does anyone know of a searchable archive of this list? best regards, Chris ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Server Plugins - Interfaces?
> > If I understood the server plugin example correctly, I can only access > certain features through interfaces. Now I wonder if there's a list of > interfaces I can use in a server plugin? Here's some that I've tried (you'll need to include the appropriate .h file yourself). The commented ones definitely don't work... enginetrace = (IEngineTrace*)interfaceFactory(INTERFACEVERSION_E NGINETRACE_SERVER, NULL); if ( !enginetrace ) Msg("PLUGIN: Unable to load enginetrace, ignoring\n"); else Msg("PLUGIN: Loaded enginetrace\n"); gamedll = (IServerGameDLL*)gameServerFactory(INTERFACEVERSIO N_SERVERGAMEDLL, NULL); if ( !gamedll ) Msg("PLUGIN: Unable to load gamedll, ignoring\n"); else Msg("PLUGIN: Loaded gamedll\n"); gameents = (IServerGameEnts*)gameServerFactory(INTERFACEVERSI ON_SERVERGAMEENTS, NULL); if ( !gameents ) Msg("PLUGIN: Unable to load gameents, ignoring\n"); else Msg("PLUGIN: Loaded gameents\n"); gameclients = (IServerGameClients*)gameServerFactory(INTERFACEVE RSION_SERVERGAMECLIENTS, NULL); if ( !gameclients ) Msg("PLUGIN: Unable to load gameclients, ignoring\n"); else Msg("PLUGIN: Loaded gameclients\n"); spatialpartition = (ISpatialPartition*)interfaceFactory(INTERFACEVERS ION_SPATIALPARTITION, NULL); if ( !spatialpartition ) Msg("PLUGIN: Unable to load spatialpartition, ignoring\n"); else Msg("PLUGIN: Loaded spatialpartition\n"); voiceserver = (IVoiceServer*)interfaceFactory(INTERFACEVERSION_V OICESERVER, NULL); if ( !voiceserver ) Msg("PLUGIN: Unable to load voiceserver, ignoring\n"); else Msg("PLUGIN: Loaded voiceserver\n"); staticprops = (IStaticPropMgr*)interfaceFactory(INTERFACEVERSION _STATICPROPMGR_SERVER, NULL); if ( !staticprops ) Msg("PLUGIN: Unable to load staticprops, ignoring\n"); else Msg("PLUGIN: Loaded staticprops\n"); //mapdata = (IMapData*)gameServerFactory(INTERFACEVERSION_MAPD ATA, NULL); //if ( !mapdata ) //Msg("PLUGIN: Unable to load mapdata, ignoring\n"); //else //Msg("PLUGIN: Loaded mapdata\n"); //physics = (IPhysics*)gameServerFactory(VPHYSICS_INTERFACE_VE RSION, NULL); //if ( !physics ) //Msg("PLUGIN: Unable to load physics, ignoring\n"); //else //Msg("PLUGIN: Loaded physics\n"); //physicscol = (IPhysicsCollision*)gameServerFactory(VPHYSICS_COL LISION_INTERFACE_VERSION, NULL); //if ( !physicscol ) //Msg("PLUGIN: Unable to load physicscol, ignoring\n"); //else //Msg("PLUGIN: Loaded physicscol\n"); //physicssurfprop = (IPhysicsSurfaceProps*)gameServerFactory(VPHYSICS_ SURFACEPROPS_INTERFACE_VERSION, NULL); //if ( !physicssurfprop ) //Msg("PLUGIN: Unable to load physicssurfprop, ignoring\n"); //else //Msg("PLUGIN: Loaded physicssurfprop\n"); enginesound = (IEngineSound*)interfaceFactory(IENGINESOUND_SERVE R_INTERFACE_VERSION, NULL); if ( !enginesound ) Msg("PLUGIN: Unable to load enginesound, ignoring\n"); else Msg("PLUGIN: Loaded enginesound\n"); enginecache = (IVEngineCache*)interfaceFactory(VENGINE_CACHE_INT ERFACE_VERSION, NULL); if ( !enginecache ) Msg("PLUGIN: Unable to load enginecache, ignoring\n"); else Msg("PLUGIN: Loaded enginecache\n"); modelinfo = (IVModelInfo*)interfaceFactory(VMODELINFO_SERVER_I NTERFACE_VERSION, NULL); if ( !modelinfo ) Msg("PLUGIN: Unable to load modelinfo, ignoring\n"); else Msg("PLUGIN: Loaded modelinfo\n"); > What I'm looking for especially is a good method of disconnecting a > client. I know that the engine interface has a execute client method, > but somehow executing a "disconnect" on a client to kick him from a > server does not feel right. I wonder if I have access to the same > methods that disconnect a user when I execute an "rcon > kick" command? Not, "rcon kick", just issue the "kick" command as a Server Command (using the player name or player index as the argument to kick). Make sure to put the "\n" newline at the end of the "kick" command. > BTW: Does anyone know of a searchable archive of this list? Try this... http://www.mail-archive.com/hlcoders%40list.valvesoftware.com/ Jeffrey "botman" Broome ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Server Plugins - Interfaces?
Hi everyone, If I understood the server plugin example correctly, I can only access certain features through interfaces. Now I wonder if there's a list of interfaces I can use in a server plugin? What I'm looking for especially is a good method of disconnecting a client. I know that the engine interface has a execute client method, but somehow executing a "disconnect" on a client to kick him from a server does not feel right. I wonder if I have access to the same methods that disconnect a user when I execute an "rcon kick" command? BTW: Does anyone know of a searchable archive of this list? best regards, Chris ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Getting a entity from a trace line
This is a HL1 question, not source I have put some code into my rpg that makes a traceline when you secondaryattack, and gets the ent from that result and uses that as the rocket target instead of the laser dot. The only problem I am having is that traceresult only has a pointer to the edict_t of that ent, not a CBaseEntity pointer. How would change that edict_t pointer into CBaseEntity? -- ** Draco Coder for Perfect Dark http://perfectdark.game-mod.net ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] [ Basic question (prob. 101st same question ]
the source SDK will compile under MSVC 2003(or 7.1) but will(with some tinkering) work with MSVC 6 and above. ** Draco Coder for Perfect Dark http://perfectdark.game-mod.net ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] This should not be possible, yet it works!?
That would be a most ideal situation. I just hope it will also compile fine when you give me your class ,w ithout the contents of possible functions... === Stefan Hendriks FunDynamic & RealBot http://www.fundynamic.nl http://realbot.bots-united.com http://www.bots-united.com === -Oorspronkelijk bericht- Van: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Namens Draco Verzonden: maandag 10 januari 2005 13:57 Aan: hlcoders@list.valvesoftware.com Onderwerp: Re: [hlcoders] This should not be possible, yet it works!? Dunno if this applies to HL2 coding(I swear, if I don't get MSVC 2003 soon*grumble*) but pretty much half the crap I added to my MOD required me to add members to CBaseEntity. All plugin authors need to do is update their plugin everytime the mod is updated, mod authors make the declaration of those classes available on their website, just like with their FGD. simple. -- ** Draco Coder for Perfect Dark http://perfectdark.game-mod.net ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] This should not be possible, yet it works!?
Dunno if this applies to HL2 coding(I swear, if I don't get MSVC 2003 soon*grumble*) but pretty much half the crap I added to my MOD required me to add members to CBaseEntity. All plugin authors need to do is update their plugin everytime the mod is updated, mod authors make the declaration of those classes available on their website, just like with their FGD. simple. -- ** Draco Coder for Perfect Dark http://perfectdark.game-mod.net ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] This should not be possible, yet it works!?
I still see the reason. You could derive your entities from the baseclass and put a reset in that entity. When you want to reset stuff, you could put that in an own baseclass even so you derive from 2 classes.. Imo, there is no excuse to alter the baseentity or baseplayer class. === Stefan Hendriks FunDynamic & RealBot http://www.fundynamic.nl http://realbot.bots-united.com http://www.bots-united.com === -Oorspronkelijk bericht- Van: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Namens Tony "omega" Sergi Verzonden: maandag 10 januari 2005 13:36 Aan: hlcoders@list.valvesoftware.com Onderwerp: RE: [hlcoders] This should not be possible, yet it works!? There are instances when working on a mod that you need to alter the base class though. One example would be a round reset system. Unless you want to search for every possible entity by name to reset them, you'd want to add a reset function at base level, so you can just call base->reset or what have you. That's just one example of why you'd need to modify base classes, out of possible hundreds. -omega -Original Message- From: Christian Marschalek [mailto:[EMAIL PROTECTED] Sent: January 10, 2005 7:28 AM To: hlcoders@list.valvesoftware.com Subject: Re: [hlcoders] This should not be possible, yet it works!? > mod authors should *not* be limited or restricted by plug-in authors. > plug-in authors *should* be limited and restricted by mod authors >:) Why should *anyone* be restriced by *anyone*? Hacking classes renders the purpose of object oriented programming somewhat useless... ;) ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders -- No virus found in this incoming message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 265.6.9 - Release Date: 06/01/2005 -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 265.6.9 - Release Date: 06/01/2005 ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] This should not be possible, yet it works!?
There are instances when working on a mod that you need to alter the base class though. One example would be a round reset system. Unless you want to search for every possible entity by name to reset them, you'd want to add a reset function at base level, so you can just call base->reset or what have you. That's just one example of why you'd need to modify base classes, out of possible hundreds. -omega -Original Message- From: Christian Marschalek [mailto:[EMAIL PROTECTED] Sent: January 10, 2005 7:28 AM To: hlcoders@list.valvesoftware.com Subject: Re: [hlcoders] This should not be possible, yet it works!? > mod authors should *not* be limited or restricted by plug-in authors. > plug-in authors *should* be limited and restricted by mod authors >:) Why should *anyone* be restriced by *anyone*? Hacking classes renders the purpose of object oriented programming somewhat useless... ;) ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders -- No virus found in this incoming message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 265.6.9 - Release Date: 06/01/2005 -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 265.6.9 - Release Date: 06/01/2005 ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] This should not be possible, yet it works!?
> mod authors should *not* be limited or restricted by plug-in authors. > plug-in authors *should* be limited and restricted by mod authors >:) Why should *anyone* be restriced by *anyone*? Hacking classes renders the purpose of object oriented programming somewhat useless... ;) ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] This should not be possible, yet it works!?
If you're willing to detour, nobody's restricted by anybody :D ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] This should not be possible, yet it works!?
Rofl, i think its a bi-directional thing here ;) You either change your mod code and destroy plugins... Or plugins force you to code how the sdk is intended to be used... Ie, derive from classes and not just hack into them :P === Stefan Hendriks FunDynamic & RealBot http://www.fundynamic.nl http://realbot.bots-united.com http://www.bots-united.com === -Oorspronkelijk bericht- Van: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Namens Hasan Aljudy Verzonden: maandag 10 januari 2005 13:09 Aan: hlcoders@list.valvesoftware.com Onderwerp: Re: [hlcoders] This should not be possible, yet it works!? mod authors should *not* be limited or restricted by plug-in authors. plug-in authors *should* be limited and restricted by mod authors >:) On Mon, 10 Jan 2005 11:38:00 +0100, S. Hendriks <[EMAIL PROTECTED]> wrote: > So in short, as long as everybody does not touch the cBaseEntity and > cBasePlayer but make an own class to derive from it, the plugins will > be safe... > > The irony! :) > > === > Stefan Hendriks > FunDynamic & RealBot > http://www.fundynamic.nl > http://realbot.bots-united.com > http://www.bots-united.com > > === > > -Oorspronkelijk bericht- > Van: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Namens Jeffrey "botman" > Broome > Verzonden: maandag 10 januari 2005 0:13 > Aan: hlcoders@list.valvesoftware.com > Onderwerp: Re: [hlcoders] This should not be possible, yet it works!? > > > S. Hendriks wrote: > > This question is for Valve guys actually; > > ...but others can answer it also. > > > My concern is, how does Valve think about this, and , will this > > cause trouble later on the road? I can see problems arise when a mod > > update has some updates in the cBaseEntity and cBasePlayer classes, > > and we are basicly messed up? > > This only works because you have a definition of the CBaseEntity and > CBasePlayer class. As long as MOD teams don't change these, things > will probably work fine. As soon as someone adds or removes member > variables and/or functions to these classes, your plugin's version of > these classes will differ from the MOD's version of these classes. > > If it was a perfect world, there would be some way to "freeze" these > classes in the SDK so that MOD authors would not touch them. Since > you can't do that, you can't guarantee that things won't crash when > you start accessing variables or functions within a class that you > don't have a proper class definition for. > > There has been some speculation that MOD's COULDN'T change CBaseEntity > even if they wanted to because the engine depended on this class (i.e. > was also compiled with this class definition). If a MOD team changed > CBaseEntity, the engine's definition would differ from the MOD's > definition and the game would crash. No proof of this theory was > presented and I have not been able to find any engine interface that > relied on the CBaseEntity class definition as it exists in the SDK > source code (but I haven't spent a lot of time looking so perhaps the > engine does have a dependency on CBaseEntity). > > > Also, with the VAC going to hit the scene again, this might get > > caught > > > as 'a cheating program'? Obviously this is not the intention! > > No. VAC checks for modified code on the clients. VAC doesn't check > for hacks on the server (there really isn't a good way to do this). > Server operators are completely free to install their own plugins that > give them "special abilities" that aren't available to other clients. > For example, I could create a plugin that constantly refreshes my > health when it gets low. This plugin would allow me to cheat, but > would only allow me to cheat on my own server. Anybody that had > installed Admin-MOD for Half-Life knows what types of things are > possible through plugins, but these aren't caught by VAC. > > -- > Jeffrey "botman" Broome > > ___ > To unsubscribe, edit your list preferences, or view the list archives, > please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders > > ___ > To unsubscribe, edit your list preferences, or view the list archives, > please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders > > ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] This should not be possible, yet it works!?
mod authors should *not* be limited or restricted by plug-in authors. plug-in authors *should* be limited and restricted by mod authors >:) On Mon, 10 Jan 2005 11:38:00 +0100, S. Hendriks <[EMAIL PROTECTED]> wrote: > So in short, as long as everybody does not touch the cBaseEntity and > cBasePlayer but make an own class to derive from it, the plugins will be > safe... > > The irony! :) > > === > Stefan Hendriks > FunDynamic & RealBot > http://www.fundynamic.nl > http://realbot.bots-united.com > http://www.bots-united.com > > === > > -Oorspronkelijk bericht- > Van: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Namens Jeffrey "botman" > Broome > Verzonden: maandag 10 januari 2005 0:13 > Aan: hlcoders@list.valvesoftware.com > Onderwerp: Re: [hlcoders] This should not be possible, yet it works!? > > > S. Hendriks wrote: > > This question is for Valve guys actually; > > ...but others can answer it also. > > > My concern is, how does Valve think about this, and , will this cause > > trouble later on the road? I can see problems arise when a mod update > > has some updates in the cBaseEntity and cBasePlayer classes, and we > > are basicly messed up? > > This only works because you have a definition of the CBaseEntity and > CBasePlayer class. As long as MOD teams don't change these, things will > probably work fine. As soon as someone adds or removes member variables > and/or functions to these classes, your plugin's version of these > classes will differ from the MOD's version of these classes. > > If it was a perfect world, there would be some way to "freeze" these > classes in the SDK so that MOD authors would not touch them. Since you > can't do that, you can't guarantee that things won't crash when you > start accessing variables or functions within a class that you don't > have a proper class definition for. > > There has been some speculation that MOD's COULDN'T change CBaseEntity > even if they wanted to because the engine depended on this class (i.e. > was also compiled with this class definition). If a MOD team changed > CBaseEntity, the engine's definition would differ from the MOD's > definition and the game would crash. No proof of this theory was > presented and I have not been able to find any engine interface that > relied on the CBaseEntity class definition as it exists in the SDK > source code (but I haven't spent a lot of time looking so perhaps the > engine does have a dependency on CBaseEntity). > > > Also, with the VAC going to hit the scene again, this might get caught > > > as 'a cheating program'? Obviously this is not the intention! > > No. VAC checks for modified code on the clients. VAC doesn't check for > hacks on the server (there really isn't a good way to do this). Server > operators are completely free to install their own plugins that give > them "special abilities" that aren't available to other clients. For > example, I could create a plugin that constantly refreshes my health > when it gets low. This plugin would allow me to cheat, but would only > allow me to cheat on my own server. Anybody that had installed > Admin-MOD for Half-Life knows what types of things are possible through > plugins, but these aren't caught by VAC. > > -- > Jeffrey "botman" Broome > > ___ > To unsubscribe, edit your list preferences, or view the list archives, > please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders > > ___ > To unsubscribe, edit your list preferences, or view the list archives, please > visit: > http://list.valvesoftware.com/mailman/listinfo/hlcoders > > ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] This should not be possible, yet it works!?
So in short, as long as everybody does not touch the cBaseEntity and cBasePlayer but make an own class to derive from it, the plugins will be safe... The irony! :) === Stefan Hendriks FunDynamic & RealBot http://www.fundynamic.nl http://realbot.bots-united.com http://www.bots-united.com === -Oorspronkelijk bericht- Van: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Namens Jeffrey "botman" Broome Verzonden: maandag 10 januari 2005 0:13 Aan: hlcoders@list.valvesoftware.com Onderwerp: Re: [hlcoders] This should not be possible, yet it works!? S. Hendriks wrote: > This question is for Valve guys actually; ...but others can answer it also. > My concern is, how does Valve think about this, and , will this cause > trouble later on the road? I can see problems arise when a mod update > has some updates in the cBaseEntity and cBasePlayer classes, and we > are basicly messed up? This only works because you have a definition of the CBaseEntity and CBasePlayer class. As long as MOD teams don't change these, things will probably work fine. As soon as someone adds or removes member variables and/or functions to these classes, your plugin's version of these classes will differ from the MOD's version of these classes. If it was a perfect world, there would be some way to "freeze" these classes in the SDK so that MOD authors would not touch them. Since you can't do that, you can't guarantee that things won't crash when you start accessing variables or functions within a class that you don't have a proper class definition for. There has been some speculation that MOD's COULDN'T change CBaseEntity even if they wanted to because the engine depended on this class (i.e. was also compiled with this class definition). If a MOD team changed CBaseEntity, the engine's definition would differ from the MOD's definition and the game would crash. No proof of this theory was presented and I have not been able to find any engine interface that relied on the CBaseEntity class definition as it exists in the SDK source code (but I haven't spent a lot of time looking so perhaps the engine does have a dependency on CBaseEntity). > Also, with the VAC going to hit the scene again, this might get caught > as 'a cheating program'? Obviously this is not the intention! No. VAC checks for modified code on the clients. VAC doesn't check for hacks on the server (there really isn't a good way to do this). Server operators are completely free to install their own plugins that give them "special abilities" that aren't available to other clients. For example, I could create a plugin that constantly refreshes my health when it gets low. This plugin would allow me to cheat, but would only allow me to cheat on my own server. Anybody that had installed Admin-MOD for Half-Life knows what types of things are possible through plugins, but these aren't caught by VAC. -- Jeffrey "botman" Broome ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders