village update 3( large pics)
Community Forums/Showcase/village update 3( large pics)
| ||
Just thought I would show my progress on my vllage level. Done a lot of re doing stuff, new textures, trying new things. Even got the lightmapping in there.the character is lightmapped too, but the version I have shown here is not the best one I did. needs work still. anyway.. back to it ![]() ![]() ![]() ![]() |
| ||
That's beautiful! That masked Texture looks pretty soft, what resolution did you use for that? The Leafs of the Trees look alpha-mapped - didn't you have z-order troubles? I decided to use mask mapped for the leaf, using a 512^2 Texture. I am looking forward to see a release of this project. |
| ||
"f2: fart"? Looking forward to playing this! ;) |
| ||
hmm, its not really a game right now, although if anyone wants to contribute something in terms of gameplay that would be cool. At present its purely a graphics demo to send to employers yeh , I had problems with the alphas in that when you look at another aplha through an existing aplha, there are z order problems. I had to take out my phone boxes cause of this. All the textures are 128x128 per square apart from pearman who is 512x512. lightmap is 1024x1024 |
| ||
Looking great Ruz, nice work :) |
| ||
Yeah, some really nice screenshots - good work ! Perhapst you should add some dirt and scratches to youre textures . Right now they look too "clean" . Is the level a single mesh ? Try to load the trees and all alpha stuff seperately. What about a little demo ? Bolo Loco |
| ||
Bobo_Loco,the village is one big mesh, the trees/accessories are all instances.The carts have their own lightmaps(128x128) hmm, the textures are meant to look clean, almost cartoony, i don't like too much photorealism. I like sickenly cute things,he he and cheers caff,jfk pleased you like it. i got some more reference today, with my digi cam, so i can improve it more Foppy, the f2 fart thing was just me doing voice tests. i had soemone do lots of voices for pearman. I have a nice music track to go with it too |
| ||
I think the textures looks great. Are you going to add some shadow for the pear headed dude ? At the moment, it kinda looks as if hes gliding/floating. |
| ||
cheers,skn3[ac] yeah, I don't know how to do player shadows. looks a bit complicated. Two things i am struggling with are the camera and the player shadow. i think now i have done a nice walk cycle I will concentrate on sorting out the rest of the animations, like run,turn etc. has anyone got any suggestions in terms of gameplay. I like the the collecting stuff games, like rings or gold coins etc, would that be really hard to do? |
| ||
sswift has a nice fast shadow system for purchase. Collection of stuff wouldn't be to hard, unless you want a sophesticated inventory like Diablo. For mario style coin number- star number stuff, it's pretty easy. define a type with two fields "mesh" and "typ$". Then you might want to create a file format that is simply somthing like "obj",X,Y,Z,XS,YS,ZS to store object positions. Finally, in game update the objects with a For a=Each type...Next loop that updates object movements(depends on typ$), like rotation etc, then check if entitydistance to player is less than some value. In the case that the object is close, delete the mesh and type, and increment your counter. |
| ||
Collecting stuff is easy. You could also combine it with some Keys and Locks aso. This village is looking very much like a mysterious Adventure Type Game to me. As for the Telephon Cabs you could use Texture Flag 4 instead of 2. |
| ||
Yeah I was learning types about 2 weeks ago bot builder then i sterted back in to the graphics. I suppose it easier for me to do graphics than programming, but will try again to learn some more stuff.I fear every thing but the ,most simple stuff is beyond me right now I agree Jfk its kind of an adventure type level, just have to think of a really good gameplay idea, thats not too hard to program. Right now its walk round and around till pearman drops dead. I fear flag 4 is no good jfk, i wanted a subtle glass effect for the phone box, thats why alphas would be better than masking, but the phone was a bit crap anyway, needs redoing |
| ||
one thing bot builder, isn't it better to have a 'collision' with the pick up( coin or ring) rather than how close it is. So if pearman colides with gold coin, gold coin disappears and counter increases by one( or something) just wondered really, you obviously know a lot more than me I will start reading the tuts again now he he |
| ||
hmm. well, as you are still a noob(at least you can model and do textures), you probably don't know of the evil problems of the collision system ;) . 1)Collisions when you don't want to ie initial positioning of object 2)only sphere-stuff collisions 3)no "do nothing, just detect" collisions 4)no moving polygon collisions ie. sphere-polygon with the polygon moving. anywho, the blitz collision is GREAT. fast and easy to setup. its just these evil minor problems. So, I would recommend the entitydistance function. it's not hard to use at all. I just decided to code up an example cause I was a little bored. ;by bot builder Type bonus Field mesh, radius, typ$, info End Type Dim keys_had(100) Function updatebonuses() For b.bonus = Each bonus Select b\typ$ Case "coin" TurnEntity b\mesh,0,1,0 Case "key " TurnEntity b\mesh,0,1.5,0 PositionEntity b\mesh,EntityX(b\mesh,1),EntityY(b\mesh,1)+Sin((MilliSecs() Mod 360)*2)*.5,EntityZ(b\mesh,1) ;give it a bouncey motion tweak the 2 and the .5 for different rates/amplitudes End Select If EntityDistance(player,b\mesh)<b\radius+player_radius Then FreeEntity b\mesh ;you could just hideentity Delete b.bonus Select b\typ$ Case "coin" coin_count=coin_count+1 ;global variable Case "key " keys_had(keys_count)=info ;An array of the keys had stretching from 0 to key_count-1. The keys could be somthing like 1=red 2=green etc. key_count=key_count+1 ;global variable Case "ammo" player_ammo=player_ammo+info ;player ammo is a global variable. info holds the amount of ammo given. End Select EndIf Next End Function |
| ||
dohh still looks complicated to me Ahh well you needn't be that clever to be an artist anyway. i wil try and get this working in my level and get back to you. man I must do this, not being able to code is really pissing me off |
| ||
looks excellent, just like a bought one! :) |
| ||
genetic testing to save stupid people?. I think we should have more stupid people in the world.I saw this kid who was the combination of two genius(s), man he looked like nothing on earth.very brainy, but jeez.he could have been screened out really Rich diversity in the gene pool protects from such things as inherent madness and addiction to potato based snacks. But I am pleased you like the village |
| ||
I made it over complicated for fun. say, you had just coins.;by bot builder Type bonus Field mesh,radius End Type Global coin_count Dim keys_had(100) Function updatebonuses() For b.bonus = Each bonus TurnEntity b\mesh,0,1,0 ;give it some movement, let the player know it's a collectible If EntityDistance(player,b\mesh)<b\radius+player_radius Then ;when the distance is less than the player radius plus the collectible radius(max distance) FreeEntity b\mesh ;you could just use hideentity b\mesh, and skip the delete type Delete b.bonus coin_count=coin_count+1 ;global variable EndIf Next End Function I took out the fields relating to allowing object specifics, and took the whole select case system out, as we know it's just coins. If this is to complex, read the tuts, oh please read the tuts. |
| ||
ok i will ask more simply. I want a place holder for the coin ie a sphere. where exactly in the code do I create it b\mesh=CreateSphere() that was all I was stuck on .Player is already created/laoded , so thats not a prob |
| ||
ahhghh, programming makes we want to weep.I am going back to do soem more graphics on my level |
| ||
Looks good. Very clean and solid-looking, and appears to be nicely 'explorable' for want of a better word. |
| ||
Ruz - I never use Types and People usually blame for this. However, you could also do this using an Array. You would then have the Entity Handles stored in an Array. This would be veryy simple if you have stored the POsitions of the coins in a file like this: 3.145 ;x 12.3 ;y 1.7 ;z 25.44 ;x 12.8 ;y 33.4 ;z ... and so on you could then simply read the file: dim coin(10000) ; now we waste 40000 Bytes - hope this will not be out of memory :) count=0 re=readfile("coincoords.dta") while eof(re)=0 x#=readline(re) y#=readline(re) z#=readline(re) coin(count)=loadmesh("coin.3ds") positionentity coin(count),x,y,z count=count+1 wend closefile re ... ; and then in the main loop ... For i=0 to count-1 if coin(i)<>0 ; is it still existing? if entitydistance(player,coin(i))<2.25 score=score+100 freeentity coin(i) coin(i)=0 endif endif next ... It's not the way that I don't understand Types. For me it's just the way that I prefere to use straight indexes instead of "For each" Things because it's about ten times faster to access a Variable by it's index. However you do it, it's a good idea to write a modified Version of the engine to walk around and "drop" things, coins or whatever you want. After some time you can then save their Coordinates to a file in a format like I described above. For my Editor I made a Fileselector with a Mesh and Sound Preview Mode, so I can first watch a Mesh before I load it. Plus Copy/Paste things aso. |
| ||
I really simplifed this to match what was learning in the basic tuts and came up with this, 'my' first piece of code which actually works( manily with your help he he) Dim coin (10) coin(1)= CreateSphere () PositionEntity coin(1),-10,-3,20 coin(2)=CreateSphere () PositionEntity coin(2),-10,-3,30 coin(3)= CreateSphere () PositionEntity coin(3),-10,-3,40 and in the main loop For i=0 To 10 If coin(i)<>0 ; is it still existing? If EntityDistance(player,coin(i))<2.25 score=score+1 HideEntity coin(i) coin(i)=0 EndIf EndIf Next ;and after renderworld Text 10,20,"score: "+score this works man. can't believe it Touch the coin, it disappears, the score increases by one It would be good now to have something happen when you reach say a score of 3 ie a sound/special effect plays. |
| ||
; Assign a global variable for the sound Global sndSuccess ; Load the sound file into memory sndSuccess=Loadsound("sounds/success.wav") ; Play the sound when coins=3 if coins=3 then PlaySound sndPlayerDie |
| ||
thanks botbuilder, after I posted I realised it was fairly easy.I am keeping your other code saved so i can refer to when i am more advanced. hey dying is not much of a reward for collecting 3 coins Shouldn't that last line read if coins=3 then PlaySound sndsuccess I had a few probs loading a custom mesh for the coin, but did it like this. it was mainly syntax problems i was having coin(1)=LoadMesh("models\diamond.b3d") ScaleEntity coin(1), .1,.1,.1 PositionEntity coin(1),-10,-3,0 coin(2)=CopyEntity (coin(1)) PositionEntity coin(1),-10,-3,20 coin(3)=CopyEntity (coin(1)) PositionEntity coin(3),10,-3,30 The game could be as simple as you have to collect all the diamonds/coins within a set time or you die. not very exciting or advnced , but a good start for me |
| ||
Sometimes the simple Ideas are the best ideas. |
| ||
yeah I think have to start simple or I won't start at all. |
| ||
Those shots look fine!!!! |
| ||
thanks Orig_Loki. This level actually started out as an unreal map for a world war two mod called 'sturm'. it has undergone lots of changes since then. the mod 'pearman' , which this was for, appeared on the cd cover of pc gamer last year, got review of 62 I think it was. it wasn't great though, thats why i decided to move it to the blitz engine. I have all the weapons/characters player arms etc all done.just needs a coder to get involved really. if its to be anything more than than a graphics demo |
| ||
62 in Pc Gamer? That's good! Usually the Mags rate Indy Developers by 10 or 20. |
| ||
It ended up being just a DM clone after the intention of it being a total conversion. i just couldn't get the coders involved. Pearman was classed a bit 'weird' by some, although the guy from pc gamer was impressed by it, lots of people thought it stank he he |