Jump to content

Oliver Hope

Creator
  • Content Count

    374
  • Joined

  • Last visited

Posts posted by Oliver Hope


  1. you should use the 'set position object' tile. you can enter global co ordinates manually, or I recommend placing a reference game logic where you want to teleport too and then in your script use the get 'position game logic' tile and select the reference point. you can stick this tile in the position slot of the set position tile. you will also need to put the trigger entity tile into the object slot if you are using a lever.

    • Like 1

  2. Hi Hanna there isn't an explicit way to convert from numbers to strings as far as I can tell. Normally the game automatically converts it to a string, not sure why this isn't the case here (might be a bug). but you can easily fix it by adding no text to your number using the string bock shown below.

    image.thumb.png.b53ea363d24ac4006377d6c71cf424fc.png
    To add the rest of your sentence you can do the following.
    image.png.a6a73b2632e0d77bb6147b25f7023529.png

    Be aware that this wont work as expected in multiplayer as everyone will share the same death variable so it will display the total number of player deaths and not the individual player deaths.

    • Like 1

  3. Hi. when you click on the path in the properties window at the bottom there is a button to edit the path. Here you can add nodes move the tangent controllers, change the tangent type, close the path (make a loop) and reverse the direction. Definitely great for rollercoaster creation :)

    • Like 1

  4. On 1/16/2023 at 10:31 AM, jchob said:

    Mayve we could make use of the group game logic, somehow?

    Are you referring to the group template? that's more for spawning groups, maybe it could be possible though. It would be cool if we could have access to these logics though, like for spawning welds


  5. Im not 100% sure how creative maps work, but I'm assuming they work similarly to exported scenarios (if not then I don't think this is possible). You need to open up any scenario in the editor and then go file-open menu as you said, there are two categories there, scenarios and games, your maps should be under games. If they are not there then Im not sure I can help you

    • Like 1

  6. The custom tool properties window can get completely taken up by a description if you write a long description of how to use it, this hides the important variables that needed to be set to use the tool. I think if the text is passed a certain character limit it should have a show more button and a show less button. and/or the description could have a separate scroll bar that only scrolls the description

    • Upvote 1

  7. I think what caused this was mistakenly placing a show progress screen under the on update event. 

    image.png.e893696a6ba63d6dff48584797bea41a.png

    when I ran the script no progress screen was shown, all my previews were spawned but when I pressed escape they didn't get removed. I couldn't select them either. This was fixed by reloading the scenario. however when trying to get a progress screen to show in a test tool. With simple code:


    On tool start
    start tool mode
    show progress screen

    This wasn't working ( tool mode screen would show if I didn't try show progress screen however) then non of my tools would even start.

    output_log.txt

    output_log_clean.txt

    Tools 0.2.0.zip

     


  8. Broccoli Tree House Custom Tools

     

    This is the home page for all Broccoli Tree House Custom Tools, a collection of useful tools to help with building complex creations in the editor (which can be blueprinted into explore).
    This project started before Custom tools were added to ylands my plan is to recreate the old ones with the new system and then continue to make new tools. Each tool's description explains how to use it, if you need more help feel free to DM me here or on discord (O1iver#5816). 

    image.thumb.png.57c0d684dbe69e15a32be2d0771e0e3c.png
    An example of some boat hulls by YoHasLego that used the mirror tool to create the other half.

    Tools

    Mirror Tool

    This tool is used to mirror objects over a plane. See this post for why you might need to do this (This is the old version of the tool but the introducing the problem section is still relevant).
    It is limited to entities, game logics and groups that are symmetric about at least one plane. (It can still give satisfactory results without the last condition)
    Knows issues: Properties such as indestructible and pickable wont be transferred to the new entities. 

    Tutorial:

    Download:

    MIRROR TOOL [BTH] 0.3.1.zip

    Added:

    • the tool can now detect child groups
    • option to ignore child groups

    Fixed:

    • UI buttons disappearing if only 2 unique objects were selected
    • with mirror groups enabled:
      • preview group for selecting symmetry plane would spawn on confirm
      • Child groups would be spawned with incorrect position/rotation 

    MIRROR TOOL [BTH] 0.3.0.zip
     

     

     

     

    • Like 1

  9. 1 hour ago, Houp said:

    Hi,

    we plan to improve Custom tools in the next update. You have great suggestions! (not only this one but also the other ones) Thank you. (we read all of them)

    Awesome thanks 😄 
    Also wanted to say that I know Ive made a lot of bug reports and suggestions but they are a great addition and Im enjoying them. Im not all criticism, bug reports are just my love language, haha.


  10. I am thinking of this mainly with custom tools in mind but I am sure it would be useful in general. A function that takes an array of objects and creates a group and returns a reference to it. 
    It would be nice if after spawning a bunch of entities for users we could package it all up for them. (Currently ill be using the select entities function in custom tools so that users can more easily make a group)


  11. In reference to variables that are added to the object properties window. It would be nice to be able to group these with a title as well as rearrange them, this would be especially useful for custom tools that will be shared with other users, making it easier to understand which variables are for what.

    • Upvote 1

  12. In my one custom tool (the rest are fine) the events page initially doesn't show anything. When I scroll with the mouse wheel I get this mess. The search bar is also not coming up with any results when I search. duplicating the tool results in the same problem. restarting hasn't helped. Event still seem to be working properly.

    image.thumb.png.03cc13dee80988260d3a1ec8c0bc9f9d.png

     

    output_log_clean.txt 

    output_log.txt

    DxDiag.txt


  13. Edit: I put this in the wrong place, please move to editor suggestions. Sorry😬
    When replacing an empty text (or number, vector etc) tile in VS the empty tile gets popped out instead of being deleted. I believe it used to be deleted and this was definitely superior. its very annoying to have to delete all these tile to keep a clean script.

    Furthermore, its annoying to delete this tile because if you select them it opens up the edit option, I think this 'one click to edit' should stay but using the delete key should still delete the tile while in this mode.

    • Upvote 1

  14. 4 hours ago, Houp said:

    Hi,

    these generators looks really great!

    I am looking forward what you will be able to do with custom tools.

    hey, I havnt been playing lately but you made me check the dev diary. Been wanting custom tools for a while hopefully I can find some time to port these tools over

    • Like 1

  15. As this was posted in editor help, I'm assuming you wasn't to change the appearance of an npc. the answer is yes, once selected the npc there should be a property called appearance or something like that (not sure on the name) clicking on this will open up a window similar to the player customisation that jchobs has mentioned above.


  16. This tutorial will show you how to use the BTH building aids mirror tool to mirror a group of entities across a plane.
    This is one of the more powerful tools IMO, so stick through the scary maths language builders, I believe in you! 
    BTH building aids main page.

    Video Version
    Coming soon? Hopefully?

    Introducing the problem

    Before we get into the tutorial let's look at an example of where this is useful and some possibly simpler solutions.

    Lets look at this greenhouse, if we want to mirror the roof and posts it is easy to select them, duplicate, rotate 180o on the y-axis (green) and reposition it.

    image.png.35f67b5e405a6800984ef63ad271a352.pngimage.png.5bc8662e98f75d2586ef60671ec88fe9.pngimage.png.c3029712c7470208aabe3992a180f8d2.png

    That was easy but its not always as simple as rotating around an axis. 
    Lets take a look at a boat hull made by the talented @Yo HasLEGO which I will be using to demonstrate using the mirror tools.

    Here we can see one-half of the hull. If we try to rotate as in the previous example, it doesn't matter what axis we rotate it on, we won't be able to mirror it.

    image.png.0bc4ca2ea17ed6a8503f815843a83891.pngimage.png.e50635bcf8f7f0aad1ea68d4bba361e7.png

    You could try rotating each layer separately, this works okay for the top layer, there is just one block at the stern that is problematic but that could be fixed manually fairly easily.
    However, as soon as we go further down the hull where there are more curves, this method really falls apart.
    image.png.56b8dacc86db47253c811dcd63c5e33f.pngimage.png.01d3e0b30ebcb1dc8fe48e26d3760d06.png

     

    The mirror Tool

    Let's see how to use the mirror tool to make mirroring this boat hull possible. There are 2 mirror tools one camed 'Mirror' and the other named 'Mirror templates enabled'. Mirroring all the entities is not a simple process so a few complex parameters are required to use the 1st option, however, I have created a bunch of templates for commonly used entities to make it much easier to use. I'll first show how to use the option with templates enabled.

    Mirroring with Templates

    Step 1
    Create a group with all the entities you want to mirror (this just makes selecting them easier)

    Step 2
    Place the mirror tool in position, the entities will be reflected across the trigger zone plane (the local XY plane of the trigger zone)
    image.png.5f393c814dcd2e381f5328e1ee8da8ea.png

    Step 3
    Add all entities of a single type to the entity label. (Use ctrl double click to select all entities of a type).
    image.thumb.png.32544d50dfc7d482f2ca0e4709693611.png

    Step 4
    Open the script in the label (Use shift + alt + double click to quickly open a script in a group), select the tile in the 'entity mirror template' parameter and select the block shape from the drop-down list. The dimensions are given in XYZ order and are multiples of 0.375, ie the 2x1x2 block is an entity with the dimension of 0.75x0.375x0.75. (Side note, Iv been checking through the templates and I seem to have made a mistake with some of the formats but they still kinda work, ill try fix them at some point)
    The entities I have selected in the above image are 2x1x4 so I have selected this template.
    image.thumb.png.107780f8ece55bd0cf3271233247f62e.png

    Step 5
    Repeat steps 2 - 4 with each different entity type in your build. There are cases where you can use the same mirror tool for different entity types, see important notes point 1.
    image.thumb.png.006987c7db5caf2374a073e897e67aae.png

    Step 6
    Test your world to check that everything is generated correctly. See the following tutorial to learn how to create a composition of the generated section and use it in your world. Using generated structures (video tutorial)
    image.thumb.png.e03bc67de260b1a1c954dc98f163bafd.png
    If you have sharp eyes you will notice I haven't done the sloped blocks at the end of the boat, oops.
    image.thumb.png.57c0d684dbe69e15a32be2d0771e0e3c.png
    @Yo HasLEGO was then able to bring both sides of the hull together for his catamaran, looks how great it looks! (Still a WIP)

    Important notes

     

    • The templates are based on the wooden blocks, most entities of the same shape have the same origin and orientation and therefore they can be mirrored using the same mirror tool. For example:
      image.png.ab4c08f140254d3bb933301adaf6bef3.pngimage.png.ca595512c60fa0b1774efd33b68eb755.png
    • However, some have different orientations and most of the time this will be problematic:
      image.png.91bddba7b79c6345a654d12b0078e685.pngimage.png.becf89436923b297aaac4a523808e9f3.png

    So what happens if there isn't a template for a block I want to use? This is where the other Mirror tool comes into play.

    Advanced Mirror Tool

    This tool is very similar to the previous one, the only difference is that you need to provide an entity centre offset and an entity mirror plane normal. These parameters can be found on the entity label in the mirror group.
    Do the same steps described above but instead of step 4 follow the instructions below.
    image.thumb.png.898bfd12763e2ed76bdcbeb24b5da792.png

    Entity Center
    This is a vector describing where the centre of the entity is relative to the entity's origin. NB: Ensure the vector is in the local space of the entity and remember to use minus for direction.
    Here is an example using a simple 2x1x4 block (there is already a template for this, but it's easy to demonstrate on)
    image.png.88b5e434153358cd1e54bd471d85ddcb.pngimage.png.bc2c7d3d460627e435da69081f782505.png

    Entity mirror plane normal
    This one is a little more complex but bare with me. We need to find a plane over which the entity is symmetrical, some objects have multiple planes, you can use any of them.
    This block is asymmetric on the XY plane, notice how the x and y-axis are parallel to the orange plane, this is why it's called the XY plane. It's also symmetric about the XZ plane and YZ plane.
    image.png.ee3602d74eae4efe8263418e234cdfc8.pngimage.png.c8b5d22190ffee815fe3995b0a18746e.png
    The parameter asks for a normal to the plane, in maths a normal is a vector ('arrow') that is perpendicular to a plane, in the first example we can see that the z-axis is perpendicular to the plane therefore the normal is 0,0,1 ( it could also be (0,0,456) or (0,0,-87) but let's keep it normal, pun very much intended.)

    image.png.bc2c7d3d460627e435da69081f782505.png

    NB: As with the entity centre remember to do everything in the local space relative to the entity.

    How about a more complex example. This block is not symmetric about either of the 3 basic plans (XY, XZ, YZ), however, it is about this plane at a 45-degree angle.
    image.png.a5372a583f5af0438c2e4cb5d4e39240.pngimage.png.0b5602053658e9a9db824ebee02ea5cb.png
    To find a normal to this plane imagine a perpendicular arrow and what the coordinates of that arrowhead must be. In this terrible paint image the black arrow is the normal. A normal vector is a direction vector therefore its position is irrelevant, note how I have moved the origin but kept the same orientation.
    image.png.66c081bb298c51eafe814273262ba54f.pngimage.png.91ceab026b84912f3e30fc5ab3e39f35.png

    Remember that if any entity types have the same entity centre offset AND entity mirror plane normal you can use the same mirror tool for both those entity types a good example of this is these two wall signs.
    image.png.c455300e7ce4bdb47c7ed60956581b8d.png
    A few examples of entities that do not have a symmetry plane, note that you may be able to get satisfactory examples using the closest plane.
    image.thumb.png.7a4395bf4ac73b9d2cc1e55fe0323450.png

    • Like 3
    • Upvote 2

  17. On 6/15/2022 at 5:13 AM, Igor Q. said:

    I feel like this is something we should consider necroing, especially now that we have access to the HUD/Window Interface.

    Do you mean in terms of getting it implemented properly in the game?

×