Jump to content

Some questions on weapons


Fucille

Recommended Posts

My first question is on this particular line:

<Modifiers xenonautAccuracyModifier="1" alienAccuracyModifier="1.25" coverModifier="1" />

Is this line merely informative? Or does it indicate that the alien weapons have lower accuracy than their human equivalents to cause a penalty for humans, and then the aliens themselves get a flat 25% boost to accuracy using ANY weapons? Also how does alienweaponaccuracy from gameconfig.xml factor into this? Is it stacked on the weapon's ACC values themselves? Does it stack with alienattribute presumably increasing their basic accuracy score?

Second:

Armour degradation and mitigation. I assume mitigation is a percent of the armour the weapon ignores, correct? So does 25 degradation mean that every hit reduces the armour's effectiveness by 25%? Of its max value or current value? Or does it mean 25% of the damage dealt is subtracted from armour? Actual damage to the soldier, or damage even absorbed by armour?

Last:

So say I want to finally actually add a weapon to the game. I know I have to set up an entry in weapons.xml for its inventory stuff, weapons_gc.xml for its stats, strings.xml for its description, items.xml to make it equippable/sellable, ammos.xml if it uses its own ammo type, researches.xml and manufactures.xml if it's a later tier item, xenopedia.xml and the xenopedia images foldier if you want an entry for it, sounds.xml and the audio/sfx/weapons folder if it uses its own firing noise, the weapons and gui folders for its inventory images, the projectiles folder if it uses a custom one, and the units folder to give it a ground image.

Assuming I've done all that, where exactly do you go to make it show up in game? If it doesn't have a research entry, is it just unlocked from the start like the ballistic weapons are? Is there some flag I need to add somewhere? Also what exactly is the difference between the weapon's listed stats in weapons.xml and strings.xml? I see identical entries for most weapons in both.

Edited by Fucille
Link to comment
Share on other sites

You also need to setup what unit animation files it uses when in combat under /assets/units/xenonaut. Inside there are each of the armor animation sets for each xenonaught armor. Then you create a folder called weapon.yourweaponname inside EACH armor folder and place a file soldier_spectre.xml

soldier_spectre.xml contains data referencing what animation set the unit will use when equipped with that armor & weapon. If you need an example of one of these, check inside units/xenonaught/armour.basic/weapon.assaultshield.... What that XML does is reference the same animation set as the combatshield so that when you wear the assaultshield, the unit looks right.

If you do not setup /units/ as stated above, your solider will be invisible in combat and unable to move when you try to use your custom weapon.

Edited by Slayerjerman
Link to comment
Share on other sites

You don't have spectre files because they're in the sprite atlas. A local spectre file will override the standard file in the sprite atlas. You'd have to unpack the altas, or you can probably find a sutiible spectre file in another other mod which features weapons.

That line you refer to is a global modifier for human/alien weapons/cover, if you want to adjust everything at once. It does stack (positively or naegatively) with the modifier from gameconfigs.

Degredation is based on damage that the armour absorbs. If the armour does not absorb any damage due to mitigation (obvious example is alien sniper rifle), it does not cause degredation. Degredation is applied to the armour's current score. So, if degredation was set to 10%, and a suit of predator armour absorbs 70pts of damage, the armour would degrade to 63. If the armour absolrbed 63pts of damage, the armour would degrade to 57 (6.3 rounded down).

iirc for any item that isn't set to unlimited, you have to enter the research item into the _basebuilt script.

Link to comment
Share on other sites

Alright I have a new question. As far as I can tell, the GUI images in weapons, gui/weapons, and gui/weapons/small are all completely different sized, but there seems to be absolutely no rhyme or reason as to how they are sized. What size SHOULD they be? Doesn't the game automatically resize them?

EDIT: MORE of a question. I setup everything and got a super crappy minigun working in game, and I copypasted the machinegun unit folders and simply renamed them minigun so that they'd look the same. Problem is, when I start the game, the guy HAS the weapon, he can move around, shoot, and kill things, but he's using the same animation set for holding nothing. I really actually don't have any spectre.xmls so I have no idea what I'd need to do for that.

Edited by Fucille
Link to comment
Share on other sites

Check out this thread:

http://www.goldhawkinteractive.com/forums/showthread.php/2473-My-try-at-adding-a-new-weapon-to-the-current-build/page3

On page 3 (linked) Max_Caine gives a link to some soldier_spectre.xml files from an old version. Placing one in /assets/units/xenonaut/armour.basic/{yourweaponname here} and renaming to soldier_spectre.xml should work. I assume you'll want the machinegun animation so you'll also need to edit the soldier_spectre.xml to point to weapon.machinegun. And you'll need to do that for each armor type.

Good luck! :D

Link to comment
Share on other sites

Check out this thread:

http://www.goldhawkinteractive.com/forums/showthread.php/2473-My-try-at-adding-a-new-weapon-to-the-current-build/page3

On page 3 (linked) Max_Caine gives a link to some soldier_spectre.xml files from an old version. Placing one in /assets/units/xenonaut/armour.basic/{yourweaponname here} and renaming to soldier_spectre.xml should work. I assume you'll want the machinegun animation so you'll also need to edit the soldier_spectre.xml to point to weapon.machinegun. And you'll need to do that for each armor type.

Good luck! :D

Doing exactly that appears to have worked! Thank you!

Now all I need to know is if there is a way to make the sound effect play a short time before the character begins firing. That way I have have a "wind up" noise that doesn't result in the xenonaut spraying bullets before the actual dakadakadaka sound starts.

Link to comment
Share on other sites

Fucille, can you help me here ?

I made a new Handgun. It's working for everything but ingame sprite. Im Holding the gun and a shield, while my soldier sprite is holding NOTHING.

How does the game know which ingame "sprite" to use, i dont see a reference in the weapon files.

Ideally i would want to "copy" the stock handgun set up for all armour variants. Dont tell me i Need to ready even more files for that single purpose...

Link to comment
Share on other sites

Go into units/xenonauts/ and then each of the armour folders, create a folder named weapon.yourweaponname, weapon.combatshield.yourweaponname, and weapon.assaultshield.yourweaponname.

Name a notepad file soldier_spectre.xml in each one.

Download the files Gauddlike linked to, then open up soldier_spectre_jackal_pistol and copypaste the contents to your own soldier_spectre.xml.

Then just use the replace function in notepad to replace "jackal" with the armour type of the folder you're in. i.e. if you're in units/xenonauts/armour.basic, then replace jackal with basic.

For the weapon.combatshield.pistol and weapon.assaultshield.pistol folders and their soldier_spectre.xml files, just place combatshiedl. and assaultshield. before "pistol" respectively.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...