Plugin converter (initial release)

For discussion and help with the Construct 3 Plugin SDK

Post » Sun Apr 09, 2017 6:37 am

2017-08-12
*Fixed duplicate variadic placeholder - {...} - bug.
*Fails if AddFunctionNameParam() detected.
*PW: scirra
http://www.blackhornettechnologies.com/Construct3Stuff/SDK/C2C3AddonConverter_1_0_0_10.zip

2017-08-11
*Added missing variadic placeholder - {...}, if needed.
*PW: scirra
http://www.blackhornettechnologies.com/Construct3Stuff/SDK/C2C3AddonConverter_1009.zip

2017-08-09
*Dependencies added.
*PW: scirra
http://www.blackhornettechnologies.com/Construct3Stuff/SDK/C2C3AddonConverter_1008.zip

2017-06-05
*Added file-list developer data.
*Anything with dependencies, common.js code, or unsupported flags will no longer generate any output. This should make it clear that the conversion didn't work.
*PW: scirra
http://www.blackhornettechnologies.com/Construct3Stuff/SDK/C2C3AddonConverter_1007.zip

2017-05-25
*Fixed combo-param corruption.
*Support all 'deprecated' flags.
*(allow for wrong syntax of ef_none instead of cf_none)
http://www.blackhornettechnologies.com/Construct3Stuff/SDK/C2C3AddonConverter_1006.zip

2017-05-22
*Fixed bad Expression 'translated-name'.
*Convert <i> & <b> to new format.
*Fixed bad property conversion.
http://www.blackhornettechnologies.com/Construct3Stuff/SDK/C2C3AddonConverter_1005.zip

2017-05-20
*Behaviors added!
*Now enforces placeholder rules. C3 enforces a 1:1 rule on parameters and placeholders in the DisplayString. I now add any missing ones, and remove any extras. Not ideal, but better than nothing.
*Now allows deprecated ACEs. Display text is marked as DEPRECATED. Not ideal, but better than nothing.
*Null Versions are dealt with.

Still need to deal with code in common.js, and dependencies, but these can be hand edited if needed.
http://www.blackhornettechnologies.com/Construct3Stuff/SDK/C2C3AddonConverter_1004.zip

2017-04-16
*'Categories' supported.
*Cleanup - won't create any directory for skipped plugins (-noScirra)
http://www.blackhornettechnologies.com/Construct3Stuff/SDK/C2C3AddonConverter_1003.zip

[Moving lower post to OP]
2017-04-12
*Single-quotes are valid when encasing double-quotes.
*'text' properties must have a 'text' initial-value. C2 didn't enforce this.
*Decode, but warn of dependencies.
http://www.blackhornettechnologies.com/Construct3Stuff/SDK/C2C3AddonConverter_1002.zip

2017-04-09
http://www.blackhornettechnologies.com/Construct3Stuff/SDK/C2C3AddonConverter_1001.zip (updated already)
Password: scirra
(the password isn't for security, it is just an added step to prevent viruses attaching to the exe)
Requires: .NET 4.5

WARNING: this is not meant for casual users. Really, only SDK writers should use this as there is no guarantee it is complete, and if you install a plugin that has any kind of syntax error, you have to wipe the Application cache and/or the Browser cache! This means you loose any projects you've saved in local storage!

Usage:
-masterblaster inputDirectory outputDirectory
This lets you point the tool to one top level directory and it will process all plugins in that directory. (ie: C2/../plugins) Outputs to the output-directory.

-noScirra -masterblaster inputDirectory outputDirectory
Same thing but it will skip Scirra plugins. Good to try third-party plugins in your plugin directory.

inputDirectory outputDirectory
Processed a single plugin and outputs it to output-directory

inputDirectory outputDirectory "pluginCategory"
Processed a single plugin and outputs it to output-directory. Sets the plugin category in plugin.js to the specified value. Must be one of the values specified in the SDK manual.

No code is migrated, only the properties and ACE definitions. Language mappings are all uniquely identified. No extra (.js) files are added. I'm not sure how to support that yet.

Use the Visual Studio editor to check all JSON files. It points out errors before you upload them.

Example:
Code: Select all
C2C3AddonConverter.exe -noscirra -masterblaster "C:\Program Files\Construct 2\exporters\html5\plugins" "C:\C3pluginStagingArea\C3conversions"

Code: Select all
C2C3AddonConverter.exe "C:\C3pluginStagingArea\C2originals\bht_smart_random" "C:\C3pluginStagingArea\AutoGen\C3_bht_smart_random" "data-and-storage"


Remember: only non-drawing plugins will work (and now behaviors)! Support isn't there yet for drawing plugins (or effects).
(Note: I have successfully migrated my Smart Random demo, and my Tic-Tac-Toe (part 1), which uses my tic-tac-toe plugin and two Rex plugins. I have processed many more, but have not tested them).

[OP]
I am making good progress on a C2 to C3 plugin converter. There are still a lot of holes, so I'm not ready to release anything yet. Just wanted to let people know. Unfortunately C3 only supports non-drawing plugins, so it won't help most people yet. I'm working on "Rex's" format. He takes some liberties I hadn't counted on. ;)

(If anyone is desperate for my Smart Random plugin, it is done and working.)
Last edited by blackhornet on Sat Aug 12, 2017 3:51 pm, edited 14 times in total.
ImageImageImage
B
71
S
22
G
249
Posts: 3,763
Reputation: 138,577

Post » Sun Apr 09, 2017 9:01 am

Keep up good progress!
B
58
S
18
G
13
Posts: 447
Reputation: 10,740

Post » Sun Apr 09, 2017 11:17 am

Thank you!
Image
B
72
S
34
G
39
Posts: 433
Reputation: 25,020

Post » Sun Apr 09, 2017 6:31 pm

[Moved to OP]
Last edited by blackhornet on Thu Apr 13, 2017 12:40 am, edited 8 times in total.
ImageImageImage
B
71
S
22
G
249
Posts: 3,763
Reputation: 138,577

Post » Sun Apr 09, 2017 6:52 pm

I wonder how long till we get the rest of the sdk.
If it has to wait on the C3 runtime, then there will be some issues.
Image ImageImage
B
171
S
50
G
180
Posts: 8,396
Reputation: 113,986

Post » Thu Apr 13, 2017 12:40 am

v1.0.0.2 available.
ImageImageImage
B
71
S
22
G
249
Posts: 3,763
Reputation: 138,577

Post » Thu Apr 13, 2017 4:38 pm

Highly recommend this for all those c2 plugins to move their way over to c3. Hopefully those 3d plugins will come on over if not better ones be made.
Need custom controls, video & sound options, and a PC like menu system with screenshot manager?
Image
B
23
S
5
G
2
Posts: 40
Reputation: 2,629

Post » Sun Apr 16, 2017 5:37 pm

v1.0.0.3 available.
ImageImageImage
B
71
S
22
G
249
Posts: 3,763
Reputation: 138,577

Post » Mon Apr 17, 2017 2:48 am

Please keep developing!
My projects have many plugins! This accessory will be very useful to me. Thanks :D
B
68
S
17
G
2
Posts: 94
Reputation: 4,742

Post » Mon Apr 17, 2017 12:05 pm

Thanks for working on this, it's very handy for SDK users!
Scirra Founder
B
400
S
236
G
89
Posts: 24,546
Reputation: 195,461

Next

Return to Plugin SDK

Who is online

Users browsing this forum: No registered users and 0 guests