EA Forums - Banner

CnCTA SoO SCRIPT PACK - Browser Links - Updates

124Next

Replies

  • Trampsz wrote: »
    Trampsz wrote: »
    Hi all
    I'm using the Wavy script (in the SoO pack) Wavy 0.5.5
    You have probably noticed for some time now it calculates the "bases in range" incorrectly.
    As you can see from the screenshot, the rectangles show all the bases in my range that I can attack - 17 in total, but Wavy counts only 14.
    https://prnt.sc/uxpzrs
    It's been an issue that i have lived with for a long time but I just wondered if anyone had developed a fix?
    Thanks
    Tramps

    PS I do have another script active that shows the correct bases in range when you simulate a move (perhaps its "the movement" script), but this only shows the number of bases at a simulated location and not when you simply click on your current position.

    Sorry for the long delay in coming back to this series of posts on this subject @o0netquik0o thanks for all your input, I didn't get any notifications so was unaware there was any replies.
    I think the recent reply specifically posted by @Chertosa (thank you!) in this separate link finally answered this question for me. https://forums.ea.com/en/commandandconquer/discussion/275439/wavy
    Essentially it seems the FG can only attack a radius of 10 fields whereas a player base can attack 10.5 fields. Therefore as Wavy relates to FG attacking a player base (ie the number of FG attack waves we can expect) then it should be calculated using 10 fields.
    I have a suspicion that Wavy in the SOO pack may still be calculating wrong as in a recent gameplay, according to Wavy I was in a 2 wave area (20+ bases) but I only received 1 attack, so perhaps it is using 10.5 fields in the formula instead of 10.

    well as already said wavy use ClientLib.Data.MainData.GetInstance().get_Server().get_MaxAttackDistance() that is 10.5 (while 0.5.5 was using 10). This was a fix introduced if remember right because some people (like you) blamed about incorrect waves. Now in the code wavy actually use "floored" value max distance (10) to scan min and max but it use "squared" not floored value (10.5*10.5=110,25) @nefrontheone @iguanaworld if I revert the fix the original issue will come up again. From https://forums.ea.com/en/commandandconquer/discussion/comment/2223718/#Comment_2223718 i can't be sure. maybe it's a floor/round difference only between players and fg. Maybe leaving the maxattackdistance form server we can try to see what results we get using floored squared value or squaring floored value (110 vs 100). In game code i can't locate fg attack function
    7lbbvj5zgmix.png
  • Correcterino. I released a temporary patch for my alliance to test and we've been getting the correct wave count so far.

    I've been keeping an eye out for complaints within the alliance but haven't received any yet and we've been using it for over 3 weeks now.

    Also, I hate your ide formatting. It's both beautiful and horrific at the same time :p
  • xxsly wrote: »
    Correcterino. I released a temporary patch for my alliance to test and we've been getting the correct wave count so far.

    I've been keeping an eye out for complaints within the alliance but haven't received any yet and we've been using it for over 3 weeks now.

    Also, I hate your ide formatting. It's both beautiful and horrific at the same time :p

    So what is your patch try? my thoughts: if we have to check against max hypotenuse of 10 and use integers for GetObjectFromPosition (AFAIU it checks integer coords) but still can't use "10" as unique variable (0.5.5 did that) ... we can only try to scan from min and max ceiled values (not sure if it can change anything).


  • When I first posted the issue my (and others) expectation was the FG attack range should be identical to the player attack range, but Chertosha's recent post confirms that is not the case. FG can only attack at 10 range. Player can attack at 10.5. Dev on that post seems to confirm this also in his reply.

    So armed with that new information we have to interpret the intended use - I guess the clue is in the name "Wavy" - ie how many waves of FG will hit me - and not - how many bases can I hit. So unfortunately it seems the original code may have been counting correctly.

    I thought I would let you know as I have had a number of people in ally claim this SOO version is not correct now and have moved to a standalone non-SOO version, I also experienced the issue myself on the latest world yesterday. It was a nice surprise though - I was expecting to get hit twice and probably die, but only got hit once :)

    I guess ideal situation would be to see both - 1. FG bases that can hit your base and 2. number of FG bases you can hit!



    Thanks anyway guys.
  • o0netquik0o
    446 posts Member
    edited November 2022
    Trampsz wrote: »

    When I first posted the issue my (and others) expectation was the FG attack range should be identical to the player attack range, but Chertosha's recent post confirms that is not the case. FG can only attack at 10 range. Player can attack at 10.5. Dev on that post seems to confirm this also in his reply.

    So armed with that new information we have to interpret the intended use - I guess the clue is in the name "Wavy" - ie how many waves of FG will hit me - and not - how many bases can I hit. So unfortunately it seems the original code may have been counting correctly.

    I thought I would let you know as I have had a number of people in ally claim this SOO version is not correct now and have moved to a standalone non-SOO version, I also experienced the issue myself on the latest world yesterday. It was a nice surprise though - I was expecting to get hit twice and probably die, but only got hit once :)

    I guess ideal situation would be to see both - 1. FG bases that can hit your base and 2. number of FG bases you can hit!



    Thanks anyway guys.

    Good. Actually i'm interested that things work for all (whole script community) not only for some or some alliances. That said i will try to understand more about the issue. TOmorrow i will publish a testing version of Wavy that revert the fix introduced in 0.5.6. Doing a "bases within attack range" and calcultate waves differently should not be a problem anyway. We can calculate base for 10.5 distance and 10 and use the second variable to calculate waves. All of that need testing anyway.

    EDIT: finding the real code tha FG bases use to attack a location should be the final solution but i said i didn't find it or recognize in the game code. I will look into older and more readable game codes.
  • @o0netquik0o with regards to the patch, it was just a simple change back to 10 for now since it seems to be more accurate than the 10.5.

    I was writing a personal script to try to create a forgotten attacks dataset for statistical analysis and ended up with a nearly identical function to wavy for calculating bases in range (albeit less abstracted). I spent a long time manually counting bases in range to validate because I kept getting the wrong base count until I found out about the 10 attack distance.

    While it's not perfect, it's better than using the 10.5 as it gives a significantly larger error than the 10 range. If someone can provide me with examples of the incorrect attack counts including screen shots then I'm more than happy to figure out exactly why it's not working.

    'finding the real code tha FG bases use to attack a location should be the final solution but i said i didn't find it or recognize in the game code. I will look into older and more readable game codes.'

    Been there, didn't have any luck at all. I thought I had found it when I was using the player attack range but alas, I misunderstood. Happy hunting, I hope you find it ^^
  • ok. While fixing bugs in CityMoveInfoExtend script i took a look in the code it uses to calculate bases in range and waves. It uses get_MaxAttackDistance() but scan from min max of 10 (like last wavy does). But there is an interestind difference in calculating waves. CityMoveInfoExtend uses this code and add two different chances "n waves" or "max n waves"
    // calculate waves
    					//Bis 20 Basen -- 1 Angriff
    					//21 - 25 -- max 2 Angriffe
    					//25 - 30 -- 2 Angriffe
    					//31 - 35 -- max. 3 Angriffe
    					//35 - 40 -- 3 Angriffe
    					//ab 41 Basen in Range bis zu 4 Angriffe ab 45 Basen in Range 4 Angriffe...
    					var waves = '';
    					if (countw <= 20) {
    						waves = ' - 1 wave';
    					} else if (countw <= 25) {
    						waves = ' - max 2 waves';
    					} else if (countw <= 30) {
    						waves = ' - 2 waves';
    					} else if (countw <= 35) {
    						waves = ' - max 3 waves';
    					} else if (countw <= 40) {
    						waves = ' - 3 waves';
    					} else if (countw <= 44) {
    						waves = ' - max 4 waves';
    					} else if (countw <= 50) {
    						waves = ' - 4 waves';
    					} else {
    						waves = ' - are u crazy???';
    					}
    

    While wavy use this code
    getNumberOfWaves: function (baseCount) {
    						return Math.max(1, Math.min(5, Math.floor(baseCount / 10)));
    					}
    

    Now a part from "max" chance the real difference is that if we have 20 bases for example wavy considers 2 waves CityMoveInfoExtend one. (this could be the only problems for waves in wavy)

    Another difference between two scripts is that while wavy check against a value that is "<" of the maxdistance CityMoveInfoExtend check for "<=", so wavy accepts bases at exact max distance.

    Now i modified both script codes in this way:
    they scan from a ceiled value of max distance (11) and check every found base distance against maxdistance (get_MaxAttackDistance() = 10.5 ) to populate bases within range, BUT they also check that distance against floored maxdistance (10) and use this count to generate waves number. Both codes do the same now and give same result apart from tens number of bases (and this should be tested to understand). I modified base count so it show now "number of bases that can be attacked(number of bases that can attack)"

    6aglh1kdio21.png

    if anyone want to help me test both scripts please tell
    I will publish new codes for both tomorrow in testing branch

    testing against 0.5.8 wavy code and reverted fix code (0.5.5) should give some hints
  • Excellent, great work, more than happy to user test both scripts with your guidance

  • Both look to be accurate so far.
    On the City Move script, is the info in the dialogue box repeated on yours (see blue arrows on link - same info but in reverse) or do I have a conflicting script? https://prnt.sc/bc8HABXDCsEE
  • Trampsz wrote: »

    Both look to be accurate so far.
    On the City Move script, is the info in the dialogue box repeated on yours (see blue arrows on link - same info but in reverse) or do I have a conflicting script? https://prnt.sc/bc8HABXDCsEE

    First 2 rows are from Wavy , third one is from citymove .. both do the same work but wavy add those infos also in city tooltip (while not moving). there should be a difference on waves when you have exactly ten (20, 30, 40, etc) bases around at 10 distance or less.
  • @o0netquik0o Sorry, one week offline without computer. :-(
    Not a part of EA / Envision teams - My comments are only mine.
  • Any testing news about Wavy? i'm trying to understand if waves are correct when found tens bases in range 10 (20-30-40) . Thanks
  • I've received no complaints. If I hear any and make any changes I'll let you know
  • Updated on 26/12/2022
    Version 1.6.4
    >Manifest V3 Migration (for Chromium based browsers)
    >Some GUI upgrades
    >Update TA_Wavy 0.6.2
    >Update TA_CityMoveInfoExtend 22.11.22
    >Update TA_CD_PvP_Quick_Map 1.5.4
    >Update TA_Autopilot 1.2.7
    >Update TA_Warchief_Upgrade_Base_Defense_Army 22.10.08
    >Update TA_xTrim_Base_Overlay_DR_4_3 1.16
    >Update TA_MaelstromTools_Dev_Mod_MCV 0.1.5.5
    >Update TA_Count_Forgotten_Bases_Range 1.1.5
    >Update TA_infernal_wrapper 1.52
    >Update TA_Formation_Saver 2.3.3
    >Update TA_TheMovement 1.0.8
    >Update TA_Tiberium_Alliances_Battle_Simulator_V2 22.12.23
    >Update TA_TACS 3.80
    >Update TA_Info_Sticker 1.15
    >Update TA_Info_Sticker_SUPERCOMPACT 1.15
    >Update TA_Report_Stats 0.5.6
  • v1.6.4 available on all platforms!
  • Installed and running some days...
    Not a part of EA / Envision teams - My comments are only mine.
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. Sign in or register to get started.