R0J0hound's Recent Forum Activity

  • dop2000

    I wanted to experiment with modifying zip files, and the idea of cropping rle data sounded interesting so here's something similar to your script that runs on c3p files directly using a js zip library.

    To use you select a c3p file, it crops all the tilemaps, and finally downloads a modified copy. yourGame.c3p -> yourGame_tilemaps_cropped.c3p

    https://www.dropbox.com/scl/fi/bq5x4pphbsdil2p16ox6t/c3p_tilemap_cropper.c3p?rlkey=jsag5662smgxbpl2leos633hy&st=9je4x6p0

    Edit:

    Pulling for now since there are issues beyond my testing.

  • What’s amiss with the image? I’m not able to follow what you see as an issue.

    Should both gears have their own outline instead being outlined as if they were merged first? That would mainly be a matter of adding the effect to the objects individually instead of the layer.

    Otherwise I’m not sure what you’re describing.

  • It should be automatic to just crop when resizing. If they want to preserve the outside tiles in case of accidental resizes it should be part of the undo stack or strictly temporary instead of never cropping smaller ever.

  • I don’t think that it’s something that can be debugged from videos or even screenshots of events. Generally, more events means it takes more effort to get familiar with what you’re doing before even being able to debug it.

    Since it sounds like it’s become complex and is hard to debug you could rewrite it from scratch after working out on paper exactly what you want it to do. Then just do a bunch of tests to verify it’s working as expected as you actually add the events. That’s my usual strategy when making stuff.

    Or you could outline how you want it to work and I’m sure there are lots of users that would give suggestions or examples how they would do it.

    Personally I’d make such an inventory with sprites instead of arrays. I’d make two sprites: slot and item. Then I’d place instances of the slot sprite all over and place items on top of them. You could indicate if slots are occupied or not and the number of items with some instance variables.

    Then with minimal events you could place items into slots, or swap out the item you’re holding with the one in the slot. But ultimately it’s up to you how you want to go about it.

  • Kudos for finding the cause of your projects running out of memory.

    Can’t it just be reported as a bug so it gets fixed? Seems like an oversight that space gets reserved for the biggest we’ve resized a tilemap instead of only storing the visible ones used.

  • I haven’t had this issue but hopefully it’s investigated to some degree. If it works most of the time then the glitch could be something we are never able to find repeatable steps for.

    Maybe it’s too much to expect, but I’d hope that sometimes the codebase is combed over to find issues instead of only addressing repeatable issues as they come up from users.

    I’m probably a bit salty about bugs because of some unleaded software that I’m forced to use that seems to deteriorate more with every update.

  • I thought the construct website was easy to navigate. Anyways, there is no download, construct 3 is web based and you can find a link to it on this website.

    To buy (or rather pay for a subscription) you go to this link, which should be simple to find anyways. Any limits the free version has is listed toward the bottom of the page.

    construct.net/en/make-games/buy-construct

  • Generally you’d upload the file somewhere and share a link, or share screenshots of events.

    Ideally that would allow you to get help from other users too since I’m not here too often.

    Depending on your level it might be easier for you to make a 2d version of what you had in mind first.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Right now it’s more seeing how workable it is to use quaternions for all orientation instead of Euler angles, angle-axis, or 3x3 matrices. Although the rotate function uses angle-axis which could be used to implement Euler angles. Math wise I’m trying to make it reusable. Instead of one function to set the orientation I’ve found in 3d it’s useful to be able to modify the orientation with arbitrary math.

    Anyways, I’m implementing this with the free version with a 25 event limit. So I’m only adding stuff that’s needed.

    The square texture per face of the cube is more of a simplification. My goal there was finding a way to make a cube mesh from one mesh distorted sprite. The logic of that portion of the events makes more sense with some diagrams I doodled. Arbitrary meshes or differing textures per face would just require making the object out of multiple distorted sprites instead of just one.

    Actually my short goal with all this is to work out how to make a minimal 3d editor for cubes. First update lets me position/scale/rotate a cube arbitrarily. With minimal changes it can have multiple. Next stuff I want to implement is:

    * camera orientation from quaternion.

    * mouse selection of cubes from view

    * 3d widgets to manipulate the position/rotation/scale

    * maybe some kind of multi select and/or transformation around a pivot point.

    * simple save/load

    * etc…

    However, I suspect I’ll run out of events and have to cut some features. But my main goal here is to find ways to do all that for future reference.

  • Inspired by mOOnpunk's ui devlog I decided to have a go at making one. Although my goal isn't a plugin or any product per say, rather just to explore some ideas for my later use.

    #1 First entry

    This implements some math to handle 3d rotation with quaternions. Mainly accumulated rotations around arbitrary axis' and transforming points with the rotation.

    The rotated cube is implemented with a single sprite with a mesh distort. Previously i did something similar by making a cube from a 4x5 mesh, but that had 4 unused quads which wasted texture space. This one is done with a 9x2 distort mesh with only two unused quads which is a bit better. There are 18 distort mesh points and only 8 vertices on a cube, so points are being transformed two or three times, but ideally it would be once per vertex.

    Something I want to explore next is applying a quaternion to the camera without converting it to a matrix first.

    dropbox.com/scl/fi/fvdee7aswxsxn5ok1ob9m/3d_cube_quat_rotation.c3p

  • Yeah, any kind of variable should work. Global or instance for example.

  • If you’re moving manually I suppose that means you aren’t using a behavior and can’t use their angle of motion expression.

    If you manually move an object by changing its velocity you could calculate the angle of motion with:

    angle(0,0,velocityX,velocityY)

    If instead you move an object by changing an object’s position you can calculate it by saving the position to some variables, manually moving the sprite, then calculating the angle.

    1. Set oldx to sprite.x, set oldy to sprite.y

    2. Manually move sprite

    3. Set angle to angle(oldx,oldy,sprite.x,sprite.y)

    That’s useful for calculating an angle of motion no matter what you use.

    You could calculate a 3d orientation instead but I say it’s simpler to just fake it with 2d angles till you can’t.