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 / Lemmings Remake

Author
Message
puzzler2018
User Banned
Posted: 7th Dec 2018 22:48
First Concept for land destroyment





puzzler2018
User Banned
Posted: 8th Dec 2018 11:15
Ok here we go..

Concept 2



Works flawlessly
puzzler2018
User Banned
Posted: 8th Dec 2018 15:10
Ive cracked on hard with this today



Hope you all like so far,

Got digging and building in place

I will do more Action for each lemm in a bit

Ortu
DBPro Master
11
Years of Service
Recently Online
Joined: 21st Nov 2007
Location: Austin, TX
Posted: 8th Dec 2018 16:15
Love lemmings, cool project!
http://games.joshkirklin.com/sulium

A single player RPG featuring a branching, player driven storyline of meaningful choices and multiple endings alongside challenging active combat and intelligent AI.
puzzler2018
User Banned
Posted: 8th Dec 2018 18:58
Thanks - it will be an interesting remake

I have now added a fade to the next level

Just a screen fade test really

Press L


DavidAGK
5
Years of Service
User Offline
Joined: 1st Jan 2014
Location:
Posted: 8th Dec 2018 20:20
Dead impressed! Not sure how I would tackle this type of game with all the pixel destruction etc!
Using Tier 1 AppGameKit V2
Started coding with AMOS (Thanks Francois Lionet)
puzzler2018
User Banned
Posted: 8th Dec 2018 20:31 Edited at: 8th Dec 2018 20:32
I just used an array of blocks with a map size say 200x200 values and a pixel size of 10 so the drawing command will make nice 10x10 squares


0 - empty space
1 - ground
2 - home area
3 - entry area
4 - an obsticle in the path
5 - a building block where lemmings would start walking up it
etc
etc

and those blocks depending on what value was given would display a pixel

To then destruct - we just get the lemmings coordinate in the array and change the block values surrounding the player to 0 (empty space)

and will then redraw each sync those new values
blink0k
AGK Developer
Gold Codemaster
6
Years of Service
User Offline
Joined: 22nd Feb 2013
Location: the land of oz
Posted: 8th Dec 2018 21:03
Looking good puzzle dude.
fubarpk
Moderator
14
Years of Service
Recently Online
Joined: 11th Jan 2005
Location: Adelaide
Posted: 8th Dec 2018 22:27
Looks good
fubar
puzzler2018
User Banned
Posted: 8th Dec 2018 22:27 Edited at: 8th Dec 2018 22:30
Thanks

Having a worldsizex to what ever we want will allow us to move around on the X direction
and
having a worldsizey of 100 seems to do the trick




Tommorrow i will sort

- FPS out for larger X maps
- Sprites to look and feel like something
- Fine tuning the Actions of each lemm
- more Actions functions
puzzler2018
User Banned
Posted: 9th Dec 2018 11:01
I have now a scrolliing map - the world size X direction is 1024

The view port where you only want to see is a size of 100 (so only 100 pixels are viewed) - FPS looks ok

if you move mouse over to the left or right side of the screen - it should scroll that way changing the view port data with that offset

Added a few obsticles for bigger harder levels



Because of the way i did the view port stuff, the collisions for the little lemms is off, so i will correct this

Catch up soon
puzzler2018
User Banned
Posted: 9th Dec 2018 14:04
I have now implemented the blocks structure to actual image

The image size should be 1024 x 70



Press left or right cursor to move side to side - or move mouse to the left or right side of the screen

Use the attached image to test


Catch up soon wih the digging and building on this style

Attachments

Login to view attachments
chafari
Valued Member
12
Years of Service
User Offline
Joined: 2nd May 2006
Location: Canary Islands
Posted: 9th Dec 2018 14:32
You are on the way !
I'm not a grumpy grandpa
puzzler2018
User Banned
Posted: 9th Dec 2018 19:42
Explosions work in a fashion and creates a surround borough of empty spaces, creating the illusion of explosing.

Catch up later in week with more after more testing, collision work and more actions.


Attachments

Login to view attachments
Cliff Mellangard 3DEGS
Developer
13
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 9th Dec 2018 20:30 Edited at: 9th Dec 2018 20:31
Love lemmings and have it on megadrive/genesis and psx

I had plans once on something lemmings but other things got in the way..
Only remember that i had issues with painting nice looking landscape with the engine.
But should work with the consept i developed for goork so its easy to paint it all with tiles but is small blocks to detect.


Its nothing i will try anytime near
Dont have the time...
puzzler2018
User Banned
Posted: 9th Dec 2018 20:52
Thanks Cliff for your comments

Yes - i feel the landscapes will require time to create beuatiful sceneries for this style

and i willl ltry your product in due course to create the lemming sprites too.

I was aiming for 2019 to create a game once a month or every 2 month to have a fully functional Spectrum/Amiga style remake for 2019

Aiming to then provide TGC the code and stuff for implentation of the Games Collections

One day i may release one. but just loving the creating and helping others
puzzler2018
User Banned
Posted: 10th Dec 2018 18:56
Oh goodness gracious me !!! -

Of the amount of time ive learnt AppGameKit, the pixel removal is really quiet simpler than i have tried before.

Try this



Use the 640x480 test pic and keep hold of the left mouse button. This is just a test of where a lemming would be and exploded for example

Attachments

Login to view attachments
puzzler2018
User Banned
Posted: 10th Dec 2018 19:19 Edited at: 10th Dec 2018 19:20
We cannot have a set pixel color without a getpixelcolor to be to identify one

The lemming can move in black space makecolor(0,0,0)



Phew - I can now crack on without getting my head tied in knots thinking of the old way

Attachments

Login to view attachments
puzzler2018
User Banned
Posted: 10th Dec 2018 19:34



MAGIC!!!!!!

Attachments

Login to view attachments
fubarpk
Moderator
14
Years of Service
Recently Online
Joined: 11th Jan 2005
Location: Adelaide
Posted: 10th Dec 2018 19:55
nice work and I found by replacing my get pixel color


with yours


It fixed the bug I had with my lunar lander sometimes detecting a crash when it shouldn't

The two routines are similar but mine required getting an image from the backbuffer 2 by 2 pixels
and converting to an image as yours it uses a global background image which it selects a color from

Its nice to revisit old code sometimes
fubar
puzzler2018
User Banned
Posted: 10th Dec 2018 19:59
Oh wow - thanks - its nice to hear that can fix bugs too

yeah the idea of using global background images/ memblocks is to save having to recreate a memblock very frame

They same image data will only be used once through out the whole game, so memory consuption is zilch

I can now move on better with this now
baxslash
Valued Member
Bronze Codemaster
12
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 11th Dec 2018 10:05
I have a similar ground destruction system in my unfinished game LCD. You are welcome to use the code if you like:
https://forum.thegamecreators.com/thread/218603
Using AppGameKit V2 Tier 1
puzzler2018
User Banned
Posted: 11th Dec 2018 12:35
Wow - thanks Baxslash - ill take a look and get some inspiration

I wont use your code straight as is, cause I love programming problem solving to make things come to life - its only way to get better.

But I will certainly have a peruse...

Thanks again
puzzler2018
User Banned
Posted: 11th Dec 2018 12:48
Tonight I will make the Alpha channel be the collision decider instead of making it black as the empty space.

Cause we could have lots of many sceneries - not just black backgrounds.

So the alpha channel on the lemming would work - say when we build the lemming, make the Alpha channel for it to 254 (so it doesn't conflict with the background generated pictures, with the background having Alpha 255 for just purely
the platforms / rock / things that stand on etc and the rest of the world surround those is indeed 254.

so the lemming hits an alpha channel 254 then it will move, if it hits 255 - then we know its hit something like a platform and such like and if get this done quickly then

maybe a few collision works. like if facing left and hits anything then change direction.

walking up and down things too.





puzzler2018
User Banned
Posted: 11th Dec 2018 12:56
So in essense.

255 - Air
254 - Rock/Platform
253 - Home / Exit area
252 - Water (so have a floating lemming)
251 - Lava (so have a dying lemming)
250 - Etc
249 - Ect
248 - Etc

This is so much fun to create

puzzler2018
User Banned
Posted: 11th Dec 2018 17:51
I thought id try some random gneration backgrounds



Press Cursor left and right to move left and right lol

How does it look for you guys..

Ignore what the lemmings are doing for the minute
fubarpk
Moderator
14
Years of Service
Recently Online
Joined: 11th Jan 2005
Location: Adelaide
Posted: 11th Dec 2018 18:39
Looks good
fubar
puzzler2018
User Banned
Posted: 13th Dec 2018 10:03
Im on work holiday for 2 weeks next week, so I will get cracking with this..
chafari
Valued Member
12
Years of Service
User Offline
Joined: 2nd May 2006
Location: Canary Islands
Posted: 13th Dec 2018 17:58
@puzzler2018 Hey . That looks better now . From time to tiem I get an error ...


Quote: "
Error:failed to get byte from memblock 100001,offset 6711504 is greater than
memblock size 6711308 in main.agc at line 248 "

I'm not a grumpy grandpa
puzzler2018
User Banned
Posted: 13th Dec 2018 18:06
thanks - this new way is still early development stages - the lemms are just heading off the background sprite causing that so i will

- put some boundary checks in

- a little more on the background work

- get the display back to how it was last weekend - like with the scoring texts at the bottom and little map which shows the whole! at the top

- start work on bettering the collisions

- Add actions for Climbers / Floaters / Walkers / Diggers / Bashes / Miners

enough to keep me going until weekend



Cliff Mellangard 3DEGS
Developer
13
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 14th Dec 2018 18:31
Well done so far
But could you post videos for a stressed forum visitor
puzzler2018
User Banned
Posted: 14th Dec 2018 19:28 Edited at: 14th Dec 2018 19:55
Thanks and ok - ill try and do youtube uploads soon

Im currently working on a sprite modellar / animation for this

It will allow you to create characters which can either be 1 or a multitude to provide animation of sprites too if so want

EDIT
and once compile the animation of sprites, it can either

- create a sprite sheet to work with AppGameKit functions
- make our own sprite animation format

Which appeals more to you guys??

Attachments

Login to view attachments
blink0k
AGK Developer
Gold Codemaster
6
Years of Service
User Offline
Joined: 22nd Feb 2013
Location: the land of oz
Posted: 14th Dec 2018 21:26 Edited at: 14th Dec 2018 21:27
Standard is always better matey. I'd make it a standard sprite sheet
Looking sweet btw!
Rick Nasher
1
Years of Service
User Offline
Joined: 25th Jul 2017
Location: Amsterdam
Posted: 14th Dec 2018 23:32
Always when I see this thread I hear the " Let's go! " sound echoing in my head. Oh those good old Amiga times.
Was one of my fav games.
Keep it up dude.
puzzler2018
User Banned
Posted: 14th Dec 2018 23:57 Edited at: 15th Dec 2018 00:00
thank you guys - sprite sheet compiler it is

i will produce pre-generated AppGameKit code to be able to bring animation to life too with the sprite sheet


catch up soon
puzzler2018
User Banned
Posted: 15th Dec 2018 00:05
My head is 2D at the moment. cause I feel new beginners of AppGameKit, so like to bring them along. 3D stuff is just not for me just yet until i get all the oldies remakes done, thats why ive converted back to 2d stuff
fubarpk
Moderator
14
Years of Service
Recently Online
Joined: 11th Jan 2005
Location: Adelaide
Posted: 15th Dec 2018 00:23
What is great about working with 2D it is so much easier for sprite placement.
Placing objects in a 3D world is much harder that's one of the reasons why my
3D projects are more a side view of a 2D game like my 3D Joust or made up of
smaller environments like in Carnival games. But pixelated labrynth came to life
with a larger environment using your maze code with minor mods. But Labrynth
not only has the beauty of creating a new map the world was much larger.
BlockLifter 3D makes use of vertex data for object placement inspired by your sphere
and help from blink on understanding how I can extract vertex data from object models

So I can understand how 2D can be better to work with its not without its difficulties
and there is so many sprites out there people can get with royalty free licensing. Much
better for the beginner who wants to try remakes. But 3D Models on the other hand
are much harder to get suitable low poly objects with textures. There are plenty of models
available but most needs mods and you need to create the texture maps which can be just
as hard to produce .


Stick with 2D for a while and have a break from 3D might be a good change. Memblocks
for 2D data are allot easier to comprehend than 3D. But I still don't recommend beginners should
play with memblocks until they have understood allot of the fundamentals of a programming
language and AppGameKit experience. But with that said, look how far you have become in such a short
time you have gained mastery in memblocks that people with years of experience haven't and
have only been a short time using AppGameKit GREAT STUFF
fubar
Ortu
DBPro Master
11
Years of Service
Recently Online
Joined: 21st Nov 2007
Location: Austin, TX
Posted: 15th Dec 2018 03:56
I've always found 2d harder to work with. 3d has always felt more natural to me
http://games.joshkirklin.com/sulium

A single player RPG featuring a branching, player driven storyline of meaningful choices and multiple endings alongside challenging active combat and intelligent AI.
puzzler2018
User Banned
Posted: 16th Dec 2018 11:27
Thanks guys for your comments , im a little took back.

Here is a little small update on progress



I just need to fine tune it, add a Open and Save functionality to be able to save to a spritesheet.

Maybe perhaps have a user defined sprite size . currently its set to 32 x 32 sprite.

Hope you like

Attachments

Login to view attachments
chafari
Valued Member
12
Years of Service
User Offline
Joined: 2nd May 2006
Location: Canary Islands
Posted: 16th Dec 2018 12:27 Edited at: 16th Dec 2018 12:33
@puzzler2018 Yeaah I like it !! . I've notice that not all screen configuration works in all PC . I had to set screenwidth/height 800*600 to make it work . I get an error with 1024/768 about:

Quote: "
error.failed to write byte to memblock 100002,offset 3612 is grater than memblock size 3612 in main.agc at line 323."


The window properties and displays properties are driving me crazy .....that could be worst than a pain in the neck ! . There are a lots of good codes out there that only work in the owner Pc . Isn't there a way to avoid that ?? , isnt't there a standar configuration that works in all cases ? .

Anyway I like your code...I will keep it.

Edit
I found a solution to compile your code succesfully !! I just write SetErrorMode(1) before line 323
Now I can see the whole screen

I'm not a grumpy grandpa
puzzler2018
User Banned
Posted: 16th Dec 2018 12:34 Edited at: 16th Dec 2018 12:39
Yeah - thanks for testing. Unsure the screen resolution issue, it will be just boundary testing Ill take a look at the boundaries soon lol


Is it when your selecting colours?


Does anyone know if there is an image merge command to like save sprites together

[Sprte1][Sprite2][Sprite3][Sprite4] etc
[Sprite5][Sprite6][Sprite7][Sprite8] etc
etc

At all?

Ill just have to work it out... Yikes!!!

EDIT - if you could test to create a sprite, Apply and press Next to create a new sprite (just a little different to one before) and repeat until got a fair few of them and then press Play for me

Do we see any errors at all doing this process
chafari
Valued Member
12
Years of Service
User Offline
Joined: 2nd May 2006
Location: Canary Islands
Posted: 16th Dec 2018 12:39 Edited at: 16th Dec 2018 12:40
Quote: "Is it when your selecting colours?"


No ...I got the error imidiately when trying to compile but now I can see it OK
I'm not a grumpy grandpa
puzzler2018
User Banned
Posted: 16th Dec 2018 12:41 Edited at: 16th Dec 2018 12:42
Does your PC / laptop support an higher than 800x600?

Does it work in 1024 x 768,so now you can see everything - buttons at bottom an all?
chafari
Valued Member
12
Years of Service
User Offline
Joined: 2nd May 2006
Location: Canary Islands
Posted: 16th Dec 2018 12:43 Edited at: 16th Dec 2018 12:46
Yup ....1366*768

Yes ...now I can see the whole screen with all buttons after I write SetErrorMode(1) before line 323
I'm not a grumpy grandpa
chafari
Valued Member
12
Years of Service
User Offline
Joined: 2nd May 2006
Location: Canary Islands
Posted: 16th Dec 2018 12:50 Edited at: 16th Dec 2018 12:57
Quote: "EDIT - if you could test to create a sprite, Apply and press Next to create a new sprite (just a little different to one before) and repeat until got a fair few of them and then press Play for
me"


Sorry for the delay Yes...I have made some differents sprites and when I play its like an animated gif...I like it
I'm not a grumpy grandpa
puzzler2018
User Banned
Posted: 16th Dec 2018 12:54 Edited at: 16th Dec 2018 12:57
Thanks

Just working on the SpriteSheetBuilding function now to be able to use the sprite sheet with the following AppGameKit commands now


AddSpriteAnimationFrame
PlaySprite
SetSpriteAnimation

To be able to play them in own apps.

Bear with me

I can sense that this will be a tough cookie to do
puzzler2018
User Banned
Posted: 16th Dec 2018 16:45 Edited at: 16th Dec 2018 16:47
The way i found the easiest way to create a sprite sheet is by grabbing an image from the back buffer, by displating the individual sprites created in line with each other



but doing it this way - brings in parts of the main sync stuff too - which is not what im after.

Is there any way of clearing all the buffers and the back buffer too whilst the app is still in action, so i can build a new image like this way.

ive seen

Clearscreen
Update
Render
Swap
RenderToImage
etc
etc
etc
..
..

But things are just not happening!!! lol, any ideas?
puzzler2018
User Banned
Posted: 16th Dec 2018 17:29
That was mind bendly awkward

I managed it by



Attachments

Login to view attachments
puzzler2018
User Banned
Posted: 16th Dec 2018 17:47 Edited at: 16th Dec 2018 17:49
So here is a new version with the Sprite Sheet creation - these goto the Local appdata area to start with until i add a editbox style thingy to store to where you want. - but thats for another day..

The sprite animation now works with PlaySprite.

I just need to add a template AppGameKit code using loads of WriteLines to a file, this will provide a AppGameKit starting template to load that sprite sheet and play it this will occur when Save it.

Im going to now fine tune it all, correcting any boundary errors i may get and just make it more robust

Catch up soon


There is also an Open to do, where can select a sprite sheet and it imports that into it.

Ooooh what happens if those arent 32x32..

Lets leave that for a another day too - head about to explode
puzzler2018
User Banned
Posted: 19th Dec 2018 17:59 Edited at: 19th Dec 2018 18:01
Shall come back to this in Jan as this was aimed for Jan's first Game of the year anyway, as i feel that a sprite modelller syste should come first really
to be able to create animated sprites.

Login to post a reply

Server time is: 2019-04-23 19:55:26
Your offset time is: 2019-04-23 19:55:26