Pertemuan 6

Scripting I: Visual Acting & Dialogue

Seni menghidupkan karakter melalui dialog yang kuat dan gerakan visual yang ekspresif. Di pertemuan ini, game kamu mulai benar-benar "hidup".

150 menit
Scripting Workshop

Target Kompetensi

Sub-CPMK P6

Mahasiswa mampu mengimplementasikan dialog multi-karakter yang ekspresif, memanipulasi ekspresi sprite, menerapkan staging/posisi karakter yang dramatik, dan menguasai teknik penulisan dialog yang menarik dan natural.

Mendefinisikan Karakter: Lebih dari Sekadar Nama

Objek Character() di Ren'Py jauh lebih powerful dari yang kamu kira. Kamu bisa mengkustomisasi hampir setiap aspek tampilannya.

Kustomisasi Character Object
# Karakter dasar
define n = Character("Nabilah")

# Karakter dengan warna nama
define n = Character("Nabilah", color="#c8ffc8")

# Karakter dengan dialog miring (untuk pikiran/monolog)
define pikiran = Character("", what_italic=True, what_color="#aaaaaa")

# Karakter tanpa nama (narator)
define narr = Character("", kind=narrator)

# Karakter dengan gambar nama yang berbeda dari teks
define a = Character("Ahmad", color="#ffc8c8", who_bold=True)

# NPC dengan nama yang berubah
define orang_misterius = Character("????", color="#888888")
Trik Nama Karakter Berubah

Untuk karakter yang namanya terungkap di tengah cerita (misalnya "???" yang ternyata adalah Budi), gunakan $ orang_misterius = Character("Budi", color="#ffd700") untuk mengganti definisi karakter secara dinamis.

Say Statement: Cara Menulis Dialog yang Benar

Berbagai Bentuk Dialog
# Dialog dengan nama karakter
n "Ini dialog Nabilah."

# Dialog narator (tanpa nama)
"Ini narasi. Tidak ada nama yang muncul."

# Dialog internal/pikiran dengan kurung
a "(Dalam hati) Kenapa ia begitu dingin padaku?"

# Dialog panjang yang dibagi (pemain klik dua kali)
n "Sudah kubilang berkali-kali, masalah ini tidak sesederhana yang kamu pikir."
n "Ada banyak hal yang harus dipertimbangkan sebelum mengambil keputusan."

# Pause dalam dialog (jeda dramatis)
a "Aku... {w}maaf."           # {w} = tunggu klik
a "Aku benar-benar {p}minta maaf."  # {p} = pause singkat

# Dialog dengan teks berwarna
n "Jawaban yang {color=#ff0000}salah{/color} adalah pilihan pertama."

# Dialog dengan teks tebal
n "Ini adalah {b}keputusan paling penting{/b} dalam hidupmu."

# Substitusi variabel dalam dialog
default nama_tokoh = "Ahmad"
n "Hei, [nama_tokoh]! Sudah lama tidak jumpa!"   # [variabel] = substitusi

Jenis-jenis Dialog dan Kapan Menggunakannya

JenisKodeKapan DigunakanContoh
Dialog Langsung n "..." Percakapan antar karakter "Hei Ahmad, apa kabar?"
Narasi "..." Deskripsi situasi, setting scene "Matahari mulai tenggelam di balik gedung kampus."
Monolog Internal a "(...)..." Pikiran karakter, keraguan "(Apa yang harus kukatakan sekarang?)"
Efek Suara Teks "..." Deskripsi aksi non-verbal "*Suara notifikasi HP berbunyi*"
Dialog Off-Screen suara "..." Suara karakter yang tidak terlihat define suara = Character("???", color="#aaaaaa")

Manipulasi Ekspresi: Menghidupkan Emosi

Pergantian ekspresi yang tepat waktu adalah kunci visual acting yang baik. Ekspresi harus berganti tepat sebelum dialog yang mencerminkan emosi tersebut.

Teknik Pergantian Ekspresi
label scene_konflik:
    scene bg_koridor_kampus with fade
    show nabilah normal at left with dissolve
    show ahmad normal at right with dissolve
    
    n "Ahmad, kita perlu bicara."
    
    show ahmad bingung        # Ekspresi berganti sebelum dialog
    a "Ada apa? Kamu terlihat serius."
    
    show nabilah sedih        # Nabilah berubah ekspresi
    n "Aku tahu kamu yang mengambil softcopy tugas itu."
    
    show ahmad kaget          # Reaksi terkejut Ahmad
    a "Aku... Bukan seperti yang kamu pikirkan."
    
    show nabilah marah        # Nabilah memuncak
    n "Lalu jelaskan. Aku mendengarkan."
    
    show ahmad normal         # Ahmad mengambil napas
    a "(Menunduk) Kamu benar. Maaf."

Urutan Ekspresi yang Dramatis

Prinsip Visual Acting

Ekspresi berganti SEBELUM dialog yang mencerminkan emosi tersebut, bukan sesudahnya. Ini seperti akting di teater — aktor menunjukkan emosi sebelum berbicara, bukan setelah.

Posisi dan Gerakan Karakter Lanjutan

Transform dan Posisi Kustom
# Posisi bawaan
show nabilah normal at left       # Kiri
show nabilah normal at center      # Tengah
show nabilah normal at right       # Kanan

# Lebih dari 2 karakter
show karakter_a at left
show karakter_b at center
show karakter_c at right

# Posisi kustom menggunakan xpos dan ypos
show nabilah normal:
    xpos 0.2          # 20% dari kiri layar
    ypos 0.0          # Dari atas

# Karakter menghilang ke sisi (pergi dari scene)
show nabilah normal at offscreenleft with ease   # Keluar kiri
show nabilah normal at offscreenright with ease  # Keluar kanan

# Karakter masuk dari sisi
show ahmad normal at offscreenleft    # Mulai dari luar
show ahmad normal at left with ease  # Geser masuk ke posisi kiri

Stage Direction: Sutradara Game Kamu

Stage direction adalah teknik menyusun karakter dan visual untuk menciptakan dampak dramatis yang maksimal. Ini yang membedakan visual novel biasa dengan yang benar-benar berkesan.

Teknik Staging yang Efektif

Jarak Karakter = Jarak Emosional

Karakter yang saling percaya berdiri dekat (satu di kiri-tengah, satu di kanan-tengah). Karakter yang berkonflik berdiri berjauhan (kiri paling pinggir dan kanan paling pinggir).

Zoom untuk Momen Penting

Gunakan CG (gambar event) atau tampilkan karakter lebih besar untuk momen-momen kritis cerita. Perubahan skala menciptakan fokus visual.

Kekosongan yang Bermakna

Setelah karakter pergi (hide), biarkan sejenak layar hanya menampilkan background. Kekosongan ini menciptakan rasa sunyi yang kuat secara emosional.

Contoh Adegan Dramatis Lengkap

Adegan Perpisahan yang Dramatis
label scene_perpisahan:
    scene bg_taman_sore with fade
    "Sore terakhir sebelum Ahmad berangkat ke Jakarta."
    
    show nabilah sedih at left with dissolve
    show ahmad normal at right with dissolve
    
    n "Jadi... ini hari terakhir?"
    
    show ahmad sedih
    a "Iya. Besok pagi aku berangkat."
    
    "Keduanya diam untuk beberapa saat."   # Narasi tanpa dialog = pause dramatis
    
    n "Kamu akan baik-baik saja kan, di sana?"
    
    show ahmad senang                # Senyum meski sedih
    a "Tentu. Dan kamu juga harus baik-baik saja di sini."
    
    # Ahmad mulai pergi
    show ahmad normal at offscreenright with ease
    
    # Nabilah sendirian di layar
    show nabilah sedih at center with ease
    "Nabilah menatap punggung Ahmad yang menghilang."
    
    # Fade ke hitam untuk menutup scene
    scene bg_taman_sore with fade    # Atau scene black with fade

Teknik Menulis Dialog yang Menarik

Prinsip Dialog yang Baik

Dialog Harus Terdengar Natural

Baca dialogmu keras-keras. Jika terdengar kaku, itu perlu direvisi. Orang tidak bicara seperti buku teks.

Setiap Karakter Punya Cara Bicara Sendiri

Ahmad mungkin bicara formal dan hati-hati. Nabilah mungkin lebih santai dan spontan. Perbedaan ini membuat karakter terasa nyata.

Kurangi Penjelasan Berlebihan

Dialog yang baik tidak menjelaskan segalanya. Biarkan emosi muncul dari situasi, bukan dari teks yang memberi tahu pembaca harus merasakan apa.

Setiap Dialog Harus Bermakna

Jika sebuah dialog bisa dihapus tanpa mengubah cerita atau karakter, hapus saja. Setiap baris harus memiliki fungsi.

Dialog yang Buruk vs Baik

Dialog BurukDialog BaikKenapa Lebih Baik?
"Aku sangat sedih dan tidak tahu harus berbuat apa karena masalah ini sangat berat." "(Diam panjang) Aku lelah, Ahmad. Benar-benar lelah." Emosi disampaikan secara tidak langsung, lebih kuat
"Seperti yang kamu ketahui, korupsi adalah masalah besar di negeri kita." "Tanda tanganku di sini... berarti aku sama seperti mereka." Pesan tersampaikan melalui situasi konkret, bukan ceramah
"Kenapa kamu marah? Apa yang membuatmu marah?" "(Suara tercekat) Pergi." Satu kata mengandung lebih banyak emosi dari satu paragraf
Prompt AI untuk Memperbaiki Dialog
"Berikut adalah dialog dari visual novel saya yang terasa kaku: [PASTE DIALOG KAMU]. Tolong perbaiki agar terdengar lebih natural dan emosional. Karakter A adalah [DESKRIPSI], karakter B adalah [DESKRIPSI]. Konteks: [SITUASI CERITA]. Pertahankan pesan utama tapi buat dialognya lebih hidup."

Tugas Pertemuan 6

Deadline: Sebelum Pertemuan 7

Lanjutkan Proyek: Visual Acting Scene

  1. Tulis minimal 2 scene lengkap dalam proyek kamu menggunakan aset dari P5.
  2. Setiap scene harus mengandung: pergantian ekspresi minimal 3x, penggunaan transisi (dissolve/fade), dan minimal 8 baris dialog.
  3. Implementasikan minimal 1 teknik staging dramatis (karakter sendirian, karakter bergerak, dll).
  4. Gunakan variasi teks: italic, bold, atau substitusi variabel dalam dialog.

Kuis Pemahaman Pertemuan 6

Uji Pemahamanmu!

1. Kapan waktu yang tepat untuk mengganti ekspresi karakter?

Setelah dialog yang mencerminkan emosi tersebut
Sebelum dialog yang mencerminkan emosi tersebut
Di awal setiap scene
Hanya saat ada transisi scene

2. Apa fungsi tag {w} dalam teks dialog Ren'Py?

Mencetak teks dengan huruf kapital
Membuat jeda dan menunggu klik sebelum melanjutkan teks
Mengubah warna teks menjadi putih
Mengganti background

3. Apa tujuan teknik staging "karakter sendirian di layar" dalam visual novel?

Menghemat memori program
Karena hanya ada satu aset karakter
Menciptakan emosi kesepian dan kekosongan yang dramatis
Menunjukkan bahwa scene sudah selesai
Kembali ke P5 Lanjut ke P7: Script Flow