├── .gitignore ├── .vscode └── tasks.json ├── README.md ├── boxart ├── GKQE01 2D.png ├── GKQE01 Hires.png ├── GKQE01 │ ├── bootTvTex.tga │ └── iconTex.tga ├── GKQJ01 Full.png └── boxart.zip ├── input └── JP ISO HERE ├── output └── EN ISO HERE ├── src ├── en │ ├── Banner.asm │ ├── Credits.asm │ ├── Gba.asm │ ├── Main.asm │ ├── Obj.asm │ ├── Opening.asm │ ├── System.asm │ ├── Text.asm │ ├── Title.asm │ └── fs │ │ ├── README.md │ │ ├── demo │ │ ├── README.md │ │ ├── ending │ │ │ ├── README.md │ │ │ └── s_roll.dat │ │ ├── text │ │ │ ├── Challenge.txt │ │ │ ├── Opening.txt │ │ │ ├── README.md │ │ │ ├── Rank.txt │ │ │ ├── boss.txt │ │ │ ├── item.txt │ │ │ ├── item2.txt │ │ │ ├── mode.txt │ │ │ ├── shop.txt │ │ │ ├── shop2.txt │ │ │ ├── stage.txt │ │ │ ├── type.txt │ │ │ └── vsmenu.txt │ │ └── title │ │ │ ├── README.md │ │ │ └── title.txg │ │ ├── gba │ │ ├── README.md │ │ ├── cmn.txg │ │ └── linkmenu.txg │ │ ├── obj │ │ └── 2D │ │ │ ├── README.md │ │ │ ├── ano00.txg │ │ │ ├── ch_c_resalt.txg │ │ │ ├── ch_f_resalt.txg │ │ │ ├── chosen.txg │ │ │ ├── fileselect.txg │ │ │ ├── itemlist.txg │ │ │ ├── option.txg │ │ │ ├── pause.txg │ │ │ ├── pause_2.0.txg │ │ │ ├── resalt.txg │ │ │ ├── top.txg │ │ │ ├── vs2d.txg │ │ │ ├── vs_menu.txg │ │ │ ├── vsresult.txg │ │ │ ├── w_demo.txg │ │ │ └── w_map.txg │ │ └── opening.bnr └── ww │ └── fs │ ├── demo │ └── opening │ │ ├── README.md │ │ └── op01_mura.dat │ ├── gba │ └── client_thread.bin │ ├── icon_bnr │ └── banner.tpl │ └── obj │ └── item │ └── itemheri │ ├── h29.dat │ └── h29.dat_0x48E0_14.png ├── textures.7z └── tools ├── bass └── win │ └── bass.exe └── compile.bat /.gitignore: -------------------------------------------------------------------------------- 1 | *.iso 2 | *.dol 3 | Error Log.txt 4 | -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=733558 3 | // for the documentation about the tasks.json format 4 | "version": "2.0.0", 5 | "tasks": [ 6 | { 7 | "label": "Kururin Squash! | Win", 8 | "type": "shell", 9 | "command": "cls ; echo '[INFO] Compiling patches' ; tools\\bass\\win\\bass.exe src\\Main.asm ; echo '[INFO] Patches compiled' ; echo ---------- ; echo Finished! ; echo ----------", 10 | "problemMatcher": [], 11 | "group": { 12 | "kind": "build", 13 | "isDefault": true 14 | } 15 | } 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Kururin Squash Translation 2 | - File: `Kururin Squash! [J].iso` 3 | - Hash (SHA-1): `F1E5E50751CEE4FA654182E0904F7F6EF721E5CC` 4 | 5 | Buckle up, you're about to pilot the Helirin Universal Helicopter! Characterized by its ever-rotating twin wings, you are tasked with navigating through tight corridors and punching away at the enemies to get the best time. In this third entry in the Kururin series, your family is lost on vacation and it's up to you to bring them back. Your journeys will take you to various locations, and you will get to use many powerful Action Helirin. 6 | 7 | ## Patching 8 | #### xdelta patch (Recommended) 9 | - Download [Delta Patcher](https://www.romhacking.net/utilities/704/) 10 | - Grab the [latest release](https://github.com/DOL-Translations/kururin-squash/releases/latest/) 11 | - Open Delta Patcher and add the translation xdelta patch and the required language iso. 12 | #### manual patch (Latest changes, Windows only) 13 | - Drop the required language iso (non-nkit compressed) into the `input` folder. 14 | - Make sure it is named properly! Refer to the header of the readme for more info. 15 | - Run `compile.bat` in the `tools` folder. 16 | 17 | ## Contributing 18 | Found a way this translation can be improved? Send in a pull request with your desired changes and they will be reviewed and integrated into a future update. Raw in-game text can be found in `src/fs/demo/text` and can be opened in your favorite text editor. 19 | 20 | ## Special thanks 21 | * __BttrDrgn__ for putting these translation projects together and maintaining the environments 22 | * __deiv__ for creating the English logo and boxart and assistance with graphics 23 | * __DimeDime__ for romhacking the GBA multiboot ROM graphics 24 | * __Struggleton__ for [TXG2TPL](https://github.com/Struggleton/TXG2TPL) 25 | * The __BrawlTools__ contributers for [BrawlBox](https://github.com/libertyernie/brawltools) 26 | * __DRGN-DRC__ for [DAT Texture Wizard](https://github.com/DRGN-DRC/DAT-Texture-Wizard) 27 | * __ARM9__ for their continuation of [bass](https://github.com/ARM9/bass) 28 | * The folks at __GC/Wii Decompilation__ for help with code-based romhacking 29 | * And everyone in the community who has pioneered romhacking and game translations 30 | -------------------------------------------------------------------------------- /boxart/GKQE01 2D.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/boxart/GKQE01 2D.png -------------------------------------------------------------------------------- /boxart/GKQE01 Hires.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/boxart/GKQE01 Hires.png -------------------------------------------------------------------------------- /boxart/GKQE01/bootTvTex.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/boxart/GKQE01/bootTvTex.tga -------------------------------------------------------------------------------- /boxart/GKQE01/iconTex.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/boxart/GKQE01/iconTex.tga -------------------------------------------------------------------------------- /boxart/GKQJ01 Full.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/boxart/GKQJ01 Full.png -------------------------------------------------------------------------------- /boxart/boxart.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/boxart/boxart.zip -------------------------------------------------------------------------------- /input/JP ISO HERE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/input/JP ISO HERE -------------------------------------------------------------------------------- /output/EN ISO HERE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/output/EN ISO HERE -------------------------------------------------------------------------------- /src/en/Banner.asm: -------------------------------------------------------------------------------- 1 | ReplaceAsset($52E9A194, "fs/opening.bnr", 6496) -------------------------------------------------------------------------------- /src/en/Credits.asm: -------------------------------------------------------------------------------- 1 | ReplaceAsset($4AF88000, "fs/demo/ending/s_roll.dat", 3489051) -------------------------------------------------------------------------------- /src/en/Gba.asm: -------------------------------------------------------------------------------- 1 | ReplaceAsset($4F90DD90, "../ww/fs/gba/client_thread.bin", 31344) 2 | ReplaceAsset($4F915800, "fs/gba/cmn.txg", 2506528) 3 | ReplaceAsset($4FB79720, "fs/gba/linkmenu.txg", 1599712) -------------------------------------------------------------------------------- /src/en/Main.asm: -------------------------------------------------------------------------------- 1 | // GameCube "Kururin Squash!" Japanese To English Translation 2 | 3 | endian msb // GameCube PPC requires Big-Endian Encoding (Most Significant Bit) 4 | output "../../output/Kururin Squash! [U].iso", create 5 | origin $000000; insert "../../input/Kururin Squash! [J].iso" // Include Japanese Kururin Squash! ISO 6 | 7 | macro Text(OFFSET, TEXT) { 8 | map 0, 0, 256 // Map Default ASCII Chars 9 | map '|', 0x00 // End of string 10 | map '\n', 0x0A // New line 11 | 12 | origin {OFFSET} 13 | db {TEXT} // ASCII Text To Print 14 | } 15 | 16 | //new text replacement macro, only used for Memory Card text 17 | macro TextMC(OFFSET, TEXT) { 18 | map 0, 0, 256 // Map Default ASCII Chars 19 | map '\n', 0x0A // New line 20 | 21 | origin {OFFSET} 22 | variable availableLength = 0; 23 | while (read(origin() + availableLength) != 0x00) { 24 | ds 1 25 | } 26 | 27 | if (read(origin()) == 0x00) { 28 | fill 1 29 | } 30 | if (read(origin()) == 0x00) { 31 | fill 1 32 | } 33 | if (read(origin()) == 0x00) { 34 | fill 1 35 | } 36 | if (read(origin()) == 0x00) { 37 | fill 1 38 | } 39 | 40 | availableLength = origin() - {OFFSET} - 1 41 | 42 | origin {OFFSET} 43 | db {TEXT} // ASCII Text To Print 44 | 45 | variable newLength = origin() - {OFFSET} 46 | if (newLength > availableLength) { 47 | print {TEXT} 48 | print " is too big by " 49 | print (newLength - availableLength) 50 | } 51 | 52 | while (read(origin()) != 0x00) { 53 | fill 1 54 | } 55 | } 56 | 57 | // Warning: use address first!! 58 | macro TextMC(TEXT) { 59 | variable i = 40; 60 | while (i > 0 && read(origin()) < 0x01) { 61 | ds 1 62 | i = i - 1; 63 | } 64 | 65 | variable ori = origin() 66 | TextMC(ori, {TEXT}) 67 | } 68 | 69 | macro TextShiftJIS(OFFSET, TEXT) { 70 | // Map Shift-JIS Words 71 | map ' ', $8140 72 | map $2C, $8143 // Comma "," 73 | map '.', $8144 74 | map ':', $8146 75 | map '?', $8148 76 | map '!', $8149 77 | map '~', $8160 78 | //map '\s', $8166 // Single Quote "'" 79 | //map '\d', $8168 // Double Quote '"' 80 | map '+', $817B 81 | map '&', $8195 82 | map '0', $824F, 10 // Map Numbers 83 | map 'A', $8260, 26 // Map English "Upper Case" Characters 84 | map 'a', $8281, 26 // Map English "Lower Case" Characters 85 | 86 | origin {OFFSET} 87 | dw {TEXT} // Shift-JIS Text To Print 88 | } 89 | 90 | //Not a real assert, just prints the error message in console and doesn't compile further 91 | macro Assert(MESSAGE) { 92 | "{MESSAGE}\n" 93 | } 94 | 95 | macro ReplaceAsset(ORIGIN, FILE, SIZE) { 96 | if !file.exists({FILE}) { 97 | print "{FILE} doesn't exist!" 98 | } else if file.exists({FILE}) { 99 | if (file.size({FILE}) > {SIZE} && {SIZE} != -1) { 100 | Assert("File {FILE} is bigger than Size {SIZE}") 101 | } else if (file.size({FILE}) <= {SIZE}) { 102 | origin {ORIGIN} 103 | insert {FILE} 104 | fill {SIZE} - file.size({FILE}) 105 | } 106 | } 107 | } 108 | 109 | //Region 110 | origin $3; db $45 //E 111 | origin $45B; db $01 112 | 113 | include "Banner.asm" 114 | include "Credits.asm" 115 | include "Gba.asm" 116 | include "Obj.asm" 117 | include "Opening.asm" 118 | include "System.asm" 119 | include "Text.asm" 120 | include "Title.asm" -------------------------------------------------------------------------------- /src/en/Obj.asm: -------------------------------------------------------------------------------- 1 | ReplaceAsset($50431BA0, "fs/obj/2D/ano00.txg", 31168) 2 | ReplaceAsset($50445660, "fs/obj/2D/chosen.txg", 632736) 3 | ReplaceAsset($504DFE00, "fs/obj/2D/ch_c_resalt.txg", 1084960) 4 | ReplaceAsset($505E8C20, "fs/obj/2D/ch_f_resalt.txg", 1084960) 5 | ReplaceAsset($506F1A40, "fs/obj/2D/fileselect.txg", 1357312) 6 | ReplaceAsset($508661A0, "fs/obj/2D/itemlist.txg", 1045888) 7 | ReplaceAsset($50D7FDC0, "fs/obj/2D/option.txg", 931040) 8 | ReplaceAsset($50E632A0, "fs/obj/2D/pause.txg", 108864) 9 | ReplaceAsset($51384980, "fs/obj/2D/resalt.txg", 1064448) 10 | ReplaceAsset($5150EB60, "fs/obj/2D/top.txg", 47712) 11 | ReplaceAsset($5151A5C0, "fs/obj/2D/vs2d.txg", 186944) 12 | ReplaceAsset($515509C0, "fs/obj/2D/vsresult.txg", 305984) 13 | ReplaceAsset($5159B500, "fs/obj/2D/vs_menu.txg", 2146752) 14 | ReplaceAsset($517A76C0, "fs/obj/2D/w_demo.txg", 563296) 15 | ReplaceAsset($51830F20, "fs/obj/2D/w_map.txg", 553184) 16 | 17 | ReplaceAsset($520D8000, "../ww/fs/obj/item/itemheri/h29.dat", 20931) 18 | -------------------------------------------------------------------------------- /src/en/Opening.asm: -------------------------------------------------------------------------------- 1 | ReplaceAsset($4CEF8000, "../ww/fs/demo/opening/op01_mura.dat", 538583) 2 | -------------------------------------------------------------------------------- /src/en/System.asm: -------------------------------------------------------------------------------- 1 | //Disc Cover Open, Progressive Scan, Error Occurred - use English 2 | origin $22E67; db $01 3 | //origin $24D75; db $03 4 | Text($00187FBA, "Kururin Squash! Game Disc.\n|") 5 | Text($00187FEC, "Kururin Squash! Game Disc.\n|") 6 | 7 | //Memory Card 8 | TextMC($001A7178, "Slot A\n") 9 | TextMC("Slot B\n") //Slot B 10 | TextMC("Checking..\n") 11 | TextMC("Loading..\n") 12 | TextMC("Saving..\n") 13 | TextMC("Formatting..\n") 14 | TextMC("Deleting..\n") 15 | TextMC("Do not touch the\n") 16 | TextMC("Memory Card or the POWER Button.\n") 17 | TextMC("Load this file?\n") 18 | TextMC("Save this file?\n") 19 | TextMC("Format?\n") 20 | TextMC("Delete this file?\n") 21 | TextMC("Save data found.\n") 22 | TextMC("Save the game?\n") 23 | TextMC("If you continue\n") 24 | TextMC("you won't be able to save.\n") 25 | TextMC("Start the game?\n") 26 | TextMC("You cannot save.\n") 27 | TextMC("Continue?\n") 28 | TextMC("If you continue you won't be able\n") 29 | TextMC("Continue the game?\n") 30 | 31 | TextMC($001A74E4, "The Memory Card\n") 32 | TextMC("cannot load.") 33 | TextMC("cannot save.") 34 | 35 | TextMC($001A75C4, "No Memory Card inserted.\n") 36 | TextMC("Format required.") 37 | TextMC("The save data is corrupted.\n") 38 | TextMC("Wrong device is inserted.\n") 39 | TextMC("Check if there is any free space.\n") 40 | TextMC("You can save but\n") 41 | TextMC("no new save data can be created.\n") 42 | TextMC("The Memory Card cannot be used.\n") 43 | TextMC("No save data found.\n") 44 | TextMC("The save data is corrupted.") 45 | TextMC("Access error.\n") 46 | TextMC("Load failed.\n") 47 | TextMC("Save failed.\n") 48 | TextMC("Format failed.\n") 49 | TextMC("Delete failed.\n") 50 | TextMC("There is not enough free space.\n") //on the\nMemory Card In order to save, 1 file is required.\n") 51 | TextMC("There is not enough free space.\n") //In order to save, 2 file are required.\n") 52 | TextMC("1 block and 1 file are required.\n") 53 | TextMC("2 blocks and 1 file are required.\n") 54 | TextMC("The number of files will exceed the limit.") 55 | TextMC("The Memory Card is broken\n") 56 | TextMC("and can't be used.\n") 57 | TextMC("The Memory Card was removed.\n") 58 | 59 | //Save Data 60 | Text($001A7C58, "Kururin Squash!"); fill 6 61 | Text($001A7C78, "Rotating Action Game") 62 | ReplaceAsset($504306E0, "../ww/fs/icon_bnr/banner.tpl", 3680) 63 | 64 | //??? 65 | Text($0018AFBC, "Kururin ") 66 | Text($0018AFC8, "Kuru Kuru") 67 | //TextShiftJIS($0018AFD4, "") 68 | //TextShiftJIS($0018AFE4, "") 69 | Text($0018AFF0, "Kuru Kuru Kururin") 70 | //TextShiftJIS($0018B004, "") 71 | -------------------------------------------------------------------------------- /src/en/Text.asm: -------------------------------------------------------------------------------- 1 | //Text format patch 2 | //patch $14 with $11 3 | origin $6C5C3; db $11 4 | origin $6C67F; db $11 5 | //origin $22E53; db $11 6 | //origin $E0617; db $11 7 | 8 | //Raw text .txt files 9 | ReplaceAsset($4E5F53FC, "fs/demo/text/boss.txt", 4039) 10 | ReplaceAsset($4E5F63C4, "fs/demo/text/Challenge.txt", 2002) 11 | ReplaceAsset($4E5F75E4, "fs/demo/text/item.txt", 12890) 12 | ReplaceAsset($4E5FA840, "fs/demo/text/item2.txt", 11762) 13 | ReplaceAsset($4E5FD634, "fs/demo/text/mode.txt", 152) 14 | ReplaceAsset($4E5FD6CC, "fs/demo/text/Opening.txt", 779) 15 | ReplaceAsset($4E5FD9D8, "fs/demo/text/Rank.txt", 4152) 16 | ReplaceAsset($4E5FEA10, "fs/demo/text/shop.txt", 770) 17 | ReplaceAsset($4E5FED14, "fs/demo/text/shop2.txt", 356) 18 | ReplaceAsset($4E5FEE78, "fs/demo/text/stage.txt", 5060) 19 | ReplaceAsset($4E60023C, "fs/demo/text/type.txt", 112) 20 | ReplaceAsset($4E6002AC, "fs/demo/text/vsmenu.txt", 1108) 21 | 22 | //Challenge text 23 | Text($00189C60, "Your best time is |") 24 | //origin $0006B68B; db $01 25 | //origin $0006B68F; db $01 26 | origin $0006B6B7; db $30 27 | //origin $0006B78F; db $01 28 | //origin $0006B797; db $FF 29 | //origin $0006B7A3; db $04 30 | 31 | //File Select text 32 | TextShiftJIS($0018B1C8, "New File ") 33 | TextShiftJIS($0018B1DC, " Compact") 34 | TextShiftJIS($0018B1F0, "Standard") 35 | TextShiftJIS($0018B204, " Delete|") 36 | TextShiftJIS($0018B214, " this file?|") 37 | TextShiftJIS($001BCB64, "Yes") 38 | TextShiftJIS($001BCB6C, " No") 39 | 40 | //World Map text 41 | TextShiftJIS($0018B258, "Rabbit ") 42 | TextShiftJIS($0018B269, "Prof. ") 43 | TextShiftJIS($0018B27A, "Dad ") 44 | TextShiftJIS($001BC7BA, " ") 45 | TextShiftJIS($001BC7C2, " ") 46 | TextShiftJIS($001BC7CA, " ") 47 | 48 | //Shop text 49 | TextShiftJIS($0018BB68, "SOLD") 50 | Text($001BCF08, " Yes|") 51 | Text($001BCF10, " No|") 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /src/en/Title.asm: -------------------------------------------------------------------------------- 1 | ReplaceAsset($4E600700, "fs/demo/title/title.txg", 1308928) -------------------------------------------------------------------------------- /src/en/fs/README.md: -------------------------------------------------------------------------------- 1 | # `root` 2 | Root of the game directory 3 | 4 | - opening.bnr 5 | - Game banner -------------------------------------------------------------------------------- /src/en/fs/demo/README.md: -------------------------------------------------------------------------------- 1 | # Demo 2 | This folder includes the game assets used in the Japanese demo disc build of the game (10/01/2004), containing virtually all of the raw text. 3 | -------------------------------------------------------------------------------- /src/en/fs/demo/ending/README.md: -------------------------------------------------------------------------------- 1 | # Ending 2 | - s_roll.dat 3 | - Staff roll -------------------------------------------------------------------------------- /src/en/fs/demo/ending/s_roll.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/demo/ending/s_roll.dat -------------------------------------------------------------------------------- /src/en/fs/demo/text/Challenge.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/demo/text/Challenge.txt -------------------------------------------------------------------------------- /src/en/fs/demo/text/Opening.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/demo/text/Opening.txt -------------------------------------------------------------------------------- /src/en/fs/demo/text/README.md: -------------------------------------------------------------------------------- 1 | # Text 2 | 3 | - boss.txt 4 | - in-game boss battle text 5 | - Challenge.txt 6 | - in-game hints 7 | - item.txt (for shop), item2.txt (for inventory menu) 8 | - items & descriptions 9 | - mode.txt 10 | - menu text for choosing game mode 11 | - Opening.txt 12 | - opening cutscene text 13 | - Rank.txt 14 | - achievements and post-game rewards 15 | - shop.txt & shop2.txt 16 | - general text for shop 17 | - stage.txt 18 | - in-game level text 19 | - type.txt 20 | - menu text for choosing difficulty 21 | - vsmenu.txt 22 | - option desciptions for VS Menu 23 | -------------------------------------------------------------------------------- /src/en/fs/demo/text/Rank.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/demo/text/Rank.txt -------------------------------------------------------------------------------- /src/en/fs/demo/text/boss.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/demo/text/boss.txt -------------------------------------------------------------------------------- /src/en/fs/demo/text/item.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/demo/text/item.txt -------------------------------------------------------------------------------- /src/en/fs/demo/text/item2.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/demo/text/item2.txt -------------------------------------------------------------------------------- /src/en/fs/demo/text/mode.txt: -------------------------------------------------------------------------------- 1 | Ride a Helirin while 2 | searching for your family. 3 | Try to reach the goal 4 | in the fastest time. 5 | Explore new places with 6 | unstoppable Tsururin. 7 | -------------------------------------------------------------------------------- /src/en/fs/demo/text/shop.txt: -------------------------------------------------------------------------------- 1 | Welcome! 2 | Want to buy this? 3 | Thank you! 4 | Not enough coins. 5 | You already have this. 6 | Leaving so soon? 7 | Come again! 8 | 9 | Oh, hi! 10 | Found something you like? 11 | Thanks a bunch! 12 | Not enough coins. 13 | You already have these! 14 | Are you coming back? 15 | See you again! 16 | 17 | Want to buy something? 18 | Is this okay? 19 | Thanks! 20 | You don't have enough coins. 21 | You already have it. 22 | Are you coming back? 23 | Come back soon! 24 | 25 | Hi! 26 | Want to buy this? 27 | Thank you! 28 | Not enough coins. 29 | You have this already. 30 | Will you return? 31 | Good luck! 32 | 33 | Oh, welcome! 34 | Want to buy this? 35 | Thanks! 36 | Not enough coins. 37 | Already have this. 38 | Will you be back? 39 | Do your best! 40 | 41 | -------------------------------------------------------------------------------- /src/en/fs/demo/text/shop2.txt: -------------------------------------------------------------------------------- 1 | Welcome! 2 | I have various 3 | items for sale. 4 | 5 | Why not shop for 6 | something unique? 7 | We have various 8 | interesting items. 9 | Did you find 10 | any coins? 11 | We're having a big sale, 12 | so be sure to stop by! 13 | It's nice to 14 | see you again. 15 | It might be a good 16 | idea to buy something. 17 | You've come such 18 | a long way! 19 | Why don't you 20 | buy a heart? 21 | -------------------------------------------------------------------------------- /src/en/fs/demo/text/stage.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/demo/text/stage.txt -------------------------------------------------------------------------------- /src/en/fs/demo/text/type.txt: -------------------------------------------------------------------------------- 1 | Play with a compact Helirin. 2 | 3 | Play with a full-sized Helirin. 4 | Recommended for returning players. 5 | -------------------------------------------------------------------------------- /src/en/fs/demo/text/vsmenu.txt: -------------------------------------------------------------------------------- 1 | Select number of players. 2 | 3 | Select number of players. 4 | 5 | Select number of players. 6 | 7 | Use a normal Helirin. 8 | Win by reaching the goal first. 9 | Battle royale with Action Helirin. 10 | Win by collecting enough coins. 11 | A simple course 12 | for beginners. 13 | Try to not get jammed 14 | in between the pistons! 15 | Be careful along the path 16 | or you will be squashed! 17 | Pay attention in the maze 18 | or you will get lost! 19 | Be careful of the 20 | spinning blades! 21 | The course will be 22 | chosen randomly. 23 | Select the stage you want to play. 24 | Choose an option. 25 | Battle royale with Action Helirin. 26 | Win by collecting enough coins. 27 | The faster the player, 28 | the longer the Helirin. 29 | Helirin can collide together 30 | instead of phasing through. 31 | Use handicaps in races. 32 | 33 | Reset the settings to default. 34 | 35 | Close the options menu. 36 | 37 | Set the number of hearts. 38 | 39 | Set the length of the match. 40 | 41 | Use handicaps in battles. 42 | 43 | Reset the settings to default. 44 | 45 | Close the options menu. 46 | 47 | -------------------------------------------------------------------------------- /src/en/fs/demo/title/README.md: -------------------------------------------------------------------------------- 1 | # Title 2 | - title.txg 3 | - Game logo on boot -------------------------------------------------------------------------------- /src/en/fs/demo/title/title.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/demo/title/title.txg -------------------------------------------------------------------------------- /src/en/fs/gba/README.md: -------------------------------------------------------------------------------- 1 | # Location of 2D textures for Spin Advance 2 | 3 | Known files: 4 | - cmn.txg 5 | - GBA game text 6 | - linkmenu.txg 7 | - GBA menu text 8 | -------------------------------------------------------------------------------- /src/en/fs/gba/cmn.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/gba/cmn.txg -------------------------------------------------------------------------------- /src/en/fs/gba/linkmenu.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/gba/linkmenu.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/README.md: -------------------------------------------------------------------------------- 1 | # Location of 2D textures 2 | 3 | Known files: 4 | - ano00.txg (complete) 5 | - In-game text 6 | - ch_c_resalt.txg (complete) 7 | - Results (Cleared) 8 | - ch_f_resalt.txg (complete) 9 | - Results (Failed) 10 | - chosen.txg 11 | - Time Trials 12 | - fileselect.txg (complete) 13 | - Single Player 14 | - itemlist.txg (complete) 15 | - Inventory 16 | - option.txg 17 | - Options 18 | - pause.txg 19 | - Pause Menu 20 | - resalt.txg (complete) 21 | - Results 22 | - top.txg (complete) 23 | - Title Screen menu 24 | - vs2d.txg (complete) 25 | - In-game multiplayer text 26 | - vs_menu.txg (complete) 27 | - Multiplayer menu 28 | - vs_result.txg (complete) 29 | - VS Mode Results 30 | - w_demo.txg 31 | - World names 32 | - w_map.txg (complete) 33 | - Level select 34 | -------------------------------------------------------------------------------- /src/en/fs/obj/2D/ano00.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/ano00.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/ch_c_resalt.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/ch_c_resalt.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/ch_f_resalt.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/ch_f_resalt.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/chosen.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/chosen.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/fileselect.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/fileselect.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/itemlist.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/itemlist.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/option.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/option.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/pause.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/pause.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/pause_2.0.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/pause_2.0.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/resalt.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/resalt.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/top.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/top.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/vs2d.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/vs2d.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/vs_menu.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/vs_menu.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/vsresult.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/vsresult.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/w_demo.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/w_demo.txg -------------------------------------------------------------------------------- /src/en/fs/obj/2D/w_map.txg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/obj/2D/w_map.txg -------------------------------------------------------------------------------- /src/en/fs/opening.bnr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/en/fs/opening.bnr -------------------------------------------------------------------------------- /src/ww/fs/demo/opening/README.md: -------------------------------------------------------------------------------- 1 | Known files: 2 | - op01_mura.dat 3 | - opening cutscene, including Nintendo logo -------------------------------------------------------------------------------- /src/ww/fs/demo/opening/op01_mura.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/ww/fs/demo/opening/op01_mura.dat -------------------------------------------------------------------------------- /src/ww/fs/gba/client_thread.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/ww/fs/gba/client_thread.bin -------------------------------------------------------------------------------- /src/ww/fs/icon_bnr/banner.tpl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/ww/fs/icon_bnr/banner.tpl -------------------------------------------------------------------------------- /src/ww/fs/obj/item/itemheri/h29.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/ww/fs/obj/item/itemheri/h29.dat -------------------------------------------------------------------------------- /src/ww/fs/obj/item/itemheri/h29.dat_0x48E0_14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/src/ww/fs/obj/item/itemheri/h29.dat_0x48E0_14.png -------------------------------------------------------------------------------- /textures.7z: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/textures.7z -------------------------------------------------------------------------------- /tools/bass/win/bass.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DOL-Translations/kururin-squash/37ec8ccc8454843b9b73d6094a4bee9513ac0c8c/tools/bass/win/bass.exe -------------------------------------------------------------------------------- /tools/compile.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set ISOFile=..\input\Kururin Squash! [J].iso 4 | set ISOTargetSize=1459978240 5 | 6 | if not exist "%ISOFile%" ( 7 | echo [INFO] "%ISOFile%" was not found 8 | echo Did you name the ROM correctly and place it in the correct folder? 9 | echo Exiting in 10 seconds.. 10 | C:\Windows\System32\timeout.exe /t 10 /nobreak >nul 11 | exit /b 0 12 | ) 13 | 14 | for %%F in ("%ISOFile%") do ( 15 | set "ISOSize=%%~zF" 16 | ) 17 | 18 | if %ISOSize% neq %ISOTargetSize% ( 19 | echo [INFO] "%ISOFile%" has an incorrect size 20 | echo Are you using the uncompressed ROM? 21 | echo Exiting in 10 seconds.. 22 | C:\Windows\System32\timeout.exe /t 10 /nobreak >nul 23 | exit /b 0 24 | ) 25 | 26 | :lang_select 27 | echo Please select your language: 28 | echo 1. English 29 | echo 2. Deutsch 30 | echo 3. Francais 31 | echo 4. Espanol 32 | set /p choice= 33 | set folder=en 34 | echo. 35 | 36 | if "%choice%"=="1" ( 37 | echo Patching English.. 38 | set folder=en 39 | ) else if "%choice%"=="2" ( 40 | echo Patching Deutsch.. 41 | set folder=de 42 | ) else if "%choice%"=="3" ( 43 | echo Patching Francais.. 44 | set folder=fr 45 | ) else if "%choice%"=="4" ( 46 | echo Patching Espanol.. 47 | set folder=es 48 | ) else ( 49 | echo Invalid language. Please try again. 50 | goto lang_select 51 | ) 52 | 53 | if not exist "../src/%folder%/Main.asm" ( 54 | echo [ERROR] Language not defined 55 | echo. 56 | goto lang_select 57 | ) 58 | echo [INFO] Compiling patches - Please wait.. 59 | bass\\win\\bass.exe ..\\src\\%folder%\\Main.asm 60 | 61 | echo [INFO] Patches compiled 62 | echo ---------- 63 | echo Finished! 64 | echo ---------- 65 | C:\Windows\System32\timeout.exe /t 5 /nobreak >nul 66 | exit /b 0 --------------------------------------------------------------------------------