Aller au contenu

Proposition de mod facile


M3hdi

Messages recommandés

FOSE EST REQUIS DANS TOUS LES SCRIPTS
(sauf indaction contraire)


Hello, voilà pour tous ceux qui essayent de faire des mods, ou ceux qui cherchent des idées des mods je vous propose des scripts plus ou moins avancés.

Le premier script permet de lancer des bruitages suivant où se trouve le joueur, l'heure, etc


Par exemple imaginez entendre des bruits de hurlements dans les métros, imaginez de cris de loup pendant une exploration nocturne, imaginez des bruits de couples en train de niquer quand vous passez devant une maison en pleine nuit, bref on peux en faire des choses, et améliorer vraiment le jeu grace à ce mod.

scn FUzzSCRIPTzzAMBIANCE short doonce short VARrandom short VARlieu float timer Begin Gamemode set VARrandom to (GetRandomPercent) set timer to timer + GetSecondsPassed     if player.GetInCell FranklinMetro01 == 1         set varLIEU to 1     elseif player.GetInCell FranklinMetro02 == 1         set varLIEU to 1     elseif  player.GetInCell Metrocenter08 == 1         set varLIEU to 1     elseif  player.GetInCell Metrocenter07 == 1         set varLIEU to 1     elseif  player.GetInCell Metrocenter06 == 1         set varLIEU to 1     elseif  player.GetInCell Metrocenter05 == 1         set varLIEU to 1     elseif  player.GetInCell Metrocenter04 == 1         set varLIEU to 1     elseif  player.GetInCell Metrocenter03 == 1         set varLIEU to 1     elseif  player.GetInCell Metrocenter02 == 1         set varLIEU to 1     elseif  player.GetInCell Metrocenter01 == 1         set varLIEU to 1     elseif  player.GetInCell Merestimetro01 == 1         set varLIEU to 1     elseif  player.GetInCell Merestimetro02 == 1         set varLIEU to 1     elseif  player.GetInCell FriendshipMetro02 == 1         set varLIEU to 1     elseif  player.GetInCell FriendshipMetro01 == 1         set varLIEU to 1 ;ajouter d'autres cellules avec d'autres valeurs à varLIEU     else         set varLIEU to 0     endif if timer = 30 ; toutes les 30 secondes     set timer to 0         if varLIEU == 1 ; si le player est dans un métro             if VARrandom > 99 ; 1% de chances d'entendre un son                 playersound FUzzSOUNDzzMETRO1             elseif > 98                  playersound FUzzSOUNDzzMETRO2             elseif > 97                  playersound FUzzSOUNDzzMETRO3             elseif > 96                  playersound FUzzSOUNDzzMETRO4             elseif > 95                  playersound FUzzSOUNDzzMETRO5             endif         endif endif END 


Voilà vous voyez dans un petit script comme ça, on peu changer facilement l'ambiance du jeu. Donc je vous laisse le soin de compléter ce script, de trouver des sons angoissants ou marrant, et de vous y mettre! Je ne le fait pas moi même car je n'ai pas le temps et plus vraiment la motivation j'avoue :)

_______________________________________________________________________

geckfr.jpgsignature.png summ.jpg

Lien vers le commentaire
Partager sur d’autres sites

une autre idée facile, pouvoir récupérer les douilles :

scn SCRIPTzzDOUILLESshort varGENshort varNBshort varattackshort vardiffBegin gamemode        if player.GetWeaponAmmoUse == ammo10mm        set varGEN to 10    elseif player.GetWeaponAmmoUse == ammo556mm        set varGEN to 556    elseif player.GetWeaponAmmoUse == ammo308        set varGEN to 308    else        set varGEN to 0    endif        IF VARGEN == 10                If player.GetAnimAction != 2 && varattack == 0            set varNB to Getitemcount ammo10mm        endif                if player.GetAnimAction == 2            set varattak to 1        endif                If player.GetAnimAction != 2 && varattack == 1            set varattack to 0            set vardiff to (Getitemcount ammo10mm - varNB)            if vardiff >= 4 set vardiff to (vardiff /4)                set REFdouille10mm0 to player.placeatme douille10mm, vardiff, 1, 0                set REFdouille10mm1 to player.placeatme douille10mm, vardiff, 1, 1                set REFdouille10mm2 to player.placeatme douille10mm, vardiff, 1, 2                set REFdouille10mm3 to player.placeatme douille10mm, vardiff, 1, 3            else                set REFdouille10mm to player.placeatme douille10mm, vardiff            endif        endif                if player.GetInSameCell REFdouille10mm != 1            REFdouille10mm.disable            REFdouille10mm.markfordelete        endif        if player.GetInSameCell REFdouille10mm0 != 1            REFdouille10mm0.disable            REFdouille10mm0.markfordelete        endif        if player.GetInSameCell REFdouille10mm1 != 1            REFdouille10mm1.disable            REFdouille10mm1.markfordelete        endif        if player.GetInSameCell REFdouille10mm2 != 1            REFdouille10mm2.disable            REFdouille10mm2.markfordelete        endif        if player.GetInSameCell REFdouille10mm3 != 1            REFdouille10mm3.disable            REFdouille10mm3.markfordelete        endif            ELSEIF VARGEN == 556                If player.GetAnimAction != 2 && varattack == 0            set varNB to Getitemcount ammo556mm        endif                if player.GetAnimAction == 2            set varattak to 1        endif                If player.GetAnimAction != 2 && varattack == 1            set varattack to 0            set vardiff to (Getitemcount ammo556mm - varNB)            if vardiff >= 4 set vardiff to (vardiff /4)                set REFdouille556mm0 to player.placeatme douille556mm, vardiff, 1, 0                set REFdouille556mm1 to player.placeatme douille556mm, vardiff, 1, 1                set REFdouille556mm2 to player.placeatme douille556mm, vardiff, 1, 2                set REFdouille556mm3 to player.placeatme douille556mm, vardiff, 1, 3            else                set REFdouille556mm to player.placeatme douille556mm, vardiff            endif        endif                if player.GetInSameCell REFdouille556mm != 1            REFdouille556mm.disable            REFdouille556mm.markfordelete        endif        if player.GetInSameCell REFdouille556mm0 != 1            REFdouille556mm0.disable            REFdouille556mm0.markfordelete        endif        if player.GetInSameCell REFdouille556mm1 != 1            REFdouille556mm1.disable            REFdouille556mm1.markfordelete        endif        if player.GetInSameCell REFdouille556mm2 != 1            REFdouille556mm2.disable            REFdouille556mm2.markfordelete        endif        if player.GetInSameCell REFdouille556mm3 != 1            REFdouille556mm3.disable            REFdouille556mm3.markfordelete        endif            ELSEIF VARGEN == 308                If player.GetAnimAction != 2 && varattack == 0            set varNB to Getitemcount ammo308        endif                if player.GetAnimAction == 2            set varattak to 1        endif                If player.GetAnimAction != 2 && varattack == 1            set varattack to 0            set vardiff to (Getitemcount ammo308 - varNB)            if vardiff >= 4 set vardiff to (vardiff /4)                set REFdouille3080 to player.placeatme douille308, vardiff, 1, 0                set REFdouille3081 to player.placeatme douille308, vardiff, 1, 1                set REFdouille3082 to player.placeatme douille308, vardiff, 1, 2                set REFdouille3083 to player.placeatme douille308, vardiff, 1, 3            else                set REFdouille308 to player.placeatme douille308, vardiff            endif        endif                if player.GetInSameCell REFdouille308 != 1            REFdouille308.disable            REFdouille308.markfordelete        endif        if player.GetInSameCell REFdouille3080 != 1            REFdouille3080.disable            REFdouille3080.markfordelete        endif        if player.GetInSameCell REFdouille3081 != 1            REFdouille3081.disable            REFdouille3081.markfordelete        endif        if player.GetInSameCell REFdouille3082 != 1            REFdouille3082.disable            REFdouille3082.markfordelete        endif        if player.GetInSameCell REFdouille3083 != 1            REFdouille3083.disable            REFdouille3083.markfordelete        endif            ENDIF    END 

_______________________________________________________________________

geckfr.jpgsignature.png summ.jpg

Lien vers le commentaire
Partager sur d’autres sites

Script d'autosave

FUzzGLOBzzSAVES est une variable globale à définir via un message par exemple


scn FUzzSCRIPTzzAUTOSAVEfloat timerbegin gamemode        if FUzzGLOBzzSAVES > 0        if timer < FUzzGLOBzzSAVES            set timer to timer + GetSecondsPassed        else            set timer to 0            con_Save FUautosave        endif    endif    end

_______________________________________________________________________

geckfr.jpgsignature.png summ.jpg

Lien vers le commentaire
Partager sur d’autres sites

Un script qui permet de passer du mod "2coups" au mod "1coup" avec le fusil à pompe en utilisant un touche

FUzzGLOBzzSHOTGUN = variable globale à définir
FUzztouche = variable globale contenant la touche à appuyer (à configurer avec un msg par exemple)

scn FUzzSCRIPTzzQUESTzzPOMPEshort doOnceshort doOnce2ref armeBegin Gamemode        set arme to WeapShotgunSawedOff        if doOnce == 0        set FUzzGLOBzzSHOTGUN to 1        set doOnce to 1    endif        if ( IsKeyPressed FUzztouche )        if FUzzGLOBzzSHOTGUN == 1 ; shotgun 1 -> shotgun 2            showmessage FUzzMESSAGEzzSHOTGUNzz2            SetWeaponAmmoUse 2 arme            SetAttackDamage 100 arme            SetWeaponNumProjectiles 18 arme            set doOnce2 to 2        elseif FUzzGLOBzzSHOTGUN == 2 ; shotgun 2 -> shotgun 1            showmessage FUzzMESSAGEzzSHOTGUNzz1            SetWeaponAmmoUse 1 arme            SetAttackDamage 50 arme            SetWeaponNumProjectiles 9 arme            set doOnce2 to 1        endif    endif            if doOnce2 == 2        set FUzzGLOBzzSHOTGUN to 2        set doOnce2 to 0    elseif doOnce2 == 1        set FUzzGLOBzzSHOTGUN to 1        set doOnce2 to 0    endif    end

_______________________________________________________________________

geckfr.jpgsignature.png summ.jpg

Lien vers le commentaire
Partager sur d’autres sites

MOD qui permet de changer de race en fonction de l'état de santé.

OCDINFx = une des races
endoX = un NPC avec une des races

scn FUzzSCRIPTzzANDROIDEshort doonceBegin GameMode        if player.GetIsRace OCDINF1        set doonce to 1    endif        if doonce == 1                if player.GetHealthPercentage >= 0.80            if endo1.SameRaceAsPC            else                player.MatchRace endo1            endif                    elseif player.GetHealthPercentage >= 0.60            if endo2.SameRaceAsPC            else                player.MatchRace endo2            endif                    elseif player.GetHealthPercentage >= 0.40            if endo3.SameRaceAsPC            else                player.MatchRace endo3            endif                    elseif player.GetHealthPercentage >= 0.20            if endo4.SameRaceAsPC            else                player.MatchRace endo4            endif                    elseif endo5.SameRaceAsPC        else            player.MatchRace endo5        endif            endif    End

PS : Résultat

_______________________________________________________________________

geckfr.jpgsignature.png summ.jpg

Lien vers le commentaire
Partager sur d’autres sites

Un script pour utiliser différents projectiles à la fin (3 dernières bastos) du chargeur (des balles traçantes par exemple) :


begin gamemode        IF GetWeaponAmmo ammo556mm                if vardo == 0            if player.GetAnimAction == 8 || GetAnimAction == 0                SetWeaponProjectile proj556mm                set vartotal to player.getitemcount ammo556mm                set varchargeur to (GetWeaponClipRounds - 3)                set vardo to 1            endif        endif                if vardo == 1 && player.getitemcount ammo556mm == (vartotal - varchargeur)            SetWeaponProjectile proj556mmtracant            set vardo to 0        endif    endif    ENDIFEnd

_______________________________________________________________________

geckfr.jpgsignature.png summ.jpg

Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...
Améliorer Smoke Cigarettes
(pas besoin de FOSE)

Prenez le mod "smoking cigarets". Lorsque l'on fume, et bien on a une cigarette dans la bouche et puis basta, aucune fumée, et la clope ne se consume pas. Avec ce script on peut amélioré tout ça.

Dans l'exmple je pars sur 11 niveaux de consumation de la clope (donc 11 skins et meshes), à savoir niveau 100 = clope intacte et niveau 0 = mégot.

begin gamemode
if playersmoke == 1 ; on considère playersmoke comme une condition à part entière, à configurer suivant le mod    set timer to timer + getsecondpassedendifif timer == 7    if VARclope == 100        player.placeatme fumeeclope        player.additem clope90percent        player.equipitem clop90percent        player.removeitem clop100percent        set VARclope to 90        set timer to 0    elseif VARclope ==90        player.placeatme fumeeclope        player.additem clope80percent        player.equipitem clop80percent        player.removeitem clop90percent        set VARclope to 80        set timer to 0    elseif VARclope == 80        player.placeatme fumeeclope         player.additem clope70percent         player.equipitem clop70percent         player.removeitem clop80percent         set VARclope to 70         set timer to 0    ;elseif etc etc jusko niveau 10    elseif VARclope == 0         player.placeatme fumeeclope          player.dropitem clop10percent          set VARclope to 0          set timer to 0        set playersmoke to 0    endifendif

_______________________________________________________________________

geckfr.jpgsignature.png summ.jpg

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...