Mikal's Forum Posts

  • Haha, OK, you get $1 - just for that funny s-post itch page.

  • Great podcast, the first one with Mike Parent (Spriter) was particularly good, wide-ranging discussion, getting a start in the industry, pixel art tips (watch out for Pixel Confetti), his work with Construct and perseverance (he sold how few copies of the proto Spriter, wow.) Also nice production values (which I am sure your day job is a big help in.)

  • If you talking about C3, you can use the JSON spacing data prop for SpriteFont, I think the format changed between C2 and C3.

    Example (for a different font, just showing the format):

    [[6,"|"],[8,".,:!'"],[9,";"],[10,"il-`°"],[11,"j\\"],[12,"I5\"()"],[13,"rstz13?[]*"],[14,"Jcf"],[15,"aegx2478~/$"],[16,"Sbkopy069#"],[17,"dhnquv_£"],[18,"BEFLP"],[19,"<>"],[20,"Z+="],[21,"CGKTXY"],[22,"DRm€"],[23,"HOUw%"],[24,"N&@"],[25,"AQV"],[29,"MW"]]
    

    Lumicreative.com I DM'd you the working C3 runtime project.

  • Lumicreative.com - is this with the sample dialogue system project or is it with your own project? If Magistross agrees, I could send you my version via DM in Discord.

  • Yes, it does sounds like a bug, unfortunately, I cannot recreate a simple test case that has the same problem. Those four variables are only set on initialization during the local var declaration, is that right? (I don't see them set anywhere else using the C3 search function.)

  • Lumicreative.com - This is what fixed my case, using the example utility project, I had to change the top four variables in the dialogue event sheet to static, constant, otherwise they were all 0 and that messed up the location of the SpriteFont object (amongst many other things.)

    Thinking about it - it looks like local variable behavior under groups has changed between C3 runtime and C2 runtime. The new C3 runtime behavior may only init once and then if not static it returns to 0?

  • MGGD I don't think I mentioned cors in my post, are you looking at one of the links?

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Other C2/C3 port authors, please post other tips or help me correct the below. , Eren macube, skymen

    C2C3 Addon Conversion

    Convert from C2 files to get C3 templates and file structure

    • Use the C2C3 converter to get aces.json, etc. lang files c3 runtime stubs (c2c3converter.exe -c3stubs ./In ./Out) For exact usage and details see: c2c3converter

    Convert ACE functions

    • Individually cut ACE functions from c2 runtime.js paste them to the stubs in the actions.js, conditions.js, expressions.js functions.
    • For expressions change the return values through the normal JS return function for C3 rather than ret object passed in c2 as a parameter to the expression function.
    • Change any c2 SDK functions used in the ACE functions to their C3 SDK counterparts, or change functionality to adapt to differences in the SDKs.
    • Look at the 'addon specific' code in the C2 runtime.js that is not in the ACE functions, including addon specific addon variables (made be defined at this.<addonvarable> 'scope',
    • Copy the addon specific code to the c3runtime/instance.js into the proper scope for the functions or variables.
    • I have put some functions into the instances constructor, but it depends on what functions call this code and the scope needed. I have had to change it around in the past (put some internal, some external, some with this.<blah> depending on the scope and what functions are calling what.)

    Testing and debugging

    • Use a local server (I used nodemon) and C3 developer mode to load addons and debug
    • In developer mode you do not have to pkg files up each time you change
    • Edit the files to fix bugs and reload the local server to refresh the addon, reload the C3 editor and project. for each addon change.

    Read and understand: C3 SDK Manual

  • The art one was fun, the shaking pictures threw me off a little, which was good too, the randomization of order and location made it good for a few replays too.

  • You do not have permission to view this post

  • You do not have permission to view this post

  • Looks like a nice plugin/tool, very handy.

    Here's a big spreadsheet of some translations to use with it also (or at least for reference.):

    construct.net/en/forum/game-development/tools-and-resources-27/huge-spreadsheet-of-localized-102167

    One 'typo', FYI for some reason I'm listed as an author in the plugin.js in the c3addon (probably just left over from a template or something.)

  • OcularCash

    My other hack to get at another texture for an effect was to make the sprite 2x wide, put the second texture into the right half of the sprite and then have the effect combine the textures as needed in the left half and render the right half as transparent, regardless of its content. I _think_ this has similar performance as rendering one sprite, then overlaying with another and rendering again as Ashley suggests (which we do for the normal map effects now.) I know there's also the possibility of discarding the fragment for the right half, but I have seen mixed comments on how performant that is. It also is less dynamic, in terms of your need to pre-bake the other texture in and you would need to do that for each frame of animation.

    The other hack I used, was putting a second texture depth data into the alpha channel, but that only works if the actual sprite does not need alpha, and also I have a sneaking suspicion it has some other side effects, even if the shader zeros out the alpha on the output color. It's also a pain to get a 'clean' insertion of data only into the alpha channel with Gimp, Photoshop, etc. without affecting the RGB components.

    I've also made the request to add more texture sources for effects/sprites, but so far no response.

    This is the effect that used the 2x sprite hack:

    construct.net/en/forum/construct-3/plugin-sdk-10/parallax-map-released-effect-141155

  • I'll add on here for another request for an official Mac version.

    Main reasons for me:

    - Version control with project folders

    - External sprite editor (ASESprite)

    Ashley - if the nw.js plugin works during preview on desktop, could we get other plugins like Greenworks which also requires nodnw.js to also work on desktop preview? Right now it does not seem to work, because the require('/greenworks') points to the cwd of the construct3.exe. Is there another path that would work, or another way that Greenworks could work during preview on desktop Construct?

  • Update release 0.0.2.4:

    No change to ACEs. In plugin JS code, add additional path for greenworks libraries, so remote preview is possible with Mac build using https://electronforconstruct.armaldio.xyz/