Renegade Public Forums
C&C: Renegade --> Dying since 2003™, resurrected in 2024!
Home » Renegade Discussions » Mod Release Forum » [TOOL] ddbtool
[TOOL] ddbtool [message #492061] Wed, 01 March 2017 12:13 Go to next message
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 174 times)
Re: [TOOL] ddbtool [message #492062 is a reply to message #492061] Wed, 01 March 2017 12:37 Go to previous messageGo to next message
dblaney1 is currently offline  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 #492063 is a reply to message #492062] Wed, 01 March 2017 12:55 Go to previous messageGo to next message
saberhawk
Messages: 1068
Registered: January 2006
Location: ::1
Karma: 0
General (1 Star)
It should be, that sounds like it's hitting other limits in the scripting environment.
Re: [TOOL] ddbtool [message #492064 is a reply to message #492061] Wed, 01 March 2017 13:24 Go to previous messageGo to next message
dblaney1 is currently offline  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 Go to previous messageGo to next message
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 Go to previous message
jonwil is currently offline  jonwil
Messages: 3557
Registered: February 2003
Karma: 0
General (3 Stars)

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
Previous Topic: Dragonade 1.8.1
Next Topic: [MAP] Astrogade
Goto Forum:
  


Current Time: Wed Dec 11 16:11:55 MST 2024

Total time taken to generate the page: 0.00691 seconds