Armor slots mh4u

Trekk foresporsler 1.

Bli med GitHub i dag.

GitHub er hjem for over 20 millioner utviklere som arbeider sammen for a verts- og gjennomgangskode, administrere prosjekter og bygge programvare sammen.

Klon med HTTPS.

Bruk Git eller kassen med SVN ved hjelp av webadressen.

Dette er et hobbyprosjekt av meg, som impelements en algoritme og en nettbasert brukergrensesnitt som finner rustningsett for a tilfredsstille visse krav i spillet Monster Hunter 4 Ultimate (japansk versjon: Monster Hunter 4G).

Monster Hunter har et unikt ferdighetssystem, og for a kunne utove en viss ferdighet, ma vi lage en kombinasjon av rustninger, inkludert et vapen, en hjelm, en rustning, en midjepans, en armpans, en benpans og en amulett , hvis totale bidrag til onsket ferdighet overstiger et ferdighetspoengniva. A finne det rette settet med rustningstykker som aktiverer de nodvendige ferdighetene, er vanskelig, som det er.

150 forskjellige ferdighets tr r,

600 kandidatpanser for hver av brikkene, og hver rustning bidrar til flere ferdigheter, positivt eller negativt. Det som gjor problemet mer interessant er at rustningene kan ha spor, hvor forskjellige dekorasjoner som bidrar til ulike ferdigheter, kan plugges inn.

monster-avengers er et slikt verktoy for effektivt a finne de riktige rustningskombinasjonene gitt det onskede settet av ferdigheter. Med en noye utformet algoritme, det.

stotter raskt sok fra alle 3000 forskjellige armors i databasen. utganger rustningskombinasjoner med dekorasjoner. anser Torso opp rustninger. stotter a legge til tilpassede amuletter i sporringen. vurderer antall spor pa vapenet. stotter filtrering pa sokeresultatet for a utelukke visse rustningsstykker. kommuniserer med et enkelt lisp-basert sporresprak. foreslar at ferdigheter som fremdeles er oppnaelige, er basert pa dagens utvalgte ferdigheter.

Den kommer ogsa med en nettbasert brukergrensesnitt.

Det finnes for oyeblikket en forekomst av dette verktoyet som kjorer pa en server med sv rt begrenset beregningsressurs. Du finner den pa http://mh4u.breakds.org.

Ligger i csharp / winbind_wrapper. En C # wrapper klasse implementert via DLLImport.

Arbeid pagar.

Jeg jobber med en serie innlegg som diskuterer algoritmen bak dette prosjektet pa bloggen min. Ta en titt hvis du er nysgjerrig og interessert.

For de som er interessert i algoritmen eller implementeringen, kan du finne en kort beskrivelse nedenfor. Merk at koden fortsatt ikke er veldig godt dokumentert, og jeg jobber med a legge til kommentarene og dokumentasjonene i koden sa mye som mulig med det begrensede tidsbudsjettet.

Koden er hovedsakelig delt inn i 2 deler:

cpp / A C + + implementering av sokealgoritmen, hvor vi har lisp / gir parseren og leseren til lisp-objekter, i hvilket format sporring og databaseoppforinger lagres. data / definerer datastrukturene som er involvert, f.eks. ferdighetene, rustningene, juvelene, osv. kjernen / implementerer sokealgoritmen, hvor du kan finne medlemsmetoden ArmorUp :: Sok er hovedinngangen til algoritmen. lisp / ui / implementerer den webbaserte brukergrensesnittet for dette rustningsverktoyet. Denne webappen er skrevet i Common Lisp basert pa webrammen reaLispic. Spesielt inneholder widgets / definisjonene av alle widgets pa nettet. Koden skal v re veldig grei hvis du er kjent med React.js. backend.lisp definerer RPC som snakker til C ++ backend for a handtere sporringer. Dette er en super naiv implementering som gjor meldingen passerer via filer pa disken.

C ++-koden forvaltes av CMake. A bygge C + + bin r:

Na kan du enten kjore make for a bygge den bin re tjeneren_query eller ccmake. a konfigurere Makefile-generasjonen. Du kan skifte byggetypen som RELEASE for a bygge en mye mer effektiv bin r.

For a kjore webserveren som tjener brukergrensesnittet, trenger du en lisp-implementering (for eksempel SBCL) og quicklisp. Etter at de er konfigurert, kan du plassere prosjektmappen (eller en symbolsk lenke til mappen) under quicklisp / local-prosjekter, og start sbcl. Kjor pa Common Lisp-toppnivaet.

for a starte webserveren. Du bor na kunne fa tilgang til webappen lokalt pa localhost: 16384 / app? Lang = no. Legg merke til at dette prosjektet er avhengig av flere av andre prosjekter, som skal lastes ned ved plassering pa quicklisp / lokale prosjekter:

Det er for tiden noen begrensninger i dagens implementeringer, og jeg vil jobbe med a forbedre seg over dem. De som jeg er klar over er:

Webapp stotter ikke tilpassede guild armors. Algoritmen stotter guild armors, selvfolgelig. Jeg er en veldig darlig designer, og jeg kan ikke tenke pa en mate a legge til slike alternativer pa siden, uten at det ser veldig komplisert ut. Denne funksjonaliteten vil bli lagt til snart. Kommunikasjonen mellom backend og webserver er filbasert Dette vil bli erstattet av et ekte RPC-rammeverk. Webapp lagrer ingen informasjon til personliggjoringsfunksjoner, som for eksempel personlig rustningssett bibliotek, personlige amuletter bibliotek, etc. For a v re rlig, er jeg ikke erfaren nok til a implementere dette effektivt og sikkert. Vil legge til disse funksjonene i fremtiden, men uten lofte. Hunter-fremdriftsalternativer. Jeg synes det er en god ide a filtrere ut armors basert pa spillers fremgang. Jeg mangler dataene for a implementere denne funksjonen. JSON og Lisp parser / komponist bor ga inn i andre pakker (eller ikke?).

Kreditt til Ping An, forfatteren av Pings Dex. Hans forsok pa a komponere dataene er kilden til mange andre relaterte prosjekter. Kreditt til prosjektet MonsterHunter4UDatabase, hvor alle dataene (rustninger, ferdigheter og dekorasjoner) er fra databasen. A fullfore databasen krever mye arbeid og uten deres innsats, ville jeg ikke ha fullfort dette. Kreditt til Cassandra Qi, min kone og min Monster Hunter-spillpartner, for a jobbe med kunst og design av brukergrensesnittet. Takket v re mine venner som inspirerte meg, oppmuntret meg, diskuterte ideene med meg og hjalp med testerne: Frank Xiao Lin Zommie Dev Hui Guo KIRANICO Epona Yunlu Guo Wybaby.

Alle koder i dette prosjektet er under MIT-lisensen.

&kopiere; 2018 GitHub, Inc. Vilkar Personvern Sikkerhetsstatus Hjelp.

Du kan ikke utfore denne handlingen pa dette tidspunktet.

Du logget pa med en annen fane eller et vindu. Oppdater for a oppdatere okten din. Du logget ut i en annen kategori eller et vindu. Oppdater for a oppdatere okten din.