Jump to content

Hal's Prefab Editor


HAL9000

Recommended Posts

[QUOTE=HAL9000;332890] That's the bbb ip function, I've described the usage a few posts ago or there's videos online showing how it works. Check my youtube account or the links in the first post. Cheers, Hal[/QUOTE] Thx I'll check it out! I can confirm that the nevazgane map generation messes with my changes to density, but only with air blocks as far as I've noticed and I think only in places where Nav has an air block, too and uses a density that isn't the norm (like 127 for air blocks). I've also noticed that the undo function does not extend to changes to density. If you replace a block und click undo, the replaced block reappears but with the density of the block you "undid". [QUOTE=StompyNZ;332915] BTW for the getting a slope looking smoother you don't need to adjust the air blocks or anything. [/QUOTE] You are right of course. Still an air block with a low positve density pulls terrain a bit upwards (the lower the density the stronger the pull). It has its uses to have terrain flow smoother around blocks or to make terrain a bit uneven. You don't need to edit the air blocks, but I achieved some nice results in doing so. [img]http://images.akamai.steamusercontent.com/ugc/396675411348710325/B255D53E9525CE84708BC46C4FA1A0B5B4C834B3/[/img] A good example is the small hole next to the scrap metal pile in the lower right.... the difference there is that there is an air block there with a density of 70 that is too high (the gravel left has -2, the scrap metal pile 34, the full sidewalk blocks beneath have around-108 to -120, the concrete blocks that form the wall have values from -100 to 120) and messes with the otherwise smooth overlapping of the terrain onto the sidewalk blocks. I don't want to come across like I want to lecture you, I'm just really excited about the possibilitys if we understand how to make terrain behave exactly how we want it to and want to share my observations. So far my results are somewhat behind what I imagine, but for a start here's a nearly seemless transition terrain-flagstone with some destroyed stome. [img]http://images.akamai.steamusercontent.com/ugc/396675411348893371/596E62B4E76C8BFBD117295CA1207F02EA9A598A/[/img] [img]http://images.akamai.steamusercontent.com/ugc/396675411348893781/748A261273175395CB4F0C7FD333D99C31A536D9/[/img] Or one air block above the burnt forest terrain with a density of 70 that makes it look like a pile of ash.
Link to comment
Share on other sites

[QUOTE=Krash;333143]I don't want to come across like I want to lecture you, I'm just really excited about the possibilitys if we understand how to make terrain behave exactly how we want it to and want to share my observations.[/QUOTE] I'm all for being lectured if it brings better understanding of how it works ;) Cheers for the info, will help when I get around to my next prefab :) Btw that's a pretty slick looking prefab you have.
Link to comment
Share on other sites

[QUOTE=h0tr0d;333814]hey Hal; have any thoughts on pursuing any more converters? Vote h0tr0d 2015 -- convert nao[/QUOTE] Yeah there's a plan for a converter but I can't do it until A13 is out as the blocks are still changing. As long as there's no fundamental changes to the XML it shouldn't take long to make. Hopefully it will be out before the 10th. [QUOTE=StompyNZ;333836]Mag and I have a plan for converting prefabs if Hal is to busy with that... other game :p[/QUOTE] Interesting.... Re-using the old converter and changing the ID files? Cheers, Hal
Link to comment
Share on other sites

[QUOTE=HAL9000;333858]Interesting.... Re-using the old converter and changing the ID files? [/QUOTE] I didn't think of that as I haven't used the previous converters at all, but we could try that :) Our plan was to create a blocks file with all the missing block ids as a new block with the id as the block name or something, then using the 'list all blocks' and 'block replace - all prefabs' functions to just replace all the null blocks with proper ones :) A lot slower than an automated solution but will at least let us work with the prefabs in a13 :)
Link to comment
Share on other sites

[QUOTE=h0tr0d;333986]I've got an old mega-prefab that can be opened in the editor but place it in-game and no-go! Vote h0tr0d 2016 -- it's just you and me Megatron[/QUOTE] Have you run them through the old converters? Are there any errors when going through the layers in the editor? Are there any entities in the prefab? Cheers, Hal
Link to comment
Share on other sites

[QUOTE=h0tr0d;333986]I've got an old mega-prefab that can be opened in the editor but place it in-game and no-go! Vote h0tr0d 2016 -- it's just you and me Megatron[/QUOTE] When you use the List Blocks In Prefab command does it have any null blocks listed? When Stallion gave me the stadium to work on there were a few custom blocks he had used and that was how I found them then we worked out which id it was and used a blocks.xml file with the name=id method to let me do a block replace (was about 500 of them) as I couldn't do a block replace on the null blocks and with so many to replace having to try and replace them one at a time with the error alert on each one would have taken forever :) After that it loaded in the game no problem. Hal I guess that brings up a question, would it be much work to have some way of showing which block id's the null blocks should be that are missing from the blocks.xml when a prefab is loaded?
Link to comment
Share on other sites

[QUOTE=Ld-airgrafix;334138]Sorry to bother people but is the first post the latest editor. I have few issues with that one plus it wants to update but it stops responding once i click update.[/QUOTE] yes - the dl-link in the opening post is the newest. Have u also installed net.framework 4.5 ??? It is needed for the editor-tool. pls wait a few secs when pushing update-button. Sometimes it tooks a while.
Link to comment
Share on other sites

Editor Feature Request New prefabber here. I have read the last 50 pages in detail and watched/read all the great tutorials. HAL, I see that you respond to feature requests and I had some ideas about "density" that I figured would best be shown visually, so I mocked up two features on my dream list. Well three. The first is in your response to a 3D editor. To answer your question, I am using both in-game editing and your editor. Each has it's use. In this mock-up, I show an option to change the view layer. Your Layer selection tool by default only cycles across Z, but here one could choose it to use X or Y. [attachment=530:name] The next suggestion is motivated by density and the pain of doing mass changes. I know you adding density to the block replace function. But I figured an ability to paint meta-data would be very useful; density, direction, meta and meta2. [attachment=531:name] In this mock-up, I have actually two changes that work together. Currently you only show direction data. "Show meta" not only shows a block's particular meta-data, but will restrict painting to only that shown type. I select "Density". Next, much like the "Info" option, right clicking a block locks the "Block Info" section at the bottom of the screen. I then change density to -108 and use an "Edit" like area paint operation and change every single block inside that to -108 density. I could also paint one by one. One final consideration is that it would ignore impossible changes. Had I selected "Show Meta: Meta2", right clicked a light block and set it to "Lit2", it would only paint light blocks and ignore changes to non-light blocks. I know this is alot to ask. I feel comfortable asking for the first feature, imagining that it would be pretty easy compared to writing a voxel engine in Unity. But the next two I feel are quite a bit more involved. I tried to think of not breaking the way your interface works and hopefully you can think of an easy way to shoe horn them in elegantly. And that you have the time and motivation. Cough cough Fallout 4... My motivation is to pretty up my first prefab; a Minute Man III nuclear missile silo. She looks ugly xrayed, but it pretty on the inside and outside. Still working on finishing touches, terrain filler, loot balance, RWG... [attachment=532:name] [attachment=533:name] [attachment=534:name]
Link to comment
Share on other sites

[QUOTE=kurtu5;336621]New prefabber here. I have read the last 50 pages in detail and watched/read all the great tutorials. HAL, I see that you respond to feature requests and I had some ideas about "density" that I figured would best be shown visually, so I mocked up two features on my dream list. Well three. The first is in your response to a 3D editor. To answer your question, I am using both in-game editing and your editor. Each has it's use. In this mock-up, I show an option to change the view layer. Your Layer selection tool by default only cycles across Z, but here one could choose it to use X or Y. [ATTACH=CONFIG]11496[/ATTACH] The next suggestion is motivated by density and the pain of doing mass changes. I know you adding density to the block replace function. But I figured an ability to paint meta-data would be very useful; density, direction, meta and meta2. [ATTACH=CONFIG]11497[/ATTACH] In this mock-up, I have actually two changes that work together. Currently you only show direction data. "Show meta" not only shows a block's particular meta-data, but will restrict painting to only that shown type. I select "Density". Next, much like the "Info" option, right clicking a block locks the "Block Info" section at the bottom of the screen. I then change density to -108 and use an "Edit" like area paint operation and change every single block inside that to -108 density. I could also paint one by one. One final consideration is that it would ignore impossible changes. Had I selected "Show Meta: Meta2", right clicked a light block and set it to "Lit2", it would only paint light blocks and ignore changes to non-light blocks. I know this is alot to ask. I feel comfortable asking for the first feature, imagining that it would be pretty easy compared to writing a voxel engine in Unity. But the next two I feel are quite a bit more involved. I tried to think of not breaking the way your interface works and hopefully you can think of an easy way to shoe horn them in elegantly. And that you have the time and motivation. Cough cough Fallout 4... My motivation is to pretty up my first prefab; a Minute Man III nuclear missile silo. She looks ugly xrayed, but it pretty on the inside and outside. Still working on finishing touches, terrain filler, loot balance, RWG... [ATTACH=CONFIG]11498[/ATTACH] [ATTACH=CONFIG]11499[/ATTACH] [ATTACH=CONFIG]11500[/ATTACH][/QUOTE] Hello Kurtu5, Yeah I like your ideas, though the one you think is the simplest is actually the most difficult ^^ I will look at implementing your suggestions in a future version of the editor. At the moment you are correct, I'm in Fallout mode and will be for a while yet but these suggestions are definitely something I will look to adding. Feel free to remind me if I let it slip as I have a terrible memory. Thanks for the suggestions and welcome to the forum. Cheers, Hal
Link to comment
Share on other sites

Hi Hal. Thanks again for everything you do!! I have a request based on the world editor I used in a previous game. Expanding the use of the red in-game selection box from the world editor to assist in building prefabs in game by creating the ability to make selections with a tool. The Selection tool: (Using an in game item with no actions like a stick or creating one in the XML) - Left click a block to select the first corner of your selection (This will be your anchor block) - Right click a block in the opposite corner to complete the selection Blue box forms around the selected area with the anchor block being yellow "The yellow anchor block will be used for reference when Prepping, and adjusting the placement for a paste in" Once selected you would have many options with either in game commands or maybe a panel in the world editor program Commands: - Copy Selection = Copies the selection to the world editor clipboard - Fill = Fills the selection with defined block and density - Clear = Clears the area, filling it with air blocks - SendPrefab = Sends the current selection to the prefab editor Paste: - VisualizePaste = This places a red area defining your selection with the anchor point being yellow and the block under your feet - Rotate <90,-90,180,-180> = Rotates the copied area including the anchor point - Paste = Once you make adjustments to the visualization area this will paste the copy into the world - QuickPaste = quickly Pastes the current selection with the anchor block under your feet You could also make a paste tool for quick editing Paste Tool - Left click would paste the current copied selection in the world with the anchor point at the block that was clicked - Right click would create a PrepPaste box with the anchor point at the block that was clicked I feel like with these tools we could create prefabs with much more detail and at faster rates. Let me know what you think.
Link to comment
Share on other sites

[QUOTE=Magoli;336890]welcome to prefabbing kurtu5 nice idea about density ! btw: Cool pics - Looks very impressive ur creation :) Mag[/QUOTE] Thanks for the compliment Magoli. Means a lot coming from you. [QUOTE=HAL9000;337399]Hello Kurtu5, Yeah I like your ideas, though the one you think is the simplest is actually the most difficult ^^ ... Hal[/QUOTE] Ah, so it must be refactoring the code to resize the display window. Oh well, I thought it might be easy. Enjoy Fallout. I'll sure ping you as the weeks go by.
Link to comment
Share on other sites

Autohotkey metadata paint script for HAL's Prefab Editor 0.45 Lazy programmers are the best programmers. I present to you my AutoHotKey script that lets you paint metadata in Hal's editor. Basically it asks you to show where the menus are, then asks for what selection in the menu and then allows you to use Alt-v to paint a block by replaying mouse movements to select what you used to have to by hand block by block. This should allow Hal to enjoy Fallout and not worry about my recent feature request for a while. Instructions; 1. Download [url]http://www.autohotkey.com/[/url] and install as per usual. 2. Save the quoted text below as HALS_Editor_MetaPainter.ahk to your favorite location in text format. 3. Double click HALS_Editor_MetaPainter.ahk to start it running in the background. You will see that Autohotkey is running in the taskbar as an icon. 4. In HAL's Editor press Alt-? for help to get the help on the macros. ... 7. Profit?? [CODE] ; ; Metadata paint script for HAL's Prefab Editor 0.45(Domesticated Death Claw) ; ; Name: HALS_Editor_MetaPaint.ahk Version: 1.0 Author: kurtu5 Date: 11/13/2015 ; Site: https://7daystodie.com/forums/showthread.php?7564-Hal-s-Prefab-Editor/page147 ; Site: http://www.autohotkey.com/ ; License: We don't need no stinking licenses. Do what you will with it. ; helpString = ( This AHK script lets you paint metadata in Hal's Prefab Editor 0.45. Alt-? - Displays this help. Alt-m - To select metadata to paint. This will only change the block if you have clicked it otherwise it just sets the value for painting. Wait for mouse actions to complete and follow the prompts. Alt-v - While over a block will paint the selected metadata. Clicking the block is done automatically, you only need to hover over it. Alt-r - Force the Autohotkey script to reload. Use if you are having problems or making changes. Note: Try to not move the mouse during these operations, especially with Alt-m as it is the slowest. Alt-v seems pretty forgiving for quick painting and paints as fast at the metadata selection menu closes. Note that clipboard data is overwritten so save your work. ) #NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases. ;#Warn ; Enable warnings to assist with detecting common errors. SendMode Input ; Recommended for new scripts due to its superior speed and reliability. SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory. #IfWinActive ahk_exe SDTDEditor.exe #InstallMouseHook ;;; ;;; Launch help screen at start/reload. ;;; GoSub !? !/:: !?:: MsgBox, 0, Help, %helpString% Return ;;; ;;; Prompt the user to teach the script where the metadata fields are on screen and choose desired value. ;;; !m:: ; Enter "Info" mode, prompt user for optional near density value so the scroll bar is properly positioned. Send {F2} userPrompt = ( If setting density, enter in value smaller or equal to what you want, in order to properly position scrollbar. Chose a close value. Minimum is -128 and Maximum is 127. Otherwise click ok, cancel or escape. ) InputBox, densityNearValue, Metadata Value Selection, %userPrompt% ; Ask user to locate the selection arrow on the meta option. UserPopupTip("Click Meta Selection Arrow") KeyWait, LButton, D MouseGetPos, metaSelectionArrowX, metaSelectionArrowY MouseClick ; Paste in density to position density scrollbar. if (densityNearValue != "") { clipboard = %densityNearValue% MouseClick Left, metaSelectionArrowX, metaSelectionArrowY Send ^v } ; Delay for UI, ask user to click position of the desired value. Sleep 750 UserPopupTip("Click Actual Desired Meta Value") MouseClick Left, metaSelectionArrowX, metaSelectionArrowY KeyWait, LButton, D MouseGetPos metaSelectionValueX, metaSelectionValueY UserPopupTip("Saved selection.") SetTimer UserPopupTipTimeOut, 1000 Return ;;; ;;; Allow user to paint selected metadata value on block under cursor. ;;; !v:: if (metaSelectionArrowX = "" || metaSelectionArrowY = "") { MsgBox, 0, Warning, You must first set a metadata value.`nUse Alt-m to do so now. return } ; Set "Info" mode, try to block user input and click and save the current block location. Send {F2} UserPopupTip("") BlockInput, On ; Should block mouse movement, but really doesn't. MouseGetPos, blockCurrentX, blockCurrentY MouseClick ; If we are setting density, paste in a value so the scroll bar is properly positioned. if (densityNearValue != "") { MouseClick Left, metaSelectionArrowX-25, metaSelectionArrowY clipboard = %densityNearValue% Send ^v } ; Click the arrow, click the text in the list, go back to block location MouseClick Left, metaSelectionArrowX, metaSelectionArrowY MouseClick Left, metaSelectionValueX, metaSelectionValueY MouseClick Left, blockCurrentX, blockCurrentY BlockInput, Default ; Again, doesn't seem to work. UserPopupTip("Applied") SetTimer UserPopupTipTimeOut, 1000 Return ;;; Some display helper functions and reload function for code tweakers. UserPopupTip(text) { if (text != "") Progress, B2 FS16 ZX10 ZY10 X50 Y100 W200 CTwhite CWgrey, %text%, , , Arial Bold else Progress, Off } UserPopupTipTimeOut: SetTimer UserPopupTipTimeOut, Off UserPopupTip("") Return !r:: Reload #IfWinActive [/CODE]
Link to comment
Share on other sites

[QUOTE=BeatKidz;337518]Hi Hal. Thanks again for everything you do!! I have a request based on the world editor I used in a previous game. Expanding the use of the red in-game selection box from the world editor to assist in building prefabs in game by creating the ability to make selections with a tool. The Selection tool: (Using an in game item with no actions like a stick or creating one in the XML) - Left click a block to select the first corner of your selection (This will be your anchor block) - Right click a block in the opposite corner to complete the selection Blue box forms around the selected area with the anchor block being yellow "The yellow anchor block will be used for reference when Prepping, and adjusting the placement for a paste in" Once selected you would have many options with either in game commands or maybe a panel in the world editor program Commands: - Copy Selection = Copies the selection to the world editor clipboard - Fill = Fills the selection with defined block and density - Clear = Clears the area, filling it with air blocks - SendPrefab = Sends the current selection to the prefab editor Paste: - VisualizePaste = This places a red area defining your selection with the anchor point being yellow and the block under your feet - Rotate <90,-90,180,-180> = Rotates the copied area including the anchor point - Paste = Once you make adjustments to the visualization area this will paste the copy into the world - QuickPaste = quickly Pastes the current selection with the anchor block under your feet You could also make a paste tool for quick editing Paste Tool - Left click would paste the current copied selection in the world with the anchor point at the block that was clicked - Right click would create a PrepPaste box with the anchor point at the block that was clicked I feel like with these tools we could create prefabs with much more detail and at faster rates. Let me know what you think.[/QUOTE] Hello Beatkidz, Thanks for the suggestions. There will probably be some expansion of the tools in-game at some point. There's some interesting things going on in the background which may make a lot of this simpler to implement. [QUOTE=kurtu5;337660]Lazy programmers are the best programmers. [/QUOTE] Is there any other kind of programmer?? :) [QUOTE=h0tr0d;338042]How does one load exported areas now? I tried the Load Export tab I used before this version and it looks for .tts files, not .ex files. Vote h0tr0d 2016 -- [COLOR="#FF0000"]LOADING PLEASE WAIT[/COLOR][/QUOTE] Hi h0tr0d, Re-export from the game and they will now be saved as TTS files. If they're old EX files you need then download an old version of the editor (only the latest version has the TTS file change). If you down have an old version of the editor let me know and I'll post a link. Cheers, Hal
Link to comment
Share on other sites

[QUOTE=HAL9000;338121]Hi h0tr0d, Re-export from the game and they will now be saved as TTS files. If they're old EX files you need then download an old version of the editor (only the latest version has the TTS file change). If you down have an old version of the editor let me know and I'll post a link. Cheers, Hal[/QUOTE] Yeah I have a few older ones...bleh. I'll figure it out...hopefully. Vote h0tr0d 2016 -- we have a great figure
Link to comment
Share on other sites

You have a List all Blocks feature; is there a List all Entities? Also, when it lists X amount of X block; is there a way to find that block by the quantity? I have a 165 x null and would like to locate it in the prefab...it takes 10 seconds to switch 1 of 255 layers... Vote h0tr0d 2016 -- an entity unto himself
Link to comment
Share on other sites

Ok...need help. When I move the cursor over the concreteRampReinforced block I get an error: [QUOTE]Info: InvalidArgument=Value of '20' is not valid for 'SelectedIndex'. Parameter name=SelectedIndex[/QUOTE] as well as 22... Replacing the BlockId or changing the Block to another did not help...and it seems to occur with the brolke versions of that block also. is this a Meta issue? Vote h0tr0d 2016 -- pls halp
Link to comment
Share on other sites

[QUOTE=h0tr0d;338257]Ok...need help. When I move the cursor over the concreteRampReinforced block I get an error: as well as 22... Replacing the BlockId or changing the Block to another did not help...and it seems to occur with the brolke versions of that block also. is this a Meta issue? Vote h0tr0d 2016 -- pls halp[/QUOTE] Looks like you've discovered the rotation problem Mag told me about. Looks like some of the shapes in the world can rotate above the 16 types defined in the editor. I don't think this is meant to happen (I haven't seen any blocks with more than 16 valid rotations). I wrote a quick script for him to show where the errors are. [URL="http://www.vendocode.com/SDTDEditorAlpha.zip"]Here[/URL] is the latest version of the editor. It's not a proper release so things may be even buggier but you can find the rotation function at the bottom of the Prefab dropdown menu. It will tell you all the blocks that have an invalid rotation in all the prefab files. Just change the rotation to 0 or whatever you want to fix it. The latest version will also remove any out of bounds entities in the prefab. Cheers, Hal
Link to comment
Share on other sites

Archived

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

×
×
  • Create New...