Jump to content

Hal's Prefab Editor


HAL9000

Recommended Posts

Hal, If you get the list of blocks that were removed. Why not set them to a very noticeable block type (such as a corner piece or red barn wood). This particular block would then be easily changed out by using the replace blockID from the drop down list. *** (read through the blockTypesKnown from the block BlockData.txt or BlockDataDefault.txt, your call) if (!blockTypesKnown) blockType = alternativeBlockType; Just an idea, maybe someone has a better block type to utilize as well. Cheers.
Link to comment
Share on other sites

Hey Hal, not sure if you're aware of this but the rotate/flip prefab disorients some of the block rotations. And when you import a prefab it flips the imported prefab horizontally (top row to bottom and bottom row to top).
Link to comment
Share on other sites

[QUOTE=DarkNightsComing;61789]Hal, If you get the list of blocks that were removed. Why not set them to a very noticeable block type (such as a corner piece or red barn wood). This particular block would then be easily changed out by using the replace blockID from the drop down list. *** (read through the blockTypesKnown from the block BlockData.txt or BlockDataDefault.txt, your call) if (!blockTypesKnown) blockType = alternativeBlockType; Just an idea, maybe someone has a better block type to utilize as well. Cheers.[/QUOTE] Hate to quote myself..... What if upon prefab load, block types known are checked. If there are unknown block types, you're given a drop down list of block types to choose yourself to replace the unknown block type? This would then be easily carried over into future revisions making updating this portion of the code, no longer necessary (if you read the known block types from the 2 text files your editor generates on first run)
Link to comment
Share on other sites

[QUOTE=Ekk0;61800]Hey Hal, not sure if you're aware of this but the rotate/flip prefab disorients some of the block rotations. And when you import a prefab it flips the imported prefab horizontally (top row to bottom and bottom row to top).[/QUOTE] Hey Ekk0, Yeah I can't do much about the rotating messing with the orientation as I don't know which rotation is right or wrong. It also depends on the rotation of a prefab in the prefabs.xml. Hopefully as I go along I'll understand it better to be able to automatically adjust when rotating. I'll have a look at the import horizontal flip, should be an easy fix. Thanks for the info - now get back to the mall :D can't wait to see all your hard work [QUOTE=DarkNightsComing;61803]Hate to quote myself..... What if upon prefab load, block types known are checked. If there are unknown block types, you're given a drop down list of block types to choose yourself to replace the unknown block type? This would then be easily carried over into future revisions making updating this portion of the code, no longer necessary (if you read the known block types from the 2 text files your editor generates on first run)[/QUOTE] The problem is that there's usually more than one block added or removed and you'd have to know the replacement block to use before the prefab loads. And unfortunately when new blocks get added they can sometimes have the same ID as a removed block from a previous version so it needs manual intervention to check. But I can add a method similar the "Replace Block ID" that specifically targets unknown block types so when you have all that info it's a few clicks instead of having to replace each block individually.
Link to comment
Share on other sites

[QUOTE=HAL9000;61828]Hey Ekk0, Yeah I can't do much about the rotating messing with the orientation as I don't know which rotation is right or wrong. It also depends on the rotation of a prefab in the prefabs.xml. Hopefully as I go along I'll understand it better to be able to automatically adjust when rotating. I'll have a look at the import horizontal flip, should be an easy fix. Thanks for the info - now get back to the mall :D can't wait to see all your hard work.[/QUOTE] Word. Thanks for the reply. The mall is coming along slowly, but quite nicely. I'm working on fixing the rotation of the blocks for 4 of the prefabs and building one straight in. I've finished one large shop, complete with zombie spawns, and am working on another room. Gertle is hard at work on some more prefabs. I got to say, this kid is really good at prefabs. I think some of my ideas worry him, :congratulatory: but if my ideas work, they'll be awesome.
Link to comment
Share on other sites

[QUOTE=Ekk0;61832]Word. Thanks for the reply. The mall is coming along slowly, but quite nicely. I'm working on fixing the rotation of the blocks for 4 of the prefabs and building one straight in. I've finished one large shop, complete with zombie spawns, and am working on another room. Gertle is hard at work on some more prefabs. I got to say, this kid is really good at prefabs. I think some of my ideas worry him, :congratulatory: but if my ideas work, they'll be awesome.[/QUOTE] Good to know it's coming along nicely. If you have any example prefabs with rotation messed up and another with it fixed can you send me them? That'll help me start learning what I need to do. [QUOTE=BloodSlinger;61854]Do prefabs support dynamic destruction / can they be blown to pieces?[/QUOTE] Only in so-far as the world has dynamic destruction i.e. they'll collapse without proper structure. Is that what you mean? Interestingly when the prefab first gets place there's no structure check. It's only after a block is modified or the player walks on it that it will collapse. I made a castle in the sky as a test :)
Link to comment
Share on other sites

[QUOTE=HAL9000;61928] Only in so-far as the world has dynamic destruction i.e. they'll collapse without proper structure. Is that what you mean? Interestingly when the prefab first gets place there's no structure check. It's only after a block is modified or the player walks on it that it will collapse. I made a castle in the sky as a test :)[/QUOTE] Yeah I meant real-time physics destruction. Sledgehammer / Rocket / TNT into the side of it = gaping hole, wall collapse etc. Just wanted to confirm. I assumed not because I notice there are several "apparent" structures in the game that you can't damage the pieces of them. You can take their ground out and they'll fall. So I assume these are prefabs. I definitely hope they enhance the system so prefabs unlock (gain physics) when they're placed in the world so they behave just like any other block connection that gets put down in real-time. Since each block has its own load capacity and other settings, as long as something is built properly it should stand fine. Something made in a way without good integrity will crumble, but it should anyway.
Link to comment
Share on other sites

[QUOTE=BloodSlinger;61953]Yeah I meant real-time physics destruction. Sledgehammer / Rocket / TNT into the side of it = gaping hole, wall collapse etc. Just wanted to confirm. I assumed not because I notice there are several "apparent" structures in the game that you can't damage the pieces of them. You can take their ground out and they'll fall. So I assume these are prefabs. I definitely hope they enhance the system so prefabs unlock (gain physics) when they're placed in the world so they behave just like any other block connection that gets put down in real-time. Since each block has its own load capacity and other settings, as long as something is built properly it should stand fine. Something made in a way without good integrity will crumble, but it should anyway.[/QUOTE] All of my prefabs are destructible. Bedrock is the only block i am aware of that cant be destroyed threw normal game mechanics.
Link to comment
Share on other sites

Update Time! Updated: Support for 7.9 (b5) Updated: Bug fixes As far as I know there's been no blocks removed or added so the editor is the same but you need to update if you use the DLL for exporting as you'll get the 7.9 FPS code and other updates Usual [URL="http://bit.ly/OMgN82"]link[/URL] Cheers, Hal
Link to comment
Share on other sites

Also, I noticed TFPs changed something with several of the blocks and replaced it with a "Do Not Use" graphic. These blocks were all different railing types. The only unaffected railing block is called "railingMetal." Within your editor blocks such as "railingOldWood" is listed twice. However neither of them display properly in-game. Maybe a bug? EDIT: Regarding the exception error I mentioned above, I was able to work around it by keeping my mouse cursor over the unknown block while clicking the "continue" button within the exception error using my keyboard keys. This allowed me to keep change the unknown block since I didn't have to scroll over it again. Thankfully I didn't have many unknown blocks to replace so I sucked it up and performed the same process on the remaining blocks...(Hopefully this makes sense hahahaha).
Link to comment
Share on other sites

Unintended feature?... I can not add a row of block to the top of my prefab. I tested this by creating a prefab 10x10x10. Filled in the lower layer with grass, next layer made a gravel wall around the perimeter. Saved as "temp" and quit, Started up again and opened the prefab. Selected add a row, Asked if I wanted to add it to the bottom, I said "No" and it added the row to the top... good so far. Filled grass to the lower layer then extended the gravel wall around. now I have a 10x11x10 prefab, Saved and quit. When I reloaded it again the prefab was back to 10x10x10, no changes were saved.
Link to comment
Share on other sites

Ahhh I just deleted some files I need to test. Can someone paste their BlockData.txt and BlockDataDefault.txt files here please? You can find them where the editor EXE is. [QUOTE=Laz Man;62320]Also, I noticed TFPs changed something with several of the blocks and replaced it with a "Do Not Use" graphic. These blocks were all different railing types. The only unaffected railing block is called "railingMetal." Within your editor blocks such as "railingOldWood" is listed twice. However neither of them display properly in-game. Maybe a bug? EDIT: Regarding the exception error I mentioned above, I was able to work around it by keeping my mouse cursor over the unknown block while clicking the "continue" button within the exception error using my keyboard keys. This allowed me to keep change the unknown block since I didn't have to scroll over it again. Thankfully I didn't have many unknown blocks to replace so I sucked it up and performed the same process on the remaining blocks...(Hopefully this makes sense hahahaha).[/QUOTE] Sorting it now Laz Man. It's a problem when TFP change the ID for a block but keep the same name. [QUOTE=Wsiegel;62394]Unintended feature?... I can not add a row of block to the top of my prefab. I tested this by creating a prefab 10x10x10. Filled in the lower layer with grass, next layer made a gravel wall around the perimeter. Saved as "temp" and quit, Started up again and opened the prefab. Selected add a row, Asked if I wanted to add it to the bottom, I said "No" and it added the row to the top... good so far. Filled grass to the lower layer then extended the gravel wall around. now I have a 10x11x10 prefab, Saved and quit. When I reloaded it again the prefab was back to 10x10x10, no changes were saved.[/QUOTE] I'll check it out Wsiegel, seems very odd. You're using the Prefab folder as your working folder and not another directory? Cheers, Hal
Link to comment
Share on other sites

[QUOTE=Wsiegel;62394]Unintended feature?... I can not add a row of block to the top of my prefab. I tested this by creating a prefab 10x10x10. Filled in the lower layer with grass, next layer made a gravel wall around the perimeter. Saved as "temp" and quit, Started up again and opened the prefab. Selected add a row, Asked if I wanted to add it to the bottom, I said "No" and it added the row to the top... good so far. Filled grass to the lower layer then extended the gravel wall around. now I have a 10x11x10 prefab, Saved and quit. When I reloaded it again the prefab was back to 10x10x10, no changes were saved.[/QUOTE] You're absolutely right, fixed in the next update. Nice one Weisgel! Hal
Link to comment
Share on other sites

[QUOTE=HAL9000;61928]If you have any example prefabs with rotation messed up and another with it fixed can you send me them? They'll help me start learning what I need to do.[/QUOTE] Yeah, I'll get to it as soon as I can. I'll have to get a clean restaurant prefab and test it out to explain better.
Link to comment
Share on other sites

[QUOTE=Ekk0;62431]Yeah, I'll get to it as soon as I can. I'll have to get a clean restaurant prefab and test it out to explain better.[/QUOTE] Thanks Ekk0 [COLOR="silver"][SIZE=1]- - - Updated - - -[/SIZE][/COLOR] Update Time! Updated: Fixed exception when hovering over unknown blocks (+1 Laz Man and +1 extra for sucking it up) Updated: Fixed prefab not saving new rows/columns (+1 Wseigel) Usual [URL="http://bit.ly/OMgN82"]link[/URL] Cheers, Hal
Link to comment
Share on other sites

New /removed blocks 7.8 removed Snow_Transition , Birch_Bush , Maple_Bush , Maple_Leaves , Maple_Leaves_2 , Maple_Leaves_3 , Maple_Leaves_4 , Birch_Leaves_1 , Birch_Leaves_2 , Birch_Leaves_3 , Birch_Leaves_4 , Maple_Leaves_(Orange) , Maple_Leaves_2_(Orange) , Maple_Leaves_3_(Orange) , Maple_Leaves_4_(Orange) , Birch_Branch , Yellow_Maple_Leaves_3 , Yellow_Maple_Leaves_4 , Blue_Wood_Paneling , Green_Plaster_Wood_Paneling_&_Siding , sidingWhiteWoodPaneling , Yellow_Plaster_Wood_Paneling_&_Siding , Tan_Plaster_Wood_Paneling_&_Siding , Brick_Plaster_Wood_&_Paneling , woodFenceOldTop , brickInsane , gate , gateTop added WedgeOldStuccoWoodShake , halfBlockOldWood , TanStuccoPlasterBaseboard , TanStuccoPlasterMiddle , TanStuccoPlasterTop , TanStuccoOldWood , TanStucco , tanStuccoTileFloor1 , tanStuccoTileFloor2 , tanStuccoCarpet1 , tanStuccoCarpet2 , oldStuccoWoodShake , oldStuccoWoodShakeTip , woodPillar , redWoodPillar , oldWoodPillar , wedgeWoodShinglesOld , wedgeWoodShinglesAsphalt , fileCabinet , Cooler Repurposed / renamed Maple_Branch -> angled_Wood_Support , Yellow_Maple_Leaves_1 -> WedgeOldWoodShinglesOld , Yellow_Maple_Leaves_2 -> WedgeOldWoodShinglesAsphalt , faucet02 renamed Household Faucet , faucet04 renamed Household Faucet2 , faucetBrass02 renamed Brass Faucet , graniteSink renamed Sink , cabinetOldSink renamed OldSink Moved ThinCorregatedMetal , railingOldWood , railingWroughtIron , railingWoodWhite AussieWombat
Link to comment
Share on other sites

Hey Hal, First let me say thanks for your hard work. Before your update, I tried to create a blank prefab 1 row larger than the original. then import my smaller prefab into it assuming this would be the way to enlarge the area I needed. It did import fine, however the entire prefab has been rotated 180 degrees ( or flipped vertically. ) Is this the way it was intended? I would think that importing a prefab should keep it in the same orientation. Thanks
Link to comment
Share on other sites

Oh Oh... Just deleted my old files and loaded up the newest build... the right click on a block for info is broken. The orientation works and updates with a right click however the name does not update and always stays at air. Tried various methods, change the block to something other than air... then right click a block... nope. also when you hover over a block, the block type number changes, but the name stays at null help!... :)
Link to comment
Share on other sites

[QUOTE=AussieWombat;62456]New /removed blocks 7.8 removed Snow_Transition , Birch_Bush , Maple_Bush , Maple_Leaves , Maple_Leaves_2 , Maple_Leaves_3 , Maple_Leaves_4 , Birch_Leaves_1 , Birch_Leaves_2 , Birch_Leaves_3 , Birch_Leaves_4 , Maple_Leaves_(Orange) , Maple_Leaves_2_(Orange) , Maple_Leaves_3_(Orange) , Maple_Leaves_4_(Orange) , Birch_Branch , Yellow_Maple_Leaves_3 , Yellow_Maple_Leaves_4 , Blue_Wood_Paneling , Green_Plaster_Wood_Paneling_&_Siding , sidingWhiteWoodPaneling , Yellow_Plaster_Wood_Paneling_&_Siding , Tan_Plaster_Wood_Paneling_&_Siding , Brick_Plaster_Wood_&_Paneling , woodFenceOldTop , brickInsane , gate , gateTop added WedgeOldStuccoWoodShake , halfBlockOldWood , TanStuccoPlasterBaseboard , TanStuccoPlasterMiddle , TanStuccoPlasterTop , TanStuccoOldWood , TanStucco , tanStuccoTileFloor1 , tanStuccoTileFloor2 , tanStuccoCarpet1 , tanStuccoCarpet2 , oldStuccoWoodShake , oldStuccoWoodShakeTip , woodPillar , redWoodPillar , oldWoodPillar , wedgeWoodShinglesOld , wedgeWoodShinglesAsphalt , fileCabinet , Cooler Repurposed / renamed Maple_Branch -> angled_Wood_Support , Yellow_Maple_Leaves_1 -> WedgeOldWoodShinglesOld , Yellow_Maple_Leaves_2 -> WedgeOldWoodShinglesAsphalt , faucet02 renamed Household Faucet , faucet04 renamed Household Faucet2 , faucetBrass02 renamed Brass Faucet , graniteSink renamed Sink , cabinetOldSink renamed OldSink Moved ThinCorregatedMetal , railingOldWood , railingWroughtIron , railingWoodWhite AussieWombat[/QUOTE] Thank you Aussie for the information. Good reading this is. :0) [QUOTE=Wsiegel;62462]Hey Hal, First let me say thanks for your hard work. Before your update, I tried to create a blank prefab 1 row larger than the original. then import my smaller prefab into it assuming this would be the way to enlarge the area I needed. It did import fine, however the entire prefab has been rotated 180 degrees ( or flipped vertically. ) Is this the way it was intended? I would think that importing a prefab should keep it in the same orientation. Thanks[/QUOTE] This has been working in the manner you describe for a while like this. Hal has mentioned to Ekk0 about not fully knowing the rotations, plus there may have been rotations in the prefabs.xml file on top of any in the prefab itself (making this a bit more difficult). In the meantime, I would highly recommend one of the 2 following suggestions: 1. You could try placing the prefab in the world and rotating in the prefabs.xml by x-number of degrees (IE 15, 30, 45, 90 degree increments). This should help get it placed back the way you'd like in the world. [COLOR="#FFD700"](This step is used to get the proper rotation when imported "directly" into a new prefab. Using this step makes the placement rotation the way you've intended, but takes much more time and patience)[/COLOR] 2. You could rotate the prefab in the world using the prefabs.xml and re-export it through his claim command line tools and import (this would take a bit of testing to get it right, but if you have multiple prefabs that you're trying to import into the main prefab this will work). You'll probably need to be patient running through this process hehe. ***make sure if you export through the claim command line tool: bbb ex playername playerclaimname (you want that claim area to be as precise as possible and stand centrally when using the command) Here's why: You exported a rotated prefab using step 2 methodology. Opening the prefab, editing, saving, importing (I've found this messes up some time). You'll want that perimeter around your exported player claim to be small as possible to save editing around the perimiter with "air" or whatever other blocks need to be placed. Method 2 is if you're really in a jam and have to add it with multiple prefabs to obtain only one prefab. [B]keep in mind, exporting from the claim command: you have layers 0 - 255 to deal with. 1. Your original prefab that you're importing into could have far fewer layers and when you import the exported prefab it will cut off any layers not within the boundaries. (tested working) 2. No matter how many layers are available (fewer as mentioned in step 1 or all 256 layers, you'll need to edit every one of those using earlier mentioned methodology #2; again why I mentioned patience. You must really need it or have something small if you don't have the patience)[/B] [COLOR="#FF8C00"]If I need to explain this better for anyone, by all means ask and I'll do my best. I know this is probably not worded the best it could had been.[/COLOR]
Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...