AlienWar
เกมนี้เกิดขึ้นในโลกที่มีผู้คนพลุกพล่านเป็นอย่างมาก งานของคุณคือการสร้างเอเลี่ยนของคุณเองและเอาชนะสิ่งอื่นทั้งหมด
คณะกรรมการ
มันเป็นบอร์ดสองมิติ
ความยาวของด้านใดด้านหนึ่งของคณะกรรมการคือMath.ceil(sqrt(species * 100 * 2.5))
= ~ 40% ของคณะกรรมการที่ใช้ กระดานเป็นดาวเคราะห์ดังนั้นถ้าคุณเดินออกจากแผนที่ทางทิศตะวันตกคุณจะกลับมาทางทิศตะวันออก หากคุณเดินออกไปทางเหนือคุณจะพบว่าตัวเองอยู่ทางทิศใต้
ความสามารถ
สัตว์แต่ละชนิดในโลกมีความสามารถ ที่นี่พวกเขาคือ:
ชื่อ ผลประโยชน์ ชีวิต HP = lifeLVL * 5 (ลดทุกครั้งที่คุณโจมตี, 0 = ตาย), ฐาน HP = 10 ความแรงการโจมตีของคุณจะสร้างความเสียหายแบบสุ่มในระยะ [1 ถึงความแข็งแกร่ง LVL] Defense สุ่มเลือก int ในระยะ [0 ถึง (50 / defenseLVL + 1)], ถ้า int == 0 จากนั้นหลบการโจมตีครั้งต่อไป การมองเห็นจะช่วยให้คุณมองเห็นvisionLVL / 2 ฟิลด์รอบ ๆ ตัวคุณ cleverness Blurs (เพิ่มขึ้น) ความสามารถทุกอย่างแบบสุ่มในช่วง [0 ถึงclevernessLVL / 2] เมื่อส่งไปยังเอเลี่ยนอื่น
เกม
- แต่ละการส่งจะมี 100 ครั้ง
- หลังจากสร้างความแตกต่างมนุษย์ต่างดาวแต่ละคนสามารถตั้งค่าความสามารถ 10 คะแนนรวม คุณสามารถกำหนดจุดที่แตกต่างกันสำหรับทุกอินสแตนซ์
- หากคุณตั้งค่ามากกว่า 10 คะแนนอินสแตนซ์จะตาย
- เกมประกอบด้วย 1,000 รอบ แต่ละรอบ:
move(char[] fields)
ทุกคนต่างด้าวมีการกลับย้ายผ่าน ซึ่งรวมถึงการย้าย STAY- หากมนุษย์ต่างดาวหลายคนอยู่ในสนาม 2 จะถูกสุ่มเลือก:
- หากทั้งสองเห็นด้วยกับความสงบสุข (กลับเท็จใน
wantToFight
) พวกเขาจะอยู่ที่พวกเขาอยู่พวกเขาจะต่อสู้ - สิ่งนี้จะวนซ้ำจนกว่ามนุษย์ต่างดาวเพียงคนเดียวเท่านั้นที่อยู่ในทุ่งหรือทุกคนเห็นด้วยกับความสงบสุข
- หากทั้งสองเห็นด้วยกับความสงบสุข (กลับเท็จใน
ถ้ามนุษย์ต่างดาวฆ่าบางสิ่งเขาจะได้รับ 1/5 ของความสามารถของศัตรูแต่ละตัว ผู้ชนะจะได้รับ HP เติมด้วย 2 * enemyLifeLVL
ผู้ชนะคือผู้ที่มีความสามารถมากที่สุด (ผลรวมของความสามารถของเอเลี่ยนที่มีชีวิต)
การต่อสู้
มนุษย์ต่างดาวทั้งสองจะตีกัน "ในเวลาเดียวกัน" ซึ่งหมายความว่าถ้าคุณฆ่าคนต่างด้าวอื่น ๆ เขายังคงสามารถตีคุณในครั้งเดียว
dodging: rand.nextInt(50 / defenseLvl + 1) == 0
ก่อนที่คุณจะได้รับการตีเกมจะคำนวณถ้าคุณสามารถหลบการโจมตีโดยใช้ defenseLvl จะไม่มากกว่า 50เมื่อคำนวณทักษะการหลบของคุณ (ดังนั้นโอกาสหลบสูงสุดคือ 50%)
กดปุ่ม: หากคุณไม่ได้หลบการโจมตีที่คุณจะได้รับการตีและ HP rand.nextInt(enemy.getStrengthLvl()) + 1
ของคุณจะลดลง
การต่อสู้สิ้นสุดลงเมื่อมนุษย์ต่างดาวที่เกี่ยวข้องกับการตาย หากมีผู้ชนะจะได้รับรางวัล
Gamerules
- ระดับพื้นฐานสำหรับทุกความสามารถ (โดยไม่ให้คะแนนความสามารถใด ๆ ) คือ 1 (ฐาน HP คือ 10)
- ค่าที่ส่งเมื่อถูกขอให้ต่อสู้คือชีวิต (ไม่ใช่ HP!), ความแข็งแกร่ง, การป้องกันและสายตาระดับ
- ความฉลาดจะไม่ถูกส่งเมื่อถูกขอให้ต่อสู้
- ตัวเลขลอยตัวทั้งหมดจะถูกปัดเศษเป็นจำนวนเต็มที่ใกล้เคียงที่สุดเมื่อใช้ / ส่ง แต่เก็บไว้และเพิ่มเป็นลอย
- โอกาสหลบสูงสุดคือ 50% มิฉะนั้นการต่อสู้อาจไม่สิ้นสุด
เหยื่อ
มีอยู่ 5 ชนิดที่อยู่บนสนามแล้ว พวกเขาเลือกที่จะไม่ต่อสู้เมื่อถูกถาม
Whale: เลเวล 10 life Stays Cow: เลเวล 10 ความแกร่งย้ายแบบสุ่ม เต่า: เลเวล 10 การป้องกันทางตะวันตกเฉียงใต้ Eagle: เลเวล 10 การมองเห็นตรวจสอบทุ่งพยายามหลีกเลี่ยงอันตราย มนุษย์: เลเวล 10 ความฉลาดตะวันออกเฉียงเหนือ
พวกเขาจะแสดงด้วยตัวอักษรตัวแรกของพวกเขา (เช่นW
สำหรับปลาวาฬ) ในแผนที่ (มนุษย์ต่างดาวที่มีA
ช่องว่างด้วยช่องว่าง' '
)
กฎเพิ่มเติม
- ไม่อนุญาตการสะท้อนกลับ
- ไม่อนุญาตการโต้ตอบ (สร้างภาพเป็นต้น) กับเอเลี่ยนตัวอื่น
- ไม่อนุญาตให้เขียน / อ่านทรัพยากรภายนอกเช่นไฟล์หรือฐานข้อมูล
- อนุญาตให้ส่งเฉพาะ Java (รุ่น 1.8) (Java นั้นค่อนข้างง่ายและคุณไม่จำเป็นต้องเป็นผู้เชี่ยวชาญสำหรับเกมนี้)
- การส่งทั้งหมดจะต้องขยายคลาสของคนต่างด้าวและจะถูกวางไว้ในแพ็คเกจของเอเลี่ยน
- ฉันจะยอมรับคนต่างด้าวที่ดีที่สุดในวันที่ 19 กรกฎาคม มนุษย์ต่างดาวทั้งหมดที่ส่งโดย 12:00 UTC ในวันนั้นจะถูกทดสอบ
- ส่งได้สูงสุด 3 ต่อผู้ใช้เนื่องจากมีเอเลี่ยนจำนวนมากอยู่แล้ว
ตัวอย่างของเอเลี่ยน
package alien;
import planet.Move;
public class YourUniqueNameHere extends Alien {
public void setAbilityPoints(float[] abilities) {
abilities[0] = 2; //life
abilities[1] = 2; //strength
abilities[2] = 2; //defense
abilities[3] = 2; //vision
abilities[4] = 2; //cleverness
}
public Move move(char[][] fields) {
//you are in the middle of the fields, say fields[getVisionFieldsCount()][getVisionFieldsCount()]
return Move.STAY;
}
public boolean wantToFight(int[] enemyAbilities) {
//same order of array as in setAbilityPoints, but without cleverness
return true;
}
}
โปรแกรมควบคุม
รหัสที่มาสำหรับโปรแกรมควบคุมที่สามารถพบได้ที่นี่ อัปเดตตอนนี้กับเอเลี่ยนทั้งหมดที่รวมอยู่ในการรันล่าสุด
คะแนนสุดท้าย (20.07.2014, เฉลี่ย 10 เกม)
Alien.PredicatClaw 1635.4 คนต่างด้าว LazyBee 1618.8 คนต่างด้าวช่างภาพ LongVisionAlien 1584.6 คนต่างด้าวเลือกของคุณการต่อสู้ 1571.2 คนต่างด้าว Bender 1524.5 คนต่างด้าว HerjanAlien 1507.5 เอเลี่ยน .unkyBob 1473.1 ต่างด้าว. SecretWeapon2 1467.9 Alien.PredicatEyees 1457.1 เอเลี่ยน 1435.9 มนุษย์ต่างดาว GentleGiant 1422.4 เอเลี่ยนropropircanlien 1321.2 alien.VanPelt 1312.7 คนต่างด้าวใหม่ซื้อ 1270.4 คนต่างด้าว BananaPeel 1162.6 มนุษย์ต่างดาวสะสม 1159.2 คนต่างด้าวพาลเอเลี่ยน 1106.3 เอเลี่ยน Geoffrey 778.3 ต่างด้าว. SecretWeapon 754.9 ต่างด้าว. SecretWeapon3 752.9 คนต่างด้าว. Junk 550.3 ต่างดาวหิน 369.4 เอเลี่ยน Assassin 277.8 Alien.Predicoward 170.1 เหยื่อ. 155.2 เอเลี่ยน 105. เอเลี่ยน 99.6 มนุษย์ต่างดาว. 69.7 เอเลี่ยน 56. เอเลี่ยน. ผู้จัดการ 37.6 คนต่างด้าวโอกินาว่าชีวิต 14.2 เหยื่อ. 10.5 alien .Gamer 4.5 เอเลี่ยน. สุ่ม 0 เอเลี่ยน. ยาม 0 เหยื่อ. Eagle 0 เอเลี่ยน 0 alien.WeakestLink 0 เอเลี่ยน. 0 alien.Survivor 0 เอเลี่ยน. เร่ง 0 เอเลี่ยน. 0 เอเลี่ยน. 0 alien.CleverAlien 0 เหยื่อมนุษย์ 0 alien.BlindBully 0 เหยื่อเต่า 0 alien.AimlessWanderer 0