Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

AppGameKit Classic Chat / Playing with agk shaders in an small retro dungeon :)

Author
Message
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 14th Feb 2013 01:57 Edited at: 13th May 2013 00:44
Anyone intrested in the Project so have it now moved

http://forum.thegamecreators.com/?m=forum_view&t=205487&b=48
-------------------------------------------------------------------

Latest.


Old.




This is something i have fooled around with to find something that works well on slow mobile devices.
This runs at 44-59 fps on my slow zte skate 800mhz single core and no gpu chip.
So it should run at constant 60 fps on newer android and ios devices.
Everything is done with static shaders to get the illusion of slightly bumpmapping and light fx.
It uses 4 shaders to get the current fx where i keep them as minimal as possible as shaders are very slow on the droid.
Cheers.


This is how it looks without shaders.


Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Ancient Lady
Valued Member
20
Years of Service
User Offline
Joined: 17th Mar 2004
Location: Anchorage, Alaska, USA
Posted: 14th Feb 2013 14:29 Edited at: 14th Feb 2013 14:31
As a long time Myst player, I might suggest that the heads up map in the upper left should only show where the player has actually been.

EDIT: This actually goes back to my playing the Colossal Cave Adventure back in the '70s. It was a text only game and I built the complete map for it from playing (and winning) it.

Cheers,
Ancient Lady
AGK Community Tester and AppGameKit Master
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 14th Feb 2013 20:04 Edited at: 14th Feb 2013 20:05
Quote: "As a long time Myst player, I might suggest that the heads up map in the upper left should only show where the player has actually been."

This project in its early stages and i nead the whole map to edit on the fly and see the culling system
The blue areas marks the cells that should be drawn if you look at the video.
I made some changes today and use an cylinder shape for the lights instead.
Also made the bumpmapping better but it now runs at 30 fps on my slow zte skate.
But i already have plans for an extra feature in the culling system that switches shaders on objects far away.
Bump mapping should only be neaded on objects close to the camera.



Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz

Attachments

Login to view attachments
JimHawkins
14
Years of Service
User Offline
Joined: 26th Jul 2009
Location: Hull - UK
Posted: 14th Feb 2013 22:53
AL - You are in a twisty maze of passageways, all alike...

Bit like producing a working template, then!

-- Jim DO IT FASTER, EASIER AND BETTER WITH AppGameKit FOR PASCAL
baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 14th Feb 2013 23:05
Cliff, this is looking great! I only have one thought. As great as your shader work is, in this case I think the bumpmapping shader is unnecessary and may be using valuable fps. The difference as far as I can tell (and I'm really looking) is minimal. I think if it speeds your game up by more than 10% it's worth dropping. Bumpmapping might be more worthwhile in a game that uses less stylised textures in my opinion.


this.mess = abs(sin(times#))
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 15th Feb 2013 01:56 Edited at: 15th Feb 2013 01:57
Quote: "Bit like producing a working template, then!"

Its a sideproject so i can solve how to implement the shaders properly in to my other editor.
And an dungeon game template at the same time
Shaders are wicked and dangerous on mobiles
Quote: "Cliff, this is looking great! I only have one thought. As great as your shader work is, in this case I think the bumpmapping shader is unnecessary and may be using valuable fps. The difference as far as I can tell (and I'm really looking) is minimal. I think if it speeds your game up by more than 10% it's worth dropping. Bumpmapping might be more worthwhile in a game that uses less stylised textures in my opinion."

As you say the bump mapping shader eats alot of framerates
But the visuals are so much better with them
I have worked on the culling system to switch to faster shaders when the camera is faraway from the segments and worked pretty well so far.
I simply have to fine tune it some more.
I going to consult the shader books i have also as i belive iam doing to much work in my current one?

I also made an pretty fun discovery about my computers framerate and my zte skate

600 fps on computer is 60 on the skate.
310 fps on computer is 31 on the skate.
So i dont nead to test run it so often now as its pretty accurate

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 17th Feb 2013 12:56 Edited at: 17th Feb 2013 12:59
A small update before i go away for about a week

Added a few features and still runs well on mobiles

This is an extremely simple 3d dungeon engine that simply reads an grid map and generates this.

I removed the floor and ceiling bump maps but not sure if i like it bax?

Probably time for a thread in the showcase then also as this have growed during my sick leave more then expected

The engine it self is very simple but give an good visual of having larger depth then it haves.
I have a main floor,cellar and attic to give impression of height.
This means that i can lower and raise the floor and ceiling separately very simple.



Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz

Attachments

Login to view attachments
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 17th Feb 2013 15:59
Uploaded a new video.


Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
DVader
20
Years of Service
User Offline
Joined: 28th Jan 2004
Location:
Posted: 17th Feb 2013 22:17
Hi Cliff. I prefer the new look, the original seemed fuzzy and you couldn't see the lights very well. The new version looks a lot better imo. I'm always impressed with these demo's, as they are beyond my maths skills The game/demo is looking really good as ever!

Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 17th Feb 2013 23:48 Edited at: 17th Feb 2013 23:50
Quote: "I'm always impressed with these demo's, as they are beyond my maths skills "

I dont have math skills
Iam simply trying and trying until something works
Iam very often taking shortcuts on the math part and solve things with sprite collision and such .

Added auto texturing depending on height of the cells.
Its going to be a wolfenstein classic style of gameplay but i wanted a slight more depth in height of the gameplay.

Its all about tricking the user that its more then its actually are

Time for a spunge bath so see you guys in a week.



Iam using my platformer engine art as placeholders

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz

Attachments

Login to view attachments
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 19th Feb 2013 23:47
I've been wondering, is it possible to affect the vertex colour using an image?

Like, say you have a flat dungeon, 1 level, and you had an image that is created with a memblock, then each pixel might represent half a 'block' and the colour is the result of a 2D lightmap calculation. So there would be an array of lights, each pixel is checked for collision with each light source. Then with a shader the dungeon objects would be vertex coloured according to the XZ vertex location.

Engines looking great BTW, just the sort of thing that is kinda lacking on mobile platforms.

I got a fever, and the only prescription, is more memes.
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 20th Feb 2013 00:31 Edited at: 20th Feb 2013 00:50
Quote: "I've been wondering, is it possible to affect the vertex colour using an image?

Like, say you have a flat dungeon, 1 level, and you had an image that is created with a memblock, then each pixel might represent half a 'block' and the colour is the result of a 2D lightmap calculation. So there would be an array of lights, each pixel is checked for collision with each light source. Then with a shader the dungeon objects would be vertex coloured according to the XZ vertex location."

It could work but the lighting would have edges where the light falls off each segment?
If i understand you right so are you talking about an lightmap image in the size of the grid map as an overlay in the same size.
Where we then use memblocks to check the lighting of each segment.
This could easially be done with simply changing the object color
And dont nead to be done in the shaders as i have already made them multiply any light with the objects actual color.

If you look at the mini map so is the technuiqe and how i do it really simple

Vertex coloring is actually alot faster but i wanted softer lighting and to have it draw fast on mobiles.
I could try to look more in to it tomorrow as i just got back from hospital and have alot of pain after the surgery


Each 3d segment is 6 separate plains that can have its own light and color.

Quote: "Engines looking great BTW, just the sort of thing that is kinda lacking on mobile platforms."

Thanks.
I have wanted to do something like this for mobiles for a very long time.

Edited....
Vertex lighting would look like the old classic doom if you remember it?
It have an very blocky shading and lighting.
http://www.mobygames.com/game/sega-32x/doom/screenshots/gameShotId,31660/
Lighting like this can be achived very easy already

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz

Attachments

Login to view attachments
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 20th Feb 2013 01:19
I forgot to ask vanb
Do you have an fast and simple tile based line of sight code ?

Would speed things up alot as i draw unused segments right now

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 20th Feb 2013 15:46
Sorry Cliff, never really bothered much with line of sight - I tend to just use a radius around the camera and update it if the camera moves enough.

I know my next project is not a game, so I'm just thinking about a side project to preserve my sanity and fancy making an old school dungeon crawler - something like Grimrock. So for my needs, I'd probably just have a view cone that updates when the player moves to a different grid location.

I think the person to speak to about line of sight algorithms with speed as the primary concern, is Kevin Picone.


On the lightmapping idea, well what I was thinking is that rather than the image being the same as the map layout - the pixel would line up with the corners of each block, so each side would be blended between the colour of the pixels at each adjoining corner. It's probably asking a lot from AppGameKit shaders, but I know it'd work with standard DBPro shaders.

I got a fever, and the only prescription, is more memes.
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 20th Feb 2013 16:29
Quote: "On the lightmapping idea, well what I was thinking is that rather than the image being the same as the map layout - the pixel would line up with the corners of each block, so each side would be blended between the colour of the pixels at each adjoining corner. It's probably asking a lot from AppGameKit shaders, but I know it'd work with standard DBPro shaders."

Iam not sure i understand wath you mean
But anything is possible with some coding
Quote: "I think the person to speak to about line of sight algorithms with speed as the primary concern, is Kevin Picone."

I found one i have converted to agk
http://forum.thegamecreators.com/?m=forum_view&t=178579&b=6

Quote: "I know my next project is not a game, so I'm just thinking about a side project to preserve my sanity and fancy making an old school dungeon crawler - something like Grimrock. So for my needs, I'd probably just have a view cone that updates when the player moves to a different grid location."

I could send you my code so far but be aware that its a messy prototype that i have planned to clean up later on.
I offer you this as you are a well known coder and forum user since my dbp days

I am still testing alot and many things will change but you would get a feel of waths going on .

And you can see how well it actually plays on low end devices right now.
The only android devices that dont play well are the ones with sandwich that gets a framerate around 35 fps if its an lowend device.

Maybe we could do something together with this.
i focus on shaders and the engine and you fix the rest

You could do the entire rpg engine in 2d with a gridmap and then we simply slide in the 3d renderer when its done

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 20th Feb 2013 18:01
That would be awesome Cliff - I could leave out the lighting etc and concentrate on getting the bones of it together, then see how pretty we can make it. I haven't explained the lightmap idea very well - would probably be better if I make a DBPro demo of it, mimicking what I'd hope the shaders would be able to achieve through vertex colouring.

I do have an alternative idea for lighting if my idea falls flat, blending 3 textures on each object, each texture being a variant with the light source from the left, top, and right... then blending them to suit the light sources in the dungeon. That might end up looking nicer, but with a much higher media burdon.

I got a fever, and the only prescription, is more memes.
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 20th Feb 2013 18:35
I will clean up the code and try to send a first sample to you today

Its very messy right now as many things have its own array until they are tested out to work as they should etc.

I also got alien colonial marines collectors edition for my ps3 today jummy mummy
Have to test it also today !

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 21st Feb 2013 00:31 Edited at: 21st Feb 2013 00:36
Vanb this is the version in your mail
Keep in mind that its rough and in alpha stages.
Dont mind the name as i simply named the project space kitten until i have a better name
The culling neads polish as its a bit slow right now.


Press spacekey to update the 3d map when you do changes.

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 21st Feb 2013 09:11
Cheers Cliff, Hotmail is being stupid, but I'll get a good look at it tonight, will be very interesting to see how it works.

Kitten is a great name for a game engine, you should definitely keep that!

I got a fever, and the only prescription, is more memes.
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 21st Feb 2013 14:07 Edited at: 21st Feb 2013 14:09
No worries vanB

This is only a sneak peek as iam rewritting alot and adding alot of explaining text for you

I will also do 2 differrent main loops as somethings are neaded for editing and some neaded for game experience.

But you will not notice this while editing and playing as you simply switch with the tab key.

But you will see a large differrence on mobile device

Iam also splitting some stuff in to there own agc files for easier editing and fixing errors now when we are two.

The can you simply only post code sample and wath file it is in if you find bugs.

Next update should arrive sometime by friday?

Maybe we use spacekitten as engine name then
Cheers.

Edited....
Iam making the minimap use fixed sprite ids for simplicity in the future.

Iam also adding a typed array called CellLayers that will contain all extra data for the dungeon cells like lights,pillars,smooth corners,floor and ceiling heights.

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 22nd Feb 2013 20:49 Edited at: 22nd Feb 2013 20:59
Have you tested the old vanb?

Ia have rewritten everything alot already if you want the newer files?

I have finished the part where you can switch betwen game mode and editing mode.
Game mode have sliding collision and gravity.
while the editor mode will let you move the camera freely and not cull everything so much so its easier to edit.

Is there any specific editing features you nead?
Iam thinking about an extra texturing feature where you can assign an texture to a specific part of an segment with the mouse.
If it dont have an texture assignes so will it auto texture.
Latest vid.


Edited......
Wath controls should we have also?
Should the player be able to look up and down?
Iam thinking about nes/snes style on screen buttons for control.

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 23rd Feb 2013 00:54
Yeah, sorry I haven't gotten back to you. It's really slick .

I'm thinking though, maybe it's worth making the level editing full screen - as I think it would be pretty cool to have players design their own dungeons, then share them. One thing I find is that the more automation, the better. Perhaps the texturing should be automatic, like a standard wall, wall details, roof, and floor - then say the player goes further down a dungeon with each level, a texture get's changed. So, when you go to the next level, maybe the floor texture switches to one with more wear and tear, walls become darker and spookier - maybe ending up with a crypt texture with skulls imbedded (as is tradition). I guess what I'm imagining is a kinda 3D roguelike game, each level having an entrance and exit to the level below. Enemies get nastier as the player descends, ornaments and lights get more sinister - then maybe the last level is just an open space, with a end boss fight.

Does that sound anything like what you have in mind?

I think it would be cool to keep the pixelated look, even have flat sprites for enemies like Doom, try and make it the sort of game you can pick up for a spare 10 minutes to complete a level. I think flat, pixelated plains would keep the look consistant - and having tons and tons of weak enemies to kill is great fun, like swarms of bats flying around, that sort of thing. It would also ensure that it can run on weaker devices.
Loot is always very important in these sorts of game, so sprites would make it easy to have a lot of different treasure, weapons - then randomize the drops so each game feels a bit different. I like the top down game Binding of Isaac, that has a lot of different items and weapon upgrades that are completely random, each game ends up differently depending on what loot you find, it really does make, what would be a repetitive game kinda unique instead.

Having NES style controls sounds good, mobile RPG's always seem to have controls that are just too complex, esp Minecraft. Maybe have movement controls on the left, and turning on the right - then the jump and attack buttons above the turning controls. I don't think it needs to be able to look up and down for the game at least, I mean Heretic and Doom etc were fine without it.

Your clearly making real progress with it, I'll see about making some test sprites for enemies and stuff. What would be cool is if you can add movable plains, for enemies, items etc - so they have the same lighting as the level segments. If the moving plain sprites can be assigned to an 'entity' array, I can assign that to an enemy for example. Also, if the map format can have an extra integer variable, for placing items and enemies, that would be great. Doing this would be a good way to delegate the code I think, so I could update a source file with the game logic, enemy and item handling etc and it won't disrupt your work with the engine and editor.

I have a retro sprite editor that I made a while ago, will be very handy I think so I'll see what I can come up with. Hmmm... maybe it would be an idea to have it support bump map generation as well, try and smooth out media creation as much as possible. Currently it only supports 64x64 sprites, so it's kinda ideal, I like the resolution on the walls right now. I'll tidy it up next week and send you a copy - if you like 64x64 retro sprites with controlled colour palettes, then you'll love it.

Anyway that's about the longest post I've written in years! - sorry to ramble, should really email you instead. Thanks for putting in so much work already.

I got a fever, and the only prescription, is more memes.
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 23rd Feb 2013 01:15 Edited at: 23rd Feb 2013 02:33
Sounds great van
I have already added a array to place objects like pillars,crates and barrels.
This can easially be added to also contain pickups and enemys.

I will start working on some moving entitys and see how it works.

I will add an entity array so you can add events to when the player collides with pickups and enemys.

Here is todays additions to the objects.

Maybe you could move this thread to the agk showcase section now ?



Edit .......
Maybe we should have the player to bash barrels and crates to search for gold and weapons ?
Then could we simply make and random pickup generator for when one of them are bashed

Its always better with an video


Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz

Attachments

Login to view attachments
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 23rd Feb 2013 14:10
Van b iam a bit slow in the head but i belive i will keep the enemys completely on its own.

Here is the array so far.



This is how it would look when creating them.


This way so will i keep all the enemy events and actions in there own loops so we could optimeze it for best performance on mobiles.

I whas thinking of using this to identify the various enemys and apply right ai and awarenes to the player actions.

Entity_Enemy[Enemy_Count].Class="Bat"

So when we create an boss we give it the tag boss and i could have its entire own loop of events

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 23rd Feb 2013 16:42
That's perfect Cliff, that way the enemies can have more unique variations as well - like scaling up the health of an enemy depending on the player level. Enemies could even be made to follow enemies with a higher 'difficulty', giving automatic swarming.

Like the idea of smashable containers, will be great fun to have random loot and treasure fly out.

I will see about getting a test enemy to you tonight.

I got a fever, and the only prescription, is more memes.
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 23rd Feb 2013 17:03
Also, I'd be happy to move the thread to the showcase - but we are kinda de-railing it - maybe it would be better to get some enemies and weapons in place, and start a showcase thread for it next week, then reclaim this thread for your shader discussions.

I got a fever, and the only prescription, is more memes.
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 23rd Feb 2013 21:50 Edited at: 23rd Feb 2013 21:51
This is how the enemy.agc looks now for you to play with
So simply add ai and attack if you want.



We put everything that have with the enemys here in this file for simple updating.

I will try to make an simple animation and how we should handle animations before i send it to you.

Wath do you say about a 512x512 image for an entire levels enemys?
That would be 64 frames and we set the amount of differrent enemys to 4 per level so would that be 16 frames of animation for attacking,walking,flying and dying.

We are going to have a boss level where there would be a single huge boss to fight that could use all the frames.

These files are zipped and mailed to you to look at.
Bare in mind that iam still early in devlopment

Edit ...
simply use the crate image for the time being until the image files are done.
So we can add some moving enemys.

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 24th Feb 2013 00:28
I'm thinking that 8 directions of movement, plus idle, attack and death, with the attack animation only facing the player.

So 5 frames for a walking loop and 1 idle frame per direction, then that leaves 16 frames for attack and death - maybe add in hurt as well - how about:

5 frame walking loop X 8 directions
1 frame idle loop X 8 directions
5 frame attack anim
5 frame hurt anim
5 frame death anim
1 frame dead

I think with 8 directions it'll look pretty cool, especially if we use line of sight, so you can see enemies walk past. Personally I think I'd play this a bit stealthily, creeping round corners, and we could add a damage bonus for if the enemy isn't facing the player.

I'm wondering if we should just randomize the enemies, based on the players experience. Like, in each level we could have the 4 enemies, but make them increase in difficulty, so there might be 10 bats, 4 gnomes, 2 skeletons, and 1 ogre - we just mix and match the enemies, let them roam the dungeon until the start location is clear, then the player spawns. That would make things even more random - but as long as we keep the thing balanced to the players level, it should be good fun.

I'll get the new version on my laptop (do most of my AppGameKit stuff on that), and get it setup to test enemy sprites.

I got a fever, and the only prescription, is more memes.
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 24th Feb 2013 02:14 Edited at: 24th Feb 2013 02:20
Best you make an basic enemy we can expand with all the other features later on

So our current goal is an enemy that walks around that the player can watch in 8 angles of direction

Put everything in the enemy agc so can we adjust where the functions should be later

I have an basic idea for a simple detection of wath of the 8 angles is facing the player.

I could try to put it up tomorrow.

The idea is an dummy object you set to the objects angle then use move object local z in all the directions and check wath distance is the shortest.
And there we have the facing of the enemy

I think we have to put all our efforts in to the basic engine before we write the game logic

But be sure to keep all your game logic ideas stashed for safe keeping when we are going to add it in to the game

As soon as we have an single enemy that works as it should and the pickups logic so could we start adding game logic like random enemys etc.

Edited......
I forget to add the stuff for the pickups
I will try to add them tomorrow so you also can start with the pickups logic
Sorry.

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 24th Feb 2013 23:52
Van b have you made an 3d sprite function?
Iam wondering as i made this today
I only nead to find the bugg that crashes the app when exiting and a 3d sprite is on screen
I think it gets stuck in an loop somewhere?

I found the weird culling bug after i uploded the vid
I had forgotten to reset 2 values when changing the map.

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 25th Feb 2013 00:13 Edited at: 25th Feb 2013 08:42
That works great Cliff! - awesome work.

I've been making some changes to my sprite editor, getting it setup for making enemies and wall/floor textures. I should have some enemy sprites tonight - sorry it's taking so long.

I got a fever, and the only prescription, is more memes.
MikeMax
AGK Academic Backer
12
Years of Service
User Offline
Joined: 13th Dec 2011
Location: Paris
Posted: 25th Feb 2013 01:12
i love doom ^^
baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 25th Feb 2013 08:06
Really cool


this.mess = abs(sin(times#))
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 25th Feb 2013 16:45
Quote: "I've been making some changes to my sprite editor, getting it setup for making enemies and wall/floor textures. I should have some enemy sprites tonight - sorry it's taking so long."

No worries as iam like heinz ketchup
Sometimes do i do huge amounts of work in an short time and then i go in to sleep mode and are very slow
We are doing this for fun so dont feel any preassure.
Its fun to have you onboard.
Any screens of the editor i could see ?
I like videos and images and not so much plain text

Quote: "i love doom ^^"

I got the classic collection of doom classic 1-2 and all data disks on psn and also have doom 1 and ultimate doom on ps1
I even have a few windows version on original disks somewhere?
So i also love doom
Quote: "Really cool "

Thanks bax i will try to make it an code snippet and publish it to the usefull functions thread or your snippets thread later.

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 25th Feb 2013 18:13
Ditto Cliff, the annoying thing for me is that I can see this being a really good and fun game, and can't wait to get stuck in properly.
The sprite editor can do with better file selection, once I get that in place I'll send you a copy. I started a bat enemy and should have that finished soon.

I got a fever, and the only prescription, is more memes.
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 25th Feb 2013 21:53
I found the sprite bugg that crashed the exiting of the app

You will probably have to draw alot of the sprites as i seam to be swamped with coding right now
I started a basic roaming code that we can expand later and a random placement of enemys instead placing them manually in the editor.

You wanted random enemy placement and type that we easially can increase depending on player level and dungeon depth.

Iam still thinking about a simple animation method as the images will be huge if we keep them to a single image even for a basic enemy.

I think we should accept up to 12-16 drawcalls as its still playable with that.

Then could i simply have each frame and all its angles in a single image and swap image for next frame.
Then will the enemy still only use one drawcall

The simple explanation is that we create an directory called bat.
There do we have all the images for its frames and angles.
And we could call each frame by number like 1.png and 12.png etc
Would be very easy to do some code for and the enemys can have better quality when neaded.

Looking forward to the editor

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 28th Feb 2013 13:04
first steps to a random roam ai for the enemys.
It whas a terrible path to get there .
Iam working on random states where they stop and guard also.


This ai uses no pathfinding but simply moves in an random angle until it have an obstacle in front and randomly turns right or left until its free.
Stops in front of the player as its then it supposed to play attack animations and add damage to the player.
The attack state will be pathfinded so the follow the player and calls for help by nearby enemys.

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 28th Feb 2013 23:43
added animation to the 3d sprites.



Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 1st Mar 2013 00:02
Smothered in awesome

I got a fever, and the only prescription, is more memes.
baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 1st Mar 2013 13:18
That's just too cool Cliff


this.mess = abs(sin(times#))
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 1st Mar 2013 14:20
Thanks guys

Van B and i decided to scrapp bumpmapping for performance and a full out retro look

The animated stuff sucks up a bit performance but i should be able to fix that !

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 1st Mar 2013 15:28
Actually Cliff - would it be possible to use a single image for the enemies? - like maybe have a special shader for the enemies, pass a tile X and Y to it to specify the UV coords to use, like setting a sprites frame.

I think some of the performance drain might be the changing images on the enemy plains - this is always a bottleneck - so if we could avoid that, then I think you'll see a bit of an improvement. Plus - would be really nice to just load a single image for an enemy I think.

I got a fever, and the only prescription, is more memes.
baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 1st Mar 2013 16:21
I don't think there are any UV commands for 3D objects just yet, you could create objects with UV offsets applied but then you would need to either create/swap for a new object each time the frame changes... not ideal. The best way might be to try using an atlas image and loadSubImage? Might speed things up a little...


this.mess = abs(sin(times#))
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 1st Mar 2013 16:37
Hmmmmm that sucks. Shame the 3D command set is still quite limited. Hopefully Cliff can find some optimisations so this will run on practically any old tablet.

I got a fever, and the only prescription, is more memes.
baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 1st Mar 2013 16:43
If the command set weren't limited would cliff have even started this project? It's a chicken and egg story for sure


this.mess = abs(sin(times#))
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 1st Mar 2013 17:33
Probably not, he does like a challenge. Now, maybe we should start a wish list for things to get added to AppGameKit, first off - the ability to modify UV coordinates on plains - it's a no brainer, iOS platforms especially suffer when changing texture allocations, it'd allow for a lot of optimisation.

I got a fever, and the only prescription, is more memes.
Kobaltic
12
Years of Service
User Offline
Joined: 24th Jan 2012
Location: PA, USA
Posted: 1st Mar 2013 17:51
IS this project still using raycasting to make the walls and stuff or is there any 3d objects in it at all?
Digital Awakening
AGK Developer
21
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Sweden
Posted: 1st Mar 2013 20:33
This is looking really cool Cliff. Love the walking skeletons

This reminds me of the good old days of playing Marathon. But with the limited vision range this looks far scarier.

Not the biggest fan of FPS games on touch screens though. Once you got a sword or something else too kill those skeletons with I wouldn't mind trying this on PC


Demo 3 is out now!
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 1st Mar 2013 22:30
VAN B.
The object actually shouldt change image so we get to much drain?
I use an sub image and simply tells the object to use a new uv coord of that image as an texture.
My bones character is a single image of frames like an sprite sheet
loadsubimage simply changes the uv data.
You will see all my changes this weekend when i send you the new batch
This is nothing we want to do in the shaders as all objects would nead its own shader i can pass these uv data to.
Best option is that agk have uv data to send the shader as its actually already there in the atlas image command for textures.
They have simply not made it an command for it self

Quote: "If the command set weren't limited would cliff have even started this project? It's a chicken and egg story for sure "

You know me to well by now

Quote: "IS this project still using raycasting to make the walls and stuff or is there any 3d objects in it at all? "

Its all pure 3d that i make look like an old raycaster

Quote: "This is looking really cool Cliff. Love the walking skeletons

This reminds me of the good old days of playing Marathon. But with the limited vision range this looks far scarier.

Not the biggest fan of FPS games on touch screens though. Once you got a sword or something else too kill those skeletons with I wouldn't mind trying this on PC "

Thanks da
I think you will like this as its all about crosbows,magic and swords.
And very simplistic controls like an gameboy

Android 2.3 , ZTE Skate , 480x800 , 800 mhz , Samsung Galaxy Y , 240x320 , 832 mhz , Sony ericson arc 480x854 , 1 ghz
Android 4.0 , Dmtech 3g 9738B , 1024x768 , 9.7 inches , 1.2 ghz
The Zoq2
14
Years of Service
User Offline
Joined: 4th Nov 2009
Location: Linköping, Sweden
Posted: 1st Mar 2013 22:37
Quote: "Its all pure 3d that i make look like an old raycaster"


Cliff - uses 2d to get a 3d effect, uses 3d to create a 2d effect

Login to post a reply

Server time is: 2024-05-06 22:07:42
Your offset time is: 2024-05-06 22:07:42