oosyrag's Forum Posts

  • The peerID is a random string assigned by the signalling server upon joining a game.

    You can use PeerIDAt(index) to get the ID of each peer in order of joining.

    https://www.scirra.com/manual/174/multiplayer

    [quote:b80en4q6]PeerAliasAt(index)

    PeerIDAt(index)

    The alias and ID of the nth peer in the current room, up to PeerCount.

    If you are unfamiliar with PeerIDs, I highly recommend reading and going through the steps of making the Multiplayer Tutorials https://www.scirra.com/tutorials/892/mu ... 1-concepts. PeerID is a core concept and you won't get very far without understanding and working with them.

  • That is your problem, the kick action works with peerID, not username. You'll need a system to keep track of the peerIDs and use that to kick peers.

  • You say you type the name. What name are you typing? It looks like you're kicking based on a selection in a list box. How are you populating that list box?

    You'll need the peerID of the peer you are trying to kick. For example, try creating an event On any click - Kick peer PeerIDAt(PeerCount). This should kick the last joined peer. See if that works first.

  • With behaviors, I think bullet should cover everything you need.

    Without behaviors, the simple action would be to move towards another object, or move at angle.

    You can use another invisible sprite in the middle as the target if you have trouble with your target moving.

    If you need it to accelerate over time, store the current speed in an insurance variable to use as the amount moved per step, and increment the speed.

  • Maybe, and probably. No one can really answer without seeing how your kick button and multiplayer are set up.

  • OH. See the little + in a box next to event 2? Click that haha

    Next to event 6 too.

  • Displaying a cone range can be done by simply resizing a cone sprite. Changing the angle is a little trickier, but I would just create a bunch of animation frames with as many different fan angles as I need.

    If you need to show the cone of view WITH line of sight and obstructions... that is a rather advanced topic/technique. If this (https://twitter.com/JoeGribbs/status/701924446429437952) is what you're looking for, I'll leave you with a few links:

    http://www.redblobgames.com/articles/visibility/

    need-help-working-with-bullets_p1017125?#p1017125

    https://www.scirra.com/tutorials/902/li ... raycasting

    http://ncase.me/sight-and-light/

    You may want to compromise and just simply show the range and angle with a translucent cone sprite, and let the game handle LOS... showing LOS can be very tricky.

    Alternatively, you might want to look into the shadow light/caster behavior, which may give you the effect you're looking for. https://www.scirra.com/manual/178/shadow-light

  • Hm.. how did you purchase C2? Usually you would need to create an account to buy it from the web store I think.

    Not sure how steam version works, but if you bought it from steam, I imagine if you install it through steam and run it through steam, it will be the full version. Just guessing though.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Ok to break it down:

    He loaded the score values in order, counterclockwise, into an array. (6,13,4,18,ect...)

    Then normalize the angle() expression (normally returns -180 to 180) with angle()+360%360, resulting in a value 0-360 (this is dAngle)

    Then map that angle to the array with (20-(round(dAngle/18)))%20. (this is dIndex)

    Based on the distance from the center, you can determine if the final score (dNumber) should be a inner bullseye at 50, outerbullseye at 25, or a multiple of the base value stored in the array.

    He uses some nice math to to be efficient. If you have trouble wrapping your head around that (and or the array), here's general pseudocode:

    If distance (from middle) is less than (bullseye size), then score = 50

    else if distance is less than (2*bullseye size), then score = 25

    else if distance is greater than (dartboard score zone), then score = 0

    ELSE

    If -10<angle<10, score = 6

    If 10<angle<30, score = 13

    If 30<angle<50, score = 4

    and so on...

    and after that if the dart is within a certain distance from the middle, multiply the score by 2 or 3 (bonus rings)

    -------- OR -----------

    The arguably simplest way is to make invisible placeholder sprites for each target zone with a score variable for each instance. This could be a lot of work though, and not nearly as accurate as the mathematical way with distance and angle (you might have overlaps or gaps).

  • https://www.scirra.com/blog/112/remembe ... our-memory

    Rather than enlarging your game resolution, you may want to consider reducing the resolution of your image with an editor.

    Generally speaking, you won't be able to use a large map all as one huge sprite. As described in the linked blog post, game developers will usually use a mixture of techniques to manage memory: tilemaps, repeating backgrounds, smart placement of transformed detail sprites, and the occasional big budget centerpiece.

  • Go to "Store" and then "Your Downloads" on the left.

  • Thanks that makes things a lot more clear! Force own texture is what I needed.

    So by having an object at the top of the layer with the Destination In or Out effect applied, that object will clip everything else below it on that layer only, while other layers are unaffected.

  • How are source and destination defined? I'm assuming source is the object or layer the effect is applied to. How do they interact with multiple layers/objects beneath them? Is there a way to isolate a specific destination (just one layer/object beneath it, instead of all?)

    I was trying to set up a simple clipping mask on scrolling menu items as an overlay while allowing other layers and game layout to be shown beneath and around the menu.

  • Try exporting to nw.JS

    https://www.scirra.com/manual/162/nwjs

    You'll need to download it seperately.

    https://www.scirra.com/nwjs

    Edit: Sorry, doesn't look like you can do it with the free version. https://www.scirra.com/store/construct- ... license-31

  • Try looking up "parsing", and see if there are any examples.

    A method I've used before is as follows:

    Export the spreadsheet as a .csv

    Import it as a project file and read the contents with AJAX (or alternatively load it from disk via nw.JS)

    Parse the values you need by using the tokenat expression, using newline and commas as your token separators

    (You may also want to use the replace() system expression to take out all the quotations marks in your file if you have them).