@doompants oh, luckily I know when it happend. As the changelog in version 3811 said:
#6360 the hitboxes have been changed to solve that some times torpedoes randomly miss the unit by traveling underneath it.
But it looks like this has some unknown effects on the units in the mod. I'll check this later, but please understand that I may not be able to fix them, FAF code changes are difficult for me right now!
Posts made by ZBC
@zhanghm18
I tested this unit over and over again yesterday in a custom game and didn't encounter the problem you described. When you issue a stop or move command during summoning, the unit will stop summoning (play an animation that retracts the turret) and then execute the command; when you issue an attack command again, it will start summoning the meteorite again (play an animation that unfolds the turret), and I didn't encounter any problems with it getting stuck.
Did you download the latest blackops mod from Uveso's github page (https://github.com/Uveso) instead of the FAF repository?I've noticed that a lot of the mods in the FAF repository don't get updated in a timely manner.
@nomads Oddly enough, I'm also using one of the 7zip distributions (Nana zip) to package the files. May be questions of network caused the uploaded files to be corrupted. I will repackage and upload them.
@zhanghm18 Please hold off on the other mods for now, I'm not currently deep enough into playing them to know exactly how they were supposed to work.
@zhanghm18 Oh, and this issue came up yesterday when I was playing with a friend, but at the time we agreed that it was a setting of this unit XD.
I'll be checking this out again.
@blackrobe If you have found any bugs in blackops, please tell me and I will try to fix them XD.
Now, enjoy the cool transformations of CZAR!
At line 140 of the file, the code
“AnimationActivate = ‘/hook/units/UAA0310/UAA0310_AOpen.sca’,”
incorrectly references a location that does not exist, resulting in the morphing animation of the CZAR not being played correctly. We should change it to
“AnimationActivate = ‘/mods/BlackOpsFAF-Unleashed/hook/units/UAA0310/UAA0310_AOpen.sca’,”
In the mod, CZAR loses the shield but has a second weapon, the comment in the lua code reads “Button pressed, czar cannot build or store any units, enable new weapons take extra damage, use the DoTakeDamage function and a self.damageMod = 1.0 self.damageMod = 1.2, unit.lua line 781”, and then the CZAR morphs to resemble a blooming flower, thus unleashing a much more powerful more powerful attacks. However, in the file “BlackOpsFAF-Unleashed\hook\units\UAA0310\UAA0310_unit.bp”, there is an error that prevents this morphing animation from being played correctly.
First of all, Mr. Uveso must be thanked for his work, without him we would never be able to play this classic mod again on the FAF platform, but now I have to point out one of his little mistakes in UAA0310 (T4 Experimental Aircraft Carrier CZAR).
@zhanghm18
Thanks for your support! Because I'm not the real author of this mod, I won' t change any features of this mod (which may cause copyright infringement ) I only adapted it to the latest version game of FAF,without any effect, textures, or function changed(which would probably be blasphemy to a decade-old classic mod), that 's all.
One day if I have some idea and enough technical skills, I will make my own explosion mod,just as RK did.
The latest version has been uploaded. Any testing and feedback is welcome!
And, you need to add the following definition to the beginning of the moded defaultexplosions.lua file:
"local SDEffectTemplate = import('/mods/rks_explosions/lua/SDEffectTemplates.lua')
local NEffectTemplate = import('/mods/rks_explosions/lua/NEffectTemplates.lua')"
Then you'll see that the mod will almost work (but there are still some units with incorrect fire effects, such as the Experimental Bomber, which will require some more detailed modifications, which I'm still working on)
Then, let's go to the FAF github repository to find a key file:
https://github.com/FAForever/fa/blob/develop/lua/defaultexplosions.lua
Download it and compare it to rks_explosions\hook\lua\defaultexplosions.lua;
We can see that the contents of the function “CreateScalableUnitExplosion” have changed considerably. That is why the mod doesn't work properly.
A simple solution is to overwrite the defaultexplosions.lua file in the mod with the same file in FAF, and then using your text editor, modify"function CreateScalableUnitExplosion "to the following form:
function CreateScalableUnitExplosion(unit, debrisMultiplier, circularDebris)
debrisMultiplier = debrisMultiplier or 1
circularDebris = circularDebris or false
if unit and (not IsDestroyed(unit)) then
if IsUnit(unit) then
-- cache blueprint values
local blueprint = EntityGetBlueprint(unit)
local sx = blueprint.SizeX or 1
local sy = blueprint.SizeY or 1
local sz = blueprint.SizeZ or 1
-- cache stats
local army = unit.Army
local boundingXZRadius = 0.25 * (sx + sz)
local boundingXYZRadius = 0.166 * (sx + sy + sz)
local volume = sx * sy * sz
local layer = unit.Layer
-- data for emitters / shaking
local baseEffects = false
local environmentEffects = false
local shakeTimeModifier = 0
local shakeMaxMul = 1
if layer == 'Land' then
-- determine land effects
if boundingXZRadius < 1.1 then
baseEffects = NEffectTemplate.ExplosionSmallest
elseif boundingXZRadius > 3.75 then
-- large units cause camera to shake
baseEffects = NEffectTemplate.ExplosionSmall
ShakeTimeModifier = 1.0
ShakeMaxMul = 0.25
else
baseEffects = NEffectTemplate.ExplosionSmaller
end
-- environment effects (splat / decal creation)
local position = EntityGetPosition(unit)
local scorchRotation = 6.28 * Random()
local scorchDuration = 200 + 150 * Random()
local scorchLOD = 300 + 300 * Random()
if boundingXZRadius > 1.2 then
CreateDecal(
position,
scorchRotation,
UpvaluedScorchDecalTextures[Random(1, ScorchDecalTexturesN)],
'',
'Albedo',
boundingXZRadius,
boundingXZRadius,
scorchLOD,
scorchDuration,
army
)
else
CreateSplat(
position,
scorchRotation,
UpvaluedScorchSplatTextures[Random(1, ScorchSplatTexturesN)],
boundingXZRadius,
boundingXZRadius,
scorchLOD,
scorchDuration,
army
)
end
elseif layer == 'Air' then
-- determine air effects
if boundingXZRadius < 1.1 then
baseEffects = ExplosionSmallAir
elseif boundingXZRadius > 7 then
-- large units cause camera to shake
baseEffects = ExplosionLarge
ShakeTimeModifier = 1.0
ShakeMaxMul = 0.25
else
baseEffects = ExplosionMedium
end
elseif layer == 'Water' then
-- determine water effects
if boundingXZRadius < 2 then
baseEffects = ExplosionSmallWater
elseif boundingXZRadius > 3.6 then
-- large units cause camera to shake
baseEffects = ExplosionMediumWater
ShakeTimeModifier = 1.0
ShakeMaxMul = 0.25
else
baseEffects = ExplosionMediumWater
end
-- environment effects
if boundingXZRadius < 1.0 then
environmentEffects = Splashy
end
end
-- create the emitters
if baseEffects then
CreateEffectsOpti(unit, army, baseEffects)
end
if environmentEffects then
CreateEffectsOpti(unit, army, environmentEffects)
end
-- create the flash
CreateLightParticle(
unit,
-1,
army,
boundingXZRadius * (2 + 1 * Random()), -- (2, 3)
10.5 + 4 * Random(), -- (10.5, 14.5)
'glow_03',
'ramp_flare_02'
)
-- determine debris amount
local amount = debrisMultiplier * MathMin(Random(1 + (boundingXYZRadius * 6), (boundingXYZRadius * 15)) , 100)
-- determine debris velocity range
local velocity = 2 * boundingXYZRadius
local hVelocity = 0.5 * velocity
-- determine heading adjustments for debris origin
local heading = -1 * unit:GetHeading() -- inverse heading because Supreme Commander :)
local mch = MathCos(heading)
local msh = MathSin(heading)
-- make it slightly smaller so that debris originates from mesh and not from the air
sx = 0.8 * sx
sy = 0.8 * sy
sz = 0.8 * sz
-- create debris
for i = 1, amount do
-- get some random numbers
local r1, r2, r3 = Random(), Random(), Random()
-- position somewhere in the size of the unit
local xpos = r1 * sx - (sx * 0.5)
local ypos = 0.1 * sy + 0.5 * r2 * sy
local zpos = r3 * sz - (sz * 0.5)
-- launch them into space
local xdir, ydir, zdir
if circularDebris then
xdir = velocity * r1 - (hVelocity)
ydir = velocity * r2 - (hVelocity)
zdir = velocity * r3 - (hVelocity)
else
xdir = velocity * r1 - (hVelocity)
ydir = boundingXYZRadius + velocity * r2
zdir = velocity * r3 - (hVelocity)
end
-- choose a random blueprint
local bp = ProjectileDebrisBps[MathMin(ProjectileDebrisBpsN, Random(1, i))]
EntityCreateProjectile(
unit,
bp,
xpos * mch - zpos * msh, -- adjust for orientation of unit
ypos,
xpos * msh + zpos * mch, -- adjust for orientation of unit
xdir * mch - zdir * msh, -- adjust for orientation of unit
ydir,
xdir * msh + zdir * mch -- adjust for orientation of unit
)
end
-- do camera shake
EntityShakeCamera(unit, 30 * boundingXZRadius, boundingXZRadius * shakeMaxMul, 0, 0.5 + shakeTimeModifier)
end
end
end
First, you should get the newest mod from github(Not FAF, the newest version hasn't be uploaded) : https://github.com/RK4000/RK-s-Explosions/releases
And then, you must rename the mod folder name from ''RK-s-Explosions-13'' to ''rks_explosions'', to make most of effects work.(Because the path of most effects in lua is still "rks_explosions", not "RK-s-Explosions-13")
As we all know, RK-s-Explosions Mod is the coolest explosion effects mod for FA, but it doesn't work on the latest version of faf now. Since I can't contact with the author (I'm a Chinese player so I can't use any common social programs like x, telegram or gmail).
Without the author's permission, I won't post the moded files, but I will tell you how to make it work on the latest 3812 version of the game by simply modifying a lua file.
Now I have found a bug because of some old function in "Firey Explosion Mod FAF\hook\lua\defaultexplosions.lua", so that if you are playing campaign, the goal maybe not successfully appeared( such as Aeon 03:High Tide). So when you encounter any bugs, please delete this file.
I am trying to fix it, but it may takes a long time.
As we all know, Firey Explosions mod is a very classic mod for improving explosion effects, but it doesn't work properly on the latest FAF platforms anymore, so I spent a week updating some of its old code to make it adaptable to the latest versions of the FAF.
If you encounter any problems while playing the mod, please contact me and I will troubleshoot as much as I can.
If this violates anyone's rights, please contact me and I will remove it immediately.
2024.07.22
Hello,everyone,and the newest version is here! I have tried to fix the bug in defaultexplosions.lua, and now it should work well.
2024.07.28
Hello, I'm here, with another bug fix version! I spent some time fixing the files under \hook\lua\sim\units and now some of the more subtle explosion animations can be played correctly.
2024.08.10
Another bug fixed version here. I have fixed some bug when you try to capture the structures while playing a campaign(such as FA.2)
2024.08.16
It's been a while! The latest version is here, fixing an issue where some units might not spawn wreckage properly after death (like CZAR)
Firey Explosion Mod FAF.zip
2024.09.06