Compare commits
18
Commits
13085d6cfe
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1d9b7cf133 | ||
|
|
d142151c06 | ||
|
|
c18cd4eead | ||
|
|
7fc93b1a9c | ||
|
|
e1255b7cbe | ||
|
|
a2fcccfaf6 | ||
|
|
c292ebd4f1 | ||
|
|
97b7b65356 | ||
|
|
d4fd0e4b8a | ||
|
|
8ea09980ee | ||
|
|
e2be6a728d | ||
|
|
f9c1338154 | ||
|
|
9034bfecf4 | ||
|
|
9d3b52193e | ||
|
|
7deb048135 | ||
|
|
ce3dd4e79f | ||
|
|
4f8da8e4a9 | ||
|
|
f14cc43bb2 |
@@ -11,24 +11,33 @@ jobs:
|
|||||||
- name: Checkout Code
|
- name: Checkout Code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Download and Install Ren'Py SDK
|
- name: Setup Ren'Py with Web Support
|
||||||
env:
|
uses: remarkablegames/setup-renpy@v1
|
||||||
RENPY_VERSION: "8.2.1" # Ensure this matches the version you built the game with
|
with:
|
||||||
|
version: '8.5.3'
|
||||||
|
web: true
|
||||||
|
|
||||||
|
- name: Install System Dependencies (OpenGL)
|
||||||
run: |
|
run: |
|
||||||
# Download and extract to the system's temporary directory to keep the workspace clean
|
# Install OpenGL dependencies needed by the Ren'Py executable
|
||||||
wget https://www.renpy.org/dl/${RENPY_VERSION}/renpy-${RENPY_VERSION}-sdk.tar.bz2
|
if command -v sudo >/dev/null 2>&1; then
|
||||||
tar -xjf renpy-${RENPY_VERSION}-sdk.tar.bz2 -C /tmp
|
sudo apt-get update && sudo apt-get install -y libgl1
|
||||||
mv /tmp/renpy-${RENPY_VERSION}-sdk /tmp/renpy-sdk
|
else
|
||||||
|
apt-get update && apt-get install -y libgl1
|
||||||
|
fi
|
||||||
|
|
||||||
- name: Build Web Distribution
|
- name: Build Web Distribution
|
||||||
run: |
|
run: |
|
||||||
# Execute the build from the /tmp directory, targeting your workspace root
|
# Execute the build from the /tmp directory, targeting your workspace root
|
||||||
/tmp/renpy-sdk/renpy.sh /tmp/renpy-sdk/launcher web_build $GITHUB_WORKSPACE $GITHUB_WORKSPACE/web-dist
|
mkdir -p $GITHUB_WORKSPACE/web-dist
|
||||||
|
renpy-launcher web_build $GITHUB_WORKSPACE --destination $GITHUB_WORKSPACE/web-dist
|
||||||
- name: Deploy to Gitea Pages
|
|
||||||
uses: peaceiris/actions-gh-pages@v3
|
- name: Deploy to Itch.io via Butler Action
|
||||||
|
uses: Ayowel/butler-to-itch@v1
|
||||||
with:
|
with:
|
||||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
butler_key: ${{ secrets.BUTLER_API_KEY }}
|
||||||
publish_dir: ./web-dist
|
itch_user: 'dynamitos'
|
||||||
publish_branch: pages
|
itch_game: 'visual-novel'
|
||||||
force_orphan: true
|
# Pushes to the web channel automatically
|
||||||
|
files: |
|
||||||
|
html5 web-dist
|
||||||
Vendored
+1
-1
@@ -5,6 +5,6 @@
|
|||||||
"**/*.rpymc": true,
|
"**/*.rpymc": true,
|
||||||
"**/cache/": true
|
"**/cache/": true
|
||||||
},
|
},
|
||||||
"renpyWarp.sdkPath": "/Users/dynamitos/Library/Application Support/Code/User/globalStorage/paisleysoftworks.renpywarp/file-downloader-downloads/8.5.3",
|
"renpyWarp.sdkPath": "/home/dynamitos/.config/Code - OSS/User/globalStorage/paisleysoftworks.renpywarp/file-downloader-downloads/8.5.3",
|
||||||
"renpyWarp.renpyExtensionsEnabled": "Enabled"
|
"renpyWarp.renpyExtensionsEnabled": "Enabled"
|
||||||
}
|
}
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 2.0 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.0 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.0 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.0 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.0 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.0 KiB |
+84
-70
@@ -1,8 +1,9 @@
|
|||||||
# The Iron Hollow — Chapter 1 PoC
|
# The Iron Hollow — Chapter 1 PoC
|
||||||
# Scene 2: Sara Arrives
|
# Scene 2: Sara Arrives
|
||||||
|
|
||||||
define sara = Character("Sara", color="#c8a882")
|
define sara = Character("Sara", color="#5acbd5")
|
||||||
define luno = Character("Luno", color="#82b4c8")
|
define thinking = Character("Sara", color="#1d9fa4", what_italic=True)
|
||||||
|
define luno = Character("Luno", color="#1b449d")
|
||||||
define narrator = Character(None)
|
define narrator = Character(None)
|
||||||
|
|
||||||
# ── Persistent flags ──────────────────────────────────────────────────────────
|
# ── Persistent flags ──────────────────────────────────────────────────────────
|
||||||
@@ -10,8 +11,6 @@ default checkpoint_set = False
|
|||||||
default rewind_used = False
|
default rewind_used = False
|
||||||
default purpose_chosen = False
|
default purpose_chosen = False
|
||||||
default silence_chosen = False # here Sara learns that Luno asks everyone the same question
|
default silence_chosen = False # here Sara learns that Luno asks everyone the same question
|
||||||
default timer_left = 20
|
|
||||||
default timer_max = 20
|
|
||||||
|
|
||||||
# ── Entry point ───────────────────────────────────────────────────────────────
|
# ── Entry point ───────────────────────────────────────────────────────────────
|
||||||
label start:
|
label start:
|
||||||
@@ -19,63 +18,63 @@ label start:
|
|||||||
with fade
|
with fade
|
||||||
|
|
||||||
"The Iron Hollow training yard sits inside a converted warehouse district. Stone walls, packed dirt, the smell of old metal and new sweat."
|
"The Iron Hollow training yard sits inside a converted warehouse district. Stone walls, packed dirt, the smell of old metal and new sweat."
|
||||||
"Sara takes it all in before she steps through the gate."
|
thinking "So this is where the Iron Hollow has its base."
|
||||||
|
|
||||||
show sara neutral at left
|
show sara neutral at left
|
||||||
with easeinright
|
with easeinright
|
||||||
|
|
||||||
"Two people are already here. A boy against the far wall, watching nothing. And a girl near the gate — moving like she already belongs."
|
thinking "Two others have arrived already. The boy over there is seems to know where to go, maybe I should ask him."
|
||||||
|
thinking "Looks like the other one noticed me."
|
||||||
|
|
||||||
show luno curious at right
|
show luno curious at right
|
||||||
with easeinright
|
with easeinright
|
||||||
|
|
||||||
"The girl notices Sara first."
|
|
||||||
jump luno_greeting
|
jump luno_greeting
|
||||||
|
|
||||||
label luno_greeting:
|
label luno_greeting:
|
||||||
luno "You're here for the recruitment?"
|
luno "You're here for the recruitment?"
|
||||||
sara "Yes. Where do I register?"
|
sara "Yes. Where do I register?"
|
||||||
luno "The man over at that table takes your name. Then we wait."
|
luno "The man over at that table takes your name. Then we wait."
|
||||||
|
thinking "Seems like she told him where to go."
|
||||||
luno "I'm Luno. Been here a few days already — helping with the wounded from last month's job. I know how things run here if you need anything."
|
luno "I'm Luno. Been here a few days already — helping with the wounded from last month's job. I know how things run here if you need anything."
|
||||||
"She doesn't say it like an offer. She says it like she's already taking notes."
|
thinking "That's a strong question right away."
|
||||||
luno "So. Money, glory, or are you just bored?"
|
luno "So. Money, glory, or are you just bored?"
|
||||||
jump choice_screen
|
jump choice_screen
|
||||||
|
|
||||||
label rewind_choice(continue_label=None):
|
label rewind_choice:
|
||||||
if checkpoint_set:
|
if not checkpoint_set:
|
||||||
show screen rewind_prompt
|
jump kaeros_arrives
|
||||||
menu:
|
|
||||||
"\[ Rewind \]":
|
show screen rewind_prompt
|
||||||
hide screen rewind_prompt
|
menu:
|
||||||
$ rewind_used = True
|
"[[ Rewind ]":
|
||||||
scene black
|
hide screen rewind_prompt
|
||||||
with dissolve
|
$ rewind_used = True
|
||||||
show screen teal_wash
|
scene black
|
||||||
"The world pulls back."
|
with dissolve
|
||||||
"Colour drains to teal. Sound slows to nothing."
|
show screen teal_wash
|
||||||
hide screen teal_wash
|
"The world pulls back."
|
||||||
scene bg training_yard
|
"Colour drains to teal. Sound slows to nothing."
|
||||||
with dissolve
|
hide screen teal_wash
|
||||||
show sara neutral at left
|
scene bg training_yard
|
||||||
show luno curious at right
|
with dissolve
|
||||||
"Sara is standing at the choice again. Luno's question still in the air."
|
show sara neutral at left
|
||||||
jump choice_screen
|
show luno curious at right
|
||||||
"\[ Continue \]":
|
thinking "Let's try this again."
|
||||||
hide screen rewind_prompt
|
jump choice_screen
|
||||||
jump scene_continues
|
"[[ Continue ]":
|
||||||
|
hide screen rewind_prompt
|
||||||
|
jump kaeros_arrives
|
||||||
|
|
||||||
label choice_screen:
|
label choice_screen:
|
||||||
show screen timer_bar
|
|
||||||
|
|
||||||
menu:
|
menu:
|
||||||
"Why are you here?"
|
"Why are you here?"
|
||||||
"\[ Create Checkpoint \]" if not checkpoint_set:
|
"[[ Create Checkpoint ]" if not checkpoint_set:
|
||||||
$ checkpoint_set = True
|
$ checkpoint_set = True
|
||||||
hide screen timer_bar
|
|
||||||
scene black
|
scene black
|
||||||
with dissolve
|
with dissolve
|
||||||
"A flash. Sara's hand, signing something. A contract. The ink is red."
|
"A flash. Sara's hand, signing something. A contract. The ink is red."
|
||||||
"It could mean anything."
|
|
||||||
scene bg training_yard
|
scene bg training_yard
|
||||||
with dissolve
|
with dissolve
|
||||||
show sara neutral at left
|
show sara neutral at left
|
||||||
@@ -84,22 +83,17 @@ label choice_screen:
|
|||||||
|
|
||||||
"For the money, like anyone.":
|
"For the money, like anyone.":
|
||||||
if rewind_used:
|
if rewind_used:
|
||||||
hide screen timer_bar
|
|
||||||
jump branch_money_post_rewind
|
jump branch_money_post_rewind
|
||||||
else:
|
else:
|
||||||
hide screen timer_bar
|
|
||||||
jump branch_money
|
jump branch_money
|
||||||
|
|
||||||
"To find something worth doing." if not purpose_chosen:
|
"To find something worth doing." if not purpose_chosen:
|
||||||
hide screen timer_bar
|
|
||||||
jump branch_purpose
|
jump branch_purpose
|
||||||
|
|
||||||
"I'd rather not say.":
|
"I'd rather not say.":
|
||||||
hide screen timer_bar
|
|
||||||
jump branch_silence
|
jump branch_silence
|
||||||
|
|
||||||
"\[ You asked the others the same thing, didn't you. \]" if checkpoint_set and silence_chosen:
|
"[[ You asked the others the same thing, didn't you. ]" if silence_chosen:
|
||||||
hide screen timer_bar
|
|
||||||
jump branch_sharp
|
jump branch_sharp
|
||||||
|
|
||||||
label branch_money:
|
label branch_money:
|
||||||
@@ -114,20 +108,18 @@ label branch_money:
|
|||||||
luno "They can be."
|
luno "They can be."
|
||||||
"She doesn't push. But her eyes stay on Sara for another moment"
|
"She doesn't push. But her eyes stay on Sara for another moment"
|
||||||
jump rewind_choice
|
jump rewind_choice
|
||||||
jump scene_continues
|
|
||||||
|
|
||||||
label branch_money_post_rewind:
|
label branch_money_post_rewind:
|
||||||
sara "Same reason as everyone else."
|
sara "Same reason as everyone else."
|
||||||
luno "Sure."
|
luno "Sure."
|
||||||
"Unremarkable. Fine."
|
thinking "Unremarkable. Fine."
|
||||||
"But when Sara finishes speaking, Luno's eyes linger — just a half-second longer than they should."
|
"But when Sara finishes speaking, Luno's eyes linger — just a half-second longer than they should."
|
||||||
show luno linger at right
|
show luno linger at right
|
||||||
"Not suspicion. Not quite. More like the feeling of reaching for something that moved."
|
"Not suspicion. Not quite. More like the feeling of reaching for something that moved."
|
||||||
show luno neutral at right
|
show luno neutral at right
|
||||||
"She shakes it off. Probably nothing."
|
thinking "Probably nothing."
|
||||||
"Sara knows it wasn't nothing."
|
"But it wasn't nothing."
|
||||||
jump rewind_choice
|
jump rewind_choice
|
||||||
jump scene_continues
|
|
||||||
|
|
||||||
label branch_purpose:
|
label branch_purpose:
|
||||||
$ purpose_chosen = True
|
$ purpose_chosen = True
|
||||||
@@ -138,16 +130,15 @@ label branch_purpose:
|
|||||||
sara "What did you expect?"
|
sara "What did you expect?"
|
||||||
luno "Something about honour. Or family legacy."
|
luno "Something about honour. Or family legacy."
|
||||||
show luno tilted at right
|
show luno tilted at right
|
||||||
luno "The clothes suggest a script."
|
luno "The clothes tell me nobility, and nobles are always on the look for honour."
|
||||||
show sara pained at left
|
show sara pained at left
|
||||||
sara "The script didn't survive."
|
sara "Honour is pointless when everyone is dead."
|
||||||
"She doesn't mean to say it. Too true. Too fast. Too much."
|
thinking "I said too much."
|
||||||
"She can feel it land — can feel Luno actually {i}looking{/i} at her now, not just watching."
|
"She can feel it land — can feel Luno actually {i}looking{/i} at her now, not just watching."
|
||||||
show luno soft at right
|
show luno soft at right
|
||||||
luno "...Yeah. I know that feeling."
|
luno "...Yeah. I know that feeling."
|
||||||
"Sara can step back. Give the safer answer. Luno will never know what she almost said."
|
thinking "I should go back. I told her way too much"
|
||||||
jump rewind_choice
|
jump rewind_choice
|
||||||
jump scene_continues
|
|
||||||
|
|
||||||
label branch_silence:
|
label branch_silence:
|
||||||
$ silence_chosen = True
|
$ silence_chosen = True
|
||||||
@@ -157,11 +148,10 @@ label branch_silence:
|
|||||||
luno "That's an answer too."
|
luno "That's an answer too."
|
||||||
"She's not unfriendly. But Sara just became a question mark in Luno's mental ledger."
|
"She's not unfriendly. But Sara just became a question mark in Luno's mental ledger."
|
||||||
jump rewind_choice
|
jump rewind_choice
|
||||||
jump scene_continues
|
|
||||||
|
|
||||||
label branch_sharp:
|
label branch_sharp:
|
||||||
sara "You asked him the same thing."
|
sara "You asked him the same thing."
|
||||||
"She nods toward Eron."
|
"She nods towards the guy who also arrived already."
|
||||||
sara "Before I arrived."
|
sara "Before I arrived."
|
||||||
"Luno goes still. Not alarmed — but recalibrating."
|
"Luno goes still. Not alarmed — but recalibrating."
|
||||||
show luno still at right
|
show luno still at right
|
||||||
@@ -177,29 +167,53 @@ label branch_sharp:
|
|||||||
"But her eyes are sharper now, not warmer."
|
"But her eyes are sharper now, not warmer."
|
||||||
show luno sharp at right
|
show luno sharp at right
|
||||||
jump rewind_choice
|
jump rewind_choice
|
||||||
jump scene_continues
|
|
||||||
|
|
||||||
label scene_continues:
|
label kaeros_arrives:
|
||||||
"Before the silence can settle, footsteps at the gate."
|
"Before the silence can settle, footsteps at the gate."
|
||||||
"Two more arrivals. The scene continues..."
|
show kaeros guarded at right
|
||||||
|
show mira curious at left
|
||||||
|
kaeros "Is this the Iron Hollow?"
|
||||||
|
luno "Looks like quite a few people are interested. You are at the right place."
|
||||||
|
luno "Why do you want to join the Hollow?"
|
||||||
|
mira "To protect people from evil---"
|
||||||
|
kaeros "To make some money. Have to live off something around here."
|
||||||
|
show mira timit at left
|
||||||
|
show luno laughing at right
|
||||||
|
luno "I see, you have you priorities in order."
|
||||||
|
show luno neutral at right
|
||||||
|
luno "I like that. I am Luno, I arrived a while a go. Give the man over there your names and wait."
|
||||||
|
sara "I am Sara, not sure what else to say."
|
||||||
|
kaeros "I am Kaeros, and this is Mira."
|
||||||
|
luno "She also just arrived you can register together."
|
||||||
|
scene black
|
||||||
|
with dissolve
|
||||||
|
scene bg table
|
||||||
|
show sara at left
|
||||||
|
show iron_hollow_mercenary at right
|
||||||
|
sara "The three of us are here to register."
|
||||||
|
"Iron Hollow Mercenary" "Tell me your names and blessing."
|
||||||
|
show mira excited at left
|
||||||
|
mira "I'm Mira, and I have a fire blessing. I can do a lot of things with it, like make bursts---"
|
||||||
|
show kaeros guarded at left
|
||||||
|
kaeros "I'm Kaeros, and I have a wind blessing."
|
||||||
|
kaeros "..."
|
||||||
|
"Iron Hollow Mercenary" "Alright, what about you?"
|
||||||
|
show sara at left
|
||||||
|
sara "My name is Sara, I have a wind blessing, but its really weak. My expertise is more with strategy."
|
||||||
|
"Iron Hollow Mercenary" "It's rare to have a strategist join a band of mercenaries. I hope you can at least hold your own in combat."
|
||||||
|
"Iron Hollow Mercenary" "I think fo-- five people are enough for now, grab Luno and that guy over there and we'll get started."
|
||||||
|
jump first_test
|
||||||
|
|
||||||
|
label first_test:
|
||||||
|
scene black
|
||||||
|
with dissolve
|
||||||
|
scene bg training_yard
|
||||||
|
"Iron Hollow Mercenary" "It's time to prove you worth. We are gonna start with a simple test, so everyone gets a feel for each other."
|
||||||
|
"Iron Hollow Mercenary" "One-on-one fights, but since we are an uneven number, one person will have to fight twice."
|
||||||
return
|
return
|
||||||
|
|
||||||
# ── Screens ───────────────────────────────────────────────────────────────────
|
|
||||||
|
|
||||||
screen timer_bar:
|
# ── Screens ───────────────────────────────────────────────────────────────────
|
||||||
zorder 10
|
|
||||||
timer timer_left action Hide("timer_bar")
|
|
||||||
vbox:
|
|
||||||
xalign 0.5
|
|
||||||
yalign 0.02
|
|
||||||
bar:
|
|
||||||
value AnimatedValue(timer_left, timer_max, 0.1)
|
|
||||||
xsize 400
|
|
||||||
ysize 14
|
|
||||||
text "Respond within [timer_left]s":
|
|
||||||
xalign 0.5
|
|
||||||
color "#c8c8c8"
|
|
||||||
size 18
|
|
||||||
|
|
||||||
screen rewind_prompt():
|
screen rewind_prompt():
|
||||||
zorder 10
|
zorder 10
|
||||||
|
|||||||
Reference in New Issue
Block a user