VikasSanstha's Forum Posts

  • Just FYI, we run Construct-created content on six laptops at our school here in India (content that has been exported from C3 as HTML5 and posted online via FTP, we are interacting with it through Chrome).

    They all run fairly complex, demanding C3 HTML5 output pretty smoothly, with the one exception of typewriter text. Even simple typewriter text runs ok on an i3, but slows almost to a standstill on slower machines like Core2Duos. Like many people (and almost all schools) in India we have older, slower computers.

    Typewriter events that are set to execute over 2 seconds take about 10 seconds. It's the same on multiple separate laptops. These same machines smoothly run C3 HTML 5 output that has physics, animations, audio, TTS, etc. It's just the typewriter text.

    It's a bummer because it's a very engaging technique to grab and hold students' attention for reading exercises, and I've had to abandon using it.

  • Why are they all in the root? Please consider mapping ext. jpg,png,etc. to a subfolder in the C3 generated images folder, called something like files, and *.css into a folder called css. This is not best practices to have a huge mess of disparate files sitting in the root.

    Tagged:

  • Permutation is like shuffling a deck of cards. You need to do it once before you deal the cards, not while dealing each card.

    Looks like only one permutation table is supported at a time. So if you need two lists with non-repeating values, you would probably have to use an array. Create a permutation table for letters, copy them in random order into the array one by one in a loop. Then create/reshuffle the table for numbers, copy them into the same array.

    There may be an easier way to do this, if you could explain what you are trying to make.

    Thank you for the feedback. It's a bummer that only one table is supported at a time. More a bummer that there isn't built-in/default non-repeating behavior in the software. I can't imagine any users would want repeating behavior as opposed to non-repeating.

  • I second the notion to build in more fundamental functionality instead of 3d. Construct is such an amazing 2d tool, and the 3d tools on the market are so different from Construct and so much more capable, Construct can probably never be what they are. Of course that doesn't mean not to pursue new directions or that some 3d tools won't be useful to users, but I would rather see further improvements that make Construct's core capabilities even more efficient and useful take priority. I think this is the answer to the dilemma of "we got a lot of requests that are all over the board, and we can't do everything." I'm not familiar with the functionality that the OP is describing, but it seems to be an industry standard in engines where 2d is not even the focus, and it seems to be fundamental and important.

    From my perspective, I would love to see something as fundamental and important as simplified (default) non-repeating randomness. The advanced random is great, but it's not easy to implement, and it shouldn't even be necessary for a lot of basic tasks. Who wants randomness that repeats before all values have been presented - by default? I suspect nobody, and randomness is such a fundamental, omnipresent aspect of everything we make with Construct. But that's the only option, without a lot of extra work, and to circumvent it involves a huge amount of added complexity.

    I have projects with dozens of values and data sets being randomized. When I worked with making educational content in plain JS, my programmer made all randomness non-repeating by default, and provided simple switches in the declarations to make it repeating (before the set of values or data were all shown once) if that was really desired, which is basically never. Imagine if we had set text to> choose("cow","lion","frog", and 20 more entries), and it was non-repeating when cycled, without having to do anything, and it had a simple switch to go through it once or to loop x number of times or forever - or if you referenced a list, or 50 different lists or table arrays, and they could all be handled this way with no extra work. This would be so useful and save so much time and effort.

    Construct is a magic key that unlocks the creative potential of js and html5 for people like me who don't have the intellect to master them otherwise. Focus on making this as powerful and efficient as possible.

  • Event 4 is running on every tick, which is not great.

    Select event 3 and press X to add an "Else" condition - you should re-initialize permutation table there.

    Also, I made a mistake in my screenshot - "Add 1" action should go after the "Set text".

    I'm trying to understand how to have two lists feed into one text box - both triggered by the same action - and to repeat both forever even if they are of different lengths.

    So a three item list cycles twice during the same time as a six item list (but they wouldn't need to be multiples/factors of each other. Each list could be any number of items).

    Here's my perhaps closest attempt.

    dropbox.com/s/0fz1ywbzyjkbqca/Permutation%20two%20lists.c3p

    So in this example project file above (with two lists: [a,b,c] and [1,2,3,4,5,6]), six button clicks would return something like:

    a 3

    c 4

    b 1

    c 6

    a 5

    b 2

    ... and the next six different, forever.

    I've spent about six hours so far and I haven't gotten it so I'm going to reach out. Many thanks for any assistance! I really appreciate it.

  • This is how I'm making it "loop" per se. Do you think this is the best method? It seems to work well.

  • Here is how you use it with a list of words

    Thanks very much! I can see what I was doing wrong now. This is very helpful.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • 1. You need Permutation Table feature of the AdvancedRandom plugin. See this demo:

    https://howtoconstructdemos.com/display-random-images-without-repetition/

    Instead of the sprite frame you can pick an entry in an array, or a token in a string.

    Thanks, I have now gotten it to work with text in a small sample project but it's proving too difficult for me to integrate it into existing projects that are complex. I will keep trying.

  • I know there are many asked/answered posts on non-repeating randomness, but they all seem to involve arrays. Is it possible with simple choose statements?

    choose ("red","yellow","blue"), etc.

    e.g. serve all items randomly, without repeat, once all have been served, do it again, forever)? I'm using choose a lot. Am I just out luck because choose is too simple a framework in which to have non-repeating behavior?

    Many thanks for any assistance.

    Tagged:

  • Construct's About dialog says I've got a total of 3 days 8 hours continuous usage of the editor since I last cleared browser storage.

    And when you cleared the storage last did you lose all your plugins and C3 settings? Because I do. One time of that happening is too many, it doesn't have to be frequent.

    You keep referring to "browser storage" but here is no setting in Chrome called browser storage. There are four separate categories that can be selectively cleared. Can you please clarify which of these four affects the settings and which affects the plugins? Thank you

  • To say people shouldn't clear their browser (which is common, for privacy, etc) to be able to use a piece of software properly is just not logical, and Construct already has frequent consent prompts in Chrome anyway, to be able to edit and save project files. I get them all the time, even during long stretches when I never clear the browser. I don't mind, consent prompts are normal. A consent requirement to store plugins and settings locally would be trivial.

    Nothing personal, I absolutely love Construct, and you Ashley are a hero to all of us creative types for making it. Seriously. I'm not much of a programmer, but I have 20 years of consulting on UI/UX, and this just is not a good design.

    If you could offer insight into where the plugins and settings are stored (which of the four areas shown in the above screegrab from Chrome's settings), I might be able to address my issue. Thanks

  • > I can now see that using the "wait until the correct character is typed before moving on" model would probably be dramatically simpler. I think that's also a fine way to go.

    Yeah, it's the easiest way. I made a demo:

    https://www.dropbox.com/s/6y883of0em28v87/TypingGame.c3p?dl=0

    I have to say, in addition of course to thank you - that it is sobering when I see the level of expertise that someone like you has, and how far I have to go, but it's also inspiring and motivating. I learn something every time, and having someone who is so skilled and generous with their time helping with these very specific case studies that are so directly relevant to what I'm trying to accomplish with this toolset, I'm just very fortunate, so thanks again.

  • I can now see that using the "wait until the correct character is typed before moving on" model would probably be dramatically simpler. I think that's also a fine way to go. So if a wrong character is entered, it does appear - but it's red - then a buzzer sounds, and the character flashes and goes away, leaving the user at the previous state, with the insertion point ready.

    I think this must certainly be a far easier approach. It seems like it would also be less confusing to the user. Downside is it will not provide as much learning opportunity to troubleshoot and fix text, via the arrow keys, backspace, etc.

    I think this route is the more sensible choice.

  • Hello friends,

    I'm trying to make a typing practice interface for my students. The user is presented with a word, they type it, and, if correct, a new word is served. If incorrect, the wrong characters are highlighted. I know how to do everything except for the highlighting of the wrong characters.

    Here's a barebones project file.

    dropbox.com/s/r3mllpw3g0ji9q8/matchCharacters.c3p

    It doesn't include the highlighting mechanic because my attempts were so totally fruitless that there's nothing worth sharing in that regard. I suspect that I am supposed to use len to compare at every tick and get the wrong characters, but I couldn't get it working despite prolonged attempts.

    Any help is greatly appreciated. Thanks!

  • I don't see anything in Chrome called "Browser Storage" exactly. Which one of these are you referring to? Where are the plugins kept and where are the settings kept, in terms of the locations shown here? Thanks