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

    TripleA 3.0 - Design Proposal & Discussion

    Scheduled Pinned Locked Moved Development
    52 Posts 12 Posters 18.2k Views 10 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.
    • B Offline
      butterw @alkexr
      last edited by

      2D graphics will still be a thing in 2024 and can benefit from higher resolution/larger screens (1440p>1080p).

      Nothing wrong with trying to build a new strategy game from scratch with an updated set of objectives, but TripleA 3.0 is more about trying to keep the old game running.

      A suggestion for Technology: maybe improvements in machine learning will make it to the mainstream and can be used to improve future game AI.

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

        @rainova I think implementing a simultaneous turns system (everyone takes its moves secretely, and, once everyone is done, then all moves are sent to the host and applied simultaneously) would be awesome on many levels. It would be much better if also a timer is implemented with it. The moves may be unlimited or somehow limited in number (default unlimited).

        A recent game by Larry Harris, called "War Room", is an example of simultaneous turns system (I'm not saying to copy that: it's just an example of the concept.):
        https://drive.google.com/file/d/1rXOjH5WIny_9AqpfJFTVu6dK5A4X_OdJ/view

        Another example of the concep is Diplomacy:
        https://en.wikibooks.org/wiki/Diplomacy/Rules

        TheDogT R ubernautU RogerCooperR 4 Replies Last reply Reply Quote 1
        • TheDogT Offline
          TheDog @Cernel
          last edited by

          Can the 256px baseTiles and reliefTiles be done away with and the whole 2 layers of the map be read as just 2 files?

          Each file could be of the order of 8000 x 6000px.

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

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

            @cernel I think implementing a simultaneous turns system (everyone takes its moves secretely, and, once everyone is done, then all moves are sent to the host and applied simultaneously) would be awesome on many levels.

            Have you played Diplomacy in real? I did as a teenager: When the parents of a friend were out for the weekend, we used the whole house: The map laid in the living room, and then we retreated for negotiations who supports whom in the next move. It's still (after more than 30 years) an awesome memory 😊

            It would also allow simultaneous attack by multiple players, which IMHO TripleA is badly missing (including a player changing sides during battle 😁).

            1 Reply Last reply Reply Quote 1
            • ubernautU Offline
              ubernaut Lobby Moderators @Cernel
              last edited by

              @cernel larry said in a recent interview that all of his games going forward will be simultaneous turns

              "You should never have told me horses sleep standing up, it gave me a mental block." - Mister Ed

              1 Reply Last reply Reply Quote 0
              • RogerCooperR Offline
                RogerCooper @Cernel
                last edited by

                @cernel Simultaneous movement and resolution would be big change, probably require a completely new engine. I am not sure it would be a worthwhile endeavor.

                Much of the tactical element of TripleA involves the need to consider counterattacks. This would be lost with simultaneous movement.

                Diplomacy achieves simultaneity by using an extremely simple combat model and a very limited number of units.

                War Room uses simultaneous orders with sequential resolution, a workable compromise. This can be done in a computer game, but it will look very different than TripleA, Take a look at the computer version of the Game of Thrones boardgame for a good implementation of this sort of game.

                C 1 Reply Last reply Reply Quote 0
                • S Offline
                  SilverBullet
                  last edited by

                  i am not a tech guy, i am just hoping we have less issues going forward. we lost a lot of players with the latest lobby roll out.

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

                    @rogercooper said in TripleA 3.0 - Design Proposal & Discussion:

                    Much of the tactical element of TripleA involves the need to consider counterattacks. This would be lost with simultaneous movement.

                    Interesting observation. Two considerations:

                    1. It would be advisable simultaneous turns to be customizable per game so to make groups of simultaneous turns so not necessarily involving every player (you could then have simultaneous turns for all Axis and for all Allies separately, for example, so 2 turns per round).
                    2. It would be very interesting to add the possibility of not forcibly resetting states every round so that, for example, all units that moved on a round will be unable to move on the next one (so making them unable to reposition themselves before a counterattack on the next round).

                    Especially the feature number 2 would be great to avoid simultanous turns reducing the strategic chess-like value of the game.

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

                      There is a longer topic here, but essentially TripleA 3.0 would serve to solve the big-ball-of-mud problem.

                      There are a lot of interesting things we could yet do, but are constrained. Furthermore the code is very brittle because concerns are not separated and testing is left to mostly manual or end-to-end testing. Overall the efficiency for updating the code is just extremely low, it is very time consuming for minor updates. This is due to updates being piled on top of one another without better engineering the underlying code, by multiple different degrees of quality being used, etc. For example, the casualty selection algorithm is a holy mess, how units are rendered on the map is a mess, how units are created in code is a mess because it requires a full reference to the full game data object (so in effect every game entity has a direct link, is coupled, to every other game entity).

                      But let's go back to the OP and the goals of 3.0:

                      (1) converting network code to be websocket (remove java.nio sockets).
                      

                      This would modernize the network code and allow us to build more features that use networking. Today it's a custom RPC framework and if it goes wrong it's a nightmare to troubleshoot. There was a feature to manage bots that was done via RPC and broke, after nearly 8 hours of debugging there was no progress made. 8 hours for no result, and this is just one network integration.

                      (2) implementing a network relay server to replace headless bots
                      

                      This would reduce some of the major pain points in TripleA of unstable bots. Our number 1 cost, about 70% of the TripleA operating budget is bots. We would also be able to scale far better and host almost unlimited bots in a transparent manner.

                      (3) Text-based save games. Rather than serializing java objects we would instead store text based game state changes.
                      

                      This would fix a lot of the problems in the data model. We'd be able to unit test far more easily, second we would have a lot more room to make changes and maintain compatibility in a far simpler manner. Today there are a number of changes you just can't make because Object A is serialized, and object B and C depend on that, so you can't modify C and B as you would want (and if you do, it silently breaks save games).

                      Second, a text based save would be far faster to serialize and we could get a 10x increase in AI performance by doing this. Most of the time AI spends 'thinking' is doing battle calcs, the long pull on that is serializing game save data. If we convert that to text it'll be faster, but also the data model would be much improved and perhaps that step could be cut out completely.


                      Then there is the bottom line where the technical debt of TripleA has been for a long time past a tipping point of where future development is not really feasible. It's just the case that no one person has enough time to do everything that would be needed to make moderate improvements. So we need this to fundamentally change so that development is easy and we wouldn't have a series of developers come and go (it's a pattern, folks contribute for a few months, realize it's a mess, that the cost/benefit analysis is actually completely skewed towards cost, and then people just don't have enough time to pay these absurd time costs).

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

                        So, TL;DR, 3.0 is a plan to redo the underlying architecture of the TripleA code to drastically pay down a lot of technical debt items that are otherwise effectively killing the project.

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

                          Off-topic, I really hope 2.6 will be released soon. Map-makers have been in a limbo for the better part of a year, with a prerelease they can tune the maps for which is considerably different from the release the community plays them.

                          1 Reply Last reply Reply Quote 2
                          • ubernautU Offline
                            ubernaut Lobby Moderators @SilverBullet
                            last edited by

                            @silverbullet what exactly happened that caused so many people to leave?

                            "You should never have told me horses sleep standing up, it gave me a mental block." - Mister Ed

                            S 1 Reply Last reply Reply Quote 1
                            • S Offline
                              SilverBullet @ubernaut
                              last edited by

                              @ubernaut imo, it was the roll-out of the new lobby and all the bugs when the new lobby became the only lobby.

                              1 Reply Last reply Reply Quote 1
                              • Z Offline
                                zlefin Lobby Moderators
                                last edited by

                                I'd like to see the task/to do lists broken up a bit more thoroughly and actionably. Not that it's vital or anything.

                                It'd be nice to see what exactly needs to be done for 3.0 and 2.6, and what's being waited upon. What the new architecture is going to be in terms of package structure and calls and so forth. In particular I'm not sure how separable the various parts of the proposal are, and how much has to be covered as part of one big unified rework.

                                I also hope we manage to fix the issue with global and tww at some point, even if only as an eventual result of replacing the bots with the new network code.

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

                                  @zlefin 2.6: https://github.com/triplea-game/triplea/projects/25

                                  The biggest item is thorough testing of the 2.6 engine.

                                  Z C 2 Replies Last reply Reply Quote 1
                                  • R Offline
                                    RaiNova @alkexr
                                    last edited by

                                    @alkexr said in TripleA 3.0 - Design Proposal & Discussion:

                                    With 3D graphics there would be no such thing as a mapmaker, I'm afraid.

                                    There are lots of map makers out there.
                                    Choosing the right basis for our own work may become a smaller project of its own. Some are a joy to play with, e.g. Mapgen 4. (A much simpler map maker would of course do.)

                                    Also, what do you mean, look at the list of top rated games on Steam, most of them are 2D.

                                    I did. The most popular games are 3D now.(Apart from classics and cookie maker). For TripleA 3 I think about something like the total war strategy map - or the game of thrones board game online. Freeciv web is unsing 3d units.

                                    ubernautU 1 Reply Last reply Reply Quote 1
                                    • ubernautU Offline
                                      ubernaut Lobby Moderators @RaiNova
                                      last edited by

                                      @rainova i think you are oversimplifying the situation i don't think personally, there's any real benefit to making this game 3D and it would come with a shit ton of overhead. the game is a 2D game, 3D would only be a graphical change and would arguably make the boards harder to see. also, the mapmaker doesn't just make maps its also is used to wire them up into playable map files. we have a lot of enhancements that are much more applicable to this game than just making it another 3D game. personally i'd would also argue there a ton of 2D grpahical enhancements that would have better impact on user experince.

                                      "You should never have told me horses sleep standing up, it gave me a mental block." - Mister Ed

                                      1 Reply Last reply Reply Quote 1
                                      • Z Offline
                                        zlefin Lobby Moderators @LaFayette
                                        last edited by

                                        @lafayette

                                        Nice. On that project sublist, there doesn't seem to be issues attached to it in a linked way that can be edited; ie if I were try to working on one, how do we note that and avoid duplicative effort? Do we make new github issues for work on of those and put our details in there?

                                        Is there already a thread or something covering the direct map download details? I might try working on that as something small and easy. But someone may've already started on it, and I have a feeling there's been some discussion fo it already somewhere, but I'm not sure where.

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

                                          @lafayette I would be down and I've sometimes asked to play my 270BC Wars in the 2.6 lobby, but no-one has ever wanted to so far.

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

                                            @zlefin Either open an issue to discuss & coordinate or open a forum thread. Either one would be a good place to outline the design and approach.

                                            In the 'triple-dot' menu on the project cards, there is a 'convert-to-issue' option FWIW.

                                            Z 1 Reply Last reply Reply Quote 0

                                            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
                                            • 1 / 3
                                            • First post
                                              Last post
                                            Copyright © 2016-2018 TripleA-Devs | Powered by NodeBB Forums