C3 event search needs improvement

0 favourites
  • 12 posts
From the Asset Store
Very simple code without excess options (15 events for server and 11 events for client)
  • Have you found that finding events in C3 is inefficient?

    For example currently it's impossible to search for an exact event like this:

    "spriteA overlap spriteB"

  • Edit: I wrote a dedicated suggestion for it, vote here :

    C3 Events Search improvements construct3-21h2.ideas.aha.io/ideas/C321H2-I-425

    - the filter algorithm would allow us to type half words in any order and still find the matching events. (kinda like some Fuzzy Search algorithm)

    - the results autoupdates as soon as the string changes

    - both the Find field and the results pop-ups merge in a single window

    I think it would avoid me to waste at least 45 minutes per day of Construct use and probably around 2h per days if you include the side-effects of those permanent flow-breakers.

    +1 To be honest this must be the most annoying thing in my daily use of Construct for many years,

    Because of the current limitation (it looks for event matching the exact requested string in the right order), you can only write 1 word at a time to find the event you're looking for, otherwise most of the time you end up with 0 results.

    So if i need to find an event related to my Player's Angle, i either need to type "Player" (and i get hundreds of results as Player is used in a huge amount of actions and conditions) or "angle" (and i also get hundreds of results related to all kind of Object Types in my project) => Because of this, it returns thousands of results or irrelevant things each time

    The expected result would be that i find all events related to Player's angle (or even related to instance variables names of Player that includes "angle" in their name) if I type either "Player angle" or "angle player".

    Both should work and show me results such as :

    - "Player:Set Angle_Aim to 90".

    Right now if I type "Player Angle" it doesn't work

    This enhancement would also be useful for all the other "find" fields in construct as it's the expected behavior in all cases we need to find stuff.

    Also nowadays most software have even better find algorithm such as fuzzy search, so maybe an even better algorithm could be implemented.

    In fact among the whole list of QOL stuff I wish Construct Team would add to the engine, I think this is the top priority right now.

    Other possible enhancements :

    Also the results of the "Find Results" pop-up should autoupdate when the user change the field "Find" in the "Find" pop-up. Right now we need to press the Find Button each time

    Also, I wonder if it wouldn't be better if those "Find" and "Find Results" pop-ups would be merged into a single one.

  • Yeah I agree, this and the bookmarks bar needs some love and attention, especially for those with a big project with several thousands of events.

    A small tip that I discovered: If you use the find window as a popup window, then you can click into the address bar of the find window, press ctrl+f, then you can use the browsers find feature to search through your find results.

    E.G. Say you are trying to find an event related to visibility of an object. You could do "find all references" on an object, and you might get 300 results, but if you change the find results into a popup window, you can use the browsers find feature to search for "visible" to save time hunting through the 300 results you initially had.

  • Agree, the search function is horrendously useless sometimes.. I might have 1000 matches for "Player" in my events, and 1000 matches for "Set position". But it's not possible to find "Player Set position".

    A small tip that I discovered: If you use the find window as a popup window, then you can click into the address bar of the find window, press ctrl+f, then you can use the browsers find feature to search through your find results.

    Wow, thank you, it's a clever workaround! Maybe Scirra should add "search in search results" feature.

    I also want to be able to filter or sort the search results by type - condition or action.

  • No probs, glad it was useful! I use C3 with 2 monitors, so I always have "find" and "find all references" popup windows on a 2nd monitor.

    3 other small tips to help with big projects:

    I often want to find when an object was created. If you search "create object sprite" or even just "object sprite" or "ct sprite", you'll often get the correct result fast.

    You can leave comments with "tags" within. Say you have a complex HUD feature that links to many different events and event sheets, I'd write comments such as "TagForSearch: HUD System" near each event. You can then do a search for "tagforsearch: HUD system" to find all related events of a system you created. You can also do a search for "tagforsearch" to list all of your "tags", which can be useful. Bonus points if you use autohotkey to map a key to auto-type "tagforsearch" so it saves time typing this when doing a search.

    Finally, emojis! Sometimes you might be working with, say, 3 different arrays, or multiple families. You can't change the icon of these types of objects, but it is very useful to have a visual indicator to what object is what, rather than having to read their name each time. Simply rename the array or whatever object to have an emoji such as a 🔴 or 🔵 or something distinctive, and you'll always instantly know what array you are looking at. You will even see the emoji within expressions as you scroll through your event sheets. Don't put the emoji at the start of the object name, or else you cannot quickly type its name when adding events, actions, or expressions. To be honest, I use this tip less, but I once had to do a massive change in my huge project to replace a spritefont object with a sprite object - by using "find all references" and giving the old spritefont a red 🔴 in its name and the new sprite is given a 🟢 in its name, it reminds me that "red is bad, this needs to be updated", and "green is good, this is correct". Sure I could have just kept using find all references, but seeing the little red dot amongst expressions helped me quickly edit my events to get the job done faster. Also just in case you didn't know, you can quickly get an emoji window to appear in Windows 10 by pressing "WINKEY + ." (Windows key and the period key).

    EDIT: I made a suggestion a year ago, for enhancing the bookmark bar. Looking at this again, perhaps "colourful bookmarks" isn't user-friendly to those with colour-blindness, but perhaps bookmarks could have unique icons or tags against them instead. Either way, consider voting if you are a C3 user that has a huge project to navigate! construct3-21h2.ideas.aha.io/ideas/C321H2-I-4

  • The bar has way too much wasted space, and extraneous information as well. It could use some simplifications.

    Plus clicking on an item in the box, removes the selection from the box.

    construct3-21h2.ideas.aha.io/ideas/C321H2-I-23

  • Nice tricks, I already use some of them but it's not ideal for different reasons.

    I think an effective Event Search would lessen the need of better Bookmarks as it would allow us to jump from any part of our project to any other part of our project very quickly and easily, without any manual setup to do.

    I added a 3rd part to my suggestion on the platform to also solve all issues related to Project View Search on top of the issues related to Event Search.

    construct3-21h2.ideas.aha.io/ideas/C321H2-I-425

    It might look complicated at first because it describes both technical implementation and expected behavior explicitely, but in fact what i does is pretty simple and it's really user friendly :

    - it would allow us to unfold Folders and Families that we search thanks to the Project View Search Field (which doesn't work right now)

    - it would implement the same "Fuzzy Search-like" algorithm as I described above

    - it would allow us to use Default Folders ("Layouts"/"Event Sheets"/"Families" etc..) and Custom Folders as effective filters for Project View search

  • Yeah the tips I posted were things I've done to speed things up in the current state of C3, although it's not ideal and I'd definitely be interested in seeing updates to find/bookmark bar. I also wonder if it would ever be possible to change object icons, because often it gets confusing having many families, arrays, dictionaries, etc. with the same icon.

    I'll throw votes at this, but please consider the bookmark bar suggestion too - If this was enhanced, then once some bookmarks are placed onto events that you often jump between, you may not need to use "find" as often in this case (whereas right now, if you bookmarked common events, it might build a huge list of bookmarks and it's not clear what each bookmark is there for. Even just giving each bookmark a text label would be a major improvement and I wouldn't keep clearing my list of bookmarks!)

    Also I use C3 all the time and endlessly read the manual, but somehow I never knew there was a "project view search". Thanks for highlighting this!

  • Thanks for all the great ideas! It's great to see that others think that improving this would help improve their workflow too.

  • Absolutely! I wonder how many others are working on "big" projects and tend to get a bit lost when navigating around multiple event sheets with thousands of events.

    The project view search was such a huge revelation to me. I used to forget which folder an object was in, so I would go into a new event, search for the object and click it, go back, and then it'd tell me the folder it belongs in, which was a ridiculously long-winded way of finding an object! The search is a life-saver and I'm kicking myself for not realising it existed sooner, even though it was in plain sight all along.

  • By "project view search" do you mean how you can search your project here for objects?:

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Yep exactly that.

    I often organise my objects into folders, so I am looking around this area of C3 often.

    I am an idiot. But I'm a happy idiot now that I know this exists!

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)