R0J0hound's Recent Forum Activity

  • For 1 make the bottom layer transparent before capturing the screenshot.

    For 2 same as above but you hide all the other layers.

  • Like you said, Construct Classic is 100% free. There are no licences you need to get with it.

  • [quote:2feohdlr]The worry is how C2 is converting it to JS

    I wouldn't worry. You can literally put any text for a function name without issues.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • This is probably deliberate, since jpg compression can create artifacts that would effect the other images in the sprite sheet.

  • You can use the asJSON expression.

    Add an textbox and a event like this:

    Time=1.0 seconds

    --- textbox: set text to particles.asjson

    The copy the text in the textbox into your favorite text editor and replace all the " with '. Then add " to the beginning and end of it, and select it all and copy it.

    Now in your game you can remove the textbox and that event and add a event:

    on start of layout

    --- particles: load from json ...

    Just paste the copied text instead of ... and voila, it starts pre-running.

  • My solution was just an idea to better use "overlaps at offset". You'll probably get the same amount of collisions with either method.

  • My mistake. It's the character select screen, event 32.

  • It's just a typo since i haven't used the utility with something that uses effects. In the lines that loop over the effects use "effectid" instead of "id".

    When running it on your file the value it fixed doesn't look far off. It basically added one, so I don't know if it was the cause.

    As far as the runtime errors you are using the "or" condition on your title screen. "or" causes runtime errors, especially when changing layouts, and shouldn't be used.

  • +----------------------------------+
    | repeat array.width times         | array: set at loopindex to (loopindex+1)%array.width
    +----------------------------------+
    
    global number index2=0
    global number tmp=0
    
    +----------------------------------+
    | repeat 10 times                  | set index2 to int(random(array.width))
    | repeat array.width times         |
    +----------------------------------+
        +------------------------------+
        |index2 <> array.at(loopindex) | set tmp to array.at(index2)
        |loopindex <> array.at(index2) | array: set at index2 to array.at(loopindex)
        |                              | array: set at loopindex to tmp
        +------------------------------+[/code:1bm3id39]
  • Maybe this?

    PlayerDetect is overlapping at offset ledge at (PlayerDetect.PlayerDirection*8, 0)

    The offset is relative to the player. It's the same as if the object is moved 8 pixels to the left or right before checking for the overlap.

  • You probably could use python to do it. The Sprite.NumVars expression gives the number of private variables and then you can do something like this to loop over all the variables.

    for i in range(Sprite[0].NumVars):

    Sprite.Value(i)

    The trick here is you can access a value by it's index instead of by it's name.

    I don't have time to make a full solution but you can access everything you need from python. Next you'd need to come up with a way to save and load that data to and from the disk. It's not hard just takes a bit of thought.

  • If you put most of your images on another layout the texture will only be loaded when you create an object. Unloading occurs when switching layouts or using the unload textures system action, just as long as there is no created sprites that are using it.

    Another thing to consider is any open layouts in the editor use video memory. You could try closing them before running a preview. Yet another thing that could happen is previous previews didn't close correctly so you'll see temp.exe, temp2.exe... Etc in the task manager. Ending those tasks will free the vram they're using.