Re: Adding RPG to Half-Life (Whas [hlcoders] [OT] Server-side plugins and mod ownership)
Look for a decent, open source mud client written in C++(or c even), snatch the networking code from that and put it in cl_dll maybe? Using VGUI2/key bindings etc, you could probly make a really nice MUD client in HL2 -- ** Draco Coder for Perfect Dark and Kreedz Climbing 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] Re: [OT] [OT] Safe way of setting weapon damages?
British_Bomber wrote: I'm sure there was a point in there somewhere, but this is just going to turn into flames. lol, you missed it, it was about 15 posts ago :D -- ** Draco Coder for Perfect Dark and Kreedz Climbing 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
[hlcoders] CreateServerRagdoll, please i need help with this.
This is a multi-part message in MIME format. -- [ Picked text/plain from multipart/alternative ] Please, can someone help in this???. What is the problem with CreateServerRagdoll? How I can create the ragdoll in the point I wanted??. When I call the function, the ragdoll creates just in the spawn point Hi. I have problems when i kill a entity and the Server ragdoll. The problem is that when I kill this entity, become ragdoll in the point that he spawned before, not in the point I killed it. For example. In my mod, (pilotable strider), i drive the strider forward about 10 meters. When I kill them, I call CreateServerRagdoll function, and this create a ragdoll, but in the point I spawned him before. How I can tell the ragdoll to create in the point the entity is at this moment???. What I'm doing bad?. Thanks. -- ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Joining server if round in progress
When a player joins a server, and a round is in progress does the player need to actually be spawned? What I would like to happen is when a player joins it displays the team menu, they select a team and then puts them in spectate mode on the team they selected. Is it necessary to spawn the player when the first join the server? Also if the round is over there will be a Intermission menu with a inbetween round timer in this menu they can choose other weapons etc. I wasn't sure if the player ALWAYS has to be spawned, just do not drawl the model etc, or if there was another way of doing this. 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] Removing Dead Corpses
OK... On a round based game, how do i do to remove dead bodies when the round ends? Are the ragdolls client-only or they are on the server too? I respawned all the possible entities but the dead bodies still there... ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Intermission
During the intermission, I use gpGlobals-curtime to check if it is greater then the roundtimer. If it is, we goto the intermission screen, (currently just a scoreboard) Where I am sort of stuck is, when im in intermission do I want to reset the gpGlobals-curtime to 0 while in intermission, then reset again when the next round starts? Or what would be the best way to do this? 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
Re: [hlcoders] Linker error on fresh mod
It's my first post here, so don't bash me if it's stupid or rehashes something said before, ok? :-P When I followed the SDK tutorial I encountered the same error: The instruction is to load the game_sdk project and compile it, which didn't work. I suspected that Everything_SDK was there for a reason, too. Compiled it, and everything worked from there on. Felt like a typical forgot to mention the first step that needs to be done only once :-) Hope this helps, Robert On Wed, 16 Feb 2005 11:12:55 +0100, [EMAIL PROTECTED] wrote: In reply to http://www.mail-archive.com/hlcoders@list.valvesoftware.com/msg10543.html I simply did a delete local game content, on the SDK, and manually deleted the games then loaded the SDK back up. I continued to get the error.. and no, game_shared/studio_shared.cpp was not included in project so i added it. compile error: c:\games\all41\src\game_shared\studio_shared.cpp(7): fatal error C1083: Cannot open include file: 'cbase.h': No such file or directory the other places it's used, cbase.h is included through precompiled headers (client and hl) but this apparantly doesn't work for the studiomdl.pch. including the dlls/cbase.h or the cl_dll/cbase.h merely has the effect of producing a lot of compile-time errors ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders -- Using Opera's revolutionary e-mail client: http://www.opera.com/m2/ ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] [OT] Server-side plugins and mod ownership
About your stats-issue: You can't trust my server. The minute I have your binaries on my server, I can change their behaviour without any server plugin. I could just disassemble and patch them. I could actually not run a server at all and only pretend that I am one to your stats system. The only way to do what you described would be a list of trusted IPs/steamids/whatever in my opinion. Ruari O'Sullivan schrieb: Consider a mod using some kind of persistence to track stats, or reward players across games for putting in effort. This isn't so far-fetched; a mod could easily be a multiplayer persistent RPG somewhere between the instanced worlds model of Guild Wars and the more general model of shared worlds containing hundreds of people. This is purely hypothetical at the moment, I think - I haven't been following the variety of HL2 mods in the works - but it's certainly a situation in which server plugins would be as undesirable as clientside cheats, and for the same reasons. Even for a cookie cutter team-A-shoots-team-B mod which tracks and rewards play time or kills across games, like the rank system in RTCW or proposed for Battlefield 2, could presumably be hacked to effectively powerlevel every player on the server with a server plugin. It's also been impossible for a fair while to get a good casual game of TFC, since there's no filter for server contains real people, not more bloody bots. The interests of admins and of players apparently do not always coincide, and that's hurt the game. In contrast, server plugins have only improved the CS and NS experiences. These things should really be resolved in ways that are agreeable to everyone - server admins, mod authors and most of all players. At the moment, plugin authors and server admins hold all the power. I don't recall who suggested it, but a server browser filter to look for specific plugins or to look for 'pure' servers only, with the default being pure servers so that people new to the mod get the original experience by default. This alone would drive up demand for pure servers, so pure servers wouldn't simply disappear completely as they have with some mods. That would give both server admins and players a veto, but still leave mod authors out in the cold. Allowing mod authors to detect and respond to server plugins in a function in the SDK would give mod authors their own veto, or - even better - allow them to detect modified servers and simply not track statistics for them. This could also perhaps let mod authors whitelist specific plugins so servers running them show up as 'pure'; simple things like nextmap come to mind. I'm sure we can all agree that the right plugins can make a mod a better experience, so I can't imagine any mod author wanting to ban plugins outright if both they and players are able just to distinguish between pure and modified servers. Survival of the fittest applies to mods, just as it does to plugins. If a mod author's actions are unpopular with server admins, that mod will lose servers; it's not as though mod authors would be completely unaccountable, as server admins are at present. As Lance said, it doesn't have to be a war. There can be an appropriate balance of power. Just my two cents on all this. :p -randomnine- ___ 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] Access trainingmap setting in liblist.gam from the GameMenu.res in HL2 based mod?
Is there a command known to access the trainingmap (HazardCourse, I suspect) setting in the liblist.gam inside the GameMenu.res, Just like OpenNewGameDialog uses the startmap setting (MOD is HL2-based)? I tried google et al. and I didn't find a thing besides You can extract all commands from a file inside half-life engine.gcf [Rockefeller], not too informative (especially if one hasn't got the original half-life under steam), but at least i found this list that way :-P (Yes I know I could just use an engine map x command instead, but I'd prefer a more clean way of doing this) Thanks, Robert -- Using Opera's revolutionary e-mail client: http://www.opera.com/m2/ ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Intermission
Ok, thanks Yahn That is kind of what I figured... r00t 3:16 CQC Gaming www.cqc-gaming.com - Original Message - From: Yahn Bernier [EMAIL PROTECTED] To: hlcoders@list.valvesoftware.com Sent: Wednesday, February 16, 2005 10:25 AM Subject: RE: [hlcoders] Intermission No, you need to have your own timer (can be based on gpGlobals-curtime/frametime). Treat gpGlobals-curtime as read-only in the code. The engine needs to control it and it gets reset every time the map restarts anyway. Yahn -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of r00t 3:16 Sent: Wednesday, February 16, 2005 6:40 AM To: hlcoders@list.valvesoftware.com Subject: [hlcoders] Intermission During the intermission, I use gpGlobals-curtime to check if it is greater then the roundtimer. If it is, we goto the intermission screen, (currently just a scoreboard) Where I am sort of stuck is, when im in intermission do I want to reset the gpGlobals-curtime to 0 while in intermission, then reset again when the next round starts? Or what would be the best way to do this? 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 ___ 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] CreateServerRagdoll, please i need help with this.
It's hard to debug this with such a small amount of information, but I can try to help: Server-side ragdolls don't have this bug in Half-Life 2. The people you grab with the super gravity gun, the citizens who get skewered by striders, and enemies you kill by running over with the jeep are all server-side ragdolls that are correctly positioned (modulo client-side animation transitions IK) by the code. Do any of those things still work in your mod? Try them. This test will tell you if the underlying system is at fault, or the particular entity. The most likely bug is that your mod is updating the bones of the entity on the server differently than HL2. The simplest thing to check is the bone cache. Before you call CreateServerRagdoll, call InvalidateBoneCache() on your entity. If you've disabled server-side animation or something like that in your mod, then the server code could have an incorrect notion of where the bones should be. Jay -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jose Luis Gonzalez Sent: Wednesday, February 16, 2005 1:44 AM To: hlcoders@list.valvesoftware.com Subject: [hlcoders] CreateServerRagdoll, please i need help with this. This is a multi-part message in MIME format. -- [ Picked text/plain from multipart/alternative ] Please, can someone help in this???. What is the problem with CreateServerRagdoll? How I can create the ragdoll in the point I wanted??. When I call the function, the ragdoll creates just in the spawn point ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Send user message
Hey, how can I send a message to a client. If I want to send the shake message, it keeps saying that I have to enable sv_cheats. There is a way to send that kind of strings without this CVAR. Can anyone help me? Thanks, Frank anxiro Weima. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Joining server if round in progress
I'm not sure if this is the proper solution to that or not, but what I do is when the intial spawn function is called I manually set the players team to spectator, then the command on the MOTD opens up the team select. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Joining server if round in progress
Sorry for the 2 emails but I also meant to add that, that way when they select a team you can wait to spawn them until the round has started again ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Freeing VGUI Textures / Texture IDs
VGUI has always been my down fall, but all VGUI panels are present at any given time, but hidden correct? If that is the case then my assumtion would be that in order to move the textures anywhere there would only be 1 place to go, destruction, but then you would have to reload them when they were called again. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] CreateServerRagdoll, please i need help with this. To Jay
This is a multi-part message in MIME format. -- [ Picked text/plain from multipart/alternative ] Thanks Jay, but don't work. If i call BecomeRagdollOnClient works perfectly. I use InvalidateBoneCache before calling CreateServerRagdoll and don't work, still appears in Spawn point. I tell you what I'm doing. I create a driveable strider in my mod: Pilotable Strider Mod. I derived it from CPropVehicleDrivable and I use the calculateIKlocks functions in npc_strider and c_strider. The Strider works perfect, I control him like a vehicle, but the only problem is when I call to CreateServerRagdoll. I don't want to use the BecomeRagdollOnClient instead CreateServerRagdoll. I want to solve this, please. What can I do now?. The CPropVehicleDrivable class is a good class to create this vehicle??. It's possible that this class calls InvalidateBoneCache or something like this??. Thanks. -- ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] [OT] Server-side plugins and mod ownership
So why should I make it easy for you? -randomnine- Pavol Marko wrote: About your stats-issue: You can't trust my server. The minute I have your binaries on my server, I can change their behaviour without any server plugin. I could just disassemble and patch them. I could actually not run a server at all and only pretend that I am one to your stats system. The only way to do what you described would be a list of trusted IPs/steamids/whatever in my opinion. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] VGUI is trapping the keyboard code!!!
Hi, I added a OnKeyCodePressed function to the scoreboard to intercept the jump key events and toggle the mouse on and off when the user presses the jump key (keycode is getched with gameuifuncs-GetVGUI2KeyCodeForBind( jump ); ) All worked fine and dandy till i realised that this effectively prevents any movement while my scoreboard is up (mouse mode or no mouse mode). I poked around and found that the client.dll needs to tell the engine wether or not to handle the key event (for such things as chatting). This is also fine but i don't see the code for this in the vgui2.lib project. So my question is simple, how do i make it so my panel doesn't trap the code and so that it gets processed on the server even when the scoreboard is up? Here's the function: (m_iJumpKey is the ID of the key corresponding to the jump bind.) void CClientScoreBoardDialog::OnKeyCodePressed(KeyCode code) { if (m_iJumpKey != KEY_NONE m_iJumpKey == code ) { if (m_bInMouseMode) SetMouseInputEnabled(false); else SetMouseInputEnabled(true); m_bInMouseMode = !m_bInMouseMode; } else { BaseClass::OnKeyCodePressed( code ); } } The BaseClass (vgui::Panel) only handles the escape key... I wouldn't mind using say right click mouse to toggle, but to capture that event i need to SetMouseInputEnabled(true); wich pops up the cursor anyways and doesn't help me at all... Thanks in advance... Imperio59. -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 265.8.8 - Release Date: 14/02/2005 ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] VGUI is trapping the keyboard code!!!
You can't have the scoreboard intercept keyboard events (SetKeyBoardInputEnabled(false) must be set) if you want the engine to process them ( which also means OnKeyCodePressed() won't be called as the scoreboard won't get key presses). - Alfred -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Imperio59 Sent: Wednesday, February 16, 2005 5:30 PM To: hlcoders@list.valvesoftware.com Subject: [hlcoders] VGUI is trapping the keyboard code!!! Hi, I added a OnKeyCodePressed function to the scoreboard to intercept the jump key events and toggle the mouse on and off when the user presses the jump key (keycode is getched with gameuifuncs-GetVGUI2KeyCodeForBind( jump ); ) All worked fine and dandy till i realised that this effectively prevents any movement while my scoreboard is up (mouse mode or no mouse mode). I poked around and found that the client.dll needs to tell the engine wether or not to handle the key event (for such things as chatting). This is also fine but i don't see the code for this in the vgui2.lib project. So my question is simple, how do i make it so my panel doesn't trap the code and so that it gets processed on the server even when the scoreboard is up? Here's the function: (m_iJumpKey is the ID of the key corresponding to the jump bind.) void CClientScoreBoardDialog::OnKeyCodePressed(KeyCode code) { if (m_iJumpKey != KEY_NONE m_iJumpKey == code ) { if (m_bInMouseMode) SetMouseInputEnabled(false); else SetMouseInputEnabled(true); m_bInMouseMode = !m_bInMouseMode; } else { BaseClass::OnKeyCodePressed( code ); } } The BaseClass (vgui::Panel) only handles the escape key... I wouldn't mind using say right click mouse to toggle, but to capture that event i need to SetMouseInputEnabled(true); wich pops up the cursor anyways and doesn't help me at all... Thanks in advance... Imperio59. -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 265.8.8 - Release Date: 14/02/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] CreateServerRagdoll, please i need help with this. To Jay
I use InvalidateBoneCache before calling CreateServerRagdoll and don't work, still appears in Spawn point. Did you try the other tests I mentioned? Do other server ragdolls appear in the right places in your mod? It's important to figure out which code is broken. You need to isolate the problem to a small section of code or data to make it easier to figure out what is wrong. If other server ragdolls can be created fine in your mod, then the problem is likely related to the state or implementation of the strider entity, not the server ragdoll code itself. I tell you what I'm doing. I create a driveable strider in my mod: Pilotable Strider Mod. I derived it from CPropVehicleDrivable and I use the calculateIKlocks functions in npc_strider and c_strider. It would be a lot less complex if you derived CNPC_Strider from IServerVehicle and implemented the relevant vehicle stuff in the strider. Are you using a four-wheel simulation for the strider? (that's the main thing you gain by using CPropVehicleDriveable) How does the strider move? It's really hard to know what could be wrong - there isn't much information here. I'd want to step through CreateServerRagdoll in your mod in the debugger and see where the positions are wrong. But I can offer another guess - perhaps you are creating a four-wheel vehicle for the strider. But you aren't using the physics for that vehicle in your mod - you're just animating the strider and moving it like the NPC code does. So the strider ragdoll is synchronized to the position of the vehicle instead of the animated entity. Anyway, the easiest way to fix that would be to teleport the vehicle (or destroy it) before you create the ragodll. What is the movetype of your strider? I guess another simple way to check this is to do this: Physics_prop_ragdoll.cpp CBaseEntity *CreateServerRagdoll( CBaseAnimating *pAnimating, int forceBone, const CTakeDamageInfo info, int collisionGroup, bool bUseLRURetirement ) { // comment out this line! //SyncAnimatingWithPhysics( pAnimating ); //... If that fixes the problem, then you've got some physics object attached to the strider that is causing the ragdoll to spawn at the other location. This shouldn't be possible if your movetype is MOVETYPE_VPHYSICS, but if you're using MOVETYPE_STEP then it's likely to be the problem. Jay ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Send user message
UserMessageBegin and MessageEnd are pretty straightforward - paste some sample code? ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Removing Dead Corpses
Find out the entity name for ragdolls, search through all entities(forget func for that, its in util.cpp if memory serves) with that class name and call a function to destroy it(base ent should have one) -- ** Draco Coder for Perfect Dark and Kreedz Climbing 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