Les Royaumes de Feu

D'après l'œuvre de Tui T. Sutherland
 
AccueilRechercherDernières imagesMembresGroupesS'enregistrerConnexion

 

 Programmation IA en LUA

Aller en bas 
3 participants
AuteurMessage
Yurising
membre
Yurising


Médailles : Programmation IA en LUA Img_2043
Émeraudes : 76
Messages : 50
Date d'inscription : 24/09/2016
Age : 24
Localisation : Sous l'océaannnnn

Description du dragon
Race: Aile du Ciel
Avertissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)
Bannissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)

Programmation IA en LUA Empty
MessageSujet: Programmation IA en LUA   Programmation IA en LUA EmptyMar 1 Nov - 19:45

Salut tout le monde!
Comme mes projets de programmation sont en avance, j'ai réussi a libéré un peu de temps de codage.
Et vu que la section programmation et vide, je me lance!
Je vais donc vous présenté une Intelligence artificielle, l'une des plus simple.

Je suis pas trés fort en explications alors je vais faire le mieux possible.
Et si vous comprenez rien c'est normal.

Bon pour commencer il vous faut:
-Un éditeur LUA.
-Un compilateur LUA.

Bon allons-y pour le code, le voici attention les yeux:

local CurrentPart = nil
local MaxInc = 18

function onTouched(hit)
if hit.Parent == nil then
return
end

local humanoid = hit.Parent:findFirstChild("Humanoid")

if humanoid == nil then
CurrentPart = hit
end
end

function waitForChild(parent, childName)
local child = parent:findFirstChild(childName)

if child then
return child
end

while true do
print(childName)

child = parent.ChildAdded:wait()

if child.Name==childName then
return child
end
end
end

local Figure = script.Parent
local Humanoid = waitForChild(Figure, "Humanoid")
local Torso = waitForChild(Figure, "Torso")
local Left = waitForChild(Figure, "Left Leg")
local Right = waitForChild(Figure, "Right Leg")

Humanoid.Jump = true

Left.Touched:connect(onTouched)
Right.Touched:connect(onTouched)

while true do
wait(math.random(2, 6))

if CurrentPart ~= nil then
if math.random(1, 2) == 1 then
Humanoid.Jump = true
end

Humanoid:MoveTo(Torso.Position + Vector3.new(math.random(-MaxInc, MaxInc), 0, math.random(-MaxInc, MaxInc)), CurrentPart)
end
end

Alors, allons-y point par point.
Les premieres lignes servent a définir l'entité en valeur nul (nil en LUA lorsque aucune valeur n'est appliqué).
Ensuite a partir de WaitForChild c'est le chargement de l'entité et des scripts suplémentaires (type animations, ect.).
La partie local ... c'est le chargement du "corps de l'entité" (Left = bras gauche, ect.)
Humanoid.Jump = true, sa, c'est pour autorisé l'IA a éffectué des sauts.
wait défini l'attente entre chaque mouvement, ici entre 2 et 6 secondes
Le reste permet a votre personnage de se mouvoir selon une distance aléatoire.

VOila c'etait juste histoire de vous présenté sa.
Revenir en haut Aller en bas
DraVanos (braise)
Ancien
DraVanos (braise)


Médailles : Programmation IA en LUA Img_2043 Programmation IA en LUA Img_2046 Programmation IA en LUA Img_2035 Programmation IA en LUA Img_2040 Programmation IA en LUA Img_2026 Programmation IA en LUA Img_2027 Programmation IA en LUA Img_2028 Programmation IA en LUA Img_2029 Programmation IA en LUA Img_2030 Programmation IA en LUA Img_2045 Programmation IA en LUA Img_2031 Programmation IA en LUA Img_2032 Programmation IA en LUA Img_2032 Programmation IA en LUA Img_2035 Programmation IA en LUA Img_2031 Programmation IA en LUA Img_2028 Programmation IA en LUA Img_2034 Programmation IA en LUA Img_2050 Programmation IA en LUA Img_2037 Programmation IA en LUA Img_2033
Programmation IA en LUA Dbg9un3-7b45e7e0-1f08-4b87-b463-41cbd77f6e9d
Émeraudes : 514
Messages : 1292
Date d'inscription : 16/09/2016
Age : 22
Localisation : Somewhere

Description du dragon
Race: Aile des morts
Avertissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)
Bannissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)

Programmation IA en LUA Empty
MessageSujet: Re: Programmation IA en LUA   Programmation IA en LUA EmptyMer 2 Nov - 10:29

très bien j'ai tout compris (pas dutout j'ai compris end et wait seulement) breffffff toi on va t'engagé dans le fofo il nous faut des programateur et codeur bien sur récif y travaille mais entre le system de combat équilibré a faire et le fofo a géré on galère alors un codeur ne serai pas de refut^^
Revenir en haut Aller en bas
Yurising
membre
Yurising


Médailles : Programmation IA en LUA Img_2043
Émeraudes : 76
Messages : 50
Date d'inscription : 24/09/2016
Age : 24
Localisation : Sous l'océaannnnn

Description du dragon
Race: Aile du Ciel
Avertissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)
Bannissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)

Programmation IA en LUA Empty
MessageSujet: Re: Programmation IA en LUA   Programmation IA en LUA EmptyMer 2 Nov - 11:00

Le probléme c'est que comme je l'ai dit, je suis pas mal occupé niveau programmation.

Je bosse sur des jeux (2 en ce moment meme) et je m'occupe d'un site, sans oublié les mods Prison architect, Arma 3 et les gestions de multiples serveurs, je suis serré.

Pour les plus courageux voici comment on programme un dragon:

function waitForChild(parent, childName)
local child = parent:findFirstChild(childName)
if child then return child end
while true do
child = parent.ChildAdded:wait()
if child.Name==childName then return child end
end
end

local Figure = script.Parent
local Torso = waitForChild(Figure, "Torso")
local RightShoulder = waitForChild(Torso, "Right Shoulder")
local LeftShoulder = waitForChild(Torso, "Left Shoulder")
local RightHip = waitForChild(Torso, "Right Hip")
local LeftHip = waitForChild(Torso, "Left Hip")
local Neck = waitForChild(Torso, "Neck")
local Humanoid = waitForChild(Figure, "Humanoid")
local pose = "Standing"

local currentAnim = ""
local currentAnimTrack = nil
local currentAnimKeyframeHandler = nil
local currentAnimSpeed = 1.0
local animTable = {}
local animNames = {
idle = {
{ id = "[EXPURGED]", weight = 9 },
{ id = "[EXPURGED]", weight = 1 }
},
walk = {
{ id = "[EXPURGED]", weight = 10 }
},
run = {
{ id = "run.xml", weight = 10 }
},
jump = {
{ id = "[EXPURGED]", weight = 10 }
},
fall = {
{ id = "[EXPURGED]", weight = 10 }
},
climb = {
{ id = "[EXPURGED]", weight = 10 }
},
toolnone = {
{ id = "[EXPURGED]", weight = 10 }
},
toolslash = {
{ id = "[EXPURGED]", weight = 10 }
-- { id = "slash.xml", weight = 10 }
},
toollunge = {
{ id = "[EXPURGED]", weight = 10 }
},
wave = {
{ id = "[EXPURGED]", weight = 10 }
},
point = {
{ id = "[EXPURGED]", weight = 10 }
},
dance = {
{ id = "[EXPURGED]", weight = 10 },
{ id = "[EXPURGED]", weight = 10 },
{ id = "[EXPURGED]", weight = 10 }
},
dance2 = {
{ id = "[EXPURGED]", weight = 10 },
{ id = "[EXPURGED]", weight = 10 },
{ id = "[EXPURGED]", weight = 10 }
},
dance3 = {
{ id = "[EXPURGED]", weight = 10 },
{ id = "[EXPURGED]", weight = 10 },
{ id = "[EXPURGED]", weight = 10 }
},
laugh = {
{ id = "[EXPURGED]", weight = 10 }
},
cheer = {
{ id = "[EXPURGED]", weight = 10 }
},
}

-- Existance in this list signifies that it is an emote, the value indicates if it is a looping emote
local emoteNames = { wave = false, point = false, dance = true, dance2 = true, dance3 = true, laugh = false, cheer = false}

math.randomseed(tick())

function configureAnimationSet(name, fileList)
if (animTable[name] ~= nil) then
for _, connection in pairs(animTable[name].connections) do
connection:disconnect()
end
end
animTable[name] = {}
animTable[name].count = 0
animTable[name].totalWeight = 0
animTable[name].connections = {}

-- check for config values
local config = script:FindFirstChild(name)
if (config ~= nil) then
-- print("Loading anims " .. name)
table.insert(animTable[name].connections, config.ChildAdded:connect(function(child) configureAnimationSet(name, fileList) end))
table.insert(animTable[name].connections, config.ChildRemoved:connect(function(child) configureAnimationSet(name, fileList) end))
local idx = 1
for _, childPart in pairs(config:GetChildren()) do
if (childPart:IsA("Animation")) then
table.insert(animTable[name].connections, childPart.Changed:connect(function(property) configureAnimationSet(name, fileList) end))
animTable[name][idx] = {}
animTable[name][idx].anim = childPart
local weightObject = childPart:FindFirstChild("Weight")
if (weightObject == nil) then
animTable[name][idx].weight = 1
else
animTable[name][idx].weight = weightObject.Value
end
animTable[name].count = animTable[name].count + 1
animTable[name].totalWeight = animTable[name].totalWeight + animTable[name][idx].weight
-- print(name .. " [" .. idx .. "] " .. animTable[name][idx].anim.AnimationId .. " (" .. animTable[name][idx].weight .. ")")
idx = idx + 1
end
end
end

-- fallback to defaults
if (animTable[name].count <= 0) then
for idx, anim in pairs(fileList) do
animTable[name][idx] = {}
animTable[name][idx].anim = Instance.new("Animation")
animTable[name][idx].anim.Name = name
animTable[name][idx].anim.AnimationId = anim.id
animTable[name][idx].weight = anim.weight
animTable[name].count = animTable[name].count + 1
animTable[name].totalWeight = animTable[name].totalWeight + anim.weight
-- print(name .. " [" .. idx .. "] " .. anim.id .. " (" .. anim.weight .. ")")
end
end
end

-- Setup animation objects
function scriptChildModified(child)
local fileList = animNames[child.Name]
if (fileList ~= nil) then
configureAnimationSet(child.Name, fileList)
end
end

script.ChildAdded:connect(scriptChildModified)
script.ChildRemoved:connect(scriptChildModified)


for name, fileList in pairs(animNames) do
configureAnimationSet(name, fileList)
end

-- ANIMATION

-- declarations
local toolAnim = "None"
local toolAnimTime = 0

local jumpAnimTime = 0
local jumpAnimDuration = 0.3

local toolTransitionTime = 0.1
local fallTransitionTime = 0.3
local jumpMaxLimbVelocity = 0.75

-- functions

function stopAllAnimations()
local oldAnim = currentAnim

-- return to idle if finishing an emote
if (emoteNames[oldAnim] ~= nil and emoteNames[oldAnim] == false) then
oldAnim = "idle"
end

currentAnim = ""
if (currentAnimKeyframeHandler ~= nil) then
currentAnimKeyframeHandler:disconnect()
end

if (currentAnimTrack ~= nil) then
currentAnimTrack:Stop()
currentAnimTrack:Destroy()
currentAnimTrack = nil
end
return oldAnim
end

function setAnimationSpeed(speed)
if speed ~= currentAnimSpeed then
currentAnimSpeed = speed
currentAnimTrack:AdjustSpeed(currentAnimSpeed)
end
end

function keyFrameReachedFunc(frameName)
if (frameName == "End") then
-- print("Keyframe : ".. frameName)
local repeatAnim = stopAllAnimations()
local animSpeed = currentAnimSpeed
playAnimation(repeatAnim, 0.0, Humanoid)
setAnimationSpeed(animSpeed)
end
end

-- Preload animations
function playAnimation(animName, transitionTime, humanoid)
local idleFromEmote = (animName == "idle" and emoteNames[currentAnim] ~= nil)
if (animName ~= currentAnim and not idleFromEmote) then

if (currentAnimTrack ~= nil) then
currentAnimTrack:Stop(transitionTime)
currentAnimTrack:Destroy()
end

currentAnimSpeed = 1.0
local roll = math.random(1, animTable[animName].totalWeight)
local origRoll = roll
local idx = 1
while (roll > animTable[animName][idx].weight) do
roll = roll - animTable[animName][idx].weight
idx = idx + 1
end
-- print(animName .. " " .. idx .. " [" .. origRoll .. "]")
local anim = animTable[animName][idx].anim

-- load it to the humanoid; get AnimationTrack
currentAnimTrack = humanoid:LoadAnimation(anim)

-- play the animation
currentAnimTrack:Play(transitionTime)
currentAnim = animName

-- set up keyframe name triggers
if (currentAnimKeyframeHandler ~= nil) then
currentAnimKeyframeHandler:disconnect()
end
currentAnimKeyframeHandler = currentAnimTrack.KeyframeReached:connect(keyFrameReachedFunc)
end
end

-------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------

local toolAnimName = ""
local toolAnimTrack = nil
local currentToolAnimKeyframeHandler = nil

function toolKeyFrameReachedFunc(frameName)
if (frameName == "End") then
-- print("Keyframe : ".. frameName)
local repeatAnim = stopToolAnimations()
playToolAnimation(repeatAnim, 0.0, Humanoid)
end
end


function playToolAnimation(animName, transitionTime, humanoid)
if (animName ~= toolAnimName) then

if (toolAnimTrack ~= nil) then
toolAnimTrack:Stop()
toolAnimTrack:Destroy()
transitionTime = 0
end

local roll = math.random(1, animTable[animName].totalWeight)
local origRoll = roll
local idx = 1
while (roll > animTable[animName][idx].weight) do
roll = roll - animTable[animName][idx].weight
idx = idx + 1
end
-- print(animName .. " * " .. idx .. " [" .. origRoll .. "]")
local anim = animTable[animName][idx].anim

-- load it to the humanoid; get AnimationTrack
toolAnimTrack = humanoid:LoadAnimation(anim)

-- play the animation
toolAnimTrack:Play(transitionTime)
toolAnimName = animName

currentToolAnimKeyframeHandler = toolAnimTrack.KeyframeReached:connect(toolKeyFrameReachedFunc)
end
end

function stopToolAnimations()
local oldAnim = toolAnimName

if (currentToolAnimKeyframeHandler ~= nil) then
currentToolAnimKeyframeHandler:disconnect()
end

toolAnimName = ""
if (toolAnimTrack ~= nil) then
toolAnimTrack:Stop()
toolAnimTrack:Destroy()
toolAnimTrack = nil
end


return oldAnim
end

-------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------


function onRunning(speed)
if speed>0.01 then
playAnimation("walk", 0.1, Humanoid)
pose = "Running"
else
playAnimation("idle", 0.1, Humanoid)
pose = "Standing"
end
end

function onDied()
pose = "Dead"
end

function onJumping()
playAnimation("jump", 0.1, Humanoid)
jumpAnimTime = jumpAnimDuration
pose = "Jumping"
end

function onClimbing(speed)
playAnimation("climb", 0.1, Humanoid)
setAnimationSpeed(speed / 12.0)
pose = "Climbing"
end

function onGettingUp()
pose = "GettingUp"
end

function onFreeFall()
if (jumpAnimTime <= 0) then
playAnimation("fall", fallTransitionTime, Humanoid)
end
pose = "FreeFall"
end

function onFallingDown()
pose = "FallingDown"
end

function onSeated()
pose = "Seated"
end

function onPlatformStanding()
pose = "PlatformStanding"
end

function onSwimming(speed)
if speed>0 then
pose = "Running"
else
pose = "Standing"
end
end

function getTool()
for _, kid in ipairs(Figure:GetChildren()) do
if kid.className == "Tool" then return kid end
end
return nil
end

function getToolAnim(tool)
for _, c in ipairs(tool:GetChildren()) do
if c.Name == "toolanim" and c.className == "StringValue" then
return c
end
end
return nil
end

function animateTool()

if (toolAnim == "None") then
playToolAnimation("toolnone", toolTransitionTime, Humanoid)
return
end

if (toolAnim == "Slash") then
playToolAnimation("toolslash", 0, Humanoid)
return
end

if (toolAnim == "Lunge") then
playToolAnimation("toollunge", 0, Humanoid)
return
end
end

function moveSit()
RightShoulder.MaxVelocity = 0.15
LeftShoulder.MaxVelocity = 0.15
RightShoulder:SetDesiredAngle(3.14 /2)
LeftShoulder:SetDesiredAngle(-3.14 /2)
RightHip:SetDesiredAngle(3.14 /2)
LeftHip:SetDesiredAngle(-3.14 /2)
end

local lastTick = 0

function move(time)
local amplitude = 1
local frequency = 1
local deltaTime = time - lastTick
lastTick = time

local climbFudge = 0
local setAngles = false

if (jumpAnimTime > 0) then
jumpAnimTime = jumpAnimTime - deltaTime
end

if (pose == "FreeFall" and jumpAnimTime <= 0) then
playAnimation("fall", fallTransitionTime, Humanoid)
elseif (pose == "Seated") then
stopAllAnimations()
moveSit()
return
elseif (pose == "Running") then
playAnimation("walk", 0.1, Humanoid)
elseif (pose == "Dead" or pose == "GettingUp" or pose == "FallingDown" or pose == "Seated" or pose == "PlatformStanding") then
-- print("Wha " .. pose)
amplitude = 0.1
frequency = 1
setAngles = true
end

if (setAngles) then
desiredAngle = amplitude * math.sin(time * frequency)

RightShoulder:SetDesiredAngle(desiredAngle + climbFudge)
LeftShoulder:SetDesiredAngle(desiredAngle - climbFudge)
RightHip:SetDesiredAngle(-desiredAngle)
LeftHip:SetDesiredAngle(-desiredAngle)
end

-- Tool Animation handling
local tool = getTool()
if tool then

animStringValueObject = getToolAnim(tool)

if animStringValueObject then
toolAnim = animStringValueObject.Value
-- message recieved, delete StringValue
animStringValueObject.Parent = nil
toolAnimTime = time + .3
end

if time > toolAnimTime then
toolAnimTime = 0
toolAnim = "None"
end

animateTool()
else
stopToolAnimations()
toolAnim = "None"
toolAnimTime = 0
end
end

-- connect events
Humanoid.Died:connect(onDied)
Humanoid.Running:connect(onRunning)
Humanoid.Jumping:connect(onJumping)
Humanoid.Climbing:connect(onClimbing)
Humanoid.GettingUp:connect(onGettingUp)
Humanoid.FreeFalling:connect(onFreeFall)
Humanoid.FallingDown:connect(onFallingDown)
Humanoid.Seated:connect(onSeated)
Humanoid.PlatformStanding:connect(onPlatformStanding)
Humanoid.Swimming:connect(onSwimming)

-- main program

local runService = game:service("RunService");

-- initialize to idle
playAnimation("idle", 0.1, Humanoid)
pose = "Standing"

while Figure.Parent~=nil do
local _, time = wait(0.1)
move(time)
end
Revenir en haut Aller en bas
DraVanos (braise)
Ancien
DraVanos (braise)


Médailles : Programmation IA en LUA Img_2043 Programmation IA en LUA Img_2046 Programmation IA en LUA Img_2035 Programmation IA en LUA Img_2040 Programmation IA en LUA Img_2026 Programmation IA en LUA Img_2027 Programmation IA en LUA Img_2028 Programmation IA en LUA Img_2029 Programmation IA en LUA Img_2030 Programmation IA en LUA Img_2045 Programmation IA en LUA Img_2031 Programmation IA en LUA Img_2032 Programmation IA en LUA Img_2032 Programmation IA en LUA Img_2035 Programmation IA en LUA Img_2031 Programmation IA en LUA Img_2028 Programmation IA en LUA Img_2034 Programmation IA en LUA Img_2050 Programmation IA en LUA Img_2037 Programmation IA en LUA Img_2033
Programmation IA en LUA Dbg9un3-7b45e7e0-1f08-4b87-b463-41cbd77f6e9d
Émeraudes : 514
Messages : 1292
Date d'inscription : 16/09/2016
Age : 22
Localisation : Somewhere

Description du dragon
Race: Aile des morts
Avertissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)
Bannissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)

Programmation IA en LUA Empty
MessageSujet: Re: Programmation IA en LUA   Programmation IA en LUA EmptyMer 2 Nov - 11:27

ok fait nous signe bien que je pense que les codage a faire sont cour.

*N'a meme pas le courage de lire tout sa* OMG CES QUOI CE MONSTRE
Revenir en haut Aller en bas
Recif
Grand membre
Recif


Médailles : Programmation IA en LUA Img_2043 Programmation IA en LUA Img_2041 Programmation IA en LUA Img_2046
Émeraudes : 513
Messages : 685
Date d'inscription : 26/04/2016
Age : 28
Localisation : île isolée

Description du dragon
Race: Aile de Mer
Avertissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)
Bannissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)

Programmation IA en LUA Empty
MessageSujet: Re: Programmation IA en LUA   Programmation IA en LUA EmptyMer 2 Nov - 11:43

( si je veux faire un simulateur de combat sur le fofo ? [ un peu à la pokemon ] nope braise c'est hard, je pense faire en javascript, mais il va me falloir passer du c++ au javascript (ils semblent se ressembler, ça devrais le faire) et j’espère juste que la poo y est possible >< )
Revenir en haut Aller en bas
Recif
Grand membre
Recif


Médailles : Programmation IA en LUA Img_2043 Programmation IA en LUA Img_2041 Programmation IA en LUA Img_2046
Émeraudes : 513
Messages : 685
Date d'inscription : 26/04/2016
Age : 28
Localisation : île isolée

Description du dragon
Race: Aile de Mer
Avertissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)
Bannissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)

Programmation IA en LUA Empty
MessageSujet: Re: Programmation IA en LUA   Programmation IA en LUA EmptyMer 2 Nov - 11:45

( mais les Ia sont sympas, je connais le Lua de nom seulement )
Revenir en haut Aller en bas
Recif
Grand membre
Recif


Médailles : Programmation IA en LUA Img_2043 Programmation IA en LUA Img_2041 Programmation IA en LUA Img_2046
Émeraudes : 513
Messages : 685
Date d'inscription : 26/04/2016
Age : 28
Localisation : île isolée

Description du dragon
Race: Aile de Mer
Avertissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)
Bannissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)

Programmation IA en LUA Empty
MessageSujet: Re: Programmation IA en LUA   Programmation IA en LUA EmptyMer 2 Nov - 11:51

( par contre, si je ne me trompe, tu fais appel à des variables et des fonctions présentes ailleurs dans ton programme non ? du coup je sais pas ce que ça fait >< [pardonne moi s'il s’agit de fonction et methodes présente de base dans le lua ou l'une de ses bibliothèque ><] )
Revenir en haut Aller en bas
Yurising
membre
Yurising


Médailles : Programmation IA en LUA Img_2043
Émeraudes : 76
Messages : 50
Date d'inscription : 24/09/2016
Age : 24
Localisation : Sous l'océaannnnn

Description du dragon
Race: Aile du Ciel
Avertissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)
Bannissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)

Programmation IA en LUA Empty
MessageSujet: Re: Programmation IA en LUA   Programmation IA en LUA EmptyJeu 3 Nov - 13:10

Exact.
J'utilise des variables hors des bases du LUA.
La raison principale a cela c'est pour faire appels a des animations pour le dragon.

A l'origine ce sont des scripts que j'avait utilisé pour mes premiers jeux.
Je pourrait montré d'autres scripts que j'utilise dans mes jeux actuels, mais aprés plus personne comprendrait rien et en plus ce serait légérement hors contexte.
Revenir en haut Aller en bas
Recif
Grand membre
Recif


Médailles : Programmation IA en LUA Img_2043 Programmation IA en LUA Img_2041 Programmation IA en LUA Img_2046
Émeraudes : 513
Messages : 685
Date d'inscription : 26/04/2016
Age : 28
Localisation : île isolée

Description du dragon
Race: Aile de Mer
Avertissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)
Bannissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)

Programmation IA en LUA Empty
MessageSujet: Re: Programmation IA en LUA   Programmation IA en LUA EmptyJeu 3 Nov - 23:53

( c'est pas mal pour quelqu'un de ton age, je veux dire, la programmation, très souvent ça semble en rebuter plus d'un, tu te dis " c'est pas à ma porté" et tu essaie jamais ^^ )

cool,( je me demande à quoi ressemble tes animations ^^ ), Le temps que ça doit représenter .........
Revenir en haut Aller en bas
Yurising
membre
Yurising


Médailles : Programmation IA en LUA Img_2043
Émeraudes : 76
Messages : 50
Date d'inscription : 24/09/2016
Age : 24
Localisation : Sous l'océaannnnn

Description du dragon
Race: Aile du Ciel
Avertissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)
Bannissement:
Programmation IA en LUA Left_bar_bleue0/0Programmation IA en LUA Empty_bar_bleue  (0/0)

Programmation IA en LUA Empty
MessageSujet: Re: Programmation IA en LUA   Programmation IA en LUA EmptyDim 27 Nov - 14:04

Je suis entrain d'uploadé une vidéo showcase actuellement.
J'hésite a mettre un lien parceque, sa ne parle pas des royaumes de feu (pas du tout) et en plus les SCP risque de heurté la sensibilité des plus jeunes.
Revenir en haut Aller en bas
Contenu sponsorisé





Programmation IA en LUA Empty
MessageSujet: Re: Programmation IA en LUA   Programmation IA en LUA Empty

Revenir en haut Aller en bas
 
Programmation IA en LUA
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Les Royaumes de Feu :: En dehors du jeu RPG :: Art et codage :: Atelier graphisme ou/et codage-
Sauter vers: