Navigation

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

    New to Fuse4-want a Faery Tale Adventure like game

    General Discussion
    17
    186
    25254
    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.
    • vinicity
      vinicity F last edited by

      I think you are losing memory because you are not doing deleteShape() on your arrows after you have drawn them.

      This is a serious bug in Fuze, since memory allocated for shapes is not returned even after you quit your program (same as with audio files).

      Willpowered 1 Reply Last reply Reply Quote 2
      • tdg8934
        tdg8934 @n_yohan last edited by

        @n_yohan thanks but adding another update() or sleep(0.0001) or smaller causes the music and character movement to be very slow and not realistic to use. As well also causes the memory loss and eventual crashing- just slower.

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

          @tdg8934 I think that @vinicity has spotted the leak. Add a deleteShape(shape1) after drawShape(shape1)

          tdg8934 1 Reply Last reply Reply Quote 1
          • tdg8934
            tdg8934 @pianofire last edited by

            @pianofire @vinicity

            Thank you! That did the trick. All is fully functional again - back to normal. I’ve learned so much with the members and staff in this forum. Great work!
            8B16DFB5-D3A3-4C69-864F-D74258119191.jpeg

            tdg8934 1 Reply Last reply Reply Quote 5
            • tdg8934
              tdg8934 @tdg8934 last edited by

              If you notice on the last screen capture there is now a colorful “Action” menu box displayed with selectable smaller menu boxes (ie Inventory, Pause, Take, Look...). I’m able to select each menu box (into high-lighted black boxes with red letters) using the control buttons l, lz, r and rz when pressed. However there are 11 menu boxes and not enough control buttons (as I’m using 4 buttons also to control the animated knight walking).

              Does anyone have ideas or code to share on how I might cycle through 1 or 2 buttons to have them go through the menus. I was thinking a counter but when the button is released have it count and move to the next menu box. Is that the right way to handle a situation like this?

              thanks - Tim.

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

                @tdg8934 It's been a while since I've played the Mega Drive version... how did that work? The Genesis only had three face buttons, yet I remember it having the little boxes, and I recall the control scheme working just fine.

                I actually have a copy of the Genesis port sitting around my basement somewhere...

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

                  @tdg8934 you could have a box (invisible sprite or area) where your inventory is and detect some form of collision while in there just call the collision and put the controls needed in there that will allow you to use one button for multi purpose. There may be a better way but its worked for me.

                  1 Reply Last reply Reply Quote 1
                  • Willpowered
                    Willpowered Fuze Team @vinicity last edited by

                    @vinicity said in New to Fuse4-want a Faery Tale Adventure like game:

                    I think you are losing memory because you are not doing deleteShape() on your arrows after you have drawn them.

                    This is a serious bug in Fuze, since memory allocated for shapes is not returned even after you quit your program (same as with audio files).

                    We're aware of this and have a fix coming your way soon for shape memory not freeing at program end. In your programs however it's always possible to leak memory if you createShape with no deleteShape!

                    tdg8934 1 Reply Last reply Reply Quote 3
                    • tdg8934
                      tdg8934 @Willpowered last edited by

                      @Willpowered thank you and I am using the DeleteShape command which is working for me to fix the problem.

                      1 Reply Last reply Reply Quote 0
                      • tdg8934
                        tdg8934 @tdg8934 last edited by

                        I haven’t been able to find a method that counts the number of times a control button is pushed. So if c.l is pushed once it does thing 1, if c.l is pushed twice it does thing 2, for let’s say 5 pushes .

                        I’ve searched “control“ and can’t find a routine that does this.

                        Anyone have ideas?

                        Thank you

                        tdg8934 1 Reply Last reply Reply Quote 0
                        • PickleCatStars
                          PickleCatStars F last edited by

                          Counting button presses isn’t so straightforward. You might think you can just make a ‘counter’ variable then put ‘if c.l then counter = counter + 1’, but that will just zip up your counter super fast, 1 per frame. I haven’t done it yet, but my question here: https://fuzearena.com/forum/topic/1195/use-of-flags-with-button-presses will probably be relevant. Maybe.

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

                            I’d recommend counting when the player lifts their finger as a button press. In my programs, you will often see I don’t make an action occur until then, so as to only have registered the action once.

                            If you look at my small Game States Demo in the TitleScreen() function, there’s a spot where aPressed==false, meaning they let go of “c.a”. You could increment a global variable count in that spot, such as buttonAcount+=1, and then check if it’s the right count, and then do the action and reset.

                            1 Reply Last reply Reply Quote 3
                            • tdg8934
                              tdg8934 @tdg8934 last edited by

                              I found a way to make it work with a pseudo mouse like movement using the analog stick lx ly. I found the JoinShape demo in the help. I shows a circle shape moving around the screen with the left analog stick. I Reduced the circle shape radius to 10 and used the Distance command between the shape and each of the menu boxes. When the circle shape is moved over the top of the menu box it changes to a black box with red letters and then unloads the old map and loads a new one. Its not ideal as I would rather press a button to cycle through the menu boxes - but it works for the most part.

                              Not sure what to work on next but it’s coming along.

                              Thanks to everyone!

                              tdg8934 1 Reply Last reply Reply Quote 4
                              • tdg8934
                                tdg8934 @tdg8934 last edited by tdg8934

                                I figured out how to press a single control button and cycle through tasks without having to use the pseudo mouse method figured out using similar code from the “JoinShape” example help command.

                                This better method of cycling through tasks was found using the Example help on the command “setShapeColour”.

                                w = 150
                                press = false
                                pressCount = 0
                                
                                loop
                                   clear
                                   j = controls(0)
                                   MenuPress()
                                
                                   update()
                                repeat
                                
                                function MenuPress()
                                   if j.a and !press then
                                      pressCount += 1
                                      if pressCount >= 12 then
                                         pressCount = 0
                                      endif
                                      press = true
                                   endif
                                
                                   if !j.a then
                                      press = false
                                   endif
                                
                                   if pressCount == 1 then
                                      drawImage( menubox_action, w*6, 930, 1)
                                   endif
                                   if pressCount == 2 then
                                      drawImage( menubox_inventory, w*6, 930+30, 1)
                                   endif
                                   :
                                   :
                                   if pressCount == 11 then
                                      drawImage( menubox_r, w*6+w/8+92. 930+10, 1)
                                   endif
                                return void
                                
                                1 Reply Last reply Reply Quote 1
                                • pianofire
                                  pianofire Fuze Team last edited by

                                  @tdg8934 if you surround your code blocks with ``` it will format it properly (as above)

                                  tdg8934 1 Reply Last reply Reply Quote 1
                                  • tdg8934
                                    tdg8934 @pianofire last edited by

                                    @pianofire great I was wondering how others did that. Guess I should look closer at the reply options.

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

                                      https://fuzearena.com/forum/topic/226/faq-common-questions-and-answers/4

                                      tdg8934 1 Reply Last reply Reply Quote 0
                                      • tdg8934
                                        tdg8934 @Martin last edited by

                                        @Martin can you tell me if I did anything wrong? I’m not sure what the link is for.

                                        1 Reply Last reply Reply Quote 0
                                        • Martin
                                          Martin Fuze Team last edited by

                                          No, nothing wrong, but you asked about the code blocks and it's all in there :)

                                          tdg8934 1 Reply Last reply Reply Quote 1
                                          • tdg8934
                                            tdg8934 @Martin last edited by tdg8934

                                            Exciting things being worked out with my FTA like game. Trying all kinds of new things out. Tambry village created has collision walls and buildings with beds, fireplaces, tables, supplies, etc. Have a 80% functional menu system with controls X B and Y. The A controls the knight character moving a sprite partial rotating sword. Learning a lot. Only issue so far is the game occasionally randomly crashes so will investigate that later. Slowly but surely it’s coming together. Have so much to to do outside of the tambry home village. I’ll try to get some pics or YouTube videos this weekend posted.

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