R0J0hound's Recent Forum Activity

  • Normally you can read and write text files and send text over a network. Binary is useful to be able to deal with nontext files or to send data more compactly over the network.

    Reading non text files is more niche but can be useful. Typically you’d be fine with just using text based files.

    Binary data can be more compact than text. Especially with numbers. For example look at the number

    123456789.0123

    As text it will take 1 byte per character or 14 bytes, or you can store it as a 64bit float and only take up 8 bytes. So in that simple example you’d save 6 bytes for one number. Anyways, that’s just one example.

  • Ah. Guess I never got around to fixing it.

    Here’s a list with what should be working links.

    construct.net/en/forum/extending-construct-2/addons-29/r0j0hound-plugin-list-135781

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • It should be the one in the first post.

  • I think he may mean that when moving along a rotated wall the motion isn’t smooth or sliding.

    Maybe in the same vein as this:

    construct.net/en/forum/construct-2/how-do-i-18/8-direction-behavior-slide-95148

  • I usually do it with one condition. Pick the relaxant instance and then the following will run if they are in the mountfamily. It may be more or less what you ended up doing. I didn’t read too carefully.

    Mountfamily: pick by uid playerfamily.uid

  • I’m guessing from what I can find that the text is drawn with a html5 canvas, so css isn’t used at all. The size limit is likely arbitrary though.

  • I’d just scrap the whole effect and start from scratch. The way the effect works is it draws 8 copies of the image at offsets and sets all the pixels to a color.

    Transparency sounds like just another number to adjust that. The issue is blending the 8 images together. It’s the same issue as multiple sprites with 50% transparency vs the same sprites with 100% and the layer with 50% transparency. In my non flu thinking I’d do that in two steps. Not sure how that would be done in a shader.

    An inset outline could possibly be done by doing a Boolean blending with the offsets together in some way. Then simplifying it if possible.

    I don’t really want to mess with GLSL or JavaScript within construct. If I have to do that I’d rather do it elsewhere.

  • Set array size to (tokencount/4,4,1)

    Repeat tokencount/4 times

    — set array at (loopindex, 0) to tokenat(loopindex*4+0)

    — set array at (loopindex,1) to tokenat(loopindex*4+1)

    — ... and so on for 2 and 3

    Alternatively you can simplify it further

    Set array size to (tokencount/4,4,1)

    Repeat tokencount times

    — set at (int(loopindex/4), loopindex%4) to tokenat(loopindex)

  • I re-shared the images in that link. They are ways to approximate the collision point once the balls are overlapping.

    You still need the point when the balls collide. The two ways are either to use a loop to move the one ball forward by steps till they collide, or you could raycast from the white ball to the red.

    the loop way could be something like this:

    every tick:

    -- testBall: set position to whiteball

    -- testball: set angle to whiteball.angleofmotion

    repeat 1000 times

    testball: isn't overlapping redball

    -- testball: move forward 1 pixel

    The ray cast method it more complex but more percise. Basically a ray from the whiteball against a circle at the redball's position with a radius of whiteball.radius+redball.radius. I couldn't find where I've done that before, but it's a formula you can find online.

    Anyways after that you can calculate the bounce. This is pool so we could do perfectly elastic bounces. You really only need the normal (angle from one ball to another) and the velocity. The formula is pretty standard in physics. Here is a possible example, and a link to an article about it.

    construct.net/en/forum/construct-2/general-discussion-17/approaching-pool-ball-movement-56649

    construct.net/en/forum/construct-2/how-do-i-18/fake-physics-collision-123031

    In the end though it may not precisely match the path the balls will move with the physics behavior due to differences in frame time causing the collision to be at slightly different times.

  • I'd imagine it's not possible for most though. I'd recommend doing a bunch of simple projects to try out various ideas related to what you want to do, and see if you have the ability to do them. Then if you find you're able to do that you can try working all the ideas together. You should to be able to quickly see how much is involved and if it's something worthwhile to work at till completion.

  • Well, what is actually needed to make a game engine/editor? Be able to draw stuff, get mouse/keyboard input, a way to do the logic to put stuff together, and finally a way to read/write files. Not all vanilla construct features are well geared for much of that, but it would depend on what features you'd want your game engine/editor to have.

    Say you wanted to make an engine much like construct. The layout editor and event editor would mostly be a lot of busywork. Same with the runtime. Drawing images or dynamically loading images are some drawing primitives that may need additional plugins. It could take some strategy to keep stuff organized so you wouldn't get bogged down with too may events to deal with.

    In the end you may be fighting with constucts features to do what you want, so it may just be worth it to do the engine something lower level like js so there is more control and less friction.

R0J0hound's avatar

R0J0hound

Member since 15 Jun, 2009

Twitter
R0J0hound has 156 followers

Connect with R0J0hound