Do-it-Yourself
For those without the KLWP Pro Version / Key, you can recreate the theme by hand.
For those without the KLWP Pro Version / Key, you can recreate the theme by hand.
As the title says -- Do It Yourself. Follow instructions well and solve problems and try to understand how KLWP works. People have followed this and it worked out for them.
Also, because you don't have KLWP pro...
If you have understood all these, despite the scary looking red background and intimidating bullet points, carry on. At least you're saving ~$3?
/storage/emulated/0/Kustom/
)The theme is fixed to use three screens.
root
> Shape (Red Overlay)
> Image (Joker.png)
> Image (Makoto.png)
> Image (TopLayer.png)
> Image (PauseScreen.png)
> Shape (Album Outline)
> Image (/Kustom/bitmaps/music_cover)
> Overlap Group (Music Text)
>> Image (MusicBarOne.png)
>> Image (MusicBarTwo.png)
>> Text ($mi(title)$)
>> Text ($mi(album)$ $mi(artist)$ )
>> Progress (Music Playtime)
> Overlap Group (Location Bar)
>> Image (LocationBar.png)
>> Text ($li(addr)$)
Swipe to Background -> Bitmap
Tick the Bitmap checkbox and switch to Formula mode (press the Calculator icon on the upper-right, then the calculator icon next to Bitmap)
Enter this formula:
$(if(ai(isday),"file://storage/emulated/0/Kustom/p5-confidant/Day.png","file://storage/emulated/0/Kustom/p5-confidant/Night.png"))$
It should show the day / night version of the wallpaper based on your phone's time and location.
With your phone, copy the ##KUSTOMCLIP##
blocks from start to end, including the ##KUSTOMCLIP##
ends. Once you switch to KLWP, it should tell you that it imported the clipboard and a paste icon should appear on the upper-right. Copy and paste these components one at a time, then reorder them (see the Component Hierarchy above) so they look correctly.
Extra: You'll need the alewisdodi font in the internet. I wasn't able to bundle it with the p5-confidant folder.
##KUSTOMCLIP##
{
"clip_version": 1,
"clip_cut": [],
"clip_modules": [
{
"internal_type": "BitmapModule",
"internal_toggles": {
"bitmap_bitmap": 10,
"bitmap_blur": 0,
"bitmap_dim": 10,
"bitmap_filter": 10
},
"internal_formulas": {
"bitmap_bitmap": "$mi(cover)$",
"bitmap_blur": "",
"bitmap_dim": "$if(mi(state) \u003d \"PLAYING\",0,50)$",
"bitmap_filter": "$if(mi(state) \u003d \"PLAYING\",NONE,BW)$"
},
"internal_animations": [
{
"type": "SCROLL",
"action": "SCROLL",
"speed": 235.0,
"limit": 0.0,
"angle": 45.0,
"center": "FIRST"
},
{
"type": "GYRO",
"speed": 55.0,
"angle": 10.0,
"limit": 25.0
},
{
"type": "SCROLL",
"speed": 100.0,
"angle": 0,
"action": "ROTATE_INVERTED",
"amount": 55.0,
"center": "FIRST"
}
],
"internal_events": [
{
"type": "SINGLE_TAP",
"action": "MUSIC",
"music_action": "OPEN_APP"
}
],
"position_offset_y": 60.0,
"bitmap_width": 175.0,
"position_anchor": "BOTTOMLEFT",
"position_offset_x": 40.0,
"bitmap_rotate": 340.0,
"bitmap_rmode": "MANUAL",
"bitmap_blur": 0.0,
"bitmap_rradius": 0.0,
"internal_title": "Album Art"
}
]
}
##KUSTOMCLIP##
##KUSTOMCLIP##
{
"clip_version": 1,
"clip_cut": [],
"clip_modules": [
{
"internal_type": "ShapeModule",
"internal_animations": [
{
"type": "GYRO",
"speed": 55.0,
"angle": 10.0,
"limit": 25.0
},
{
"type": "SCROLL",
"speed": 235.0,
"angle": 45.0,
"center": "FIRST"
},
{
"type": "SCROLL",
"action": "ROTATE_INVERTED",
"amount": 55.0,
"center": "FIRST",
"speed": 100.0
},
{
"type": "LOOP_2W",
"action": "SCALE_INVERTED",
"amount": 1.0,
"duration": 8.0,
"ease": "NORMAL",
"internal_toggles": {
"amount": 10
},
"internal_formulas": {
"amount": "0.44"
}
}
],
"position_anchor": "BOTTOMLEFT",
"position_offset_x": 35.0,
"position_offset_y": 55.0,
"shape_width": 185.0,
"shape_rotate_mode": "MANUAL",
"shape_rotate_offset": 160.0,
"paint_color": "#6B000000",
"fx_bitmap_blur": 10.0,
"internal_toggles": {
"paint_color": 10
},
"internal_formulas": {
"paint_color": "$if(mi(state) \u003d PLAYING,bp(vibrant, mi(cover)),#00000000)$"
},
"internal_title": "Album Outline (Pulse)",
"shape_rotate_radius": 0.0
}
]
}
##KUSTOMCLIP##
##KUSTOMCLIP##
{
"clip_version": 1,
"clip_cut": [],
"clip_modules": [
{
"internal_type": "OverlapLayerModule",
"internal_animations": [
{
"type": "GYRO",
"speed": 65.0,
"limit": 45.0,
"angle": 5.0
},
{
"type": "SCROLL",
"speed": 325.0,
"center": "FIRST",
"action": "SCROLL_INVERTED"
},
{
"type": "SCROLL",
"action": "ROTATE",
"amount": 10,
"speed": 20.0,
"center": "FIRST"
}
],
"position_anchor": "BOTTOMLEFT",
"position_offset_x": 240.0,
"position_offset_y": 140.0,
"internal_title": "Music Text",
"viewgroup_items": [
{
"internal_type": "BitmapModule",
"position_padding_top": 125.0,
"bitmap_bitmap": "file://storage/emulated/0/Kustom/p5-confidant/MusicBarTwo.png",
"bitmap_width": 450.0
},
{
"internal_type": "BitmapModule",
"bitmap_bitmap": "file://storage/emulated/0/Kustom/p5-confidant/MusicBarOne.png",
"bitmap_width": 450.0
},
{
"internal_type": "TextModule",
"internal_animations": [
{
"type": "SCROLL",
"speed": 300.0
}
],
"position_offset_y": 140.0,
"text_expression": "$mi(title)$",
"text_size": 20.0,
"position_anchor": "CENTERLEFT",
"position_offset_x": 281.0,
"text_family": "kfile://org.kustom.provider/fonts/alewisdodi.ttf",
"paint_stroke": 2.0,
"position_padding_left": 50.0,
"position_padding_top": 0.0,
"position_padding_bottom": 10.0,
"text_size_type": "FIXED_WIDTH",
"text_width": 375.0,
"text_lines": 1.0,
"text_rotate_mode": "MANUAL",
"text_rotate_offset": 356,
"paint_color": "#FF000000"
},
{
"internal_type": "TextModule",
"internal_animations": [
{
"type": "SCROLL",
"speed": 300.0
}
],
"position_offset_y": 140.0,
"text_expression": "$mi(album)$\n$mi(artist)$",
"text_size": 20.0,
"position_anchor": "CENTERLEFT",
"position_offset_x": 281.0,
"text_family": "kfile://org.kustom.provider/fonts/alewisdodi.ttf",
"paint_stroke": 2.0,
"position_padding_left": 85.0,
"text_rotate_mode": "MANUAL",
"text_rotate_offset": 1.0,
"paint_color": "#FFFAFAFA",
"position_padding_top": 125.0,
"text_size_type": "FIXED_WIDTH",
"text_width": 360.0,
"text_lines": 3.0
},
{
"internal_type": "ProgressModule",
"position_padding_left": 70.0,
"position_padding_right": 1.0,
"position_padding_top": 0.0,
"position_padding_bottom": 9.0,
"position_anchor": "BOTTOM",
"progress_progress": "MUSIC",
"progress_mode": "SPLIT",
"progress_rotate_mode": "MANUAL",
"progress_rotate_offset": 359.0,
"style_shape": "RECT",
"style_size": 335.0,
"style_height": 3.0,
"internal_toggles": {
"color_fgcolor": 10,
"progress_rotate_offset": 10
},
"internal_formulas": {
"color_fgcolor": "$bp(vibrant, mi(cover))$",
"progress_rotate_offset": "358.5"
}
}
]
}
]
}
##KUSTOMCLIP##
##KUSTOMCLIP##
{
"clip_version": 1,
"clip_cut": [],
"clip_modules": [
{
"internal_type": "OverlapLayerModule",
"internal_title": "Location Bar",
"internal_animations": [
{
"type": "GYRO",
"speed": 40.0,
"limit": 40.0,
"angle": 0,
"action": "SCROLL"
},
{
"type": "SCROLL",
"speed": 240.0,
"angle": 0,
"center": "LAST"
},
{
"type": "SCROLL",
"action": "ROTATE",
"speed": 10,
"amount": 5.0,
"center": "LAST"
}
],
"position_anchor": "BOTTOMRIGHT",
"position_offset_x": 40.0,
"position_offset_y": 20.0,
"internal_events": [
{
"type": "SINGLE_TAP",
"action": "LAUNCH_APP",
"intent": "intent:#Intent;action\u003dandroid.intent.action.MAIN;category\u003dandroid.intent.category.LAUNCHER;component\u003dcom.google.android.apps.maps/com.google.android.maps.MapsActivity;S.org.kustom.intent.label\u003dMaps;end"
}
],
"viewgroup_items": [
{
"internal_type": "BitmapModule",
"position_anchor": "BOTTOM",
"position_offset_y": 60.0,
"bitmap_bitmap": "file://storage/emulated/0/Kustom/p5-confidant/LocationBar.png",
"bitmap_width": 500.0
},
{
"internal_type": "TextModule",
"internal_animations": [
{
"type": "SCROLL",
"speed": 250.0,
"angle": 0
}
],
"position_offset_x": 0.0,
"position_offset_y": 80.0,
"text_expression": "$li(addr)$",
"text_size": 24.0,
"text_family": "kfile://org.kustom.provider/fonts/alewisdodi.ttf",
"position_anchor": "BOTTOM",
"position_padding_top": 10.0,
"position_padding_bottom": 10.0,
"text_size_type": "FIXED_WIDTH",
"text_width": 460.0,
"text_lines": 1.0,
"text_align": "CENTER",
"text_rotate_mode": "MANUAL",
"text_rotate_offset": 357.0
}
]
}
]
}
##KUSTOMCLIP##
##KUSTOMCLIP##
{
"clip_version": 1,
"clip_cut": [],
"clip_modules": [
{
"internal_type": "ShapeModule",
"shape_type": "RECT",
"shape_width": 720.0,
"shape_height": 1280.0,
"paint_color": "#80FF0000",
"internal_title": "Red Overlay"
}
]
}
##KUSTOMCLIP##
##KUSTOMCLIP##
{
"clip_version": 1,
"clip_cut": [],
"clip_modules": [
{
"internal_type": "BitmapModule",
"internal_title": "Joker",
"internal_animations": [
{
"type": "SCROLL",
"action": "ADVANCED",
"animator": [
{
"position": 0,
"value": 0.0,
"property": "X_OFFSET",
"ease": "STRAIGHT"
},
{
"position": 100,
"value": -370.0,
"property": "X_OFFSET",
"ease": "STRAIGHT"
}
],
"speed": 200.0,
"center": "FIRST",
"anchor": "MODULE_CENTER",
"rule": "CENTER"
},
{
"type": "SCROLL",
"action": "FADE_INVERTED",
"center": "LAST",
"speed": 100.0,
"animator": [
{
"position": 0,
"value": 800.0,
"property": "X_OFFSET",
"ease": "STRAIGHT"
}
],
"amount": 100
}
],
"position_offset_x": 300.0,
"bitmap_bitmap": "file://storage/emulated/0/Kustom/p5-confidant/Joker.png",
"bitmap_width": 1325.0
}
]
}
##KUSTOMCLIP##
##KUSTOMCLIP##
{
"clip_version": 1,
"clip_cut": [],
"clip_modules": [
{
"internal_type": "BitmapModule",
"internal_title": "Confidant",
"internal_animations": [
{
"type": "SCROLL",
"action": "ADVANCED",
"animator": [
{
"position": 0,
"value": 0.0,
"property": "OPACITY",
"ease": "STRAIGHT"
},
{
"position": 0,
"value": 0.0,
"property": "X_OFFSET",
"ease": "STRAIGHT"
},
{
"position": 75,
"value": 0.0,
"property": "OPACITY",
"ease": "STRAIGHT"
},
{
"position": 100,
"value": 100.0,
"property": "OPACITY",
"ease": "STRAIGHT"
},
{
"position": 100,
"value": 285.0,
"property": "X_OFFSET",
"ease": "NORMAL"
}
],
"speed": 295
}
],
"position_offset_x": -260.0,
"position_offset_y": 220.0,
"bitmap_bitmap": "file://storage/emulated/0/Kustom/p5-confidant/Makoto.png",
"bitmap_width": 1100.0,
"position_anchor": "CENTERRIGHT",
"internal_toggles": {
"bitmap_mode": 0,
"bitmap_bitmap": 10,
"position_offset_x": 10
},
"internal_formulas": {
"bitmap_mode": "$gv(c_dir)$$gv(c_images,10,gv(cchoice))$",
"bitmap_bitmap": "$gv(c_dir)$$gv(c_images,10,gv(cchoice))$ ",
"position_offset_x": "$gv(c_cxoff,10,gv(cchoice))$"
}
}
]
}
##KUSTOMCLIP##
##KUSTOMCLIP##
{
"clip_version": 1,
"clip_cut": [],
"clip_modules": [
{
"internal_type": "BitmapModule",
"internal_title": "Joker Bottom",
"internal_animations": [
{
"type": "SCROLL",
"action": "ADVANCED",
"center": "FIRST",
"animator": [
{
"position": 0,
"value": 0.0,
"property": "X_OFFSET",
"ease": "STRAIGHT"
},
{
"position": 100,
"value": -370.0,
"property": "X_OFFSET",
"ease": "STRAIGHT"
}
],
"speed": 200.0
},
{
"type": "SCROLL",
"action": "FADE_INVERTED",
"center": "LAST",
"animator": [
{
"position": 0,
"value": 800.0,
"property": "X_OFFSET",
"ease": "STRAIGHT"
}
]
}
],
"position_anchor": "BOTTOM",
"position_offset_x": 300.0,
"position_offset_y": 0.0,
"bitmap_bitmap": "file://storage/emulated/0/Kustom/p5-confidant/TopLayer.png",
"bitmap_width": 1325.0
}
]
}
##KUSTOMCLIP##
##KUSTOMCLIP##
{
"clip_version": 1,
"clip_cut": [],
"clip_modules": [
{
"internal_type": "BitmapModule",
"internal_title": "Pause",
"internal_animations": [
{
"type": "SCROLL",
"action": "ADVANCED",
"animator": [
{
"position": 0,
"value": 0.0,
"property": "OPACITY",
"ease": "STRAIGHT"
},
{
"position": 0,
"value": 0.0,
"property": "X_OFFSET",
"ease": "STRAIGHT"
},
{
"position": 100,
"value": 100.0,
"property": "OPACITY",
"ease": "STRAIGHT"
},
{
"position": 100,
"value": 285.0,
"property": "X_OFFSET",
"ease": "STRAIGHT"
}
],
"speed": 295,
"center": "LAST"
}
],
"position_offset_x": 0.0,
"position_offset_y": 0.0,
"bitmap_bitmap": "file://storage/emulated/0/Kustom/p5-confidant/Pause.png",
"bitmap_width": 725.0
}
]
}
##KUSTOMCLIP##
These variables lets you choose the confidant of your choice with the theme.
Add these global variables in KLWP's Globals section.
10
(you're free to change this to who you want later)file://storage/emulated/0/Kustom/p5-confidant/
-500.00,-380,-260,-560.01,-360,-420.00,-560.02,-420.01,-500.01,-500.02,-520.00,-520.01,-420.02,-540,-460,-480.00,-480.01,-480.02,-500.03,-400,-440
Akechi.png,Ann.png,CarolineJustine.png,Chihaya.png,Futaba.png,Haru.png,Hifumi.png,Igor.png,Iwai.png,Kawakami.png,Makoto.png,Mishima.png,Morgana.png,Ohya.png,Ryuji.png,Sae.png,Shinya.png,Sojiro.png,Takemi.png,Yoshida.png,Yusuke.png
Now the Confidant should shift and change once you select a cchoice. If it doesn't, make sure that:
$gv(c_dir)$$gv(c_images,10,gv(cchoice))$
$gv(c_cxoff,10,gv(cchoice))$