FOnline Development > Questions and Answers
FOnline SDK - Question
Wind_Drift:
The sentry turret weapons are Dual Miniguns (according to awareness function), so in _itempid.fos we see that it's ProtoId 518.
You can open weapon.fopro in a text editor, or object editor, and change it's values like any other weapon. You can change things like the min/max damage per round, how many rounds are fired in a burst, AP cost, etc.
--- Code: ---[Proto]
ProtoId=518
Type=3
PicMap=art\items\gunautoc.frm
PicInv=art\inven\gunautoc.frm
Flags=134218143
DisableEgg=1
Deteriorable=1
Weight=4535
Volume=1
SoundId=48
Material=1
Weapon_Anim1=12
Weapon_MaxAmmoCount=800
Weapon_Caliber=6
Weapon_DefaultAmmoPid=35
Weapon_MinStrength=1
Weapon_ActiveUses=1
Weapon_CriticalFailture=2
Weapon_Skill_0=201
Weapon_Skill_1=200
Weapon_Skill_2=200
Weapon_DmgType_0=1
Weapon_Anim2_0=Anim2Burst
Weapon_PicUse_0=art\intrface\burst.frm
Weapon_PicUse_1=art\intrface\blank.frm
Weapon_PicUse_2=art\intrface\blank.frm
Weapon_DmgMin_0=10
Weapon_DmgMax_0=14
Weapon_MaxDist_0=40
Weapon_Round_0=40
Weapon_ApCost_0=6
Weapon_SoundId_0=76
--- End code ---
Also, you have other options as well. Maybe you don't want them to do more DAMAGE, but want to change some of the turrets parameters for other reasons.
Open sad_enter.fomap in text editor or mapper, and you can see the script name and function on the turrets. It's warehouse_turret@_TurretInit
Here's that function in that script:
--- Code: ---// Turret functions
void _TurretInit( Critter& turret, bool firstTime )
{
turret.SetEvent( CRITTER_EVENT_IDLE, "_TurretIdle" );
turret.SetEvent( CRITTER_EVENT_SHOW_CRITTER, "_TurretShowCritter" );
turret.SetEvent( CRITTER_EVENT_PLANE_BEGIN, "_TurretBeginPlane" );
turret.ModeBase[ MODE_UNLIMITED_AMMO ] = 1;
}
--- End code ---
You can set different stats for the turret here, also.
For an example, here's the function in replication.fos for the turret in the Hell map:
--- Code: ---void _TurretInit( Critter& turret, bool firstTime )
{
turret.StatBase[ ST_PERCEPTION ] = 10;
turret.SkillBase[ SK_BIG_GUNS ] = 300;
turret.SkillBase[ SK_ENERGY_WEAPONS ] = 300;
turret.ModeBase[ MODE_NO_ENEMY_STACK ] = 1;
turret.ModeBase[ MODE_UNLIMITED_AMMO ] = 1;
}
--- End code ---
So you have a few options to make them more challenging, or deadly, or whatever you wish.
Demenise:
Sometimes ill go into an encounter and die with stuff but after i respawn i go to world map and the encounter is located on the world map only if i drop item there and die is there a way to get rid of it so the encounter doesn't get located on the world map?
Demenise:
I also have a problem with critters wearing armor in worldmap_init I put .AddItem( PID_LEATHER_JACKET, 1, 1, SLOT_ARMOR ) under the critter id that I wanted to wear it and it worked but i did it for the caravan guards and unity patrol ncr etc.. and they don't wear the armors I wanted them to wear instead they put the items in the inventory why is it doing this it works for some critters?
OmegaPL:
if I'm right , appearance of npc depends on it's crittertype or something like that . so if you give it armor , it won't change it's appearance.
You can find crittertype in \proto\critters - "ST_BASE_CRTYPE"
Wipe:
--- Quote from: OmegaPL on April 15, 2013, 03:32:22 pm ---if I'm right , appearance of npc depends on it's crittertype or something like that . so if you give it armor , it won't change it's appearance.
You can find crittertype in \proto\critters - "ST_BASE_CRTYPE"
--- End quote ---
CrType limitations of wearing armor (and other things) are defined in data/CritterTypes.cfg, protos have nothing to do with that. Default scripts callbacks, in critter_item_movement module, won't allow any critter to use any armor if that's how it's set in .cfg
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version