editor: LOD_MAP table is missing some LOD models

Đang mở
#555 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

  • #556 của @Fernando-A-Rocha — đã đóng, không merge

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
36/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
lua, python
Lĩnh vực
game-dev

Hướng nghiên cứu

Start with [editor]/editor_main/server/mapEditorScriptingExtension_s.lua at the linked LOD_MAP table, then review client/main.lua’s processCursorLineOfSight() use of processLineOfSight and how it obtains buildingId and buildingLOD. The issue cites model 3589 mapping to LOD 3592 and a Python script that parsed IPL files; use those as starting points to identify missing associations. Done means LOD_MAP includes the missing GTA:SA object-to-LOD mappings.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

enhancement

Which resource(s) have this problem?
editor_main => server => mapEditorScriptingExtension_s.lua

https://github.com/multitheftauto/mtasa-resources/blob/d4c04db009cdd68913fdb47bbc73acd91e63f981/%5Beditor%5D/editor_main/server/mapEditorScriptingExtension_s.lua#L78

Describe the bug
This table is missing certain object model ID => LOD model ID associations.

e.g. ID 3589 (compfukhouse3)'s LOD model is 3592 (LODpfukhouse3)

To Reproduce
The correct LOD model of a world object / building is actually provided in processLineOfSight ("This function casts a ray between two points in the world, and tells you information about the point that was hit, if any."), which is used by the Map Editor in editor_main => client => main.lua @ processCursorLineOfSight() obtaining buildingId and buildingLOD.

Expected behavior
LOD_MAP should include all Object=>LOD model IDs in GTA:SA.

Screenshots

Version
MTA LOD Table [object] = [lodmodel]

Version of Apr 11, 2023 (last change as of submitting this issue)

Additional context
I created a Python script to parse all of the game's IPL files (including the binary IPLs converted to text), and create a dictionary of object model ID => LOD object model ID according to the info in https://gtamods.com/wiki/LOD#GTA_San_Andreas_.26_GTA_IV . I obtained the same LOD_MAP table in this experiment.

I noticed that some LOD Models like LODpfukhouse3 (3592) aren't actually linked by index by any object model in the same IPL file, which is why the script did not find them... Hmm...

EDIT: I understand now, Rockstar separated some LODs into separate binary IPL files :D

Ngôn ngữ chính
Lua
Star
185
Fork
180
Merge trung bình
5 ngày 13 giờ
Pull request đã merge (30 ngày)
2

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của multitheftauto/mtasa-resources

Tất cả issue của multitheftauto/mtasa-resources

Issue tương tự

Thêm issue về Lua

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.