R0J0hound's Recent Forum Activity

  • For making the ai avoid explosions you could use

    https://en.wikipedia.org/wiki/Breadth-first_search or

    https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm

    It's kind of along the lines of what mOOnpunk said, but instead of a weight, we just search from the player to the closest non blast radius area. That brings me to another idea, you can use an array as a grid of the level and loop over the bombs and set all the locations that will have explosions. That gives a simple lookup with events.

    https://www.dropbox.com/s/ks3feo35bgyo1 ... .capx?dl=1

    Basically that's the first half of an ai. The blue guy will move out of the blast radius of placed bombs if it can without stepping into fire. It doesn't consider the time left before a bomb goes off which is something most players don't bother with. they just stay out of range of bombs.

    The second half would probably be moving and placing bombs. Finding where to bomb could be done with a similar breadth first search and then evaluating what a bomb would destroy (enemy or block) for each grid location considered.

    The logic would be:

    if the ai is in a blast radius

    move to same place

    else

    find a good place to bomb, move there and place bomb

    To keep the ai from bombing itself you can also check for if there's a place to escape to before placing the bomb.

    Anyways maybe some of those ideas are helpful. More advanced stuff can probably be considered later, but the basics are always good first. Also in the example everything is grid based but the motion doesn't have to be. The units need not even stop of grid centers, but that's something to figure out for another day.

  • ultrafop

    updated link in my post.

  • Pandy

    link fixed

  • oOScuByOo

    Sure, you could just keep it recording everything like normal, but when the length of the array gets too long you could start removing stuff from the front of the array. At 60fps 3/4 of a second would be an array of width 60*0.75 or 45.

  • Reinarte

    There probably are updates to the api that could be useful, but i'm not updating this anymore. It can probably be made to work with the minifier, but same deal, i'm not diving into the source to find out why.

    gamegennick

    No, what the plugin does is probably all it will ever do.

  • atmas

    In the capx it just creates the roads. at the start of the layout. You could just do what you said and only pick the roads off screen and within a certain distance of the player to create cars on.

    Pedestrians could probably be done in the same way, although you probably could ignore the collision detection. Here's another idea along those lines:

  • You could use the paster object to draw the objects to, and then you could in turn give the paster objects blend modes to combine them.

  • If they are always flipped you could flip the paster object first before pasting the text. Just center the flip on the center of the text object. Or to make the math simpler use a second paster object with the hotspot centered. The just place it over the text, flip it, paste text, flip it back, and move it to where you want to paste on the other paster.

    If it's flipped on only some machines then we need to detect if the textures are flipped. You can't do this with events but I think you can with JavaScript and webgl. The grab canvas action (I may have forgot it's name, but it's the one that tries to copy the game canvas to a paster object) has some code that finds this out first time it's run. It works by running a minimal webgl renderer to draw onto a 1x2 image. It then reads one of the pixels and thereby knows if it's flipped or not.

    Anyways to fix it in the plugin itself probably entails making the plugin check if textures are stored flipped when the plugin first loads, and the add a check to the paste action if it's a text object being pasted and flip it if need be.

    Or maybe look at the text object's source and see what it does. C2 doesn't have an issue with text flipping normally, so maybe by looking at the text object and C2's renderer you can see where the difference is.

    That's as narrowed down a place to start as I can think of.

    Hopefully some of that helps. I'm happy to answer questions from what I can recall but it's probably safe to say I'm not going to touch the plugin's source again.

  • It looks like it can't find some files. Can't say I know how to fix it as I always found compiling c/c++ stuff a pain.

    The old wiki here has an old tutorial that maybe helps? If not try reading older topics about building plugin's. You'll probably get better info there as opposed to now with no one familiar with it anymore.

    Edit:

    Actually the issue is where the sdk in relation to the sdk folders. It's looking for those files relative to the plugin's solution. In those file paths .. Means the parent folder if that makes sense.

    One way to handle it is to just download the entire construct source and see where the plugin source plugin's are and put the plugin templates there. This is off the top of my head, I know it to work but haven't messed with it for a few years.

  • There is the angleDiff(a,b) expression that will do that. It gives a value of 0 to 180.

    If you need a signed angle result of -180 to 180 you can do angle(0,0,cos(a-b),sin(a-b))

  • I can't be much help since i don't have Construct classic installed and would need to re-familiarize myself with it. Aka figure out how many parts of it works, identify crashing points, and working around it.

    There is this old discussion with some examples and such. I fixed my links, i'm not sure about the others.

    Also maybe look at Jayjay's example kit in his signature. It may have something useful.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • KeeghanM

    You can look at this old topic for some examples and some links to pages that are good references.

R0J0hound's avatar

R0J0hound

Member since 15 Jun, 2009

Twitter
R0J0hound has 157 followers

Connect with R0J0hound