PDA

View Full Version : Fat bald old man seeks help to stop buttox getting whooped at Quake 3


Crusty Monkey
November 4th, 2004, 08:45 AM
Hello and Heeeeeeellllllpppppppppp.

I have recently been introduced to Quake 3 (why did it take so long???) and have rapidly discovered that running, jumping and shooting is not all that there is to this excellent game.

I have seen people in various arenas using some king of 'thingey' to allow them to pull themselves up to ceilings, walls etc - looks like a light beam but my mate says that it's a grappling iron.

How on earth do I get/use of these things? I have searched Google many long hours and found no end of 'cheats' but this is not helping as whenever I type in the '/ give grappling iron' at the command prompt in the game it tells me that cheats are not enabled on the server.

Can anyone help? I don't seriously think that it will help me win, but it may stop me losing quite so badly.

Any other tips of stuff like this would be gratefully received.

Thank you to all who reply - if you see me on an arena I'll give you a free frag (like I'll have a choice)

:D

Chimera[NL]
November 4th, 2004, 09:19 AM
Well when people have it while playing on the same server as you're on, I imagine you have that weapon aswell. It might be under the 1 or the 0 key. I can't imagine people having it and you not, that wouldn't be fair. I have never seen that grappling hook btw.

RADiator
November 4th, 2004, 09:40 AM
The grappling hook needs to be binded to your inventory in order for you to be able to utilize it. Though you have to customize your config for it to work, but if you’re up for it, here is how you can do it:

First make sure you're using the game project, then open up g_client.c. Go to the void ClientSpawn(gentity_t *ent) function and find these lines:


client->ps.stats[STAT_WEAPONS] = ( 1 << WP_MACHINEGUN );
if ( g_gametype.integer == GT_TEAM ) {
client->ps.ammo[WP_MACHINEGUN] = 50;
} else {
client->ps.ammo[WP_MACHINEGUN] = 100;
}


These essentially assign the player's inventory to one machinegun and some bullets, depending on whether or not it's teamplay.

Now to give the player additional weapons you'll use something like this:


client->ps.stats[STAT_WEAPONS] |= ( 1 << WP_GRAPPLING_HOOK );


Put the above line just under the ones having to do with the machinegun. Notice that I'm using |= instead of just = as done in the original code above for the machinegun. Since the machinegun is the FIRST weapon assigned, you can use the assignment operator, but additional weapons need to use the |= in order to add them to the inventory, without overwriting the first one. If you look a few lines down in the code you'll see that the gauntlet is added to the player's inventory in the same way as I showed you with the grappling hook above. The above line will let you give players any weapon at spawning, just by changing the WP_ enumeration.

Now open up g_items.c. Since we're going to be using some of the models and effects for the grappling hook, and no maps have the actual weapon, we need to precache it. We also need to precache the lightning gun so the grappling rope is also loaded. Find the void ClearRegisteredItems( void ) function and add these to the existing list of weapons to be registered:


// Willi - Grappling Hook
RegisterItem( BG_FindItemForWeapon( WP_LIGHTNING ) );
RegisterItem( BG_FindItemForWeapon( WP_GRAPPLING_HOOK ) );

Chimera[NL]
November 4th, 2004, 09:57 AM
Originally posted by RADiator
The grappling hook needs to be binded to your inventory in order for you to be able to utilize it. Though you have to customize your config for it to work, but if you’re up for it, here is how you can do it:

Holy crap.

Crusty Monkey
November 4th, 2004, 10:21 AM
Is this not to create a game where it is enabled rather than use it in a game where it is already enabled???

Sorry for asking a dumb question!

If it is to enable my own one....the next dumb question is what is the 'Game Project'? I have coded a bit in the past so am guessing that it is the source code for a game, in some language or other. Where is this prject and what do I use to edit?

Once again, thanks for your help so far...

If you want to see the arena I have seen it on - try 81.100.56.104

:confused:

RADiator
November 4th, 2004, 11:01 AM
No, you use this code to enable the grappling hook in general (hence it should work on all the arenas). I would imagine "g_client.c" being one of the exec files in game's general directory. I found this info thru google and personally have never tried implementing the hook myself, however I have seen it at work. But in general seeing as you are rather new to the game and gaming in general (am I right) you should proceed carefully, I don’t know how punk buster (anti-cheat protection utility) will react to this sort of code alteration, there might be another way to enable it though seeing as other players use it on servers. But believe me you do not want to be banned by punk buster.

Crusty Monkey
November 5th, 2004, 06:15 AM
Thanks for all of your help, I'll be careful...