diff --git a/HARMONY.ink b/HARMONY.ink
index 0da489d..de83abb 100644
--- a/HARMONY.ink
+++ b/HARMONY.ink
@@ -1,5 +1,92 @@
=== HARMONY ===
-This is gonna take a lot of time to figure out. I need to build the architecture for this thing, and use all the variables to reveal what is available to players at given times. This also means that I'll need to make sure new community chats don't trigger until AFTER a performance. Hmm, the simplest way to do that is not to check all the variables, but to check the performance KNOT NAME plus the vocals stem for the stance.
+ + {community_allforall}[ALL FOR ALL]
+ -> ALL_FOR_ALL
+ + {community_freebirds}[FREEBIRDS]
+ -> FREEBIRDS
+ + {community_analogs}[ANALOGS]
+ -> ANALOGS
+ + {community_upgraders}[UPGRADERS]
+ -> UPGRADERS
+ + {community_whales}[UNDERWATER CITIZENS]
+ -> UNDERWATER_CITIZENS
+ + {community_robots}[BOTS4BOTS]
+ -> BOTS4BOTS
+
+ + [DMs BAND CHAT]
+ -> DMs_BAND_CHAT
+ + [DMs VEZ]
+ -> DMs_VEZ
+ + [DMs SKYLER]
+ -> DMs_SKYLER
+ + [DMs MICAH]
+ -> DMs_MICAH
+ + [DMs FERN]
+ -> DMs_FERN
+
+ + [EXIT]
+ ->->
+
+=== ALL_FOR_ALL ===
-->->
\ No newline at end of file
+{L0_song == "Whale Song": //human only lyrics
+ The entire All For All community loves this song! It’s such a bop! What a great welcome song for the whales!
+ Though someone overheard one of those self-righteous Analogs grousing that Vez should have sang in Whaleish, but they think Vez and {band_name}'s performance was perfect!
+ Muhammad Smith (bureaucritic) posts a glowing review of the song and writes that humans are open to listening to whale songs, but haven’t committing to appointing a whale bureaucritic. They’re not saying "no", they’re just saying "not yet".
+- else: //Whaleish lyrics
+ They all believe in total equality for all sentient beings while respecting other beings’ unique cultures, but Whaleish is so hard and they haven’t learned how to speak it.
+ Because of that, it was impossible to sing along to the chorus! Such a bummer because All For All LOVES singing along at concerts.
+ //NOTE: This can't be seen in Level 0 since the Whaleish lyrics don't unlock the "All For All" community, but if players unlock this community later, it'd be fun to read what All For All said about the Whaleish lyrics. But keep it very brief.
+}
+ -> HARMONY
+
+=== FREEBIRDS ===
+//NOTE: To keep things simple, the Freebirds didn't attend the Level 0 concert, so they don't need opinions on it.
+ -> HARMONY
+
+=== ANALOGS ===
+{L0_song == "Whale Song in Whaleish":
+ A couple Analogs gush/brag that they took Whaleish lessons with Vez!
+ Someone notes that the All For All'ers in the audience didn’t understand the Whaleish lyrics, but the Analogs helpfully gave them coupons for "Whaleish as a Second Language" lessons.
+ An Analogs Community Moderator shares quotes from Nancy Walker's (bureaucritic) review. It's very positive! And because of {band_name}'s song, the bureaucritics have approved adding a whale to their ranks - Baby Beluga.
+}
+
+ -> HARMONY
+
+=== UPGRADERS ===
+//NOTE: To keep things simple, the Upgraders didn't attend the Level 0 concert, so they don't need opinions on it.
+ -> HARMONY
+
+=== UNDERWATER_CITIZENS ===
+//Because this community only opens up for one song "Whale Song in Whaleish", we don't need to check the L0_song variable.
+The whales appreciated Vez singing in their language, even if Vez's intonation was a little off. At least Vez knows Whaleish and showed that Whaleish songs should be included in the Bandocracy.
+Whales are already singing Whale Song across the oceans, spreading the legend of a new band who dares to challenge the status quo! In less than an hour, the song reached a critical mass, and the government appointed its first ever whale bureaucritic - Baby Beluga.
+
+ -> HARMONY
+
+=== BOTS4BOTS ===
+
+ -> HARMONY
+
+
+=== DMs_BAND_CHAT ===
+//Place where the entire band can message each other. Vez could send out practice reminders. Fern could post inspirational "Go Team!" messages. Micah would drop news articles. Skyler could just send everyone emojis and selfies.
+ -> HARMONY
+
+//IDEA for the personal DMs, depending on how much time we have... could be funny to see older messages from before they were all in a band together. Simple for Vez to have blocked and erased Skyler, so their chat history could have a "reconnect" alert at the top. Whereas Skyler didn't delete all the old messages with Vez and players could read about and discover some details of their past relationship!
+=== DMs_VEZ ===
+
+ -> HARMONY
+
+=== DMs_SKYLER ===
+
+ -> HARMONY
+
+=== DMs_MICAH ===
+
+ -> HARMONY
+
+=== DMs_FERN ===
+
+ -> HARMONY
+
diff --git a/Level 0/PERFORM_WHALESONG.ink b/Level 0/PERFORM_WHALESONG.ink
index 5192ebd..e3ecad2 100644
--- a/Level 0/PERFORM_WHALESONG.ink
+++ b/Level 0/PERFORM_WHALESONG.ink
@@ -20,15 +20,15 @@
= WHALEISH_LYRICS
#PlayerControlUntil: SongDone, JumpToPath: PERFORM_WHALESONG.STAGE_CHATTER_WHALES
+ [Perform Whale Song with Whaleish lyrics]
- -> STAGE_CHATTER_WHALES
+ -> STAGE_CHATTER_ICONOCLASTS
= HUMAN_LYRICS
#PlayerControlUntil: SongDone, JumpToPath: PERFORM_WHALESONG.STAGE_CHATTER_HUMANS
+ [Perform Whale Song with only human-language lyrics]
- -> STAGE_CHATTER_HUMANS
+ -> STAGE_CHATTER_IDEALISTS
-= STAGE_CHATTER_WHALES
-//NOTE: Heather fears that on-stage comments that are not voiced will seem weird after hearing the song performed. Discuss with team soon, because if we take these out, I need to know. Though Mir will probably suggest testing it.
+
+= STAGE_CHATTER_ICONOCLASTS
FERN: We love you, whales!
@@ -36,7 +36,7 @@ VEZ: (in Whaleish) Welcome to the Bandocracy! #PlaySound: Whaleish_welcom
-> POSTSHOW_WHALESONG
-= STAGE_CHATTER_HUMANS
+= STAGE_CHATTER_IDEALISTS
SKYLER: Yeah! Rock on!
diff --git a/Level 0/POSTSHOW_WHALESONG.ink b/Level 0/POSTSHOW_WHALESONG.ink
index 043ecd6..743f670 100644
--- a/Level 0/POSTSHOW_WHALESONG.ink
+++ b/Level 0/POSTSHOW_WHALESONG.ink
@@ -11,40 +11,85 @@ AKAI: LET'S GET WASTED!
VEZ: I think Akai means "great first show!"
-AKAI: I never said you were great. But the crowd did love it.
+AKAI: I never said you were great. But half the crowd seemed to love it.
-Band talks about their performance and which fan communities showed up.
+{L0_song == "Whale Song in Whaleish":
+ ~ community_analogs = true
+ ~ community_whales = true
+ SKYLER: Told you Whaleish wouldn't connect with the fans.
+
+ FERN: Not true! We've been invited to not one but TWO communities on Harmony!
+
+ AKAI: WOOO! BUST OUT THE PREMIUM OIL!
+
+ AKAI: For me. You all can drink champagne or whatever.
+
+ MICAH: Which communities?
-{vocals_whalesong == "Whaleish":
- -> BAND_OF_REBELS
- else:
- -> BAND_OF_THE_PEOPLE
+ ~ community_allforall = true
+ SKYLER: What're you talking about? Everybody was grooving along, even the whales and those unplugged weirdos.
+
+ VEZ: The Analogs aren't weird.
+
+ FERN: No, but even though they liked the song, they were disappointed Vez didn't sing any of the lyrics in Whaleish.
+ FERN: And they told the whales that Vez knows Whaleish, so then the whales were disappointed too.
+
+ MICAH: How do you know that?
+
+ FERN: I read it on Harmony! All For All invited us to their community and they're pretty big gossips.
+
+ SKYLER: What else are they saying?
}
-= BAND_OF_REBELS
-If the song lyrics were in Whaleish, they gained fans from the Naturals community and the Water-Dwellers!
+FERN: Go see for yourself!
+#ShowHarmonyButton
+//The above command was #ShowCameraControls in Cursed Café and I think we use the same command structure here to show the Harmony button for the first time. After this, the Harmony button will always be available to the player, but for the first time, I think we should make sure they click it. Hence, why I've added the #PlayerControlUntil command next...
-For Level 0, band member (probably Fern) explains how they know this - they were invited to the Naturals and the Water-Dweller communities on Harmony!
-
-KEYBOARDIST: Everyone is so happy! I knew they'd love Whale Song.
-KEYBOARDIST: Whales are on social. Maybe they hired someone with thumbs.
-
+#PlayerControlUntil: ExitHarmony, JumpToPath: POSTSHOW_WHALESONG.EXIT
+ [HARMONY]
- -> HARMONY ->
- + [Continue post-show chat]
- -
+ //Players can click on the "Harmony" button to see the communities they now have access to.
+ -> HARMONY -> EXIT
+ //In this ink script, Harmony is its own file that acts like a "tunnel", meaning it points back to wherever the player came from.
+
+= EXIT
+
+
+{vocals_whalesong == "Whaleish":
+ -> ICONOCLASTS
+
+- else:
+ -> IDEALISTS
+}
+
+= ICONOCLASTS
+
+FERN: The Analogs - they were super impressed that Vez sang in Whaleish!
+
+VEZ: Nice. Lots of Analogs learn Whaleish. A bunch of them were in my class.
+
+FERN: And the Underwater Citizens!
+
+SKYLER: The whales? How'd they get on Harmony? Hire someone with thumbs?
KEYBOARDIST: Inspiring people is... so inspiring! I'm totally signing up for Whaleish lessons!
Plus, they've already heard rumours about how their song is already affecting the world!
+end of scene = the band's first song has everyone thinking they're iconoclasts
+
+Sets up context (based on world outcome band stance) for the next Song Choice.
+
+
-> PROGRESS
-= BAND_OF_THE_PEOPLE
+= IDEALISTS
If the song lyrics were in human language only, they gained fans from the All For All community! And criticism from the Naturals who think they should have included Whaleish lyrics.
Plus, they've already heard rumours about how their song is already affecting the world!
+end of scene = the band's first song has everyone thinking tey'e iconoclasts
+
Sets up context (based on world outcome band stance) for the next Song Choice.
-> PROGRESS
diff --git a/Level 0/PRACTICE_WHALESONG.ink b/Level 0/PRACTICE_WHALESONG.ink
index 5c38ed9..2520fa0 100644
--- a/Level 0/PRACTICE_WHALESONG.ink
+++ b/Level 0/PRACTICE_WHALESONG.ink
@@ -215,65 +215,70 @@ AKAI: I've already created two complete percussion tracks. You humans will need
VEZ: Yeah, I was playing around, but I don't think my pronunciation was right.
}
+VEZ: And I don't want my shoddy Whaleish to offend the whales.
+
+ MICAH: The whales will appreciate that you tried.
SKYLER: (laughs) And everyone else will just think you're possessed!
Everyone glares at Skyler.
- SKYLER: What? Nobody jokes about being possessed by a whale ghost anymore?
+ SKYLER: What? Nobody jokes about being possessed by whale ghosts anymore?
MICAH: That was never a thing.
FERN: I know you're being mean, Skyler, but you've actually given Vez a compliment!
FERN: Vez's Whaleish is so good it sounds exactly like a whale!
+
+ SKYLER: You're missing the point...
+ FERN: Maybe we can invite a whale to be a guest vocalist.
VEZ: Oh really? You think we should have a token whale in our band?
- Awkward moment with Fern's idol! As per Mir's suggestion.
+ ++ FERN: No!
+ FERN: That's not what I meant.
+
+ ++ FERN: Yes?
+ FERN: ... But not if you don't.
+ --
+
+ SKYLER: It doesn't matter because...
-
- //revise everything below too...
-SKYLER: But most people at the show won't understand Whaleish.
+
+SKYLER: Most people don't know Whaleish. Why sing lyrics the fans won't understand?
AKAI: MAKE THEM LEARN!
MICAH: Truth. It's way past time humans stop forcing others to assimilate as a condition of inclusion.
-VEZ: I agree with you, but this song's message is more for humans than whales.
+VEZ: I agree with that, but - and it pains me to say this - Skyler has a point.
+VEZ: Humans need to get this song's message, not the whales.
-SKYLER: Yeah. And Whaleish might confuse people.
+AKAI: REALITY CHECK! If only some of the lyrics are in Whaleish, humans will still get the message.
-MICAH: Or give them an excuse to not understand the message.
-
-VEZ: I only put some of the lyrics in Whaleish. People can still get the message.
-
-FERN: Sing it in Whaleish! It'll make a big SPLASH! Haha!
+FERN: Yes! Sing some Whaleish! It'll make a big SPLASH! Haha!
MICAH: Easy on the puns, kid. I almost laughed.
+MICAH: But I think your point is that we can't welcome the whales to the Bandocracy if we don't speak their language.
+
+FERN: (starstruck) Wow, yes! Oh my gosh.
+
+ + FERN: Do we share the same musical soul?!
+
+ MICAH: Slow down, kid. It's our first practice.
+
+ + FERN: You are so wise!
+
+ MICAH: That's just a nicer way of saying "old".
+ MICAH: I'll take it.
+ -
VEZ: So, are we changing the song? Or going with what we've got?
-
-> SONG_DONE_L0
=== SONG_DONE_L0 ===
#UI: practice/song_created
-//The Bandocracy UX Storyboard shows the characters' moods towards each song stance, but because the song isn't set in stone yet, I decided not to put these in as variables. Plus, the variables are cumulative over the course of the game. Instead, I propose using Hashtags to display how the characters feel for each version. UI also had a little dialogue bubble beside each, so I put that in too.
-
-{vocals_whalesong == "Whaleish":
- AKAI: KEEP IT! #Mood+
- SKYLER: Change it. #Mood-
- VEZ: I don't know... #Mood=
- FERN: Love it! #Mood+
- MICAH: Doesn't matter. #Mood=
-- else:
- AKAI: TRASH IT! #Mood-
- SKYLER: Keep it. #Mood+
- VEZ: I don't know... #Mood=
- FERN: Boo. #Mood-
- MICAH: Doesn't matter. #Mood=
-}
+ {not EDIT_WHALESONG}[EDIT SONG]
-> EDIT_WHALESONG
@@ -326,10 +331,12 @@ VEZ: So, are we changing the song? Or going with what we've got?
+ [PLAY STEM A] #Mood+
~ guitar_whalesong = "Human"
+ #PlayMusic: guitar_whalesong_human
SKYLER: Rocking guitar solo for ME!
-> STEMS_GUITAR
+ [PLAY STEM B]
~ guitar_whalesong = "Whaleish"
+ #PlayMusic: guitar_whalesong_whaleish
SKYLER: Whaley guitar for the CAUSE!
-> STEMS_GUITAR
+ [PREVIOUS CHARACTER]
@@ -343,12 +350,14 @@ VEZ: So, are we changing the song? Or going with what we've got?
#UI: practice/vocals_playing
+ [PLAY STEM A]
- ~ vocals_whalesong = "Human"
- VEZ: A clear message for all!
+ ~ vocals_whalesong = "Human"
+ #PlayMusic: vocals_whalesong_human
+ VEZ: A clear message everyone can understand!
-> STEMS_VOCALS
+ [PLAY STEM B]
~ vocals_whalesong = "Whaleish"
- VEZ: Acculturation not assimilation!
+ #PlayMusic: vocals_whalesong_whaleish
+ VEZ: Whaleish to welcome the whales!
-> STEMS_VOCALS
+ [PREVIOUS CHARACTER]
-> STEMS_GUITAR
@@ -363,10 +372,12 @@ VEZ: So, are we changing the song? Or going with what we've got?
+ [PLAY STEM A] #Mood-
~ keys_whalesong = "Human"
+ #PlayMusic: keys_whalesong_human
FERN: This sounds good no matter what lyrics Vez chooses.
-> STEMS_KEYS
+ [PLAY STEM B] #Mood+
~ keys_whalesong = "Whaleish"
+ #PlayMusic: keys_whalesong_whaleish
FERN: Whaley harmonics to go with Whaleish lyrics.
-> STEMS_KEYS
+ [PREVIOUS CHARACTER]
@@ -380,17 +391,19 @@ VEZ: So, are we changing the song? Or going with what we've got?
#UI: practice/bass_playing
+ [PLAY STEM A]
- ~ bass_whalesong = "Human"
+ ~ bass_whalesong = "Human"
+ #PlayMusic: bass_whalesong_human
MICAH: Keep it simple. For the people.
-> STEMS_BASS
+ [PLAY STEM B]
~ bass_whalesong = "Whaleish"
+ #PlayMusic: bass_whalesong_whaleish
MICAH: Make it deep. For the whales.
-> STEMS_BASS
+ [PREVIOUS CHARACTER]
-> STEMS_KEYS
+ [NEXT CHARACTER]
- -> STEMS_GUITAR
+ -> STEMS_DRUMS
+ [EXIT]
-> EDIT_WHALESONG
\ No newline at end of file
diff --git a/MAIN_Bandocracy.ink b/MAIN_Bandocracy.ink
index 20dead0..267f3e8 100644
--- a/MAIN_Bandocracy.ink
+++ b/MAIN_Bandocracy.ink
@@ -44,6 +44,7 @@ VAR song_stance_iconoclasts = 0
VAR song_stance_average = 0
/* Set song_stance_average in script like this:
~ song_stance_average = song_stance_idealists + song_stance_iconoclasts
+ Won't need this until Level 2, after the band has played 2 songs.
*/
VAR band_vision = "" // "Idealists", "Iconoclasts", "Middling"
/* Set band_vision by checking the song_stance_average:
@@ -102,6 +103,15 @@ VAR keys_moodtattoo = ""
VAR bass_moodtattoo = ""
+// *** HARMONY COMMUNITIES ***
+
+VAR community_allforall = false
+VAR community_freebirds = false
+VAR community_analogs = false
+VAR community_upgraders = false
+VAR community_whales = false
+VAR community_robots = false
+
=== PLAY_GAME ===
* [PLAY NEW GAME]