Projet Trophée Jules Verne
Modérateurs : Papy.G, fneck, Carl
Projet Trophée Jules Verne
Une observation faite par _sam_ m'a mis sur la voie d'un projet un peu fou :
Un qui simule le tour du monde.
Les idées ne sont pas encore claires ni formées, mais ça me botte assez de tenter l'aventure.
Quelle machine ? - pourquoi pas le MO5.
Langage : Le Basic me semble ad-hoc vu les calculs à faire et peut-être du Langage Machine pour
la partie graphique.
=====================================
LE PROJET JULES VERNE
But du jeu :
Partant de Bretagne aux commandes d'un voilier de course, revivre la Jule Verne en passant les caps mythiques de Bonne Espérance, Leeuwin et Horn.
A) Réglage/Choix du bateau :
-Établir différents niveaux ?
-Polaires : Différentes polaires ? (Vitesse du bateau en fonction de l'angle et force du vent)
-Voiles : Différentes voiles ?
B) Tour de jeu : Représente 1 ou 2 jours de mer Soit 25 tours de jeu +- Tour estimé en 50 jours de mer soit 25 tours de jeu.....
1 - Le joueur :
-Choisir vue rapprochée : Affichage des vents dans des zones de quelques miles par quelques miles (identique Virtual Regatta)
-Choisir vue globale : affiche Position sur la carte + route orthodromique
-Choisir le Cap - En vue rapprochée une rose des vents - Indication du point d'arrivée 24H
-Waypoint - En vue rapprochée pose et dépose des way-point - Limiter le nombre ?
-Voiles : Spin, Foc, Grand Voile ?
2 - L'ordinateur :
-Gérer le déplacement du joueur
-Gérer la Météo Random (au plus près des conditions normales : Anticyclones, alizés, pot-au-noir, 30° rugissants ) La météo -change au moins à chaque tour de jeu. Peut être durant un tour de jeu, ajoutant un facteur chance : Un vent peut tourner et montrer contraire ... a voir
-Gérer les différents affichages : Vue globale - Vue rapprochée - tableau de bord
-Gérer des concurrents virtuels (?)
-Calculer les positions (distance au but, route orthodromique, chrono, etc.)
-Calculer des temps intermédiaires (Équateur - Bonne Espérance- Leeuwin - Horn - Equateur - Brest)
C) Fin
-Calcul du temps sur la ligne d'arrivé
D) Questions (encore) sans réponses :
Différents éléments perturbateurs ? Casse ? Tempêtes ? échouages ?
Inclure des temps de repos (simulé par limite du nombre de way-points) ?
EDIT :
Un qui simule le tour du monde.
Les idées ne sont pas encore claires ni formées, mais ça me botte assez de tenter l'aventure.
Quelle machine ? - pourquoi pas le MO5.
Langage : Le Basic me semble ad-hoc vu les calculs à faire et peut-être du Langage Machine pour
la partie graphique.
=====================================
LE PROJET JULES VERNE
But du jeu :
Partant de Bretagne aux commandes d'un voilier de course, revivre la Jule Verne en passant les caps mythiques de Bonne Espérance, Leeuwin et Horn.
A) Réglage/Choix du bateau :
-Établir différents niveaux ?
-Polaires : Différentes polaires ? (Vitesse du bateau en fonction de l'angle et force du vent)
-Voiles : Différentes voiles ?
B) Tour de jeu : Représente 1 ou 2 jours de mer Soit 25 tours de jeu +- Tour estimé en 50 jours de mer soit 25 tours de jeu.....
1 - Le joueur :
-Choisir vue rapprochée : Affichage des vents dans des zones de quelques miles par quelques miles (identique Virtual Regatta)
-Choisir vue globale : affiche Position sur la carte + route orthodromique
-Choisir le Cap - En vue rapprochée une rose des vents - Indication du point d'arrivée 24H
-Waypoint - En vue rapprochée pose et dépose des way-point - Limiter le nombre ?
-Voiles : Spin, Foc, Grand Voile ?
2 - L'ordinateur :
-Gérer le déplacement du joueur
-Gérer la Météo Random (au plus près des conditions normales : Anticyclones, alizés, pot-au-noir, 30° rugissants ) La météo -change au moins à chaque tour de jeu. Peut être durant un tour de jeu, ajoutant un facteur chance : Un vent peut tourner et montrer contraire ... a voir
-Gérer les différents affichages : Vue globale - Vue rapprochée - tableau de bord
-Gérer des concurrents virtuels (?)
-Calculer les positions (distance au but, route orthodromique, chrono, etc.)
-Calculer des temps intermédiaires (Équateur - Bonne Espérance- Leeuwin - Horn - Equateur - Brest)
C) Fin
-Calcul du temps sur la ligne d'arrivé
D) Questions (encore) sans réponses :
Différents éléments perturbateurs ? Casse ? Tempêtes ? échouages ?
Inclure des temps de repos (simulé par limite du nombre de way-points) ?
EDIT :
Re: Projet Trophée Jules Verne
En attendant ces nouveaux projets, j'ai créé la page http://dcmoto.free.fr/programmes/paintx/index.html
Si vous avez des remarques ou suggestions pour la présentation, j'en tiendrai compte...
Si vous avez des remarques ou suggestions pour la présentation, j'en tiendrai compte...
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
Re: Projet Trophée Jules Verne
Merci Daniel.
- Carl
- Modérateur
- Messages : 13290
- Inscription : 08 avr. 2007 13:21
- Localisation : http://www.doledujura.fr
- Contact :
Re: Projet Trophée Jules Verne
Dominique, un jeu dans le style Régates sur TO7 MO5
Re: Projet Trophée Jules Verne
Bonjour,
Et encore un projet qui démarre .
Je rajouterais l'éventualité (faible) d'une collision avec un objet flottant (conteneur, baleine, tronc d'arbre), histoire d'augmenter encore un peu le réalisme .
Et encore un projet qui démarre .
Je rajouterais l'éventualité (faible) d'une collision avec un objet flottant (conteneur, baleine, tronc d'arbre), histoire d'augmenter encore un peu le réalisme .
Re: Projet Trophée Jules Verne
Pour l'instant j'en suis encore à l'élaboration du projet.
1 - Le moteur du programme c'est bien entendu la gestion de la navigation.
- A chaque tour de jeu - que je pense limiter à 25 pour que le jeu ne soit pas trop long- on doit contrôler le déplacement.
Notre bateau aura ce que l'on appelle une Polaire c'est à dire un vecteur vitesse fonction de l'angle, de la force du vent et bien entendu de la voile. Ce site donne un bon nombre de polaires.
http://www.virtual-loup-de-mer.org/Polaires/
- Il faudra mettre un tableau en mémoire pour le foc, un tableau pour le Spi. Les angles avec le cap du bateau variant de 0 à 180°et la force du vent de 0 à 40 nœuds, un tableau de 15 en 15 ° x 0 à 40 N ça fait 14*40 = 560 valeurs par voile. C'est beaucoup. On peut penser à 0 à 40 par sauts de 2 N. Peut être 4. On calculera les valeurs intermédiaires par moyennes
Une fois la vitesse obtenue, il faudra la décomposer en deux vitesse suivant le cap. Une horizontale parallèle aux latitudes, et une verticale dans le sens des longitudes. Tout ça c'est le fameux parallélogramme des forces.
- Si on suppose la terre une sphère parfaite la progression verticale c'est le grand diamètre de la terre, pas de soucis.
La progression horizontale est une autre paire de manches. on doit tenir compte de la latitude. Rien de bien compliqué; la trigonométrie est là pour nous aider.
2 - Pour rendre le jeu intéressant il faut penser à pouvoir enregistrer les valeurs intermédiaires à chaque fin de tour
de façon à les enregistrer sur K7. On pourra ainsi essayer de battre ses records.
voila, voila.
1 - Le moteur du programme c'est bien entendu la gestion de la navigation.
- A chaque tour de jeu - que je pense limiter à 25 pour que le jeu ne soit pas trop long- on doit contrôler le déplacement.
Notre bateau aura ce que l'on appelle une Polaire c'est à dire un vecteur vitesse fonction de l'angle, de la force du vent et bien entendu de la voile. Ce site donne un bon nombre de polaires.
http://www.virtual-loup-de-mer.org/Polaires/
- Il faudra mettre un tableau en mémoire pour le foc, un tableau pour le Spi. Les angles avec le cap du bateau variant de 0 à 180°et la force du vent de 0 à 40 nœuds, un tableau de 15 en 15 ° x 0 à 40 N ça fait 14*40 = 560 valeurs par voile. C'est beaucoup. On peut penser à 0 à 40 par sauts de 2 N. Peut être 4. On calculera les valeurs intermédiaires par moyennes
Une fois la vitesse obtenue, il faudra la décomposer en deux vitesse suivant le cap. Une horizontale parallèle aux latitudes, et une verticale dans le sens des longitudes. Tout ça c'est le fameux parallélogramme des forces.
- Si on suppose la terre une sphère parfaite la progression verticale c'est le grand diamètre de la terre, pas de soucis.
La progression horizontale est une autre paire de manches. on doit tenir compte de la latitude. Rien de bien compliqué; la trigonométrie est là pour nous aider.
2 - Pour rendre le jeu intéressant il faut penser à pouvoir enregistrer les valeurs intermédiaires à chaque fin de tour
de façon à les enregistrer sur K7. On pourra ainsi essayer de battre ses records.
voila, voila.
Re: Projet Trophée Jules Verne
Très intéressant tous ca
Pour les calculs tu peux faire appel a des routines ASM, a moins que cela ne soit pas nécessaire !
Au fait, tu penses le faire sur quelles plateforme ?
Pour les calculs tu peux faire appel a des routines ASM, a moins que cela ne soit pas nécessaire !
Au fait, tu penses le faire sur quelles plateforme ?
Re: Projet Trophée Jules Verne
Je vais essayer de le faire en basic sur le MO5.
Enfin c'est du 'sans filets' mais il me semble que son basic est semblable aux autres, et j'aime bien ses fonctions LINE, PAINT etc.. qui doivent nous aider dans la partie graphique.
J'y vais tout doucement en essayant de réfléchir sur tout avant de coucher sur le papier.
Enfin c'est du 'sans filets' mais il me semble que son basic est semblable aux autres, et j'aime bien ses fonctions LINE, PAINT etc.. qui doivent nous aider dans la partie graphique.
J'y vais tout doucement en essayant de réfléchir sur tout avant de coucher sur le papier.
Re: Projet Trophée Jules Verne
Sur MO5 tu devrais pouvoir utiliser le lecteur de Disquette c'est très pratique, ou bien le TO8D et son lecteur de disquette intégré
- Carl
- Modérateur
- Messages : 13290
- Inscription : 08 avr. 2007 13:21
- Localisation : http://www.doledujura.fr
- Contact :
Re: Projet Trophée Jules Verne
J'y avais pensais aussi
Re: Projet Trophée Jules Verne
Le projet MO5SD est maintenant périmé, il vaut mieux utiliser SDMO. Hier j'en ai fait une nouvelle version avec des CMS : elle est beaucoup plus petite et très pratique. Elle est émulée (ainsi que l'interface SDMOTO sur connecteur joystick) par la prochaine version de dcmoto.Carl a écrit :le mo5SD
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
Re: Projet Trophée Jules Verne
Voici les premières lignes.
L'idée est de mettre les polaires en mémoire. Une pour le FOC, une pour le SPI.
L'angle au vent (TWA- True Wind Angle) de 0 à 180 ° est incrémenté de 15 en 15 et la vitesse du vent en Nœuds de 4 en 4.
Si nécessaire, on pourra plus tard affiner les polaires de 10 en 10 par exemple.
Après la lecture des polaires (sub 190) on calcule le TWA en fonction des caps du vent et du bateau (sub 180) et on applique les polaires (sub 170)
Après avoir transformé les degrés en grades (sub 200) on transforme la vitesse et cap en vitesses horizontales et verticales selon le parallélogramme des forces.
Cet après midi on fera le lien entre déplacement et variation des coordonnées. Ceux qui n'aiment pas les maths pourront zapper
mais certains vont revivre leurs cours de seconde.
REM Jules Verne - MO5 - Basic
L'idée est de mettre les polaires en mémoire. Une pour le FOC, une pour le SPI.
L'angle au vent (TWA- True Wind Angle) de 0 à 180 ° est incrémenté de 15 en 15 et la vitesse du vent en Nœuds de 4 en 4.
Si nécessaire, on pourra plus tard affiner les polaires de 10 en 10 par exemple.
Après la lecture des polaires (sub 190) on calcule le TWA en fonction des caps du vent et du bateau (sub 180) et on applique les polaires (sub 170)
Après avoir transformé les degrés en grades (sub 200) on transforme la vitesse et cap en vitesses horizontales et verticales selon le parallélogramme des forces.
Cet après midi on fera le lien entre déplacement et variation des coordonnées. Ceux qui n'aiment pas les maths pourront zapper
mais certains vont revivre leurs cours de seconde.
REM Jules Verne - MO5 - Basic
Code : Tout sélectionner
5 DEFSNG A-C:GOSUB190
10 INPUT"DIRECTION VENT";CAPV:INPUT"FORCE VENT";CFORCE:INPUT"CAP BATEAU";CAPB:INPUT"VOILE";VOILE
15 GOSUB 180 : GOSUB 170:
16 IF CAPB<91 THEN DEG=CAPB:VVERT=1:VHZT=1:GOTO25
17 IF CAPB<181 THEN DEG=180-CAPB:VVERT=-1:VHZT=1:GOTO25
18 IF CAPB<271 THEN DEG=CAPB-180:VVERT=-1:VHZT=-1:GOTO25
19 DEG=360-CAPB:VVERT=1:VHZT=-1
25 GOSUB200:GOSUB 300
40 END
170 REM CALCULE VITESSE SUIVANT TWA ET POLAIRE : VOILE 1=FOC:2=SPI
171 IF CFORCE=0 OR TWA=0 THEN VITESSE=0:RETURN
172 IF CFORCE>36 THEN CFORCE=36
173 IF TWA<15 THEN TWA=15
174 IF CFORCE<4 THEN CFORCE=4
175 IF VOILE=2 THEN GOTO 177
176 VITESSE=FOC(CINT(CFORCE/4),CINT(TWA/15)):RETURN
177 VITESSE=SPI(CINT(CFORCE/4),CINT(TWA/15)):RETURN
180 REM CALCULE ANGLE AU VENT TWA
185 TWA=ABS(180-ABS(CAPB-CAPV)):RETURN
190 REM MAJ POLAIRES
194 DIM FOC (9,12), SPI (9,12)
195 FOR J=1 TO 12 : FOR N=1TO9:READ FOC(N,J): NEXT N: NEXT J
196 FOR J=1 TO 12 : FOR N=1TO9:READ SPI(N,J): NEXT N: NEXT J : RETURN
200 REM TRANSF DEGRES EN RADIANS
210 RAD=DEG*0.0174:RETURN
300 REM TRANSF VITESSE ET CAP EN V HORIZ ET VERT
310 vVERT=VVERT*VITESSE*COS(RAD):VHZT=VHZT*VITESSE*SIN(RAD) :RETURN
700 REM POLAIRE FOC
710 DATA 0.83,1.46,1.67,1.77,1.86,1.9,1.94,1.97,1.97,2.9,5.1,5.86,6.21,6.5,6.66,6.8,6.9,6.9
720 DATA 5.1,8.41,9.45,10.13,10.6,10.88,11.1,11.29,11.4,6.3,9.03,10.54,11.43,12,12.56,13.21,13.69,14.11
730 DATA 6.9,9.93,11.43,12.66,13.79,14.74,15.82,16.86,17.7,7,10.72,12.15,13.9,15.69,17.2,18.52,18.99,20
740 DATA 6.5,10.55,12.54,15.01,17.09,18.23,19.22,19.97,20.6,5.65,9.88,11.7,14.34,16.45,17.28,18.43,18.64,20.36
750 DATA 4.94,8.64,10.23,12.54,14.4,15.12,16.13,16.3,17.81,3.95,6.91,8.17,10.03,11.5,12.09,12.89,13.03,14.24
760 DATA DATA 3.11,5.43,6.43,7.88,9.04,9.5,10.13,10.24,11.19,2.78,4.85,5.74,7.05,8.08,8.49,9.05,9.15,10
765 REM POLAIRE SPI
770 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
780 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
790 DATA 1.2,2.09,2.47,3.03,3.48,3.66,3.9,3.95,4.31,3.8,6.92,7.86,9.64,11.05,11.61,12.39,12.52,13.68
800 DATA 5.7,9.89,11.71,14.36,16.48,17.3,18.46,18.66,20.39,6,10.36,12.35,15.2,17.19,18.79,20.43,21.75,22.8
810 DATA 4.9,9.17,11.63,14.9,17.38,19.28,21.24,23.12,24.9,3.5,7.27,9.83,12.35,15.48,18.97,22.16,23.87,25.5
811 DATA 2.6,5.67,8.13,10.5,12.39,15.22,18.46,21.57,23.7,2.4,5.26,7.53,9.69,11.49,14.13,17.15,20.07,22
- Pièces jointes
-
- JulesVerne.rar
- (77 octets) Téléchargé 139 fois
Dernière modification par Dominique le 23 juin 2013 13:14, modifié 1 fois.
- Carl
- Modérateur
- Messages : 13290
- Inscription : 08 avr. 2007 13:21
- Localisation : http://www.doledujura.fr
- Contact :
Re: Projet Trophée Jules Verne
voici déjà une possible jaquette
carl
carl
Re: Projet Trophée Jules Verne
@Carl
Quelques définitions et/ou rappels :
- On admet la Terre une sphère parfaite de 40 000 Km de circonférence à l'équateur ou n'importe quel méridien.
- 1 mile Nautique (nM) est un arc de cercle de 1 minute de la grande circonférence soit :
40 000 / 360*60 = 1.852 Km = 1nM
- 360 ° = 2Pi radians
===========> 1° = 2 Pi/360 = 0.01745 radians
===========> 1 rad = 360/2pi = 57.29 °
- Soit 1 Point A sur le globe à la latitude C°. Pour faire le tour de la terre (360°) il devra parcourir le cercle de rayon r1.
r1= R*COS(C) -> C exprimé en radians Pour toutes choses proportionnelles, Cos(C) est donc la raison.
Cos(C) est la raison des circonférences -> Circonférence en A = circonférence à l'équateur*cos(C)
1 arc de 1 mn latitude C ---> 1.852 nM*cos(C)
1 nM lat C ---> 60 sec / COS(C)
Conclusion : Pour calculer les changements de longitude et Latitude nous utiliserons :
A) Pour la latitude : la loi qui veut que 1 nautic Mile -> 1 minute de la grande circonférence
B) Pour la Longitude : la loi qui veut de 1 nautic Mile lat C ---> 1 minute / COS(C) (obs: C en grades)
Sauf erreur crasse, je pense que c'est comme ça.
Quelques définitions et/ou rappels :
- On admet la Terre une sphère parfaite de 40 000 Km de circonférence à l'équateur ou n'importe quel méridien.
- 1 mile Nautique (nM) est un arc de cercle de 1 minute de la grande circonférence soit :
40 000 / 360*60 = 1.852 Km = 1nM
- 360 ° = 2Pi radians
===========> 1° = 2 Pi/360 = 0.01745 radians
===========> 1 rad = 360/2pi = 57.29 °
- Soit 1 Point A sur le globe à la latitude C°. Pour faire le tour de la terre (360°) il devra parcourir le cercle de rayon r1.
r1= R*COS(C) -> C exprimé en radians Pour toutes choses proportionnelles, Cos(C) est donc la raison.
Cos(C) est la raison des circonférences -> Circonférence en A = circonférence à l'équateur*cos(C)
1 arc de 1 mn latitude C ---> 1.852 nM*cos(C)
1 nM lat C ---> 60 sec / COS(C)
Conclusion : Pour calculer les changements de longitude et Latitude nous utiliserons :
A) Pour la latitude : la loi qui veut que 1 nautic Mile -> 1 minute de la grande circonférence
B) Pour la Longitude : la loi qui veut de 1 nautic Mile lat C ---> 1 minute / COS(C) (obs: C en grades)
Sauf erreur crasse, je pense que c'est comme ça.