Bah elles ne compilent même pas les sources.
Déjà il manque const.h et force.h.
Et puis c'est pénible de devoir installer la SDL et la libxml soit-même. Half, feignant, tu pouvais pas inclure les .h et les .lib à l'archive ?
Bah elles ne compilent même pas les sources.
Déjà il manque const.h et force.h.
Et puis c'est pénible de devoir installer la SDL et la libxml soit-même. Half, feignant, tu pouvais pas inclure les .h et les .lib à l'archive ?
Putain j'ai loupé la page 600.
Bon bien je les ai envoyés.
♪♫"Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time."♫♪
Dans la définition de Element.h, et plus précisément, la classe Missile, il faut supprimer "Missile::" devant addForce.
Ce code source est un scandale !
Je me permet d'adjoindre un petit CMakeLists.txt et son nécessaire FindSDL_gfx.cmake (le canard malin renommera correctement), histoire de simplifier le build.Code:/home/alexandre/tmp/CPCLeJeu/src/ccp/main.cpp:12:20: error: Avatar.h: Aucun fichier ou répertoire de ce type /home/alexandre/tmp/CPCLeJeu/src/ccp/main.cpp:14:20: error: Window.h: Aucun fichier ou répertoire de ce type
Google sera ton ami.
Pour TinyXML, solution rapide :
* Télécharger le tarball
* Extraire dans le répertoire des sources de CPCLeJeu (i.e. src/ et tinyxml/ sont au même niveau)
* Ajouter : "tinyxml/" à 'CPCIncludeDir'
Dernière modification par Lissyx ; 28/02/2009 à 19h31. Motif: Ajout CMake
Ben oui, c'est pour ça que d'habitude, un projet est auto-suffisant.
En tout cas sur Windows, je ne connais pas du tout le monde Unix.
Avec par exemple une arborescence du style:
CPClejeu
--- 3dParty
------ SDL
--------- include
--------- lib
------ tinyxml
--------- include
--------- lib
--- bin
------ debug
------ release
--- include
--- source
CPClejeu.sln // projet visual studio
CPClejeu.cbp // projet code::blocks
... // autre style d'IDE
Il suffit alors que de dezipper l'archive, ouvrir le projet dans son IDE favorite, cliquer sur build et ça compile.
Dernière modification par Arzar ; 28/02/2009 à 19h36.
La première vient de la citation, je ne sais pas si on a le droit de la corriger.Envoyé par half;1865587[I
Après, je suis pas codeur mais...pourquoi pas une oeuvre d'art totale ?
Je suis bien conscient que Flash est très limité niveau perf, mais franchement, pour un petit jeu de plateforme cela suffit amplement.
Flash pas fait pour coder des jeux ? Historiquement si, il sert à faire des animations interactive, et il a été amélioré par la suite pour faire des jeux plus poussés. C'est LE logiciel pour faire des jeux 2D simple pour le web.
Bien sûr il faut se limiter à des choses simples ne demandant pas trop de puissance de calcul, mais l'étendue des possibilités est déjà grande. Tu n'as qu'à regarder tous les jeux qui pullulent sur le web, dont les concepts des plus originaux n'ont rien à envier à leurs équivalents C++ ou Java.
La montée en puissance des ordinateurs et le nouveau langage AS3 (énormément plus rapide que l'ancien) contribuent encore à élargir ces possibilités.
Et juste comme ça Silverlight, pour l'instant, ça a l'air bien merdique, mais je ne m'étendrai pas sur la question.
Donc mise à part la partie réseau (ou si on veut faire un truc nécessitant des centaines d'objets à la fois), je trouve que Flash était un bon parti-pris pour ce genre de jeu à base de sprites animées de Half et de bananes.
Mais c'est vrai que maintenant que c'est commencé en C++, autant continuer.
@Half: Le fichier "blocks.xml", tu l'as généré automatiquement avec un éditeur, ou tu l'as fait à la main ?
Dernière modification par LPTheKiller ; 28/02/2009 à 21h49.
- ŁPŢЋэҚıΊΊεґ, pour vous occire - http://pierre.parreaux.free.fr/
Oui, tout ça c'est super intéressant, mais une question me taraude: pourquoi poster tout ça dans Jurigeek ? Notez que vous ne me dérangez pas hein, vous pouvez rester, pas de problème
Sinon, tant qu'on y est, moi j'adorerais un jeu indé avec analyseur syntaxique, à la grande époque des King Quest et autres Space Quest. La 3D isométrique ça doit pas être trop dur à programmer à notre époque, nan ? Et puis, faire, du reverse engineering sur les vieux titres de Sierra pour voir comment était fichu leur analyseur syntaxique, ça doit pas poser de gros problèmes j'imagine...Non parce que j'aurais bien un ou deux scénarios à proposer moi, soit de SF soit d'héroïc fantasy....
Je te rejoint pour tout ce que tu dis, Flash est très bien pour des petits jeux web (ou pas), et le "petit" n'est pas a prendre dans un sens péjoratif vu les merveilles d'inventivité que l'on trouve sur le net.
Je parle en connaissance de cause puisque je suis justement sur un nouveau projet en AS3 sous Gumbo. Maintenant, je remercie le ciel tous les jours que le projet en question peut se faire en ayant un nombre assez limité de calculs. Et je sais que si le projet s'étend et devient pérenne, cela signifie changement obligatoire de plateforme (va calculer un résultat utilisant la méthode des éléments finis en Flash, tiens).
Bref le jeu de Half, ou n'importe quel autre jeu potentiellement candidat a un hébergement ici, s'il veut posséder quelque chose de tant soit peu sophistiqué (moteur, IA, pathfinding ou autre), se doit d'utiliser des langages plus traditionnels, ou si on veut un aspect web, Silverlight.
J'ai réussi à faire une arbo semblable à ce que tu proposes sous VS 2005. Grosse galère mais bon je découvre aussi.
Pour ceux que ça intéresse c'est par là.
J'ai inclus les lib SDL et tinyxml, j'ai quelque warning à la compil mais ca fonctionne quand même.
En tout cas l'idée est sympa, j'attendais justement un truc du genre pour me mettre au c++.
Ouais, j'ai fait un touch moi ça marche
Je commet donc ce CMakeLists qui build chez moi
Code:alexandre@serveur:~/tmp/CPCLeJeu$ make Scanning dependencies of target CPCLeJeu [ 12%] Building CXX object CMakeFiles/CPCLeJeu.dir/tinyxml/tinyxml.cpp.o [ 25%] Building CXX object CMakeFiles/CPCLeJeu.dir/tinyxml/tinyxmlparser.cpp.o [ 37%] Building CXX object CMakeFiles/CPCLeJeu.dir/src/ccp/Element.cpp.o [ 50%] Building CXX object CMakeFiles/CPCLeJeu.dir/src/ccp/main.cpp.o [ 62%] Building CXX object CMakeFiles/CPCLeJeu.dir/src/ccp/Menu.cpp.o [ 75%] Building CXX object CMakeFiles/CPCLeJeu.dir/src/ccp/Timer.cpp.o [ 87%] Building CXX object CMakeFiles/CPCLeJeu.dir/tinyxml/tinyxmlerror.cpp.o [100%] Building CXX object CMakeFiles/CPCLeJeu.dir/tinyxml/tinystr.cpp.o Linking CXX executable CPCLeJeu [100%] Built target CPCLeJeu
Ah mais les vieux jeux Sierra sont reversés à tire l'arigot, très cher.
Deux moteurs, AGI, et SCI. Le premier, les specs sont maîtrisées, et les moteurs pleuvent. ScummVM supporte d'ailleurs tous les jeux AGI.
Quant aux seconds, c'est à voir suivant les versions, mais freesci est ton ami. Freesci qui est d'ailleurs en plein merging avec ScummVM, donc patience!
Pour ce qui est de fabriquer des jeux avec analyseur syntaxique, une très belle communauté se consacre à ça via des systèmes tels que Inform et TADS mais c'est du 100% textuel. Il y a des compétitions et même des n/g dédiés.
Inutile de dire que pas mal de trucs là dedans mettent sévèrement à l'amende ce que la presse jv considère comme "un scénario correct". Et qu'on trouve du polar à l'héroic fantasy en passant par le blaireau qui veut choper des oeufs.
En revanche, pas grand monde ne fabrique de Sierra-like amateur (vue graphique + parseur) car finalement, ce genre n'a pas été le plus satisfaisant dans un domaine comme dans l'autre. Pourquoi faire des graphismes médiocres quand on peut écrire plus de texte de meilleure qualité. Ou faire carrément un point'n'click.
Sleeping all day, sitting up all night
Poncing fags that's all right
We're on the dole and we're proud of it
We're ready for 5 More Years
A la main, et c'est très facile d'ajuster les collisions dans ce cas présent, ou d'en ajouter .
Je suis sur ce problème :D.
Concours idiot ?
En effet window.h et avatar.h on était rassemblés dans le même fichier car j'ai pas réussi à donner un ordre de compilation à mon soft (dev cpp sous windows) par contre sous linux on peut éclater les sources ouaip.
Merci beaucoup !!!
Et pour l'heure du message :
♪♫"Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time."♫♪
Ah très intéressant, je vais m'intéresser à ce que tu m'indiques. Après, d'un point de vue de joueur je ne partage pas ton analyse. D'une, les jeux Sierra en leur temps n'étaient pas pourvus de graphismes médiocres, loin de là, ils étaient bien pour leur époque. De deux, certaines situations ne sont pas jouables uniquement par du textuel. Quand j'étais ado, j'étais hyper fan des livres dont vous êtes le héros, ce qui ne m'a jamais empêché d'apprécier un Space Quest. Les références à Star Wars ou à Alien n'auraient jamais aussi bien marché en pur textuel, me semble-t-il. Et trois, c'était (dans mon souvenir en tous les cas) super fun de taper un ordre et de voir le perso bouger à l'écran, même si ce ne sont que quelques sprites. Ou encore, pour l'immersion, voir le chat du magicien par exemple se balader dans la tour était génial (king quest 3 je crois).
Mais là, je suis hors topic, alors pardon. Et encore merci pour ces infos ça me donnerait presque envie de me lancer dans un TADS juridico-science-fictionnel !
EDIT: je viens de jeter un oeil, les aventures ont l'air sympa. Je vois que les jeux TADS sont accessibles grâce à FROTZ sur l'iphone, donc vendables j'imagine sur l'appstore...
Dernière modification par Grand_Maître_B ; 01/03/2009 à 10h52.
Nan mais je suis méchant avec Sierra. J'ai passé de supers moments à transformer Manannan en chat ou à dépétrer Roger Wilco, nickel pour apprendre l'angliche
Seulement les parsers étaient quand même faiblards par rapport à ceux des jeux purement textuels... Et puis tomber des falaises en marchant ça va 2 minutes!
Si t'aimes ce moteur, il y'a des jeux amateurs AGI et un SDK, on m'a dit du bien de Enclosure par exemple.
Et si tu veux te lancer dans une aventure texte juridique (Bureaucracy 2?), je te conseille d'aller voir par là : http://ifiction.free.fr/
N'empêche tu m'as donné envie de rejouer à SQ3!
Sleeping all day, sitting up all night
Poncing fags that's all right
We're on the dole and we're proud of it
We're ready for 5 More Years
Pour ton histoire d'ordre, j'imagine que tu incluais Element.h dans Avatar.h et Missile.h d'où erreur de compilation du genre "Ah ouais mais le truc c'est que t'as déjà créé une classe Element" (ouais j'ai un compilateur très sympa)
Heureusement y a une astuce, mais elle se devine pas forcément d'où la difficulté d'apprendre le C++ sans modèle potable
Pour éviter ce genre de connerie, il faut définir une variable de preprocesseur et on teste si elle a déjà été définie et si c'est le cas on ne fait rien.
voir: Site du zéro(section #ifndef pour éviter les inclusions infinies)
Moi j'ai tendance à les appeler NOMDECLASSE_H ou NOMDECLASSE_HPP suivant la convention de nommage des include que j'ai choisi.
donc par exemple dans Element.h il faudrait avoir:
Et de même pour tout les autres include.//ELEMENT
#IFNDEF ELEMENT_H
#DEFINE ELEMENT_H
#INCLUDE vector (désolé je sais plus comment faire les inférieurs supérieur)
#INCLUDE "Force.h"
class Element
{
protected :
int x, y, width, height, velX, velY, speed;
bool auSol ;
bool surPlateforme ;
SDL_Surface* tronche ;
public:
Element(int x ,int y,int w ,int h, SDL_Surface* tronche);
void handle_input(Uint8* keystates) ;
int getX();
int getY();
int getWidth();
int getHeight();
int getVelX();
int getVelY();
int getSpeed();
bool getAuSol();
bool getSurPlateforme();
void setSpeed(int Speed) ;
void move() ;
void setTronche(SDL_Surface* tronche) ;
bool checkCollision(Element &A) ;
SDL_Surface* getTronche() ;
void addForce(Force force) ;
};
#ENDIF
Putain j'ai loupé la page 600.
Très bonne initiative.
Pour aller jusqu'au bout de l'idée, je trouve que ca pourrait être une super idée de proposer pour chaque personne qui développe un petit jeu, une sorte de blog hébergé sur canardpc.com, ou une page dédiée. Mais uniquement pour les jeux, pas un blog pour chaque personne de canardpc, ca deviendrait un peu naze.
Ca serait bien un truc un peu formalisé avec systématiquement le scénario, gameplay, type, personnes impliquées dans le projet, état d'avancement, personnes qui manquent pour venir à bout du projet (style un graphiste, un programmeur c++, ...)
Et il pourrait du coup y avoir une page récapitulatif qui résume tous les projets en cours de la communauté.
Euh juste une remarque: tant qu'à faire du développement en coopération, autant ouvrir un serveur SVN non?
Ca serait quand même plus simple pour corriger les bugs que par le forum, m'enfin je dis ça je dis rien hein