Navigation

    Fuze Arena Logo
    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Popular
    • Users
    • Groups
    • Help
    • Discord

    Map Locations Demo

    Coding
    5
    28
    1318
    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.
    • SteveZX81
      SteveZX81 F last edited by

      This is great! Thanks

      1 Reply Last reply Reply Quote 1
      • pianofire
        pianofire Fuze Team last edited by

        Just something that came up with this. You need to give your locations unique names otherwise you will get things appearing in the same location. If you want to have locations with different types you can just add a sequential number on the end e.g. tree01, tree02 etc and rock01, rock02. Then to find the type of a location you can use strBeginsWIth e.g. if strBeginsWith(locs[i], "tree") then

        1 Reply Last reply Reply Quote 3
        • Spacemario
          Spacemario F last edited by Spacemario

          @pianofire, @waldron Have you-- or anyone else really-- tried this with the latest patch? I have essentially your exact code:

          • One third of the time it works: my sprite is showing up in the game world, at the correct spot.
          • One third of the time I get a run-time error "Incorrect type struct for parameter one: expected string" on the "getMapLocation()" call.
          • One third of the time Fuze crashes (the Switch's OS-level "quits unexpectedly" error we're all familiar with).

          This is the first time I've ever used map locations, so I can't say whether it worked before the patch. I don't think it's a problem with my code: I'm almost verbatim using your above snippet. I'll go take another look to be sure.

          Thanks in advance!

          waldron 1 Reply Last reply Reply Quote 1
          • waldron
            waldron F @Spacemario last edited by waldron

            @Spacemario glad you mentioned it, all my games with this code crashes fuze post patch no error code nothing if i comment out the namemaparea code my program runs or if I leave it in and comment out collidemap it runs so I think there is a problem with namemaparea() and collidemap() running together. I'v had to resort to using collidemaparea instead which sucks as a sprite collides with it and doesn't pass through it.

            Spacemario 1 Reply Last reply Reply Quote 1
            • Spacemario
              Spacemario F @waldron last edited by

              @waldron Fascinating, thanks for bringing this up! We'll let @pianofire chime in, but it sounds like a bug may have been introduced into the latest Fuze patch related to the map-related functions, since we're both experiencing similar issues in two completely different programs.

              waldron 1 Reply Last reply Reply Quote 1
              • waldron
                waldron F @Spacemario last edited by

                @Spacemario yeah I did mention it but I'm always in 2 minds with issues like this as I'm never sure if it's the way I code or fuze but all my games with this code now crash and I have been experiencing lots of graphical glitches but again not sure if it's down to my code although I haven't had them before the patch.

                1 Reply Last reply Reply Quote 0
                • waldron
                  waldron F last edited by

                  just realized this is getmaplocation where as my problems have been with namemaparea so maybe maps in general and locations have gone a bit pete tong

                  Spacemario 1 Reply Last reply Reply Quote 0
                  • Spacemario
                    Spacemario F @waldron last edited by

                    @waldron I bet "under the hood", these different map functions share a lot of the same code-- so there may be some kind of memory or pointer-related bug, which is impacting multiple map functions.

                    For now, I've gone back to defining all of my actors in a giant array like I did for "Skatey-Cat": I was really hoping to avoid that approach and use map markers this time, but doesn't look like that'll be possible.

                    Oh well, it was a nice idea anyway :)

                    waldron 1 Reply Last reply Reply Quote 1
                    • waldron
                      waldron F @Spacemario last edited by

                      @Spacemario i'l have a test later maybe the spritecamera map position patch has caused it as was working fine before il create a test program later and share it in hopes there is a workaround or at least the true cause

                      1 Reply Last reply Reply Quote 0
                      • waldron
                        waldron F last edited by

                        Found the cause ! I had areaNames = getmapareanames() in the main loop which worked before the patch so I'v moved that part outside the loop and now works without crashing

                        1 Reply Last reply Reply Quote 0
                        • waldron
                          waldron F last edited by

                          I'v tried the sprite placement code but not really used it before so I was unable to test that

                          pianofire 1 Reply Last reply Reply Quote 0
                          • pianofire
                            pianofire Fuze Team @waldron last edited by

                            @waldron When you say "in the main loop" do you mean not inside a function?

                            1 Reply Last reply Reply Quote 0
                            • waldron
                              waldron F last edited by

                              in my case with the namemapareacode i had
                              areaNames = getmapareanames()
                              with the for loop code in the main loop
                              in my test program iv not put it into a function and it crashes.
                              if i put the areaNames = getmapareanames() outside the main loop it runs as expected.
                              in my other programs the results are 50/50 where i do store that code in a function they either run fine or crash .
                              do i need to reference these or ? confused as my code hasn't changed but since the patch that piece of code crashes the system.

                              pianofire 1 Reply Last reply Reply Quote 0
                              • pianofire
                                pianofire Fuze Team @waldron last edited by

                                @waldron No it definitely shouldn't be crashing. I have raised an issue for this

                                waldron 1 Reply Last reply Reply Quote 0
                                • waldron
                                  waldron F @pianofire last edited by

                                  @pianofire thanks been driving me bonkers haha if i comment out the collidemap() it doesn't crash so i think its as spacemario describes above.

                                  1 Reply Last reply Reply Quote 1
                                  • waldron
                                    waldron F last edited by

                                    just one last one with this, after testing the namemaparea() that was causing crashes this also caused crashes with my other programs where they would just crash when i run them at random with some with scary graphical glitches.
                                    so last night i didn't test that piece of code and my other programs didn't crash anymore :) currently using detectmapcollision instead as a workaround.

                                    Spacemario 1 Reply Last reply Reply Quote 0
                                    • Spacemario
                                      Spacemario F @waldron last edited by

                                      @waldron One thing I may resort to is loading every one of my game's maps before the main loop even begins, and populating my actor arrays that way.

                                      It's contrary to the way my "engine" works-- which loads "assets" on-demand when levels are swapped-- but the Switch has so much RAM for the kinds of games we make in Fuze, that holding the entirety of the actors in memory the entire time the game is running should be no big deal.

                                      If I make that change, I'll post here whether or not it works around the crashing.

                                      1 Reply Last reply Reply Quote 2
                                      • pianofire
                                        pianofire Fuze Team last edited by

                                        Please could one of share and submit a program that crashes so I can test out a potential fix. Thanks in advance

                                        waldron 1 Reply Last reply Reply Quote 1
                                        • waldron
                                          waldron F @pianofire last edited by waldron

                                          @pianofire you can download my lint gamejam game CZ563MND5U that has it
                                          i do have a smaller program with the problem isolated which i can share later if needs be?

                                          Spacemario 1 Reply Last reply Reply Quote 2
                                          • Spacemario
                                            Spacemario F @waldron last edited by

                                            @waldron Just a heads-up, I tried the map entity initialization outside of my game loop, and it still caused Fuze to crash-- figured I'd let you know.

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