Compare commits

..
18 Commits
Author SHA1 Message Date
Dynamitos 1d9b7cf133 starting test scene
Build and Deploy Ren'Py Web / deploy (push) Successful in 22s
2026-06-20 00:44:12 +02:00
Dynamitos d142151c06 asdf
Build and Deploy Ren'Py Web / deploy (push) Successful in 30s
2026-06-18 21:01:55 +02:00
Dynamitos c18cd4eead Separate narrator and thinking
Build and Deploy Ren'Py Web / deploy (push) Successful in 28s
2026-06-18 20:50:52 +02:00
Dynamitos 7fc93b1a9c fixing rewind flow
Build and Deploy Ren'Py Web / deploy (push) Successful in 21s
2026-06-16 22:30:24 +02:00
Dynamitos e1255b7cbe removing timer
Build and Deploy Ren'Py Web / deploy (push) Failing after 25s
2026-06-16 21:50:12 +02:00
Dynamitos a2fcccfaf6 change channel to html5
Build and Deploy Ren'Py Web / deploy (push) Successful in 27s
2026-06-10 14:41:52 +02:00
Dynamitos c292ebd4f1 again
Build and Deploy Ren'Py Web / deploy (push) Successful in 27s
2026-06-10 14:40:32 +02:00
Dynamitos 97b7b65356 Fix deploy path
Build and Deploy Ren'Py Web / deploy (push) Failing after 28s
2026-06-10 14:34:50 +02:00
Dynamitos d4fd0e4b8a Use dedicated itch io butler action
Build and Deploy Ren'Py Web / deploy (push) Failing after 19s
2026-06-10 14:32:40 +02:00
Dynamitos 8ea09980ee update butler deploy destination
Build and Deploy Ren'Py Web / deploy (push) Failing after 26s
2026-06-10 12:15:54 +02:00
Dynamitos e2be6a728d using itch io butler
Build and Deploy Ren'Py Web / deploy (push) Failing after 25s
2026-06-10 12:13:38 +02:00
Dynamitos f9c1338154 use correct renpy launcher
Build and Deploy Ren'Py Web / deploy (push) Failing after 22s
2026-06-10 11:44:21 +02:00
Dynamitos 9034bfecf4 using setup renpy workflow
Build and Deploy Ren'Py Web / deploy (push) Failing after 35s
2026-06-10 11:42:29 +02:00
Dynamitos 9d3b52193e Create folder before web build
Build and Deploy Ren'Py Web / deploy (push) Failing after 46s
2026-06-10 11:37:09 +02:00
Dynamitos 7deb048135 Create web-dist folder
Build and Deploy Ren'Py Web / deploy (push) Failing after 41s
2026-06-10 11:32:19 +02:00
Dynamitos ce3dd4e79f Update .github/workflows/deploy.yml
Build and Deploy Ren'Py Web / deploy (push) Failing after 30s
2026-06-10 11:29:33 +02:00
Dynamitos 4f8da8e4a9 Fixing renpy command
Build and Deploy Ren'Py Web / deploy (push) Failing after 33s
2026-06-10 11:25:06 +02:00
Dynamitos f14cc43bb2 install renpy dependencies before renpy build
Build and Deploy Ren'Py Web / deploy (push) Failing after 37s
2026-06-10 11:22:38 +02:00
9 changed files with 109 additions and 86 deletions
+23 -14
View File
@@ -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 - name: Deploy to Itch.io via Butler Action
uses: peaceiris/actions-gh-pages@v3 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
+1 -1
View File
@@ -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
View File
@@ -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