1 điểm bởi GN⁺ 2023-11-22 | 1 bình luận | Chia sẻ qua WhatsApp

Vì sao kích thước mặt trăng thay đổi

  • Trong game, texture của mặt trăng được cung cấp và đặt lên bầu trời đêm với kích thước phù hợp.
  • Về sau, 4 nghệ sĩ đã yêu cầu thay đổi kích thước mặt trăng; 2 người muốn kích thước thực tế hơn, 2 người còn lại muốn kích thước đậm chất điện ảnh.
  • Đã đề xuất cho phép thay đổi kích thước mặt trăng ngay trong game; vì lúc đó đang làm súng bắn tỉa, nên thiết lập để khi người chơi bắn vào mặt trăng bằng súng ngắm, nó sẽ chuyển giữa ba kích thước (nhỏ, vừa, lớn).
  • Các nghệ sĩ không đưa ra quyết định cuối cùng nên nó được giữ nguyên như vậy, và tính năng này vẫn còn trong game "SA".

Ý kiến của GN⁺

  • Điểm quan trọng nhất của bài viết này là nó cho thấy một giải pháp sáng tạo phát sinh trong quá trình phát triển game đã trở thành một yếu tố thú vị còn được giữ lại trong game như thế nào.
  • Đây là một ví dụ về việc linh hoạt giải quyết xung đột quan điểm có thể phát sinh trong quá trình hợp tác giữa nhà phát triển game và nghệ sĩ, và những câu chuyện hậu trường như vậy cũng mang đến đề tài thú vị cho người chơi.

1 bình luận

 
GN⁺ 2023-11-22
Ý kiến trên Hacker News
  • Tôi thích những câu chuyện hậu trường phát triển game kiểu này. Chúng giống như những di vật thú vị của quá trình phát triển
    Một thứ tôi đặc biệt thích là màn hình chọn màn chơi ẩn của Sonic 3D: https://www.youtube.com/watch?v=ZZs2HUW9tDA

    • Có những easter egg tôi rất thích. Khi chơi bản F.E.A.R. đầu tiên, tôi thấy máy pha cà phê trong bếp văn phòng có một tên thương hiệu lạ; đối chiếu với phần credit của game thì nó khớp với tên của một trong các họa sĩ của game
      Nhưng thứ tôi thích nhất vẫn là khoảnh khắc phát hiện ba vỏ sò gắn trên tường cạnh bồn cầu trong Deus Ex: Human Revolution
    • Tôi rất thích những câu chuyện hậu trường như thế này. Một chuyện thú vị là cối xay gió trong Perfect Dark thực ra là pháo tự động/tháp pháo được đổi skin. Có vẻ họ làm vậy để dễ triển khai chuyển động hơn
      Vì thế nếu dùng cheat hoặc glitch để đến quá gần, cả cối xay gió sẽ quay lại và bắn về phía người chơi: https://www.youtube.com/watch?v=r00LITqBDEg
      Cơ chế tàu trong Fallout 3 cũng được triển khai như một mảnh giáp có thể mặc: https://www.pcgamer.com/heres-whats-happening-inside-fallout...
      Năng lực Ascend trong Tears of the Kingdom ban đầu cũng là công cụ dành cho nhà phát triển, nhưng họ nhận ra nó khiến việc di chuyển trong hang động tiện và vui hơn nhiều nên đã tái sử dụng thành năng lực trong game: https://www.gamespot.com/articles/zelda-tears-of-the-kingdom...
    • Trong GTA có một easter egg mà gần như không ai từng thấy. Không thể tiết lộ ý nghĩa của nó. Đã có sự hy sinh :p
      https://www.reddit.com/r/gaming/comments/3ylmm4/comment/cyet...
    • Câu chuyện tôi thích nhất là các game Pokemon mới luôn có một biển được render đầy đủ, làm hỏng thời gian tải, nhưng theo tôi nhớ thì thực tế lại không được khám phá
    • Ban đầu tôi khá khó chịu vì họ trình bày chuyện này bằng video. Tôi đã nghĩ sao không nói thẳng nội dung là gì, nhưng khoảng 5 giây sau thì bị cuốn hoàn toàn
      Thực sự đáng xem
  • Nếu muốn xem thực tế nó trông như thế nào, bạn có thể xem trong video này:
    https://www.youtube.com/watch?v=GCcd6jEEKQU

    • Bài blog nói là nhỏ, vừa, lớn, nhưng trong video này có vẻ có khoảng 8 kích cỡ. Không hiểu sao như vậy còn buồn cười hơn
      Có vẻ các designer đã phải tự xem mọi lựa chọn ngay trong game
    • Hoàn toàn lạc đề, nhưng chuyện này làm tôi nhớ đến một suy tư triết học mơ hồ của một chàng trai trẻ vào mùa hè ở Iraq nhiều năm trước: https://www.youtube.com/watch?v=fIhQllAP5uY
    • Nhưng tại sao lại là hình elip? Chẳng phải nên sửa cái đó trước kích cỡ sao
  • Không có đoạn code nào sống lâu bằng bản sửa tạm thời

    • Khi The Division bản đầu ra mắt, có người đã gom các comment trong code thành một danh sách, và trong đó đầy những thứ như “Fix by”, “DO NOT SHIP THIS CODE”, “Temp fix”, “không biết vì sao code này chạy, refactor sau”
      Đọc khá buồn cười
    • The Codeless Code có một bài thơ liên quan:
      http://thecodelesscode.com/case/234?lang=nl
      Thậm chí còn có cả mặt trăng
    • Một SRE ở công ty tôi từng làm cùng hay nói rằng đặt tên thứ gì đó là temporary ___ là cách tốt nhất để khiến không ai động vào đoạn code đó
    • Không có gì vĩnh viễn hơn một giải pháp tạm thời
      Tục ngữ Nga cổ
    • Chuyện này cũng không chỉ đúng với phần mềm
  • Điều kỳ lạ nhất là chuyện này không được ai kiểm chứng. Công ty cứ tin lập trình viên, lập trình viên đưa nó vào, và không ai nói gì. Nó cứ chạy và mọi người đều hài lòng
    Trong phát triển web, chỉ đưa một dòng chữ lên màn hình cũng đã rất vất vả. Thực sự cực nhọc. Ai cũng có ý kiến về việc code nên trông ra sao, nên hoạt động thế nào, và soi từng từ đến chết
    Bên trên nỗi đau nội bộ đó là hàng megabyte các lớp trừu tượng khổng lồ, có lẽ cũng được tạo ra qua cùng nỗi đau ấy. Trớ trêu là rất ít lập trình viên web thực sự biết mình đang làm gì, có lẽ khoảng 4%. Trông như thể họ đang tạo dáng để biện minh cho lý do tồn tại của mình

    • Có vẻ nhận định đó giả định nhiều hơn những gì tác giả muốn nói. Việc không nhắc đến không có nghĩa là không có quy trình kiểm chứng
  • Tôi không ngờ lời giải thích lại là thế này. Tôi cứ tưởng đó chỉ là một trò đùa ngớ ngẩn kiểu “bắn mặt trăng

    • Đây là bài đầu tiên hôm nay khiến tôi thật sự bật cười
  • Sau khi làm phần mềm một thời gian, câu trả lời cho những câu hỏi kiểu này hầu như luôn là “còn có những việc quan trọng hơn

  • Hồi thời PS1, tôi đang làm một game F1. Studio muốn sa thải một họa sĩ texture đường đua và lấy một texture ở mặt sau bảng phanh ra làm cớ
    “Cái này là gì?”
    Đó chỉ là texture cỡ 16x16 nên anh ta có thể nói gì cũng được, nhưng anh ta đáp: “Đó là người que thò của quý ra!” Tự tay đưa đạn cho họ luôn
    Liên quan đến mặt trăng, có lần tôi làm một bản demo/prototype và đưa vào một vòng QA nhẹ trước khi gửi cho nhà phát hành. Một người QA đã báo bug rằng, dù nói đúng nhưng thật khiến người ta thở dài, xét theo vị trí bối cảnh của game thì mặt trăng lẽ ra phải được xoay, nhưng mặt trăng đang bị lộn ngược

    • Nếu dù sao cũng đang trong tình huống sắp bị sa thải và lại trả lời như vậy, có vẻ chính anh ta cũng biết chuyện gì đang xảy ra và quyết định tung cú cuối trước khi ra đi
  • Tham khảo thêm cái này:
    https://news.ycombinator.com/item?id=9137736
    “Cứ bỏ con vịt ra là được”

    • Câu trả lời có lẽ là cái này:
      if(time() > 10_years_in_future)
      duck.enable();
  • Vì hoài niệm, tôi muốn bắt tay lập trình viên hoặc đội đã đưa vào đoạn mã cho phép dùng mã cheat

    • Chuyện đó khá chuẩn hồi ấy, và tôi nghĩ cũng được dùng để test
      Ví dụ, chế độ bất tử cho phép bay quanh bản đồ là tiền thân của fast travel
      Máy tính ngày nay mạnh đến mức có thể có cả một trình chỉnh sửa hoàn chỉnh làm gần như mọi việc mà mã cheat từng làm, nhưng ngày xưa, khi thiếu tiền mà muốn kiểm thử việc xây một thứ X không thể xây được, chỉ cần vài phím để đổi giá trị hex và lập tức đưa tiền lên gần mức tối đa, nhờ đó test hiệu quả hơn
      Mã cheat được giấu đủ khó để người chơi bình thường khó tình cờ tìm ra, nhưng không đến mức người chơi không thể dùng
      Logic có lẽ là nếu đã mua game thì bạn nên có quyền truy cập mọi nội dung. Ngày nay game đã trở thành ngành kinh doanh quá lớn, nên mọi thứ trở nên quá nghiêm túc
    • Bạn may mắn đấy. Cùng một người đó ;) https://insiderockstarnorth.blogspot.com/2023/11/the-trouble...
    • Cái này lẽ ra nên được giữ lại:

      Va chạm trong game thường khác với các polygon hiển thị, vì phát hiện va chạm tương đối chậm. Một tòa nhà có 10.000 polygon hiển thị có thể chỉ có 1.000 polygon va chạm. Kết quả là trên bản đồ có thể xuất hiện những lỗ hổng vô hình. Đây chính là điều xảy ra khi bạn rơi xuống dưới bản đồ.
      Vì vậy, tester rất khó kiểm thử va chạm của bản đồ. Đến thời gta4, nhân vật có thể rơi xuống dưới bản đồ tùy theo animation, và đặc biệt khó vì tester không có cách nào tự mình bước lên mọi phần của bản đồ.
      Vì thế họ đã yêu cầu súng ragdoll. Alexander Roger đã tạo một khẩu súng đặc biệt bắn ra nhân vật ragdoll thay vì đạn. Các tester có thể đi quanh bản đồ và bắn ragdoll vào mọi tòa nhà, ngọn đồi. --https://insiderockstarnorth.blogspot.com/2023/11/bugs-bugs-b...

    • Cho đến khi bắt đầu học lập trình ở trường và hiểu đúng debugging nghĩa là gì, tôi vẫn không hiểu mục đích của “debug mode” mà các sách hướng dẫn chơi game chỉ cách mở khóa là gì
      Tôi từng nghĩ nó được đưa vào để người chơi tìm ra và tận hưởng, giống như mã cheat. Sau này tôi mới nhận ra những thứ như model viewer, event viewer, chọn màn đều được phát triển cho đội QA, hoặc để đội QA sử dụng
  • Cái này giống giai thoại dân gian về ứng dụng Calculator của Jobs, phiên bản mặt trăng

    • Chỉ khác là bên này đã được thực thi thành công