Miklix

Generator Labirinta Lov i Ubijanje

Objavljeno: 16. veljače 2025. u 21:01:12 UTC
Zadnje ažuriranje: 12. siječnja 2026. u 09:05:18 UTC

Generator labirinta koji koristi algoritam Hunt and Kill za stvaranje savršenog labirinta. Ovaj algoritam je sličan rekurzivnom Backtrackeru, ali obično generira labirinte s nešto kraćim, vijugavim hodnicima.

Ova je stranica strojno prevedena s engleskog kako bi bila dostupna što većem broju ljudi. Nažalost, strojno prevođenje još nije usavršena tehnologija pa se mogu pojaviti pogreške. Ako želite, izvornu englesku verziju možete pogledati ovdje:

Hunt and Kill Maze Generator

Algoritam "Lov i ubijanje" zapravo je modificirana verzija rekurzivnog algoritma "Potraga za povratnim tragom". Modifikacija se sastoji od sustavnog skeniranja (ili "lova") za novom ćelijom od koje se nastavlja od trenutka kada se više ne može ići dalje, za razliku od pravog rekurzivnog pretraživanja koje će se uvijek vratiti na prethodnu ćeliju na stogu.

Zbog toga se ovaj algoritam može lako prilagoditi za generiranje labirinata s različitim izgledom i dojmom, jednostavnim odabirom češćeg ulaska u način "lova" ili prema određenim pravilima. Verzija implementirana ovdje ulazi u način "lova" samo kada ne može ići dalje od trenutne ćelije.

Savršen labirint je labirint u kojem postoji točno jedan put od bilo koje točke u labirintu do bilo koje druge točke. To znači da se ne možete vrtjeti u krug, ali ćete često naići na slijepe ulice, zbog čega ćete se morati okrenuti i vratiti.

Ovdje generirane karte labirinta uključuju zadanu verziju bez ikakvih početnih i završnih pozicija, tako da ih možete sami odlučiti: postojat će rješenje od bilo koje točke u labirintu do bilo koje druge točke. Ako želite inspiraciju, možete omogućiti predloženu početnu i ciljnu poziciju - pa čak i vidjeti rješenje između ta dva.


Generirajte novi labirint








O algoritmu lova i ubijanja

Algoritam "Hunt and Kill" je jednostavna, ali učinkovita metoda za generiranje labirinata. Donekle je sličan pretraživanju u dubinu (tj. algoritmu rekurzivnog praćenja unatrag), osim što kada ne može ići dalje od trenutne pozicije, sustavno skenira (ili "lovi") labirint kako bi pronašao novu ćeliju iz koje će nastaviti. Algoritam se sastoji od dvije glavne faze: hodanja i lova.

Kako algoritam "Lov i ubijanje" funkcionira za generiranje labirinta

Korak 1: Počnite od slučajne ćelije

  • Pronađite slučajnu ćeliju u mreži i označite je kao posjećenu.

Korak 2: Faza hodanja (Nasumično hodanje)

  • Odaberite slučajnog neposjećenog susjeda.
  • Pomaknite se do tog susjeda, označite ga kao posjećenog i isklešite put između prethodne i nove ćelije.
  • Ponavljajte dok ne ostane nijednog neposjećenog susjeda.

Korak 3: Faza lova (povratno praćenje putem skeniranja)

  • Skenirajte mrežu redak po redak (ili stupac po stupac).
  • Pronađite prvu neposjećenu ćeliju koja ima barem jednog posjećenog susjeda.
  • Spojite tu ćeliju s posjećenim susjedom kako biste nastavili fazu hodanja.
  • Ponavljajte dok se ne posjete sve ćelije.

Dodatno čitanje

Ako vam se svidio ovaj post, možda će vam se svidjeti i ovi prijedlozi:


Podijeli na BlueskyPodijelite na FacebookuPodijelite na LinkedInuPodijelite na TumblrPodijeli na XPodijelite na LinkedInuPrikvači na Pinterest

Mikkel Christensen

O autoru

Mikkel Christensen
Mikkel je kreator i vlasnik miklix.com. Ima više od 20 godina iskustva kao profesionalni računalni programer/razvijač softvera i trenutno je zaposlen na puno radno vrijeme za veliku europsku IT korporaciju. Kada ne piše blog, svoje slobodno vrijeme provodi na široku lepezu interesa, hobija i aktivnosti, što se u određenoj mjeri može odraziti na različite teme obrađene na ovoj web stranici.