The Island [Survival Game] - new updates

Just Unwrapp in Smart UV project…

I like the axe model. Maybe you could make the stone a little sharper looking and also the stick is way too short right now. The poly count is just perfect. Hope you´ll get the unwrapping done, but smart uv project should work. Also please try to use only one texture for the whole model. But nice start thx.

already tried it with smart uv project :confused:
i will make the changes for the model now and then i will try to unwrap it again

@brs: sehr gutes Spiel, soweit ich das bisher erkennen kann.
Wenn du mir was schickst kann ich versuchen, das gesannte material zu texturieren.
und wenn du mir Items nennst, kann ich dafür Meshs modellieren. Freu mich auf das Spiel. :slight_smile:

Klar hab schon eine Liste zusammengestellt mit items dies noch braucht. Schau mal in früheren posts vorbei.

So mein Mac is wieder abgestürzt und jetz in der Reparatur heißt ich werd wahrscheinlich erstmal nich blendern können :frowning: das mit der axt wird also eher nichts :frowning: wenn mein Mac wieder funzt und noch bedarf is probier ich gern wider mit was anderem :frowning: sorry


new updates:
Craftable bed, inclusive sleeping
fire burning down, and upgrading fire.

Also, playing around with log placement to build stuff later. Having some kind of Physic Lod, which makes far away objects no collision, would be awesome. Any tipps on how to improve the rasterizer for something like that?


Looks good! I might like to make survival, but bedore that I might want some tutorials from you:D

very cool! But i think the fire is to transparent

Actually the fire isn´t transparent at all, it´s just interferring with the ambient occlusion filter. I don´t know how to fix this for now.

He meant the flame:D

I know, that´s what I meant too. :stuck_out_tongue:


import bge
from mathutils import Vector


def main():


    cont = bge.logic.getCurrentController()
    own = cont.owner
    print(own.name+" is attempting assembly")
    offset = Vector([0,5,0])
    
    offset = own.worldPosition+(own.worldOrientation*offset)
    
    Ray = own.rayCast(offset,own.worldPosition,0,'',1,1,0)
    
    ## if you hit a target
    print(own['Trigger'])
   
    if Ray[0] !=None and own['Trigger']==True and own['Assembled']==False:
        own['Holding']="Empty"
        bge.render.drawLine(own.worldPosition,Ray[1],(1,0,0))
        
        ##display hitpoint
        own['HitPos'] = str(Ray[1])
        
        
        ## attempting to localize hit point to hit object
        Diff = Ray[0].worldPosition-Ray[1]
        Diff = Ray[0].worldOrientation.inverted()*Diff
        ## this will be used to then check to see if this type of part
        ## can go at this location and that the jack in unoccupied and 
        ## that the unit the part is hooking to is friendly
        Diff*=-1
        own['localHit']=str(Diff)
        index=0
        
        for Rules in Ray[0]['Rules']:
            
            Jack = Vector(Ray[0]['Rules'][index])
            
            Diff2 = Diff-Jack
            
            if Diff2.magnitude <.25:
                if Ray[0]['Jacks'][index]==False:
                    own.setParent(Ray[0],1,1)
                    own.worldPosition=Ray[0].worldPosition+(Ray[0].worldOrientation*Jack)
                    own.setParent(Ray[0],1,0)
                    
                    own.applyMovement(Ray[2]*.25,0)
                    own.alignAxisToVect(Vector(Ray[2]*-1),1,1)
                    own.alignAxisToVect(Ray[0].worldOrientation.col[2],2,1)
                    own['Assembled']=True
                    own['parent']=Ray[0]
                    Ray[0]['Child']=own
                    Ray[0]['Jacks'][index]=True
                    Ray[0]['Out']=str(Ray[0]['Jacks'])
                    own['Hook']=Rules
                       
            index+=1    
    
main()



Any tutorial or short description on how to set it up? For now I use this with a cube:

import bge

over = bge.logic.getCurrentController().sensors[‘over’]
move = bge.logic.getCurrentController().sensors[‘move’]

if over.positive and move.positive:
bge.logic.getCurrentScene().objects[‘cross’].position = over.hitPosition

the object you are hitting needs to have a property added to it called Rules, that is the jack location vectors


import bge




def main():
    print('Set Rules Triggered')
    cont = bge.logic.getCurrentController()
    steer = cont.actuators['Steering']
    
    own = cont.owner
    steer.target=own.children['Contz']
    own['Rules'] = [[0,-1,0],[0,1,0],[-1,0,0],[1,0,0],[0,0,1],[0,0,-1]]
    own['Jacks'] = [False,False,False,False,False,False]
    
    
main()




always(one time)--------------set rules in jack object

and in assembly object, if you are using it in your hand, you just need a way to trigger attemp assembly,

I recommend a timer

if keypress ---------and----------time=1
time=0-------------/

if time=1---------assembly script

if time min 1 max 29--------and-------add 1 to time

if time = 29-------------and-------time =0

here is a file that uses it , with less other stuff, (not super simple either though)

Attachments

WrectifiedAssemblies2V.blend (566 KB)


Made a spear and some other stuff.

@BPR: did you make something yet?

The spear mechanics are a bit problematic, does anyone have a tipp how to create nice trajectory?

Did you try to adjust the elasticity of the ground and the speer, maybe friction too?

http://s2.postimage.org/p3gne5t0/yoyo67.gif

Hah, hah, hah…:smiley: