Navigation

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

    Crashing, what did I do?

    Help
    7
    16
    699
    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.
    • waldron
      waldron F @SteveZX81 last edited by

      @SteveZX81 may not be much help but usually I put the sprite scales ect above main loop looks like I use a different method tbh

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

        Me too normally but I'm being a cheat and using it to point the player in the right direction when they move left/right. Rather than having a left and right sprite.

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

          @SteveZX81 iv been using daves trick for that
          Think iv got that in my tails project, should be shared to friends

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

            I feel like I've had this problem before and it was fixed by having the c = controls(0) line before the loop as well. But it's a bit of a stab in the dark (my main method of coding, hahah!). Might be worth trying, but if it doesn't work I'm sure someone else will post the answer soon

            1 Reply Last reply Reply Quote 1
            • PB____
              PB____ last edited by

              I've not touched sprites myself yet, but it doesn't look like you're doing anything wrong. I've read some posts about memory leaks in Fuze that looked related to the += and -= operators (and then using the same variable again in the next line).

              This might lead nowhere (I've not run the code myself), but could you try changing the -= and += operators respectively to helib.x = helib.x - 8, helib.x = helib.x + 8, helib.y = helib.y - 8, helib.y = helib.y + 8. Just a wild idea, that might omit triggering a memory leak

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

                Thanks @PB____ just changed it, lets see how it goes.

                Edit: Sadly it just crashed again with the stack overflow error. was worth a try though!

                I'm cutting out various things to try and find out exactly which bit is causing it. first I commented out the setspritescale commands and it still crashed, then I commented out all the lines where I set the position of the bomb sprite and it still crashed.now I've commented out where I load and display my map (tileset). will see how it goes.

                Edit2: I just tried commenting out all the movement if statements ..still crashed
                commented out the map ..still crashed
                commented out the bg graphic ..still crashed.

                1 Reply Last reply Reply Quote 2
                • SteveZX81
                  SteveZX81 F last edited by

                  I thought I was confused before but I'm 10x more confused now.
                  I tried commenting out everything in that simple listing last night and no matter what I removed it still crashed.

                  This morning I run it as-is and that was 27 mins ago.. it's still working. So I'm utterly baffled as to what's going on.

                  Dave 1 Reply Last reply Reply Quote 3
                  • Dave
                    Dave Fuze Team @SteveZX81 last edited by

                    @SteveZX81 Excellent. This is all intended, we just want to watch people struggle. evil laugh

                    No but this is a confusing one for sure. I'm sorry you're having that experience with the program. Out of interest, referencing @Kat 's previous comment, is your c variable global? This has certainly sorted the problem out for me before.

                    Sometimes if a crash is happening, commenting out lines can only get you so far. I remember once during testing before release I had a huge program which crashed, I commented out literally every single line of code and it still crashed, haha. We fixed it, of course, but I'm saying that there is scope for things not to make sense on the surface.

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

                      Thanks Dave and yes, right at the top, before the main loop I have c = controls(0) (which I believe makes it global?)

                      Dave 1 Reply Last reply Reply Quote 1
                      • Dave
                        Dave Fuze Team @SteveZX81 last edited by

                        @SteveZX81 I see, well that rules that one out! Apologies Steve.

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

                          You have nothing to apologise for, not your fault.

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

                            Sorry, the dump question, but did I understand this correctly? how does controls() read the controller input during every main loop iteration, when its outside of it? Or do just put a c=[] outside of the main loop?

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

                              it doesn't. (well, it didn't when I tried it)

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

                                Ahh.You are right @SteveZX81 I understood @Kat wrong: "c = controls(0) line before the loop as well" This is the trick, this means it does not create a new instance every loop. It just re-uses the existing variable. nice! I have to try this.

                                1 Reply Last reply Reply Quote 2
                                • xevdev
                                  xevdev F last edited by

                                  Mmm I just tried this putting c =controls(0) at the top of pogo Jo as I have called that function repeatedly throughout my program. It only got to the second control input and completely locked up had to turn switch off and I've had no issues at all with using c=controls(0) whenever I've needed to.

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