Today's update introduces Glycine Bleumer, a proud noble who has some pointed questions for Ogami.
https://twitter.com/TaishoRoman3/status ... 6323765249
The purpose of this update is to show subtitled Dreamcast FMV and how seamlessly the cutscenes blend back into normal gameplay. I've documented our process for extracting and encoding video on the wiki: https://github.com/TheOpponent/st3-tran ... o-encoding
Sakura Wars 3 English Translation Project
- The Opponent
- rebel
- Posts: 21
- Contact:
- fafadou
- Leonard Nimoy
- Posts: 1856
Re: Sakura Wars 3 English Translation Project
It's awesome to five some news ans update, thanks ?
Could you add in the github, how have you done for adding subtiles during fmv please ?
Could you add in the github, how have you done for adding subtiles during fmv please ?
- ateam
- Metallic
- Posts: 817
Re: Sakura Wars 3 English Translation Project
From the GitHub document, the following is stated:fafadou wrote:It's awesome to five some news ans update, thanks ?
Could you add in the github, how have you done for adding subtiles during fmv please ?
Adding subtitles to video files using Aegisub and burning them into the video is a well-documented procedure and will not be duplicated here. For maximum video quality, it is recommended to use the video files from the PC version of Sakura Taisen 3 as a source, as those videos are in plain MPEG-1 format at 640 x 480 resolution. However, the audio sample rate will need to be converted to 22050Hz before encoding to SFD, as the SEGA Dreamcast Movie Creator is unable to perform the conversion correctly.
Find me on...
• DreamcastForever.com
• GitHub
• Reddit
• SegaXtreme
• Twitter
• YouTube
• Discord: derek.ateam
• DreamcastForever.com
• GitHub
• SegaXtreme
• YouTube
• Discord: derek.ateam
- The Opponent
- rebel
- Posts: 21
- Contact:
Re: Sakura Wars 3 English Translation Project
One of the early concerns we had with this project was modifying graphics shown on the VMU, which include logo animations and messages for save file operations. The image data for these graphics were not stored in any clear format, so we focused on the script instead. This week, I investigated how the game handles VMU screen update operations.
With assistance from ateam, I determined that Sakura Wars 3 is one of the rare games that uses low-level LCD functions to update the VMU screen. This allows for the screen to be updated very quickly, up to 30 Hz to show fast logo animations and a live minimap in combat situations, but it also means that screen data is sent to the VMU 1 bit at a time, and that makes searching for stored VMU screen data very difficult. In order to locate such images as a single frame of the Sakura Wars 3 logo shown during the boot sequence, I searched through RAM dumps using CrystalTile 2 in 1bpp mode looking for a pattern that resembled a legible 48 x 32 image.
After confirming that the image is being written into a discrete location in RAM, I then saved a hex dump of that 1bpp image, which is 192 bytes in length rather than the expected 1,536 bytes that would be used by standard LCD screen functions. Searching the game's files for a match of that 192 bytes yielded no results, which made me believe that either the LCD image data was either encoded or stored in an archive. These logos are displayed as the game is booting, so I reasoned that it they must be located in the disc root. Finally I extracted SYSLIST.AFS and examined each file, and found a number of BIN files that turned out to be sequences of raw bitmaps, similar to SKFONT.CG. CrystalTile 2 reveals that the file tyt00.bin in SYSLIST.AFS contains the logo animation in question with all frames in sequence:
From here, I modified my Python script for font tile conversion to generate 1bpp LCD screen data sequences, and modified the last two frames of the logo to test the replacement. The last two frames are alternated rapidly to create a shimmering effect on the LCD screen.
This video shows a hardware test of this animation. With this, another concern of the translation project has been resolved earlier than expected.
While I was searching for the LCD animations, I also found what appears to be VMU executables, with plainly visible 1bpp graphic data that should be editable.
With assistance from ateam, I determined that Sakura Wars 3 is one of the rare games that uses low-level LCD functions to update the VMU screen. This allows for the screen to be updated very quickly, up to 30 Hz to show fast logo animations and a live minimap in combat situations, but it also means that screen data is sent to the VMU 1 bit at a time, and that makes searching for stored VMU screen data very difficult. In order to locate such images as a single frame of the Sakura Wars 3 logo shown during the boot sequence, I searched through RAM dumps using CrystalTile 2 in 1bpp mode looking for a pattern that resembled a legible 48 x 32 image.
After confirming that the image is being written into a discrete location in RAM, I then saved a hex dump of that 1bpp image, which is 192 bytes in length rather than the expected 1,536 bytes that would be used by standard LCD screen functions. Searching the game's files for a match of that 192 bytes yielded no results, which made me believe that either the LCD image data was either encoded or stored in an archive. These logos are displayed as the game is booting, so I reasoned that it they must be located in the disc root. Finally I extracted SYSLIST.AFS and examined each file, and found a number of BIN files that turned out to be sequences of raw bitmaps, similar to SKFONT.CG. CrystalTile 2 reveals that the file tyt00.bin in SYSLIST.AFS contains the logo animation in question with all frames in sequence:
From here, I modified my Python script for font tile conversion to generate 1bpp LCD screen data sequences, and modified the last two frames of the logo to test the replacement. The last two frames are alternated rapidly to create a shimmering effect on the LCD screen.
This video shows a hardware test of this animation. With this, another concern of the translation project has been resolved earlier than expected.
While I was searching for the LCD animations, I also found what appears to be VMU executables, with plainly visible 1bpp graphic data that should be editable.
-
- chill
- Posts: 295
Re: Sakura Wars 3 English Translation Project
That's right. Sakura Wars 3 contains a VMU minigame called "Pari No Futari". That's what you've come across.The Opponent wrote: While I was searching for the LCD animations, I also found what appears to be VMU executables, with plainly visible 1bpp graphic data that should be editable.
- VincentNL
- letterbomb
- Posts: 145
- Contact:
Re: Sakura Wars 3 English Translation Project
Have a look at Gif2SVMU, you may find it useful for converting gif animations to VMU gfx data directly.
(Please note it is supposed to work with _pdVmsLcdWrite1 library function.)
https://github.com/VincentNLOBJ/GIF2SVMU
(Please note it is supposed to work with _pdVmsLcdWrite1 library function.)
https://github.com/VincentNLOBJ/GIF2SVMU
If you like my work or just want to show some love:
https://ko-fi.com/vincentnl
https://www.patreon.com/VincentNL
https://ko-fi.com/vincentnl
https://www.patreon.com/VincentNL
- The Opponent
- rebel
- Posts: 21
- Contact:
Re: Sakura Wars 3 English Translation Project
Incidentally, if no VMU with a screen is connected in port A-1, a fallback copy of the same message is displayed on the TV screen. In the script, this fallback message is stored immediately after the message for the LCD screen and is given extra formatting for the text box.
Knowing that the characters for these messages can be changed like any other line in the script, I decided to change the line to unused font tiles and redefine those tiles to form an English message. We already use this technique for map labels.
This video is the hardware test for Kinematron message translation proof of concept. The font and content is subject to change. For this proof of concept, I used Helvetica Neue Medium with no antialiasing with extra character spacing. I experimented with our current in-game English font for consistency, but I was unable to make the font look presentable without antialiasing. I settled on using a different proportional font that scales well as a pixel font to conserve font tiles. I had to carefully select the font here to ensure that the message is legible as it scrolls on the VMU screen, which has a long response time and no backlight. The message can be scrolled faster with the A button, which may make the message unreadable due to motion blur depending on the quality of the screen.
With this, the only remaining VMU concern for this game are the minigames. As mentioned in my previous post, their graphics are stored as 1bpp image data that we should be able to edit.
We posted a more extensive proof of concept video of this translation on Twitter: https://twitter.com/TaishoRoman3/status ... 7814697985
-
- noob
- Posts: 3
- Dreamcast Games you play Online: Phantasy star online
Re: Sakura Wars 3 English Translation Project
Je suis heureux de savoir que la communauté française traduira en français
I am happy to learn that the community might make a french Translation too

I am happy to learn that the community might make a french Translation too

-
- Similar Topics
- Replies
- Views
- Last post
-
- 0 Replies
- 7346 Views
-
Last post by gamesreup
-
- 34 Replies
- 140329 Views
-
Last post by StealthyStingray
-
- 37 Replies
- 73378 Views
-
Last post by galaxygod
-
- 108 Replies
- 128589 Views
-
Last post by OatBob
-
- 53 Replies
- 363468 Views
-
Last post by Ian Micheal