Играч за Checkers
17 отговора
748 прегледа
Играч за Checkers
Здравейте на всички,
имам една грижа и се надявам някой да ми помогне.... пиша играч за играта Checkers (предполагам всички я знаете). Имам на разположение дъската и един примерен играч, който обаче е доста глупавичък. Аз съм се хванал да пиша такъв, с който поне да успея да бия този примерния и да докарам играта докрай. Написал съм си методите сам. За целта използвах Mini-max strategy with alpha-beta pruning. До тук добре, всичко изглежда чудно, но като заредя играча и играта започне - гърми с NullPointerException. Прегледах си двата масива (повече нямам) и няколкото листа, които ползвам, само че немога да открия къде е грижата...
Предполагам,че е нещо съвсем дребно,което не съм догледал (или просто грешно съм написал, но толкова са ми знанията... :( ), но немога да го видя...
Моля, помоооооощ

имам една грижа и се надявам някой да ми помогне.... пиша играч за играта Checkers (предполагам всички я знаете). Имам на разположение дъската и един примерен играч, който обаче е доста глупавичък. Аз съм се хванал да пиша такъв, с който поне да успея да бия този примерния и да докарам играта докрай. Написал съм си методите сам. За целта използвах Mini-max strategy with alpha-beta pruning. До тук добре, всичко изглежда чудно, но като заредя играча и играта започне - гърми с NullPointerException. Прегледах си двата масива (повече нямам) и няколкото листа, които ползвам, само че немога да открия къде е грижата...
Предполагам,че е нещо съвсем дребно,което не съм догледал (или просто грешно съм написал, но толкова са ми знанията... :( ), но немога да го видя...
Моля, помоооооощ
Re: Играч за Checkers
еее братле, почна интересно пък на такъв тъп проблем да затънеш. Че дебъгниго мама му и чекърс. Пък така като кажеш НПЕ какво очакваш от хората във форума, дай код някакъв !
Re: Играч за Checkers
Нямя нужда да ни дава код. Аз се оправих с гадаене.
Хвърлих боб и така разбрах, че проблема е на 86 ред във файлa Checkers.java. Трябва да се промени oт:
i=0;
на:
i=1; k=0;
Хвърлих боб и така разбрах, че проблема е на 86 ред във файлa Checkers.java. Трябва да се промени oт:
i=0;
на:
i=1; k=0;
Re: Играч за Checkers
Мда, извинете.... :)
Ще пусна кода, ама първо да локализирам къде е горе-долу грижата, че иначе са 4 файла код и... съм ги навързал здраво един с друг...
После, който иска, може да се пробва срещу играча ми. хехе
Ще пусна кода, ама първо да локализирам къде е горе-долу грижата, че иначе са 4 файла код и... съм ги навързал здраво един с друг...
После, който иска, може да се пробва срещу играча ми. хехе
Re: Играч за Checkers
Ето го и обещания сорс. За дебъг... нещо не се случва както трябва 
[линк]
[линк]
Re: Играч за Checkers
Ама тва на немски бе Фертиг!
(това фертиг го има в програмата ти, звучи ми като псувня)
Е мченце, ебаваш се със старото куче а? Ще ти прасна 3 непоряда един след друг, ще ти се стъжни службата!
(това фертиг го има в програмата ти, звучи ми като псувня)
Е мченце, ебаваш се със старото куче а? Ще ти прасна 3 непоряда един след друг, ще ти се стъжни службата!
Re: Играч за Checkers
Ефрейторче, да си чувал, че младши-сержантите са по-високо звание? Внимавай с праскането на непорядите и най-вече на кой ги праскаш...
Това, че е на немски едва ли е драма. На сайта,който съм дал като линк, има подробно обяснение! Единственото е да се зареди играча, повече немски не ти е нужно да знаеш...
А самата програма и коментарите ми към нея са на английски!
Това, че е на немски едва ли е драма. На сайта,който съм дал като линк, има подробно обяснение! Единственото е да се зареди играча, повече немски не ти е нужно да знаеш...
А самата програма и коментарите ми към нея са на английски!
Re: Играч за Checkers
Кексчо сериозно си загазил момченце.
Първо искаш съвет за nullpointer exception без да покажеш кода или поне stacktrace. Само за тази ти издънка ще те вкарам в карцера и ще ти се стъжни службата вярвай.
Второ показваш ни програма на немски все едно това е нещо естествено и даже не ни предупреждаваш даже. Може да има малки деца тука бе алоу! И недей да лъжеш че програмата не е на немски, тоя Фертиг не съм си го измислил аз.
Само още веднъж да съм видял немски някъде!
Първо искаш съвет за nullpointer exception без да покажеш кода или поне stacktrace. Само за тази ти издънка ще те вкарам в карцера и ще ти се стъжни службата вярвай.
Второ показваш ни програма на немски все едно това е нещо естествено и даже не ни предупреждаваш даже. Може да има малки деца тука бе алоу! И недей да лъжеш че програмата не е на немски, тоя Фертиг не съм си го измислил аз.
Само още веднъж да съм видял немски някъде!
За немския...
Че съм загазил - загазил съм! Ама не със службата, а със сроковете, в които трябва да предам играча :( Службата отдавна ми мина и в момента съм на други вълни
Та мислех,че сме тук да си помагаме, а не да си тракаме безмислици по клавиатурката... Ти изобщо погледна ли ми кода, зацепваш ли ми проблема?
Някой изобщо ще метне ли едно око или... немския плаши?
Та мислех,че сме тук да си помагаме, а не да си тракаме безмислици по клавиатурката... Ти изобщо погледна ли ми кода, зацепваш ли ми проблема?
Някой изобщо ще метне ли едно око или... немския плаши?
Re: За немския...
Ти изобщо погледна ли ми кода...
Не, не стигнах до там. Само като пуснах bat файла и като излезе нещо на немски и аз го kill-нах и казах: ебал съм го другарке.
Грешиш. Тук сме за морална подкрепа и да си говорим за Java. На който му трябва помощ има help и javadocs и debuger и книжки и лекции и упражнения и преподаватели и така нататък и така нататък. Тука рядко решаваме домашни и то само на хубави момичета които могат да представят доказателста.
Не, не стигнах до там. Само като пуснах bat файла и като излезе нещо на немски и аз го kill-нах и казах: ебал съм го другарке.
Грешиш. Тук сме за морална подкрепа и да си говорим за Java. На който му трябва помощ има help и javadocs и debuger и книжки и лекции и упражнения и преподаватели и така нататък и така нататък. Тука рядко решаваме домашни и то само на хубави момичета които могат да представят доказателста.
Re: За немския...
Честно казано не проумявам защо просто не вкараш това нещо в един еклипски проет и не му пуснеш един дебъг.
И аз като видях немския дадох заден.
Нали е тъпо стандалон приложение, какво толкова му е зор да го дебъгреш, мамка му и чекер!
И аз като видях немския дадох заден.
Нали е тъпо стандалон приложение, какво толкова му е зор да го дебъгреш, мамка му и чекер!
Re: За немския...
Прав си, Тоше. Грижа нема - вкарвам го в Еклипски проект, пиша един простичък main (по-прост нема накъде), пускам му един дебъг и получавам красивото:
java.lang.NoSuchMethodError: main
Exception in thread "main"
Гледам тъпо монитора, пиша като шашав по форумите... никой отникъде нищо! Дори във форума на Сън мълчат като бияни дупета...
Просто изумявам

java.lang.NoSuchMethodError: main
Exception in thread "main"
Гледам тъпо монитора, пиша като шашав по форумите... никой отникъде нищо! Дори във форума на Сън мълчат като бияни дупета...
Просто изумявам
Re: За немския...
И стига с тоя немски... само оправдания
Немския не ви трябва за нищо... аз се опитвам да дебъгна това чудо. Единственото, което му е на немския е да се зареди играча... а това съм го написал подробно как става. Повече не е нужно...
Re: За немския...
Здрасти
прегледах кода, оправих малко декомпилирания сорс на Engine и го компилирах с дъмпове. Проблемът ти е, че в Kater нямаш никакъв код и по подразбиране ти се вика default конструктора на kater.Kater. Съответно не ти се инициализира полето currentBoard и то си остава null.
прегледах кода, оправих малко декомпилирания сорс на Engine и го компилирах с дъмпове. Проблемът ти е, че в Kater нямаш никакъв код и по подразбиране ти се вика default конструктора на kater.Kater. Съответно не ти се инициализира полето currentBoard и то си остава null.
Re: За немския...
Здрасти,
ей това е - който си разбира, си разбира! Мислиш ли, че след промяната на това,което казваш, би тръгнал играча... тоест дали нормално ще се зареди.
Питам,защото съм все още в офиса и не съм го оправял още...
А за Engine-а - знам, че има много бъгове, но... не съм го писал аз. Пък и да бях, едва ли щях по-добре да го направя. Междудругото има нова версия на GUI-to. Ако искаш мога да ти го пратя. Мисля, че задачата е супер. Жалко само,че не можаш да я довърша сам
Пак ще пиша...
Много мерси пак
Ще черпа
ей това е - който си разбира, си разбира! Мислиш ли, че след промяната на това,което казваш, би тръгнал играча... тоест дали нормално ще се зареди.
Питам,защото съм все още в офиса и не съм го оправял още...
А за Engine-а - знам, че има много бъгове, но... не съм го писал аз. Пък и да бях, едва ли щях по-добре да го направя. Междудругото има нова версия на GUI-to. Ако искаш мога да ти го пратя. Мисля, че задачата е супер. Жалко само,че не можаш да я довърша сам
Пак ще пиша...
Много мерси пак
Ще черпа
Re: За немския...
Сега прегледах кода по-подробно. Твоят клас Kater наследява Player, който ти дава 2 абстрактни метода - play и getAuthor, всички други методи са му final. Освен това има само default конструктор, така че ще трябва да разчиташ на default конструктора на Kater, за да си инициализираш дъската. Прегледай всички final методи на Player, само с тях можеш да си комуникираш с енджина.
За Engine класа имах предвид, че го оправих да се компилира, не че съм оправял някакви бъгове по него.
За Engine класа имах предвид, че го оправих да се компилира, не че съм оправял някакви бъгове по него.