Débuter avec les sources

Voir le sujet précédent Voir le sujet suivant Aller en bas

Débuter avec les sources

Message par Giuliani le Mer 25 Juin - 22:41

Où puis-je trouver les sources?
Vous devez posséder une licence RCS valable et vous inscrire au "source user group", ensuite vous pourrez les télécharger avec le lien de download habituel:
http://www.realmcrafter.com/~download

De quoi ai-je besoin pour modifier les sources?

BlitzPlus pour modifier le serveur $59
http://www.blitzbasic.com/Products/blitzplus.php

Blitz3D
pour modifier le client (le jeu) et la GUE (Grand Unified Editor) $59
http://www.blitzbasic.com/Products/blitz3d.php

Quand vous vous serez plus familiarisé avec le langage blitz,vous pouvez télécharger the Ideal IDE, qui est un éditeur avancé. Ce n'est pas indispensable mais pratique
http://www.fungamesfactory.com

N'importe qui peut modifier les sources?
Travailler avec les sources, c'est déroutant au début.
Il faut comprendre que travailler sur les sources signifie "modifier ce qui fait fonctionner mon projet", et non pas "modifier directement mon projet". La nuance est importante!
Les sources sont dans un dossier à part de votre projet, on modifie le code pour débugger une fonction ou modifier des paramètres, et ensuite on récupère un nouvel .exe (serveur, client ou GUE) qu'on viendra placer dans notre dossier projet.
Si vous avez de l'expérience en programmation ou en script alors vous devriez pouvoir vous en sortir.
ça ne signifie pas que ce sera facile, une telle quantité de code peut être écrasante même pour un programmeur expérimenté.
Il est important de prendre le temps d'apprendre les bases du code, et petit à petit, tout deviendra beaucoup plus claire.

Si vous n'avez aucune expérience en Blitz3D ou BlitzPlus, alors il serait utile d'apprendre à connaitre ces langages et de chercher un peu d'aide dans la section "help", où vous trouverez une multitude d'exemples et d'informations pour bien commencer.

Comment compiler les sources et utiliser les .exe?
1) Avant toute chose. Copiez les fichiers decls fournis avec les sources dans les dossiers userlibs de BlitzPlus et de Blitz3D. Ces fichiers déclarent les fonctions des librairies tierces que RC utilise.
A l'intérieur du dossier Decls, vous trouverez 3 dossiers: Blitz3D, BlitzPlus et Both:
_ Copiez le contenu des dossiers \Blitz3D et\Both dans Program Files\Blitz3D\userlibs\
_ Copiez le contenu des dossiers \BlitzPlus et\Both dans Program Files\BlitzPlus\userlibs\

2) Pour compiler un nouveau serveur, après y avoir apporté des modifications, ouvrez le fichier Server.bp avec BlitzPlus, cliquez sur Program -> Create Executable.
(Enregistrer le fichier sur votre bureau en le renommant NewServer.exe par exemple)
Mettez ce nouveau .exe dans votre projet et lancez-le à la place de server.exe. Vous venez de remplacer le serveur.
Pour compiler un nouveau client ou GUE, ouvrez les fichier Client.bb et/ou GUE.bb avec Blitz3D, cliquez sur Program -> Create Executable.
Et procédez comme ci-dessus.

SURTOUT, évitez de remplacer les .exe originaux!
Mettez toujours New....exe devant vos exécutables pour éviter les erreurs et conservez une copie du précédent dans un dossier BackUp.

Puis-je utiliser les modèles fournis avec RC, encryptés en .eb3d, lorsque je travaille avec les sources?
Si vous souhaitez continuer à utiliser le système de cryptage de RC (.eb3d) avec les modèles fournis, alors vous ne pourrez modifier que le serveur, mais pas le client, ni la GUE, le système de cryptage de RC n'est pas inclus dans les sources.
On peut faire pas mal de choses,rien qu'en modifiant le serveur, RC a été conçu comme un moteur "server side", ça signifie que le plus gros du jeu est géré par le serveur, le client se contentant d'afficher ce qui se passe du côté serveur.
Donc par exemple un système complet de guilde peut parfaitement est édité à partir des sources du serveur.

Si vous souhaitez modifier le client ou la GUE, alors il faudra utiliser votre propre système de cryptage ou un file packer. MoleBox est une solution assez pratique
http://www.molebox.com
En travaillant avec un file packer tel que MoleBox, vous créez un projet entierement non-crypté ensuite vous protégerez les ressources que vous souhaitez, en les cryptant avec ce denier afin de pouvoir distribuer le client.

Les outils comme Terrain Editor, ont une option qui leur permet d'exporter un terrain non crypté.

Je souhaite ajouter des ombres, de l'eau réaliste et des effets post processing effects, comment puis-je procéder?
La Solution la plus courante est l’ajout d'une librairie tierce appelée Fast Extension $30
http://fastlibs.com

L'intégration de cette librairie n'est pas conseillée aux débutants.
Il vaut mieux se familiariser avec le code, tout poser au propre, car l'ajout de cette librairie peut amener de nouveaux problèmes.
Ajouter des ombres dynamiques prend quelques heures, mais il faudra prendre en compte tous les MAV générés par cet ajout.
Il y a par exemple un problème de "double ombre" qui tue le Frame Rate lorsqu'il y a plus de 20 personnes connectées en même temps.
Commencez avec le code, et laissez cette librairie de côté pour le moment.

Par où dois-je commencer?
Il faut avant tout se constituer un plan de travail propre:

1. Créez un nouveau projet vierge
2. Lancez le Serveur et Client, à la page création de perso, supprimer les personnages par défaut de RC (ils sont cryptés en .eb3d donc inutilisables avec les sources). Quittez.
3. Charger un perso avec textures et animé dans la GUE (il doit avoir au minimum un bone Head).
4. Relancez le client, créez le perso par défaut avec lui, et testez-le sur la map par défaut. Quittez.
5. Lancez RCTE, créez une petite map, SAVE et EXPORT, cliquez sur NON quand il vous demande de crypter la map.
6. Dans la GUE, onglet Zones, posez un portal de départ, modifier l'actor pour qu'il commence à partir de ce portal. Supprimez l'ancien actor par défaut et l'ancienne map par défaut.
Vous pouvez commencer à apporter des modifications au code!

Commencez petit!
Créez-vous une petite zone avec tout ce dont vous avez besoin.
PNJ, factions, un Pet, des combats, du level up et quelques quêtes.
Ensuite commencez à modifier des petits bouts de code, compilez, placez le nouvel exécutable dans votre dossier de jeu et testez.
Ne cherchez pas implémenter de suite de nouvelles fonctionnalités ou à re designer le moteur...
Apprenez à connaitre le code parfaitement, apportez de toutes petites modifications, assurez que ce que vous changez ne fasse pas bugger autre chose.
avatar
Giuliani
Admin

Messages : 225
Points : 370
Date d'inscription : 25/06/2014
Age : 38
Localisation : Toulouse

http://realmcrafter.frbb.net

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum