• Suggestions for more dynamic behaviours

    suggestion
    7
    1 Votes
    7 Posts
    549 Views
    D
    @Murtaza @Jack8680 @GameCRAZY @iTap-Development I think all of this is pointing at a bigger, fundamental problem in the current structure of hyperPad: A lack of proper instancing and references. The single best thing about classes and OOP. Fix this problem and everything on this list (and much more) becomes possible, and you get the biggest single benefit of programming, the creation of infinite replicants, communication between them, unique identifiers of each instance, accessible, storable references to each and the ability to uniquely change any of them. Having done this, any "thing" can point to any other "thing", even if it isn't known about at runtime. This is the greatest benefit that Objective-C has over C++, that it first seeks a responsive object, then gracefully fails if/when it can't find an object that's supposedly there and able to respond to the method call. It doesn't do this through every class in a project, only up the hierarchy. If it seeks unsuccessfully, it doesn't crash, it just returns a nil. The Apple SDK/API and Frameworks designs/architectures have relied heavily on this capacity of Objective-C. Very heavily. The wrapping (please excuse the pun) of Swift's language design around Optionals is another way to provide this flexibility, from an architectural and language design point of view, without the losses in speed prevalent in the way Objective-C handled hunting hierarchies. Sadly Swift is not nearly as freeform and carefree for the coder. Dealing with Optionals is a pain in the arse. But it's better than crashing when something that's sought isn't there, solving this problem by putting the burden of discovery and ascertainment of validity on the programmer. The same concerns must be addressed in hyperPad. What happens when something is asked for or expected that isn't there? With the very literal and predefined (and exacting) way relationships are handled now means there is no chance of this. But the moment you permit dynamic addressing you're going to get failures to find the object, address, property, attribute or whatever it is that's predicted to exist but may not. So you now have to come up with a way to elegantly fail, or provide a completely bullet proof way of dealing with the failure to find something. Creating the complexity of optionals in a visually coded language/environment is not something good for those allergic to spaghetti. Going the way of Objective-C is even weirder because it's almost an old trick from an old world problem. Dealing with a silent, graceful return of Nil (exceptions) isn't something many people are really good at doing in Objective-C, and they're real programmers. At this stage there's no debugging in hyperPad, and that might be the biggest problem. Tired. Nap time. Thinking language Code hurts.
  • Dynamic Input to all behaviours

    4
    3 Votes
    4 Posts
    469 Views
    MurtazaM
    Yeah this is something we've wanted to add for a while. It's just taken some time fo find the best way to implement it. Ie. keeping it the visual method, but have the option to enter an object by name. As well as handling situations where the usr accidentally deletes a character etc.
  • Set Graphic doesn't have a duration or blend mode

    10
    1 Votes
    10 Posts
    775 Views
    D
    @Murtaza It should have it. This is the best idea for efficient graphic changes of targets, walls, backgrounds... all sorts of things. Please consider it essential. And get it done. Today ;)
  • Feature Request: Booleans

    23
    0 Votes
    23 Posts
    4k Views
    MurtazaM
    While bools would be cool. I don't think they're super high priority. Mainly because you can work around them very easily with an IF and a box container. Yeah, it's an extra behaviour. But not that huuuge of a deal. When compared to the other bugs and issues users find :).
  • Feature Request: Get Current Time

    4
    0 Votes
    4 Posts
    278 Views
    D
    @Jack8680 So sorry! I found it... under LOGIC. Logically. I never thought to look in there for Get Time. Looked just about everywhere else... Agreed, a behaviour finder is a must have. As would a broadcast sender, variable and in project behaviour finders. My project is starting to get to that size where I'm forgetting where things are. Easy enough to do, in terms of UI, too... I think. Pull down on the Behaviour list to open the search of hyperPad behaviours. Pull down on the Property list to open a search within the project for behaviours, variables, broadcasters, receivers, etc.
  • Feature Request: Finite State Machine Behaviour

    7
    0 Votes
    7 Posts
    427 Views
    Jack de WildeJ
    @Deeeds okay, I've googled a bit and I see the visual aspect of a finite state machine. So it'd basically let you have events and states that switch to other states like in a truth table, but you show it visually like a flow chart. Then I guess you could have each state contain behaviours underneath that are turned on during that state. I can see this being a pretty cool feature actually, and possibly not too hard for them to implement. I can do this with behaviours, except I would have to make an editor for the finite state machine, or you'd be typing out nested dictionaries. It wouldn't work with a timer though since you'd need to turn it off when the state changes, so every timer would need to be a wait behaviour with an 'if' to check the state and if it's the relevant one, reactivate the wait. Although a finite state machine would suffer the same problem, unless it also stopped any timer anywhere down its behaviour tree from running when the state changes. I'm going to think about this a while as I try to sleep.
  • Feature Request: Set BOUNCE free! Open up >100% Bounciness

    1
    0 Votes
    1 Posts
    128 Views
    No one has replied
  • Make Air Resistance same as Get/Set Gravity

    8
    0 Votes
    8 Posts
    548 Views
    Michael KhalfinG
    @Deeeds Be it.
  • Please Update Physics Editor

    1
    0 Votes
    1 Posts
    165 Views
    No one has replied
  • UNDO... half baked?

    10
    0 Votes
    10 Posts
    670 Views
    D
    @Aidan-Oxley I found another "work around"... duplicate the scene. This has been what I've been doing, but it shouldn't have to be done. I tried branching, but it's too messy to reload a project to try some other values again. I'm going through the iterative stages of exploring and discerning the right values for jumps, landing, recovery time, acceleration and other characteristics of the hero's movement. It's a LOT of trial and error and testing and discernment to find that right "FEEL", and it's unbelievably annoying to try do this without UNDO.
  • Add a Multiplier to "Apply Torque" Behaviour?

    2
    0 Votes
    2 Posts
    153 Views
    Aidan_FireA
    @Deeeds Well judging by that picture, clearly not. I don’t know what multipliers are for, I don’t find them useful. I just keep my multipliers on 1 and if I want to multiply my force then I just multiply it and change the force!
  • Is there a "USER GUIDE" with Overview of Architecture etc?

    4
    0 Votes
    4 Posts
    301 Views
    MurtazaM
    I'm sorry we suck at documentation! ;). But we try to make up for it by answering questions as quickly as possible.
  • Chipmunk2D Extras and Advanced Features

    4
    0 Votes
    4 Posts
    353 Views
    MurtazaM
    Pivot attach has some of the motor stuff :).
  • Always on feature

    6
    0 Votes
    6 Posts
    646 Views
    iTap DevelopmentI
    @Murtaza I think on one of the previous versions of this beta it stopped, but then on one of the recent ones it came back.... if that helps🤷‍♂️
  • What Happened To Contests?

    9
    0 Votes
    9 Posts
    751 Views
    RobinsonXR
    Hmmmmm.... Best Summer Themed Game? Well... I wish summer was back... 😐
  • Make names more important.

    2
    1 Votes
    2 Posts
    305 Views
    Jack de WildeJ
    @T-Studios you can sort of do the object name thing by using an attribute for the name and using a for each loop on a tag to get an object with a specific name, the only problem is that this freezes the game until the loop is done, which can be pretty annoying. I agree with setting graphic by name, would be useful especially with a huge number of graphics. Instead of object names, I'd like to see a set tag behaviour, so we could give spawned objects different tags (basically names but selectable in behaviours).
  • Get FPS behavior

    4
    0 Votes
    4 Posts
    388 Views
    Jack de WildeJ
    I don't think it's directly related to fps, but it can be a good indicator of performance. I haven't used that since Gamepress I think, so I'm not sure whether it still works the same.
  • Hyperpad for iPhone?

    13
    1 Votes
    13 Posts
    1k Views
    DGames135D
    I’m not sure about actually buying the iPhone X. It’s just 😐 and I’m still confused on why Apple hasn’t named the iPhone 8 the 7s
  • Private Game

    2
    0 Votes
    2 Posts
    340 Views
    MurtazaM
    We want to add something like this. It's not high on our priority list though. For now we suggest the email sharing option and private messaging on the forum.
  • 64 Bit Labels

    3
    0 Votes
    3 Posts
    375 Views
    Jack de WildeJ
    @T-Studios Labels can display a lot more than 64 bits of text, do you mean behaviours that don't support more than 32 bits?