skymen's Forum Posts

  • As I stated in the github report, I really think UIDs hold C3 back in many ways. I understand moving everything to UUIDs can be a big change, especially for backwards compatibility, but the alternative is trying to do a band aid fix that will not work.

    I full agree with Tokinsom here, UID shuffling makes C3 unusable with source control nowadays, which is a huge issue.

    For backwards compatibility, UIDs can stay, and UID shuffling can also be kept for a while, but instances should start getting referenced using UUIDs or SIDs (like object types and other editor elements), especially internally.

  • You do not have permission to view this post

  • That code uses undocumented internals of the runtime. Do not do that! It can and will break at any time and we will not provide any support either.

    Oh yeah for sure forgot to specify. I just assumed that was a given, forgot we were in a big thread with many people that check in while not necessarily being aware of that.

  • While I agree with the fact that it should probably be added as an action, if you need this for any reason, know that it's fairly easy to do in JS.

    let templatePerObjectClassMap = c3_runtimeInterface._localRuntime._templateManager._templateDataMap;
    for (let templatePerObjectClass of templatePerObjectClassMap.entries()) {
     let typeIndex = templatePerObjectClass[0];
     let objectClass = c3_runtimeInterface._localRuntime._allObjectClasses[typeIndex];
     let templateMap = templatePerObjectClass[1];
     for (let template of templateMap.entries()) {
     let name = template[0];
     let data = template[1];
     }
    }
    

    if you know the object you wanna check (which you most likely do) you can get its object class using

    	let myObjectClass = c3_runtimeInterface._localRuntime.GetInstanceByUID(uid)._objectType
    

    you can now check if the template name exists by doing something like

    function templateNameExists (objectClass, name) {
     let templatePerObjectClassMap = c3_runtimeInterface._localRuntime._templateManager._templateDataMap;
     return templatePerObjectClassMap.has(objectClass.GetIndex()) && templatePerObjectClassMap.get(objectClass.GetIndex()).has(name)
    }
    
  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • You could use both effects. The first one to force the render to be limited to a specific amount of colors and the second one to replace said colors with whatever you want.

  • Yes, as I thought, the plugins have not been ported in a while. You can try contacting the author.

    One thing you can do in the meantime is disable worker mode in the project settings. These plugins should work fine if the game doesn't run inside a worker.

  • Hi, can you show the error?

    If the screen goes black, it might be because the addon was not updated to support modules, or to support worker mode.

    For Firebase plugins, there are new ones that were made and are still actively maintained by other members of the community, so I recommend you check them out

  • Reuploaded chrisbrob's effect for C2

    mega.nz/folder/E1910ACD

  • There's an ancient example in the tuts section, and I believe skymen was working on something using mesh which would be fun to try.

    If you mean to talk about the thing I shared on discord, it's basically a system that I ripped off Salman's Top down template: github.com/SalmanShhh/Public-Construct-PatreonRewards/releases/tag/2

    And then I slapped meshes in there cause the one thing I didn't like about his camera system was that every zone was a square

  • I'm having the same exact issue

  • Initially made for a single effect (see this forum thread: https://www.construct.net/en/forum/construct-3/general-discussion-7/color-replace-effect-generator-158822), I ended up adding a second addon on my website:

    https://construct-addon-generator.surge.sh

  • Great!

    + having multiple color replace effects stacked would also create unwanted results because it was not done all at once.

    If you're using C3, I'm gonna update it soon to make it use color variables instead of separate R, G and B values.

    EDIT: Now the website will generate a C3 addon using color vars and it will now be compatible with the C2 generated addons.

    • Post link icon

    By the way, it seems bundles are broken

    If I put two items in a bundle, one woth 15$ and one 30$ and set the discount for both at 10% it says that the initial worth of the bundle is 10$ and that the final price is 9$

    If I then remove the 30$ item from the bundle, I'm left with a bundle containing only one item and priced 0$.

    The 30$ item has a one time license fee of 10$ so I'm guessing some numbers have been shuffled around somewhere.

  • I made a quick website that generates C2 and C3 addons for a color replace effect where you can chose how many colors the effect can replace in a single pass.

    It's useful when you have a limited palette in your game and want to be able to make a full palette swap in a single pass (instead of chaining 300 effects, effectively tanking performance)

    construct-color-replace-effect-generator.surge.sh

    It's very simple to use