เกมที่ใช้เบราว์เซอร์แบบต่อเนื่อง: หากต้องการ Captcha หรือไม่กับแคปต์ชา


12

ฉันทำงาน (นอกเวลา) บน pbbg ที่เป็นโรงเรียนเก่า หากคุณเคยเล่น Carnage Blender คุณจะได้รับความคิด

ถ้าไม่เป็นความคิดที่เรียบง่ายมาก: ผู้เล่นได้รับการจัดสรร "คะแนน" จำนวนหนึ่งในแต่ละวันและใช้คะแนนเหล่านั้นเพื่อโจมตีผู้เล่นอื่น คะแนนสะสมเมื่อเวลาผ่านไปสูงสุดถึงขีดสูงสุด

ระบบจุดได้รับการออกแบบมาเพื่อป้องกันไม่ให้ผู้ที่ประสบความสำเร็จเกินกว่าผู้เล่นชั่วคราว

ในกรณีของเครื่องปั่นสังหารระบบ CAPTACHA ป้องกันผู้ใช้จาก "การเล่นเกม" ระบบที่มีบอตหรือสคริปต์ที่ออกแบบมาเพื่อใช้คะแนนทั้งหมดของพวกเขาในแต่ละวันด้วยความพยายามน้อยที่สุด ในบางครั้ง CAPTCHA แบบสุ่มจะปรากฏขึ้นและหากไม่ผ่านผู้ใช้จะถูกระงับเป็นเวลาหนึ่งชั่วโมง

สิ่งที่ฉันสงสัยคือวิธีทำให้ผู้ใช้เป็นมิตรกับเกมมากขึ้น ฉันรู้ว่าฉันต้องป้องกันพฤติกรรมที่ไม่ดีเช่นนี้และฉันสามารถใช้แนวทาง CAPTCHA เดียวกันได้อย่างง่ายดาย แต่มีทางเลือกที่เป็นมิตรกับผู้ใช้มากกว่านี้หรือไม่

การวิจัยเริ่มต้นเปิด ASIRRA โดย Microsoft แต่บรรยากาศนุ่มนวล / น่ารักทำงานได้ไม่ดีกับธีมเกมที่ฉันตั้งใจ

อัปเดต
สิ่งที่ฉันสนใจมากที่สุดคือทางเลือกในมาตรฐาน "สะกดคำนี้" CAPTCHA ฉันต้องการพยายามทำให้การเล่นเกมเป็นไปอย่างต่อเนื่องสำหรับผู้เล่นที่ดี

ฉันเห็นสิ่งที่ฉันเรียกว่าCAPTCHA แบบใช้ครั้งเดียวเช่นถามผู้ใช้ว่า "ห้าบวกหกลบสองคืออะไร" แต่สิ่งนี้จะต้องใช้ความพยายามมากเกินไปในการรวบรวมฐานข้อมูลคำถามที่มีขนาดใหญ่พอที่จะสกัดกั้นผู้ใช้ที่เป็นอันตราย โดยเฉพาะอย่างยิ่งตั้งแต่ CAPTCHA มีวัตถุประสงค์เพื่อใช้บ่อย

UPDATE # 2 ดัง
ที่ Joe Wreschnig ชี้ให้เห็นในคำตอบของเขาการมีระบบ CAPTCHA เพื่อ จำกัด บอทจากการเล่นเกมเร็วกว่ามนุษย์นั้นซ้ำซ้อนหากการหมุน จำกัด ในแต่ละวัน ฉันไม่ได้อธิบายระบบคะแนนของฉันต่อตัวอักษรและนั่นเป็นความผิดของฉัน ในความเป็นจริงมี 10 หรือ 20 คะแนนสะสมทุก ๆ สองสามนาทีและปิดที่ 200 ดังนั้นผู้เล่นที่แข่งขันกันมากสามารถกลับมาทุกสองสามชั่วโมงและใช้คะแนนของเขา ฉันต้องการตอบแทนคนที่ชอบเกมของฉันมากจนพวกเขากลับมาบ่อยครั้ง หากฉันป้องกันไม่ให้พวกเขาเล่นจนถึงวันถัดไปเมื่อพวกเขาได้รับคะแนนฉันจะหันเหผู้เล่นที่จะเพลิดเพลินกับเว็บเกมของฉัน วิธีนี้จะช่วยป้องกันไม่ให้ผู้เล่นใช้คะแนนอย่างต่อเนื่องในขณะที่ยังคงให้คะแนนไม่กี่คะแนนทุก ๆ สองสามนาที

นี่เป็นการเปิดการละเมิด


1
อัปเดต # 2 อีกครั้ง:เป้าหมายที่คุณอธิบายไว้ในระบบคะแนนของคุณง่ายขึ้น: "ฉันต้องการให้รางวัลแก่ผู้เล่นที่เล่นโดยเฉลี่ยอย่างน้อย 2.4 ครั้งต่อวัน" ทำไม? ทำไมคุณถึงสนใจว่าพวกเขาเล่น 2.4 ครั้งต่อวันแทนที่จะเป็นเพียงครั้งเดียว? คุณพูดว่า "ฉันต้องการให้รางวัลผู้เล่นที่ชอบเกมของฉัน" แต่ไม่ว่าฉันจะเข้าสู่ระบบ 5 ครั้งต่อวันหรือเพียงแค่ครั้งเดียวนั่นไม่ใช่การวัดว่าฉันชอบเกมของคุณมากแค่ไหน พิจารณาสิ่งที่คุณทำจริงที่นี่และทำไมคุณถึงทำมัน จากนั้นหาวิธีที่แตกต่างในการทำเช่นนั้นคุณจะไม่ต้องคิดหาระบบจุด 2.4- ต่อวันซึ่งจะทำให้ผู้เล่นของคุณบอต
doppelgreener

1
ฉันหวังว่าคุณจะรับรู้ได้อย่างแท้จริงว่าการกำหนดให้มีการเข้าชม 2.4 ครั้งต่อวันเพื่อให้ได้ผลการเล่นที่ดีที่สุดคุณกำลังกระตุ้นให้มีการทำบอทเนื่องจากหลาย ๆ คนไม่สามารถทำข้อตกลงนั้น มันไม่จำเป็นแม้แต่: คุณไม่ทำอะไรเลยนอกจากบอทและความแปลกแยกของผู้เล่นที่มีศักยภาพ! พิจารณา Kingdom of Loathing เกมที่ประสบความสำเร็จอย่างมหัศจรรย์ซึ่งให้คุณ 40 รอบ / วัน (เพิ่มไอเท็ม) ด้วยจำนวนหมวก 200 ใบคุณสามารถรอได้สูงสุด 5 วันต่อครั้ง Kingdom of Chaos ทำสิ่งที่คล้ายกัน ไม่ให้รางวัลใด ๆ สำหรับการเล่นเป็นประจำ แต่ทั้งคู่ก็มีผู้เล่นที่ล็อกอินหลายครั้งต่อวันโดยไม่คำนึงถึง
doppelgreener

@ โจนาธาน: โดยปกติแล้วเหตุผลที่คุณสนใจถ้าคนอื่น ๆ เข้าสู่ระบบ x ครั้งต่อวันโดยเฉลี่ยนั่นคือสิ่งที่คุณต้องการเพื่อให้เกมของคุณทำกำไรได้ขึ้นอยู่กับอัตราการโฆษณาของคุณ กลยุทธ์การสร้างรายได้ของ KoL เป็นการซื้อในเกมดังนั้นจึงไม่มีผลบังคับใช้

1
@ โจ: ฉันจะพิจารณากลยุทธ์การโฆษณา / การสร้างรายได้ทางเลือกโดยคำนึงถึงว่าเมื่อฉันไม่ทำให้ผู้เล่นแปลกแยกฉันอาจแสดงโฆษณาโดยรวมมากขึ้นเนื่องจากจำนวนผู้เล่นที่สูงขึ้น หากเกมของฉันได้รับการออกแบบอย่างประสบความสำเร็จคนที่จะไปเที่ยวหลายครั้งต่อวันจะทำเช่นนั้นต่อไป - เพราะพวกเขาชอบเกมและพวกเขาเลือกไม่ใช่เพราะกลไกของเกมกำลังทำให้พวกเขาทำอย่างโปร่งใส (หมายเหตุ: จะไม่ได้รับรางวัล"คนเหล่านั้นที่ชอบเกมของฉันมาก"เพียงแค่"คนที่ช่างงานความดันของฉันทำงาน" )
doppelgreener

คำตอบ:


8

"มีทางเลือกที่เป็นมิตรกับผู้ใช้มากกว่านี้หรือไม่"

ทางเลือกที่เป็นมิตรกับผู้ใช้มากขึ้นสำหรับสิ่งที่สิ้นสุด? captcha ที่ออกแบบมาเพื่อให้บรรลุในระบบของคุณคืออะไร?

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

ผมขอแนะนำให้คุณไปดูที่อาณาจักรแห่งความชิงชัง 's frontends อื่น มันใช้ระบบผลัดกันต่อวันที่คล้ายกันและมีส่วนเสริมทางเลือกยอดนิยมหลายอย่างเช่น KoLmafiaซึ่งมีหลายวิธีที่แยกไม่ออกจากเกม "botting" ผู้เล่นส่วนใหญ่รู้สึกว่าสิ่งเหล่านี้เพิ่มไปแทนที่จะนำออกจากเกมแม้สำหรับผู้เล่นทั่วไป พวกมันทำให้การแบทช์ง่ายขึ้นโดยอัตโนมัติบางส่วนที่ช้ากว่าและเสนอตัวเลือกเพิ่มเติมสำหรับ UI ในเกม

หากคุณมีการตรวจสอบในเกมของคุณแล้วเพื่อให้แน่ใจว่า AIs ไม่สามารถเล่นได้เร็วกว่ามนุษย์ - และด้วยการเปลี่ยนรอบต่อวันคุณมีเช็คดังกล่าว - แล้วฉันขอแนะนำให้คุณลองกระตุ้นเกมของคุณโดยอัตโนมัติ สมดุลมันสามารถปรับปรุงประสบการณ์ผู้เล่น


1
ความเข้าใจที่ดีมาก! ผลัดกันต่อวันทำให้เข้าใจผิดและนั่นคือความผิดของฉัน ฉันจะอัปเดตคำถามให้ละเอียด
Stephen

ยิ่งฉันคิดถึงสิ่งนี้มากฉันก็ยิ่งชอบมาก ฉันจะต้องคิดให้มากขึ้นอีกหน่อยและปล่อยให้คำถามซักนิดนึง
สตีเฟ่น

1
ตัวอย่างเช่นระบบการต่อสู้แบบอัตโนมัติของ KolMafia นั้นมีประโยชน์อย่างแท้จริงซึ่งจริง ๆ แล้วพวกเขาได้รวมระบบมาโครการต่อสู้เข้ากับเกมจริง
coderanger

ฉันจำได้ใน RuneScape ว่ามีคำถามง่ายๆที่ Genie ถามถ้าคุณทำให้ถูกต้องเขาจะให้ของขวัญกับคุณ
Jonathan Connell

3

ฉันไม่เคยรำคาญที่จะเล่นเกมที่ต้องการแคปช่า: พวกเขาเป็นแนวปฏิบัติที่น่ากลัวจริงๆ

เกมของคุณดูเหมือนจะมีปัญหาที่ลึกกว่านั้น: เกมควรให้ประโยชน์กับบอทที่โง่ดังนั้นมันจะไม่มีประโยชน์ที่จะใช้บอทที่โง่ในตอนแรก หากคุณไม่สามารถบรรลุเป้าหมายได้นั่นเป็นปัญหาด้านการออกแบบที่จะไม่มีวิธีแก้ปัญหาจริง ๆ มีเพียงวิธีแก้ปัญหาที่ถูกต้องเท่านั้น

ด้วย "บอทโง่" ฉันหมายถึงบอทที่ไม่มีการตัดสินใจใด ๆ ที่มีความหมายและแทนที่จะเป็นแค่ "ฟาร์ม" (นั่นคือสิ่งที่เกิดขึ้นที่นี่) บอทอัจฉริยะ (เช่นบอทเล็งหรือเล่นบอทหมากรุก) เป็นเรื่องที่แตกต่างอย่างสิ้นเชิง

ถึงกระนั้นสมมติว่าคุณสบายใจกับความคิดในการสร้างเกมที่มีข้อบกพร่อง แต่ก็ยังมีพื้นที่สำหรับการปรับปรุง

ยอมรับความจริงที่ว่าคุณไม่สามารถหยุดบอทที่ตั้งใจจริง ๆ ได้และมุ่งเน้นไปที่สิ่งเดียวที่คุณทำได้: ทำให้มันไร้ประโยชน์ที่จะใช้บอท หากผู้คนไม่มีเหตุผลที่จะใช้บอท ... พวกเขาจะไม่ใช้พวกเขา (และถ้าพวกเขาทำอยู่แล้วมันจะไม่สำคัญ)

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

ps: อย่าทำผิดพลาดในการพยายามแก้ไขข้อบกพร่องด้านการออกแบบมากขึ้นจากนั้นแก้ไขมันในตอนแรก!


1
"เกมที่ดีเลิศไม่ควรให้ประโยชน์อะไรกับบอทโง่" คำแนะนำที่ดี +1
สตีเฟ่น

คำแนะนำที่ดี แต่ไม่สามารถทำได้โดยมนุษย์?
Kzqai

ทำได้โดยสิ้นเชิงคุณเพียงแค่ต้องออกแบบเกมจริง ๆ แทนที่จะเขียนโค้ดแบบสุ่ม ต้นทุนคุณภาพ
o0 '

2

ฉันจะไม่สั่งห้าม CAPTACHA ที่ล้มเหลวเป็นเวลาหนึ่งชั่วโมงซึ่งดูเหมือนว่ารุนแรงฉันจะป้องกันไม่ให้พวกเขาก้าวไปข้างหน้าจนกว่าพวกเขาจะประสบความสำเร็จใน CAPTACHA และอนุญาตให้มีการแสดงภาพ CAPTACHA ใหม่

ฉันจะแสดงเฉพาะ captcha หากพวกเขาทำคำขอเร็วเกินไปฉันจะเก็บ DateTime ในทุกคำขอแล้วเปรียบเทียบกับคำขอถัดไปหากน้อยกว่า 2-4 วินาทีคุณจะแสดง CAPTACHA มิฉะนั้นให้ พวกเขาไป คุณจะต้องกำหนดช่วงเวลาที่เหมาะสมสำหรับเกมเซิร์ฟเวอร์และแบนด์วิดท์ของคุณ

นอกจากนี้คุณยังสามารถทำการ "บังคับ" CAPTACHA ทุก ๆ X ครั้งที่มีการดำเนินการสิ่งนี้จะป้องกันแม้แต่สคริปต์อัตโนมัติที่มีpauseอยู่แล้วภายในเพื่อไม่ให้เกิดการ จำกัด เวลา CAPTACHA


ขวา. ทั้งหมดนี้เป็นแนวคิดที่ถูกต้องในการทำให้ CAPTCHA เป็นมิตรกับผู้ใช้มากขึ้นและแน่นอนว่าฉันจะใช้แนวคิดเช่นนี้หากฉันไปที่เส้นทาง CAPTCHA สิ่งที่ฉันกำลังมองหาคือทางเลือกที่ดีถ้ามี
Stephen

เขียนเกมของคุณใน Flash หรือ Silverlight เพื่อให้บอทมีเวลาในการควบคุมแอปพลิเคชันของคุณในระยะไกลได้ยากขึ้น?
เนท

ฉันไม่รู้อะไรมากเกี่ยวกับมัน แต่ KingsOfChaos.com มีระบบที่คล้ายกันมากกับคุณ (คะแนน / รอบทุกนาที) คุณสามารถดูว่าพวกเขาใช้มันอย่างไร
เนท

2

หากผู้เล่นใช้คะแนนเพื่อโจมตีผู้เล่นคนอื่นและคะแนนมี จำกัด การใช้งานในทางที่ผิดดูเหมือนจะทำให้ฉันสร้างบัญชีหลายบัญชีได้

หากคุณประสบความสำเร็จในการ จำกัด ผู้คนให้อยู่ในบัญชีเดียวปัญหาจากบอทสำหรับฉันก็คือว่าภายใต้ระบบของคุณผู้คนสามารถไล่ออกพวกเขาเมื่อพวกเขาหลับหรือทำงาน

ดังนั้นจึงมีข้อ จำกัด : (1) ไม่มีข้อได้เปรียบสำหรับบอท (2) ตอบแทนคนที่เข้าสู่ระบบหลายครั้งต่อวัน

ฉันคิดว่าสิ่งที่ดีที่สุดคือการ จำกัด จำนวนการกระทำที่พวกเขาสามารถใช้ในระหว่างวันให้มีจำนวนพอสมควร

เช่นคุณอาจตัดสินใจว่ามีคนเข้าสู่ระบบอย่างสมเหตุสมผลหลายครั้งในระยะเวลา 8 ชั่วโมงและปรับระบบให้เหมาะสม หรือใครบางคนอาจตรวจสอบก่อนที่จะไปโรงเรียน / ทำงานในตอนเช้าตรวจสอบเมื่อพวกเขากลับบ้านตรวจสอบอีกครั้งหลังอาหารเย็นและตรวจสอบก่อนนอน

กำหนดสิ่งที่ผู้ใช้ 'อุดมคติ' ของคุณกำลังทำอยู่และจากนั้นให้ระบบคะแนนตอบแทนนั้น


ฉันจะสร้างระบบที่ให้รางวัลการใช้จ่ายเป็นแต้มในคราวเดียว เมื่อต้องการทำเช่นนี้ฉันจะมีอัตราการเติมตัวแปรในคะแนน ทุกครั้งที่คุณใช้คะแนนคะแนนเวลาเติมเพื่อให้ได้คะแนนถัดไปจะเพิ่มขึ้น ... ดังนั้นหากบอทใช้คะแนนเร็วเท่าที่ได้รับมันจะใช้เวลานานกว่าและนานกว่าที่จะได้คะแนนถัดไปในขณะที่ถ้าบุคคลใช้เวลาทั้งหมด จุดที่พวกเขาสะสมข้ามคืนก่อนออกจากบ้านในตอนเช้าพวกเขาจะได้รับพวกเขาทั้งหมดกลับเมื่อพวกเขากลับบ้านจากที่ทำงาน / โรงเรียน (8-12 ชั่วโมงต่อมา)


ฉันไม่เคยคิดเกี่ยวกับอัตราการเติมตัวแปรตามการใช้งาน นั่นเสียงอัจฉริยะทันทีที่เห็น ฉันจะต้องคิดเกี่ยวกับมัน TBH มันให้รางวัลกับผู้เล่นทั่วไปและลงโทษผู้เล่นฮาร์ดคอร์ / ตายยากดังนั้นฉันก็เลยดูโน่
สตีเฟ่น

2

ในเกมฉันขอแนะนำให้แทนที่ "captcha" ด้วย "puzzle mini-game" ความแตกต่างคือระดับของความสนุกที่เกี่ยวข้อง มันมีเหตุผลน้อยมากสำหรับ captcha ในเกมยกเว้นว่าคุณได้ลองมินิเกมที่กำหนดเองและนั่นก็ยังได้รับการบรรจุขวด ในกรณีนี้ทำให้ต้องใช้กลยุทธ์ที่ชาญฉลาดมากขึ้น


1

ตามที่แนะนำโดย Tchalvak ฉันจะไปตามเส้นทาง 'มินิเกมไขปริศนา' แต่ฉันจะให้คะแนนสองสามคะแนนสำหรับการส่งผ่านเพื่อให้ใช้งานง่ายขึ้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.