[LG V30 Questions & Answers] Nihilian:
I know this question was asked awhile ago, but I faced a similar issue with my LG Stylo 3 and want to report my findings. First off, Theme Park is available as a web application on LG's SmartWorld developer page http://us.lgworld.com/web.main.dev. However, I think you'll find its customizability to be severely disappointing. In fact, themes created using this are not even compatible with newer LG phones. The schema used for newer models is Home Theme+ (this is what my Stylo uses, and I assume it is what the V30 uses as well). I have scoured LG's dev site and could not find a straightforward way to develop Home Theme+, but it is possible and not super hard, albeit it can be time consuming. It will definitely help if you have some experience with Android app development (my personal experience is limited), however, no programming is necessary. You really only need to know how to edit XML/JSON files, and how to compile/decompile an Android app (there is a fantastic tool for this called apktool, created by Ryszard Wiśniewski and Connor Tumbleson which I will link to).

Tools Needed:

Apktool https://ibotpeaches.github.io/Apktool/

Apksigner (part of the Android SDK build tools) https://developer.android.com/studio/command-line/apksigner.html

Efficient way to create/edit XML and PNG files

Alternatively you could use Android Studio, which honestly might simplify the process.

I have provided a template for creating Home Theme+ themes here. This is just the preinstalled LG High Constrast theme which provides a great outline of what a theme should consist of. Use apktool to easily decompile it.

After spending hours of tweaking I was able to retheme the High Contrast app and brand it as my own. It honestly isn't too complicated, however, there is a LOT of settings, so it'll be up to you to figure out the specifics of what you need to edit in order to create your theme. Here is the general layout of what a Home Theme+ theme must consist of:

Inside the root directory there are 4 items:

assets (This is where the meat of your theme will go)

lib (Contains a dummy file. You can safely exclude this from your application.)

res (Contains basic drawables, preview images, and your application's title.)

AndroidManifest.xml (Important information about your application)

AndroidManifest

I'll start from the bottom up. If you're following a template, there are only a few things you'll need to change in the AndroidManifest. Find the <manifest> tag and edit the "package" attribute to your desired package name. It should be something like "com.your_company.theme.name_of_theme", where "your_company" and "name_of_theme" can be whatever you like. You'll also want to edit the <meta-data> "android:value" and <activity> "android:name" attributes to reflect this (Optionally, you can just set the <activity> "android:name" attribute to ".MainActivity"). Save and close this file, but be sure to remember the package name because you'll need to use it later.

res

Inside this folder are three others:

drawable-xhdpi-v4 - Contains PNG images of the Theme's preview (you can add additional preview images if you want) and the home and lockscreen wallpapers you would like to set. Follow the same naming conventions as listed in the template.

values - Two files: public.xml Lists everything in the res folder that the compiler should expect. If you add/remove preview images or wallpapers, you'll want to account for them in here. The "id" attribute for each tag can be an arbitrary value as long as it is unique. Go ahead an open this up and delete the tags named "app_info" and "app_tag". You won't need them. strings.xml contains your theme's name (this is how it will be displayed in the theme picker).

xml - Contains additional meta-data. Delete it. You won't need it.

assets

Here's where the fun begins. There are a few things in here, however, I will only go over what's in the overlays. Custom fonts and sound effects are completely optional, but feel free to mess around with those if you desire. The theme_info.json file is essentially a list of which applications you want to apply the theme to. Go ahead and open it and delete the "id" key/value pair. Now open the overlays folder. Inside here are a bunch of APK files. This modular setup makes it easy to pick and choose where you want to apply the theme. I'm not going to go over all of them, as their names are pretty self explanatory, but go ahead and decompile the one ending with ".common.apk". This package contains the theming for much of your general UI (such as status bar, navigation bar, text color, etc). Inside, you'll see a similar file structure as before, including an AndroidManifest and a res folder. Note: the smali folder is completely optional, and if you don't know what smali is you can safely ignore/delete this folder. First item of business is editing the AndroidManifest so that it matches your previously defined package name. You'll also want to add this tag somewhere inside it: "<uses-permission android:name="com.lge.permission.LGE_OVERLAY_THEME_APK"/>". This grants proper permission to modify system app themes. Now pop a look into the res folder. Its contents should look familiar. The multiple "xhdpi" folders all contain the same stuff, but target different resolutions. You can read more about them here. Basically the drawable-xxhdpi folders contain PNGs of various system wide UI elements (or app specific in the case of any of the other overlays). The values folder without an appended "hdpi" contains a public.xml, which functions exactly the same as previously mentioned. And the values-xxhdpi folders contain various settings for a specific resolution. I'll leave it up to you to play with them.

That's the basics of it! After recompiling an overlay APK, be sure to sign it or your theme will crash upon applying it (also be sure to sign your actual theme app with the same key). Read about the apksigner I linked to above for more info (I think Android Studio has an automatic way to sign apps with a key for debugging). Also be sure to update the theme_info.json file to list the package names of all the overlays you wish to apply.

Hopefully this helps someone. Let me know if you run into any trouble building or installing your APKs. As for what various settings do, you'll have to figure that part out on your own.

Happy theming! :)