Tags:
Node Thumbnail

ภายหลังจาก Hoyoverse (ชื่อเดิมคือ Mihoyo) ผู้พัฒนาเกมมือถือที่เป็นกระแสโด่งดังอย่างมากในช่วงปี 2020 ได้ทำอัพเดทตัวเกมเป็น Version 4.3 เมื่อวันที่ 20 ธันวาคม 2566 ที่่ผ่านมา กลับพบว่ามีผู้เล่นส่วนหนึ่งไม่สามารถเข้าเกมได้ อาการที่เกิดขึ้นคือหลังจากกดปุ่ม launch แล้วตัวเกมไม่ถูกเปิดขึ้นมา

ผู้ใช้ Reddit นามว่า MinusPL ค่อนข้างมั่นใจว่าปัญหาดังกล่าวเกิดจากการรองรับการชุดคำสั่ง SSE 4.1 และ SSE 4.2

แน่นอนว่าผู้มีเล่นที่มีปัญหาเดียวกันนี้มา comment ตอบมากมาย โดยส่วนมากมักจะเป็นผู้เล่นที่ใช้ CPU รุ่นเก่าราว 10 ปีขึ้นไปทั้งสิ้น

No Description

ณ วันที่เขียนข่าว (26/12/2566 19.33น.) ทางบริษัท hoyoverse เองยังไม่แจ้งให้ผู้เล่นว่ารับทราบถึงปัญหานี้แล้วและยังไม่มีวิธีแก้ไขออกมาแต่อย่างใด

[แก้ไข] ทางบริษัทได้ประกาศว่าทราบถึงปัญหาดังกล่าวแล้วจะแก้ไขในอัพเดทถัดไปเพื่อให้รองรับอุปกรณ์ดังกล่าว

ผู้เล่นจึงมีหนทางแค่สามทางเท่านั้น

  1. รอผู้พัฒนาออกแพทอัพเดทตัวเกม
  2. เล่นเกมบนแพลตฟอร์มอื่น เช่น มือถือ PS 5 หรือ บน Nvidia Geforce Now (Cloud Gaming)
  3. ซื้อ CPU รุ่นใหม่ (แน่นอนว่าต้องซื้อ Mainboard และ Ram ใหม่ด้วย = =")

Minimum System requirement ตอนเกมเปิดให้บริการวันแรก

Minimum System Requirements Version 4.1

ที่มา : reddit

Get latest news from Blognone

Comments

By: aeksael
ContributoriPhoneWindows PhoneAndroid
on 26 December 2023 - 19:58 #1301980
aeksael's picture

ใช่แล้วแรกเริ่มเพราะเราพบปัญหานี้ แก้ทุกทางไม่หายจนกระทั้งลงOSใหม่ก็ไม่หาย เอะใจแปลกๆละ เลยค้นหาแล้วเจอคนที่เป็นเหมือนกัน


The Last Wizard Of Century.

By: Hoo
AndroidWindows
on 26 December 2023 - 22:11 #1301981

บัคแบบนี้แก้ยาก
ถ้าเป็นที่ คอมไพเรอร์ ก็ตั้งให้ไม่ใช้ SSE
สร้างเป็น _NO-SSE.exe มาแก้ขัด แต่ความเร็วน่าจะตกฮวบ

แต่ถ้า Mihoyo เขียน function assembly เองนี่ หาทางแก้ลำบากแน่
เพราะมันเป็นเฉพาะบางเครื่อง (bug แบบ it work on my machine) 🤔

By: aeksael
ContributoriPhoneWindows PhoneAndroid
on 26 December 2023 - 22:30 #1301982 Reply to:1301981
aeksael's picture

เอ่อ...ผมไม่ค่อยเข้าใจเลยครับ มันเป็นบัคหรือครับนึกว่าCPUไม่support ยังไงรบกวนช่วยอธิบายขยายความจะเป็นพระคุณมากครับ


The Last Wizard Of Century.

By: Hoo
AndroidWindows
on 28 December 2023 - 18:27 #1302092 Reply to:1301982

ประมาณว่าต้องเขียนแยก function เดียว 2ครั้งครับ

สมัย MMX ยุคแรกๆ (โห..พูดแล้วแก่)
dev ต้องเขียน 2 แบบคือ ใช้ MMX กับไม่ใช้ MMX
จากนั้นก็ตรวจ CPU ว่ามี MMX มั๊ย
ถ้ามีก็เอา pointer function ชี้ไปที่ function มี MMX
ถ้าไม่มีเอา pointer function ชี้ไปที่ function ไม่มี MMX
เวลาเรียกใช้ก็ให้เรียกผ่าน pointer function เสมอ
ห้ามเรียกเองตรงๆ

บางเกมแยก เป็น game.exe กับ game_MMX.exe ไปเลยก็มี

By: mr_tawan
ContributoriPhoneAndroidWindows
on 29 December 2023 - 21:31 #1302169 Reply to:1301981
mr_tawan's picture

Genshin Impact มันเป็น Unity เนี่ยสิครับ ... หรือว่าซื้อ Source License มานะ?

จริง ๆ ไม่ต้องถึงระดับ build แยกหรอกครับ มัน check cpu capability แล้ว if-else บ้านๆ เอาได้ครับ

สมมติถ้าเป็น SDL ก็จะเขียนประมาณ

if(SDL_HasSSE41()) { 
   runSSE41Commands();
} else {
   runNonSIMD();
}

อ้างอิง SDL_HasSSE41

ถ้าใช้ API อื่นก็อาจจะต้องลง library ที่เช็คแฟล็กตรงนี้ให้แทนได้ครับ เช่น cpuinfo

แต่ผมเดาว่าเค้าอาจจะใช้ 3rd-party library ที่ไม่มี fallback นะ ผมคิดว่าเดฟจำนวนนึงคงไม่คิดว่า เกมเมอร์จะยังใช้เครื่องที่เป็น Core Duo หรือ Jaguar หรือเก่ากว่าอยู่ อะไรแบบนี้ครับ


  • 9tawan.net บล็อกส่วนตัวฮับ
By: hisoft
ContributorWindows PhoneWindows
on 29 December 2023 - 23:20 #1302177 Reply to:1302169
hisoft's picture

เกมเมอร์จะยังใช้เครื่องที่เป็น Core Duo หรือ Jaguar หรือเก่ากว่าอยู่ อะไรแบบนี้ครับ

เห็นบอกว่าบนโทรศัพท์กินเครื่องมากๆ จน Android เอาแทบไม่อยู่ ผมนึกว่าคอมพวกนั้นเอาไม่อยู่ไปนานแล้วเสียอีก

By: aeksael
ContributoriPhoneWindows PhoneAndroid
on 30 December 2023 - 00:04 #1302180 Reply to:1302177
aeksael's picture

มันเอาอยู่นะครับและเล่นคอนเท้นที่ยากที่สุดของเกมได้ครับ fps 60 ก็จริงแต่เปิด 1%lowจะได้ราวๆ10-20fps ครือเป็น60fpsที่กระตุกนิดๆมึนหัวหน่อยๆเล่น1080p กับการ์ด1050Ti พอได้น่ะครับ


The Last Wizard Of Century.

By: hisoft
ContributorWindows PhoneWindows
on 30 December 2023 - 11:45 #1302190 Reply to:1302180
hisoft's picture

😱 ขอบคุณครับ

By: mr_tawan
ContributoriPhoneAndroidWindows
on 30 December 2023 - 04:27 #1302182 Reply to:1302177
mr_tawan's picture

ผมลืมคิดไปว่า PS4 เป็น Jaguar 555


  • 9tawan.net บล็อกส่วนตัวฮับ
By: aeksael
ContributoriPhoneWindows PhoneAndroid
on 30 December 2023 - 00:00 #1302179 Reply to:1302169
aeksael's picture

ผมคิดว่า Dev ทราบครับ เพราะมีการอัพเดท Spec ขั้นต่ำครั้งใหม่ตั้งแต่ 2 แพทต์ที่แล้วครับ 4.1 ราวๆสามเดือนก่อน เพียงแต่ผมอ่านข้ามไปไม่ได้สนใจ คือเกมนี้เก็บสถิติเยอะมากละเอียดยิบย่อยการกระทำเล็กน้อยๆในเกมเก็บหมดทุกอย่างเลยครับ นิสัยผู้เล่น การกระทำต่างๆคาดว่าคงมีประโยชน์ต่อการวางแผนการตลาด ก็เลยคิดว่าทีมงานทราบครับและ cpu ที่มีปัญหาคงเป็นผู้เล่นส่วนน้อย แต่ผมก็ไม่ทราบจริงๆว่าใช้ License Unity แบบไหน


The Last Wizard Of Century.

By: mr_tawan
ContributoriPhoneAndroidWindows
on 30 December 2023 - 18:55 #1302212 Reply to:1302179
mr_tawan's picture

ใช้คำว่า "คิดไม่ถึง" ก็ไม่ถูกจริง ๆ แหละครับ คิดอีกทีคือ เค้าตั้งใจทิ้งผู้เล่นกลุ่มนี้ไปเลยมากกว่า (เพราะว่าจะให้ซัพพอร์ตคอมพิวเตอร์อายุมากกว่า 15 ปีมันก็ยากอยู่นะ)

ส่วนที่มองว่าใช้ unity license แบบที่เข้าถึงซอร์สโค๊ดได้คือ ถ้าผมเข้าใจไม่ผิด ... ใน Unity มันไม่มีคอนฟิกแบบจะใช้ CPU capability สูงมากน้อยแค่ไหนน่ะครับ เลยเดาว่าน่าจะเป็น custom engine code ของ MiHoYo เอง (ซึ่ง license ถูก ๆ มันคอมไพล์โค๊ดเองไม่ได้ไง) แต่ผมอาจจะจำผิดนะ ไม่ชัวร์ขนาดนั้นครับ


  • 9tawan.net บล็อกส่วนตัวฮับ
By: big50000
AndroidSUSEUbuntu
on 30 December 2023 - 22:01 #1302223 Reply to:1302212
big50000's picture

+

เบื้องหลังของ Genshin แทบไม่ได้รันโค้ดบน C# เลย แต่ใช้ Lua Interpreter ที่ Custom เอง คาดว่าเหตุผลเบื้องหลังคือใช้เพื่อซ่อนโค้ด (Obfuscation) ด้วยความที่ว่าเป็นเกมออนไลน์ที่ประมวลผลที่ฝั่ง Client-side เสียส่วนใหญ่เพื่อประหยัดต้นทุน และเนื่องจากฝั่ง Lua ปรับแต่งได้ยืดหยุ่นกว่าด้วย และค่อนข้างข้ามแพลตฟอร์ม (ของ C# ก็มี MoonSharp เป็นต้น) ผมคิดว่าอาจจะเป็นเพราะตัวรันโค้ดของ Genshin มากกว่าจะเป็น Unity ที่ก่อปัญหา

เปิดหาใน Git จะมีเครื่องมือ RE เพื่อ Genshin โดยเฉพาะเลย อย่าง https://github.com/CallowBlack/genshin-luadec ก็เคยมีอยู่และก็หายไปซะงั้น และยังมีคลิปวิดีโอสอนแฮกอยู่ประปราย ก็เป็นการทำ Injection เข้า Lua ของ Genshin เช่นกัน ซึ่งหลายวิดีโอก็โดน Copyright Strike โดย Hoyoverse อย่างรวดเร็ว

By: Hoo
AndroidWindows
on 1 January 2024 - 17:25 #1302254 Reply to:1302169

การใช้ pointer function เพื่อหนีการใช้ if ในทุกๆการ call ครับ
เป็นทริคการ optimize ขั้นสูงอย่างนึง

ยิ่งถ้า function นั้นใช้บ่อยๆ เรียก 1000รอบ ก็ if 1000 ที
และผลคือมันทำให้กิน cpu branch predict ไปเพียบด้วย
เขาถึงเล่นท่ายากให้เป็น pointer function แล้ว
initial ด้วย if เพียงครั้งเดียว

ซึ่งถ้า function นั้นเป็นของ unity
ก็น่าจะใช้กระบวนท่านี้อยู่แล้ว เพราะมันกลายเป็นเทคนิคมาตรฐานไปละ
ซึ่ง unity เลิก support ก็จบกัน

By: McKay
ContributorAndroidWindowsIn Love
on 27 December 2023 - 00:13 #1301983
McKay's picture

น่าจะใส่ชื่อเกมลงไปใน topic นะครับ อ่านแล้วตกใจคิดว่าเข้าเกมที่ reddit พัฒนาไม่ได้


Russia is just nazi who accuse the others for being nazi.
someone once said : ผมก็ด่าของผมอยู่นะ :)

By: arjin
WriteriPhoneWindows
on 27 December 2023 - 06:36 #1301986
arjin's picture

ปรับพาดหัวครับ - รันเกมอะไรไม่ได้ และเงื่อนไขอะไรที่รันไม่ได้ (ขยายความตรงคนจนมีสิทธิไหมคะ) - ผู้ใช้ Reddit ไม่ใช่ประเด็นหลักในพาดหัว เอาออกไปก็ได้นะครับ

By: LagSeeN
ContributorWindows PhoneWindows
on 27 December 2023 - 09:56 #1301992
LagSeeN's picture

ใส่ชื่อเกมในหัวข่าวก็ดีครับ เวลาไปแชร์ลงที่อื่น มันไม่รู้คือเกมอะไร

By: aeksael
ContributoriPhoneWindows PhoneAndroid
on 27 December 2023 - 16:26 #1302003
aeksael's picture

แก้ไขแลว้ครับขอบคุณทุกท่านครับมีอะไรแนะนำเพิ่มเติมได้เลยคับ


The Last Wizard Of Century.

By: twometre
WriterAndroidWindows
on 28 December 2023 - 07:49 #1302029
twometre's picture

พาดหัวโดนเส้นดีครับ ชอบ

By: animateex
iPhoneAndroidUbuntuWindows
on 28 December 2023 - 08:00 #1302031
animateex's picture

cpu เก่าเล่นบน Google Play Games beta ไหวไหม...

By: phenocalypse
ContributorAndroidWindows
on 28 December 2023 - 09:29 #1302037

ปริญญาไม่มี แต่มี_นะคะ

By: deaknaew on 28 December 2023 - 09:33 #1302039

เล่นผ่าน cloud ก็ได้
support ย้อนหลัง 10 ปี ก็เกินปาย

By: TeamKiller
ContributoriPhone
on 28 December 2023 - 09:43 #1302042 Reply to:1302039
TeamKiller's picture

เครื่องมันรันได้อยู่นะครับ เกมอาจจะต้องการขยายกลุ่มคนเล่นให้กว้างไม่ได้ต้องความแรงๆ เพื่อภาพสวยๆ

By: ZeaBiscuit
iPhoneAndroidUbuntuWindows
on 28 December 2023 - 11:02 #1302049
ZeaBiscuit's picture

Hoyo บอกแล้วว่าเป็น SSE4.1 จริง แต่เดี๋ยวจะ "พยายาม" optimize ให้เล่นได้่
จริงๆมันก็มีบอกอยู่ใน minimum system requirement นะ

By: aeksael
ContributoriPhoneWindows PhoneAndroid
on 28 December 2023 - 11:16 #1302050 Reply to:1302049
aeksael's picture

รบกวนขอลิ้งค์ทีครับ จะเอาไปอ้างอิงในข่าว


The Last Wizard Of Century.

By: nessuchan
iPhoneAndroidWindows
on 28 December 2023 - 13:49 #1302064 Reply to:1302050
nessuchan's picture

https://genshin.hoyoverse.com/en/news/detail/103699

ไม่ได้บอกตรง ๆ ว่า จะต้องเป็น CPU ที่มี SSE 4 แต่บอกว่า Minimum i5 or equivalent

ซึ่ง SSE4 มีมาตั้งแต่สมัย Penryn หรือ สมัย Core 2 Duo เลย ตอนนั้นมี 4.1 ถ้าเป็น Core i เป็นต้นมาก็จะมี 4.2

ฝั่ง AMD ต้องเป็น Jaguar ขึ้นไป ถึงจะมี 4.1 4.2 ก่อนหน้าจะเป็น 4a

By: ZeaBiscuit
iPhoneAndroidUbuntuWindows
on 28 December 2023 - 20:16 #1302099 Reply to:1302050
ZeaBiscuit's picture

https://www.hoyolab.com/article/23871588

อันนี้เลยครับ

By: NoppawanConan
ContributoriPhoneAndroidWindows
on 28 December 2023 - 21:07 #1302103 Reply to:1302099
NoppawanConan's picture

มีแจ้งมาด้วยว่า CPU ขั้นต่ำ ต้องเป็น i5 Gen 4 หรือ AMD Ryzen ขึ้นไป


แค่มนุษย์คนนึงที่อยากรู้เกี่ยวกับวงการไอที

By: aeksael
ContributoriPhoneWindows PhoneAndroid
on 28 December 2023 - 22:23 #1302106 Reply to:1302099
aeksael's picture

ขอบคุณค๊าฟฟ


The Last Wizard Of Century.

By: redondo16
Android
on 28 December 2023 - 13:26 #1302058

ผมใช้ athlon x4 845 (รุ่นก่อน ryzen เปิดตัว) ยังเล่นได้ ดูใน cpuz มี sse4.1 sse4.2 รอดไปยังไม่ต้องยกเครื่องใหม่

ถ้าเก่ากว่านี้แล้วมีปัญหาคงซีรี่ย์ Phenom ละมั้ง

By: aeksael
ContributoriPhoneWindows PhoneAndroid
on 28 December 2023 - 17:19 #1302087 Reply to:1302058
aeksael's picture

น่าจะใช่แหละครับผมใช้ Phenom x6 1055T เล่นได้มาตลอด เพิ่งจะมามีปัญหา4.3นี่ล่ะครับ minimumดันไม่ได้บอกฝั่งAMDเสียด้วย


The Last Wizard Of Century.

By: Earth27041 on 29 December 2023 - 16:33 #1302154

รอดตัวไป ใช้i5 2500อยู่ เห็นว่าcpuเก่า10ปีขึ้นไปอาจไม่รอด โชคดีตัวนี้12ปีแต่ยังมีSSE4 55+

By: aeksael
ContributoriPhoneWindows PhoneAndroid
on 29 December 2023 - 19:50 #1302165 Reply to:1302154
aeksael's picture

ต้องลองดูครับว่าเล่นได้จริงไหมเพราะขั้นต่ำบอกว่าGen 4th

แต่2500นี่รุ่นเดียวกัน x6ของผมเลย ความแรงคู่คี่กันแค่ตอนนั้นผมอยากลองAMDแล้วก็ไม่ได้ตั้งใจเอามาเล่นเกม = ="


The Last Wizard Of Century.