Ti trovi qui:Forums -> Giochi nativi -> Discussioni varie -> Game pack

Game pack


Inserita dasirio81 - in data 26 Giugno 2008

ciao ragazzi, per il prossimo linux day mi è venuta un'idea:
creare un dvd con una serie di giochi di buona qualità che possono essere installati SENZA GESTORE DI PACCHETTI. Nel dvd voglio crere uno script che permetta di installare facilmente i giochi.
Subito pensavo ad un puro script bash ma ora sto valutando di usare ncurses per avere una mezza modalità grafica.
La directory di default di installazione sarà /opt.
Volevo inoltre uniformare il formato di compressione in tar.bz2 (che è presente su tutte le distro).

Quello che vi chiedo è:
1-cosa ne pensate?
2-mi date una mano a scegliere i giochi con le caratteristiche sopra citate?
3-una volta pronto mi farebbe piacere che mi aiutaste a testare lo script di installazione

Questo è il lavoro da me svolto sin'ora

LISTA GIOCHI
http://www.nexuiz.com
http://sauerbraten.org/
http://fretsonfire.sourceforge.net/
wolfenstein
http://www.urbanterror.net/
http://www.warsow.net/?page=download
http://www.worldofpadman.com/
http://www.glest.org/en/index.php

DA TESTARE IL TIPO DI INSTALLAZIONE E QUALITA' DI GIOCO
http://www.planetquake.com/elf
http://spring.clan-sy.com/wiki/Other_distros_install #Binary_for_Other_Linux_Systems
http://wz2100.net/download
http://xoops.widelands.org/modules/wfdownloads/viewcat.php?cid=2
http://www.boswars.org/download.shtml

Questi ultimo sono giochi che non ho provato personalmente quindi non li ho messi nella lista di quelli buoni.

Uno dei miei dubbi amletici è se sarà necessario copiare anche i dati di gioco presenti nella home.
Per alcuni giochi penso non serva ma non verrei che alcuni non partissero senza.

__________________________

ritratto di comick

Molti giochi hanno gia il loro installatore, il più delle volte si tratta del loki installer, già ottimo, userei quello. Altri basta che vengano decompressi. Io metterei una pagina index.html nella root del dvd dove c'è l'elenco giochi con piccola descrizione (puoi usare quanto nel nostro wiki citando la fonte ad esempio) e due righe su come installare.

__________________________

Fondatore di Playlinux

ritratto di sirio81


Molti giochi hanno gia il loro installatore, il più delle volte si tratta del loki installer, già ottimo

Il mio obiettivo era proprio quello di uniformare i metodi di installazione. L'ideale sarebbe una schermata del tipo:

|x|gioco1
|x|gioco2
|x|gioco3
|x|gioco4
|x|gioco5

Directory di installazione:
/opt/games/

Questo per agevolare le persone che useranno il pinguino per la prima volta e non obbligarli a fare cose diverse per ogni ogni gioco (tipo uno si unzippa, l'altro ha l'installer, l'altrò è un tgz) e per poterli installare tutti con un clic.

ritratto di comick

rischia di essere un lavoro eccessivo e inutile.
Al limite potresti creare i loki installer per i pochi giochi che non lo forniscono. Eventualmente si potrebbero mettere qui su playlinux da far scaricare.

__________________________

Fondatore di Playlinux

ritratto di Babets

Notare che Nexuiz e pure Warsow ha un map-pack.
Io farei una semplice interfaccina, (magari testuale per evitare troppi problemi) e rendere poi l'installazione assolutamente automatica (chiedendo solo all'inizio che giochi si vuole installare di quelli in lista e basta) senza che venga chiesto nulla dal loki installer.
So che è possibile usare il file .run del loki installer in modo da scompattarlo e installare il suo contenuto in modo automatico senza che venga chiesto nulla all'utente, perché con molti giochi in AUR su archlinux si fa così.
Per nexuiz invece basta scompattare lo zip e creare le apposite voci per il menu.
Per farla breve per molti di questi giochi (forse tutti) penso ti possa essere utile scopiazzare lo script di installazione che si usa in archlinux.
Esempio per enemy territory (che usa appunto il loki installer).
Notare che per estrarre il contenuto del loki installer si fa:
./et-linux-2.60.x86.run --noexec --target $pkgname
Dove puoi sostituire la variabile pkgname con la directory dove vuoi scompattarlo.
Spero di essere stato comprensibile Smiling

__________________________

Linux user #390041

ritratto di sirio81

al di lù del metodo di installazione, quali altri giochi buoni consigliate? Devono essere liberamente redistribuibili.
Mi viene il dubbio che wolfenstein lo sia...

ritratto di Babets

In effetti non avevo pensato potesse non essere redistribuibile ma comunque era solo un esempio su come utilizzare il loki installer in maniera più comoda.
Per quanto riguarda altri giochi mi vengono in mente:
- Alienarena
- Openarena
- Savage (il primo almeno, il secondo se ben ricordo ha qualche limitazione ma si potrebbe includerlo penso)
- Supertux Kart
- Chromium BSU (che non ho ancora provato ma sembra carino)

Qualcuno ha provato Bos Wars?

__________________________

Linux user #390041

ritratto di kurama

Ehm credo proprio che in un game pack non possa mancare

__________________________

Collaboratore di Playlinux
Free Tibet

ritratto di comick

Sembra davvero figo questo ultrastar deluxe.

Qualuno fa una notiziiuola di presentazione? E magari la paginetta del wiki?

__________________________

Fondatore di Playlinux

ritratto di kurama

comick ha scritto:
Sembra davvero figo questo ultrastar deluxe.

Qualuno fa una notiziiuola di presentazione? E magari la paginetta del wiki?


Non sembra solo...lo è!Comunque il vostro prode e mai sfaticatu kurama aveva approntato in passato una pagina sul wiki. Certo si può migliorare...ma una base esiste!

http://wiki.playlinux.net/giochi_nativi/ultrastar_deluxe

__________________________

Collaboratore di Playlinux
Free Tibet

ritratto di comick

Allora manca solo una notiziuola di presentazione Laughing out loud

__________________________

Fondatore di Playlinux

ritratto di sirio81

Ciao ragazzi, ho la prima bozza dello script. Alla fine farò un "semplice" script bash: niente ncurses o dialog.
Premetto che è molto bozza, nel senso che non ho ancora avuto occasione di provarlo e sarà pieno di errori.

Lo script prevede che esista una cartella "games" che contiene gli archivi dei pacchetti (tutti tar.bz2) che verranno estratti in una cartella indicata dall'utente o altrimenti /opt/games.
Lo script si occupa di creare i link simbolici in /usr/game se esiste, altrimenti in /usr/bin.

Non potendo mettere allegati nel post, riporto il codice (che perde l'indendazione Sad )

#creo array giochi
#CONVENZIONI:
#-tutti gli archivi saranno tar.bz2
#-ogni archivio contiene una sola cartella con che contiene a sua volta i file del gioco.
#-il nome della cartella corrisponde al nome dell'archivio (senza estenzione)
# (questo serve per semplificare la creazione dei link simbolici)

function intialize {
#lo script va eseguito con i privilegi di root
if [ $(whoami) != "root" ]; then
echo "inserisci la password di root"
su
fi

#nome cartella del dvd dove ci sono gli archivi dei giochi
$archive_dir="games"

declear -a games
declear -a binary

games[0]="InstallAllGames"
games[1]="Nexuiz.tar.bz2"
games[2]="Warsow.tar.bz2"
#etc

binary[0]="none"
binary[1]="nexuiz-i686-glx.sh"
binary[2]="warsow"
#etc
}

function print_games_list {
#stampo la lista dei giochi
for ((i=0;i<${games[@]},i++})); do
game_name=${games[$i]%%.*}
echo "[$i]\t$game_name"
done
}

function input_verify {
#controllo logico:
#se viene passato zero, non devono essere passati altri argomenti
read -p "giochi selezionati:\t" numbers
for number in numbers; do
if [ $count -ge 1 -a $number -eq 0]; then
echo "Se specifichi 0 (zero) non devi passare altri numeri.\n"
return 1
fi
((count++))
done

#verifico che siano stati digitati solo i numeri ammessi
case number in $numbers
! 0-${games[@]})
"$number non è un valore valido"
return 1
;;

#al termine di questi controlli $numbers conterrà una selezione valida di giochi
games_selection=$numbers
return 0
}

function directory_selection {
read -p "directory:\t" isntall_dir

if [ -z "$install_dir" ]; then
install_dir = "/opt/games"
if [ ! -d "/opt/games"]; then
mkdir "/opt/games"
fi
return 0
elif [ ! -d "$install_dir" ]; then
echo "$install_dir non è una directory."
echo "Scrivi il nome di una directory valida."
return 1
else
return 0
}

function links_creation {
for game in $game_selection; do
game_name=${games[$game]%%.*}
if [ -d "/usr/games" ]; then
ln -s "$install_dir/$game_name/${binary[$game]}" "/usr/games"
else
ln -s "$install_dir/$game_name/${binary[$game]}" "/usr/bin"
fi
done
}

function games_install {
#per testare lo script sono commetate le voci che estraggono i pacchetti e creano i link simbolici
for game in $games_selecion; do
#tar xjf "$archive_dir/${games[$game]}" "$install_dir"
echo "Sto installando ${games[$game]}"
done

#links_creation
return 0
}

#MAIN#
intialize

#richiedo la lista dei giochi
echo "Scrivi i numeri dei giochi che vuoi installare."
echo "0 (zero) installerà tutti i giochi.\n"
echo "per terminare lo script, premi in qualsiasi momento 'CTRL+C'\n\n"
print_game_list
echo "\n"
flag=1
while [ $flag -eq 1 ]; do
flag=input_verify
done

#richiedo la directory di installaizone
echo "Scrivi il percorso completo della directory in cui vuoi installare i giochi."
echo "Se non specifichi una directory verrà usata quella corrente."
flag=1
while [ $flag -eq 1 ]; do
flag=install_dir
done

#procedo con l'installaizone
if [ games_install -eq 0 ]; then
echo "Installazione eseguita con successo."
echo "Ricordati che i videogiochi non funzioneranno se non hai installato il dirver con accelerazione 3D della tua scheda grafica."
echo "Se hai bisogno di aiuto collegati a www.linuxludus.it scrivi sul forum."
else
echo "Qualcosa non ha funzionato durante l'installazione."
echo "Collegati www.linuxludus.it e riporta il problema sul forum nella sezione 'Games'"
fi

#NOTE
# non so bene il perchè ma l'eseguibile di nexuiz va lanciato all'interno della sua directory
# in altre parole il link simbolico in /usr/games non funzioera.
# Va creato un piccolo script che fa questo:
# cd $dir_installazione/Nexuiz
# ./nexuiz-linux-i686-glx
# Se questo script si chiama "run_nexuiz" va linkato in /usr/games

ritratto di kurama

Wow...purtroppo ne so di programmazione come un industriale conosce la fisica quantica Laughing out loud

__________________________

Collaboratore di Playlinux
Free Tibet

ritratto di sirio81

Rieccomi. Ho una versione "beta" di quello che sarà il DVD finale.
Vorrei che lo scaricaste e proviate ad installare i giochi.

Istruzioni:
scaricare tutte e tre i file che trovate in
http://hosted.filefront.com/sirio81/
(su filefront si possono uploadare file di max 1g)

ricreate il file originale
$ cat LL_game_pack.iso* > LL_game_pack.iso

cancellate pure i file scaricati
$ rm *.iso.00*

ora potete masterizzare l'immagine iso o più semplicemente montarla
(d'ora in poi si lavora come root)
# mkdir /media/iso
# mount LL_game_pack.iso /media/iso/ -t iso9660 -o loop

bene, ora potete lanciare l'installer
# cd /media/iso
# ./installazione_giochi.sh

NOTA: forse i file installati sono ancora assegnati all'utente sirio81 che voi non avete. In tal caso eseguite
# chown -R root:root /opt/games/*
(sostituie /opt/games con la directory dove avete installato i giochi).

MORALE: ditemi cosa può essere miglirato, cosa funziona e cosa no.
Il DVD finale conterrà un PDF con la descrizione dei giochi, in modo che l'utente possa scegliere i giochi che vuole installare.

Ciao e grazie della collaborazione.

ritratto di sirio81

Qualcuno l'ha provato?

ritratto di kurama

Ciao Sirio, scusa la risposta in ritardo io lo proverei anche ma non ho a disposizione un pc con linux installato. Ti sto scrivendo dal windowsiano portatile di mia madre!

__________________________

Collaboratore di Playlinux
Free Tibet

ritratto di sirio81

Ragazzi, mi serve un aiutino: quali fra questi giochi sono basati sul motore di quacke 3?

games[0]="boswars.tar.bz2"
games[1]="glest.tar.bz2"
games[2]="nexuiz.tar.bz2"
games[3]="openarena.tar.bz2"
games[4]="sauerbraten.tar.bz2"
games[5]="spring.tar.bz2"
games[6]="supertuxcar.tar.bz2"
games[7]="tremulous.tar.bz2"
games[8]="urbanterror.tar.bz2"
games[9]="vegastrike.tar.bz2"
games[10]="warsow.tar.bz2"
games[11]="widelands.tar.bz2"
games[12]="worldofpadman.tar.bz2"

Mi serve saperlo per abilitare l'audio come indicato sul wiki.
Grazie, ciao!

ritratto di yemminator

openarena , tremulous, urban terror, world of padman

Invia nuovo commento

Il contenuto di questo campo è privato e non verrà mostrato pubblicamente.
  • Indirizzi web o e-mail vengono trasformati in link automaticamente
  • Tag HTML permessi: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <del> <object> <param> <embed>
  • Linee e paragrafi vanno a capo automaticamente.
  • Le faccine in formato testuale saranno rimpiazzate con le immagini corrispondenti.
  • Puoi citare altri posts usando i tags [quote].

Maggiori informazioni sulle opzioni di formattazione.

Controllo anti-spam
Questa domanda serve per capire se sei un visitatore umano o un automatismo.
14 + 3 =
Risolvi questo semplice problema matematico e inserisci il risultato. Ad esempio per 2 + 3, inserisci 5.