Godot Version
tested on 4.3 and 4.4.1
Question
I’m trying to run a cli web export of my godot project but when I upload the project to itch.io the project doesn’t load and only shows $GODOT_HEAD_INCLUDE
. But if I export via the editor (Project → Export → Web preset-> export) I am able to upload that to itch.io and it loads the project successfully.
Picture of the cli export uploaded on itch.io:
I used the command ~/bin/godot-appimages/Godot_v4.3_linux.x86_64 --headless --path ~/workspace/test-game/10-game-challenge/3-frogger --export-debug Web ../../../game-export/3-frogger
which I made by looking at the godot commandline doc.
web export cli output
> ~/bin/godot-appimages/Godot_v4.3_linux.x86_64 --headless --path ~/workspace/test-game/10-game-challenge/3-frogger --export-debug Web ../../../game-export/3-frogger
Godot Engine v4.3.stable.official.77dcf97d8 - https://godotengine.org
savepack: begin: Packing steps: 102
savepack: step 2: Storing File: res://.godot/imported/2025-02-10-Frogger-game-tileset.png-d8c7bba77a1a6ab92d83b3e2dc061d67.ctex
savepack: step 2: Storing File: res://assets/Tilemap/2025-02-10-Frogger-game-tileset.png.import
savepack: step 7: Storing File: res://.godot/imported/2025-02-10-Frogger-game.png-0fa9ed92f655e90a432f84d7a652eb96.ctex
savepack: step 7: Storing File: res://assets/2025-02-10-Frogger-game.png.import
savepack: step 13: Storing File: res://.godot/exported/133200997/export-98b16e5f922f6e624cca47c780e847c2-car_enemy.scn
savepack: step 19: Storing File: res://enemy.gdc
savepack: step 25: Storing File: res://.godot/exported/133200997/export-ec12bd2205a8e44213188668d747d7fa-enemy.scn
savepack: step 31: Storing File: res://enemy_spawn_point.gdc
savepack: step 37: Storing File: res://.godot/exported/133200997/export-a00b7951087b003baca162fcc4a0a8ef-enemy_spawn_point.scn
savepack: step 43: Storing File: res://frog.gdc
savepack: step 49: Storing File: res://.godot/exported/133200997/export-fcda5e9fbbd5a4c23fd00cabb2450d76-frog.scn
savepack: step 54: Storing File: res://.godot/exported/133200997/export-fea0713142b841930983ffbbd953a486-gator_enemy.scn
savepack: step 60: Storing File: res://hud.gdc
savepack: step 66: Storing File: res://.godot/exported/133200997/export-f4cf891e5f7a93b93d9b27cfb8401ccb-hud.scn
savepack: step 72: Storing File: res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex
savepack: step 72: Storing File: res://icon.svg.import
savepack: step 78: Storing File: res://main.gdc
savepack: step 84: Storing File: res://.godot/exported/133200997/export-3070c538c03ee49b7677ff960a3f5195-main.scn
savepack: step 90: Storing File: res://water_log.gdc
savepack: step 96: Storing File: res://.godot/exported/133200997/export-10885b4166262d85ba4521238c053db1-water_log.scn
savepack: step 96: Storing File: res://car_enemy.tscn.remap
savepack: step 96: Storing File: res://enemy.gd.remap
savepack: step 96: Storing File: res://enemy.tscn.remap
savepack: step 96: Storing File: res://enemy_spawn_point.gd.remap
savepack: step 96: Storing File: res://enemy_spawn_point.tscn.remap
savepack: step 96: Storing File: res://frog.gd.remap
savepack: step 96: Storing File: res://frog.tscn.remap
savepack: step 96: Storing File: res://gator_enemy.tscn.remap
savepack: step 96: Storing File: res://hud.gd.remap
savepack: step 96: Storing File: res://hud.tscn.remap
savepack: step 96: Storing File: res://main.gd.remap
savepack: step 96: Storing File: res://main.tscn.remap
savepack: step 96: Storing File: res://water_log.gd.remap
savepack: step 96: Storing File: res://water_log.tscn.remap
savepack: step 96: Storing File: res://.godot/global_script_class_cache.cfg
savepack: step 96: Storing File: res://icon.svg
savepack: step 96: Storing File: res://.godot/uid_cache.bin
savepack: step 96: Storing File: res://project.binary
savepack: end
I am able to do a Linux export via cli and that does work. Command: ~/bin/godot-appimages/Godot_v4.3_linux.x86_64 --headless --path ~/workspace/test-game/10-game-challenge/3-frogger --export-debug Linux ../../../game-export/3-frogger
When I check the “3-Frogger.html” (what gets changed to index.html when uploaded to itch.io) I see that the broken cli web export has these godot vars like $GODOT_HEAD_INCLUDE
and $GODOT_PROJECT_NAME
vs the editor has real values there:
snippet of 3-Frogger.html from cli export
#status-notice {
background-color: #5b3943;
border-radius: 0.5rem;
border: 1px solid #9b3943;
color: #e0e0e0;
font-family: 'Noto Sans', 'Droid Sans', Arial, sans-serif;
line-height: 1.3;
margin: 0 2rem;
overflow: hidden;
padding: 1rem;
text-align: center;
z-index: 1;
}
</style>
$GODOT_HEAD_INCLUDE
</head>
<body>
<canvas id="canvas">
Your browser does not support the canvas tag.
</canvas>
<noscript>
Your browser does not support JavaScript.
</noscript>
<div id="status">
<img id="status-splash" src="$GODOT_SPLASH" alt="">
<progress id="status-progress"></progress>
<div id="status-notice"></div>
</div>
<script src="$GODOT_URL"></script>
<script>
const GODOT_CONFIG = $GODOT_CONFIG;
const GODOT_THREADS_ENABLED = $GODOT_THREADS_ENABLED;
const engine = new Engine(GODOT_CONFIG);
(function () {
snippet of 3-Frogger.html from editor export
#status-notice {
background-color: #5b3943;
border-radius: 0.5rem;
border: 1px solid #9b3943;
color: #e0e0e0;
font-family: 'Noto Sans', 'Droid Sans', Arial, sans-serif;
line-height: 1.3;
margin: 0 2rem;
overflow: hidden;
padding: 1rem;
text-align: center;
z-index: 1;
}
</style>
<link id="-gd-engine-icon" rel="icon" type="image/png" href="3-Frogger.icon.png" />
<link rel="apple-touch-icon" href="3-Frogger.apple-touch-icon.png"/>
</head>
<body>
<canvas id="canvas">
Your browser does not support the canvas tag.
</canvas>
<noscript>
Your browser does not support JavaScript.
</noscript>
<div id="status">
<img id="status-splash" src="3-Frogger.png" alt="">
<progress id="status-progress"></progress>
<div id="status-notice"></div>
</div>
<script src="3-Frogger.js"></script>
<script>
const GODOT_CONFIG = {"args":[],"canvasResizePolicy":2,"ensureCrossOriginIsolationHeaders":true,"executable":"3-Frogger","experimentalVK":false,"fileSizes":{"3-Frogger.pck":31968,"3-Frogger.wasm":43016933},"focusCanvas":true,"gdextensionLibs":[]};
const GODOT_THREADS_ENABLED = false;
const engine = new Engine(GODOT_CONFIG);
(function () {