[Beta Test] BD Bioware

Répondre
Partager Rechercher
On continu l'exploration
Déjà une mauvaise nouvelle concernant le StoreObject, visiblement seul les items et créatures peuvent êter sauvegardés avec cette fonction, on oubliera donc les saves de plaçables (coffres entre autre) ce qui peut être un peu chiant. De plus je rappel que les variables locales stockées sur cet objet ne sont pas non plus sauvegardés.

Jaha Effect
Ch'pense qu'il y a moyen de créer très facilement une fonction qui permet de stocker un StrRef avec location et une bVar Lock/UnLock.
Mais c'est vrai que ça aurait été beaucoup plus simple si les plaçables faisaient parti du lot

J'y pense, si on stock sur la BD un item du genre "coffre", son contenu est stocké aussi?
Ben non, Archamedes, ça peut pas être pour ça parce que les créatures aussi peuvent avoir un inventaire....qui est bien copié par cette fonction (en fait j'en sais rien, mais je crois, voir la suite )
D'ailleurs, visiblement, cette fonction fonctionne sur la même base que CopyObject(), mêmes limitations et probablement mêmes possibilités.
En fait, heuu... comment expliquer ça?...

Et bien les créatures et les items sont les seuls OBJECT exportables. Ils peuvent fonctionner sans scripts.

Une base de donnée fonctionne sur n'importe quel module, j'ai pô raison? Il faut donc que les objets importés puissent fonctionner sur plusieurs modules d'origine différente.

Par conséquent, seuls les créatures et les items en sont capables

Enfin c'est la réponse que je me suis trouvé
PHP dbf Viewer
Là je vais juste vous transmettre le post d'un des joyeux malades qui participent à la beta de la BD de bioware, cavebear2003 pour ne pas le nommer, je crois que ça va en intéresser plus d'un

Code PHP:

 <?php
if (!$db dbase_open("./TEST.DBF"0))
     die(
"Could not open .DBF file");
echo 
"<table cellpadding=\"5\" cellspacing=\"1\" border=\"1\">\n<tr>\n";
$numrecord 1;
while (
$numrecord <= dbase_numrecords($db))
{
    
$record dbase_get_record_with_names($db$numrecord);
    if (
$numrecord == 1)
    {
        foreach(
$record as $name => $field)
        {
            echo 
"<th>$name</th>";
        }
        
reset($record);
        echo 
"\n</tr>\n";
    }
    echo 
"<tr>\n";
    foreach(
$record as $field)
    {
        echo 
"<td>$field</td>";
    }
    echo 
"\n</tr>\n";
    
$numrecord ++;
}
echo 
"</table>";
?>
Citation :
This works on the Bioware .dbf files (just tested it). Displays one database file in tabular format. The PHP dBase functions include basic reading/writing. You're on your own getting PHP installed with dBase support
En gros ça peut servir a plein de choses, acheter une maison (dans NWN) depuis un site web, et pleins d'autres trucs

Jaha Effect
Citation :
acheter une maison (dans NWN) depuis un site web
Ah non, on va pas remettre ça, j'ai déjà été suffisamment traumatisé par Urath ou je sais plus trop comment ça s'appelle

PS: je sais bien que ce n'est pas ce que tu voulais dire...
Voilà, il nous serait bien utile d'avoir au moins la copie d'une database comportant une variable de chaque type et la sauvegarde d'un item ou d'une créature (les deux c'est encore mieux). Avec ça, on pourrait mieux cerner nos besoins en vue de la création d'un logiciel externe tel que suggéré par Azrael récemment.
(Je me proposerais de réaliser un prototype en Perl, après, ceux qui veulent pourront toujours le transformer en C, mais je vous conseilles quand même de vous mettre au Perl, c'est le langage de programmation le plus "cool" que je connaisse)

Donc si notre beta-testeur en chef voulait bien... (c'est juste un fichier, donc je ne pense pas que ça contrarie Bioware, après tout, c'est pour leur bien )

Allez Jaha, soit sympa !!
mouarff s'il n'y arrive pas, on aura toujours ma fonction pour sauver les inventaire . Pour les placeables par eux même c'est plus chiant
Voilà juste un petit topo sur le nombre de caractères possible par champs
Code PHP:

Name        Type              Width   Decimal
VARNAME     Character         32         
PLAYERID    Character         32         
TIMESTAMP   Character         16         
VARTYPE     Character          1         
INT         Numeric           10       0 
DBL1        Numeric           20      10 
DBL2        Numeric           20      10 
DBL3        Numeric           20      10 
DBL4        Numeric           20      10 
DBL5        Numeric           20      10 
DBL6        Numeric           20      10 
MEMO        Memo              10       0 
Ca peut limiter pas mal de choses alors faut y prêter une certaine attention quand on utilise là BD.
On a fait une demande pour passer le VARNAME à 64 caractères mais pas de réponses pour le moment.
Pour les détails ...
Citation :
VARNAME and PLAYERID, are the compound key.

TIMESTAMP, real-world date & time

VARTYPE = one of the following:
FLOAT 'F'
INT 'I'
VECTOR 'V'
LOCATION 'L'
STRING 'S'
OBJECT 'O'

INT is for storing of ints

DBL1 is used for FLOATS

DBL1, 2 & 3 are for Vectors (1=x, 2=y, 3=z)

And all 6 DBL's are used for Locations along with the int
So DBL1-3 is the Position of the Location (x,y,z)
and DBL4-6 is the Orientation of the Location (x,y,z)
and the INT is the ID of the area.

And Objects (Items and Creatures) are stored as binary dumps in the memo file.
Jaha Effect
Voici un autre utilitaire pour visionner/éditer la BD de Bioware, contrairement au premier DBF éditeur qui a une limitation de durée d'utilisation de 1 mois celui çi est en freeware, ça fait toujours 34$ d'économie .
WBROWSE.EXE

Jaha Effect
ben euh c'est dans quel colonne qu'il sauve les strings ??
t'as aps oublié une chtite colonne dans ton recapitulatif ?

ensuite concernant le champ mémo pour sauver les objets , on peut avoir sa structure pour un item/creature , parce ke si plus tard on veut bidouiller dedans
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés