Recherche programmeur PC et autres talents!
- damien d.
- Dept: 000
- Rech/Achete: 0 flip
- Messages : 4328
- Enregistré le : 01/10/2002
- Pas vu depuis 2 an(s)
- Niveau : Débutant
- Pro / revendeur : non
- Localisation : 4NG1C0URt
- Contact :
Ben, si ca marche, pourquoi pas? Wine est fait pour ca.
Et je confirme les propos de Michel, la pluspart des trucs marchent mieux sous Wine que sous Windows (FP inclu).
Et je confirme les propos de Michel, la pluspart des trucs marchent mieux sous Wine que sous Windows (FP inclu).
Damien D. - centinex.wizard@gmail.com
Band Wagon^Jungle^Jubilee^OXO^Little Chief^Space Mission^Royal Flush^Silverball Mania^Embryon^Speakeasy 4^Black Hole^Black Hole^Blackbelt^Genesis^Cyclone^Black Knight 2000^Star Trek^Star Wars^Twilight Zone
Band Wagon^Jungle^Jubilee^OXO^Little Chief^Space Mission^Royal Flush^Silverball Mania^Embryon^Speakeasy 4^Black Hole^Black Hole^Blackbelt^Genesis^Cyclone^Black Knight 2000^Star Trek^Star Wars^Twilight Zone
- damien d.
- Dept: 000
- Rech/Achete: 0 flip
- Messages : 4328
- Enregistré le : 01/10/2002
- Pas vu depuis 2 an(s)
- Niveau : Débutant
- Pro / revendeur : non
- Localisation : 4NG1C0URt
- Contact :
Heu, on peut pas faire plus simple, pour commencer? =)
Damien D. - centinex.wizard@gmail.com
Band Wagon^Jungle^Jubilee^OXO^Little Chief^Space Mission^Royal Flush^Silverball Mania^Embryon^Speakeasy 4^Black Hole^Black Hole^Blackbelt^Genesis^Cyclone^Black Knight 2000^Star Trek^Star Wars^Twilight Zone
Band Wagon^Jungle^Jubilee^OXO^Little Chief^Space Mission^Royal Flush^Silverball Mania^Embryon^Speakeasy 4^Black Hole^Black Hole^Blackbelt^Genesis^Cyclone^Black Knight 2000^Star Trek^Star Wars^Twilight Zone
- Papo06
- Dept: 06
- Collec Perso: 1 flip
- Rech/Achete: 0 flip
- Messages : 4904
- Enregistré le : 30/03/2005
- Pas vu depuis 6 mois
- Niveau : Confirmé
- Pro / revendeur : non
- Localisation : Mougins
Bon ce soir je me suis couché tard, j'ai fait un mini ide, ça compile du code qu'on a tapé dans la fenetre, ça joue de la musique, ça scrolle du texte, ça joue des videos (même les divx), merci DirectX qui fait tout ça en 3 lignes de code.
Exemple bidon de script (en C# mais ça marche aussi en VB (la syntaxe de vp/fp) mon bidule compile les 2 indifférament mais moi j'aime pas le vb alors je montre un petit bout en c#)
pinmm c'est mon "objet" flip qui gère l'affichage, le son, la vidéo, le clavier, il suffit de lui coller des méthodes poru les lampes/bobines et un évènement pour les switch et on a tout ce qu'il faut. Dans l'exemple ci dessous ça charge un mp3 et un avi à l'init et ça associe un gestionnaire d'évènement sur l'appui des touches. si on appuie sur une touche, ça joue le son, la video, et ça affiche un texte à la con qui scrolle tout seul
// Méthode appelée à l'initialisation du flip
public void InitPinball()
{
// précharge les son, anims, etc
pinmm.LoadAudio("machin.mp3", "son1");
pinmm.LoadVideo("bidule.avi", "vid1");
// gestionnaire de clavier (il en faudra un autre pour les switch)
pinmm.KeyDown += new KeyEventHandler(KeyPressed);
Application.Run(pinmm);
}
// code du gestionnaire de clavier
private void KeyPressed(object sender, KeyEventArgs ke)
{
// ici le code est naze, ça démarre la video, ça joue un mp3 et ça lance un scrolling à l'écran quand on appuie sur n'importe quelle touche
pinmm.PlayVideo("vid1");
pinmm.PlayAudio("son1");
pinmm.setScrollText("Hello World !", 200);
}
Pascal
Exemple bidon de script (en C# mais ça marche aussi en VB (la syntaxe de vp/fp) mon bidule compile les 2 indifférament mais moi j'aime pas le vb alors je montre un petit bout en c#)
pinmm c'est mon "objet" flip qui gère l'affichage, le son, la vidéo, le clavier, il suffit de lui coller des méthodes poru les lampes/bobines et un évènement pour les switch et on a tout ce qu'il faut. Dans l'exemple ci dessous ça charge un mp3 et un avi à l'init et ça associe un gestionnaire d'évènement sur l'appui des touches. si on appuie sur une touche, ça joue le son, la video, et ça affiche un texte à la con qui scrolle tout seul
// Méthode appelée à l'initialisation du flip
public void InitPinball()
{
// précharge les son, anims, etc
pinmm.LoadAudio("machin.mp3", "son1");
pinmm.LoadVideo("bidule.avi", "vid1");
// gestionnaire de clavier (il en faudra un autre pour les switch)
pinmm.KeyDown += new KeyEventHandler(KeyPressed);
Application.Run(pinmm);
}
// code du gestionnaire de clavier
private void KeyPressed(object sender, KeyEventArgs ke)
{
// ici le code est naze, ça démarre la video, ça joue un mp3 et ça lance un scrolling à l'écran quand on appuie sur n'importe quelle touche
pinmm.PlayVideo("vid1");
pinmm.PlayAudio("son1");
pinmm.setScrollText("Hello World !", 200);
}
Pascal
- Papo06
- Dept: 06
- Collec Perso: 1 flip
- Rech/Achete: 0 flip
- Messages : 4904
- Enregistré le : 30/03/2005
- Pas vu depuis 6 mois
- Niveau : Confirmé
- Pro / revendeur : non
- Localisation : Mougins
Hello,
Voilà je vous livre mon petit bidule qui mine de rien en fait déjà pas mal
www.pensa.fr/Pin2Ide.zip
Donc vous lancez Pin2Ide, c'est un micro éditeur de code, j'y ai inclus un exemple de code (en C# désolé j'aime pas le VB mais ça peut fonctionner aussi en VB), vous compilez, vous executez.
Si par hassard ça marche pas, j'ai inclu une version déjà compilée du script "Pinball.exe" que vous pouvez lancer directement.
Une fois compilé ça régénère Pinball.exe
Le script est vraiment basique:
Charge quelques sons et video (vous pouvez mettre les votres, ça marche avec n'importe quoi même les divx et les mp3)
Pour mettre des credits 5, pour lancer une partie 1
Au lancement de la partie ça joue une intro, puis on peut appuyer sur Shift pour augmenter le score, avec un petit son.
Voilà, c'est tout con mais pourtant il suffit juste que j'ajoute la dll de romain dans la classe pour qu'on puisse commander les lampes et les bobines.
De même on peut faire n'importe quel type d'affichage, là j'ai fait simple, une ligne de texte et une zone video mais on fait ce qu'on veut même de la 3D pour ceux qui maitrisent DirectX
Pascal
Voilà je vous livre mon petit bidule qui mine de rien en fait déjà pas mal
www.pensa.fr/Pin2Ide.zip
Donc vous lancez Pin2Ide, c'est un micro éditeur de code, j'y ai inclus un exemple de code (en C# désolé j'aime pas le VB mais ça peut fonctionner aussi en VB), vous compilez, vous executez.
Si par hassard ça marche pas, j'ai inclu une version déjà compilée du script "Pinball.exe" que vous pouvez lancer directement.
Une fois compilé ça régénère Pinball.exe
Le script est vraiment basique:
Charge quelques sons et video (vous pouvez mettre les votres, ça marche avec n'importe quoi même les divx et les mp3)
Pour mettre des credits 5, pour lancer une partie 1
Au lancement de la partie ça joue une intro, puis on peut appuyer sur Shift pour augmenter le score, avec un petit son.
Voilà, c'est tout con mais pourtant il suffit juste que j'ajoute la dll de romain dans la classe pour qu'on puisse commander les lampes et les bobines.
De même on peut faire n'importe quel type d'affichage, là j'ai fait simple, une ligne de texte et une zone video mais on fait ce qu'on veut même de la 3D pour ceux qui maitrisent DirectX
Pascal
- romain
- Collec Perso: 11 flips
- Rech/Achete: 0 flip
- Messages : 2048
- Enregistré le : 01/10/2002
- Pas vu depuis 2 mois
- Niveau : Expert
- Pro / revendeur : non
"Pinball.exe a rencontré un problème et dois être fermé. Nous vous prions de nous excuser pour le désagrément encouru".
J'ai cette erreur que je lance Pinball.exe ou que je fasse "compile+execute" dans Pin2Ide...
C'est super Pascal ce que tu fais et je te remercie pour le mal que tu te donnes sur cette partie
Il va falloir qu'on se mette d'accord sur les procédures dont le programme pourrait avoir besoin et le fonctionnement des contacts (scrutation, génération d'une IT...).
@+ et bonnes fêtes
J'ai cette erreur que je lance Pinball.exe ou que je fasse "compile+execute" dans Pin2Ide...
C'est super Pascal ce que tu fais et je te remercie pour le mal que tu te donnes sur cette partie
Il va falloir qu'on se mette d'accord sur les procédures dont le programme pourrait avoir besoin et le fonctionnement des contacts (scrutation, génération d'une IT...).
@+ et bonnes fêtes
Addams - T2 - Fathom - Special Force - Robocop - OxO - EATPM - Silverball Mania - TZ - BK2K - Totem
ex : RFM - Judge Dredd - RoadShow - NBA - ToM - WoZ
ex : RFM - Judge Dredd - RoadShow - NBA - ToM - WoZ
- Papo06
- Dept: 06
- Collec Perso: 1 flip
- Rech/Achete: 0 flip
- Messages : 4904
- Enregistré le : 30/03/2005
- Pas vu depuis 6 mois
- Niveau : Confirmé
- Pro / revendeur : non
- Localisation : Mougins
A tous les coups c'est un pb avec la video ou l'audio, vérifie que tu as bien les fichiers video/audio qui existent, j'ai mis des trucs bidons normalement présent dans n'importe quel xp mais on sait jamais
Essaye de virer les load/playvideo et loadaudio/play, j'ai pas mis les lib directx avec c'est peut etre ça.
j'ai mis un nouveau zip avec les dll directx au cas ou tu peux retélécharger le zip sur mon site et retester.
Si ça déconne encore regarde le détail du plantage, il doit y avoir des infos sur l'endroit qui a merdé.
Bien sur tout ceci est du vite fait mal fait et surtout il n'y a pas d'install alors si tu as pas les bonnes lib ça déconne, c'est simplement pour montrer ce qu'on peut faire en quelques heures (j'ai fait ça hier soir) pour pas cher.
si ça vous plait je pourrais passer un peu plus de temps pour faire un ide moins pourri et ajouter de quoi simuler un flip à savoir une matrice de contacts à cliquer à la souris, une matrice de lampes et des sorties bobines. Le jour où tu as fini ta dll je l'intègre.
Il suffit maintenant d'améliorer les fonctions petit à petit et surtout ajouter et améliorer la classe qui enrobe le script pour que ça ait un air de famille avec les méthodes de FP dont je n'ai jamais regardé un script, faudrait que je commence par là en fait :)
Pascal
Essaye de virer les load/playvideo et loadaudio/play, j'ai pas mis les lib directx avec c'est peut etre ça.
j'ai mis un nouveau zip avec les dll directx au cas ou tu peux retélécharger le zip sur mon site et retester.
Si ça déconne encore regarde le détail du plantage, il doit y avoir des infos sur l'endroit qui a merdé.
Bien sur tout ceci est du vite fait mal fait et surtout il n'y a pas d'install alors si tu as pas les bonnes lib ça déconne, c'est simplement pour montrer ce qu'on peut faire en quelques heures (j'ai fait ça hier soir) pour pas cher.
si ça vous plait je pourrais passer un peu plus de temps pour faire un ide moins pourri et ajouter de quoi simuler un flip à savoir une matrice de contacts à cliquer à la souris, une matrice de lampes et des sorties bobines. Le jour où tu as fini ta dll je l'intègre.
Il suffit maintenant d'améliorer les fonctions petit à petit et surtout ajouter et améliorer la classe qui enrobe le script pour que ça ait un air de famille avec les méthodes de FP dont je n'ai jamais regardé un script, faudrait que je commence par là en fait :)
Pascal
- romain
- Collec Perso: 11 flips
- Rech/Achete: 0 flip
- Messages : 2048
- Enregistré le : 01/10/2002
- Pas vu depuis 2 mois
- Niveau : Expert
- Pro / revendeur : non
Salut,
le problème venait bien de là; ça tourne nickel
L'important c'est de permettre à n'importe qui d'arriver à coder un truc à peu près simple pour se faire un programme pour son plateau.
Pour le reste, c'ets certain que le C/C++ est plus efficace, mais bien moins idéal pour l'application.
Ce que j'en conclut :
-pour ma part : faire des librairies (.a ou .dll) en C++, compilées, optimisées afin de perdre le moins de temps au niveau de l'interface.
-pour le haut niveau : un langage de programmation simple, à l'image de ce qui était fait pour VP.
Comment se passerait la compilation (pour C# par exemple) ? elle serait aussi simple que l'exemple de Pin2Ide ??
Si c'est le cas et si on a quelque chose de comparable à la programmation déjà effectuée pour VP, les créateurs de ce smêmes tables pourraient adapter leur script et faire gagner un temps monstrueux à ceux réalisant matériellement les tables.
Confirmes-tu ma vision des choses ?
le problème venait bien de là; ça tourne nickel
L'important c'est de permettre à n'importe qui d'arriver à coder un truc à peu près simple pour se faire un programme pour son plateau.
Pour le reste, c'ets certain que le C/C++ est plus efficace, mais bien moins idéal pour l'application.
Ce que j'en conclut :
-pour ma part : faire des librairies (.a ou .dll) en C++, compilées, optimisées afin de perdre le moins de temps au niveau de l'interface.
-pour le haut niveau : un langage de programmation simple, à l'image de ce qui était fait pour VP.
Comment se passerait la compilation (pour C# par exemple) ? elle serait aussi simple que l'exemple de Pin2Ide ??
Si c'est le cas et si on a quelque chose de comparable à la programmation déjà effectuée pour VP, les créateurs de ce smêmes tables pourraient adapter leur script et faire gagner un temps monstrueux à ceux réalisant matériellement les tables.
Confirmes-tu ma vision des choses ?
Addams - T2 - Fathom - Special Force - Robocop - OxO - EATPM - Silverball Mania - TZ - BK2K - Totem
ex : RFM - Judge Dredd - RoadShow - NBA - ToM - WoZ
ex : RFM - Judge Dredd - RoadShow - NBA - ToM - WoZ
- Papo06
- Dept: 06
- Collec Perso: 1 flip
- Rech/Achete: 0 flip
- Messages : 4904
- Enregistré le : 30/03/2005
- Pas vu depuis 6 mois
- Niveau : Confirmé
- Pro / revendeur : non
- Localisation : Mougins
Oui, j'ai montré un exemple en C# parce que j'ai l'habitude, mais le script pourra fonctionner aussi bien en VB, quand j'aurais un truc à peu près potable je vous donnerais un script en VB vous verrez que ça ressemblera vachement à un script FP !
D'ailleur j'ai déjà commencé à regarder un peu la doc et quelques script et je vais implémenter de façon similaire avec les mêmes noms de méthodes et une gestion identique de la nvRam (même noms de paramètres, etc) et pareil pour les solenoides (SolenoidPulse) les lampes (avec Set, State, etc) et les mêmes noms d'évènements comme par exemple FuturePinball_KeyPressed(code) et ce genre de truc.
Bref il faudra à peine retoucher les scripts FP pour les faire fonctionner en vrai.
LA grosse différence entre FP et un vrai flip, c'est que FP crée les objets Lamp, solnoid, Bumper, alors que nous il faudra forcément une section pour dire que Toto c'est une lampe numéro 6 et Tutu la solenoide 22.
typiquement il faudra ajouter une étape d'initialisation qui n'existe pas dans FP puisque c'est automatique, ça ressemblemra a un truc du style:
Dim LampeExtraBall As New Lamp(6)
Dim EjecteurGauche As New Solenoid(22)
On peut même imaginer gérer des objets complexes pour simplifier et coller encore plus près du modèle FP, exemple:
Dim BumperHaut As New Bumper(12,22,6)
Voudrait dire qu'on associe le switch 12, la bobine 22 et la lampe 6 ensembles pour créer un bumper réel et cette classe Bumper pourra gérer automatiquement certaines choses exactement comme le fait FP
Pour les afficheurs et la video, là ça sera un peu plus compliqué car il y a 36 façons de faire, soit on réécrit tout et/ou on fait notre propres système, soit on fournit des plugins (rien de compliqué n'importe qui peut se faire une DLL d'affichage) et chacun se crée l'afficheur qu'il vaut dans le code, soit on réussi à récupérer du code de gestion du dmd et des afficheurs alpha numériques qui sont assez bien faits sur FP (mais 3D obligatoire). Mais bon ça c'est un détail, déjà je peux implémenter les mêmes méthodes que les afficheurs alpha numériques, même avec un rendu simpliste mais compatible.
Pascal
D'ailleur j'ai déjà commencé à regarder un peu la doc et quelques script et je vais implémenter de façon similaire avec les mêmes noms de méthodes et une gestion identique de la nvRam (même noms de paramètres, etc) et pareil pour les solenoides (SolenoidPulse) les lampes (avec Set, State, etc) et les mêmes noms d'évènements comme par exemple FuturePinball_KeyPressed(code) et ce genre de truc.
Bref il faudra à peine retoucher les scripts FP pour les faire fonctionner en vrai.
LA grosse différence entre FP et un vrai flip, c'est que FP crée les objets Lamp, solnoid, Bumper, alors que nous il faudra forcément une section pour dire que Toto c'est une lampe numéro 6 et Tutu la solenoide 22.
typiquement il faudra ajouter une étape d'initialisation qui n'existe pas dans FP puisque c'est automatique, ça ressemblemra a un truc du style:
Dim LampeExtraBall As New Lamp(6)
Dim EjecteurGauche As New Solenoid(22)
On peut même imaginer gérer des objets complexes pour simplifier et coller encore plus près du modèle FP, exemple:
Dim BumperHaut As New Bumper(12,22,6)
Voudrait dire qu'on associe le switch 12, la bobine 22 et la lampe 6 ensembles pour créer un bumper réel et cette classe Bumper pourra gérer automatiquement certaines choses exactement comme le fait FP
Pour les afficheurs et la video, là ça sera un peu plus compliqué car il y a 36 façons de faire, soit on réécrit tout et/ou on fait notre propres système, soit on fournit des plugins (rien de compliqué n'importe qui peut se faire une DLL d'affichage) et chacun se crée l'afficheur qu'il vaut dans le code, soit on réussi à récupérer du code de gestion du dmd et des afficheurs alpha numériques qui sont assez bien faits sur FP (mais 3D obligatoire). Mais bon ça c'est un détail, déjà je peux implémenter les mêmes méthodes que les afficheurs alpha numériques, même avec un rendu simpliste mais compatible.
Pascal