TripleA Logo TripleA Forum
    • TripleA Website
    • Categories
    • Recent
    • Popular
    • Users
    • Groups
    • Tags
    • Register
    • Login

    Fast Battle Calculator

    Scheduled Pinned Locked Moved Development
    44 Posts 7 Posters 14.0k Views 7 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • TheDogT Online
      TheDog @RaiNova
      last edited by

      @rainova
      Im not well versed in the use of the Battle Calculator, but does it automatically take into account the rounds a battle take as defined in xml ?
      eg.
      land 3 rounds
      sea 2 rounds
      air 1 round

      https://forums.triplea-game.org/tags/thedog
      https://forums.triplea-game.org/topic/3741/curated-best-top-maps-triplea-guides

      R 1 Reply Last reply Reply Quote 1
      • C Offline
        Cernel Moderators Lobby Moderators @RaiNova
        last edited by

        @rainova said in Fast Battle Calculator:

        To keep it simpler, you may go with just maximizing the winning probabilities

        That‘s pretty much how it works today, and I can build the new battle calulator on top of that quite well. It however means that BC270 wars artillery is killed first since it has no fighting power after the first strike.

        It attacks every round.

        R 1 Reply Last reply Reply Quote 0
        • R Offline
          RaiNova @TheDog
          last edited by

          @thedog After a bit of debugging and testing, I believe that the battle calculator ignores the Air/Land/Sea Battle Rounds settings. Both when called from the BattleCalculatorDialog and when used by the AI. I'd consider this a bug. The PR regarding my battle calculator will be quite big. From experience with my first TripleA PR, I'd like to keep it as small as possible. So I'd like not to fix this bug within the current PR.

          TheDogT 1 Reply Last reply Reply Quote 1
          • R Offline
            RaiNova @Cernel
            last edited by

            @cernel Is attacks every round

            The battle dialog shows the artillery left of the column "1", i.e. it has no hit power.
            208aab24-1086-4109-ae5d-cfa6e1d06be9-image.png

            R C 2 Replies Last reply Reply Quote 0
            • R Offline
              RaiNova @RaiNova
              last edited by

              What is an air battle?
              Is every battle that starts out with only air units involved an air battle?
              Also if there is infrastructure in the battle location?
              Is a battle with only air units and aircraft carriers also an air battle?
              Is a ballte with only aircraft carriers also an air battle?
              Is a battle with only air units and defending aircraft carriers also an air battle?

              B 1 Reply Last reply Reply Quote 0
              • TheDogT Online
                TheDog @RaiNova
                last edited by

                @rainova said in Fast Battle Calculator:

                @thedog After a bit of debugging and testing, I believe that the battle calculator ignores the Air/Land/Sea Battle Rounds settings. Both when called from the BattleCalculatorDialog and when used by the AI. I'd consider this a bug. The PR regarding my battle calculator will be quite big. From experience with my first TripleA PR, I'd like to keep it as small as possible. So I'd like not to fix this bug within the current PR.

                As mentioned I dont use it much, but thanks for the heads up!

                Personally I view the above Battle Rounds as very low priority.

                https://forums.triplea-game.org/tags/thedog
                https://forums.triplea-game.org/topic/3741/curated-best-top-maps-triplea-guides

                R 1 Reply Last reply Reply Quote 0
                • B Offline
                  beelee @RaiNova
                  last edited by

                  @rainova said in Fast Battle Calculator:

                  What is an air battle?

                  Air Battle is for airUnits and takes place before regular combat. You can set how many rounds you want the airBattle to last in map options and whether the attacker or defender can retreat. You can also set it so the air battle happens before strategic bombing raids

                  1 Reply Last reply Reply Quote 0
                  • C Offline
                    Cernel Moderators Lobby Moderators @RaiNova
                    last edited by

                    @rainova said in Fast Battle Calculator:

                    @cernel Is attacks every round

                    The battle dialog shows the artillery left of the column "1", i.e. it has no hit power.
                    208aab24-1086-4109-ae5d-cfa6e1d06be9-image.png

                    As I've already pointed out, those are offence/defence 0/0 units with special AA (targeted) fire abilities.

                    1 Reply Last reply Reply Quote 0
                    • R Offline
                      RaiNova @TheDog
                      last edited by

                      @thedog Just to maximise information about the game: The battle calculator does take into account the Air/Land/Sea Battle Rounds settings.

                      1 Reply Last reply Reply Quote 1
                      • aardvarkpepperA Offline
                        aardvarkpepper @RaiNova
                        last edited by

                        @rainova

                        Normal approximation to the binomial, to speed battle calculator for large battles? Does that suit?

                        Since I don't know much math or programming I'm just taking a shot.

                        1 Reply Last reply Reply Quote 0
                        • LaFayetteL Offline
                          LaFayette Admin
                          last edited by

                          The question of why the original calculator needs to make a game copy was not answered. The answer is kinda complex, but essentially as the game simulates battles, it is actually fighting real battles. If the game data were not copied, the units on the field would be actually modified.

                          Overall, this is rooted in GameData being a god object and relatively monolithic design for how game data is handled. There is no reason the UI of a battle calculator should really take that long, it only needs a few rules like unit stats & images. The battle logic instead requires massive parts of the GameData object unnecessarily and then in addition to this the data is largely mutable.

                          All this is to say that a TripleA 3.0 rewrite of how the game rules are stored and a rewrite of how GameData works should resolve a number of these issues.

                          @RaiNova 's approach is slightly different as the odds are calculated rather than simulated, which avoids the problem of mutating game data.

                          aardvarkpepperA 1 Reply Last reply Reply Quote 2
                          • aardvarkpepperA Offline
                            aardvarkpepper @LaFayette
                            last edited by

                            Hmpf, I'll have to learn how to program, then I can get my paws dirty. Set up a Github account then just jump in, sound like a good idea?

                            LaFayetteL R 2 Replies Last reply Reply Quote 1
                            • LaFayetteL Offline
                              LaFayette Admin @aardvarkpepper
                              last edited by

                              @aardvarkpepper We could sincerely use the help. It's a deceivingly difficult code base though, frustrations be ahead..

                              frigorefF 1 Reply Last reply Reply Quote 2
                              • frigorefF Offline
                                frigoref @LaFayette
                                last edited by

                                @lafayette You really know how to motivate people 😧

                                LaFayetteL 1 Reply Last reply Reply Quote 0
                                • LaFayetteL Offline
                                  LaFayette Admin @frigoref
                                  last edited by

                                  @frigoref Yes, I'm good at it = D
                                  It's probably better for folks to see the grit for themselves, though I feel like there should be some forewarning & full disclosure that getting things done requires tenacity.

                                  1 Reply Last reply Reply Quote 2
                                  • R Offline
                                    RaiNova @aardvarkpepper
                                    last edited by

                                    @aardvarkpepper It's nice to read that you'd like to get involved more technically!

                                    The TripleA code base is 21 years old and she's sometimes behaves as obscurely as if she just turned seventeen.

                                    If you want to learn programming, I suggest you start at something simpler and smaller.

                                    If you want to get technical with TripleA, I suggest you help with the bugs. https://forums.triplea-game.org/topic/3138/staying-3digit-with-open-issues is a quite active discussion how to get a hold on them, and @frigoref is doeing a great job organizing the work.

                                    A bug is reported in form of an issue entry in https://github.com/triplea-game/triplea/issues

                                    We were approaching a thousand open issues, and the guys already brought it down to 739. I am looking forward to your contribution!

                                    1 Reply Last reply Reply Quote 1
                                    • aardvarkpepperA Offline
                                      aardvarkpepper
                                      last edited by

                                      @rainova said in Fast Battle Calculator:

                                      If you want to learn programming, I suggest you start at something simpler and smaller.

                                      If I'm going to build a program similar to TripleA, makes sense to look at TripleA.

                                      @rainova said in Fast Battle Calculator:

                                      If you want to get technical with TripleA, I suggest you help with the bugs.

                                      From a purely programming view, sounds good to me.

                                      @lafayette said in Fast Battle Calculator:

                                      @frigoref Yes, I'm good at it = D
                                      It's probably better for folks to see the grit for themselves, though I feel like there should be some forewarning & full disclosure that getting things done requires tenacity.

                                      I had some idea from reading other threads, but I liked that it was brought up there. Way I figure it, anyone expecting to just chip in will see for themselves before too long that there's a lot going on - or at least, so I gather from other threads.

                                      Going to be quite a while before I can get up to speed. I don't think there's much up to date documentation?

                                      e.g. documentation on stuff like variable naming conventions, how the program should be structured in terms of objects and references, how modules are broken out &c.

                                      I'm not concerned about a lack of documentation, I'm sure I'll piece it together. But if there's a file just sitting somewhere, might as well get it, right?

                                      Bringing it back to fast battle calculator, if I understand right, probably Rainova's solution was to use Low Luck or something maybe? And LaFayette said the battle calculator references too much so is slow, and I expect TripleA 3.0 will be structured so the issue won't exist. So for the time being, is this topic addressed? That is, if there are no forthcoming changes to 2.6, and it'll be addressed with the next major (eventual) release?

                                      LaFayetteL R 3 Replies Last reply Reply Quote 0
                                      • LaFayetteL Offline
                                        LaFayette Admin @aardvarkpepper
                                        last edited by

                                        @aardvarkpepper , re: documentation

                                        New developer tutorial:
                                        https://github.com/triplea-game/triplea/tree/master/docs/development/tutorial

                                        IDE setup:
                                        https://github.com/triplea-game/triplea/blob/master/docs/development/how-to/ide-setup/intellij-setup.md

                                        Documentation overview:
                                        https://github.com/triplea-game/triplea/tree/master/docs

                                        All things dev:
                                        https://github.com/triplea-game/triplea/tree/master/docs/development

                                        Code conventions (naming/java):
                                        https://github.com/triplea-game/triplea/tree/master/docs/development/reference/code-conventions

                                        Typical git commands & workflow:
                                        https://github.com/triplea-game/triplea/blob/master/docs/development/how-to/typical-git-workflow.md

                                        Some of the best first changes are updating & fixing up the above documentation. The fresh perspective is really valuable to incorporate.

                                        We now have a 'good first issue' label, though not a lot is yet tagged with it: https://github.com/triplea-game/triplea/issues?q=is%3Aissue+is%3Aopen+label%3A"Good+First+Issue"

                                        The error reports could be a fine place to start. For those we typically try to repro, if we can't then we try to force it in the code by making some modifications to force the error. Then fix, verify & PR it. Those are decent starter issues because there is a stack trace which gives some good direction of where to look & what to fix: https://github.com/triplea-game/triplea/issues?q=is%3Aissue+is%3Aopen+label%3A"Error+Report"

                                        1 Reply Last reply Reply Quote 3
                                        • R Offline
                                          RaiNova @aardvarkpepper
                                          last edited by

                                          @aardvarkpepper If I'm going to build a program similar to TripleA, makes sense to look at TripleA.

                                          True: Have a look at the amount of code (most simple measure: file size; better: lines of code). Start programming something and measure your productivity. Calculate what percentage of TripleA you can build in a month. Plan what you want to build in that month.

                                          R 1 Reply Last reply Reply Quote 2
                                          • R Offline
                                            RaiNova @RaiNova
                                            last edited by

                                            @LaFayette https://github.com/triplea-game/triplea/issues/9350 looks like a good first issue to me - but it looks like I have no rights to label issues

                                            1 Reply Last reply Reply Quote 1

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 3
                                            • 2 / 3
                                            • First post
                                              Last post
                                            Copyright © 2016-2018 TripleA-Devs | Powered by NodeBB Forums