Jump to content

AradorasXeon

Members
  • Posts

    74
  • Joined

  • Last visited

Posts posted by AradorasXeon

  1. In this tutorial I'm going to show you how to make a siege map. (This tutorial doesn't guarantee you will make a good one.)

    I assume you have basic understanding of mapping and have played at least one siege match on all 3 base maps.

    I use GtkRadiant 1.5.0, but probably other versions are very similar to this one. (I tried 1.6 but I missed a lot of things, so it may not work with that).

     

    Things you will need:

    - GtkRadiant

    - Wordpad, or any text editor will do which can save in any given format.

     

    Siege mapping is mainly logic, and everything is about good targeting. First you need to have a map, or you can create one while you are reading this.

    The main difference between siege mapping, and any other kind of mapping is, you can't spawn on info_player_start, this entity is used for the team "spectator", so any spectator will spawn in here (or into info_player_intermission). To spawn the teams in you will need to use info_player_siegeteam1 (or2). We usually use 1(red entity) as the attacker team, and 2 (blue entity) as the defender one.

     

    Objectives are called info_siege_objective (pink entity). They have three keys "side", "objective", and "icon".

    Side can be 1 or 2, if it is 1 the offense team supposed to complete this objective.

    But wait this means there can be objectives for both teams! That's right, there are some maps out (none of them are mine) which are based on this very thought (e.g.: droid ball).

    Objective type a number here (obviously 1 stands for 1st objective etc). I never really tested how many objectives can a map has, base maps have 6, but you may have more (well they probably won't show up on the objective map, or may crash the game).

    Icon it should contain the path to a tga file. E.g.: "gfx/mp/siegeicons/hoth/walldoor.tga" (watch for slashes direction, if i remember right it matters which one you use). You should have three of them (staying at the example:) walldoor.jpg (32x32), walldoor_o.tga, walldoor_x.tga these last two doesn't have to be named this way, since you will define this in the .siege file, but this is the logical choice.

    (I can't say more about tga files, because they are graphic things, and I usually don't care about these very little things, BUT! if you don't have own icons for active objective and done objective the game will show hoth's by default.

     

    Keys that usually don't appear in the entities' own help menu:

    targetname: This one is essential for siege game type, and you probably have already met with this guy. Do not use space button, instead use the "_" mark, and probably you can't go above 128 characters.

    target: This one is also essential as well, logically if you want a trigger to fire the right target, you have to check if the value of the target (from the trigger), and the targetname (the target's) are the same.

     

    There are many kind of objectives, like: hack, press a button, advance through a specific point, carry something from here to there, destroy a wall/model or even kill an NPC, but I don't suggest this one. Most of these can be done with a simple trigger_once (do not use trigger_multiple, because it will fire the objective more times than you want, and will end the game before it should).

    With triggers you can make the followings of the above: hack, press button, advance through a specific point, and you will need this one as the area where you have to carry something.

    Let's start with hack, first you need to add the spawnflag "use button" or you will be able to hack by just standing in the trigger, then you should target the info_siege_objective, or a target_relay or just a func_door if you want to complete a "side objective" (I will talk about this later). So with this you will get an objective where you have to hack something, like the ion station on hoth. 

    As of talking about triggers I have to mention the idealclass key, which can determine which class/classes can trigger that specific trigger (more about this in the entity's help).

     

    tutorials-200-0-06852400-1374263517_thumb.png

     

    Press a button and complete an objective, obviously you have to add the spawnflag "use_button". Best example: hoth's 2nd objective.

     

    Advance through a specific point, this practically same as above, you just don't add the "use_button" spawnflag. e.g.: hoth's 4th objective.

     

    Carrying a specific something. You will need the misc_siege_item entity for this one, and a trigger_once(/multiple for maps like droidball). The misc_siege_item entity can be used in two ways, so now I am going to mention only the ones which are related.

    Startoffradar spawnflag: You have to trigger it to appear on the map (this means you have to give it an icon).

    Model you have to give the path to the model you want to carry, like "models/players/droids/r5d2_head.md3".

    targetname if it has one it won't spawn until it is used.

    target2: target to fire when picked up (usually a target_print so everyone knows when it is picked up)

    pickuponlyonce: If it is 1 target2 won't fire, after it is dropped (have not respawned) and picked up again.

    target3: will fire this when it is delivered.

    canpickup: This one is essential in this case, give it a "1" value.

    pickupsound: path to sound file (never used this one, probably has to be*. wav file and mono)

    goaltarget: the tagetname of the trigger, where you have to deliver this item.

    usephysics: if 1 it will fall down etc. (never used 0, but probably it just stays there where carrier was killed and do nothing, 'till respawn)

    From radiant:

    "mass" If usephysics, this will be the factored object mass. Default is 0.09.

    "gravity" If usephysics, this will be the factored gravitational pull. Default is 3.0.

    "bounce" If usephysics, this will be the factored bounce amount. Default is 1.3.

    Back to me:

    teamnotouch: If "0" everyone can pick it up, if "1" only team 2 can pick it up, if "2" only team 1 can pick it up

    teamnocomplete: If both teams can pick it up, then if this value is 1, team 1 cannot complete it and same goes for team 2.

    respawnfx: path of fxfile (never used it, e.g. korriban crystals)

    noradar: if 1, it won't show up on radar at all

    forcelimit: if 1 can't use any light or dark force while carrying this item (like korriban crystals) (you can jump, push, pull, throw saber but cannot speed up and force won't regenerate)

    paintarget: Honestly I haven't figured this one out yet, but it should do something with npcs, like on hoth, you have to destroy the droid, and then the head will be at the point where the droid was destroyed. Normally paintarget fires its targets when something hits the given entity.

    icon: If anywhere you should use this key it is here, because the item will show up on the radar while it is carried (unless you are mindtricked, then it will stay at the position where you were mindtricked).

     

    Destroy: there are two ways of destroying things.

    First you make a brush/patch/ or even both, you assign them and give them the func_breakable option.

    Before I start listing the keys and what do they do I have to mention that: on func_breakable the weapon demp2 and DL-44 won't have any effect (in multiplayer).

    We usually use this if a wall has to be destroyed, but you can try and build nice things with it.

    The spawnflags are nicely defined in the entity's help, so I'm going to mention only the one which are used the most.

    "heavy_weap" If you tick this, you can damage this only with: saber, alt attack of the repeater, alt attack of the gollan weapon, rocket launcher, any throwable weapon and the concussion rifle (the purple and black weapon). Theoretically any vehicle's weapon can damage it, too (even swoops).

    target: will fire this, when destroyed

    paintarget: will fire this, when it is hit and taken damage (usually a target_print)(note: sometimes this can crash the game, even the server)

    wait: how many milliseconds should it wait before firing paintarget again

    health: this many health points will be given to it

    teamnodmg: this team cannot damage it

    delay: how many seconds should it wait before blowing up, but already reached 0 hp

    numchunks: This many chunk will be spawned when destroyed

    chunksize: for scaling up/down the chunks

    playfx: path to fx file when it is destroyed and should palyed

    showhealth: if 1 you will see its health bar

    teamowner: to determine which team will see the its health bar green

    spalshdamage: it will damage this many when it's blowing up

    splashradius: it will damage "spalshdamage" in this radius

    material: this value is a number (to see what is what open up radiant). You should know if you give a number which contains any glass material in it, it will take damage on impact (doesn't matter if spawnflag is ticked or not). This means you start to jump in its direction and when you arrive, you will damage it.

    healingclass: same as idealclass, the difference is: with this class you can health the func_breakable

    healingsounds: will play this while healing it (usually: "sound/ambience/doomgiver/doom_bridge.wav")

     

    tutorials-200-0-07627100-1374263506_thumb.png

     

    Before I move on, I have to mention that you can use models this way, you clip around the model with a physics clip, and make it func_breakable, then you give a target to the misc_model (not sure if misc_model_static works too, because it's rare I use them). Then give that targetname to the func_breakable. People would think it works reverse, but it doesn't.

     

    And again misc_siege_item. Yes it can be use as a "destroy" objective. The main difference between func_breakable and this, that you can damage this with demp2, DL-44 and you cannot put det packs onto its side.

    The tricky part is the physics clip, which is created by the engine itself. It is going to be a big cuboid around the model, so don't use to special models for this one.

    You clip them with the following keys:

    maxs & mins

    "mins" Actual mins of the object. Careful not to place it into a solid,

    as these new mins will not be reflected visually in the editor.

    Default value is "-16 -16 -24".

    "maxs" Same as above for maxs. Default value is "16 16 32".

    says radiant, but honestly for a long time I had no idea what did they want to mean with this (maybe it's because english isn't my native language), so I'm going to try and explain how to use them.

    First you will use a misc_model

    (Note: I suggest you only use the angle: 0;90;180 or 270, because if you make it 45 it will be annoying to destroy with saber, like in desert's 2nd objective)

    After you have rotated the model to the way it supposed to be, you have to make a brush around it which fully covers it. You need the cuboid's three lengths (in radiant 1.5 you can easily see its length by pressing "J"). Now you have the lengths of x;y and z. You have to check the model's origin (usually in the middle or at the bottom). Now imagine a coordinate system to that origin its "+" side are the maxs and its "-" sides are the mins. If the model's origin is in the middle you have an easy job, just divide the lenghts by two and write the counts in to the value box in the right order.

    Don't forget to swap the misc_model with a misc_siege_item!

    (An example: on my project digimon map, I have a bunch of bacta tanks, which are need to be destroyed and I used misc_siege_item-s for this objective, I used the misc_model, measured it with a cuboid and had the following lengths x:96 ;y:96 ; z:192 , so my maxs: 48 48 192 ; and my mins: -48 -48 0, because this model has its origin at the middle bottom).

     

    tutorials-200-0-33340000-1374263532_thumb.png

     

    Another difference is the target, instead of the simple "target" key you should use the "target4" key. (Remember! Target is for carrying objectives.)

    deathfx: plays this effect when its health reaches 0, then deletes model.

    It has healingclass, healingsound, health, icon, showhealth, teamowner, teamnodmg keys as well and they are the same as above.

    Don't forget to add the model key!

     

    In case you want an objective which in you have to kill and NPC.

    First I have to say again I don't suggest this, because most of the NPCs are very dumb in siege. In my siege_ktr (Kill the mutant rancor) neither of my tries worked to move the npc when the player sits in a vehicle and you probably have noticed that rancors are very dumb in both base siege map, I tell you this: they are supposed to circle around, but as you have probably noticed they just stand there and rarely attacks people when they get close by. And don't even dream about any script will work on them. On my project digimon map, I have 3 NPCs in the interrogation room, and they have spawnscripts (they supposed to lie on the floor) and boom the game don't even spawns them in siege...

    So if you still want to kill an NPC objective, then:

    npc_target: fires when npc is killed (won't show the line between target and trigger entity)

    npc_target4: fires when NPC is killed by friendly fire (won't show the line between target and trigger entity)

    health: This supposed to determine how many health points the npc will have, well on siege_ktr, the mutant rancor has 350, and you have to fire on it with atst for at least ~20 secs, maybe it's just with monster npcs.

    Teamnodmg, teamowner, showhealth keys are working here as well.

     

    These are the most basic elements of siege. Now let's see some other entities:

    func_door

    The most used spawnflags in siege are: toggle, locked, inactive.

    Toggle will wait to open/close for triggering event.

    Locked starts locked (if possible on the texture, it will be red). It will allow the team from the "teamallow" key. (Can be fired only once)

    Inactive it is inactive, have to be used by a target_activate entity, then it operates normally.

     

    Locked & targetname issues: when you give a targetname to any func_door, the engine won't spawn triggers around the door, so you have to make triggers around it, except if you give it the locked spawnflag in which case, it will be like a normal door, and it will have a targetname. So if you have a func_door with targetname and locked spawnflag and a "teamallow: 2" key. The door will be locked for team 1 until a trigger triggers the door.  While the door is closed for team 1, team 2 still can use it, and you don't have to make triggers around the door to open for them.

    There are four target possibilities for func_doors and they are well written in radiant, but I notify you, some of them doesn't make radiant to show the usual line between trigger and its target (at least in 1.5).

    vehopen: if 0, people on/in vehicles cannot use this door, if 1 they can.

    soundset: I always use this one "impdoor1", because I don't know of any other. (if you use it as elevator then use "piston")

     

    Another usual func_ we use is the func_usable.

    It is used for temporary walls (usually textured as energy fields).

    Start_off spawnflag: won't be there until used.

    target: will fire when it's toggled OFF.

    target2: will fire when it's toggled ON.

     

    There are some usable targets for siege like: target_activate /deactivate (I haven't used that yet), target_delay, target_location, target_print, target_relay, target_siege_end (this one is essential), target_speaker.

     

    target_(de)activate: when fired (de)activates its targets (mostly triggers, and doors)

    target_delay: after it is triggered, it waits the given value of seconds determined with the wait key.

    target_location: message key's value will determine what will show up on the team overlay screen next to your teammates' name. The count key doesn't work (at least it didn't work for me)

     

    tutorials-200-0-61819900-1374264559_thumb.png

     

    target_print: will print the value of the message key (in multipalyer only 49-50 characters will show up), with the spawnflags you can control who will see the meassge (red team, blue team, or private)

    target_relay: You want to use this to activate/deactivate spawn points, which is usually have to be done in siege (theorically you can do it with scripts, but I never tried).

    First you place every spawn point for every team, then you give targetnames to them (e.g. for a 8vs8 map 16 spawn points have to have the same targetname, at least for the first time, because it is possible you don't want to move the spawnpoints for defensive team, and move the offensiv team's, like in project digimon). You need two target_realy for most of the objectives, and they should have the same targetname so they will be fired in the same time. One of the target_realy-s will switch off the previous objective's spawns, and the other will activate the next one's. Every spawns which are not in use should have the "startoff: 1" key. When a spawn point is fired from a target_relay it will switch its startoff key.

     

    tutorials-200-0-63836600-1374263528_thumb.png

     

    target_siege_end: give it a targetname, you can either fire it from in game, or from the .siege file (it is usually fired from the .siege file).

    target_speaker: if you are a mapper, you probably already have met with this, it is just here not to forget about it ;)

     

    emplaced_gun

    count: if can respawn, it can respawn this many times (theoretically -1 makes it infinite)

    showhealth, teamnodmg and teamowner, works as above, BUT! alliedteam is reverse for some reason, so 1 is for the actual 2, and vica versa. This is very important because only alliedteam members can use it (if none, both team can use it).

     

    misc_turretG2

    notice: these won't show up while testing in singleplayer

    spawnflags:

    start_off: have to be triggered to work

    upside_down: makes it up-side-down

    can_respawn: will respawn

    turbo: you want to use this for space maps ;)

    keys:

    teamnodmg: given team cannot damage turret

    alliedteam: turret won't shoot to given team

    teamowner: will highlighted as green for given team (works with showhealth 1)

    dmg: does this many damage/hit

    radius: can pick up targets from the given distance

    count: will respawn after this many milliseconds have passed

    paintarget: same as func_breakable's

    painwait: will wait this many milliseconds before firing its paintarget again

    shotspeed: the "rocket" which comes out, will travel at this speed (better not touch the default)

    splashDamage: This many damage will it do, when hit floor/target. (if you want hoth like turrets don't touch it)

    splashRadius: will do splashDamage in this radius

    targetname: for toggling it on/off

    target: fires it when, it is destroyed

    target2: fires it when, it starts shooting to an enemy

    showhealth: same as above

    icon: same as above

    customscale: if you want it bigger write a number 1024>100, if you want smaller write a number <100 (100 is normal)

    Notice: You shouldn't let its origin to directly touch a brush, always put it lower/higher, because it won't spawn that way. Turrets usually cause an error while compiling the map, don't bother yourself, it will work and will have no problems, if when the error shows up you got some of your turrets assigned, in any other casses you have probably made another fault.

     

    misc_model_health_power_converter

    You should only modify the angle, or maybe the count key, which doesn't really do anything.

    You should add the model: models/items/power_converter.md3 key. I know it appears in the editor, but if you don't add this key you won't see anything on the map. (You can add other models to it, but I've never tested them).

    (This doesn't need any clipping)

     

    misc_ammo_floor_unit

    count: max ammo that can be drained from it

    chargerate: will recharge 1/this manny milliseconds

    nodrain: if 1, it won't be drained

    (This doesn't need any clipping)

     

    tutorials-200-0-89417000-1374263525_thumb.png

     

    misc_shield_floor_unit

    count: max shield that can be drained from it

    chargerate: will recharge 1/this manny milliseconds

    nodrain: if 1, it won't be drained

    (This doesn't need any clipping)

     

    misc_turret

    same as misc_turretG2 except there are no customscale, painwait, paintarget, count keys (none of them are tested, but you can try) only has start_off spawnflag, and has a "speed" key which determine how fast can it turn.

    It can be healed (see above).

     

    These are the entities used in siege game type, of course you can use any other entity from multiplayer.

     

    Now you are ready with the map, but you cannot play it yet (at least not in siege mod). First you need a siege file. At your first time I suggest to use the siege_hoth.siege file (You can get it from the assets0.pk3 file with any program which can unzip zip based files, it is in map/mp/siege_hoth.siege) but just in case I'm going to explain some line here.

     

    First: You have to give your *.siege file the same name as your map's eg.: in case you have a mymap.map file (we usually add the siege_  tag but you don't have to) then you have to have a mymap.siege file (I suggest wordpad, because most of JA's special files can be opened with this and it makes the lines break well).

    The siege file has to be in the same folder with the map file.

     

    In the attached file every messages are like this:

    message_team1 "@@siege_uwb_hoth_obj_1_new_imp_final"

    This is because of translation issues. I don't suggest to use them (once I tried some of the default it crashed the game). Just simply put english messages here, if they were able to download it they are probably able to understand basic English.

     

    Another important issue with the siege file are these marks: {} (on my keyboard they are on B and N keys).

     

    There are many possibilities to fire targets from the siege file, though I don't really use them, because usually I make the map first and the siege file comes afterwards, if something is not working I am always able to check it from radiant, and I don't have to open the siege file. (Believe me in siege maps something usually goes wrong after first compile).

     

    First you have to give the teams in the siege file like:

    Teams

     

    {

    team1 Imperials

    team2 Rebels

    }

     

    These names don't have to match with the names in the team file.

     

    mapgraphic "gfx/mplevels/siege1_hoth" this is the graphic which will appear on the objective desk (use only 256*512 pictures)

    missionname "''Hoth Assault''"

     

    roundbegin_target it fires its target when there are at least 1 player on each team eg.: on hoth this is the droidhead, so the droid won't spawn until the game begins.

     

    RequiredObjectives in base maps this is 1, but wait - you might say - there are 6 objectives on base maps. Yes it's true, every objective has a "final" key after that, you can type -1,0,1.

     -1 means it doesn't influence the end of the game.

    0 gives 1 point to requiredobjectives (this means base maps have one objective with a "final 0" line).

    If it's 1, completing this objective will immediately fire the roundover_target.

     

    Now I copy an objective and a team describe lines from siege_hoth.siege and show you what does what.

     

    @@siege_uwb_HOTH_TEAM1_IMPERIAL <-- You give the team here

    {

    RequiredObjectives 1 <<-- see above

    the round? <<-- This isn't even in the sdk, you can skip this line, I made 3 working map without it.

    Timed 1200 <<-- How many seconds should pass before attackers lost

     

    objectives, otherwise the other team wins. <<-- this does nothing in my opinion (every of my maps work without this line)

     

    UseTeam "Siege1_Imperials" <<-- name from .team file

    TeamIcon "gfx/2d/mp_imp_symbol_3"

    TeamColorOn "1 0 0 1" <<-- the color of the symbol of the team when you click on it

    TeamColorOff ".7 0 0 1" <<-- the color of the symbol of the team when it's not clicked on

     

     

    tutorials-200-0-94935200-1374263537_thumb.png

     

    Objective1

    {

    goalname "@@siege_uwb_HOTH_IMP_OBJ_1_NEW" <<-- see picture

    final -1 <<-- see above

    message_team1 "@@siege_uwb_hoth_obj_1_new_imp_final" <<-- team1 gets this message when team 1 completes this objective.

    message_team2 "@@siege_uwb_hoth_obj_1_new_reb_final" <<-- team2 gets this message when team 1 completes this objective.

    target "spawn_relay_1a" <<-- this is fired when objective is completed.

    sound_team1 "sound/chars/protocol/misc/siege2.mp3" <<-- team1 gets this sound when team 1 completes this objective.

    sound_team2 "sound/chars/protocol/misc/siege6.mp3" <<-- team2 gets this sound when team 1 completes this objective.

    objdesc "@@siege_uwb_HOTH_IMP_OBJ_1_NEW_DESC" <<-- see picture

    objgfx "gfx/mplevels/hoth/imp_objective1_new" <<-- see picture (256*256)

    mapicon "gfx/mp/siegeicons/hoth/walldoor_o"

    litmapicon "gfx/mp/siegeicons/hoth/walldoor_outline"

    donemapicon "gfx/mp/siegeicons/hoth/walldoor_x"

    mappos "135 245 16 16" <<-- I don't know how this works

    }

     

    An objective is completed, when  an info_siege_objective is fired.

     

    wonround "get this message when this team wins the round"

    lostround "get this message when this team losses the round"

    roundover_sound_wewon "get this sound when this team wins"

    roundover_sound_welost "get this sound when this team losses"

    roundover_target "targetname of the siege_end entity"

    briefing "short mission description"

     

    tutorials-200-0-86435600-1374264552_thumb.png

     

    Classes & Teams

     

    Let me start with the *.team file (it is the easier one). The following path will be ned: ext_data\siege\teams

    I am going to copy my siege_ktr map imperial team's file:

     

    name "SIEGE_KTR_IMP" // this name should match the team name you give in the siege file

    FriendlyShader "sprites/team_red" //don't change this one, this makes friendly players name green

    Classes

    {

    class1 "KTR Stormtrooper" //this will appear first

    class2 "KTR Mercanary" //this will appear second

    class3 "KTR IMPERIAL demolition specialist" //this will appear third

    class4 "KTR Mercanary Sniper" //this will appear fourth

    class5 "KTR_12" //this will appear fifth

    class6 "Dark Jedi Invader" //this will appear sisxth

    }

     

    Yeahp that's all for the team file (Theoretically you don't have to use "_" instead of space, I just had problems with my technician class and I tried everything :) )

    You can use any classes in this file, you can mix default and non-default classes, just don't forget to attach the non-default classes.

     

    The following path will be needed: ext_data\siege\classes

    Now comes the hard part.

    (I lost the file I used for making these so I made a little research on the internet and found the weapon,force,holadble,classfalgs names in some page, where I could see some programming stuff about JKA, let's hope I didn't forget anything)

     

    A copy from my "KTR_eliteDEMO.scl" file:

     

    ClassInfo

    {

    name "KTR IMPERIAL demolition specialist"

    weapons WP_thermal|WP_trip_mine|wp_det_pack|wp_blaster_pistol

    classflags CFL_EXTRA_AMMO

    maxhealth 75

    maxarmor 25

    startarmor 0

    model "human_merc"

    skin "racto"

    uishader "models/players/human_merc/icon_racto"

    class_shader "gfx/mp/c_icon_demolitionist"

    holdables HI_MEDPAC

    }

     

    description "A demoliton specialist."

     

    tutorials-200-0-93686900-1374263498_thumb.png

     

    name: The name of the class

    weapons: You have to list the weapons for this class here, you have to put a "|" mark between two (on my keyboard this is on the key "W"). Possibilities:

    WP_STUN_BATON, WP_MELEE, WP_SABER,WP_BRYAR_PISTOL, WP_BLASTER, WP_DISRUPTOR, WP_BOWCASTER,WP_REPEATER, WP_DEMP2, WP_FLECHETTE, WP_ROCKET_LAUNCHER, WP_CONCUSSION, WP_THERMAL, WP_TRIP_MINE, WP_DET_PACK

    classflags: these are special abilities

    CFL_MORESABERDMG                      saber does more damage

    CFL_STRONGAGAINSTPHYSICAL    probably makes it stronger against melee and other attacks

    CFL_FASTFORCEREGEN                 faster force regeneration (like on korriban offense team's tech)

    CFL_STATVIEWER                            you can see the health and ammo quantity of your team mates

    CFL_HEAVYMELEE                             melee does more damage

    CFL_SINGLE_ROCKET                     you have 1 rocket (? never tried)

    CFL_CUSTOMSKEL                           you can add custom skeleton (ask an animator or modeler)

    CFL_EXTRA_AMMO                          will have more ammo (2 times of default)

    maxhealth: the amount of health points this class can have

    starthealth: the amount of health points this class will start, if you don't give a number or don't use this line, it will automatically start with maxhealth (same goes for shield)

    maxarmor: the amount of shield points this class can have

    startarmor: the amount of shield points this class will start (usually 0 and can be charged to maxarmor amount)

    model: from models\players folder

    skin: from models\players\*\ you can check out what skins can you use for that model by opening assets1.pk3

    uishader: You will see this picture when you choose the class (in the example, the given shader does not exists, so you can see a white square instead)

    class_shader: The icon for the class. The default ones are:

    c_icon_demolitionist; c_icon_heavy_weapons; c_icon_infantry; c_icon_jedi_general; c_icon_support; c_icon_tech; c_icon_vanguard You may say: but there's seven, and only 6 classes exist! It's true, but there are two technican icons the *_tech, and *_support.

     

    tutorials-200-0-94935200-1374263537_thumb.png

     

    holdables: Those special items the class can have

    HI_SEEKER               known as seeker drone

    HI_SHIELD                That big blue/red shield techs can spawn

    HI_MEDPAC              known as bacta

    HI_MEDPAC_BIG      known as big bacta

    HI_BINOCULARS     binoculars, we don't really use this one

    HI_SENTRY_GUN   Sentry Gun

    HI_JETPACK           Boba Fett stly jetpack

    HI_HEALTHDISP      With this you can give health to a teammate by pressing the use button.

    HI_AMMODISP         You can deploy ammo cans by pressing the use button

    HI_EWEB                 That cannon thing (assault class has this on desert)

    HI_CLOAK               The cloaking device.

    forcepowers e.g.:

    forcepowers FP_TELEPATHY,3|FP_SEE,1

    First you give the name of the force, then put a comma and the level (1;2;3) of the force )( theorically there are more, but I don't suggest them) 

    FP_HEAL

    FP_LEVITATION this one means jump

    FP_SPEED

    FP_PUSH

    FP_PULL

    FP_TELEPATHY this one means mindtrick

    FP_GRIP

    FP_LIGHTNING

    FP_RAGE

    FP_PROTECT protect against physical damage

    FP_ABSORB protect against force based damage, and makes your force points regenerate, even if you carry a misc_siege_item which disables force regeneration

    FP_TEAM_HEAL

    FP_TEAM_FORCE same as team heal just for dark side

    FP_DRAIN

    FP_SEE

    FP_SABER_OFFENSE

    FP_SABER_DEFENSE

    FP_SABERTHROW 

    forcealignment: dark or light (I think it has no effect at all)

    speed: default is 1 you can see this number when you click on the class, heavy weapon classes usually have 0.75, jedis and scouts have 1.25

    saber1: the hilt of the saber e.g.: single_7

    saber2: only if you want it to have two sabers

    sabercolor: color of the saber 1-6

    (1-red, 2-green, 3-yellow, 4-blue, 5-cyan, 6-pink/purple)

    saber2color: only if it has 2nd saber

    saberstyle: fast, medium or strong

    SS_FAST

    SS_MEDIUM

    SS_STRONG

    SS_DUAL if it has 2 sabers

    SS_STAFF if it has two sided saber

    description: Give a short description of the class.

     

    I hope I could help you understanding how to make a siege map (and also hope didn't forget anything), if you have any question just write me a PM, I will try to answer it as soon as I can.

  2. So I just decided to make yet another siege map for the game... I was like let's download this new radiant. Let's see what can it do, but the very first thing I noticed that I can't seem to find the "move tool". I usually just pressed the "w" key, and it was there, but now nothing. Where is it and how can I enable it again? Or have they completly removed one of the basic tools?

    DT. likes this
  3. Hello there siege fans!

     

    I know you are only a few, maybe just those of left, who play PUGs, but that doesn't matter. It is good time to be playing jka for the fans of this gametype. We have tons of servers available!

     

    Europe Siege Public - 212.129.45.245:25070 located in Paris, France

    Tempest* - 50.63.185.155:29070 located in the USA (New York City if I recall it correctly)

     

    We also have PUG servers for private and more competative gameplay, both in the USA and in Europe!

     

     

    If you have any question, just ask it here, or send me a PM, or add me on steam. (I am called Baby bon on steam)

     

     

    Come to our servers! And let's have fun! Also don't forget to check out our site: http://www.jkasiege.com

     

     

     

                ~Xeon~

  4. Its q3map_nolightmap in the very first stage of your shader (not just nolightmap)

     

    Posting the shader would be hepful!

     

    It's the default:

    common/water2_waterfall_Tutorial

     

    I am not good with making textures, that's why I use default ones. (and I have no idea how to do them)

  5. I just wonder if anyone is interested in it. I know there is one somewhere on the net, but I didn't really understood that one at the time I read it.

    I am thinking about writting, how to target things etc., and how to make new classes/teams. There are some tutorial for this one, too. Well the entities helps are very helpful, but still if someone needs one then I would write one somewhere in the near future.

  6. Two options:

    1. Use a func_group for the bits of water which you don't want light, and in the func_group, add these keywords:

     

    _cs: 3

    _rs: 3

     

    The water should no longer cast or receive shadows.

     

    2. Create a new shader for the water using all the standard properties and add the following keywords:

    nolightmap

    nodlight

    Uhm tahnk you. I still have problem, but probably my fault, thought it was light process, but it looks like a vis process roblem. Normaly I'd just make it detail, but I can't do that with curves :/

  7. I am not quiet sure if you think what i think, but once I made a misc_model breakable by making a physic clip (which was func_breakable) and I targeted the misc model, For somereason I targeted the physic clip from the misc_model (I am not sure if you really need this, I just did it for some reason).

    I don't think two misc_models can be spawn from the same point, so either make a different spawn on the 2nd misc_model, or spawn the 2nd misc_model 1 grid away from the 1st one, so when 1st is destroyed they will see the 2nd one, and they won't notice it's 1 grid away.

    To be honest I don't know what is a d_model key.

    ChalklYne likes this
  8. OKay here is the full issue:

    13 fire effect (fire_wall) default delay (as far as I know everyone of them appear)

     

    1000 units away

     

    8 huge lightning all of them targeted with a delay 3000 as I remember now 2 lightning show up and 1 of them shows up sometimes, but that one has that small explosion effect when the lightning hits it target...

  9. When you say, "the game crashes", what do you mean? It just closes? freezes? Gives you an error message?

     

     

    My cursor shows up, then nothing happens, so I press ctrl+alt+del and I see the program stopped message.

     

    @@mrwonko as I wrote that thing I started to be suspicous on that as well so I gonna try remove that.

     

     

    yes it was the script, I removed all 4 npcs, it works now.

     

    Here's another question: How many effect files can the game handle in one area? In this very same map I have place where are lot of fxrunner taken places, but only some of them shows up, now I deleted some, and other started to show up, but not all of them.

  10. Since I've made some modifications on my map, and compiled it, I cannot test it. I start the game then I write into the console: devmap mp/my_map_name. It shows that picture with the 3 jedis on it, and then the game crashes. I have tons of other maps, everyone of them working well, but this one doesn't anymore :S. I tried to give an other name to it, and compile that one, with the very same result. I tried to run it on my homemade server, so I might see some error messages, but after I wrote in my map's name, it crush (right after it spawned in the first bot). I tried some of the plugins, but I found nothing. So can anyone help me?

     

    (The modifications I made were the followings (as I remember):

    - did some after caulking (I know it's bad, but when I started this I didn't really use caulk...)

    - removed a big func_door (it was kind of a TV, but I wasn't sure where did I get that shader, so I removed it, and anyway it wasn't working nice and ate lot of FPS)

    - detailed some brush

    - removed a "room" full of with npcs

    - added 2 new npcs

    - added spawning script for npcs (just for animation, I haven't used script in this map before)

    - maybe I added one more aeraportal, I'm not sure in this one

  11. //(BHVD)
    rem ( "Enable cutscene mode, move the camera to the position/orientation of the ref_tag with targetname camera_ref_tag_name" );
    camera ( /*@CAMERA_COMMANDS*/ ENABLE );
    camera ( /*@CAMERA_COMMANDS*/ MOVE, $tag( "camera_ref_tag_name", ORIGIN)$, 0 );
    camera ( /*@CAMERA_COMMANDS*/ PAN, $tag( "camera_ref_tag_name", ANGLES)$, < 0.000 0.000 0.000 >, 0 );
    rem ( "Tell the NPC with npc_targetname npc_name to go to the waypoint_navgoal with targetname navgoal_name" );
    affect ( "npc_name", /*@AFFECT_TYPE*/ FLUSH )
    {
    set ( /*@ SET_TYPES*/ "SET_NAVGOAL", "navgoal_name" ); // Without the space after the @ - but the name-mention-highlighting is overly aggresive here.
    rem ( "Or, to pause script execution until he has arrived:" );
    task ( "unique_task_name" )
    {
    set ( /*@ SET_TYPES*/ "SET_NAVGOAL", "navgoal_name" ); // same
    }
    dowait ( "unique_task_name" );
    print ( "!npc_name has arrived at navgoal_name!" );
    }
    
    

     

    First of all thanks for your help! This means a lot to me (since there isn't too many tutorial for scripting, at least I haven't found any detailed one)

    Well it work half way, no matter what I target with the ref_tag it turns somehow in a strange direction (tried it with another ref_tag targeted from the camera/pan, with the very same result), anyway my npc doesn't spawn in for some reason so I have to look after things. thanks again!

  12. So, I was finally able to put in a camera in my map ( you know the one that makes the scenes in single player), but it absolutely uncontrollable, how does it decide where to spawn itself? since in behaved I only could make a command which puts me in camera mod (camera/enable), but I wasn't able to find any kind of variable in it, I mean no targetnames for camera entities. First it put itself in the only existing target_relay entity, now I deleted it, but it looks it finds that postion again and put itself there instead of my ref_tag named cam1. I've tried to change my ref_tag into a target_relay (the only one in the map now) and it has the targetname cam1. Well the camera put itself to the same position, and there is nothing in radiant what I can see, no specific entity or position (like 0 0 0). So How do I do this?

     

    And how do I tell an NPC to move from here to there?

     

    (Yes I'm working on a singleplayer map.)

  13. If I make siege maps I make a sketch first (usually while some of my boring lessons being held...)

    Anyway I just start something in radiant, then what comes will be in.

    My RP castle map is an exception, since I wrote my novel first and then I decided to make it in radiant :P

  14. Anyone knows what happened to them?

     

    http://ojp.jediknight.net/

     

     

    We've just started to use their mod on Tempest. It is quite fun. Some of the bots are better than other players... Well at least they do use team work :D which I haven't really seen in pub servers for quite a long time. For those who doesn't believe these bots cannot play siege come to Tempest and have a try! (50.63.185.155:29070)

     

    Edit: I was informed it's not really the same mod, but an improved one by Guard :D (since it is open source)

  15. Well I rebuilt it, did the same... so I made it from brushes. Here is the result: http://jkhub.org/files/file/1353-underwater-base-duel/

     

    As I can see you had to use that tool which cut the curves into smaller parts, well it made some weird thing on my underwater siege map, but I was able to see them in radiant. Well I was still able to simply walk through at some points... but thanks for the design, the players cannot get there (at least if they don't try to trick the game, or cheat it).

×
×
  • Create New...