- 351
- 87
- CPU
- AMD Ryzen 5900x
- Dissipatore
- BeQuiet! SilentLoop 2 360mm
- Scheda Madre
- Gigabyte X470 AORUS Gaming 7 WIFI AMD X470
- HDD
- Crucial P5 Plus 2 TB PCIe M.2 2280SS
- RAM
- Patriot Viper Steel RAM DDR4 3600 Mhz 64GB (2x32GB) C18
- GPU
- MSI GeForce RTX 2080 Gaming X Trio
- Audio
- SteelSeries Arctis 9
- Monitor
- Alienware AW3423DWF
- PSU
- EVGA SuperNOVA 650 G3, 80 Plus GOLD 650W
- Case
- Sharkoon TG5
- OS
- Windows 11, Fedora 36
Ciao a tutti!
Stavo pensando ad un progetto che, data una matrice di dimensioni N, M, ed uno o più punti P (partenza), riesca a generare le seguenti informazioni:
Alcuni vincoli:
Idea pratica: uno o più giocatori si ritrovano all'interno di questa struttura; al comando d'inizio il percorso viene generato e si alzano i muri attorno ai giocatori, i quali devono trovare la via d'uscita. L'algoritmo del labirinto genera i percorsi, mentre il server crea i muri. Successivamente sui muri (o in terra) possono essere applicate delle trappole.
Avete voglia di darmi una mano? :D
Stavo pensando ad un progetto che, data una matrice di dimensioni N, M, ed uno o più punti P (partenza), riesca a generare le seguenti informazioni:
- un punto di arrivo A, il più distante tra i punti P (calcolo distanza blocco per blocco in brute force per determinare la distanza massima? Altri algoritmi più intelligenti?)
- una strada che congiunga i punti P al punto A (immagino si possano sfruttare i glifi, ma non ho mai sviluppato in tal proposito)
- una serie di vicoli ciechi (altrimenti che labirinto sarebbe? :D) (no idea)
Alcuni vincoli:
- il percorso deve essere percorribile in verticale o orizzontale, non obliquo (es. path 1,1 -> 2,2 deve passare necessariamente da 1,2 o 2,1), forse ignorabile per punto (2) (vedi sotto)
- il percorso deve essere sempre largo 2 punti (minimo 2x2), anche se questo immagino sia semplice da aggirare: raddoppiando la superficie di gioco.
- i percorsi generati da P ad A non possono contorcersi "troppo" (nel senso che non possono girare su sé stessi), potrebbe venire incontro il vincolo (4)
- ci dev'essere un rapporto tra blocchi "chiusi" e blocchi "aperti", in modo da evitare un labirinto troppo facile (vedi la meta da distante), oppure troppo corto (poche diramazioni perché tutto "chiuso")
Idea pratica: uno o più giocatori si ritrovano all'interno di questa struttura; al comando d'inizio il percorso viene generato e si alzano i muri attorno ai giocatori, i quali devono trovare la via d'uscita. L'algoritmo del labirinto genera i percorsi, mentre il server crea i muri. Successivamente sui muri (o in terra) possono essere applicate delle trappole.
Avete voglia di darmi una mano? :D