EberKain's Recent Forum Activity

  • Thank you!

    I saw the load from json action, but couldn't figure out how to get the data to send to that.

  • I have an object outside of the layout which is a master object that is setup to behave a specific way based on the value of all the instance variables. I want to spawn copies of this object at random locations in the layout. I do not see a method that clones a specific object instance. Do I need to write my own "SpawnCopy" function?

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Player clicks the load game button

    I place a loading splash on the screen that has an animated sprite

    I start a 0.1 sec timer to trigger the system load function

    The timer triggers

    The program appears to hang and the anim no longer plays

    3-5 seconds pass

    the on-load event triggers

    I hide the splash screen and game resumes

    I really want there to be some kind of feedback to the player during the save/load process. I doesn't have to be an actual progress bar, but something is needed so the player does not think the program has crashed.

  • Is there a bog standard plugin or method for doing this? The best suggestion I have had was to load a website contact form in an iframe and use that. I would like to have something a little more elegant, like a cloud based bug/ticket system where any user can submit reports from in-game without having to log-in or give personal info. I ran across Instabug and that sounds like what I am looking for, but I can't find anything about C3 support.

  • The artwork is really great.

  • Subscribe to Construct videos now

    New update video after much fighting with my audio interface.

    I made one more tweak to the optical reveal since my last post. The change from one opacity to the next in the tilemap is tracked with an instance variable timer. Instead of resetting the timer every time it elapsed to some new "time + 0.25" value, I just added a flat chunk of time like "self + 0.25", this keeps every triangle's opacity in sync even through the updates are distributed out and happening at different times.

  • Trying to address performance concerns I added a debug fader sprite that pops each time a new tile is revealed, the content of the tilemaps is calculated on the fly. This helped my find a fix a bug that was bogging down the game in some situations.

    GIF

    The way the world reveal works is I calculate the triangle area for what you can see and save it as a list of coordinates, and then just brute force the update. The update routine runs 10x per second and cycles through every coordinate in every active list every update. I sort them so I do the brightest colors last, so it overwrites the darker colors, but this is really inefficient when I get lots of overlapping areas that are all revealed and causes a big spike of CPU usage every time the update runs.

    I wanted to see if I could do more to make it run better. So I created a new list that holds a list of the coordinate lists and I change the update routine to run at 60fps, but only update 1 triangle on the list each time. So now I slowly cycle through the list and that smooths out the processor usage.

    GIF

    That caused other problems with overlapping triangles. I ended up using a dictionary to store keys for the X&"|"&Y coords of every tile when it gets updated, so I could see if that tile had already been set this cycle if it is in more than one coordinate list. Each cycle clears out the dictionary contents and I then sorted the list of lists to update the brightest ones first and it all works.

    GIF

  • Thanks for checking it out. There is a lot to unpack in what I've got setup so far. Going to take a couple more videos to explain everything.

  • I finally finished all the different science tools that I had planned at the start so I made a video going over it all. Turned out to be a lot harder to make a video than I thought. My respect level for youtubers that push out constant content has jumped way up.

    Subscribe to Construct videos now

    The world is done with several layers of tilemaps like this.

    The probe vehicle is done with a bunch of different sprites pinned together at 99% opacity and pixelate 3 effect.

  • Magistross Thank you for turning me onto the eval function. I did some looking and the CSV plugin by rex has an eval mode that uses that function. So, I think I can do a string replace as you suggest, assign the result to a cell in the CSV object and read it back out to get the evaluated version. I was planning on using the CSV plugin anyhow to manage an item database in game.

  • Yeah, that is likely where I'm going to have to go with this. Was hoping for an existing plugin or some way to do it in the editor.

  • Thinking down the road for what I want to do with my game, I will need to implement a way to take a string like this

    "(x+y)*0.3"

    and turn it into an actual expression that pulls data from local variables. In regular code I would create a custom list data structure that had an operator and two links. Turn the string into a linked list. Then use a recursive function that would traverse the list and if a node links were only numbers then process that node.

    Any suggestions on how to do something like this in C2? I don't even see a way to parse the string.

EberKain's avatar

EberKain

Member since 22 Aug, 2015

None one is following EberKain yet!

Trophy Case

  • 9-Year Club
  • Email Verified

Progress

10/44
How to earn trophies