oosyrag's Recent Forum Activity

  • I'm working on a visibility graph based pathfinding algorithm, no idea when I'll be done with it though. It trades off reduction of the number of nodes for an increase in the number of edges. In scenarios where fewer nodes are visible to each other the benefit will be more pronounced. It will not work well for large open spaces or long corridors. There is also additional work to be done putting image points at all "wall" sprite corners, since we don't have access to collision box expressions.

    ref: http://theory.stanford.edu/~amitp/GameP ... tions.html

    If you're interested in looking into it yourself rather than waiting for when I may or may not get it done.

    But definitely try the built in pathfinder first, you might be surprised. Remember, you don't actually have to run pathfinding every tick - you can update just the visual feedback for the user, which doesn't necessarily have to be instantly accurate. Basically there are methods to "hide the lag", like with netcode.

  • There is.

    You can't even add the multiplayer object to a project if you are a free user.

    If you are editing a multiplayer example, there is a big yellow banner on top telling you the project exceeds free edition limits.

  • I don't profess to know if it's a good idea or not, but here are some considerations, assuming you mean for the Steam version to be a paid game...

    Steam's advantage as a platform is that it has huge reach. Steam's disadvantage is that they take a large cut of your revenue. It would make more sense to me to have the free version on Steam to leverage the reach and the paid version outside to collect the cash.

    Developing two versions of a game is additional work and possible bugs/maintenance. Especially when it might not be necessary to have two different versions at all. Why not use the same business model for both?

    People can react extremely negatively to pay up front games that act like freemium games in disguise (SW: Battlefront 2). They can also react badly to freemium games that hit users with a huge wall to progress locked behind IAP, essentially becoming pay to win. It sounds to me like your approach is to do both. There can be a good balance in the middle somewhere, but then you would only need that one balanced system and not two separate versions.

    All my personal opinion - I have no experience publishing games.

  • Use a pin behavior onto your center object, and rotate the center object. You can use an invisible helper sprite as the center object if you want.

  • Here is a quick implementation of the first link I referenced above.

    https://www.dropbox.com/s/q4fcmtza4uqvyn8/prng.c3p?dl=0

    Each time the function is called it will return the next pseudo random integer between 1 to 2147483646 inclusive in series.

    To get a float between 0 and 1, use function.call("prng")-1/2147483646.

    To set a maximum value, modulo the result by whatever you want the maximum to be, OR multiply the float as above by the maximum.'

    Note that this is reliable across platforms as long as you stick with integers only. Once you use floats, rounding errors may occur.

    I tried to make a clean version in event 3 utilizing function.returnvalue, but it didn't work as expected. Can anyone else fix it? I ended up resorting to global variables to store the last returned value.

    With some minor modification, you should be able to pick out a specific number from the series by index by looping through the function x number of times from the seed value.

    The incrementing numbers represent the distribution of results.

  • [quote:1aqk1me5]When the enemy sprite gets hit by the player, set the enemy bullet speed and angle to the desired values.

    This is where you have the start timer actions. Set the bullet speed and angle. You want to leave the start timer as it is, but you can get rid of the tag if you want - all the timers can be the same.

    [quote:1aqk1me5]on timer complete set the enemy bullet speed back to 0.

    You only need one of these events. On Timer, set enemy bullet speed to 0.

  • It is not currently available. I made a suggestion here: https://construct3.ideas.aha.io/ideas/C3-I-351

    My workaround is to have a Global constant variable set to refer to, but it must be updated manually if the tilemap size changes.

    Although changing the tilemap size honestly pretty much never happens, since the image is set as well.

  • Select all, right click, wrap selection

    OR

    Select all, press Enter on keyboard

  • A figure 8 would be simple enough with 2 sine behaviors only, no events necessary.

    Unfortunately your link got truncated, so I can't check it out.

    While it isn't the simplest thing, I can imagine making a path editor with Construct by "drawing" with the mouse and recording the x/y values into an array, which can be saved as json and subsequently imported as a project file for future use. If it can be done with events, I'm sure a plugin is possible. Relative coordinates could be utilized so the resulting movement templates are more flexible and can be used in many situations.

    Another quick idea I can think of is to create a movement template object with a series of imagepoints detailing where you want a sprite to move, and have the sprite move towards each imagepoint in succession.

    Generally speaking though, invisible helper objects positioned strategically can allow for pretty much any complex movement you can think of.

  • https://www.dropbox.com/s/vf9ub4hq4r5cv ... .capx?dl=0

    I have an old example here, maybe not exactly what you need but see if it helps.

  • You used a "Move at angle action". This will complete instantly. Instead, use the bullet behavior actions "Set angle of motion" and "set speed", with a timer for duration.

    Since you're already using the bullet behavior for the enemies normal movement, you can either add a second bullet behavior to control the knockback, or disable the normal movement events while the enemy is getting knocked back. Again, the timer behavior will be useful here.

    [quote:9d7aj68z]When the enemy sprite gets hit by the player, set the enemy bullet speed and angle to the desired values.

    You can also utilize the timer behavior to determine when to end the movement. On hit, trigger the timer for the desired duration, and on timer complete set the enemy bullet speed back to 0.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • In the animations editor, you can save animation frames to disk, and then import them again to your new project, if you don't have the original files anymore. If you have the original files, just import them like you did the first time.

oosyrag's avatar

oosyrag

Member since 20 Feb, 2013

Twitter
oosyrag has 39 followers

Trophy Case

  • 12-Year Club
  • Forum Contributor Made 100 posts in the forums
  • Forum Patron Made 500 posts in the forums
  • Forum Hero Made 1,000 posts in the forums
  • Regular Visitor Visited Construct.net 7 days in a row
  • Steady Visitor Visited Construct.net 30 days in a row
  • Enduring Visitor Visited Construct.net 90 days in a row
  • Unrelenting Visitor Visited Construct.net 180 days in a row
  • Continuous Visitor Visited Construct.net 365 days in a row
  • RTFM Read the fabulous manual
  • Email Verified

Progress

22/44
How to earn trophies