Jump to content

MaybeMe

Members
  • Posts

    47
  • Joined

  • Last visited

Posts posted by MaybeMe

  1. Came across this myself some time ago when I was researching procedural generation.

     

    Looks impressive all generated procedurally which should mean that no two games are the same.

    I find this the most fascinating aspect of it; the sheer vastness of the game itself.

     

    It amazes me that players can discover and name a planet, and another player may not stumble on it for YEARS!!!

     

    Sounds absolutely gigantic, can't wait to play it on PS4.

  2. I got myself one of these for about £650 at the beginning of the year.

    17.3" MSI GP70 Gaming Laptop,Core i5-4200H,1TB,8GB DDR3,840M 2GB GDDR3, DVD, WIN 8.1

    runs Leadwerks fine.

    Like the MSi?

     

    I use my brother's MSi laptop for Leadwerks as mine doesn't support OpenGL 4.0.

     

    It's just an i7 with a 860M, but for some reason LW doesn't like to run on the GPU, so it uses integrated graphics.

  3. if you have multiple floors you could change the water height as soon as you enter a floor as a workaround.

    This seems feasible, although I'm sure there would be an FPS drop from it.

     

    It reminds me of Little Big Planet where you can mess with different items and get some sweet outcomes for level design.

     

    I honestly think that's where my so-called spark to try making a game came from.

  4. guess I should play Hitman and finish it, and then go to the other's in order. is there really a need to play the first or can I just skip it?

    I don't think it matters. I've played almost all of them except Absolution, but the ports aren't great, except Blood Money. Contracts and Silent Assassin are pretty much broken due to the AI.

     

     

    I've also ran into the problem with GTA 4. I have no idea why it's still on Steam if it's unplayable.

  5. It is possible but multiple worls will have consequences for the physics engine (if you are going to use phyics). When you create game, you create a 'world' which is similar to an empty void. What your create inside it is up to you though. The engine does not have build in planet orbiting systems, planet based wheather systems or partial level streaming. So it is technically possible, but you will have to build it yourself.

     

    Have a look at this video:

    Wouldn't it be possible to jury rig the orbit physics so to speak? Place an invisible body at the center and have another invisible arm with no collison, then set a lot of points using the platform script to get it in a 360?

  6. New issue that rose up when i was testing the MonsterAI, the monster will not start running at me unless there is a line of sight, so if he is spawned on the other side of a hill; the monster will not aggro me and start moving unless he sees me over the hill. Is there something i can do or change in the monsterAI.script or a setting that needs changed to have him immediately target and run to the target to kill it no matter where it is?

    It is possible to have him go to a way point, say the top of the hill, where he will then have line of sight and attack the player.

  7. Did you move your death trigger closer to the player? I found that if the player falls a long way before hitting the trigger he will die on respawning.

    This is what I ran into. I figured that is not supposed to happen.

     

    It's not really fixed at all, I just thought it was since I rebuilt the trigger and script hoping it would solve it, and in doing so I moved it up so the player wouldn't die from the fall impact.

     

    The way I viewed the video was that you could have it as far down as you wanted and it would still respawn the player, instead I recieve the death animation as though the player died from fall damage, when the death trigger has no collision mesh when it's set to "Trigger" and as far as I know it wasn't supposed to kill the player character.

    • Upvote 1
  8. to make it transparent (invisable) you can apply the invisable material to the CSG box that is your death trigger. That material is in the Materials/effects folder and can be assigned by the scene view tab under appearance. I hope I have answered your question.

    Materiels folder, Effects, Invisible.mat

     

    Just drag it onto your trigger box, that will make it transparent.

    Ah, I knew I should have chosen a different word.

     

    What I mean't to say was how do I make the box itself able to go through? The character dies on impact and respawns, but doesn't pass through like it's supposed to.

     

    Sorry for the misunderstanding.

  9. Hey guys,

     

    I've been watching Aggror's videos on Lua coding, and I ran into an issue first video and I don't want to go further without figuring out what I did wrong.

     

     

    The player dies and it plays the death animation. The script works and the player respawns back at the spawn point, but he dies.

     

    I've set the death trigger platform to "Trigger" but it is still solid.

     

    How do I make it transparent so to speak?

  10. I recommend as a newbie myself, to make folders in within your Prefab folder, and make different building blocks like floors and walls to use to make structures, depending on what sort of game you hope to create.

     

    It's made my life easier and its much more simple to just click on a floor tile or wall and coat it with a material than creating a new one every time.

     

    Good luck!

  11. Alright...

     

    This is what I've got. I'm going to try and look up some Lua tutorials to see what I messed up, but it gives me an error:

    attempt to call method 'SpawnBullet' (a nil value)

     

    function Script:Fire()
    if Time:GetCurrent()-self.reloadstarttime>5000 then
    if self.player.weaponlowerangle==0 then
    local currenttime=Time:GetCurrent()
    if self.lastfiretime==nil then self.lastfiretime=0 end
    if currenttime-self.lastfiretime>self.refirerate then
    if self.currentaction==nil then
    self.lastfiretime = currenttime
    if self.clipammo==0 then
    if self.sound.dryfire then
    if self.suspenddryfire~=true then
    self.sound.dryfire:Play()
    end
    end
    else
    self.currentaction="fire"
    if #self.sound.fire>0 then
    self.sound.fire[math.random(#self.sound.fire)]:Play()
    end
    self.clipammo = self.clipammo - 1
    self.firetime = Time:GetCurrent()
    self.muzzlelight:Point(self.player.camera,1)
    self.muzzlelight:Show()
    self.muzzleflash:SetAngle(math.random(0,360))
    self.animationmanager:SetAnimationSequence("Fire",self.firespeed,300,1,self,self.EndFire)
    
    --Spawn bullet
    local n
    for n=1,self.pellets do
    local d = Transform:Normal(0,0,1,self.player.camera,nil)
    d = d + Vec3(math.random(-1,1),math.random(-1,1),math.random(-1,1)) * self.scatter
    d = d:Normalize()
    local p
    if self.muzzle then
    p=self.muzzle:GetPosition(true)
    self:SpawnBullet(p,d*self.bulletspeed)
    else
    System:Print("Warning: Muzzle entity not found.")
    end
    end
    end
    else
    self.cancelreload=true
    end
    end
    end
    end
    
    --Creates a bullet
    function Script:SpawnBullet(position,velocity)
    local bullet = {}
    bullet.sprite = tolua.cast(self.tracer:Instance(),"Sprite")
    bullet.sprite:SetPosition(position)
    bullet.sprite:AlignToVector(velocity)
    bullet.sprite:Hide()
    bullet.position = position
    bullet.origin = Vec3(position.x,position.y,position.z)
    bullet.velocity = velocity
    table.insert(self.bullets,bullet)
    end
    
    function Script:Draw()
    
    local t = Time:GetCurrent()
    
    if self.muzzlelight:Hidden()==false then
    if t-self.firetime>50 then
    self.muzzlelight:Hide()
    end
    end
    
    local jumpbob = 0
    
    if self.jumpoffset<0 then
    jumpbob = (Math:Sin(self.jumpoffset))*0.01
    self.jumpoffset = self.jumpoffset + 8*Time:GetSpeed()
    end
    
    if self.landoffset<0 then
    jumpbob = jumpbob + (Math:Sin(self.landoffset))*0.01
    self.landoffset = self.landoffset + 10*Time:GetSpeed()
    end
    
    --Animate the weapon
    local bob = 0;
    local speed = math.max(0.1,self.player.entity:GetVelocity():xz():Length())
    if self.player.entity:GetAirborne() then speed = 0.1 end
    self.swayspeed = Math:Curve(speed,self.swayspeed,20)
    self.swayspeed = math.max(0.5,self.swayspeed)
    self.amplitude = math.max(2,Math:Curve(speed,self.amplitude,20))
    self.timeunits = self.timeunits + self.swayspeed*4*Time:GetSpeed()
    local sway = math.sin(self.timeunits/120.0) * self.amplitude * self.maxswayamplitude
    bob = (1-math.cos(self.timeunits/60.0)) * self.maxswayamplitude * 0.1 * self.amplitude
    local campos = self.player.camera:GetPosition(true)
    
    self.smoothedposition.x = campos.x
    self.smoothedposition.y = Math:Curve(campos.y,self.smoothedposition.y,2)
    self.smoothedposition.z = campos.z
    self.entity:SetRotation(self.rotation)
    self.entity:SetPosition(sway*self.entity.scale.x,bob+jumpbob,0)
    self.entity:Translate(self.offset,false)
    
    self.animationmanager:Update()
    end
    
    function Script:Release()
    self.emitter[0]:Release()
    self.emitter[1]:Release()
    self.emitter=nil
    ReleaseTableObjects(self.sound)
    end
    
    function Script:Cleanup()
    self.tracer:Release()
    end
    end

     

    Any help and possible explanation of what I did wrong?

  12. From Josh's latest Blog

     

    Due to changes in the Workshop system, the Game Player is going to be temporarily unavailable. It hasn't gotten much use, and I think a standalone game player would be better, because this would let anyone on Steam play your game, not just other Leadwerks users. In the meantime, I recommend publishing your games in the new games section on our site, where anyone can download them.

    A standalone Leadwerks Player would be great! It'd be cool if it could also browse the Games page on the site so one could look at all the games.

  13. Ok, I just looked at the script. It is a little more complicated than I thought.

     

    I'm working on the FPSGun.lua file.

     

    Put this at the top of the file:

    Script.reloadstarttime=Time:GetCurrent()-10000
    

     

    Put this around the code inside of the Fire() method:

    if Time:GetCurrent()-self.reloadstarttime>5000 then
    --fire code
    end
    

     

    Now, the 10000 I put at the top is for ten seconds (I'm basically saying put the reload time back 10 seconds to begin without so there is no lock).

     

    Anyway, that part isn't that important. The part you will likely have to change with this new code is the number 5000. I just used this for testing purposes. Basically, after 5 seconds of starting the reload process, you can fire again. You'll probably want to pick a better number. I also didn't test it that much, so there might be other timing issues, but you should be able to move the start reload animation line somewhere else to fix these.

    Alright!

     

    Thanks for the fix. I just wanted to try and get it the way I like it so I could use it for other purposes.

     

    Thanks a bunch!

    • Upvote 1
  14. Hey guys,

     

    I was messing around and wanted to give a try at different aspects of the engine.

     

    I noticed with the default autopistol prefab that you can fire the pistol before the reloading animation is done. How can I delay it and make it fire later, when the animation is finished?

     

    Edit: Also, how do I move the prefab floorplates? I can only rotate them among the axes, not actually drag them once they are placed.

  15. Oh ok, so do you think Indie is enough just for a small debut title?

    From what I've heard, it's perfectly fine to tinker with and get used to the engine and you could eventually create a debut title with it. It would require a good amount of scripts and prefabs to create the title itself though, but it is entirely possible in LUA and the engine itself.

     

    There is a level in the engine that showcases the AI and different events that Josh, one of the developers created and I was amazed at how everything worked and came along nicely.

×
×
  • Create New...