Jump to content

AggrorJorn

Members
  • Posts

    4,816
  • Joined

  • Last visited

Posts posted by AggrorJorn

  1. I would make a single player strategy game set in fantasy medieval times. The key part is that the world map you play in is dynamic but has active factions/kingdoms. Think Totalwar/Mount and blade like. On this world you can zoom in to a playable map. The map itself is perstistent in terms of buildings.

    When you have build a base, you can come back later to that map with its origial base. For instance when an enemy AI is attacking.

  2. What dream game would you make if you had the money, time and skills? Just a little daydreaming topic with hopefully some interesting stories.

    Conditions:

    • Game has to be done in 2 years.
    • You have the budget for 7 fultime (40 hours a week) teammembers (not including yourself) for those 2 years.
      • All members have the neccesary hardware and software to make the game.
      • The members are decent programmers/artists/audio designers.
    • Your focus lies completely on a PC game.
  3. I don't know Spanish,but I guess 'Solo amigos' means something like "visible to friends only". You should have an option for it on steam. Somewhere at the same spot where you can edit the description.

  4. You are pretty close actually. You create a new instance of an emitter and place it at the collision point.

    if (entity:GetKeyValue("name") == "obuz") then
    	local explosion = Emitter:Create() 
    	explosion:SetPosition(position)			  
    end

    After that you can do the respawn of the rocket. Alternatively you can also just create a new instance of the rocket and simply destroy the rocket once it explodes. 

  5. Hi there and welcome to Leadwerks.

     

    For painting vegetation and rocks in the editor you require certain shaders to be set. 

    • leaves the leaves.shader
    • rocks require the groundrocks.shader.

    If you post a screenshot of your rocks material file (and specifically the shader tab) we can see if everything is correct there.

    You also might need to delete the existing generated billboards for the rocks, if you apply new shaders.

    • Upvote 1
  6. I dig the atmosphere. Reminds me of Planet base.

    Could be me but it looks like the rocks are not alligning to the terrain. Are you using the groundrocks shader? 

    Be careful with copyrighted music. Youtube's music algorithm is able to detect music like this and your video can be automatically taken down. A simple mention of the theme song isn't a free pass. A video of mine got taken down once.

    • Upvote 1
  7. Some pseudo code:

    if pickinfo ~= nil then
    	if pickinfo.entity ~= nil and pickinfo.entity:GetKeyValue("name") ~= "" then
    
    		--If there is a lastPickInfo, compare it to the current pickinfo name
    		if(self.lastValidPickinfo ~= nil then
    			if self.lastValidPickinfo.entity:GetKeyValue("name") ~= pickinfo.entity:GetKeyValue("name")) then
    				--Now the pick is different than previous picked obj
    				 self.lastValidPickinfo.script.showObject = false
    			end
    		end
    		
    		self.lastValidPickinfo = pickinfo
    		pickinfo.entity.script.showObject = true
    	end
    end

     

    • Upvote 1
  8. Drawing a static image before a new scene is loaded is fairly easy. An animation or sprite is a little harder to do.

    For a static image

    1. Check if 'loadingScreenActive' bool is true in the game loop. By default it is false, so we continue with the game loop
    2. Lets say you then press F to load a new scene
    3. You set a bool  'startLoading' to true.
    4. At the end of the current frame you check for this startLoading variable. If true, draw image and set the loadingScreenActive to true.
    5. Then in the next frame update, when we check the value of loadingScreenActive again. This time it is true and you call loadmap. Because the engine is drawing an image on screen and loading the new scene halts the process of updating. 
    6. After the loading of the map is done, set the loadingScreenActive variable to false again.
    • Upvote 2
  9. So you have entity A and entity B. You want to place entity B at the position of A right? 

    In a script attached to entity B, make sure you get a reference to entity A. This can be done in numerous ways. One way is by linking it:

     

     

    Once you have a reference to entity A inside the script that is attached on entity B do something like:

    --on entity B
    self.entity:SetPosition(self.entityA:GetPosition(true))

     

    • Upvote 1
  10. I got tricked by this several times.

    --Common variables like strings, numbers and bool
    Script.test1 = "test1" -- Variable has a unique instance per script
    local test2 = "test2"  --Variable is shared between all instances of the script
    test3 = "test3" --Global, used by everone and everything (insert 'your mother..' joke)
    
    --Tables
    Script.table1 = {} --Shared between all instances of the script
    Script.table2 = nil --Declare in start
    
    function Script:Start()
    	self.table2 = {} --Table has a unique instance per script
    end

     

    • Upvote 1
  11. I don't think you will find many articles/tutorials specifically for 2d. A 2.5d sidescroller is certainly doable though.  

     

    The videos below are a little older and use an FPS perspective but the programming concept remains the same.

    For a basic powerbar/healthbar meter

     

    Collecting items. Alternatively you could visit the marble tutorial which also does picking up items.

     

  12. It is a little nitpicking but could you please align the mainarea with the status update header? This is on the main forum layout.

    nitpicking.jpg.98b6f54283988786fe776ced3bba3948.jpg

    Adjusting the class below could do the trick.

    Quote

    .cWidgetContainer[data-widgetArea="header"]{
         margin-top: 0;
    }

    Results in:

    596e04bf74d6d_nitpicking2.thumb.jpg.5128ed348b4d3d1cbcdeb9400f6bced9.jpg

×
×
  • Create New...