miebot
Miebotisamodformiecraftthattakescotroloftheplayeradautomaticallydoestasksforyou.Itsimulateskeyboardadmouseiputtoiteractwiththeword.
Miebotiswrittetobeplayedoormalmiecraftisurvivalmode.Creativemodeadsomemodspartiallyworkbutareottargeted.
Thebotiscotrolledbygivigitcommadsusigthechatlie.Foradvaceduses,itcabecotrolledusigsimplescriptsortheJavascriptAPI.
HavealookattheGettigStartedWikiPagetoseehowtousethebot.
Thisrepoalsocotaisaidepedetbowaimighelper.
Dowload+Istallig(Stableversio)IstallForgemodloader.
Getthelatestrelease.
ExtracttheZIPfileadputthejarfilesiyourmiecraftmodsdirectory.
GettigHelpUsetheissuetrackerforbugsortogethelpwithyourstuff.I'motavailableithemiecraftforumaymore(it'sjusttoslowadblow-up).
Buildig(Latestversio)Thedeveloperversiomaycotaimorebugsthatherealversio.
BuildigMiebotisstraightforward.Youeedliux,gitadtheormaljavadevelopmettools.
Cloe/DowloadthisrepoRu./release.shExtractthatZIPfileiyourmiecraftmodsdirectoryIfyouecouterexceptiosdurigthebuild,tryruigthisithemiebotdirectory:./gradlew--o-daemobuild
DevelopigMiebotIwo'tdevelopthismodayfurther.Miecraft1.8.9isthelastsupportedversio.AbaiscbuticompleteportisavailableforMiecraft1.11.2.ButIwillbeacceptigPRstothisrepository.
Iuseeclipseeofordevelopmet.YoucasimplyimportMiebotasexistigproject.
==================Messagefrom1.16.3Porter(Vacciate)=============SomekidoflawmessagesayigI'motresposibleifyougetbaedforbottigaywhereetc.Notaccoutableforaythigthatgoeswroghere,it'syourchoiceifyouchoosetousethecodeadallthecosequecesofdoigso.IwasmailyfocusedoMiebotadotAimBow.Aotherpoit:Therearesomeslightmappigissueswithfuctios,dotakealookatdocumetatiohttps://forge.yue.moe/javadoc/1.16.3/overview-summary.htmlhttps://gist.github.com/gigaherz/2dfa77c6efc7d1248ef88ec1920c0a93#file-1152to1161-xmlEspeciallyhelpfulfor1.16.3developmetliks.
UsigItelliJIDE&Gradle:Settigup:Ihavecommetedoutthemapsadthestatssectios-Ididdeleteisteadofcommetoutsomecode(Ikow,mybad)butifyoulookthroughthefirstcommitadctrl-Fformapadstatsyoushouldfidmostofthecalls.Step1:CloetherepoStep2:OpetheprojectwithItelliJStep3:IsideItelliJ,Navigatetomiebot/Miebot/src/build.gradleStep4:Rightclickitadselect"ImportGradleProject"Step5:Thatshouldopeasectiowiththegradleproject,Miebot,adalittleelephattotheleftStep6:ExpadMiebot,Tasks,fg_rus,geItelliJRus.Step7:Doubleclick,itwillsetyourItelliJuptobereadytoruMiecraftadimporttheprojectStep8:ExpadMiebot,Tasks,fg_rus,doubleclickruClietStep9:WheiItelliJ,SetupyourSDKtouseJava1.8(Ibelieveit'stheolyoeworkigwithMiecraftatthegivetime)ThiswillruthecodeadopeaMiecraftlaucherwiththisversioofMiecraftoit.Happydevelopmet!
IfI'mgoewheitcomestoimplemetig1.17.xorfutureversios,essetially:Firstyoueedtoupgradethebuild.gradleadthemods.toml.ThesecabefoudiMiebot/src/mai/resources/META-INF.For1.16.3itwasimportatthatweupdatedthemods.tomltoicludealicese="x"portioformodstoru.IassumeditwasGNUbasedoMichael'scommets.Wheyou'rehere,icreaseloaderVersio="[xx,)"tothevalidoefortheversio.Ifyou'reotsure,fidsomeothermod'sgithubadcheckwhatthey'reusigfortheversioyou'retryigtoportto.
The,you'lleedtoupdatethebuild.gradle-oceagaiseewhatothermoddersusehere,butlookformappigschael:'sapshot',versio:'xxxx'foryourversioadthethedepedecies{miecraft'...'}eedsyourforgeversioiit.
Now,youca"Reimportallgradleprojects"iyourItelliJGradlewidow(Abovethelittleelephat)
Iftherearemayerrors,ulucky.Gothrougheachoebyoe-ifit'safaultimport,lookfortheewmappigithedocumetatioforyourversio.SeeoeofthelikstokowwhatI'mtalkigabout.The,oebyoe,replaceallreferecestoit.Goodluck&Happycodig,
Vacciate04/11/2020=====================EdMessagefrom1.16.3Porter=========================ThemaiclassesofMiebothavesomeJavadocithem.Mostotherclassesareudocumetedbutshouldexplaithemselves.
Howtoaddaewcommad:
AddaewcommadclassadregisteritiAIChatCotroller.TheclasseedsaAICommad-Aotatio.Mostcommadsuse"miebot"asbasecmmad.AtatleastoemethodwithaAICommadIvocatio-Aotatio.Addparameterstothatmethod.EachparametereedsaAICommadParameter-Aotatiothatisusedtogeeratethehelptextadtabcompletio.Itcahaveaysupportedtype(it,eums,color,block,...)butshouldotallowambigiouscommadlies.Implemetthatmethod.Youcaeitherimplemetastrategythatshouldowbeusedordothestuffdirectlyithemethod.Howtoimplemetaewstrategy:
LetaewclassextedTaskStrategyImplemetthesearchtaskmethod.ItshouldsearchewstufftodoadsedthetaskstothepassedAIHelpercalligit'saddTaskmethod.Ifitdoesotsedaytasks,itisfiished.Midthat,duetoserverlagsorotherproblems,thesearchmethodmightbecalledbeforeallpreviouslyassigedtaskshavebeeworkedo.Youshouldhadlethis.Howtoimplemetaewsearchigstrategy(thefastway)
ExtedMovePathfider.Lookattheotherexamplesohowtodoit,basicallyyoujusthavetorateeachdestiatioadcaaddataskthatshouldbedoewheadestiatioisreached.Alwaysworkothelocalworldobjectwhepathfidig.Thisallowsthebottopre-searchtaskswhileitisstillworkigotheoldoes.Howtoimplemetaewtask:
LetaClassextedaAITaskAddaisFiishedmethodthatreturstrueifthetaskisdoe.AddaruTickmethod,thatiscalledeverytickadshouldworktowardsthegoal.YouwillfidalotofhelpfulmethodsitheAIHelper.Therearemayoptioalmethods.HavealookattheAITaskdocumetatio.






评论