FAForever Forums
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Login

    Using mapgen to make a mission gen

    Scheduled Pinned Locked Moved General Discussion
    15 Posts 7 Posters 589 Views
    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.
    • F
      FunkOff
      last edited by

      I had this idea years ago, but sadly didnt put in enough effort to make anything from it. The idea is simple: If the mapgen can generate a good 3v3 map, it should be able to generate a good 4 player coop mission, too, with proper scripting, of course.

      What separates today from a few years ago is GPT-4. It seems to be perfectly capable of writing code and helping to generate such a script.

      Sadly, I have not had a great deal of free time in recent years. Ideally, somebody would take this idea and produce a solid prototype over a weekend. (I was hoping the government shutdown would give me a week or two of time to do it, but that won't be the case, either...)

      A basic architecture would be pretty simple: The game starts with up to four allied players, generates a few random missions, enemy bases, and patrols, then expands once the objectives are complete or the timer expiresm. Repeat for 3 stages in each mission, just like the campaign.

      Obviously, this would become an enornously popular game mode, if/when implemented.

      A Brutus5000B 2 Replies Last reply Reply Quote 0
      • A
        alfonsosheha @FunkOff
        last edited by alfonsosheha

        @funkoff said in Using mapgen to make a mission gen geometry dash lite:

        I had this idea years ago, but sadly didnt put in enough effort to make anything from it. The idea is simple: If the mapgen can generate a good 3v3 map, it should be able to generate a good 4 player coop mission, too, with proper scripting, of course.

        What separates today from a few years ago is GPT-4. It seems to be perfectly capable of writing code and helping to generate such a script.

        Sadly, I have not had a great deal of free time in recent years. Ideally, somebody would take this idea and produce a solid prototype over a weekend. (I was hoping the government shutdown would give me a week or two of time to do it, but that won't be the case, either...)

        A basic architecture would be pretty simple: The game starts with up to four allied players, generates a few random missions, enemy bases, and patrols, then expands once the objectives are complete or the timer expiresm. Repeat for 3 stages in each mission, just like the campaign.

        Obviously, this would become an enornously popular game mode, if/when implemented.

        I like your idea. It sounds amazing

        1 Reply Last reply Reply Quote 0
        • Brutus5000B
          Brutus5000 FAF Server Admin @FunkOff
          last edited by

          @funkoff said in Using mapgen to make a mission gen:

          It seems to be perfectly capable of writing code

          LOL. You are not a developer obviously.
          It is capable of writing code.
          It is often capable of writing compiling code.
          It is many times capable of writing working code.
          It is sometimes capable of writing correct code.

          But even assuming it would be writing perfect code.
          How would it write working code on a map it doesn't understand? You can't throw it a binary file and say: Hey here is my map, write me some patrol orders.

          @funkoff said in Using mapgen to make a mission gen:

          Ideally, somebody would take this idea and produce a solid prototype over a weekend.

          Not sure if you are hillariusly funny or just trolling. But I hope you are not serious.

          He said, "I've been to the year 3000
          Not much has changed, but they live underwater
          And your great-great-great-granddaughter
          Is playin' FAF, playin' FAF"

          deletethisD F 2 Replies Last reply Reply Quote 1
          • deletethisD
            deletethis @Brutus5000
            last edited by

            @brutus5000 said in Using mapgen to make a mission gen:

            Not sure if you are hillariusly funny or just trolling. But I hope you are not serious.

            I'm not sure if you are just having a bad day but I don't necessarily see anything malicious, maybe it's just wishful thinking...

            1 Reply Last reply Reply Quote 0
            • Brutus5000B
              Brutus5000 FAF Server Admin
              last edited by

              I don't claim it to be malicious. It's just out of touch with reality with on one hand massively overestimating the powers of Chat-GPT & co. and on the other hand massively underestimating the complexity of the task at hand.

              The base idea itself is nice and by itself not unrealistic. There are other games doing something in this direction.
              But the solution approach is unrealistic.

              He said, "I've been to the year 3000
              Not much has changed, but they live underwater
              And your great-great-great-granddaughter
              Is playin' FAF, playin' FAF"

              1 Reply Last reply Reply Quote 3
              • Ctrl-KC
                Ctrl-K
                last edited by

                Inhales ... Ok, I'll make it clear for you as non programmer. I had such Idea a year ago when I was developing Oxygen, a framework for development of coop missions for FAF. But even now I see it as barely possible to be final product, and that's why:

                1. Map generations is ok, we have it and this is not a problem.
                2. Nav mesh developed by @Jip opens us lot's of opportunities for setting up routes for units, but some coding and checks required.
                3. Bases. This is gonna be a problem. To achieve aesthetics of all faction base setup we'd need very complicated generator that also involves terrain and water. "Use prebuilt ones!" Still required checking for valid terrain and water. And... after 10ish missions you are gonna be bored I swear you.
                4. Objectives. Protect citizens! Protect the convoy! Attack and destroy that base! Build smd before the launch! Hold before timer expires! What's the point? Are you gonna do all these steps before just for that? It is already kind of possible with mod by @Rama iirc. If you want more complex objectives then oh sorry, even starfield having millions of dollars is lacking side mission variety :Kappa:.
                5. Who is gonna do all of the steps?

                In conclusion, too many effort for too little result.

                “Be a yardstick of quality. Some people aren’t used to an environment where excellence is expected.”
                — Steve Jobs.
                My UI Mods
                Support me

                F 1 Reply Last reply Reply Quote 2
                • Ctrl-KC
                  Ctrl-K
                  last edited by

                  For instance: this is a single part of a mission. https://github.com/4z0t/MapsCoopDev/tree/GW/maps%2FGW.v0002 all of that code is a single part...

                  “Be a yardstick of quality. Some people aren’t used to an environment where excellence is expected.”
                  — Steve Jobs.
                  My UI Mods
                  Support me

                  F 1 Reply Last reply Reply Quote 0
                  • FtXCommandoF
                    FtXCommando
                    last edited by

                    If coding missions was easy, there’d be a mission vault. If that process isn’t easy enough to justify a vault already, how is the automation going to be trivial?

                    F 1 Reply Last reply Reply Quote 1
                    • maudlin27M
                      maudlin27
                      last edited by

                      I don't see the benefit of ChatGPT in this scenario. At a basic level though you could get something rudimentary up by combining an AI mod with a custom mod and mapgen:

                      • At the start of the game run some code to split the map into 3 parts (starting area, medium area, full map), and decide for each of these sections where the AI will be starting and where the players will be starting.
                      • Remove the AI's ACU and give it a single engineer instead
                      • Spawn in some random objective like 'capture target', 'destroy specified enemies', 'defend target', where you optionally spawn in some AI controlled PD around the target to be captured/destroyed
                      • Expand the map once the objective is met and this time spawn in a base for the AI along with an initial attack force; if it's the full map then the AI could get its ACU.
                      • Optionally periodically cheat in units or attack waves for the AI (e.g. transport drops)

                      However, even if someone did all this, the main challenge it would have would be providing a more interesting result vs what is already available through skirmish AI, AIX modifiers, survival maps, and survival wave mod, and/or handcrafted campaign missions. Meanwhile making it more interesting would require a lot more time and fine tuning.

                      M27AI and M28AI developer; Devlogs and more general AI development guide:
                      https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                      https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                      1 Reply Last reply Reply Quote 0
                      • F
                        FunkOff @Ctrl-K
                        last edited by

                        @azath0th Your post is helpful. I basically rough-drafted this concept already using chatGPT. I think the biggest hurdle is easily #3, making a generator that spawns a normal-looking base for a generated map. I agree that this could sound simple, but is in fact very hard. #4 is almost as hard, so it's also quite challenging, but I suspect it would be less obviously wrong to the players if done a bit oddly.

                        1 Reply Last reply Reply Quote 0
                        • F
                          FunkOff @Brutus5000
                          last edited by

                          @brutus5000 I was serious. What I was not doing, however, was suggesting that chatGPT could be told to "make a mission generator" and then the final product could be trusted to work. I imagine that a good coder could ask chatGPT to generate small pieces of script, perhaps one or a few small functions at a time, and then piece them inside of the larger puzzle. A weekend to generate a finished product is too little time, but a rough proof of concept could conceivably be done with good assistance. Or perhaps, as Azath0th said, the easier pieces could be built within a framework that makes it more clear what parts are much harder. At least a starting point.

                          1 Reply Last reply Reply Quote 0
                          • F
                            FunkOff @FtXCommando
                            last edited by

                            @ftxcommando I don't think I used the word "trivial". lol

                            1 Reply Last reply Reply Quote 0
                            • FtXCommandoF
                              FtXCommando
                              last edited by

                              You literally said a prototype would take 2 days

                              1 Reply Last reply Reply Quote 1
                              • F
                                FunkOff @Ctrl-K
                                last edited by

                                @azath0th I have done a significant amount of scripting and mission building before. I made the "Survival Run" and "Survival Attack" missions, and I always got quite a bit into a "Seraphim Nuke Mission" which was a campaign mission played on the side of the Seraphim, and in which you start with a Yolona Oss. I never quite finished that one because the final phase involved too many units and it ran too slow on my computer to test XD.

                                Also, I worked on the UEF campaign missions a bit to make harder versions. Speed2 said my UEF mission 2 version was too hard and did not include my version with the coop update 😞

                                1 Reply Last reply Reply Quote 0
                                • Ctrl-KC
                                  Ctrl-K
                                  last edited by

                                  @FunkOff Good to know. But this doesnt lower the efforts needed for your idea. I'll be glad if you look into Oxygen and example mission I was working on.

                                  “Be a yardstick of quality. Some people aren’t used to an environment where excellence is expected.”
                                  — Steve Jobs.
                                  My UI Mods
                                  Support me

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post