Den Titelbildschirm zu überspringen ist mit dem Standard XP-Script sehr einfach getan.
Du änderst lediglich im Script: "Scene_Title" die Main-Methode wie folgt:
Code:
def main
    # If battle test
    if $BTEST
      battle_test
      return
    end
    # Load database
    $data_actors        = load_data("Data/Actors.rxdata")
    $data_classes       = load_data("Data/Classes.rxdata")
    $data_skills        = load_data("Data/Skills.rxdata")
    $data_items         = load_data("Data/Items.rxdata")
    $data_weapons       = load_data("Data/Weapons.rxdata")
    $data_armors        = load_data("Data/Armors.rxdata")
    $data_enemies       = load_data("Data/Enemies.rxdata")
    $data_troops        = load_data("Data/Troops.rxdata")
    $data_states        = load_data("Data/States.rxdata")
    $data_animations    = load_data("Data/Animations.rxdata")
    $data_tilesets      = load_data("Data/Tilesets.rxdata")
    $data_common_events = load_data("Data/CommonEvents.rxdata")
    $data_system        = load_data("Data/System.rxdata")
    # Make system object
    $game_system = Game_System.new
    self.command_new_game
end
Die Änderung ist, dass du eine Menge aus der Methode löschst, nämlich die Erzeugung von dem Fenster, dem Hintergrund, der Updateroutine, etc. Du lässt lediglich alle Daten laden und gibst dann den Befehl das Spiel zu starten.
Es könnte sein, dass immernoch ein Bestätigungssound abgespielt wird, in dem Fall musst du lediglich die Methode: "command_new_game" so umschreiben, dass der Sound nichtmehr abgespielt wird.

Um die ID eines Tiles an einer Position zu erhalten musst du, mit den standard Klassen, lediglich $game_map.data[x, y, z] aufrufen.
Damit erhälst du die ID des Tiles an der Position (x,y) im Layer z.
Die Layer starten bei 0 und gehen bis einschließlich 2.
Um in Abhängigkeit der Terrain-ID auf welcher sich der Spieler befindet einen Sound abspielen zu lassen müsstest du lediglich die Game_Player-Klasse umschreiben um in der Updateroutine eine Terrain-Abfrage einzubauen und dann einen Sound abspielen zu lassen.

Für den Standard-Input gibt es die RGSS Input-Klasse.
Diese bietet die Funktionen .trigger? (einmaliger Tastendruck), .press? (Tastendruck allgemein), .release? (Taste wurde gerade losgelassen) und .repeat? (einmaliger Tastendruck und wiederholter Tastendruck mit gewisser Verzögerung).
Die Tasten sind als Konstanten in der Input-Klasse definiert. Da solltest du am besten die Hilfsdatei öffnen.