Jump to content

Patch Notes discussion November 2023


BIGNEWY

Recommended Posts

4 hours ago, Pikey said:

fwiw (this will get lost in about 2hrs)
getCategory() was fixed after many years, maybe never worked since 1.2. This will break scritps because people will have learned how to use it over time and copy paste does the rest.

If you have scripts with examples like:

category = event.initiator:getCategory() if category == Object.Category.UNIT then

This will fail because the return has changed to depend what the function was called on, for example it returns now;

Unit.Category = { AIRPLANE = 0, HELICOPTER = 1, GROUND_UNIT = 2, SHIP = 3, STRUCTURE = 4 }
Airbase.Category = { AIRDROME = 0, HELIPAD = 1, SHIP = 2, }
Weapon.Category { SHELL = 0, MISSILE = 1, ROCKET = 2, BOMB = 3, }

Beforehand it used to be fixed to this:
{UNIT = 1, WEAPON = 2, STATIC = 3, BASE = 4, SCENERY = 5, CARGO = 6,}

Moose is fine (if you immediately update) and SpecialK has updated a bunch of things but I expect here and there people will bump into this.

 

I think we ran into this. We play the FOOTHOLD dynamic persistent missions and all of a sudden things stopped working (granting of credits for kills) and we did get some Script error messages that seemed related to this.

I noticed it tonight on Marianas Foothold, and then I fired up the Foothold Caucasus 1.4.4 and the same thing happened (no credits granted nor message). I didn't fly that long enough to get a script error.

I know a lot of people run various Foothold flavors on their servers.  Have you noticed this happening?


Edited by Recluse
Link to comment
Share on other sites

Very good performance with a 4090, with hp v2, with latest nvidia driver. I also use Taz mods.

I see better terrain shadows now..I also see some new details on the ground due to better performance. Incredible!

I use 200pct WMR, and 2 in detail settings dcs. ULTRA CRISP at 45 fps locked almost anywhere (single player).

nvcp: x16, ultra low latency, max power and clamp, rest default

Dcs is getting better and better. Thanks!

 


Edited by KCOOL
  • Like 2
Link to comment
Share on other sites

13 hours ago, RaisedByWolves said:

That doesn’t seem to be a fix.

Ok that’s a shame as it does work for me but I have read that for some users it does not work for them. 

  • Like 1

harrier landing GIFRYZEN 7 3700X Running at 4.35 GHz

NVIDIA GeForce GTX 1080Ti

32gb DDR4 RAM @3200 MHz

Oculus CV1 NvME 970 EVO

TM Warthog Stick & Throttle plus 11" extension. VKB T-Rudder MKIV

Link to comment
Share on other sites

1) I saw a new setting "Max FPS" and it was default set to 180. What is that? I can turn it to 300.

2) 3D Pilot model (F/A-18) now they fixed the head when looking left/right, that's amazing. But my question is: 

  • Will the knee board on the Pilot model work also? 
  • Will the helm visor have a dark texture/filter? Like when you fold down the visor, will be darker and against sun radiation for example ?
  • On the helmet, there is missing the hose. You were actually able to see the hose, but now it disappeared. Is this a bug, or it's been removed?

Sorry for asking here directly, but since there is no information about the new Pilot Model or insufficient information about this topic, i would be happy to know more. I've been very dependent on the F-18 pilot since the new one came out, I'm just hyped.

Thank you for those fixes and updates, ED

Link to comment
Share on other sites

18 minutes ago, Omega1-1 said:

1) I saw a new setting "Max FPS" and it was default set to 180. What is that? I can turn it to 300.

It is the software fps-cap that is enforced by the application itself. It limits the. max fps. to the specified value. So e.g. if you set it to 90 but your CPU/GPU would be able to run more than that, it would still only output 90. However if you set it to 90 and your hardware only achieves 80, it doesn't do anything.

This could formerly be done by altering an autoexec or the graphics.lua (or set a limit in a third party software like afterburner/rivastatistics). It is just a creature comfort feature to be able to do it from the menu now. 

  • Like 2

"Muß ich denn jedes Mal, wenn ich sauge oder saugblase den Schlauchstecker in die Schlauchnut schieben?"

Link to comment
Share on other sites

8 hours ago, Recluse said:

I think we ran into this. We play the FOOTHOLD dynamic persistent missions and all of a sudden things stopped working (granting of credits for kills) and we did get some Script error messages that seemed related to this.

I noticed it tonight on Marianas Foothold, and then I fired up the Foothold Caucasus 1.4.4 and the same thing happened (no credits granted nor message). I didn't fly that long enough to get a script error.

I know a lot of people run various Foothold flavors on their servers.  Have you noticed this happening?

 

Foothold is a Mist based mission, I know that's still updated by Grimes, but I have no idea if that is impacted or how, I haven't tried it personally.

___________________________________________________________________________

SIMPLE SCENERY SAVING * SIMPLE GROUP SAVING * SIMPLE STATIC SAVING *

Link to comment
Share on other sites

8 hours ago, Recluse said:

I think we ran into this. We play the FOOTHOLD dynamic persistent missions and all of a sudden things stopped working (granting of credits for kills) and we did get some Script error messages that seemed related to this.

I noticed it tonight on Marianas Foothold, and then I fired up the Foothold Caucasus 1.4.4 and the same thing happened (no credits granted nor message). I didn't fly that long enough to get a script error.

I know a lot of people run various Foothold flavors on their servers.  Have you noticed this happening?

 

Yes it errors for me as well

No more pre-orders

Click here for tutorials for using Virpil Hardware and Software

 

Click here for Virpil Flight equipment dimensions and pictures.

.

Link to comment
Share on other sites

2 minutes ago, Pikey said:

Foothold is a Mist based mission, I know that's still updated by Grimes, but I have no idea if that is impacted or how, I haven't tried it personally.

Yeah, I realize that, but I am not skilled enough in scripting to know if it is affected. All I know is that after the update all of our Foothold missions ceased to work in the ways they had just before.

If it is any diagnostic help, this (to the best of my limited ability to discern)  is the kind of script that seems to be failing: I can see the UNIT.CATEGORY.AIRPLANE and following code that seems similar.

function BattleCommander:startRewardPlayerContribution(defaultReward, rewards)
        self.playerRewardsOn = true
        self.rewards = rewards
        self.defaultReward = defaultReward
        
        local ev = {}
        ev.context = self
        ev.rewards = rewards
        ev.default = defaultReward
        function ev:onEvent(event)
            local unit = event.initiator
            if unit and unit:getCategory() == Object.Category.UNIT and (unit:getDesc().category == Unit.Category.AIRPLANE or unit:getDesc().category == Unit.Category.HELICOPTER)then
                local side = unit:getCoalition()
                local groupid = unit:getGroup():getID()
                local pname = unit:getPlayerName()
                if pname then
                    if (event.id==6) then --pilot ejected
                        if self.context.playerContributions[side][pname] ~= nil and self.context.playerContributions[side][pname]>0 then
                            local tenp = math.floor(self.context.playerContributions[side][pname]*0.25)
                            self.context:addFunds(side, tenp)
                            trigger.action.outTextForCoalition(side, '['..pname..'] ejected. +'..tenp..' credits (25% of earnings). Kill statistics lost.', 5)
                            self.context:addStat(pname, 'Points', tenp)
                            self.context.playerContributions[side][pname] = 0
                        end
                    end
                    
                    if (event.id==15) then  -- spawned
                        self.context.playerContributions[side][pname] = 0
                        self.context:resetTempStats(pname)
                    end
                    
                    if (event.id==28) then --killed unit
                        if event.target.getCoalition and side ~= event.target:getCoalition() then
                            if self.context.playerContributions[side][pname] ~= nil then
                                local earning,message,stat = self.context:objectToRewardPoints2(event.target)
                                
                                if earning and message then
                                    trigger.action.outTextForGroup(groupid,'['..pname..'] '..message, 5)
                                    self.context.playerContributions[side][pname] = self.context.playerContributions[side][pname] + earning
                                end
                                
                                if stat then
                                    self.context:addTempStat(pname,stat,1)
                                end
                            end
                        end
                    end
                    
                    if (event.id==4) then --landed
                        if self.context.playerContributions[side][pname] and self.context.playerContributions[side][pname] > 0 then
                            for i,v in ipairs(self.context:getZones()) do
                                if side==v.side and Utils.isInZone(unit, v.zone) then
                                    trigger.action.outTextForGroup(groupid, '['..pname..'] landed at '..v.zone..'.\nWait 10 seconds to claim credits...', 5)
                                    
                                    local claimfunc = function(context, zone, player, unitname)
                                        local un = Unit.getByName(unitname)
                                        if un and Utils.isInZone(un,zone.zone) and Utils.isLanded(un, true) and un:getPlayerName()==player then
                                            if un:getLife() > 0 then
                                                context:addFunds(zone.side, context.playerContributions[zone.side][player])
                                                trigger.action.outTextForCoalition(zone.side, '['..player..'] redeemed '..context.playerContributions[zone.side][player]..' credits', 5)
                                                context:printTempStats(zone.side,player)
                                                context:addTempStat(player, 'Points', context.playerContributions[zone.side][player])
                                                context:commitTempStats(player)
                                                context.playerContributions[zone.side][player] = 0
                                                
                                                context:saveToDisk() -- save persistance data to enable ending mission after cashing money
                                            end
                                        end
                                    end
                                    
                                    mist.scheduleFunction(claimfunc, {self.context, v, pname, unit:getName() }, timer.getTime()+10)
                                    break
                                end
                            end
                        end
                    end
                end
            end
        end

 

2 minutes ago, HC_Official said:

Yes it errors for me as well

Thanks for confirming!

Link to comment
Share on other sites

vor 22 Minuten schrieb Hiob:

It is the software fps-cap that is enforced by the application itself. It limits the. max fps. to the specified value. So e.g. if you set it to 90 but your CPU/GPU would be able to run more than that, it would still only output 90. However if you set it to 90 and your hardware only achieves 80, it doesn't do anything.

This could formerly be done by altering an autoexec or the graphics.lua (or set a limit in a third party software like afterburner/rivastatistics). It is just a creature comfort feature to be able to do it from the menu now. 

Thank you for the answer. 👍 Is still dont know when and if i should use it, but at least i know what it does.

Link to comment
Share on other sites

31 minutes ago, Omega1-1 said:

Thank you for the answer. 👍 Is still dont know when and if i should use it, but at least i know what it does.

You don't need to use it. Advantages of limiting the fps can be e.g.: Limiting the powerdraw of your GPU or locking the FPS to 60 or 120 to smoothen the panning with TrackIR.

But if you never had any use of tinkering with the fps in the first place, just leave it on the default value of 180. It won't impact visuals or gameplay in the slightest. 


Edited by Hiob
  • Like 1

"Muß ich denn jedes Mal, wenn ich sauge oder saugblase den Schlauchstecker in die Schlauchnut schieben?"

Link to comment
Share on other sites

38 minutes ago, Recluse said:

Yeah, I realize that, but I am not skilled enough in scripting to know if it is affected. All I know is that after the update all of our Foothold missions ceased to work in the ways they had just before.

If it is any diagnostic help, this (to the best of my limited ability to discern)  is the kind of script that seems to be failing: I can see the UNIT.CATEGORY.AIRPLANE and following code that seems similar.

function BattleCommander:startRewardPlayerContribution(defaultReward, rewards)
        self.playerRewardsOn = true
        self.rewards = rewards
        self.defaultReward = defaultReward
        
        local ev = {}
        ev.context = self
        ev.rewards = rewards
        ev.default = defaultReward
        function ev:onEvent(event)
            local unit = event.initiator
            if unit and unit:getCategory() == Object.Category.UNIT and (unit:getDesc().category == Unit.Category.AIRPLANE or unit:getDesc().category == Unit.Category.HELICOPTER)then
                local side = unit:getCoalition()
                local groupid = unit:getGroup():getID()
                local pname = unit:getPlayerName()
                if pname then
                    if (event.id==6) then --pilot ejected
                        if self.context.playerContributions[side][pname] ~= nil and self.context.playerContributions[side][pname]>0 then
                            local tenp = math.floor(self.context.playerContributions[side][pname]*0.25)
                            self.context:addFunds(side, tenp)
                            trigger.action.outTextForCoalition(side, '['..pname..'] ejected. +'..tenp..' credits (25% of earnings). Kill statistics lost.', 5)
                            self.context:addStat(pname, 'Points', tenp)
                            self.context.playerContributions[side][pname] = 0
                        end
                    end
                    
                    if (event.id==15) then  -- spawned
                        self.context.playerContributions[side][pname] = 0
                        self.context:resetTempStats(pname)
                    end
                    
                    if (event.id==28) then --killed unit
                        if event.target.getCoalition and side ~= event.target:getCoalition() then
                            if self.context.playerContributions[side][pname] ~= nil then
                                local earning,message,stat = self.context:objectToRewardPoints2(event.target)
                                
                                if earning and message then
                                    trigger.action.outTextForGroup(groupid,'['..pname..'] '..message, 5)
                                    self.context.playerContributions[side][pname] = self.context.playerContributions[side][pname] + earning
                                end
                                
                                if stat then
                                    self.context:addTempStat(pname,stat,1)
                                end
                            end
                        end
                    end
                    
                    if (event.id==4) then --landed
                        if self.context.playerContributions[side][pname] and self.context.playerContributions[side][pname] > 0 then
                            for i,v in ipairs(self.context:getZones()) do
                                if side==v.side and Utils.isInZone(unit, v.zone) then
                                    trigger.action.outTextForGroup(groupid, '['..pname..'] landed at '..v.zone..'.\nWait 10 seconds to claim credits...', 5)
                                    
                                    local claimfunc = function(context, zone, player, unitname)
                                        local un = Unit.getByName(unitname)
                                        if un and Utils.isInZone(un,zone.zone) and Utils.isLanded(un, true) and un:getPlayerName()==player then
                                            if un:getLife() > 0 then
                                                context:addFunds(zone.side, context.playerContributions[zone.side][player])
                                                trigger.action.outTextForCoalition(zone.side, '['..player..'] redeemed '..context.playerContributions[zone.side][player]..' credits', 5)
                                                context:printTempStats(zone.side,player)
                                                context:addTempStat(player, 'Points', context.playerContributions[zone.side][player])
                                                context:commitTempStats(player)
                                                context.playerContributions[zone.side][player] = 0
                                                
                                                context:saveToDisk() -- save persistance data to enable ending mission after cashing money
                                            end
                                        end
                                    end
                                    
                                    mist.scheduleFunction(claimfunc, {self.context, v, pname, unit:getName() }, timer.getTime()+10)
                                    break
                                end
                            end
                        end
                    end
                end
            end
        end

 

Thanks for confirming!

That function will fail (BattleCommander) now in this fix patch.

Depending on which script it is in, depends on who to ask to update it. It's not part of Mist, it's either the ZoneCommander part belonging to Dzsekeb or the mission builder 'Obi' whoever that is, maybe they have a forum thread? Once they figure it out you can replace that line with what the author intended for it.

___________________________________________________________________________

SIMPLE SCENERY SAVING * SIMPLE GROUP SAVING * SIMPLE STATIC SAVING *

Link to comment
Share on other sites

Yeah, I think the script was Dzsekeb's original with some updates by OBI for the Marianas flavor. I hope they see fit to fix it. Pretty sure that there are more instances throughout the Foothold scripts managing that stuff.  More challenging when we aren't collecting points for our successes!!


Edited by Recluse
Link to comment
Share on other sites

21 hours ago, Schlomo1933 said:

Again no Fix for Tomcat included ? Is the TCS still not working in MT?

I fly MT and my TCS works fine even before the patch...

v6,

boNes

  • Like 1

"Also, I would prefer a back seater over the extra gas any day. I would have 80 pounds of flesh to eat and a pair of glasses to start a fire." --F/A-18 Hornet pilot

Link to comment
Share on other sites

vor 1 Stunde schrieb bonesvf103:

I fly MT and my TCS works fine even before the patch...

v6,

boNes

That’s fine for you . But there are many people where it’s not working. And Heatblur told us they have a fix . But I did not made it into the last update… and this time it didn’t made it again. 

  • Like 1
Link to comment
Share on other sites

4 hours ago, Schlomo1933 said:

That’s fine for you . But there are many people where it’s not working. And Heatblur told us they have a fix . But I did not made it into the last update… and this time it didn’t made it again. 

Understood, when I posted that it was out of surprise because since it was working I had no idea there was even an issue, plus I thought it worth mentioning so that HB knew it wasn't everyone (which I let them know in that other thread).  Meant no disrespect.

v6,

boNes

"Also, I would prefer a back seater over the extra gas any day. I would have 80 pounds of flesh to eat and a pair of glasses to start a fire." --F/A-18 Hornet pilot

Link to comment
Share on other sites

6 minutes ago, bonesvf103 said:

I had no idea there was even an issue

The TCS has been broken ever since we got MT:

 

  • Like 1
Spoiler

Ryzen 9 5900X | 64GB G.Skill TridentZ 3600 | Gigabyte RX6900XT | ASUS ROG Strix X570-E GAMING | Samsung 990Pro 2TB + 960Pro 1TB NMVe | HP Reverb G2
Pro Flight Trainer Puma | VIRPIL MT-50CM2+3 base / CM2 x2 grip with 200 mm S-curve extension + CM3 throttle + CP2/3 + FSSB R3L + VPC Rotor TCS Plus base with SharKa-50 grip mounted on Monstertech MFC-1 | TPR rudder pedals

OpenXR | PD 1.0 | 100% render resolution | DCS "HIGH" preset

 

Link to comment
Share on other sites

Dear @BIGNEWY with maximum respect may I ask what is the explanation that the VR mask is still missing when not using MSAA (using no AA or using other AA methods)?

The DLAA technology is the best what happened to this sim visually recently, but the missing VR mask really ruins the experience, it's very bad. Is it really that resource-intensive work to patch it?

Not to mention the still existing over-exposure behavior in the cockpit view, the washed out visuals are not so appealing. I know, that's some fine tuning stuff and there're are much higher priorities in the current OB state. Maybe some options to turn it off? At least some autoexec parameter?

  • PC: 10700K | Gigabyte Z490 | Palit 3090 GamingPro | 32GB | Win10
  • HMD: HP Reverb G2 | OpenXR @ 120% | OpenXR Toolkit: exposure, brightness, saturation | DCS 2.9: DLAA with Sharpening 0.5 (no upscaling)
  • Controllers: VKB Gunfighter MkIII base & 200 mm curved extension center mounted + TM F16 Grip / MCG Pro Grip | TM TFRP
Link to comment
Share on other sites

1 hour ago, St4rgun said:

Dear @BIGNEWY with maximum respect may I ask what is the explanation that the VR mask is still missing when not using MSAA (using no AA or using other AA methods)? [...]

Wasn't the VR mask just masking MSAA area? Or in other words, what would you like the VR mask to actually mask, when not using MSAA?
I'm pretty sure that DLSS/DLAA does not support foveated rendering.
Not saying that ED should not add features like masked VRS for VR, but -afaik- this would be a completely new feature and not simply a variation of the legacy VR mask.


Edited by twistking
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...