1 điểm bởi GN⁺ 2025-09-12 | 1 bình luận | Chia sẻ qua WhatsApp
  • DOOMscrolling là một trò chơi mới trên nền web kết hợp game Doom với hành vi cuộn trang
  • Trò chơi này tiến triển chỉ bằng thao tác cuộn, và tiêu đề tin tức thực sự xuất hiện ngay trong game
  • Ở giai đoạn đầu, việc phát triển rất khó khăn nếu không có sự hỗ trợ của AI, nhưng nhờ GPT-5 mà đã có thể tạo bản prototype nhanh chóng
  • Các yếu tố như nâng cấp vũ khí, nhiều chướng ngại vật và nền ngẫu nhiên đã được áp dụng để tăng độ thú vị khi chơi
  • Tác giả chia sẻ bí quyết sản xuất, những lần thử sai và trải nghiệm sử dụng phòng thí nghiệm UI cho game khi cộng tác với AI hiện đại

Giới thiệu DOOMscrolling: Trò chơi

  • DOOMscrolling: Trò chơi là một game cuộn trang lấy cảm hứng từ Doom, chạy trong trình duyệt web
  • Người dùng có thể chơi chỉ bằng hành động cuộn màn hình, không cần các thao tác như di chuyển trái phải hay nhảy
  • Tác giả chia sẻ quá trình phát triển game, tập trung vào ý tưởng ban đầu, quá trình hiện thực hóa, những lần thử sai và trải nghiệm làm game với AI

Thử nghiệm phát triển ban đầu và thách thức

  • Tác giả không phải là một lập trình viên chuyên nghiệp, nhưng thích quá trình biến ý tưởng sáng tạo thành hiện thực bằng vibe coding
  • Trong lần thử ban đầu cách đây 9 tháng, các công cụ dựa trên LLM như GPT-4 không hiểu được thao tác cuộn nên việc triển khai đã thất bại
  • Thất bại này khiến tác giả cảm nhận rõ giới hạn của LLM cũng như giới hạn năng lực của bản thân

Thử lại với GPT-5 và phát triển prototype nhanh chóng

  • Ngay sau khi GPT-5 được công bố, tác giả đã có thể tạo prototype game chỉ trong hai giờ với hiệu quả và độ rõ ràng vượt xa trước đây
  • Cốt lõi của game là biến thể từ game bắn súng truyền thống, chỉ di chuyển tiến lùi, còn vị trí quái vật được thiết lập tương đối cố định với mặt đất
  • Ban đầu chỉ thêm 5 loại quái vật có hình dạng hình học cơ bản cùng các hoạt ảnh đơn giản
  • Trong thời gian nghỉ, tác giả tranh thủ cải thiện tính năng và dần nâng cao độ hoàn thiện cũng như độ vui của game

Nâng cấp tính năng và bổ sung yếu tố thú vị

  • Đã bổ sung các cơ chế để tạo động lực chơi và ngăn tiến độ quá nhanh (ví dụ: nâng cấp vũ khí sau khi hạ 100 quái, bức tường lửa truy đuổi nếu đứng quá lâu, thêm chướng ngại vật)
  • Nhiều yếu tố như texture nền đa dạng, bình máu, đánh dấu điểm lưu tiến trình, màn hình tạm dừng cũng được thêm vào để tăng khả năng tiếp cận và trải nghiệm người dùng

Tích hợp tiêu đề tin tức và storytelling

  • Game được kết nối với RSS feed tin tức thực tế, nên khi chơi, các tiêu đề tin theo từng ngày xuất hiện như yếu tố trang trí “cám dỗ người chơi”
  • Các tiêu đề này không ảnh hưởng trực tiếp đến gameplay, nhưng là phần dàn dựng phản ánh tính nhập vai và bản chất của doomscrolling
  • Nhờ yếu tố này, game đồng thời còn đóng vai trò như một trình đọc RSS nâng cao dựa trên một feed duy nhất

Cộng tác với AI và thử nghiệm thiết kế

  • Trong quá trình cộng tác với AI, khó khăn phát sinh ở việc phải giải thích lặp lại hoặc tinh chỉnh chi tiết
  • Thay vì prerender, tác giả tạo quái vật và các yếu tố trang trí bằng render thời gian thực ngay trong game
  • Một trang lab riêng biệt đã được tạo để thử nghiệm phong cách, cho phép tác giả trực tiếp can thiệp vào thiết kế và sử dụng các công cụ điều khiển như slider
  • Cuối cùng, tác giả từ từ hoàn thiện các quái vật và yếu tố trang trí theo hướng mộc mạc nhưng thống nhất
  • Cách làm này vẫn mang lại nhiều biến thể hình ảnh mà không gây tải lớn trong môi trường thực tế

Phát hành game và phần kết

  • Dù vẫn còn vô số ý tưởng để tiếp tục cải thiện, hiện tại tác giả đã sẵn sàng phát hành dưới dạng phiên bản 1.0 trong thời gian tới
  • Trải nghiệm chơi được đảm bảo đồng đều trên cả di động và desktop, và khi thêm vào màn hình chính, game có thể hoạt động như một ứng dụng standalone
  • Tác giả kêu gọi độc giả đăng ký newsletter và chia sẻ để ủng hộ dự án

Tóm tắt

  • DOOMscrolling mang đến một dạng trải nghiệm game web mới bằng cách kết hợp sự cộng tác giữa AI và con người, cơ chế chơi tập trung vào cuộn trang đầy mới lạ, và RSS feed tin tức thực tế
  • Đây là câu chuyện hậu trường phát triển cho thấy kết quả sáng tạo được tạo ra thông qua nhiều lần thất bại, cải tiến và thử nghiệm dùng AI như một công cụ
  • Đây là một trường hợp hữu ích cho các nhà phát triển và người làm IT quan tâm đến prototype phần mềm và game, ứng dụng AI và mở rộng trải nghiệm người dùng

1 bình luận

 
GN⁺ 2025-09-12
Ý kiến trên Hacker News
  • Thật sự rất kỳ lạ và đáng kinh ngạc khi chứng kiến những người hoàn toàn không biết viết code lại tự làm và phát hành được game máy tính
    Đặc biệt thú vị là những cách diễn đạt như: “Tôi cứ nghĩ nếu để máy tính xử lý toàn bộ phần tính toán này thì sẽ tốn nhiều bộ xử lý hơn cả lũ quái vật prerender, nhưng nó chạy rất mượt trên desktop và điện thoại, nên có vẻ không nặng đến mức đó. Nếu bị giật trên một thiết bị nào đó thì mọi người sẽ báo cho tôi biết”
    Với tư cách là lập trình viên, tôi có cảm giác bản chất công việc đang thay đổi khá nhanh từ ‘viết code để tạo ra thứ hữu ích’ thành ‘viết code để làm tốt hơn thứ mà người ta tự vibe coding ra được’
    Sự thay đổi này có lẽ giống với giai đoạn chuyển đổi đau đớn mà các nhiếp ảnh gia chuyên nghiệp từng phải trải qua khi họ buộc phải tìm ra điểm khác biệt của mình trong thời đại ai cũng có thể chụp ảnh chỉ bằng điện thoại
    Ngược lại, dù tôi vẫn có thể code trong một số lĩnh vực như web hay bản đồ, nhưng khi muốn làm nhanh một thứ gì đó ở lĩnh vực mình không có chuyên môn sâu (ví dụ: Unity), thì vibe coding bắt đầu trông thực sự hấp dẫn

    • Chúng ta đã từng trải qua kiểu cạnh tranh “bảng tính tự làm vs bảng tính do dân chuyên làm”, và đây cũng là chuyện khá khó ngay cả với những đội ngũ kỹ sư lớn, giàu kinh nghiệm. Chỉ cần hỏi đội tài chính của bạn đang dùng bao nhiêu file Excel tùy biến là biết
      A) Quả thật có rất nhiều ứng dụng hữu ích không phù hợp với bảng tính, nhưng tôi nghĩ AI đang mở ra cả phần đó theo cách mới
      B) Vô số file Excel có lỗi nghiêm trọng, vậy mà người ta vẫn dùng kết quả từ đó để đưa ra những quyết định cực kỳ quan trọng. AI cũng đang lặp lại đúng kiểu mẫu đó nên tôi thấy khá tương đồng
      Nếu là tình huống bắt buộc phải đúng 100% thì chuyên môn vẫn là thứ không gì thay thế được, nhưng nhìn vào thực tế thì cũng thấy rõ rằng chỉ cần đủ dùng, con người sẵn sàng dùng luôn cả những thứ có lỗi hiển nhiên

    • Về mặt lý thuyết tôi ủng hộ xu hướng này. Tôi nghĩ việc tạo ra một nguyên mẫu để trình diễn ý tưởng hiệu quả hơn nhiều so với việc vẽ vài nét phác trên khăn giấy rồi cứ tiếp tục tinh chỉnh cho đến khi nó gần với tầm nhìn ban đầu
      Lần này tôi đã dành vài tiếng trao đổi qua lại với Claude Code và nhờ nó làm UI mockup, và dù chỉ là mockup không cần quá chính xác, nó vẫn tự động xử lý được nhiều tính năng đáng kinh ngạc
      Ví dụ:

    • Tạo mock data dạng JSON cho danh sách và các trang để có thể thử nhiều kịch bản khác nhau
    • Điều hướng giữa các trang và hoạt động của modal
    • Thanh tiến trình và bộ đếm thời gian hoạt động
    • Chức năng sắp xếp/lọc danh sách
    • Với các chức năng vượt ngoài phạm vi mockup (ví dụ: gửi email, chặn người dùng), nó xử lý bằng toast message
    • Animation và chuyển cảnh ở mức khá ổn
    • Responsive layout hoạt động tốt hơn mong đợi trên cả mobile lẫn desktop
    • Gợi ý những ý tưởng mà tôi chưa nghĩ tới
      Trước đây tôi chỉ làm kiểu mockup này cho khách hàng, nhưng giờ có thể dùng nó để cụ thể hóa ý tưởng của chính mình, đồng thời tự hiểu được kết quả và nếu cần thì tự sửa luôn, đó là điều tôi đặc biệt thích
    • Tôi đồng cảm với phép so sánh rằng giai đoạn các nhiếp ảnh gia chuyên nghiệp phải đau đầu tìm cách khác biệt với ảnh chụp bằng smartphone là một thời kỳ chuyển đổi rất đau đớn, nhưng tôi cũng tò mò không biết có số liệu thống kê nào cho thấy nghề đó thực sự suy sụp hay không
      Ảnh tôi chụp (vốn cũng chẳng giỏi giang gì) còn lâu mới đạt mức chuyên nghiệp, thậm chí còn không bằng cả dân nghiệp dư khá khá. Dù vậy, đây hoàn toàn chỉ là câu chuyện của riêng tôi
      Tôi cũng nghĩ “bản chất công việc” vốn đã trở nên khá đa dạng rồi, nhưng bản thân sự thay đổi này vẫn là một chủ đề rất thú vị

    • “nhiếp ảnh hóa” của kỹ nghệ phần mềm đang đến

    • Ưu điểm là rất rõ ràng — tận dụng vibe coding thực sự hữu ích cho việc test thị trường hoặc xác định MVP
      Vấn đề là đôi khi các nhà sáng lập không có nền tảng kỹ thuật lại quyết định tung ra những sản phẩm nguy hiểm tới mức gần như không có bảo mật, khiến dữ liệu cá nhân nhạy cảm của người dùng có thể bị lộ sạch (đúng như một vụ app hẹn hò gần đây)
      Trường hợp lần này thì không phải vậy, và tôi thấy bản thân trò chơi cũng rất ngầu; chủ yếu tôi đang phản hồi về xu hướng mới kiểu này thôi

  • Dù không biết code, nếu một người có thể tự mình làm ra công cụ chỉnh sửa asset (“lab”), thực sự dùng nó và từ đó nhận ra nhu cầu, thì bản thân điều đó đã cho thấy tiềm năng của một kỹ sư giỏi rồi
    Thêm nữa, việc nghĩ ra một cơ chế điều khiển chuyển động độc đáo mà trước giờ chưa từng thấy cũng thật sự rất tuyệt. Mong họ sẽ tiếp tục làm game

    • Bản thân trò chơi cũng thực sự rất vui
  • Câu “đã làm ra UI lab có thể tự điều chỉnh bằng ChatGPT (kèm slider)” khiến tôi nhớ đến bộ công cụ tạo máy tính kiểu Steve Jobs của riêng mình
    Thực ra kiểu công cụ tham số như thế này vốn đã được dùng rất nhiều trong game art, nhưng sự tương đồng này khá thú vị nên tôi nhắc đến thôi
    https://www.folklore.org/Calculator_Construction_Set.html

  • Tôi không quá ấn tượng với chuyện ChatGPT đã viết code cho game này. Thứ khiến tôi ấn tượng hơn là con mắt thẩm mỹ và gu của tác giả
    Khi những công cụ này tiếp tục tốt hơn và rẻ hơn, tôi thực sự háo hức muốn xem những thiên tài sáng tạo khác sẽ làm được gì
    Tôi có cảm giác hiện tại chúng ta đang sống trong một thời đại sáng tạo mới, tương tự như thời điểm máy ảnh 35mm lần đầu xuất hiện vào thập niên 1920

    • Những game kiểu này từ lâu đã có thể làm được bằng nhiều môi trường no-code/low-code, từ Shockwave (1995) cho tới visual scripting của Unity ngày nay
      LLM có thể giúp thiết kế game theo hướng cởi mở hơn so với các công cụ trước đây, nhưng tôi không nghĩ trường hợp này đủ để chứng minh khả năng đó
  • Không biết game này có lấy cảm hứng từ tựa game sắp ra mắt Death by Scrolling của Ron Gilbert hay không
    Tôi thấy có nét tương đồng, nhất là ở hiệu ứng lửa
    https://www.grumpygamer.com/deathbyscrolling5/

  • Cuối cùng tôi cũng gặp được một trò chơi mô phỏng đúng năng suất thường ngày của bản thân
    Tôi bắt đầu với ý định chỉ chơi 5 phút, thế mà 3 tiếng trôi qua lúc nào không hay; làm những việc vô nghĩa, thấy lo âu mơ hồ và có cảm giác như đang bị quỷ đuổi theo
    Độ chân thực quá mức đáng sợ

    • Nếu bạn đang làm chuyện này trong giờ làm thì tôi khuyên đừng căng thẳng. Đó là dấu hiệu cho thấy cuối cùng bạn cũng đã “thành công” trong sự nghiệp rồi
  • Sẽ thật tuyệt nếu có tùy chọn chỉnh độ nhạy chuột hoặc flicking (không biết có đúng thuật ngữ không, ý là sau khi nhấc ngón tay ra thì cuộn vẫn tiếp tục trôi theo quán tính)
    Hiện tại chuyển động hơi nặng, nên tôi phải cuộn chăm hơn gấp ba lần so với tốc độ mình thấy thoải mái
    Ngoài điểm đó ra thì đây là ứng viên giết thời gian số một của tuần này

  • Tôi đã làm một game đơn giản bằng AI rồi mang đi dự hackathon
    Bạn là AI đang chơi một game để thu thập dữ liệu huấn luyện cho AI
    Nó mang phong cách warioware và có nhạc nền cực kỳ khó chịu
    https://vibeware.vercel.app/
    Giành hạng nhì! cảm ơn claude

    • 4242 ;_;
      Ngoài ra, cái đó không phải trụ cứu hỏa

    • Tôi đã chơi thử và thấy rất stress, nghĩa là bạn làm quá tốt rồi

    • Game thật sự rất hay!
      Tôi tò mò không biết có bao nhiêu loại minigame
      (Và tôi hơi tiếc là trong nhiệm vụ Instagram, bấm đúp vào ảnh lại không có phản ứng gì)

    • Cực kỳ vui nhộn và giải trí

    • Xác nhận sự hiện diện của tptacek

  • Tôi thấy bản thân trò chơi khá vui, nhưng việc một người nói rằng mình “không biết code” lại có thể dùng AI theo kiểu thoải mái để tạo ra kết quả như thế này khiến tôi hơi thấy bất an
    Tôi biết đây chỉ là một trò đùa hay một game đơn giản thôi, nhưng còn code thực tế thì tôi không dám tưởng tượng nữa

    • Tôi không định bênh generative AI (thực ra tôi chỉ khuyên dùng AI khi đã có đủ kinh nghiệm với ngôn ngữ/framework liên quan)
      Nhưng cũng không nên bỏ qua thực tế rằng con người cũng tạo ra lượng code bừa bộn nhiều đến khó tin
      Mỗi tuần tôi dành khoảng một nửa thời gian để debug legacy code cho thiết bị tự động hóa cũ và các chương trình PLC, đặc biệt là ladder logic
      Dù là firmware viết bằng C, ứng dụng .NET từ thời xa xưa, hay chỉ là PLC code cũ, phần lớn thời gian của tôi đều trôi qua trong việc vật lộn với câu hỏi “rốt cuộc lập trình viên ban đầu đã nghĩ gì khi viết cái này?”
      Trước đây tôi không hiểu vì sao các lập trình viên kỳ cựu lại hay than phiền về “spaghetti code”, còn bây giờ thì tôi thực sự thấm thía
      Tôi đang trực tiếp trải nghiệm việc sửa code của người khác, đặc biệt là kiểu code được viết như thể “chỉ cần chạy đúng một lần rồi sẽ chẳng bao giờ đụng lại nữa”, phiền toái đến mức nào
      Rốt cuộc tôi nhận ra khổ sở đến mức đôi khi viết lại firmware từ đầu còn tốt hơn
      Phần lớn con người viết code không hay. Chỉ một số ít mới tạo ra được phần mềm thật sự đẹp và xuất sắc, và họ là thiểu số
      Tóm lại, nếu cho AI ăn code rác thì đương nhiên đầu ra cũng sẽ ra như vậy thôi

    • Spoiler: code không tệ như bạn nghĩ đâu

  • Đây là một ví dụ cho thấy vẫn còn rất nhiều cơ hội để thử sức với những ý tưởng mới mẻ và đơn giản – quá tuyệt vời