ad044 / LainTSX

WebGL implementation of the Serial Experiments Lain PSX game
GNU General Public License v3.0
492 stars 27 forks source link

Run error because extract script Missing resources in static/sprites/ #29

Closed SuCicada closed 1 year ago

SuCicada commented 1 year ago

I like your project and I followed the instructions to build it locally, including extracting the game resources to static dir. But I'm having some problems.

I open the URL: http://localhost:3000/game. The page shows

Application error: a client-side exception has occurred (see the browser console for more information)."

I open the console and see.

GET http://localhost:3000/sprites/boot/login_intro_accela_spritesheet.png 404 (Not Found)

image

what I did before running the project:

  1. I used the scripts/extract/extract.mjs script to extract my disc1.bin and disc2.bin game files and the script ran very successfully.
  2. It generated the following directories in the src/static directory: images, media, sprites The sound, video, and image resources look fine.

what I did after the error occurred:

  1. I checked the source code and found that a missing image resource file should cause it in the src/static/sprites directory.
  2. I ran the extraction script several times but with the same result, I'm sure it's not a problem with my game files because I can run it successfully with the emulator
  3. I instead suspect that maybe the scripts/extract/extract_lapks.mjs script or scripts/extract/lapks.json is incomplete.
  4. I have sorted out the missing files:
    Click to expand/collapse to show missing files

/sprites/boot/authorize_header_underline.png
/sprites/boot/authorize_glass.png
/sprites/boot/authorize_glass_underline.png
/sprites/boot/authorize_orange_square.png
/sprites/boot/authorize_start_to_finish.png
/sprites/boot/authorize_inactive_letters.png
/sprites/boot/authorize_active_letters.png
/sprites/boot/login_intro_accela_spritesheet.png
/sprites/boot/make_me_sad.png
/sprites/boot/load_data_header_underline.png
/sprites/boot/load_data_active.png
/sprites/boot/load_data_inactive.png
/sprites/boot/load_data_header.png

/sprites/lain/mouth_1.png /sprites/lain/mouth_2.png /sprites/lain/mouth_3.png /sprites/lain/mouth_4.png /sprites/lain/lain_speak_intro.png /sprites/lain/lain_speak_outro.png

/sprites/fonts/orange_jp_font.png /sprites/main/big_hud.png /sprites/main/long_hud.png /sprites/main/boring_hud.png /sprites/lain/intro.png /sprites/lain/jump_down.png /sprites/lain/jump_up.png /sprites/lain/move_left.png /sprites/lain/move_right.png /sprites/lain/standing.png /sprites/lain/throw_node.png /sprites/lain/rip_middle_ring.png /sprites/lain/rip_node.png /sprites/lain/prayer.png /sprites/lain/knock.png /sprites/lain/knock_and_fall.png /sprites/lain/touch_node_and_get_scared.png /sprites/lain/touch_sleeve.png /sprites/lain/thinking.png /sprites/lain/stretch.png /sprites/lain/stretch_2.png /sprites/lain/spin.png /sprites/lain/scratch_head.png /sprites/lain/blush.png /sprites/lain/hands_behind_head.png /sprites/lain/hands_on_hips.png /sprites/lain/hands_on_hips_2.png /sprites/lain/hands_together.png /sprites/lain/lean_forward.png /sprites/lain/lean_left.png /sprites/lain/lean_right.png /sprites/lain/look_around.png /sprites/lain/play_with_hair.png

/sprites/lain/intro.png /sprites/lain/standing.png /sprites/lain/jump_down.png /sprites/lain/move_left.png /sprites/lain/move_right.png /sprites/lain/jump_up.png /sprites/lain/throw_node.png /sprites/lain/rip_middle_ring.png /sprites/lain/knock.png /sprites/lain/knock_and_fall.png /sprites/lain/rip_node.png /sprites/lain/prayer.png /sprites/lain/touch_sleeve.png /sprites/lain/thinking.png /sprites/lain/stretch_2.png /sprites/lain/stretch.png /sprites/lain/spin.png /sprites/lain/scratch_head.png /sprites/lain/blush.png /sprites/lain/hands_behind_head.png /sprites/lain/hands_on_hips.png /sprites/lain/hands_on_hips_2.png /sprites/lain/lean_forward.png /sprites/lain/hands_together.png /sprites/lain/lean_left.png /sprites/lain/lean_right.png /sprites/lain/look_around.png /sprites/lain/play_with_hair.png


I urgently need your help.

I love Lain, I would very much want to play Serial Experiments Lain on my computer.

ad044 commented 1 year ago

hello, as mentioned in the README, the extraction script is still incomplete so building the game fully automatically is not yet possible. not to mention the paths have been updated so static assets go inside the public directory (the scripts don't reflect this currently). they look something like this:

$ ls lainTSX/public/
media  models  sprites

$ ls lainTSX/public/media/
audio  images  movie  sfx  voice  webvtt

perhaps by placing the extracted assets like this it'll partially work.

other parts that the extraction script is missing (list may be incomplete):

if you are simply interested in playing the game i'd suggest going directly to laingame, which has it deployed already, along with an offline version of the game.

if you'd still prefer to build the game you'll need to do some tweaking manually. feel free to leave your discord and i'll try to help. otherwise, you'll just have to wait until the extraction script is completed.

SuCicada commented 1 year ago

Thank you very much for your reply, I will keep studying it. Very much looking forward to the day you finish it.😄