Jump to content

MUG

Members
  • Posts

    902
  • Joined

  • Last visited

Everything posted by MUG

  1. First off, you need a Search and Destroy map in your base folder. Here is one: http://jkhub.org/fil...tooine-streets/ How to play: There are two teams. Attackers and Defenders. When you join a team, you will spawn in a weapons room. There will be two rows of guns, and one row of explosives: Select one weapon from each row, you will be pushed away if you try to take more. Once the teams are ready, someone can push a button at the exit of the spawn room which will trigger the start of the match. The gates will open and you will be able to enter the map. A timer will count down from two minutes: If you die, you are out until the end of the round. In a properly set up server, you will have no force other than heal, which you can use to regenerate your health between fire-fights. If either team are all killed, the other team wins. If the timer runs out Defenders win. The Attackers must go to one of two bomb sites and hold down use to arm a bomb. The Defenders should try to prevent them doing this until time runs out. A bomb site If the Attackers manage to arm a bomb a new 45 second timer will appear: If time runs out, the bomb explodes violently, and Defenders loose. If the Defenders die they loose. The Defenders must attempt to defuse the bomb by holding down use. If they do this, they win. If the Attackers are all killed, the defenders must still defuse the bomb to win. At the end of a round, all players are returned to their spawn room, and there is a 30 second delay before the next round begins. I suggest that during the intermission, the teams switch, so that they have to play both as Attackers and Defenders. I suggest you play best of three rounds (first team to win twice) or best of five (first team to win three rounds) per match, switching teams every round. That's all there is to it! Hosting a Game of Search and Destroy: Search and Destroy MUST be run within the capture the flag gametype, or it will not work. To set your server to capture the flag, put this command into either your server cfg, or into rcon: seta g_gametype 8 To enable weapons and set up force correctly so that only heal is available, and force regenerates at the right speed, use these lines in your cfg: seta g_weaponDisable 0 seta g_maxForceRank 7 seta g_forceRegenTime "150" seta g_forcePowerDisable "262142" I recommend the use of clanmod on your server (your players don't need to install it, but can if they wish) this will allow you to have much more dangerous guns, and to remove the lightsaber (to stop all the bullets getting deflected). Once you have clanmod installed, go to gamedata/clanmod and open the file called "damages.cfg" (create it with notepad if it doesn't exist), delete everything in it and paste these lines into it: /////////////////////////////////////////////////////////////////////// //CUSTOM SABER DAMAGES set g_saberLocking "1" set g_saberLockFactor "2" set g_locationBasedDamage "0" set g_saberTraceSaberFirst "0" set cm_customSaberDmgs "0" //Change this to 1 to use saber damages below set g_mSaberDMGTwirl "10" set g_mSaberDMGKick "2" set g_mSaberDMGDualKata "90" set g_mSaberDMGStaffKataMin "60" set g_mSaberDMGStaffKataMax "70" set g_mSaberDMGMultiMin "2" set g_mSaberDMGMultiMax "70" set g_mSaberDMGSpecialMin "2" set g_mSaberDMGSpecialMax "90" set g_mSaberDMGRedNormal "100" set g_mSaberDMGRedNormalMin "2" set g_mSaberDMGRedNormalMax "120" set g_mSaberDMGRedDFAMin "2" set g_mSaberDMGRedDFAMax "180" set g_mSaberDMGRedBackMin "2" set g_mSaberDMGRedBackMax "30" set g_mSaberDMGYellowNormal "60" set g_mSaberDMGYellowOverheadMin "2" set g_mSaberDMGYellowOverheadMax "80" set g_mSaberDMGYellowBackMin "2" set g_mSaberDMGYellowBackMax "25" set g_mSaberDMGBlueNormal "35" set g_mSaberDMGBlueLungeMin "2" set g_mSaberDMGBlueLungeMax "30" set g_mSaberDMGBlueBackMin "2" set g_mSaberDMGBlueBackMax "30" /////////////////////////////////////////////////////////////////////// //CUSTOM WEAPON DAMAGES set cm_E11_BLASTER_DAMAGE "70" set cm_E11_BLASTER_VELOCITY "9001" set cm_DISRUPTOR_MAIN_DAMAGE "100" set cm_DISRUPTOR_ALT_DAMAGE "200" set cm_BOWCASTER_DAMAGE "160" set cm_BOWCASTER_VELOCITY "6500" set cm_REPEATER_DAMAGE "60" set cm_REPEATER_ALT_DAMAGE "50" set cm_REPEATER_SPLASH_DAMAGE "30" set cm_REPEATER_VELOCITY "9001" set cm_DEMP2_DAMAGE "120" set cm_DEMP2_ALT_DAMAGE "16" set cm_DEMP2_VELOCITY "2000" set cm_FLECHETTE_DAMAGE "35" set cm_FLECHETTE_ALT_DAMAGE "60" set cm_FLECHETTE_VELOCITY "6000" set cm_ROCKET_DAMAGE "150" set cm_ROCKET_SPLASH_DAMAGE "100" set cm_ROCKET_VELOCITY "2000" set cm_CONCUSION_DAMAGE "150" set cm_CONCUSION_SPLASH_DAMAGE "80" set cm_CONCUSION_ALT_DAMAGE "200" set cm_CONCUSION_VELOCITY "3000" set cm_STUN_BATON_DAMAGE "200" set cm_MELEE_SWING1_DAMAGE "200" set cm_MELEE_SWING2_DAMAGE "9001" set cm_THERMAL_DETONATOR_DAMAGE "999" set cm_THERMAL_DETONATOR_ALT_DAMAGE "999" set cm_THERMAL_DETONATOR_VELOCITY "1000" set cm_TRIP_MINE_DAMAGE "9999" set cm_DET_PACK_DAMAGE "999" set cm_DET_PACK_SPLASH_DAMAGE "999" set cm_BRYAR_PISTOL_DAMAGE "20" set cm_BRYAR_PISTOL_VELOCITY "9001" /////////////////////////////////////////////////////////////////////// Then save the file. This will give you the improved gun damages and projectile velocities. Also look near the bottom of your server.cfg and check there is a line: exec damages.cfg If there isn't, add it just before where you start the map and the very bottom of the server.cfg. Also look for the line set cm_starting_weapons "1" and set it to "1" if it isn't already. If the line isn't there, simply copy it into your server.cfg. All you need to do now is start up the map using the map command eg: map SD_Tatooine You can either place this at the bottom of your server.cfg, or by typing it into rcon.
  2. First off, you need a Search and Destroy map in your base folder. Here is one: http://jkhub.org/fil...tooine-streets/ How to play: There are two teams. Attackers and Defenders. When you join a team, you will spawn in a weapons room. There will be two rows of guns, and one row of explosives: Select one weapon from each row, you will be pushed away if you try to take more. Once the teams are ready, someone can push a button at the exit of the spawn room which will trigger the start of the match. The gates will open and you will be able to enter the map. A timer will count down from two minutes: If you die, you are out until the end of the round.In a properly set up server, you will have no force other than heal, which you can use to regenerate your health between fire-fights.If either team are all killed, the other team wins.If the timer runs out Defenders win.The Attackers must go to one of two bomb sites and hold down use to arm a bomb.The Defenders should try to prevent them doing this until time runs out.A bomb site If the Attackers manage to arm a bomb a new 45 second timer will appear: If time runs out, the bomb explodes violently, and Defenders loose.If the Defenders die they loose.The Defenders must attempt to defuse the bomb by holding down use. If they do this, they win.If the Attackers are all killed, the defenders must still defuse the bomb to win.At the end of a round, all players are returned to their spawn room, and there is a 30 second delay before the next round begins. I suggest that during the intermission, the teams switch, so that they have to play both as Attackers and Defenders. I suggest you play best of three rounds (first team to win twice) or best of five (first team to win three rounds) per match, switching teams every round. That's all there is to it! Hosting a Game of Search and Destroy: Search and Destroy MUST be run within the capture the flag gametype, or it will not work. To set your server to capture the flag, put this command into either your server cfg, or into rcon: seta g_gametype 8To enable weapons and set up force correctly so that only heal is available, and force regenerates at the right speed, use these lines in your cfg: seta g_weaponDisable 0 seta g_maxForceRank 7 seta g_forceRegenTime "150" seta g_forcePowerDisable "262142"I recommend the use of clanmod on your server (your players don't need to install it, but can if they wish) this will allow you to have much more dangerous guns, and to remove the lightsaber (to stop all the bullets getting deflected). Once you have clanmod installed, go to gamedata/clanmod and open the file called "damages.cfg" (create it with notepad if it doesn't exist), delete everything in it and paste these lines into it: /////////////////////////////////////////////////////////////////////// //CUSTOM SABER DAMAGES set g_saberLocking "1" set g_saberLockFactor "2" set g_locationBasedDamage "0" set g_saberTraceSaberFirst "0" set cm_customSaberDmgs "0" //Change this to 1 to use saber damages below set g_mSaberDMGTwirl "10" set g_mSaberDMGKick "2" set g_mSaberDMGDualKata "90" set g_mSaberDMGStaffKataMin "60" set g_mSaberDMGStaffKataMax "70" set g_mSaberDMGMultiMin "2" set g_mSaberDMGMultiMax "70" set g_mSaberDMGSpecialMin "2" set g_mSaberDMGSpecialMax "90" set g_mSaberDMGRedNormal "100" set g_mSaberDMGRedNormalMin "2" set g_mSaberDMGRedNormalMax "120" set g_mSaberDMGRedDFAMin "2" set g_mSaberDMGRedDFAMax "180" set g_mSaberDMGRedBackMin "2" set g_mSaberDMGRedBackMax "30" set g_mSaberDMGYellowNormal "60" set g_mSaberDMGYellowOverheadMin "2" set g_mSaberDMGYellowOverheadMax "80" set g_mSaberDMGYellowBackMin "2" set g_mSaberDMGYellowBackMax "25" set g_mSaberDMGBlueNormal "35" set g_mSaberDMGBlueLungeMin "2" set g_mSaberDMGBlueLungeMax "30" set g_mSaberDMGBlueBackMin "2" set g_mSaberDMGBlueBackMax "30" /////////////////////////////////////////////////////////////////////// //CUSTOM WEAPON DAMAGES set cm_E11_BLASTER_DAMAGE "70" set cm_E11_BLASTER_VELOCITY "9001" set cm_DISRUPTOR_MAIN_DAMAGE "100" set cm_DISRUPTOR_ALT_DAMAGE "200" set cm_BOWCASTER_DAMAGE "160" set cm_BOWCASTER_VELOCITY "6500" set cm_REPEATER_DAMAGE "60" set cm_REPEATER_ALT_DAMAGE "50" set cm_REPEATER_SPLASH_DAMAGE "30" set cm_REPEATER_VELOCITY "9001" set cm_DEMP2_DAMAGE "120" set cm_DEMP2_ALT_DAMAGE "16" set cm_DEMP2_VELOCITY "2000" set cm_FLECHETTE_DAMAGE "35" set cm_FLECHETTE_ALT_DAMAGE "60" set cm_FLECHETTE_VELOCITY "6000" set cm_ROCKET_DAMAGE "150" set cm_ROCKET_SPLASH_DAMAGE "100" set cm_ROCKET_VELOCITY "2000" set cm_CONCUSION_DAMAGE "150" set cm_CONCUSION_SPLASH_DAMAGE "80" set cm_CONCUSION_ALT_DAMAGE "200" set cm_CONCUSION_VELOCITY "3000" set cm_STUN_BATON_DAMAGE "200" set cm_MELEE_SWING1_DAMAGE "200" set cm_MELEE_SWING2_DAMAGE "9001" set cm_THERMAL_DETONATOR_DAMAGE "999" set cm_THERMAL_DETONATOR_ALT_DAMAGE "999" set cm_THERMAL_DETONATOR_VELOCITY "1000" set cm_TRIP_MINE_DAMAGE "9999" set cm_DET_PACK_DAMAGE "999" set cm_DET_PACK_SPLASH_DAMAGE "999" set cm_BRYAR_PISTOL_DAMAGE "20" set cm_BRYAR_PISTOL_VELOCITY "9001" ///////////////////////////////////////////////////////////////////////Then save the file. This will give you the improved gun damages and projectile velocities. Also look near the bottom of your server.cfg and check there is a line: exec damages.cfgIf there isn't, add it just before where you start the map and the very bottom of the server.cfg. Also look for the line set cm_starting_weapons "1"and set it to "1" if it isn't already. If the line isn't there, simply copy it into your server.cfg. All you need to do now is start up the map using the map command eg: map SD_TatooineYou can either place this at the bottom of your server.cfg, or by typing it into rcon.
  3. Hydroball is a game in which two teams try to get a ball into each others goal. First to 10 goals wins. Both teams start near their goal, with the ball starting in the centre. Whenever someone scores the ball is immediately put in the centre with no break. To install it, download this http://jediknight3.f...com/file/;69338 (sorry for the jk2files link, we don't have it here yet) and extract it to your gamedata folder. That should give you a hydroball folder containing a hydroball.pk3 and a few text files. Your Moves and Controls Swim around just like in base JKA, aiming with the mouse and using W,A,S,D and your crouch/jump keys to move. The more force you have the faster you go. If you have the ball, your force will go down as you move. Punch with mouse 1 when you don't have the ball. This will slow you down, and your force won't regenerate while you are punching. Punching another player will lower their force and sometimes make them drop the ball. Diving tackle with mouse 2. This uses 50 force, so you wont be much use for a while after doing it. You will fly forwards when you release mouse 2, and can smash into other players. This will knock them over for a moment, and usually makes them drop the ball if they have it. Throw the ball with mouse 1. Hold this down a long time to charge up a big throw. You can also use force push and pull to move players and the ball. Doing so will quickly drain away all your force leaving you useless for some time however. Good Tactics Some people like to assign set player positions, others like to switch around as the game goes on, either method works well, so I wont list positions and how to play each role, I will give you a general overview of what you need to do as a team to win a game of Hydroball. Hold The Centre At All Costs Whenever either team scores, the ball immediately returns to the centre. If you go on the offensive, bringing your entire team to the enemy goal, the moment you score the enemy may already have someone waiting at the centre, and can often immediately score, sometimes several times in a row. For this reason, you should always keep at least one player in the centre to get the ball, or stop the enemy from getting it. Getting The Ball When the enemy has the ball, the nearest player with enough force to catch him should chase him and use a tackle to make him drop the ball. Now, ideally, a second player on your team with more force should get the ball and get it out of there. If no one else is to hand get the ball, and get rid of it as soon as you can. You wont have enough force to do much with it yourself, and the player you just tackled will no doubt try to tackle you back, so throw it to the nearest team-mate. Scoring With The Ball Now that you have the ball, you will loose force as you move, making you slow down quite quickly. If you try and swim too far with the ball, other faster players will tackle you easily. As soon as you get the ball: -If you are near enough, and no enemy is near enough to tackle you while you charge up, take a shot at goal. -If you are too far away, pass to the player nearest the goal who isn't surrounded by enemies. -If you are about to get tackled, pass to the nearest other player, even if he is behind you. If you pass backward, your team-mate can probably pass forward again before anyone can reach him, so this is far better than getting tackled. -If you are the closest player to the enemy goal, and don't have time to score, try to pass to an ally behind you, if that isn't an option, throw the ball forward as far as you can, and hope an ally gets to it first. Getting Into Position After throwing the ball or getting tackled, you are probably low on force and wont be much use for a moment. While your force increases, get into a useful position: -If no one is guarding centre, go straight there, this way, regardless who scores, you can get an easy goal, or prevent your enemy getting one. -If your allies are going for goal ahead of you, get in position to get the ball back if your team drops it. -If your allies have the ball and are behind you, get in a good place to receive the ball and score. -If the enemy has the ball and you are near your goal, position yourself to tackle anyone they might pass to, or to tackle them if they come your way. -If the enemy has the ball and you are near their goal, you probably wont be of much use getting it back, so position yourself to receive the ball and score if your team gets it. Obviously, be intelligent, and spread your team out throughout the arena. If you just all get into a massive scrum around the ball, you wont achieve anything. Defending Your Goal For the most part, if someone takes a good shot at your goal, you cant really stop them, as the ball goes too fast. Your only real chance is to use force push on the ball as it approaches you. Usually, you are far better off going after the man with the ball than trying to block the ball as he throws it. As such, if you want to assign a goal keeper, you are usually better off having a defender, who stays back keeping his force high, and can quickly take out anyone who is about to score. Hope this helps you all.
  4. Hydroball is a game in which two teams try to get a ball into each others goal. First to 10 goals wins. Both teams start near their goal, with the ball starting in the centre. Whenever someone scores the ball is immediately put in the centre with no break. To install it, download this http://jediknight3.f...com/file/;69338 (sorry for the jk2files link, we don't have it here yet) and extract it to your gamedata folder. That should give you a hydroball folder containing a hydroball.pk3 and a few text files. Your Moves and Controls Swim around just like in base JKA, aiming with the mouse and using W,A,S,D and your crouch/jump keys to move. The more force you have the faster you go. If you have the ball, your force will go down as you move.Punch with mouse 1 when you don't have the ball. This will slow you down, and your force won't regenerate while you are punching. Punching another player will lower their force and sometimes make them drop the ball.Diving tackle with mouse 2. This uses 50 force, so you wont be much use for a while after doing it. You will fly forwards when you release mouse 2, and can smash into other players. This will knock them over for a moment, and usually makes them drop the ball if they have it.Throw the ball with mouse 1. Hold this down a long time to charge up a big throw.You can also use force push and pull to move players and the ball. Doing so will quickly drain away all your force leaving you useless for some time however.Good Tactics Some people like to assign set player positions, others like to switch around as the game goes on, either method works well, so I wont list positions and how to play each role, I will give you a general overview of what you need to do as a team to win a game of Hydroball. Hold The Centre At All Costs Whenever either team scores, the ball immediately returns to the centre. If you go on the offensive, bringing your entire team to the enemy goal, the moment you score the enemy may already have someone waiting at the centre, and can often immediately score, sometimes several times in a row. For this reason, you should always keep at least one player in the centre to get the ball, or stop the enemy from getting it. Getting The Ball When the enemy has the ball, the nearest player with enough force to catch him should chase him and use a tackle to make him drop the ball. Now, ideally, a second player on your team with more force should get the ball and get it out of there. If no one else is to hand get the ball, and get rid of it as soon as you can. You wont have enough force to do much with it yourself, and the player you just tackled will no doubt try to tackle you back, so throw it to the nearest team-mate. Scoring With The Ball Now that you have the ball, you will loose force as you move, making you slow down quite quickly. If you try and swim too far with the ball, other faster players will tackle you easily. As soon as you get the ball: -If you are near enough, and no enemy is near enough to tackle you while you charge up, take a shot at goal. -If you are too far away, pass to the player nearest the goal who isn't surrounded by enemies. -If you are about to get tackled, pass to the nearest other player, even if he is behind you. If you pass backward, your team-mate can probably pass forward again before anyone can reach him, so this is far better than getting tackled. -If you are the closest player to the enemy goal, and don't have time to score, try to pass to an ally behind you, if that isn't an option, throw the ball forward as far as you can, and hope an ally gets to it first. Getting Into Position After throwing the ball or getting tackled, you are probably low on force and wont be much use for a moment. While your force increases, get into a useful position: -If no one is guarding centre, go straight there, this way, regardless who scores, you can get an easy goal, or prevent your enemy getting one. -If your allies are going for goal ahead of you, get in position to get the ball back if your team drops it. -If your allies have the ball and are behind you, get in a good place to receive the ball and score. -If the enemy has the ball and you are near your goal, position yourself to tackle anyone they might pass to, or to tackle them if they come your way. -If the enemy has the ball and you are near their goal, you probably wont be of much use getting it back, so position yourself to receive the ball and score if your team gets it. Obviously, be intelligent, and spread your team out throughout the arena. If you just all get into a massive scrum around the ball, you wont achieve anything. Defending Your Goal For the most part, if someone takes a good shot at your goal, you cant really stop them, as the ball goes too fast. Your only real chance is to use force push on the ball as it approaches you. Usually, you are far better off going after the man with the ball than trying to block the ball as he throws it. As such, if you want to assign a goal keeper, you are usually better off having a defender, who stays back keeping his force high, and can quickly take out anyone who is about to score. Hope this helps you all.
  5. Here is the end result we are aiming for: It lets us connect the top of a cylinder to other flat brushes, allowing us to make a round hole in a floor or similar. It doesnt matter if you are using a cylinder, or an inverted cylinder, this should work for both. Method: First off, because radiant doesnt know how to cap a cylinder, we need to make a bevel. Make a brush around the lower right corner of your cylinder: Now, go into the "Curve" menu, and select bevel: now cap it like so: Delete the bevel and the top part of the endcap: now move the bottom part up to the top and copy/paste/rotate it around: Add brushes if you need it to be wider:
  6. This series will teach you everything you need to know to make maps from the ground up, I hope you find it helpful. I recommend watching them in maximum quality so you can see what I am doing clearly. Part 1: The Basics and Your First Room Part 2: Brushwork and Shaders Part 3: Liquids, Lighting and Compiling Part 4: Doors, Triggers, Soundsets and Grid Sizes Part 5: Point Based Entities - Pickups, NPCs, Models and Effects Part:6 Messages Deathdrops, Speakers, Teleporters and Jump-pads
  7. MUG gives us his explanation on how to create your own skin of any kind! This guide will teach you how to make a custom skin and get it into the game. I will assume you know how to open a pk3 for this tutorial. 1. Getting all the files you will need and setting up a workspace A skin consists of several different elements which we need to include. If you want to use a custom model you should find everything you need in its pk3. If you want to use a base model, you will find what you need in base\assets1.pk3 As an example for this tutorial I will use "Rodian" from base. Create a new folder wherever you like (on the desktop, in my documents or whatever) and name it something like "workspace". Doesnt matter what you call it. Inside "workspace" make a folder called "base" Inside of that make a folder called "models" and inside that make a folder called "players" Now we can grab the model and texture files Go into assets1.pk3 (or the pk3 for the custom model if you are using one) and navigate to models\players. Then find the folder for the model you want (in my case "rodian") and copy it into the models\players folder we made earlier. We also need to copy over the folder called "_humanoid" from models\players in assets1. We wont include this in the finished pk3, it just allows us to use modview to look at how the skin will look when we are making it. If you are working on a jk2 model, you will need the jk2 humanoid folder which can be found in the game's assets or download it here. These are the most important files, I will cover how to add shaders, custom sounds, npc support and bot support etc further down. Our workspace should be looking like this: http://i.imgur.com/bS99z.jpg and we should have a load of files inside the modelname (rodain) folder: http://i.imgur.com/KSSB1.jpg I will quickly outline what all of these types of files are. I'll give you more details on each further down. Texture files - (usually .jpg or .tga) These are the actual images that are wrapped around a model and are the main thing we are here to change. Icon files - (usually .jpg or .tga) These are the menu images for each different skin the model has. .skin files - These tell the game which textures to wrap around which part of the model. There is one for each team skin, the default skin (no team) and any extra varients added (usually for sp npcs) model.glm - This is the actual model which we wont be editing. We don't need to include it if we are using a base model, but we need it while we are working on it for modview to work. sounds.cfg - This tells the game which sound set to give the model. 2. Modview In order to look at the skin, we can use a program called modview. To load a model in modview: Start up modview hit open and navigate to the folder we created (workspace\base\models\players\rodian) open model.glm A couple of error messages will pop up telling you that modview couldn't find any shaders and a stormtrooper caps texture. Hit OK on those and you should be presented with this: http://i.imgur.com/GPsUf.jpg If that didnt work check that you copied the _humanoid folder correctly and that all your folders are laid out propperly (base\models\players\WhateverModelYouAreEditing) You may also need to use the JK2 _humanoid folder instead if it's a jk2 model. You can get that here. You can click and drag about to rotate the model and right-click and drag to zoom. You can also use this button:http://i.imgur.com/L23d4.jpg to fit the camera to the model. The button to the right of this refreshes textures (if we have saved changes to any images since we opened modview it will update them) On the left there are a load of things of interest. The options under "skins available" allow us to switch to the different team skins and variants set up by the .skin files in our model's folder by double clicking them. "Sequences" lets us take a look at the model doing any of the game's player animations (these come from the _humanoid folder). You can use the play/stop/forward/back etc buttons on the tool bar too. 3. Editing The Textures This is probably the main thing you wanted to do. First thing you need to do is work out which textures you want to edit. Are you just making a new version of the default skin? Which parts do you need to change? It should be fairly evident which textures are what if you look at them. If you aren't sure which textures you need to edit, take a look in the relevant .skin file (ie model_default.skin to see what textures are used in the default no-team skin option) It will list all of the textures used. To edit the textures you need some kind of graphics editor. I use The GIMP which is free, most people prefer Photoshop. I'm not going to teach you how to get good at editing the images, there are tons of tutorials for that all over the net but I will walk you through the process: Open the texture you want to edit in your chosen graphics package Edit it however you like To see your changes, save the image then press this button in modview: http://i.imgur.com/bR3s0.jpg Repeat for any other textures you want to edit. 4. Overwrite or Model Copy or .skin or what At the moment, our skin is set up to replace the default Rodian textures. This would mean that every rodian you see, be it another player, yourself or an NPC, will have your altered textures. If that is what you were aiming for then you are done! You don't need to worry about shaders, bot files etc, the game will just load the default ones from assets. All you need to do is remove the _humanoid folder and any files in the rodian folder that you didnt change and then throw the "models" folder into a pk3. If you are using a custom model, you will need to include all of the files you didn't change too, so all you need to delete is _humanoid There are several other options at this point, that allow you to not replace the default skin but create an edited copy of the model with a different skin which wont replace it. The simplest way is Making A New .Skin Option: This lets us just create an extra skin option for the existing model (much like the team skins) The base game doesnt display these on the profile menu (many mods such as japlus do) but they can always be accessed via the console with /model modelname/skinname (eg /model rodian/blue or /model rodian/mugsedit) The upside of doing things this way is that if someone doesn't have your skin installed, they will see you as the default skin for the model instead of kyle. The downside, is you have to use the base sounds and team skins. Alternatively there is Making A Renamed Copy of The Model which is the most common way that people make skins. This lets you change everything about the model (sounds, team skins, bot files, etc) The downside is that there are way more things you need to set up, the file size is bigger and you will look like kyle to anyone without the skin installed. Finally there is Making A Customisation Species which allows users to choose/mix up various head/torso/legs options for the model. You aren't limited to using head/torso/legs, if you like you can have something like bag colour selection on a wookie instead of leg options or things of that nature. This is the most complex and time consuming option to set up (especially if you want lots of parts to choose from) but is by far the most complete method. Players without the mod will see the model/default skin for the model if you are adding customisation options to a base model. If it's a custom model other players will see kyle. 4.1 Making A New .Skin Option Rename all of the textures you have changed (eg i'm changing "head.jpg" to "head_mugsedit.jpg" etc) Make a copy of "model_default.skin" and rename it to model_whatever (eg "model_mugsedit") Open the copy in notepad or notepad++ or whatever you like to use to edit text files. Replace every instance of the old name for a texture you have renamed with your new name (eg i need to replace every "head" with "head_mugsedit") ctrl+h is your friend here. See 5. for more info on .skin files. Save the file An easy way to test if this has worked is to load up the model in modview and select your skin on the left. If any parts look wrong or are missing (or indeed if your option isn't listed), check if you messed up that part of the .skin. Now you need to make an icon for the new .skin. (See 7. below) You will also need to make a shader if any of the textures you altered use one. See the Shaders section below. All you need to do now is remove _humanoid, any unaltered textures, all the original icons and .skin files. Basically delete everything that isn't renamed by you or made by you. Finally, copy all the contents of your "base" folder into a pk3. 4.2 Making A Renamed Copy of The Model For this method you do not need to rename any of the textures Rename the model's folder (eg rodian) to a name of your choice (eg mugsrodian) Open model_default.skin in notepad or any other plain text editor. Press ctrl+h to bring up the replace menu Replace all /OriginalModelFolderName/ with /NewModelFolderName/ (eg replace all /rodian/ with /mugsrodian/) include the "/" as sometimes you might replace something you shouldn't. Remove _humanoid and paste everything in the "base" folder into a pk3 You will need to make copies of any shaders relating to the model (see 7. below) as well as bot file npcs etc. 4.3 Making a Custom Species This lets you set up a character creation menu where you can select A torso, a head and a lower part from a list. This is pretty involved to do, so I would recommend reading the rest of the tutorial (especially sections 4.1 and 5) before you attempt it. You can still make a default skin, team skins and alternate skin options (as in 4.1) which can be selected from the menu as normal in addition to the character being on the custom menu. I would also suggest having a pk3 for a custom species model to look at as you read this. (here's one I made earlier. Take note that all the actual textures are base, so not included in the pk3) The way this works, is we create a .skin file for each "part" that the player can choose. Each part will need its own icon, so that it can be selected from the menu. The naming convention is that all head parts are named head_a1.skin head_a2.skin etc, torsos: torso_a1.skin and leg parts are lower_a1.skin. The matching icons should be icon_head_a1.jpg etc. The head .skin files should each only include the lines from the model_default that relate to the head, the torso .skins should only include the lines from the torso and the lower parts only including the lines for the legs. For example, if adding Species support to the Jedi (as in the link above) the lines should be divided like so: model_default hipsa,models/players/jedi/legs.tga hipsa_torso,models/players/jedi/torso.tga l_lega,models/players/jedi/boots_hips.tga l_lega_cap_hips_off,models/players/stormtrooper/caps.tga r_lega,models/players/jedi/boots_hips.tga r_lega_cap_hips_off,models/players/stormtrooper/caps.tga hipsa_cap_r_leg_off,models/players/stormtrooper/caps.tga hipsa_cap_l_leg_off,models/players/stormtrooper/caps.tga hips_cap_torso_off,models/players/stormtrooper/caps.tga torso,models/players/stormtrooper/caps.tga torsoa,models/players/jedi/torso.tga torsoa_l_shoulder,models/players/jedi/torso.tga torsoa_r_shoulder,models/players/jedi/torso.tga r_arma,models/players/jedi/torso.tga r_handa,models/players/jedi/basic_hand.tga r_handa_wrist,models/players/jedi/torso.tga r_handa_cap_r_arm_off,models/players/stormtrooper/caps.tga r_arma_cap_r_hand_off,models/players/stormtrooper/caps.tga r_arma_cap_torso_off,models/players/stormtrooper/caps.tga l_arma,models/players/jedi/torso.tga l_handa,models/players/jedi/basic_hand.tga l_handa_wrist,models/players/jedi/torso.tga l_handa_cap_l_arm_off,models/players/stormtrooper/caps.tga l_arma_cap_l_hand_off,models/players/stormtrooper/caps.tga l_arma_cap_torso_off,models/players/stormtrooper/caps.tga torsoa_cap_l_arm_off,models/players/stormtrooper/caps.tga torsoa_cap_r_arm_off,models/players/stormtrooper/caps.tga head,models/players/jedi/torso.tga heada,models/players/jedi/head_01.tga heada_face,models/players/jedi/face_01.tga heada_eyes_mouth,models/players/jedi/mouth_eyes.tga headb,*off headb_face,*off headb_eyes_mouth,*off head_cap_torso_off,models/players/stormtrooper/caps.tga torso_cap_head_off,models/players/stormtrooper/caps.tga torso_cap_hips_off,models/players/stormtrooper/caps.tga head_a1 head,models/players/jedi/torso.tga heada,models/players/jedi/head_01.tga heada_face,models/players/jedi/face_01.tga heada_eyes_mouth,models/players/jedi/mouth_eyes.tga headb,*off headb_face,*off headb_eyes_mouth,*off head_cap_torso_off,models/players/stormtrooper/caps.tga torso_a1 hipsa_torso,models/players/reborn/forc_torso.tga torso,models/players/stormtrooper/caps.tga torsoa,models/players/reborn/forc_torso.tga torsoa_l_shoulder,models/players/reborn/forc_torso.tga torsoa_r_shoulder,models/players/reborn/forc_torso.tga r_arma,models/players/reborn/forc_torso.tga r_handa,models/players/reborn/forc_hand.tga r_handa_wrist,models/players/reborn/forc_torso.tga r_handa_cap_r_arm_off,models/players/stormtrooper/caps.tga r_arma_cap_r_hand_off,models/players/stormtrooper/caps.tga r_arma_cap_torso_off,models/players/stormtrooper/caps.tga l_arma,models/players/reborn/forc_torso.tga l_handa,models/players/reborn/forc_hand.tga l_handa_wrist,models/players/reborn/forc_torso.tga l_handa_cap_l_arm_off,models/players/stormtrooper/caps.tga l_arma_cap_l_hand_off,models/players/stormtrooper/caps.tga l_arma_cap_torso_off,models/players/stormtrooper/caps.tga torsoa_cap_l_arm_off,models/players/stormtrooper/caps.tga torsoa_cap_r_arm_off,models/players/stormtrooper/caps.tga torso_cap_head_off,models/players/stormtrooper/caps.tga torso_cap_hips_off,models/players/stormtrooper/caps.tga lower_a1 hipsa,models/players/reborn/forc_legs.tga l_lega,models/players/reborn/forc_boots_hips.tga l_lega_cap_hips_off,models/players/stormtrooper/caps.tga r_lega,models/players/reborn/forc_boots_hips.tga r_lega_cap_hips_off,models/players/stormtrooper/caps.tga hipsa_cap_r_leg_off,models/players/stormtrooper/caps.tga hipsa_cap_l_leg_off,models/players/stormtrooper/caps.tga hips_cap_torso_off,models/players/stormtrooper/caps.tga Once you have decided how you wish to separate the parts, it's just a case of copying the .skin file, renaming it and editing it with the new texture paths for the alternate part options, then making the icons for each. Finally, all that is left to do is include a "playerchoice.txt" file. This allows you to set up colour options for the character, in combination with shaders. I never use this option as I always favoured adding more texture options instead. In order for the Species menu to work, you will need to include a defaulted version of playerchoice.txt however, even when not using the feature. Simply save a notepad file with these contents to the model folder: playerchoice.txt *white { setcvar ui_char_color_red 255 setcvar ui_char_color_green 255 setcvar ui_char_color_blue 255 } It is also vital to include a model_default.skin as not including it can cause crashes for some players when a player uses invalid part names. If you don't want model_default to be selectable from the menu, simply don't include the icon for it. And finally, remember to remove the humanoid folder before distributing your mod. 5. .Skin Files These tell the game which textures to wrap around which part of the character model. There is usually one for each of the team colours (model_red.skin and model_blue.skin) and one for the default skin (model_default.skin). Sometimes models have a few extra ones which are meant to be hidden (model_whatever.skin) but are usable via /model modelname/skinname. Some models also add hidden skins to the profile menu. .Skin files are also used for each selectable part in a Customisation Species (see 4.3 for details) A .skin file is just a list of each part of the model and the name of the texture to wrap around it. Presented like this: part_name,location/of/texture.tga (eg hips,models/players/rodian/l_leg.tga) Base .skins seem to always have .tga at the end of a line even if the texture isn't a tga, I'm pretty sure that it just makes no difference at all what extension you put at the end, so basically don't worry if it says tga and you used a jpg, it will still work. If you want to completely hide part of the model, instead of typing a texture name put: *off (eg head_tophat,*off) You will see models/players/stormtrooper/caps.tga several times on nearly ever model. This is the texture that is used for basically every "cap" in the game. A cap is, in layman's terms, the stump when limbs are dismembered. 6. Making Icons The easiest way is to copy "icon_default" and rename it to match your .skin file (eg "icon_mugsedit"). If you want to make your own icon, there are a few ways of doing it, you can either use a screenshot (click here for lots of useful commands for screenshots) or you can use these replica base icon backgrounds made by SiLink and a shot from modview to make an icon to match the base ones. 7. Shaders A shader is basically something the lets you apply various visual effects and a few other properties to textures. Often, a .skin file points to a shader instead of a texture. A single .shader file can contain multiple shaders. They can be opened in notepad and look like this: http://i.imgur.com/3VXrz.jpg The highlighted part is one shader, named c3po_leg if we were to put models/players/protocol/c3po_leg in a .skin file, that would point to this. This particular shader takes a texture of the same name "models/players/protocol/c3po_leg" and applies a environment map to it (gfx/effects/chr_inv) and then also applies a specular map (models/players/protocol/c3po_leg_s), this basically makes it shiny. I wont go into how you can design shaders of your own here, I will just teach you how to fix up a shader to work for your modified skin. (ie if we had made a new version of the texture models/players/protocol/c3po_leg and wanted to give it the same shiny maps as the original one) Setting up the shaders for a reskin of a base model can be awkward as they hide nearly all of the character shaders in one file. Unsurprisingly, shaders can be found in the "shaders" folder. How to adjust a shader to work for renamed textures (if you have made new textures for a .skin file/Customisation Species) or for a renamed model: First we need to find the original shader we need to change. If we are using a custom model, there is probably just a .shader file in the shaders folder of it's pk3. Just copy paste it and give the copy a new name. If there are multiple .shader files, you probably need to copy and paste them all with new names. If we are using a base model this is a bit more awkward: open up base/assets1.pk3 go into /shaders and open players.shader This file lists a load of shaders from all the playermodels in the game. We need to track down all the relevant shader files for our model, and paste them into a new .shader file. go to your workspace and make a base/shaders folder if you don't already have one save a blank txt file as a .shader file (eg mugsrodian.shader) The name doesn't matter but keep it relevant so you know what it is. in players.shader hit ctrl+f and search for the original name of the model you are editing (eg players/rodian) This should bring you to the name line for a shader. If you don't find anything your model probably doesn't have any shaders so you can skip this entire section. If you do find a shader, copy the whole thing across to the blank .shader file we made Click find next and copy any other shaders you find. Here is how my mugsrodian.shader looked for the rodian models/players/rodian/fins { culltwosided { map models/players/rodian/fins blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen lightingDiffuse } } models/players/rodian/tint_torso { { map models/players/rodian/tint_torso rgbGen lightingDiffuseEntity } { map models/players/rodian/tint_torso blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA detail rgbGen lightingDiffuse } } models/players/rodian/tint_l_leg { { map models/players/rodian/tint_l_leg rgbGen lightingDiffuseEntity } { map models/players/rodian/tint_l_leg blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA detail rgbGen lightingDiffuse } } models/players/rodian/tint_boots_belt_vest { { map models/players/rodian/tint_boots_belt_vest rgbGen lightingDiffuseEntity } { map models/players/rodian/tint_boots_belt_vest blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen lightingDiffuse } } models/players/rodian/tint_l_boot { { map models/players/rodian/tint_l_boot rgbGen lightingDiffuseEntity } { map models/players/rodian/tint_l_boot blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA detail rgbGen lightingDiffuse } } Now, we need to edit all of this (or the shader file(s) you copied if this is a custom model) to work for our skin. If you copied the entire model and renamed the folder this is easy: ctrl+h and replace all of the original model folder with your new name (eg replace models/players/rodian with models/players/mugsrodian) and save. Done. If you have copied and renamed textures this is a bit more trickey: Find any textures that you changed (either manually or with crtlf+f) and change them to their new name, in both the shader name and the shader code: Eg if I altered the rodian/fins texture and made a new rodian/mugsfinstexture, I need to change models/players/rodian/fins { culltwosided { map models/players/rodian/fins blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen lightingDiffuse } } to models/players/rodian/mugsfins { culltwosided { map models/players/rodian/mugsfins blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen lightingDiffuse } } If one of the shaders doesn't have any changed textures in it you can just delete that entire shader. You don't need it. If you want to know more about shaders I'm sure that someone intelligent will make a full tutorial about their deeper workings and I will link it here. 8. Sounds Choosing what sound bank your character uses is dead easy. In base/assets0.pk3 in the folder sound/chars there are a huge list of folders for different characters, you can look inside them and play the sounds to hear what they are like. Pick one of those folders. (alternatively you can use sounds from a custom model if you copy their sound folder into your workspace) To set it: Open the sounds.cfg file in your model's folder in workspace (if there isn't one there, create a new one in notepad) In the first line type the name of the sound folder you want on the second line type "m" or "f" for the character's gender (used in kill messages etc) eg: rodian1 m If you like, you can create your own sounds for your model either by recording your own or by getting some sounds from somewhere. All the sounds need to be in mono and need to be either .wav or .mp3. A free sound editor/recorder is . Then it is just a case of looking at all the sounds used in one of the default sound folders and creating your own folder laid out in the same way with new sound files named the same. If you don't include a sound, the default one will be used (the same sounds you hear when you don't have another player's skin)
  8. Sometimes when you start up JKA you get the error "VM_Create on UI failed" and instead of starting up JKA you will get this console: Solutions If you are running Windows 7 or 10, you need to give JKA administrative privileges. The easiest way to achieve this is to disable User Account Control. To do this, go to the "User Accounts" page within the control panel and select "Turn User Account Control on or off". If for some mad reason you wish not to do this, find where you installed jka (usually C:\Program Files\LucasArts\Star Wars Jedi Knight Jedi Academy\gamedata) and right click "jamp.exe" (or if you are playing Single Player, jasp.exe) and choose properties. On the "Compatibility" tab tick "Run this program as an administrator". The usual cause if you aren't running Windows 7 or 10, is that you still have a Jedi Academy process running. (this sometimes happens if jka fails to close correctly) To fix it open up the task manager by right clicking on a blank part of your task bar: and end every "jamp.exe" or "jasp.exe" process you can see:
  9. Sometimes when you start up JKA you get the error "VM_Create on UI failed" and instead of starting up JKA you will get this console: Solutions If you are running Windows 7 or Vista, you need to give jka administrative privileges. The easiest way to achive this is to disable User Account Control. To do this, go to the "User Accounts" page within the control panel and select "Turn User Account Control on or off". If for some mad reason you wish not to do this, find where you installed jka (usually C:\Program Files\LucasArts\Star Wars Jedi Knight Jedi Academy\gamedata) and right click "jamp.exe" (or if you are playing Single Player, jasp.exe) and choose properties. On the "Compatibility" tab tick "Run this program as an administrator". The usual cause if you aren't running vista or Windows 7, is that you still have a Jedi Academy process running. (this sometimes happens if jka fails to close correctly) To fix it open up the task manager by right clicking on a blank part of your task bar: and end every "jamp.exe" or "jasp.exe" process you can see:
  10. Simply type: /cg_deferplayers 0 into the console, or add it to a .cfg file and exec it. Alternatively, you can find this option in the menu under Setup > Game Options > Defer Player Models: On/Off There is a reason that this is not set like this normally; the game lags for a second when the new model is loaded and whenever a player connects, so I don't recommend using this if you are playing a match, but for normal play, the occasional small lag spike isn't really a problem. To undo this, just set it back to 1.
  11. Simply type: /cg_deferplayers 0 into the console, or add it to a .cfg file and exec it. Alternatively, you can find this option in the menu under Setup > Game Options > Defer Player Models: On/Off There is a reason that this is not set like this normally; the game lags for a moment when the new model is loaded and whenever a player connects, so I don't recommend using this if you are playing a match, but for normal play, the occasional small lag spike isn't really a problem. To undo this, just set it back to 1.
  12. There is a great deal of information that can be displayed in jka by setting a few cvars to 1: Open notepad or some other text editor like notepad++ Copy the following into it: //Display the lagometer (graph which shows how good your connection to the server is) cg_lagometer 1 //Display your Frames per second Counter cg_drawfps 1 //display the round timer cg_drawtimer 1 //display the radar in team games and vehicles cg_drawradar 1 //display your team mates' HP and locations in team games. cg_drawteamoverlay 1 Click save as select "save as type:" "all files(*.*)" type a name and add .cfg to the end. (eg display.cfg) Start jka and open the console type /exec [your file name] (eg /exec display) To disable any of the displays we have added, simply change the 1 to a 0 and re-save and exec the file. You can also manually type each line into the console rather than using a cfg file (eg /cg_drawfps 1 in the console to turn on the fps meter)
  13. There is a great deal of information that can be displayed in jka by setting a few cvars to 1: Open notepad or some other text editor like notepad++Copy the following into it://Display the lagometer (graph which shows how good your connection to the server is) cg_lagometer 1 //Display your Frames per second Counter cg_drawfps 1 //display the round timer cg_drawtimer 1 //display the radar in team games and vehicles cg_drawradar 1 //display your team mates' HP and locations in team games. cg_drawteamoverlay 1Click save asselect "save as type:" "all files(*.*)"type a name and add .cfg to the end. (eg display.cfg)Start jka and open the consoletype /exec [your file name] (eg /exec display)To disable any of the displays we have added, simply change the 1 to a 0 and re-save and exec the file. You can also manually type each line into the console rather than using a cfg file (eg /cg_drawfps 1 in the console to turn on the fps meter)
  14. VSTRs (Variable Strings) are a neat little way of assigning a command (or group of commands) a name which you can enter to use. For example: /set haddock say I like haddock sets a vstr called haddock that makes the user say "I like haddock" on use. The format is: /set [vstrname] [command(s)] To use a vstr: /vstr [vstr name] eg /vstr haddock It is important to note that JKA tends not to remember vstrs between sessions, so if you want to save them, create a cfg. A few things you can do with vstrs You can bind a vstr to a key: /bind x vstr haddock You can even make a vstr with multiple commands just like in a bind: /set spam "say I hate white people;wait 200;say lololololololollololoollollol" would make you say "I hate white people" and then say "lolololololololololo" after a short delay whenever you type /vstr spam Make a vstr that changes what it does (useful for a number of advanced things): /set haddock "say hi;set haddock say no you" the first time you /vstr haddock it will make you say "hi" the second time you will say "no you" Vstr uses with servers You can set up vstrs in your server cfg or in other configs. These can be used via rcon to quickly do things with one command. Additionally there is an admin command in japlus (and I think in some other mods) "amvstr" which can be used by admins to make the server run vstrs. This means that server admins can effectively give their admins access to some specific commands that they have set with server side vstrs, without needing to give them rcon access. Making A Command Selection Cycle: You know the force selection on Q E and F? Imagine if you could do that, but instead of selecting force powers you could select from a list of commands you pre-set in a config. Here's how to do it. Go to base and create a new text file. Rename it to cycle.cfg (or anything else you want.cfg) Open it in notepad or any other text editor First lets set up the keys: Choose a random name for your cycle. I will go with "cycle" for simplicity. Type: bind [ vstr cycleprev bind ] vstr cyclenext bind enter vstr cycle You can replace "[", "]" and "enter" with you choice of previous, next and use keys (like Q, E and F) Now get a list of all the commands you want to be selectable. Here is my example list: cg_draw2d 0 cg_draw2d 1 saber single_4 saber single_4 single_6 (you can have way more than 4 commands (any number in fact) i just used 4 for simplicity) Now here is the hard part you need to make a load of vstrs, one for each command in this format: seta cycle2 "set cycle [command 2];set cycleprev cycle1;set cyclenext cycle3;echo Message" For cycle1 you need the "set cycleprev" to name the last cycle and for the last cycle entry you need "set cyclenext cycle1" Example: seta cycle1 "set cycle cg_draw2d 0;set cycleprev cycle4;set cyclenext cycle2;echo Hide Hud" seta cycle2 "set cycle cg_draw2d 1;set cycleprev cycle1;set cyclenext cycle3;echo Show Hud" seta cycle3 "set cycle saber single_4;set cycleprev cycle2;set cyclenext cycle4;echo Single Saber" seta cycle4 "set cycle saber single_4 single_6;set cycleprev cycle3;set cyclenext cycle1;echo Dual Sabers" Finally you need to set the default setting: "set cycle [command 1];set cycleprev cycle4;set cyclenext cycle2" here is the full example file: bind [ vstr cycleprev bind ] vstr cyclenext bind enter vstr cycle seta cycle1 "set cycle cg_draw2d 0;set cycleprev cycle4;set cyclenext cycle2;echo Hide Hud" seta cycle2 "set cycle cg_draw2d 1;set cycleprev cycle1;set cyclenext cycle3;echo Show Hud" seta cycle3 "set cycle saber single_4;set cycleprev cycle2;set cyclenext cycle4;echo Single Saber" seta cycle4 "set cycle saber single_4 single_6;set cycleprev cycle3;set cyclenext cycle1;echo Dual Sabers" "set cycle cg_draw2d 0;set cycleprev cycle4;set cyclenext cycle2" To activate it, go in game and type /exec cycle into the console. The game should now remember the cycle for good. If it stops working simply type /exec cycle again.
  15. VSTRs (Variable Strings) are a neat little way of assigning a command (or group of commands) a name which you can enter to use. For example: /set haddock say I like haddock sets a vstr called haddock that makes the user say "I like haddock" on use. The format is: /set [vstrname] [command(s)] To use a vstr: /vstr [vstr name] eg /vstr haddock It is important to note that JKA tends not to remember vstrs between sessions, so if you want to save them, create a cfg. A few things you can do with vstrs You can bind a vstr to a key: /bind x vstr haddock You can even make a vstr with multiple commands just like in a bind: /set spam "say I hate white people;wait 200;say lololololololollololoollollol" would make you say "I hate white people" and then say "lolololololololololo" after a short delay whenever you type /vstr spam Make a vstr that changes what it does (useful for a number of advanced things): /set haddock "say hi;set haddock say no you" the first time you /vstr haddock it will make you say "hi" the second time you will say "no you" Vstr uses with servers You can set up vstrs in your server cfg or in other configs. These can be used via rcon to quickly do things with one command. Additionally there is an admin command in japlus (and I think in some other mods) "amvstr" which can be used by admins to make the server run vstrs. This means that server admins can effectively give their admins access to some specific commands that they have set with server side vstrs, without needing to give them rcon access. Making A Command Selection Cycle: You know the force selection on Q E and F? Imagine if you could do that, but instead of selecting force powers you could select from a list of commands you pre-set in a config. Here's how to do it. Go to base and create a new text file.Rename it to cycle.cfg (or anything else you want.cfg)Open it in notepad or any other text editorFirst lets set up the keys:Choose a random name for your cycle. I will go with "cycle" for simplicity. Type: bind [ vstr cycleprev bind ] vstr cyclenext bind enter vstr cycleYou can replace "[", "]" and "enter" with you choice of previous, next and use keys (like Q, E and F)Now get a list of all the commands you want to be selectable. Here is my example list:cg_draw2d 0cg_draw2d 1 saber single_4 saber single_4 single_6 (you can have way more than 4 commands (any number in fact) i just used 4 for simplicity) Now here is the hard part you need to make a load of vstrs, one for each command in this format:seta cycle2 "set cycle [command 2];set cycleprev cycle1;set cyclenext cycle3;echo Message"For cycle1 you need the "set cycleprev" to name the last cycle and for the last cycle entry you need "set cyclenext cycle1" Example: seta cycle1 "set cycle cg_draw2d 0;set cycleprev cycle4;set cyclenext cycle2;echo Hide Hud" seta cycle2 "set cycle cg_draw2d 1;set cycleprev cycle1;set cyclenext cycle3;echo Show Hud" seta cycle3 "set cycle saber single_4;set cycleprev cycle2;set cyclenext cycle4;echo Single Saber" seta cycle4 "set cycle saber single_4 single_6;set cycleprev cycle3;set cyclenext cycle1;echo Dual Sabers"Finally you need to set the default setting:"set cycle [command 1];set cycleprev cycle4;set cyclenext cycle2"here is the full example file: bind [ vstr cycleprev bind ] vstr cyclenext bind enter vstr cycle seta cycle1 "set cycle cg_draw2d 0;set cycleprev cycle4;set cyclenext cycle2;echo Hide Hud" seta cycle2 "set cycle cg_draw2d 1;set cycleprev cycle1;set cyclenext cycle3;echo Show Hud" seta cycle3 "set cycle saber single_4;set cycleprev cycle2;set cyclenext cycle4;echo Single Saber" seta cycle4 "set cycle saber single_4 single_6;set cycleprev cycle3;set cyclenext cycle1;echo Dual Sabers" "set cycle cg_draw2d 0;set cycleprev cycle4;set cyclenext cycle2"To activate it, go in game and type /exec cycle into the console. The game should now remember the cycle for good. If it stops working simply type /exec cycle again.
  16. To set a key to a command: Type: /bind [key] [command name] into the console and press enter eg: /bind k kill would make your character die whenever you press your K button. To bind multiple commands to a key: /bind [key] "[command 1];[command 2]" (you must put double quotes around multiple commands when binding) eg: /bind x "kill;say I JUST CANT TAKE IT ANYMORE" to kill yourself and then scream about the horror of life. To see all your current key bindings: /bindlist Keys Most keys are just the name of the button (eg "a" or "." or "[" or "shift") with these exceptions: semicolon backspace The NumPad: kp_slash kp_star kp_minus kp_plus kp_enter kp_del kp_ins kp_end kp_downarrow kp_pgdn kp_leftarrow kp_5 kp_rightarrow kp_home kp_uparrow kp_pgup To unbind keys: /unbind [key] For binary commands (ones that are a simple switch of 0 or 1 to toggle a command) you can use a ! as the toggle. For example: /bind x cg_draw2D ! That will allow you to press the X key to toggle the HUD and 2D elements on your screen on or off. That way you don't need to have 2 keys for both. Click here for a list of all commands which can be bound
  17. To set a key to a command: Type: /bind [key] [command name] into the console and press enter eg: /bind k kill would make you commit suicide whenever you press your k button. To bind multiple commands to a key: /bind [key] "[command 1];[command 2]" (you must put double quotes around multiple commands when binding) To see all your current key bindings: /bindlist eg: /bind x "kill;say I JUST CANT TAKE ANYMORE" to kill yourself and then scream about the horror of life. Keys Most keys are just the name of the button (eg "a" or "." or "[" or "shift") with these exceptions: Semicolon backspace The numpad: kp_slash kp_star kp_minus kp_plus kp_enter kp_del kp_ins kp_end kp_downarrow kp_pgdn kp_leftarrow kp_5 kp_rightarrow kp_home kp_uparrow kp_pgup Click here for a list of all commands which can be bound, which someone has obviously already made
  18. No-one made any agreements giving up rights to their work, so whilst it maybe be a dick move, I have every right to make it, and frankly, if there had been an agreement that anyone can veto any design decision I make, then I would never have got involved. Either way this has turned into a hostile mess now (which may well be to a great extent my fault), and I see that it would be best if I just depart from this project and take my portion of it with me.
  19. So I just wrote a lengthy post arguing further but I see no point in wasting time with that, as we can argue about this all year, and I don't think either of us are going to budge, so instead I'll just cut to the chase: I have already made it extremely clear that I do not give you permission to use my work if you are going to re-scale it, yet you apparently think you can ignore even that request. So remove my content, or I will go to extreme lengths to create as much fuss as possible.
  20. Okay I'm just going to go ahead and go full tantrum, like the mature guy I am. I am not arguing against what you are saying because I am offended, I am arguing because I completely disagree and think you are about to ruin what I suspect is my best mapping work to date. I'm afraid if you are going to re-scale my section of the map, I am going to have to insist you remove it from the project and I will release it separately in the scale I intended. I'm sorry, but I will not permit you to take my work and screw it up because you think you have a better idea of how big things of my own design are supposed to be. I think it is a shame that people here are being so elitist that they believe their opinion to be so much more valuable that they can justify changing things other people have made, after they have made it clear they disagree with the proposed changes, based on their preferences rather than any actual need for change. If this was a case of the map actually not working because of my area being physically too small to work, then I would concede, but it is simply a case of you thinking it would be better the way you want it. And no, I am not suggesting that I have a better idea of what the perfect size for an area is than the rest of you, but I think I am capable of knowing how big I intended it to be, and you could have the decency to respect that I built it the way I built it because that was how I wanted it to be, rather than waving your egos around and forcing your opinions on the rest of us. So please either leave my section in it's current scale, or remove it completely. Thank you.
  21. From @@MagSuls screenshots of the street, featuring his player-model, it already looks slightly over-scaled if anything. I dread to think what it is like now that you have seemingly made the buildings 5 times as large. The windows must be the size of cars.
  22. I don't even see any files under your username.
  23. in assets1.pk3 lives the file ext_data\sabers\sabers.sab which contains a whole bunch of sabers which NPCs use and the player cannot. You can never use these. I see there is a key for "notInMP" but I see nothing defining if a saber is selectable in SP. Anyone know how that works?
  24. Glad you like it. Use it however you wish.
×
×
  • Create New...