Mille's Puzzle Games!!

Alla fine com'è?
E' adatto a qualcuno che non sa un cazzo di programmazione (come me)?


Ho giocato poco ma posso già dire che tiene il solito livello zachtronics, non è necessario sapere qualcosa di programmazione si tratta solo di applicare logica in un certo modo, per me è tranquillamente alla tua portata e dovresti dargli una possibilità anche perché ti insegna implicitamente alcuni concetti di programmazione rendendoli particolarmente accessibili.
Ok allora lo prendo
Porca troia mi sta già esplodendo il cervello.
Già ho sputato sangue per finire il tutorial
Comunque molto bello di atmosfera, e l'idea delle fanzine è stupenda.
Figata la possibilità di stamparla come fosse una vera rivista, però potevano dare modo di sfogliarla direttamente in game senza dover aprire il PDF e alt-tabbare...

Joyrex, però mi serve una mano: ho già problemi a ordinare una pizza

Spoiler

Faccio il primo ciclo, e me lo da ok, poi si blocca tutto.
Osservando mi sembra di aver capito che ogni volta la lista degli ordini cambia: ma quindi bisogna creare una serie di comandi che vada bene SEMPRE in ogni situazione?
Perchè la mia soluzione funziona solo se prima di me hanno ordinato altre tre pizze, immagino si debba crearne una che si adattabile ad ogni situazione... giusto?
Devo leggere meglio sulla fanzine, mi sembra di aver visto un comando che testa se sei arrivato alla fine di una lista, probabile che si usi quello.




Ps - non si possono sharare le gif come in opus magnum?


Incolla il codice per sharare con la bbcode tag code

Per quanto riguarda lo spoiler: certo che devi creare un set di comandi che vada bene in generale, devi risolvere 100 casi tutti insieme quindi non puoi scrivere codice specifico per un caso in particolare.
(si, c'è il comando che testa EOF)

Le fanzine mi ricordano tanto phrack
Ah ok pensavo fosse solo da risolvere un caso unico.
Tipo nel caso delle pizze.

Spoiler

bisogna creare degli exa che mettano in coda il proprio ordine di pizza in qualsiasi situazione: sia che prima di noi ci sia un ordine, sia che abbiano già ordinato 30 pizze



Cazzo è un bordello cmq.
Ok mi è arrivata la pizza
In realtà era più semplice di quello che credevo.

Ma seriamente, non c'è un sistema per sharare le soluzioni come su opus magnum?


No purtroppo non c'è, fai screenshot e via

Io comunque sto facendo tutte le soluzioni abbastanza a cazzo per andare avanti, zero ottimizzazione
Molto male, Zach sta facendo passi indietro

Comunque è un bordello
Decisamente mi trovo meglio con i puzzle più visivi, sta roba astratta mi fa impazzire.
Comunque è bellissimo veramente come ti presentano le cose nuove e i vari elementi, tramite la fanzine e anche la chat irc
E anche l'incipit della storia sembra figo.
Ma immagino che si possano fare altre cose oltre l'obiettivo del livello, o no?
Tipo chenesò nel livello della pizzeria poter hackerare le telecamere?

Comunque fino ad ora ho fatto sti due

Spoiler





Spoiler




Più vai avanti più ti abitui si tratta appunto di trovare in te la capacità di astrarre
Mi serve una dritta.
Questo hack l'ho risolto così

Spoiler



c'è un sistema per

Spoiler

fare in modo che l'exa XA si suicidi?
Perchè alla fine di tutto rimane bloccato sulla riga "copy F M".
Ho provato a fare in modo che XB mandi un messaggio indietro a XA quando ha finito i suoi lavori per avvertirlo e farlo uscire dal suo loop, ma non può funzionare perchè XA sta già mandando un messaggio.
Quindi ho risolto spostando indietro XB per dare il messaggio di kill, oppure (in questo caso) ho creato un altro exa che fa da watchdog e quando arriva il messaggio da XB lui da il comando di kill ed elimina XA




Tu come hai fatto?
Mi interessa particolarmente perchè è un caso che capita spessissimo e così mi sembra ottimizzato di merda, e ovviamente ogni volta che mi si ripresenta rallenta tutto
l'exa lo ammazzi con halt, kill ammazza un altro exa nello stesso host
Si questo l'ho capito, ma come fa a sapere quando ammazzarsi?
Gli deve arrivare un interrupt da un altro exa a distanza, ma se il canale M è già occupato perchè sta a sua volta mandando un messaggio... come si fa?

Tu come lo hai fatto?
Postami uno screen della tua soluzione
Ancora mi sfugge perché posti gli screen e non il codice

XA
GRAB 300
COPY F X
WIPE

LINK 800
LINK 800

GRAB 237

MARK L
COPY F T
TEST X = T
TJMP RM
JUMP L

MARK RM
SEEK -1
VOID F
DROP
HALT
Ok ho capito, tu l'hai fatto con un solo exa

Comunque posto gli screen cosi almeno capisci di quale livello stiamo parlando
Sono andato avanti bene, e mi sto alienando
Ci sono un sacco di concetti che all'inizio mi sembravano incasinatissimi che ora implemento al volo in altre soluzioni
Però ho sempre il grosso problema che molto spesso mi rimane l'ultimo exa in loop e non trovo mai un sistema semplice per farlo autodistruggere

Comunque fighissimo, l'atmosfera è sempre più bella, e in più ci sono delle figate assurde tipo quando ricevi il "gameboy" e lo puoi programmare come preferisci.
Ho già visto gente sul web che ci ha replicato i vecchi videogiochi tipo asteroids o replicato le canzoni a 8bit
Joyrex ti posto la soluzione che ho fatto con meno cicli di UC Berkley

XA


XB
Durante l'estate avevo poca voglia di giocare a Opus Magnum, non ho il pc in stanze con aria condizionata.


Life Sensing Potion


Spoiler







Mi sono scordato di togliere i pezzi extra di track


Nelle fasi finali di "sviluppo" mi sono accorto che il sistema di usare un solo connettore non avrebbe funzionato ed ho dovuto mettere il secondo per chiudere l'anello: alché era meglio progettare il tutto a due pezzi da 3 da linkare al termine... forse... ma ci ho messo la pezza così.


Si, exapunks sarà bello, ma non c'è paragone con la soddisfazione del vedere le soluzioni meccaniche di Opus Magnum in loop
Primo tentativo generato da convertiore midi->exapunks fatto in pyhton
(per mille )

XA
LINK 801
DATA 70 26 70 3 70 3
DATA 70 3 70 3 70 5
DATA 68 3 70 18 70 3
DATA 70 3 70 3 70 3
DATA 70 5 68 3 70 20
DATA 70 3 70 3 70 3
DATA 70 3 70 5 65 3
DATA 65 3 65 5 65 3
DATA 65 3 65 5 65 3
DATA 65 3 65 5 65 5
DATA 70 9 65 20 70 4
DATA 70 4 72 4 74 4
DATA 75 4 77 26 77 5
DATA 77 5 78 5 80 5
DATA 82 30 82 5 82 5
DATA 82 5 80 5 78 5
DATA 80 5 78 5 77 26
DATA 77 13 75 7 75 4
DATA 77 4 78 26 77 7
DATA 75 7 73 7 73 4
DATA 75 4 77 26 75 7
DATA 73 7 72 7 72 4
DATA 74 4 76 26 79 13
DATA 77 5 65 3 65 3
DATA 65 5 65 3 65 3
DATA 65 5 65 3 65 3
DATA 65 5 65 5 70 9
DATA 65 20 70 4 70 4
DATA 72 4 74 4 75 4
DATA 77 26 77 5 77 5
DATA 78 5 80 5 82 39
DATA 85 13 84 7 81 22
DATA 77 13 78 28 82 13
DATA 81 7 77 22 77 13
DATA 78 26 82 13 81 7
DATA 77 26 74 13 75 26
DATA 78 13 77 7 73 26
DATA 70 13 72 7 72 4
DATA 74 4 76 26 79 13
DATA 77 5 65 3 65 3
DATA 65 5 65 3 65 3
DATA 65 5 65 3 65 3
MARK LOOP
COPY F #TRI0
COPY F X
MARK LOOPSTOP
WAIT
SUBI X 1 X
TEST X = 0
FJMP LOOPSTOP
COPY 0 #TRI0
TEST EOF
FJMP LOOP
SEEK -9999
JUMP LOOP


XB
LINK 801
DATA 62 26 62 3 62 3
DATA 62 3 62 3 60 5
DATA 60 3 60 18 60 3
DATA 60 3 60 3 61 5
DATA 61 3 61 20 61 3
DATA 61 3 61 3 61 3
DATA 61 7 57 3 57 3
DATA 57 5 57 3 57 3
DATA 57 5 57 3 57 3
DATA 57 5 57 5 62 9
DATA 62 5 62 5 60 5
DATA 62 7 62 4 62 4
DATA 63 4 65 4 67 4
DATA 68 10 70 4 70 4
DATA 72 4 74 4 75 4
DATA 77 7 77 7 68 5
DATA 70 5 72 5 73 10
DATA 66 4 66 4 68 4
DATA 70 4 72 4 73 7
DATA 73 7 73 5 72 5
DATA 70 5 73 5 68 5
DATA 68 5 68 5 66 5
DATA 68 5 68 5 68 5
DATA 66 5 68 5 66 8
DATA 66 3 65 3 66 1
DATA 66 2 68 3 70 13
DATA 68 7 66 7 65 1
DATA 65 2 63 3 65 1
DATA 65 2 66 3 68 13
DATA 66 7 65 7 64 13
DATA 64 10 65 4 67 1
DATA 67 2 69 3 70 7
DATA 72 7 69 5 57 3
DATA 57 3 57 5 57 3
DATA 57 3 57 5 57 3
DATA 57 3 57 5 57 5
DATA 62 9 62 5 62 5
DATA 60 5 62 7 62 4
DATA 62 4 63 4 65 4
DATA 67 4 68 10 70 4
DATA 70 4 72 4 74 4
DATA 75 4 77 7 77 7
DATA 68 5 70 5 72 5
DATA 73 39 76 13 75 7
DATA 72 22 69 13 71 28
DATA 73 13 72 7 69 22
DATA 69 13 71 26 73 13
DATA 72 7 69 26 69 13
DATA 66 26 71 13 70 7
DATA 65 26 61 13 64 13
DATA 64 10 65 4 67 1
DATA 67 2 69 3 70 7
DATA 72 7 69 5 57 3
DATA 57 3 57 5 57 3
DATA 57 3 57 5 57 3
DATA 57 3 57 5 57 5
MARK LOOP
COPY F #SQR0
COPY F X
MARK LOOPSTOP
WAIT
SUBI X 1 X
TEST X = 0
FJMP LOOPSTOP
COPY 0 #SQR0
TEST EOF
FJMP LOOP
SEEK -9999
JUMP LOOP


XC
LINK 801
DATA 46 9 46 3 46 3
DATA 46 3 46 9 46 3
DATA 46 3 46 3 44 9
DATA 44 3 44 3 44 3
DATA 44 9 44 3 44 3
DATA 44 3 42 9 42 3
DATA 42 3 42 3 42 9
DATA 42 3 42 3 42 3
DATA 42 7 41 5 41 5
DATA 43 7 45 7 46 5
DATA 46 3 46 3 44 3
DATA 46 5 46 5 44 5
DATA 44 3 44 3 42 3
DATA 44 5 44 5 42 5
DATA 42 3 42 3 40 3
DATA 42 5 42 5 49 7
DATA 49 5 49 5 47 5
DATA 49 7 49 7 47 7
DATA 47 5 47 5 46 5
DATA 47 7 47 5 47 5
DATA 47 5 46 7 46 5
DATA 46 5 44 5 46 7
DATA 46 5 46 5 46 5
DATA 48 7 48 5 48 5
DATA 46 5 48 7 48 5
DATA 48 5 48 5 41 5
DATA 41 5 41 5 43 7
DATA 45 7 46 5 46 3
DATA 46 3 44 3 46 5
DATA 46 5 44 5 44 3
DATA 44 3 42 3 44 5
DATA 44 5 42 5 42 3
DATA 42 3 40 3 42 5
DATA 42 5 41 5 41 3
DATA 41 3 39 5 41 5
DATA 41 5 40 3 46 3
DATA 49 3 52 3 58 3
DATA 61 3 64 5 65 5
DATA 41 3 41 3 41 3
DATA 41 5 40 3 46 3
DATA 49 3 52 3 58 3
DATA 61 3 64 5 65 5
DATA 41 3 41 3 41 3
DATA 41 5 47 5 47 3
DATA 47 3 46 3 47 5
DATA 47 3 47 3 47 3
DATA 46 5 46 3 46 3
DATA 44 3 46 5 46 3
DATA 46 3 46 3 48 5
DATA 48 3 48 3 48 3
DATA 48 5 48 3 48 3
DATA 48 3 41 5 41 5
DATA 41 5 43 7 45 7
MARK LOOP
COPY F #SQR1
COPY F X
MARK LOOPSTOP
WAIT
SUBI X 1 X
TEST X = 0
FJMP LOOPSTOP
COPY 0 #SQR1
TEST EOF
FJMP LOOP
SEEK -9999
JUMP LOOP