Page 10 sur 25
Re: Oblivion XP
Posté : 23 août 2009, 01:20
par papill6n
Gorn => si il y a un fichier .ini, c'est pour que le joueur fasse lui même ses réglages en fonctions de ses goûts.
Donc si vraiment vous modifiezr les valeurs du .ini de base, pensez à inclure dans le read-me les valeurs de base, afin que les joueurs puissent les remettre si ils le souhaitent.
Ou bien faites un read-me expliquant les valeurs que l'on peut modifier pour obtenir une version type en fonction du mode de jeu voulu par le joueur?
Re: Oblivion XP
Posté : 23 août 2009, 01:34
par Xvoh
Y a un document avec toutes les explications nécessaires pour modifier le .ini du mod...
Le tout c'est de le traduire.
Re: Oblivion XP
Posté : 24 août 2009, 12:30
par Mimoas
papill6n a écrit :Donc si vraiment vous modifier les valeurs du .ini de base, pensez à inclure dans le read-me les valeurs de base, afin que les joueurs puissent les remettre si il le souhaite.
C'est déjà inclus dans le .ini tu as la valeur utilis
éeer pour le jeu et juste après la valeur par défaut genre ça donne ceci.
réglage XXX: 123 ;40
Fut un temps j'avais penser à inclure plusieurs versions du fichier .ini mais y a tellement de réglages qu'il est vraiment dur de cerner avec précision les go
ûts des joueurs, c'est techniquement impossible
Re: Oblivion XP
Posté : 25 août 2009, 21:06
par Gorn
Bonsoir,
Voici un script supportant les modules "Elesweyr" et "Les portes d'Aesgard - Episode 2".
► Afficher le texte
Code : Tout sélectionner
scn ObXPQuestsMods7Script
;Ce script gère l'attribution des PE (XP) lors de la fin d'une quête
;array index variables
int i
;variables XP
float gainedXP
;temp variables
short tempShort
short tempShort2
int tempInt
long tempLong
float tempFloat
float tempFloat2
float tempFloat3
ref tempRef
string_var tempString
;quest delay time
float fQuestDelayTime
;array containing all quest variables
array_var arrayQuests
;array containing all quest names
array_var arrayQuestNames
;array containing all quest XP values
array_var arrayQuestXP
;quest stage variables
;Elesweyr le désert d'Anequina
short ANQtrbcbrDone
short ANQhomebuyRvhdDone
;Elesweyr le désert d'Anequina
short AESqu1Done
short AESqu2Done
short AESqu3Done
short AESqu4Done
begin gamemode
;update script every <scriptQuestDelay> seconds
if ( fQuestDelayTime != ObXPSettings.scriptQuestDelay )
set fQuestDelayTime to ObXPSettings.scriptQuestDelay
endif
;check if mod is initialized
if ( ObXPMain.initialized == 0 )
return
endif
;initialize arrays
if ( arrayQuests == 0 ) || ( getGameLoaded )
;construct / clean arrays
if ( arrayQuests == 0 )
let arrayQuests := ar_Construct Array
else
ar_Erase arrayQuests 0:ar_Size arrayQuests
endif
if ( arrayQuestNames == 0 )
let arrayQuestNames := ar_Construct Array
else
ar_Erase arrayQuestNames 0:ar_Size arrayQuestNames
endif
if ( arrayQuestXP == 0 )
let arrayQuestXP := ar_Construct Array
else
ar_Erase arrayQuestXP 0:ar_Size arrayQuestXP
endif
;set initial array values to 1 to allow checking whether a quest was completed before using the mod
let i := 0
while ( i <= 48 )
let arrayQuests[i] := 1
let i := i + 1
loop
;Elesweyr Désert d'Anequina - Nom des quêtes
let arrayQuestNames[00] := "Trois bouc bourrus"
let arrayQuestXP[00] := 250
let arrayQuestNames[01] := "Achat d'une maison à Riverhold"
let arrayQuestXP[01] := 350
;Les Portes d'Aesgard - Episode 2 - Nom des quêtes
let arrayQuestNames[02] := "L'Ordre de Fequrian"
let arrayQuestXP[02] := 150
let arrayQuestNames[03] := "L'élément de chair"
let arrayQuestXP[03] := 250
let arrayQuestNames[04] := "Les mondes de Nulle Part"
let arrayQuestXP[04] := 350
let arrayQuestNames[05] := "Le cinquième élément"
let arrayQuestXP[05] := 400
endif
;update quest stage variables
;Elesweyr Désert d'Anequina - Conditions
if ( isModLoaded "ElsweyrAnequina.esp" )
runScriptLine "set ObXPQuestsMods7.ANQtrbcbrDone to getStageDone ANQSmallQuest01 100"
runScriptLine "set ObXPQuestsMods7.ANQhomebuyRvhdDone to getStageDone ANQRHHouseRiverhold 30"
endif
;Les Portes d'Aesgard - Episode 2 - Conditions
if ( isModLoaded "GTAesgaard_2.esm" )
runScriptLine "set ObXPQuestsMods7.AESqu1Done to getStageDone A808FequrianOrder 40"
runScriptLine "set ObXPQuestsMods7.AESqu2Done to getStageDone A808Flesh 40"
runScriptLine "set ObXPQuestsMods7.AESqu3Done to getStageDone A808Nowhere 30"
runScriptLine "set ObXPQuestsMods7.AESqu4Done to getStageDone A808Soul 70"
endif
;Elesweyr Désert d'Anequina - Lien logique
let arrayQuests[00] := ( arrayQuests[00] ) * ANQtrbcbrDone
let arrayQuests[01] := ( arrayQuests[01] ) * ANQhomebuyRvhdDone
;Les Portes d'Aesgard - Episode 2 - Lien logique
let arrayQuests[02] := ( arrayQuests[00] ) * AESqu1Done
let arrayQuests[03] := ( arrayQuests[01] ) * AESqu2Done
let arrayQuests[04] := ( arrayQuests[00] ) * AESqu3Done
let arrayQuests[05] := ( arrayQuests[01] ) * AESqu4Done
let i := 0
while ( i < ar_Size arrayQuests )
;if an array entry is 0, the player hasn't completed the quest yet - set these to 2 for the next time the script is run
;next, if the entry is 1, it means player already completed the corresponding quest before using the mod
;then, if any entry is 2 (which is only possible the next time the script is run), the player completed the quest and XP should be given
;set completed quest entries to 3 so XP will only be awarded once
let tempShort := arrayQuests[i]
if ( tempShort == 0 )
let arrayQuests[i] := 2
elseif ( tempShort == 1 )
let arrayQuests[i] := 3
elseif ( tempShort == 2 )
;set amount of XP gained
let gainedXP := ( 1 + ObXPMain.playerLevel * ObXPSettings.multXPQuestLevel ) * ObXPSettings.globalQuestXPMult * arrayQuestXP[i]
let tempString := arrayQuestNames[i]
;account for rested XP
if ( ObXPMain.restedXP - gainedXP >= 0 )
let tempFloat := gainedXP
let ObXPMain.restedXP := ObXPMain.restedXP - gainedXP
let gainedXP := gainedXP * 2
else
let tempFloat := ObXPMain.restedXP
let gainedXP := gainedXP + ObXPMain.restedXP
let ObXPMain.restedXP := 0
endif
let ObXPMain.currentXP := ObXPMain.currentXP + gainedXP
let ObXPMain.totalXP := ObXPMain.totalXP + gainedXP
let tempFloat2 := ObXPMain.currentXP
let tempFloat3 := ObXPMain.neededXP
;print XP gain message to log
let tempString := sv_Construct "Acquiert %.2f PE. A terminé la quête %q%z%q." gainedXP, tempString
if ( ObXPUIControl.lineNumber > ObXPSettings.messageBufferSize )
;erase first message
ar_Erase ObXPUIControl.arrayMessageBuffer 0
let ObXPUIControl.arrayMessageBuffer[ObXPSettings.messageBufferSize - 1] := sv_Construct "%z" tempString
else
let ObXPUIControl.arrayMessageBuffer[ObXPUIControl.lineNumber] := sv_Construct "%z" tempString
endif
let ObXPUIControl.lineNumber := ObXPUIControl.lineNumber + 1
let arrayQuests[i] := 3
endif
let i := i + 1
loop
sv_Destruct tempString
end
Je n'ai pas encore vérifié si cela fonctionne ou pas, mais j'ai bon espoir.
Re: Oblivion XP
Posté : 16 oct. 2009, 20:20
par pierre61sang
bonjour
est-ce que ca a un interet de mettre oblivion xp avec l'ooo? Les 2 modifient le levelling donc peut etre que l'un efface l'autre? ou alors on gagne des niveaux par l'xp et les levels list de objets et monstres sont celle de l'ooo? et si les 2 sont compatibles, on peut utiliser des mods avec la level list de ooo comme mmm3.7 ou armamentarium avec oblivion xp?
Re: Oblivion XP
Posté : 17 oct. 2009, 11:46
par gibe
Re: Oblivion XP
Posté : 17 oct. 2009, 14:05
par papill6n
Oblivion Xp est compatible avec de nombreux mods comme: OOO, Midas Magic, The lost spires, Heats of the dead, Dungeons of Ivellon, etc.
Mais pas plus d'indications.
Re: Oblivion XP
Posté : 17 oct. 2009, 14:29
par pierre61sang
oui ils sont compatibles mais est-ce que la level list d'ooo va s'occuper des monstres et de objets et celle d'oblivion xp de nos niveaux?
Re: Oblivion XP
Posté : 17 oct. 2009, 15:43
par Sita
Le gros soucis avec OOO ce que l'on croise souvent des adversaires très fort et que si on arrive à les tuer (Car il y a des trouffions de la légion pas loin et que l'on court vite) le gain d'XP est très important. Donc oui mais il faudra modifier les valeurs dans l'ini. De même pour celles des scripts, les quêtes d'OOO sont assez dur et ne rapporte pas beaucoup d'XP en proportion. Pour avoir essayé les version fr des deux mods en cours de traduction j'ai trouvé que Oblivion XP facilite bien trop le jeu, je n'ose pas imaginer le bordel avec le MMM ou FCOM. En 2 heure de jeu, niveau 8 car je me balade énormément je franchis même pas un niveau dans la difficulté d'OOO (il me faut entre 4 & 5 en général).
Re: Oblivion XP
Posté : 17 oct. 2009, 16:02
par pierre61sang
donc tu déconseille oblivion xp en + de ooo?
et a choisir ooo c mieu je pense