— arcologies —

oh my fracken…ok…
it just keeps getting crazier!!!
:crazy_face:

1 Like

calling all brave souls - arc support is stable: https://github.com/tyleretters/arcologies/tree/v1.2.0

norns e1, e2, e3, and global bpm as well as orientation reset and almost all of the attribute animations are done (~29/32). structures, notes, and range aren’t complete yet. they are the final bosses…

5 Likes

You are going to make me want a damn arc Tyler! Saw some of the clips from your IG and the arc UI looks wonderfully alive

1 Like

I’ll be your best friend for osc arc support lolz. But yeah a lonely little iPad I have screaming for arc. :wink:

1 Like

@MatthewAshmore Did you try it with touchosc? TouchOSC templates for Grid and Arc

2 Likes

i’ll add osc support to the backlog :slight_smile:

1 Like

I forgot there was an arc page in that!!! I just use to use the grid! Forehead slap! Thanks

Made six speech samples with a tape dictaphone and plugin. Uploaded them to Norns for use in Crypts. Connected Norns midi to DAW
This was the result…

Seeking, hiding. Life, death. Time, no time.

A slow paced Arcologies adventure

3 Likes

i absolutely adore this. thank you for sharing. any chance you could share the map? :smiley:

1 Like

Thanks. I didn’t save the map unfortunately. I will endeavour to do this in the future.

2 Likes

all good! i’m always so curious how people build their compositions

1 Like

A faster map, arcologies is playing model cycles. Parts come in as institutions crumble, until kudzu eventually consumes it.

(edit to add the map)

15 Likes

this is flipping gorgeous. i had no idea what to expect and then around 29 seconds i was like :open_mouth:

EDIT: this map is so cool. i love how you used institutions everywhere. i’m especially curious about the cryptic casino in the northwest and the tunnels.

1 Like

Intermediate! I just signed up for the workshop before I read this and can barely switch the thing on. And it’s only on a 40h.

Ah well, how bad could it get?

2 Likes

WHOA! Holy shit. Yeah, this is great! Thanks for sharing.

2 Likes

v1.2.0 “arctangents & archangels”

  • NEW monome arc support. This allows you to map your arc to various controls: norns encoders 1-3, “browse cells”, change crypt directory, global transpose, BPM, and “danger zone” clock.sync(x). One interesting convention of note: encoders that “sparkle” will musically alter your arcology. Encoders that do not are “safe” and are reserved for tasks such as menu navigation. Map your arc encoders and set orientation via the norns parameters menu.

(the note select animation on arc is lame. it is going to be another week or two to get it to where i want it. alas. “good enough for metal” as we used to say.)

15 Likes

OMFG the arc is alive.

Just having a quick play with it now — I deeply appreciate being able to remap the arc controls! Curious to see what you do for the note select animation. Traffic is one of my favorite arc implementations for performance controls partly because of how it does transpose and modulate.

Other quick-and-shallow thoughts: Cell select feels great, didn’t know I that I wanted it but now it feels obvious. Noticing some arc animation slowdowns on the analysis page when scrubbing through structures, but I didn’t hear that affecting the audio or midi timing so I feel weird even mentioning it.

I love spending time in this script. Thank you.

Here’s a 100% reproducible (for me, norns shield) pset issue I’ve been meaning to send your way for a few minor versions now (apologies for late reporting): If I disable any structure(s) in Edit and save that as pset 01 so that it’s my default settings, I get error: init the next time I load the script. Only by deleting pset 01 will arcologies load again.

Matron messages during `error: init` load:
# script load: /home/we/dust/code/arcologies/arcologies.lua
### cleanup failed with error: /home/we/dust/code/arcologies/lib/_midi.lua:52: attempt to index a nil value (field 'devices')
# script clear
ERROR (i2c/hp) failed to write
including /home/we/dust/code/arcologies/lib/includes.lua
including /home/we/dust/code/arcologies/lib/config.lua
including /home/we/dust/code/arcologies/lib/structures.lua
including /home/we/dust/code/arcologies/lib/Cell.lua
including /home/we/dust/code/arcologies/lib/mixins/bearing_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/capacity_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/channel_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/charge_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/clockwise_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/crow_out_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/crumble_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/deflect_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/device_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/docs_stub_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/drift_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/duration_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/er_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/level_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/mapping_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/metabolism_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/network_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/notes_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/offset_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/operator_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/output_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/ports_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/probability_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/pulses_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/range_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/resilience_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/state_index_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/structure_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/territory_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/topography_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/turing_mixin.lua
including /home/we/dust/code/arcologies/lib/mixins/velocity_mixin.lua
including /home/we/dust/code/arcologies/lib/Signal.lua
including /home/we/dust/code/arcologies/lib/functions.lua
including /home/we/dust/code/arcologies/lib/saveload.lua
including /home/we/dust/code/arcologies/lib/_arc.lua
including /home/we/dust/code/arcologies/lib/_crow.lua
including /home/we/dust/code/arcologies/lib/counters.lua
including /home/we/dust/code/arcologies/lib/docs.lua
including /home/we/dust/code/arcologies/lib/filesystem.lua
including /home/we/dust/code/arcologies/lib/_grid.lua
including /home/we/dust/code/arcologies/lib/glyphs.lua
including /home/we/dust/code/arcologies/lib/graphics.lua
including /home/we/dust/code/arcologies/lib/keeper.lua
including /home/we/dust/code/arcologies/lib/menu.lua
including /home/we/dust/code/arcologies/lib/_midi.lua
including /home/we/dust/code/arcologies/lib/page.lua
including /home/we/dust/code/arcologies/lib/parameters.lua
including /home/we/dust/code/arcologies/lib/popup.lua
including /home/we/dust/code/arcologies/lib/_softcut.lua
including /home/we/dust/code/arcologies/lib/sound.lua
including /home/we/dust/code/arcologies/lib/api.lua
pset >> write: /home/we/dust/data/system.pset
# script run
loading engine: PolyPerc
>> reading PMAP /home/we/dust/data/arcologies/arcologies.pmap
Engine.register_commands; count: 7
___ engine commands ___
amp	 	f
cutoff	 	f
gain	 	f
hz	 	f
pan	 	f
pw	 	f
release	 	f
___ polls ___
amp_in_l
amp_in_r
amp_out_l
amp_out_r
cpu_avg
cpu_peak
pitch_in_l
pitch_in_r
# script init
pset >> read: /home/we/dust/data/arcologies/arcologies-01.pset
### SCRIPT ERROR: init
/home/we/dust/code/arcologies/lib/keeper.lua:403: attempt to index a nil value (field 'selected_cell')
stack traceback:
	/home/we/norns/lua/core/norns.lua:136: in metamethod '__index'
	/home/we/dust/code/arcologies/lib/keeper.lua:403: in method 'delete_all_structures'
	/home/we/dust/code/arcologies/lib/structures.lua:66: in method 'delete_disabled'
	/home/we/dust/code/arcologies/lib/parameters.lua:118: in field 'action'
	/home/we/norns/lua/core/params/option.lua:51: in function 'core/params/option.bang'
	/home/we/norns/lua/core/params/option.lua:36: in function 'core/params/option.set'
	/home/we/norns/lua/core/paramset.lua:389: in function 'core/paramset.read'
	/home/we/norns/lua/core/paramset.lua:408: in function 'core/paramset.default'
	/home/we/dust/code/arcologies/lib/parameters.lua:131: in field 'init'
	/home/we/dust/code/arcologies/arcologies.lua:17: in global 'init'
	/home/we/norns/lua/core/script.lua:105: in function 'core/script.init'
	[C]: in function 'xpcall'
	/home/we/norns/lua/core/norns.lua:137: in field 'try'
	/home/we/norns/lua/core/engine.lua:91: in function </home/we/norns/lua/core/engine.lua:89>

Thank you!
Realizing how many words it can take to describe one of these maps.

The casino in the nw corner is playing one of the melodies, getting photons from the tunnel in the ne corner. All the tunnels are on the same network, so it’s receiving a combination of what makes it into the other two. But the tunnel south of that casino is also receiving what the casino plays and bounces back out, so there’s a little bit of a feedback process happening.

Arcologies is amazing.

1 Like

v1.2.1

  • NEW Note select for arc is no longer lame.
  • FIX Resolve init error when loading pset’s with disabled structures.

v1.2.2

  • FIX .arcology save/load issues.

@Philternaut thanks for the bug report. it is fixed in this version! i cannot reproduce the arc slowdown you describe. if you can share instructions for how to make it happen please let me know.

i love that you love the script! do share artifacts!


@gimber :slight_smile: :slight_smile:

5 Likes

OK, I’m just the worst, I managed to break it enough to really show the slowdown, which actually is affecting the clock as well.

The caveat: This is the result after several randomized maps, and represents something no well-intentioned individual would voluntarily create!

  1. Load up the attached PROBLEMITE.arcology.
  2. Start it playing.
  3. Wait. For me after 20 seconds it’s pretty much bogged down every time.
  4. Notice clock slowing down and UI becoming less and less responsive, also affecting Norns buttons and encoders.
  5. If I delete the tunnels, this seems to resolve it?
  6. I resolve to create something nice to balance out this monstrosity. I’m so sorry for making arcologies cry :slightly_smiling_face:

In matron during slowdown: clock: ignoring resumption of canceled clock (no coroutine)

Norns Shield, Pi 3 B+, 3A power supply, with grid, arc, and iConnect mio connected, wifi is on; max observed CPU meter was 34%. Dunno if any of that is relevant.

PROBLEMITE.arcology (342.6 KB) PROBLEMITE.pset (1.3 KB)

3 Likes