Toby R's Recent Forum Activity

  • Recently I made a Level and a Weapon System addons for C2 and C3, and to complete the RPG pack I'm working now on the Inventory plugin.

    Months ago I made an Inventory module (on request) which will be the base for the plugin.

    Attaching a video (click the image below) of how it works.

    I presume it will be one of the biggest plugins I made so far, should be one of the best as well

    Will post updates here, yet if you'd also like to follow the progress outside the forum and check other plugins I made, here are some places:

    FB: C2 & C3 Plugins

    Discord: Toby R's Plugins

  • == WANTED

    Youtuber

    == DESCRIPTION

    Looking for someone to make a series of tutorial/review videos of my plugins. Would be awesome if you have a channel with C2/C3 tutorials, yet not mandatory.

    == REQUIREMENTS

    • video must be edited in at least decent way
    • proficient in spoken and written English
    • narrated video + text
    • portfolio (I'd like to see some videos made by you)

    == PAYMENT

    • you will receive all of my C2 & C3 plugins lifetime license (worth $100+)
    • in addition you will be paid per video

    == CONTACT

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Animated counter — Now for sale in the Scirra Store!

    https://www.scirra.com/store/construct2-behaviours/animated-counter-3832

    <h3>What you buy here?</h3><div class="deshr"></div>

    • Animated Counter behavior for C2/C3.
    • Two example capxes

    <h3>What is Animated Counter behavior?</h3><div class="deshr"></div><p>It's a behavior for text-typed objects like Text or SpriteFont. Probably the most popular use case is for HUD score or kill counters. Just set the counter to specified numeric value and it will animate (increment or decrement) to this value.</p><h3>Features</h3><div class="deshr"></div>

    • Very easy to use (one action is enough to start animating),
    • Set, Add, Subtract actions to control the counter,
    • On animation started/finished conditions
    • Stop, Force finish actions
    • Compatible with all text-based objects (also SpriteFont+ and other variations)

    <h3>Warranty</h3><div class="deshr"></div><p>This plugin does not rely on any third party libraries so it will never get outdated or broken. </p><p>Note that all of my plugins work with all platforms (including Cocoon Canvas+) unless described otherwise in the description.</p><p>I'm a full time programmer, in case of encountering any issues, please send me an email, I'll fix it ASAP!</p><h3>Want to be notified about updates?</h3><div class="deshr"></div><p>Join my Discord server: discord.gg/cjEg45m%3C/p%3E

    Use this topic to leave comments, ask questions and talk about Animated counter

  • You have to set it in PHP file. The other way is to make a .htaccess file with the following content:

    <IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
    </IfModule> [/code:2f9hydtn]
    
    Place this file on the server next to the file you are trying to access with AJAX.
  • Have you ever purchased, can you have a video tutorial?

    Hi spencer04 I do plan to make video tutorials for my plugins. Until then please let me know what exactly you have problems with and I'll help.

  • Thanks for replying, everything is much clearer now!

    My next game will sure be thinked differently, but for Healer's Quest it's not possible to have all the object at start of layout. I have only one "game" layout and all backgrounds and enemies in the game are created on it. I'll see if it's still possible to do otherwise but it seems like a lot of work considering the "lag" time for what needs to be created is less than one second.

    I just have a last point on which I'd like to have more detailed explanations: what do you mean by "Otherwise you will probably have to preload both before and after the layout starts."?

    It's possible to preload something before the start of the layout? On the previous layout actually? I thought from your post that this was useless because it would get erased from memory, so I'm probably missing something here.

    Thanks for your help !

    What I meant is that you can combine a Layout transition and layout initialization preloaders.

    So it works as folows:

    1. On the previous layout you start a Layout transition preloader (this willl load anything that is on the target layout at start).

    2. Once it completes, then you move to the target layout.

    3. On this layout you start the layout initialization preloader immediately (the preloader layer is visible by default). This one preloads elements that you want to spawn at the beginning.

    So one preloader starts at the end of previous layout and second on the start of current. From user perspective it looks like one preloader and it covers preloading of both initial layout objects and objects that you plan to spawn at start.

    And just to make the % of loading smooth and combined, the first preloading you display as 0-50% and second as 50-100%.

    Just in case if it is still confusing I made a simple capx to show how to use combined preloading (this is the solution that will work for you): MM_Preloader example (layout transition + init layout preloading)

    Hope that helps! Again if you have further question, do not hesitate to ask

  • - Preload in layout 1? (then maybe BG1 is unloaded when going to layout 2 as it’s not present on that layout)

    Yes it will be unloaded by C2 engine transition system, so this approach will not work as you suspected.

    - Preload at the start of layout 2? In this case does the plugin make a difference from simply creating the object on start of layout?

    One of solutions would be to make not a layout transition preloader but layout initialization preloader. Technically it's the same, the difference is when and how you trigger it.

    Layout transition preloader you start at the end of previous layout and then you jump to the next layout having everything preloaded.

    Layout initialization preloader you start at the beginning of the layout and you preload/initialize anything that does not exist on the layout yet but will be spawned during runtime. In this case you most likely want to enable the Stabilizer to ensure that everything is smooth when you hide the preloading layer.

    The difference from just spawning the objects as you do right now is that by just spawning them, you will notice the lag, while with preloader you can show the progress of loading and you can preload elements further used in this layout (like bullets, etc.).

    You can also combine a Layout transition and layout initialization preloaders.

    BUT

    Spawning the element at "On start of layout" instead of having them on the layout sounds like a not the best solution. I suggest to just put the item on the layout and use regular Layout transition preloader. Otherwise you will probably have to preload both before and after the layout starts.

    Hope that helps, if you have any further questions just let me know

  • interesting, but once a thing is unloaded, what's the best way to load it again?

    The best way depends on your project actually. You can just create it as in the video example or use MM_Preloader if you need some more loading features.

    Are you still restricted to layout change to load a sprite?

    That was never a case. You can and always could load a sprite in any moment.

    C3 can have a mixmatch of several sprites in a sprite sheet, if one sprite is unloaded, does it recreate new spritesheets on the fly? How does this work in C3?

    https://www.scirra.com/blog/198/constru ... chitecture

    I'm referring to this blog post....

    tunepunk I think you missunderstood the blog post. The difference between C2 and C3 is that C3 creates spritesheets also in the editor, while C2 only after export. Still one spritesheet holds images/frames of one sprite only.

    Let me know if you have any further questions.

  • Requested, created, submitted, approved, released <img src="{SMILIES_PATH}/icon_e_ugeek.gif" alt=":ugeek:" title="Uber Geek"> .

    MM_Unloader plugin is now available https://www.scirra.com/store/construct2 ... emory-3812

    • Clean up - unload all unused textures of all objects
    • Unload object - unload texture of specified object
    • Hard destroy - destroy all instances and unload texture of specified object

    Have a good unloading! <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile">

  • MM_Unloader (unload from memory) — Now for sale in the Scirra Store!

    https://www.scirra.com/store/construct2-plugins/mmunloader-unload-from-memory-3812

    <h3>What you buy here?</h3><div class="deshr"></div>

    • MM_Unloader plugin for C2 (c2addon)
    • MM_Unloader plugin for C3 (c3addon)
    • Example capx download:

      goo.gl/f9r6rQ[/li][/ul]%3Ch3%3EWhat is MM_Unloader?</h3><div class="deshr"></div><p>With MM_Unloader you can release unused textures from memory at any time during gameplay.</p><h3>Why do I need it?</h3><div class="deshr"></div><p>Construct keeps textures of Sprites/SpriteFonts/etc. in memory even after all the instances got destroyed. This is in case you would want to create this object again. </p><p>So even if the object will not be created any more on this layout, it resides in memory. This is ok for most of projects, however there are certain projects/cases where you would like to clean up the RAM before the layout transition like open world games, single layout games, multi-sprite-background setup optimized with Paster plugin, etc. You can also just want to release the memory for other apps on the device in case of low RAM availability (on mobile for instance). There are probably hundreds of other reasons you would want to do it that I can't currently think of. After all - now it's possible with MM_Unloader.</p><h3>Features</h3><div class="deshr"></div>

      Unload textures at any time you want,Clean up action - release all unused textures of all objects,Unload object - release texture of particular object,Hard destroy - destroy all instances and unload texture of specified object,<h3>Warranty</h3><div class="deshr"></div><p>This plugin is NOT a dangerous or unstable hack. It's fully compatible with C2/3 engine runtime and uses exactly the same techniques as native clean-up during layout transition. It's absolutely safe to use.</p><h3>Want to be notified about updated?</h3><div class="deshr"></div><p>Join my Discord server: discord.gg/cjEg45m%3C/p%3E

      Use this topic to leave comments, ask questions and talk about MM_Unloader (unload from memory)

    • You should take a few minutes to read the Array and LocalStorage manual and you will know the answer. Basically you do exactly the opposite, which is loading an array from JSON.

    • Unloader is almost ready. I move with further discussion to the proper thread

    Toby R's avatar

    Toby R

    Member since 23 Mar, 2015

    Twitter
    Toby R has 18 followers

    Connect with Toby R

    Trophy Case

    • 9-Year Club
    • Forum Contributor Made 100 posts in the forums
    • Forum Patron Made 500 posts in the forums
    • Forum Hero Made 1,000 posts in the forums
    • Popular Game One of your games has over 1,000 players
    • x6
      Coach One of your tutorials has over 1,000 readers
    • Email Verified

    Progress

    15/44
    How to earn trophies