WCCC_Construction
Constructing Entities, Constructed Languages

YonderVerseOfBlob
For this week's Creative Code challenge by @sableRaph: “Construction“, YonderVerseOfBlob is coded in SonicPi ,Python , LiveCodeLab & HydraVideoSynth. It plays on the theme of Construction by entering a reconstructed world of blobs (LiveCodeLab & HydraVideoSynth) with their own mini conlang (constructed language) made in Python .
Poetry
In the Lands, Outside of our Scope
Lies a verse that constructs outside of our tropes
With languages related to the elements
And blobs reconstructing their previous movements
The Yonderverse of Blobs
May render hope,
May glitchify its pixels
But would the output be vibes that can trickle?
Video
ConLang Table
Thunder Affiliated Words
#Two Syllables Words
['bee-dfd', 'yc-ax', 'ye-o', 'uxx-e', 'tdd-c', 'b-af', 'uxx-e', 'yxx-a', 'txx-ecd']
#Three Syllables Words
['odd-tee-tc', 'uxx-a-bdd', 'bc-ae-oee', 'oe-a-tff', 'bc-eae-u', 'ue-eee-bf', 'txx-f-e', 'bxx-af-c', 'bee-fex-off', 'bdd-f-u', 'b-ca-ae', 'b-e-yff', 'b-xce-x', 't-ef-ded']
Fire Affiliated Words
#Two Syllables Words
['cx-x', 'eed-c', 'ex-af', 'cc-fe', 'a-ae', 'e-ce', 'fee-ua', 'fe-a', 'ee-e', 'cd-u', 'a-f', 'ea-f', 'e-fd', 'fe-yc', 'eae-txx', 'c-d', 'ef-ydd', 'ca-d', 'ce-fe', 'ff-ee']
#Three Syllables Words
['cd-fad-a', 'e-x-fe', 'ed-oe-ef', 'fad-fa-c', 'efx-tf-ed', 'c-bc-bee', 'e-fd-fe', 'cx-c-a', 'fef-u-tee', 'c-ae-ee', 'eed-b-of', 'cx-x-c', 'a-f-t', 'af-bee-b', 'f-e-cd', 'ff-f-ed', 'ff-eee-fae']
Water Affiliated Words
#Two Syllables Words
['eed-c', 'd-ef', 'ex-af', 'e-ce', 'fee-ua', 'fe-a', 'ee-e', 'xed-bff', 'ea-f', 'd-udd', 'e-fd', 'fe-yc', 'eae-txx', 'ef-ydd', 'ff-ee']
#Three Syllables Words
['e-x-fe', 'ed-oe-ef', 'fad-fa-c', 'efx-tf-ed', 'e-fd-fe', 'fef-u-tee', 'eed-b-of', 'f-e-cd', 'ff-f-ed', 'd-a-fe', 'ff-eee-fae']
Code
Python (ConLang)
import random as rd
import re
#pattern to remove all non letters
pattern = r'[^a-zA-Z]'
v = ['a','c','e','f']
c = ['f','x','d', 'e']
f = ['o','y','t','u','b']
def wordChoice():
#letters in this conlang
v = ['a','c','e','f']
c = ['f','x','d', 'e']
f = ['o','y','t','u','b']
#Setting rules and structure to language : Letter combos
vc = [rd.choice(v),rd.choice(c)]
cvc = [rd.choice(c),rd.choice(v),rd.choice(c)]
vv = [[rd.choice(v),rd.choice(v)]]
c = [rd.choice(c)]
v = [rd.choice(v)]
f = [rd.choice(f)]
fv =[rd.choice(f),rd.choice(v)]
fcc =[rd.choice(f),rd.choice(c),rd.choice(c)]
syllables = [vc,cvc,vv,c,v,f,fv,fcc]
struct = [rd.choice(syllables)]
return str(struct)
# List of Words
wordList = []
'''
Making a 64 WordList
'''
def listing():
for i in range(16):
# turn it into words, removing the non letters
wordList.append(re.sub(pattern, '', wordChoice()) + '-' + re.sub(pattern, '', wordChoice()))
# 3 Syllables List
for i in range(16):
# turn it into words, removing the non letters, using extend to keep the content within one
wordList.append(re.sub(pattern, '', wordChoice()) + '-' + re.sub(pattern, '', wordChoice()) + '-' + re.sub(pattern, '', wordChoice()) )
listing()
listing()
# Elemental Structure by checking if an the starting word mataches one of the 3 lists and if true appends to a new list
fire = []
water = []
thunder = []
W_List = wordList
def elementalCheck(x,y):
for i in range(len(W_List)): #transverses the whole list
#check the starting word with each element in the list
for prefix in x :
if W_List[i].startswith(prefix) == True:
y.append(W_List[i])
elementalCheck(v,fire)
elementalCheck(c,water)
elementalCheck(f,thunder)
#Seperating by Syllables
thunder_two = []
thunder_three = []
fire_two = []
fire_three = []
water_two = []
water_three = []
for words in range(len(thunder)):
if len(thunder[words].split('-')) == 2:
thunder_two.append(thunder[words])
if len(thunder[words].split('-')) == 3:
thunder_three.append(thunder[words])
for words in range(len(fire)):
if len(fire[words].split('-')) == 2:
fire_two.append(fire[words])
if len(fire[words].split('-')) == 3:
fire_three.append(fire[words])
for words in range(len(water)):
if len(water[words].split('-')) == 2:
water_two.append(water[words])
if len(water[words].split('-')) == 3:
water_three.append(water[words])
LiveCodeLab - Pre Construction of the YonderVerse Blobs
simpleGradient yellow,orange,gold
ambientLight yellow
47 times with i
move i/1000, i/10000, i/10000
rotate i/1000,i/10000, wave(i/1000)
peg wave(i/50), wave(i/25), wave(i/100)*i/20
simpleGradient red,blue,violet
ambientLight green
47 times with i
move i/1000, i/10000, i/10000
rotate i/1000,i/10000, wave(i/1000)
peg wave(i/70), wave(i/125), wave(i/70)*i/20
simpleGradient black,maroon,yellow
ambientLight blue
47 times with i
move i/1000, i/10000, i/10000
rotate i/1000,i/10000, wave(i/1000)
peg wave(i/7), wave(i/25), wave(i/20)*i/20
HydraVideoSynth - First Construction
s0.initScreen()
src(s0).pixelate(55,55).colorama().out()
HydraVideoSynth - Second Construction
s0.initScreen()
src(s0).pixelate(55,55).colorama().blend(src(s0).scale(2.05)).scale(0.75).out()
SonicPi
live_loop :do do
use_random_seed Time.now.to_i / 2
with_fx :echo, mix: [0.65,0.45,0.75].choose do
with_fx :ixi_techno, mix: [0.15,0.35,0.57,0.74].tick do
use_bpm 30
sample [:bd_808,:drum_heavy_kick,:bd_klub].choose, amp: dice(5) if spread(5,8).tick
sleep [0.5,1,2].choose
end
end
end
live_loop :do1 do
use_random_seed Time.now.to_i / 4
with_fx :echo,decay: 0.75, mix: 0.65 do
with_fx :ixi_techno, mix: [0.15,0.35,0.57,0.74].choose do
use_bpm 30
sample [:bd_gas,:drum_snare_hard,:tabla_na_o ].choose, amp: dice(4) if spread(17,24).tick
sleep [0.25,0.5,1,2].choose
end
end
end




