Prominent's Forum Posts

  • R0J0hound , I'm trying to create an elevator. I'm trying to make the elevator not receive any forces from other objects when they touch, so that the force I apply on the elevator is the only force influencing the movement. Any ideas on how to accomplish this?

  • Problem Description

    tileAt returns incorrect value for a tile after loading json string.

    Attach a Capx

    http://1drv.ms/1GMrqN9

    Description of Capx

    A tilemap has tiles predrawn. At start of layout it loads a json string into the tilemap, which changes some of the tiles.

    Steps to Reproduce Bug

    • run project

    Observed Result

    The tiles that weren't changed now return -1 when using tileAt expression.

    Expected Result

    tileAt should return the correct value for all the tiles.

    Affected Browsers

    • Chrome: (YES)
    • FireFox: (YES)
    • Internet Explorer: (YES)

    Operating System and Service Pack

    win vista sp2

    Construct 2 Version ID

    212.2

  • Apparently any use of the Opacity expression in a Q3Dsprite causes an error, because the expression doesn't exist in the runtime. You need to copy over the expression from the Q3Dmodel runtime into the Q3Dsprite runtime for it to work.

    So if anyone runs into this problem, that's how you can fix it.

  • Waltuo , I would just use chipmunk to create the platform movement. It's not that difficult to setup if you understand how chipmunk works. If you can get it working with chipmunk, you'll be more knowledgeable on how to use it for other things, etc.

    here's a gif of something I'm working on that shows a basic platform movement using only chipmunk: http://i.imgur.com/vtWs7Ch.gif

    An important step is to disable friction on the player while moving it, and then reset the friction when move input is released (and also when player is on the ground; you need a way to check if it is or not).

  • Do you have any visual examples, such as a capx showing the problem? because I'm not sure I understand. I mean, I think I do, but I haven't noticed it before. An example would help get your point across.

    I'm also wondering if perhaps there might be camera movement influencing any pixel rounding?

  • It seems like it is designed for someone that doesn't know how to use a computer.

    Is that something that should be encouraged (being brainless)?

  • One good thing that is good about an event-based editor is that if you do a lot of programming, you can also use Construct2 at the same time without making yourself forget the other stuff you were programming. I find that if I'm programming more than one thing, it becomes difficult to remember one or the other because usually you can spend a lot of time in one figuring out how to make stuff work and then having to relearn how things work in the other. Also, it is easier to return to a Construct2 project after taking a break from it compared to returning to a project that requires relearning what all your code does.

    But regardless, it is good to try different things so you can get familiar with what is available and learn what is the right tool for you for the job/task in front of you. I've been using all sorts of game makers since klik n play, and also have been programming in various languages. All of them allow you to make great games- so you just have to choose to make them if you want to. Good luck to everyone, no matter what you choose to do.

  • Will this plugin allow creating geometries via defining vertices and creating faces, etc? And also being able to modify those geometries dynamically? Or will the plugin be designed more for premade assets?

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • yes, it can be frustrating to use for the points mentioned above.

    I had been trying to get some raytracing working, and it was very particular in the way it needed to be setup..

    I found out that you can only project a ray against a q3dModel. You can't project it against a q3dSprite. You also can't pick a basic geometry that is created with the q3dMaster.

    You have to set the Model Fit property to Unaltered (it auto sets itself to Fit).

    I also had to rotate the model 180 in the Y axis so that the mesh faces were facing the camera (the ray won't hit if the faces are facing away).

    You also must use a q3dViewport.

    You must have two events:

    q3dViewport-> Pick q3dModel by intersecting projected Ray. Here you can retrieve data from the intersection and put it into variables.

    q3dRaycast-> Raycast and loop over picked q3dModel intersected.

    Note that you must have that raycast event otherwise the first event won't have any data to retrieve.

    I had to figure all this out on my own since these things weren't explained anywhere.

  • Put the fish into a family, and compare a fish with the family.. This essentially compares a fish to a fish. You will have to put the instance variable into the family instead of the fish, for the variable to be accessible to both a fish instance and a family instance.

  • Ah cool, I never thought of doing something like that. Wasn't what I had in mind, but I'll have to try this method out sometime.

  • R0J0hound , thanks for the explanation. I was looking through your code trying to understand how things connect.

    Have you thought about making a tutorial on how to port an existing library to a construct2 plugin/behavior? I'd be really interested, even if it is something simple- just to show how to integrate someone else's code with construct's.

  • I've found that when I disconnect the debugger window from the game window, the CPU usage drops by a large percentage. Not sure why but it does!

    Doesn't work for me (still same percentage). :clicking on the watch or profile tab helps. Probably takes more processing to display all the info in the debug.

  • R0J0hound ,

    here is a capx showing the problem in a simple scenario.

    edit: here's a new capx: http://1drv.ms/1R5XwJ6

    edit: it seems to not work if it is inside a post-collide. It works outside of it though. I need a way to do it inside the post-collide- I'm assuming it is a bug?

    edit2: also, I just noticed in this case it adds the joint twice since the collision events run for both objects that collide.. If I try to add a condition to check if a joint was added(so that it won't add another), it won't find that joint so it will add the extra joint anyways. I think this is related to the joints being updated at the end of the event cycle. If there were a way to update the joint list sooner or something, it would make things easier to manage.

  • R0J0hound , Is there a way to pick a joint based on its index?

    For example, I want to loop from 0 to (Chipmunk.jointCount-1), and then pick an object by uid based on Chipmunk.jointOtherUID(loopindex). I tried this, and doesn't seem to work.

    I don't really want to have to store a list of joints an object has if I could just cycle through them based on their index.