We just reached 25,000 articles on this wiki! 🥳
If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Grapple Dog

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Grapple Dog

Developer: Medallion Games
Publisher: Super Rare Originals
Platforms: Windows, Nintendo Switch
Released internationally: February 10, 2022

AreasIcon.png This game has unused areas.
ObjectIcon.png This game has unused objects.
GraphicsIcon.png This game has unused graphics.
TextIcon.png This game has unused text.
DebugIcon.png This game has debugging material.

ProtoIcon.png This game has a prototype article
NotesIcon.png This game has a notes page

This article is a work in progress.
...Well, all the articles here are, in a way. But this one moreso, and the article may contain incomplete information and editor's notes.
To do:
  • Some unused scripts (dialogue_cutscene_test / dialogue_trigger).
  • References to deleted sprites/scripts/objects (obj_convo).
  • Changelog page, possibly a page for dialog if that grows larger.
  • Loading menu is supposed to play sound.
  • Literally everything else.

What happens when you combine grapples with dogs? You get Grapple Dog, an adorable platformer with pretty visuals, thick outlines and dogs swinging on ropes! And robot takeovers with world destruction and dimensional collapses, also.


Debug Features
What do all these funky numbers mean?
Unused Sprites
If you like placeholders, you're at the right address.
Unused Objects
How big was this game going to be?
Unused Rooms
Islands that only dataminers dare to visit.
Out Of Bounds Objects & Tiles
Out of bound discoveries we weren't supposed to see, or weren't supposed to be placed at all.

Leftover Demo Mode

Windows-GrappleDog-ui demo endsplash-1.png

A demo mode leftover from the Steam Next Fest Demo is still in the game's files, and can be enabled by setting global.demoMode to 1. Despite some broken menus and buttons that no longer redirect to the developer's Twitter or Steam page, everything in the main game remains fully intact.

A list of things this demo mode changes goes as follows:

  • The creation of grappledog_demo_data in %localappdata%/Grapple_Dog so the game wouldn't overwrite your real save data.
  • The text "Demo Edition" floats below the logo.
  • A different button arrangement for the main menu.
  • The removal of selecting a language from the options menu. Different languages were incomplete in the Steam Next Fest Demo, and thus was hidden from the options.
  • No way to select a save file, instead getting a prompt to go to the tutorial or skip to the overworld.
  • No voice sound effect plays for when Pablo falls below.
  • An early stop in the tutorial stage that cuts out all story.
  • Redirecting you from overworld_main to overworld_demo.
  • Changing the amount of gems you need to collect to 15 opposed to the regular 25.
  • Skipping the entirety of REX's level, going straight to his boss battle.
  • A "thank you for playing" screen after defeating REX instead of obtaining his item.

Save File

Unused Accessibility Options

By default, the game generates a save file with all different options set to their default values, which for accessibility options are all set to 0. However, under [OPTIONS] are three settings that always stay at 0 due to lacking an entry in the game's options menu. Despite these going unused, their values are added to a save file anyway and can be re-activated without modifying the game itself. They even draw icons on the left bottom of the screen.


Windows-GrappleDog-sAccessibility tags-3.png

easytimers will extend the time or speed for certain stage objects or enemies before they can launch something that hurts you. Only a handful of these objects make use of this setting:

  • Boomerang throwing its spikeball, wait time doubled.
  • Electric putting the floor under shock, wait time doubled.
  • Rails move speed, speed reduced by 50%.
  • Jetpack shooting fire bullets, wait time doubled.
  • Shooter closing its beak after firing a fire bullet, wait time doubled.
  • Chase Snake following you around, speed reduced by 37.5%.
  • Snowballer waiting before throwing its ball, wait time doubled.
  • Spike Blocks emerging spikes after stepping on them, wait time doubled.


Windows-GrappleDog-sAccessibility tags-1.png

maxhp would've let you pick between having 1, 4, 8 or 12 HP during regular play. It's unfortunately unfinished, and all it does is draw the number 8+ in the game's paw HUD and nothing else. This option also lacks an icon in sOptions_accessibility_icons and any draw functions for this option were removed in a later update.


Windows-GrappleDog-sAccessibility tags-2.png

fallspeed likely would've modified the time for enemies' attacks landing on the ground. No objects use this value and it doesn't do anything besides drawing an icon on the bottom left of the screen.

Unused Save Entries

See notes page.

Hidden Loading Text

The game's loading screen is supposed to have text that was even translated into multiple languages. However, in oTransition_Draw_64 under instructions for the Windows version lacks any kind of draw_text() argument. Pasting draw_text(405, 250, loadingString) under draw_set_font() restores the loading text.



Early Textsheet

For some odd reason, there are duplicate textsheets in the game's files titled gd_ui_text.~csv and gd_story_text.~csv. Some Microsoft Office applications tend to autosave progress by creating duplicate files starting with ~$ followed by their regular file name in the same folder. It's possible builds are pushed onto Steam while Microsoft Excel is still opened. While gd_story_text.csv in v1.0.1 matches hashes with the actual file used, gd_ui_text.~csv does not, and is actually a few kilobytes smaller, indicating that this was an early autosave. This wasn't the first time this happened either.

Changes after v1.0.1 aren't significant, but the ones present in that build for gd_ui_text.~csv is missing text for the results screen resulting in a crash, and although an entry for controller remapping does exist, there's no text at all.


Unused Dialog

Not much unused dialog remains in the game, but the dialog that wouldn't be used anyway was still translated into the game's 8 other supported languages.

NPC Error (150)

A piece of dialog in the form of an NPC Error message. This should be triggered if the values in textLang() and the .csv script don't match any valid values. Now it just crashes, leaving these unused anyway. Brazilian is the only language that wasn't translated and just reuses its English text instead.

English This NPC hasn't been given a Conversation ID YOU NEED TO CORRECT THIS
French Ce PNJ n'a pas d'identifiant de conversation À CORRIGER
Spanish A este PNJ no se le ha asignado ningún ID de conversación. TIENES QUE ARREGLAR ESTO
German Dieser NPC hat keine Gesprächs-ID erhalten. DAS MUSST DU KORRIGIEREN
Dutch Deze NPC heeft geen Conversatie-ID gekregen JE MOET DIT OPLOSSEN
Simplified Chinese 这个 NPC 没有对话证 你需要收集它
Brazilian This NPC hasn't been given a Conversation ID YOU NEED TO CORRECT THIS
Portugese Este NPC não recebeu uma ID de Conversação PRECISAS DE CORRIGIR ISTO

Goat 2 (201)

A conversation with a goat NPC asking Pablo to get a carrot. This piece of dialog was only supposed to appear in Outset Mountain, but was cut because the developer couldn't get this dialog to work without bugs or crashes, thus it was dropped. Its script with the right emotion values also exists.

Emotions Windows-GrappleDog-sDialogue NPCgoat-1.png Windows-GrappleDog-sDialogue pablo1 innocent-1.png Windows-GrappleDog-sDialogue NPCgoat-1.png Windows-GrappleDog-sDialogue pablo2 sad-1.png Windows-GrappleDog-sDialogue NPCgoat-1.png
English Heeeeeey buddy, you got any of the good stuff? The good stuff? Ya know... The Sweet Orange... The Tasty Root... Daucus Carota... Rooty-Tooty Carotty-Tots? ...What are you talking about? Carrots, buddy! Bring me one and I'll help you out.
French Hééééééé, mon vieux. T'en as de la bonne ? De la bonne ? Tu sais... la Douce Orange... l'Apiacée Exquise... la Daucus Carota... Les rotkas sont cuites ? Mais de quoi tu parles ? Des carottes, vieux ! Apporte-m'en une et je te filerai un coup de main.
Spanish Oye, camaradaaa, ¿tienes buena merca? ¿Si tengo qué? Ya sabes... Sweet Orange... Chantenay... Daucus Carota... Imperator... ... ¿De qué estás hablando? ¡De zanahorias, camarada! Dame una y te ayudaré.
German Hey, hast du was Nettes für mich? Was Nettes? Du weißt doch ... Rote Rüben. Würzige Wurzeln. Daucus Carota. Wurzelwürzige flotte Karotten? Wovon redest du da? Möhren, Mann! Bring mir eine, dann helfe ich dir!
Dutch Heyyyyy maatje, heb je wat van dat goede spul? Goede spul? Je weet wel... het zoete oranje... de heerlijke ondergrondse... daucus carota... wi-wa wortel-de-tortel? ... Waar heb je het over? Wortels, maat! Geef me er een, dan help ik jou.
Simplified Chinese 嘿兄弟,你有好东西吗? 好东西? 你知道的……香甜的……好吃的……嘎嘣脆的大胡萝卜? ……你在说什么? 胡萝卜,兄弟!给我一根,我就帮你出去。
Brazilian E aííííí, amigo! Você tem da boa aí? Da boa? Ah, você sabe... A Doce Laranjinha... A Raiz Saborosa... Daucus Carota... A querida Nonô? ...Do que você tá falando? Cenoura, amigo! Me traz uma que eu te ajudo.
Portugese Olá amigo, tens coisas boas? Coisas boas? Tu sabes... A Laranja Doce... A Raiz Saborosa... A Bela Cenorota... Ruti-Tuti Cenoura-Totes? ...Mas de que estás tu a falar? De cenouras, amigo! Traz-me uma e eu ajudo-te.

Goat 2 (Has eaten carrot) (202)

Self explainitory, one line of dialog that would trigger after you gave a carrot. This also triggers an unused emotion for the NPC of him holding the carrot while smiling.

Emotion Windows-GrappleDog-sDialogue NPCgoat eaten-1.png
English Thanks for the Carrot, buddy!
French Merci pour la carotte, mon vieux !
Spanish ¡Gracias por la zanahoria, camarada!
German Danke für die Möhre, Kumpel!
Dutch Bedankt voor de wortel, maatje!
Simplified Chinese 谢谢你的胡萝卜,兄弟!
Brazilian Valeu pela cenoura, amigo!
Portugese Obrigado pela Cenoura, amigo!

Boat Interior Interactions

Some early dialog is present in the game's data.win related to some boat interior objects, and can be found in oInteractables_text_Create. They're slightly different from their used counterparts.

Early Final
The Professor has a lot of books... Some of them even have pictures! The Professor has a lot of books. Some of them even have pictures in!
I'm not supposed to play with the toaster. Not after last time... I'm not supposed to play with the toaster anymore. Not after last time...

There's also a line for the game to use if an object was missing text.

I'm an interactable that has text! This is what I say!

Settings Description

Present in draw_options_xxx() (xxx followed by accessibility, controls, effects or graphics) is a string for when a setting was missing its description from the game's text scripts.

- Description not set -