jazzycreates's Forum Posts

  • 10 posts
  • Fantastic! Thank you so much for your help!

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Thank you so much for doing that Stan! This is exactly what I was describing!

    I really want to make sure I understand what is happening here and there is one bit in the first start of layout event I'm not sure I get. I'm surprised that in so few events this works.

    Start of layout. This is setting the size of the obstacle map display width and height? to 100x100? Where does 100x100 come from? This isn't just setting it though it's also drawing them right? So 100 tiles across and 100 tiles down. It's filling a 100x100 'grid' with tile '0' in this case.

    Then, the display width and height of 100x100 (or 0 to obstacle map width/height-1)is what the next event is looping from for x and y which is picking that position on the main tilemap using the same x and y positions from the loop. Overlapping is another way to say collision then? So anywhere there is an overlap we are not drawing the tile(erasing).

    I did test changing the collision polygons to see how it would effect the obstacle map erasing and it makes sense. So this works so well because the 64x64 tiles fit evenly and nicely within the 256x256 tiles? It would be a different story with art that was a bit more organic then.

    My last question about it is the x on the layout drawn with the obstacle tile. Is that just for illustrative purposes?

    Thanks again for creating and sharing that demo.

  • Yes collision polygons don't work for me here because in some tiles I would need more than one polygon.

    I've experimented with a second invisible tilemap and drawing it manually and it's not efficient. I currently have drawn out 5 quite large maps with the larger 256x256 tiles where drawing the smaller 64x64 tiles on top of is too time consuming because eventually I would love a larger variety and drawing them out by hand doesn't make sense. I haven't figured out random generation yet, which would help, but doesn't solve the collision problem.

    It looks like in the demo you shared the tilemap was drawn manually over a sprite. You mention I can 'fill it with an event'. What do you mean by that/how? If I created a 64x64px tilemap and marked tiles 0 through 3,4,7,8...etc as tiles that register collisions how could I then 'attach' them to the larger 256x256 tiles? That's not possible is it? Here's a picture:

    So in the 256x256 tilemap, tile 0 would coincide with tiles 0-15 on the smaller 64x64 tilemap and anywhere tile 0 is so are tiles 0-15?

    Maybe I just have to pick a completely different approach? It's not possible to split the art up in an efficient to draw way and register collisions properly. I have clear areas of transparency in my tilemap. Is it possible to say 'whatever is transparent you can't touch it?

    Maybe it's just best to fully redraw the assembled maps, have fewer of them, and layer sprites as navigable or collisions?

    I was hoping for some relatively detailed art which is why I went the tilemap route. Maybe they're not great for that?

    Thank you for your help!

  • Hello!

    Check this out:

    This tilemap has tiles that are 256x256. I want to be able to change the size of my selector to 64x64 (divide each tile evenly into 4x4) so that I can 'select' the 'empty' parts of the tile and add collisions to those parts only without changing the size of tiles that have already been placed.

    At 256x256 you can imagine my tilemap is pretty large (I'm using raster images not pixel art and want them to be of a certain quality. hence the size) and I would rather draw with 6 tiles at 256 than 96 tiles at 64.

    Ultimately, this is for a maze and I'm trying to make it so that the empty parts of each tile register the collision so that the player doesn't move outside the art.

    I've tried the 'layer another tilemap on top and make it invisible' and again, a 64x64 size tile on my giant map makes this a ridiculously tedious task. Also, I would eventually love to figure out how to generate the maze map randomly tile by tile instead of 'scene by scene' as I have currently done. A topic I'll create later if I need to, but for now it will help to figure this collision thing out.

    Thanks for your help

  • I just wanted to let you know...

    IT'S WORKING!!!

    I've been trying to figure this out for 4 months and it was only a month ago I was brave enough to come to the forums so I just want to thank you for your help getting me to this point!

    drive.google.com/file/d/1UDxkIsaj9hoirZMFdbXkWiCopMLbwZW7/view

  • Ohhhh! My bad! I foolishly thought since those were working they would be okay, but I suppose I've just learned exactly why you said not to do that haha! Okay thank you!

  • Hello!

    Okay, I'm stuck again.

    Using 'Every X seconds' to initiate Simon's initial sequence works and it records it to an array. I'm using global variables to turn things on and off. My event sheet now has comments in it to show my thought process/why something is there. For example, during the start of Simon's initial turn, I had to put a wait command in or else the last item Simon chose wouldn't be included in the array. This seems like a sticky solution especially since in the future I would be interested in changing the playback speed and having asynchronous audio files that play along with the choices.

    On top of this, (and without current regard to whose turn it is... that's my next thought process to tackle) I updated my test button to playback Simon's sequence on click and that's where I've been stuck for a few days now. I just wanted to test if I could get it to play back. I'm using the 'count' global variable as my indicator for where on the x axis of the array the sequence is being called.

    I've tried 'Every X seconds' - This will step through Simon's sequence on click (seemingly without regard to time), but I want it to happen automatically - Every X seconds. Also, count = Simon-1 doesn't change the 'SimonsTurn' variable to true which is why, I imagine, the extra pick at the end does not record to the SimonsChoice array.

    I've tried 'For Every X...' in the SimonsChoice array - this creates the problem I had before where all options were being chosen and played at the same time. It also immediately sets the 'count' variable to 4 instead of stepping through it (I included wait commands too).

    I've tried using the 'wait for previous actions to complete' condition with no noticeable successes.

    Even removing the comparison of the count and simonsays variables didn't change anything. It's like 'Every X seconds' is just being completely ignored.

    Where do I go from here?

    drive.google.com/file/d/12KKDjNMTP6wyyC_lJ98LEfFHSXEKta92/view

  • Wow these are super helpful thank you so much for making and sharing them here! I had actually watched your tilemap video the other day and learned that I could affect the behaviour of individual tiles within the map and that I could adjust their hitboxes. Super informative!!

  • Okay! I've made some good progress I think. Thank you so much for your help so far!

    Here is where I am at:

    drive.google.com/file/d/1X5FnjZW1TbFiqgQEmdjPo91eLVEtT8hL/view

    I've got arrays that im pushing values to and comparing between the user and simon successfully. I think I have to utilize your global variables suggestion to really get things moving, but first...

    I created my test button because I wanted to know how 'reading' from an array (later would be Simon's chosen sequence) would look and the problem that I am experiencing is that when I press the test button all of the colored buttons light at the same time. I've tried the 'wait' command with values ranging from 0.2 to 5, but it doesn't matter. I've tried putting the 'wait' command above the function call, but then nothing happens at all. What am I doing wrong? How do I say "for each x value in the array, call this function, wait a moment, call the next one"

    I saw someone with a similar problem once, but I couldn't find the forum post I do apologize.

  • Hello there!

    I'm working on a Simon Says activity and I've tried to adapt the concepts in this tutorial:

    construct.net/en/tutorials/simon-says-follow-me-108

    to what I have so far:

    drive.google.com/file/d/1AIIYi6nHiNvWRHE_scRQL-9gksLoc8Ag/view

    ---

    I've mapped the different colors to different sections in the array and I've created a function for what happens when you click a color. I've got Simon choosing a random color each time the program runs (yes!) and a text field (so I can see what's happening) that also lists the color picked. It was my thought process that through that text field/global string I could keep track of the colors and also compare them.

    I just don't understand how that comparison happens. I would like Simon to pick 4 colors before it is the users turn to pick a color, but how do I keep track of that sequence? my global variable 'user' keeps combining every color I've chosen!

    Can anyone offer a hint or let me know if I'm even going in the right direction? The tutorial I'm trying to follow doesn't offer the .capx anymore and I feel like I'm really close there is just something I'm not understanding.

    Thank you for your help!

  • 10 posts