UNIT FIXES

Post here if you want to help developing something for FAF.

UNIT FIXES

Postby A_vehicle » 06 Sep 2012, 00:30

UEF Billy Nuke
The 'Billy' tactical nuke has only 2 health while the normal CDR tactical missile has 3, one more than it does. Upgrading consequently reduces the UEF CDR missile health. It should be set to either 3 or 4.

Seraphim T1 mobile anti air gun
To get the unit to fire from both muzzles, just set "UseFiringSolutionInsteadOfAimBone" to true and re-add the second muzzle to its muzzle list.

Air Scout No Sonar Ring
Add OVERLAYSONAR to make it display the sonar ring. Right now it doesn't show.

Limiting Directfire Naval Oblivion Gun Wasted Shots
The number of wasted oblivion cannon shots from the Aeon battleship and destroyer can be reduced by setting the firing tolerance so that the weapon will finish charging just as the weapon lines up on target. To do this, make the FiringTolerance = (MuzzleChargeDelay) * (TurretYawSpeed). I suggest a tolerance of ( 2.5 seconds * 90 degrees per second) = 225 for the Destroyer, (2.5 seconds * 60 degrees per second) = 150 for the T3 Battleship, and (2.5 seconds * 10 degrees per second) = 25 for the Experimental Battleship.

UEF Strategic Missile Submarine
The missile bay doors do not close properly on the sub. Change its weapon scripts so that they look like this:
Code: Select all
        CruiseMissiles = Class(TIFCruiseMissileLauncherSub) {
            CurrentRack = 1,
           
            PlayFxMuzzleSequence = function(self, muzzle)
                local bp = self:GetBlueprint()
                self.Rotator = CreateRotator(self.unit, bp.RackBones[self.CurrentRack].RackBone, 'z', nil, 90, 90, 90)
                muzzle = bp.RackBones[self.CurrentRack].MuzzleBones[1]
                self.Rotator:SetGoal(90)
                TIFCruiseMissileLauncherSub.PlayFxMuzzleSequence(self, muzzle)
                WaitFor(self.Rotator)
                WaitSeconds(1)
                self.Rotator:SetGoal(90)  --<--added
                WaitFor(self.Rotator)  --<--added
                self.Rotator:Destroy()  --<--added
                self.Rotator = nil  --<--added
            end,
           
            CreateProjectileAtMuzzle = function(self, muzzle)
                muzzle = self:GetBlueprint().RackBones[self.CurrentRack].MuzzleBones[1]
                if self.CurrentRack >= 6 then
                    self.CurrentRack = 1
                else
                    self.CurrentRack = self.CurrentRack + 1
                end
                TIFCruiseMissileLauncherSub.CreateProjectileAtMuzzle(self, muzzle)
            end,
           
            PlayFxRackReloadSequence = function(self)
                WaitSeconds(1)
                self.Rotator:SetGoal(0)
                WaitFor(self.Rotator)
                self.Rotator:Destroy()
                self.Rotator = nil
            end,
        },
        NukeMissiles = Class(TIFStrategicMissileWeapon) {
            CurrentRack = 1,
           
            PlayFxMuzzleSequence = function(self, muzzle)
                local bp = self:GetBlueprint()
                self.Rotator = CreateRotator(self.unit, bp.RackBones[self.CurrentRack].RackBone, 'z', nil, 90, 90, 90)
                muzzle = bp.RackBones[self.CurrentRack].MuzzleBones[1]
                self.Rotator:SetGoal(90)
                TIFStrategicMissileWeapon.PlayFxMuzzleSequence(self, muzzle)
                WaitFor(self.Rotator)
                WaitSeconds(1)
                self.Rotator:SetGoal(90)  --<--added
                WaitFor(self.Rotator)  --<--added
                self.Rotator:Destroy()  --<--added
                self.Rotator = nil  --<--added
            end,
           
            CreateProjectileAtMuzzle = function(self, muzzle)
                muzzle = self:GetBlueprint().RackBones[self.CurrentRack].MuzzleBones[1]
                if self.CurrentRack >= 2 then
                    self.CurrentRack = 1
                else
                    self.CurrentRack = self.CurrentRack + 1
                end
                TIFStrategicMissileWeapon.CreateProjectileAtMuzzle(self, muzzle)
            end,
           
            PlayFxRackReloadSequence = function(self)
                WaitSeconds(1)
                self.Rotator:SetGoal(0)
                WaitFor(self.Rotator)
                self.Rotator:Destroy()
                self.Rotator = nil
            end,
        },


UEF SCU Drones
Add this script to the SCU to make it rebuild its drones.
Code: Select all
   RebuildPod = function(self, Pod)
         local ecobp = self:GetBlueprint().Pod
         self.RebuildingPod = CreateEconomyEvent(self, 1600, 160, 10, self.SetWorkProgress)
         self:RequestRefreshUI()
         WaitFor(self.RebuildingPod)
         self:SetWorkProgress(0.0)
            local location = self:GetPosition('AttachSpecial01')
            local pod = CreateUnitHPR('UEA0003', self:GetArmy(), location[1], location[2], location[3], 0, 0, 0)
            pod:SetParent(self, 'Pod')
            pod:SetCreator(self)
            self.Trash:Add(pod)
            self.HasPod = true
            self.Pod = pod      
      self:RequestRefreshUI()
   end,   
   
    NotifyOfPodDeath = function(self, pod)
          if self.HasPod == true then
         self:ForkThread(self.RebuildPod)
      else
         self:ForkThread(self.RebuildPod)
      end
   end,

Or something like that. Of course you didn't need me to tell you how to do this, but I really want FAF to have SCUs that rebuild drones and I don't know where else to take this...

Missing Weapon Muzzles/Racks
Enumerated bellow:
Seraphim Battleship;
Nuke muzzles and racks should include the unused second launcher, Projectile02 in addition to Projectile01
Aeon Destroyer;
Torpedo muzzles should be Projectile01,02,03,04
Torpedo Defense muzzles should be Projectile06,07,08,09
Depth Charge muzzle should be Projectile05 not uas0201
Aeon Submarine Hunter;
Torpedo Defense uses Projectile_Right_Center01 and Left_Center01, but not Projectile_Right_Center02 and Left_Center02
Aeon Frigate;
Torpedo Defense muzzles should be Projectile01 and 02
Cybran Submarine Killer;
Unused muzzles for torpedo defense include Flare_Muzzle03 and 04

Aeon Torpedo Defense
AIMTorpedoDefense is too slow compared to the other anti torpedo projectiles that the aeon and seraphim use. Add/change the following stats to make it useful
Code: Select all
        #Acceleration = 30, --removed, others don't have this
        #Lifetime = 0.5,  --removed, the others dont have a lifetime
        MaxSpeed = 30, #from 10, all other similar projectiles have it at 30


Aircraft Exhuast
There are several aircraft with missing exhaust effects, including:
UEF;
air scout (jet effect)
Cybran;
air scout (jet effect), interceptor (jet effect), ASF (jet effect), and all gunships except soul ripper (they have unused exhaust bones)
Seraphim:
air scout (white fire stuff), interceptor (white fire), gunship (white fire), fighter/bomber (white fire on both ring engines), torpedo bomber (two unused ring engines for white fire), ASF (two unused ring engine exhausts for white fire), spy plane (has engines like the transports, but has no white fire exhaust, just wavy seraphim contrails)

Unused Rocking Thread
If you guys want, GPG left in a thread that makes ships rock in the water when stopped. Just add
Code: Select all
    Display = {
        MaxRockSpeed = (number),
    },
to trigger the thread. I've tested it and I think it's bug free. It looks more realistic, too. The number you will have to decide upon, I don't think the community cares too much unless the number is set so high the ship capsizes with every rock. LOL.

Tempest Building T3 Ships
This isn't really a bugfix so much as making the Tempest fit in with the other experimental factory units. Give it the regular tbuild tree options for construction and then insert this into the BuildState function of the script so that the T3 ships don't overlap with the Tempest during construction:
Code: Select all
                elseif EntityCategoryContains( categories.uas0203, unitBuilding ) then
                    unitBuilding:SetParentOffset( {0,0,1.5} )
                elseif EntityCategoryContains( categories.xas0204, unitBuilding ) then
                    unitBuilding:SetParentOffset( {0,0,1.4} )
                elseif EntityCategoryContains( categories.uas0302, unitBuilding ) then
                    unitBuilding:SetParentOffset( {0,0,6.4} )
                elseif EntityCategoryContains( categories.uas0303, unitBuilding ) then
                    unitBuilding:SetParentOffset( {0,0,7.85} )
                elseif EntityCategoryContains( categories.uas0304, unitBuilding ) then
                    unitBuilding:SetParentOffset( {0,0,1.75} )
                elseif EntityCategoryContains( categories.xas0306, unitBuilding ) then
                    unitBuilding:SetParentOffset( {0,0,5.75} )


Soul Ripper
The soulripper's electron bolters deal splash damage, but its rockets do not. This is purely aesthetic, but it would be nice to have it fixed.
Typical Voodoo Edition Map Dialog:
Master_lee wrote:Varaxis ist loser vote all my maps 1 !!! he cant make maps noob go home !!!!!!

Padfoot141 wrote:Terrible map. Spawn with 6 commanders and there are civillians with fatboys.

Master_lee wrote:Padfoot141 go home loser ! go play thermo !
A_vehicle
Avatar-of-War
 
Posts: 55
Joined: 31 Jul 2012, 03:20
Has liked: 1 time
Been liked: 2 times
FAF User Name: A_vehicle

Re: UNIT FIXES

Postby Ze_PilOt » 06 Sep 2012, 09:22

That's some nice work, thanks.

Can you please use the repository to make your changes ?

Exactly the same as explained in viewtopic.php?f=45&t=1788.

Please separate each fix in his own commit, so it's easier for me to revert if there is a problem at some point.

If you do that, the fixes will be added immediatly to the main code and will be patched sooner.
I'm saying that because some others guys did some fixes months ago, that are not in the code yet, because my lack of time to do it.
Nossa wrote:I've never played GPG or even heard of FA until FAF started blowing up.
User avatar
Ze_PilOt
Supreme Commander
 
Posts: 8985
Joined: 24 Aug 2011, 18:41
Location: fafland
Has liked: 18 times
Been liked: 376 times
FAF User Name: Ze_PilOt

Re: UNIT FIXES

Postby pip » 07 Sep 2012, 22:30

Wow, that's an impressive amount of fixes, some of which will be very much welcomed (Aeon navy issues finally fixed!). I hope you can use the repository as Pilot said.

For the Billy, it should have at least one more health than regular ACU tac missile IMO.
pip
Supreme Commander
 
Posts: 1826
Joined: 04 Oct 2011, 15:33
Has liked: 191 times
Been liked: 86 times
FAF User Name: pip

Re: UNIT FIXES

Postby Myrdral » 08 Sep 2012, 01:12

Keep in mind that a few of these fixes change balance.
Myrdral
Avatar-of-War
 
Posts: 159
Joined: 12 Jul 2012, 18:14
Has liked: 0 time
Been liked: 0 time
FAF User Name: Myrdral

Re: UNIT FIXES

Postby Ze_PilOt » 17 Sep 2012, 14:52

Any news on this ? Do you want some help for making the repository working ?
Nossa wrote:I've never played GPG or even heard of FA until FAF started blowing up.
User avatar
Ze_PilOt
Supreme Commander
 
Posts: 8985
Joined: 24 Aug 2011, 18:41
Location: fafland
Has liked: 18 times
Been liked: 376 times
FAF User Name: Ze_PilOt

Re: UNIT FIXES

Postby ColonelSheppard » 18 Sep 2012, 23:02

just say "do this i got no time or whatever" and i start, i really would like to see this in soon
User avatar
ColonelSheppard
Contributor
 
Posts: 2997
Joined: 20 Jul 2012, 12:54
Location: Germany
Has liked: 154 times
Been liked: 165 times
FAF User Name: Sheppy

Re: UNIT FIXES

Postby pip » 19 Sep 2012, 10:40

"Do it i got no time".
pip
Supreme Commander
 
Posts: 1826
Joined: 04 Oct 2011, 15:33
Has liked: 191 times
Been liked: 86 times
FAF User Name: pip

Re: UNIT FIXES

Postby ColonelSheppard » 20 Sep 2012, 21:02

UPDATE:

ZeP has accepted the pull-request, so i guess that means the following fixes will be in an upcoming patch:

- Sonar overlay for T1 Airscouts displayed correctly
- a radius for mobile stealth (Cybran) is now shown on the exact border of the stealthfield, the stealthifield is now as big as it was intended to without the bug in the engine
- billy tactical nuke now has the correct health (3)
- Aeon ships armed with Oblivion cannons now already charge their cannons while turning (resulting in less wasted shots)
- aeon torpedo defence lost it's acceleration time (i guess that will not change much in gameplay but it will feel a lot better)
i also uploaded new tooltips for civilean defense and king of the hill


the following this were not in that pull-request


- sera t1 aa --> seriously it looks crappy
- UEF-Sub --> vehicle's code does not work, and the one i thought of does not do, too if you got some ideas about that feel
free to say
- Tempest --> won't touch that defenitly balance this pls do discuss this somewhere else
- Soulripper --> actually both do have as far as I could see....
- SACU --> during the test games i noticed that this quite problematic, cause SACUs need nearly 500 mass for it's drones
that means 2 issues: - early SACUs can be a mass trap (while the recent ideas were about bringing SACUs
more into mid game)
- multiple SACUs doing drone after they were kill bye some AOE damge will may crash
your eco completely

so basicly we would need a poll about SACUs

i would also code the following suggestions from the Forum: (hope i will be able to use Bukket better this time)


- replace the "server need to know who won sores" SHOWN at the end of the game by the actual Points, it's not really because it's important, but many people get confused by it i noticed (and i think this is preventable)
- sort live-Replays by Rating option (i real have no idea how to do that yet, going to waste some thoughts on it)
- make download button in the map vault way bigger
- little rocking (1,5) --> DONE

want to get an "ok" from Ze_Pilot before and it's quite much, so help is wellcome i guess
Last edited by ColonelSheppard on 13 Dec 2012, 11:37, edited 5 times in total.
User avatar
ColonelSheppard
Contributor
 
Posts: 2997
Joined: 20 Jul 2012, 12:54
Location: Germany
Has liked: 154 times
Been liked: 165 times
FAF User Name: Sheppy

Re: UNIT FIXES

Postby discoverer2k4 » 21 Sep 2012, 11:44

- replace the "server need to know who won sores" SHOWN at the end of the game by the actual Points, it's not really because it's important, but many people get confused by it i noticed (and i think this is preventable)


Totally agree - as a noob and as someone who knows a lot of noobs - its true - they are confused :)

Can it be like this?
discoverer2k4: 1021 -> 1055 (+34)
mid1: 1477 -> 1400 (-77)


or like this:
discoverer2k4: +6 [1021 -> 1055 (+34)]
mid1: -1 [1477 -> 1400 (-77)]


That would be great, because all players (or at least me) look into the leaderboards after the match to see how much points they got... its faster
ranking :
~1500 global / ~1100 ladder
~1100 games / ~ 400 games
User avatar
discoverer2k4
Contributor
 
Posts: 174
Joined: 03 Jul 2012, 17:37
Has liked: 0 time
Been liked: 0 time
FAF User Name: discoverer2k4

Re: UNIT FIXES

Postby ColonelSheppard » 21 Sep 2012, 12:24

something like that yes in the intrest of keeping it simple i thought i will only say :

[Player]: -/+ [worst rating possible change]
[Player]: -/+ [worst rating possible change]
[Player]: -/+ [worst rating possible change]
etc.

as you do have the ingame rating UI-Mod and can look you rating (if your are intressed in) in the ladder after

maybe i sort it by team or something
User avatar
ColonelSheppard
Contributor
 
Posts: 2997
Joined: 20 Jul 2012, 12:54
Location: Germany
Has liked: 154 times
Been liked: 165 times
FAF User Name: Sheppy

Next

Return to Contributors

Who is online

Users browsing this forum: No registered users and 1 guest