| [TOOL] ddbtool [message #492061] | 
			Wed, 01 March 2017 12:13   | 
		 
		
			
				
				
				  | 
					
						
						saberhawk
						 Messages: 1068 Registered: January 2006  Location: ::1
						
	Karma: 0
 
					 | 
					General (1 Star)  | 
					 | 
		 
		 
	 | 
 
	
		Preset databases like objects.ddb are annoying. They are binary blobs that can only be viewed or edited with a buggy program that doesn't support versioning, merging, or even multiple people making changes at the same time. 
 
ddbtool improves on the situation by providing a Javascript environment for creating preset databases. It also generates optimized source code from any existing preset database. This won't be the original source code, but it's designed for merging and great for identifying changes.
		
	- 
	
 
	Attachment: ddbtool.zip
	 
	(Size: 313.23KB, Downloaded 275 times)
 
 
		
		
 |  
	| 
		
	 | 
 
 
 | 
	
		
		
			| Re: [TOOL] ddbtool [message #492062 is a reply to message #492061] | 
			Wed, 01 March 2017 12:37    | 
		 
		
			
				
				
				
					
						  
						dblaney1
						 Messages: 358 Registered: March 2014  Location: United States
						
	Karma: 0
 
					 | 
					Commander  | 
					 | 
		 
		 
	 | 
 
	
		Is this compatable with 4.x ddbs? I tried to use it with one and it decompiles fine but when trying to make the js back into a ddb it fails with this message. 
 
Error: const limit (line 150839) 
        objects.js:150839 
        duk_js_compiler.c:1923
		
		
		[Updated on: Wed, 01 March 2017 12:37] Report message to a moderator  
 |  
	| 
		
	 | 
 
 
 | 
	| 
		
 | 
	
		
		
			| Re: [TOOL] ddbtool [message #492064 is a reply to message #492061] | 
			Wed, 01 March 2017 13:24    | 
		 
		
			
				
				
				
					
						  
						dblaney1
						 Messages: 358 Registered: March 2014  Location: United States
						
	Karma: 0
 
					 | 
					Commander  | 
					 | 
		 
		 
	 | 
 
	| 
		I didn't change anything in the JS file. Just exported it and then reimported it to go back to a ddb. The original ddb is just a pretty much stock objects.ddb I exported with the 4.3 leveledit.
		
		
		
 |  
	| 
		
	 | 
 
 
 | 
	
		
		
			| Re: [TOOL] ddbtool [message #492065 is a reply to message #492061] | 
			Wed, 01 March 2017 18:13    | 
		 
		
			
				
				
				  | 
					
						
						saberhawk
						 Messages: 1068 Registered: January 2006  Location: ::1
						
	Karma: 0
 
					 | 
					General (1 Star)  | 
					 | 
		 
		 
	 | 
 
	| 
		While 4.3 files are probably supported just fine, functions with a large number (like 15k) of local variables seem to hit internal scripting engine limits. This was primarily developed and tested with much smaller preset databases. I'm investigating some workarounds which likely just means splitting the generated file up into more functions.
		
		
		
 |  
	| 
		
	 | 
 
 
 | 
	
		
		
			| Re: [TOOL] ddbtool [message #492066 is a reply to message #492061] | 
			Wed, 01 March 2017 18:58   | 
		 
		
			| 
				
	 | 
 
	
		I can confirm that 4.x/stock files should work with ddbtool, I put the effort in myself to make sure they are compatible. 
		
		
  Jonathan Wilson aka Jonwil 
Creator and Lead Coder of the Custom scripts.dll 
Renegade Engine Guru 
Creator and Lead Coder of TT.DLL 
Official member of Tiberian Technologies 
		
 |  
	| 
		
	 | 
 
 
 |