SITREP

Discussion in 'Command Ops Series' started by Dave 'Arjuna' O'Connor, Jan 15, 2015.

  1. Dave 'Arjuna' O'Connor

    Dave 'Arjuna' O'Connor Panther Games Designer

    Joined:
    Jul 31, 2014
    Messages:
    2,924
    Likes Received:
    275
    Changes (Part 2)

    Here's the rest of the changes:

    - Dave's Big Commit for Attack Slipping Issue. Changes include:
    - Changed all aspects of the Withdraw reaction to Pull Back reaction, so the name doesn't confuse with the Withdraw doctrine. Specifically:
    - Change kWithdrawingUnitGoal to kPullingBackUnitGoal in GameAnimForceData
    - replaced IsWithrawing() with IsPullingBack() in GameDiagnostics::GetForceChecksum()
    - Changed kWithdrawing to kPullingBack to ReactionStatusType enum in ScenForceTypes
    - Changed ScenRealForce::IsWithdrawing() to ScenRealForce::IsPullingBack()
    - Changed "Withdrawing" to "PullingBack" in kActionText[] in UnitActions.cpp
    - Ditto in TaskAttack.cpp
    - Changed links within a ScenMissionPlan from singular next and previous plans to vectors of next and previous plans. Specifically:
    - Changed FPDataDump to use vectors of next and prev plans
    - Ditto for GameDiagnostics_CheckObjectReferences()
    - Ditto for ScenCompletedMissionEvent
    - Ditto for ScenMissionPlan including Archive() NEED CONVERSION OF DATA
    - Ditto for ScenOpPlan including adding LinkPlans()
    - Ditto for ScenPlanScheduling including adding code to link related plans inside DevelopCurrentMissionPlans()
    - Dito for ScenTask
    - Made FPPlanningParams:IsForceReacting() and IsSubForceAttacking() private to prevent calling them by mistake. Added IsAnyoneRouting(), IsForceRouting() and DermineIfSubForceRouting(). Added new members mSubForceRouting and mSubjectRouting.
    - Extended duration from 5 to 15 minutes for IsMakingProgress() test when force is assaulting. This helps prevent the assault force calling off its assault.
    - Revised default map movement effects using the Tutorial STVith map as the template. These are listed in MapBuilder::kMotorisedMovEff[] and kNonMotorisedMoveEff[]
    - Mods to ScenAbandonMissionEvent. SPecifically:
    - Replaced CPodPtrs for objectiveTask, missionTask and planSubject with standard C pointers inside ProcessEvent().
    - Exempt orders delay after processing.
    - Removed duplicate calls to SetSOPTimings()
    - When a subordinate abandons its attack task within our attack plan and bunkers down, we no longer change the task type to an independent Defend. Instead we now wait for him to recover. See ProcessSubordinateTask()
    - Added entries to kScenEventTypeNames[] for FireResolution, Bombardment Resolution, Strike Resolution and Bunker Down Recovery inside ScenEvent
    - Moved ComparePlanTasksByStatus and ComparePlansByAscendingStart from ScenOpPlan to ScenCommonAI
    - Overhauled BunkerDown() code. Attacking units will now bunker down in-situ rather than pull back. Handles cases where the assaultSubject is not the boss of the attack. While it still abandons the original attack/probe/assault task and plan it adds a link to the Bunker Down mission's previous plans so it later if it recovers it can get stuck back into the attack/assault.
    - Filler Mission Plan functions now pass around a formation type so we can handle in-situ bunker downs.
    - Overhauled ScenPlanScheduling::ScheduleNextEvent(). Including:
    - Moved AssessMorale() above AssessToCallInFireSupport(). It now handles routers. This ensures routers continue to surrender. It also passes the planning result up and down the line, ensuring if it the force does surrender we stop all processing.
    - Ensured UpdateEnemyUnit() was actioned immediately after UpdateFriendlyUnit() inside AdjustAndExpendPerMinute()
    - AssessEndOfTask() now ensures that an assault that is not self assigned and that has not achieved its objective will now bunker down in addition to just stop processing the plan.
    - ExtendAssaultTask() now ensures it's extended for 30 minutes rather than 15. This ensures there is time for orders processing and to allow some progress to occur.
    - ShouldStartNextPlan() now exempts plans that are not self assigned and all Hold plans that have yet to finish their assigned duration
    - ShouldStartRelatedPlan() now handles multiple next plans and exempts assaults where a HHour has been set and timeNow is not the set HHour
    - Reduced the default duration of kSOP_PullBack from 120 to 40 and for kSOP_BunkerDown from 120 to 20. This ensures that the attack boss and assault subject reassesses for these reactions more frequently. Note that a force size modifier is applied to the default durations - eg the duration for a Bn will be significantly less. See ScenSOP.
    - Ensured that ScenTask::DetermineBestFacing() does not try and change facing using the next plans facing if in fact the next plan does not have an assigned location.
    - Added ScenTask::IsSelfAssigned()
    - Incremented database format to handle change to next and previous plans. DATA NEEDS CONVERSION. See ScenTypes.cpp
    - Removed reduntant calls to SetSOPTimings() in TaskAttack
    - Overhauled TaskDoctrine::SurrenderRouters(). Replaced use of "decimated" absolute threshold with variable fragility Mod. This now adjusts the min and max surrender percentages based on the units current personnel level. the lower this gets the more fragile it is and hence the greater percentage of its personnel surrender.
    - Overhauled TaskDoctrine::AssessRecovery(). This now supports cases where the assaultSubject has bunkered down, followed by the boss of the basic atttack (usually a Bn HQ) also bunkering down as a result and then the boss of the complex attack restraining from reaction so as to allow the subordinates to recover.
    - TaskDoctrine::TryToBunkerDown() now handles the difference between a pull back and in-situ bunker down
    - Removed reduntant calls to SetSOPTimings() in TaskMove
    - Pre Build 5.1.34
    - Added "Recordings\\" to autosave backup recording pathname so the previous recordings are stored in the Recordings subDirectory
    - Ensured the Initial Orders Delay value was saved properly in the ScenMaker
    - Removed redundant Assert from ScenPlanScheduling::MoraleCheck()
    - Removed ScenBunkerDownRecoveryEvent.cpp and .h files and PodClassID but have kept these locally in case we need to go down this path later.
    - Pre Build 5.1.35
    - Overhauled formation movement for units in road column. Instead of the using the hub offset to control spacing and movement, units in road column now manage this using a combination of the unit ahead and the unit behind. Specifically:
    - Added mUnitBehind member to ScenRealForce
    - Remove redundant IsAheadOf() and SetUnitPersonnelQty() functions from ScenRealForce.cpp and added DetermineUnitBehind() and ShouldHaveUnitBehind()
    - Added GetSubGroupBehindSubGroup(), DetermineUnitBehind() and ShouldHaveUnitBehind() to ScenForceFormation.cpp
    - Replaced GetVanguard() return type from ScenFormationSubGroup* to ScenRealForce*
    - Added GetVanguard() to ScenFormationGroup.cpp
    - Added MustWaitForUnitBehind() to ScenRoute.cpp
    - Fixed bug that null and voided caution factor when calculating best route. This was introduced when I stopped using mEffectiveFriendlyFP in the FPRouteInput::DetermineFirepowerMovementMod(). That member was affected by the caution factor. So we now store the caution factor directly and use it to increase the cost of movement. This should reduce the instances of HQs and support units using silly routes through enemy terrain.
     
  2. Art Hall

    Art Hall Member

    Joined:
    Oct 23, 2014
    Messages:
    65
    Likes Received:
    3
    Holy moly Dave you been buzy...lol...........Merry Christmas and Happy New Year to you and your family!
     
  3. nelmsm

    nelmsm Member

    Joined:
    Feb 21, 2017
    Messages:
    5
    Likes Received:
    3
  4. Rob

    Rob Member

    Joined:
    Oct 22, 2014
    Messages:
    137
    Likes Received:
    3
    Yikes!

    Can hardly wait for release!!

    Have a Merry Christmas / Happy New Year and don't even think about the game!!

    Rob.:)
     
  5. JET

    JET Member

    Joined:
    Dec 8, 2014
    Messages:
    18
    Likes Received:
    0
    When available will it be possible to download the currently being updated Core Engine direct from my account "Downloads and Serial Keys" webpage on your web site?
     
  6. Dave 'Arjuna' O'Connor

    Dave 'Arjuna' O'Connor Panther Games Designer

    Joined:
    Jul 31, 2014
    Messages:
    2,924
    Likes Received:
    275
    The Core engine is always free to download. Just to go to the store and download it direct from there.
     
  7. JET

    JET Member

    Joined:
    Dec 8, 2014
    Messages:
    18
    Likes Received:
    0
    Thank you for your prompt reply Dave.

    The reason I asked the question is the current download from the store is version 5.1.28, so It would be good if you could always have the current Core Engine available for download from the Lock N' Load store.
     
  8. HercMighty

    HercMighty Member

    Joined:
    Dec 21, 2014
    Messages:
    13
    Likes Received:
    0
    That is the most current version and has been the most current version for a long time, 5.1.33 hasn't been released.
     
  9. Dave 'Arjuna' O'Connor

    Dave 'Arjuna' O'Connor Panther Games Designer

    Joined:
    Jul 31, 2014
    Messages:
    2,924
    Likes Received:
    275
    SITREP Friday 1 Feb 2019

    Hi all. Today I put out another beta test build for our internal testers. This addresses stuff they reported to us over January, namely that there were a series of formation lockups with the new codebase. I believe I've fixed these but need to test this. Here are the changes:
    • Tweaked ScenRoute::MustWaitForUnitAhead() and MustWaitForUnitBehind() to remove inconsistencies that caused lockup. Also added check to ensure that a unit does not wait on a unitAhead or a UnitBehind if it has already achieved its objective.
    • Modified ScenIntelEnemyForce::UpdateIntelForceLevels() to use anim locations rather than real locations. This is part of effort to smooth animation of enemy icons.
    • Flagged additional change inside ScenPlanScheduling::SpotEnemyForces() to tweak the expiration of enemy intel spots when the real force has moved but the friendly units don't spot it in its new location. If we can get this to work so that old intel icons don't hang around for too long then we can revertt the recent anim changes and get back to smoother animations.
     
    panzerpit and Chris Merchant like this.
  10. ironsight

    ironsight Member

    Joined:
    Oct 18, 2015
    Messages:
    23
    Likes Received:
    3
    Thanks for the update Dave! Was wondering how things were going.
     
  11. CoachJohn

    CoachJohn Member

    Joined:
    Apr 17, 2018
    Messages:
    3
    Likes Received:
    0
    Got a question about upgrade and your pricing policy on DLC’S

    If I buy a DLC now on the current version - will I have to pay for their upgrades to status of new core version once the new version of the base game comes out as opposed to waiting and buying after new version of base game is out?
     
  12. jimcarravallah

    Joined:
    Oct 20, 2014
    Messages:
    672
    Likes Received:
    48
    The answer to this question is above -- the core engine is always free, thus upgrades to it are also distributed for free. Any upgrades to the core engine also update the performance of existing / previously-purchased DLC modules.
     
  13. Dave 'Arjuna' O'Connor

    Dave 'Arjuna' O'Connor Panther Games Designer

    Joined:
    Jul 31, 2014
    Messages:
    2,924
    Likes Received:
    275
    No that's not the case Jim. Thanks for replying but in this case it's not exactly right. Yes the core engine is always free. But if we significantly upgrade this then we reserve the right to charge an upgrade fee to convert existing data content to work with the new core. It wont be an onerous fee. When we release a new build in the next month it will represent a significant development effort on our part and so we will be charging customers to upgrade their data content if they want it to work with the core engine. The engine will still be free. You can download it separately and see if if you think it's worth upgrading. If not, just continue as is with the current engine and your current data content. But if you think it's worthwhile, then you can pay a single upgrade fee to upgrade all your existing data content. It will probably be $10.

    The core engine editors will not allow you to convert existing "stock" data content to the new engine - ie stock data includes all the scenario files, map files and estab files that we publish. It will enable you to convert your existing non-stock data - ie the data you personally created.
     
  14. Dave 'Arjuna' O'Connor

    Dave 'Arjuna' O'Connor Panther Games Designer

    Joined:
    Jul 31, 2014
    Messages:
    2,924
    Likes Received:
    275
    SITREP Monday 4 February 2019

    Hi all,

    I just put out a new beta build (5.1.37) for our beta testers. This corrects an error in the animation code and should allow our testers to get on with testing the new Bradley at Bay module. We're getting real close now to being able to release a new core engine build. Hopefully we'll get this to you all next month and with a bit of luck, the new Bradley at Bay data content.
     
    Seb3brv78 and panzerpit like this.
  15. Rosmarus

    Rosmarus Member

    Joined:
    Mar 23, 2015
    Messages:
    13
    Likes Received:
    3
    Is this the engine update that is planned to cost something? And if it does, does the price of updating my scenario packs increase with the number of packs I own or is there an option to update packs individually for say 10$ each or to update all of them for some other price like 35$ akin to the update pricing Battlefront has implemented? Don't get me wrong, I 100% understand that these games cost a hell of a lot of money for the developers and it's only fair that you get your back and then some more but I'm also operating on limited finances and would like to get as much for my hard earned cents as I can.
     
  16. jimcarravallah

    Joined:
    Oct 20, 2014
    Messages:
    672
    Likes Received:
    48
    The update to CO2 will be free.

    There is no charge for updating any currently-released scenario pack if you accept the CO2 update.

    Just like there is a cost for any of the packs you may not own at the moment, there would be a cost for the Bradley at Bay module IF you choose to purchase it at the time you access the free CO2 update.
     
  17. Rosmarus

    Rosmarus Member

    Joined:
    Mar 23, 2015
    Messages:
    13
    Likes Received:
    3
    IIRC there was talk way back that you'd have to put money on the table every time a major engine update is released.
     
  18. jimcarravallah

    Joined:
    Oct 20, 2014
    Messages:
    672
    Likes Received:
    48
    Yeah. If you read it, you'd find that a "major engine update" was changing from CO1 to CO2, or in the future, would be changing from CO2 to CO3.
     
  19. panzerpit

    panzerpit Member

    Joined:
    Dec 12, 2014
    Messages:
    45
    Likes Received:
    4
    I think you are a bit wrong, here is the quote from Dave's post which explains everything about the next update and it's costs:

     
  20. Dave 'Arjuna' O'Connor

    Dave 'Arjuna' O'Connor Panther Games Designer

    Joined:
    Jul 31, 2014
    Messages:
    2,924
    Likes Received:
    275
    I've been having a rethink on all of this. It's obviously very confusing to most people. I've also found out that it's going to take a lot of developer resources to implement this on Steam. So, I'm going to forego charging users to update their data content. We'll do this for free. Each time we put out an update that requires conversion of data content, we'll provide new versions of the data modules for existing users to download. You still won't be able to automatically convert stock scenarios using the editors but you will be able to convert non-stock data - ie the stuff you generate.

    The core engine will still be free. You will not need to maintain multiple versions of the core or data- just the latest core engine and the latest version of the data you have purchased.

    Now this means we forego revenue and god only knows we need it. But we'll be relying on your support in buying our data modules. We'll monitor how this works.
     
    Iconoclast, GeoNL, ioncore and 2 others like this.

Share This Page