English Amiga Board


Go Back   English Amiga Board > Other Projects > project.Amiga Game Factory

 
 
Thread Tools
Old 26 July 2019, 15:15   #101
malko
Ex nihilo nihil

malko's Avatar
 
Join Date: Oct 2017
Location: CH
Posts: 2,280
Thanks earok ! That's cool !!!
malko is offline  
Old 27 July 2019, 07:38   #102
earok
Registered User

 
Join Date: Dec 2013
Location: Auckland
Posts: 2,152
Cheers @malko

New update to the Git repo:

Quote:
* "Standard Library"
Previously, the compiler had hard coded constants and variables. These have been extracted into the new StandardLibrary.ink file.

* Finer grained camera restriction control. Previously, camera restrictions (such as forcing the camera to only move in one direction) could only be done through frame-by-frame updates on the Ink Script. Now they're part of the core engine functionality (see Alex Kidd demo for update), which is both tidier and faster than doing it through repeated calls to the Ink Script.

* Automatic camera tracking is restricted to 4 pixels per frame. This prevents large jumps (such as in the Alex Kidd demo, previously the camera would snap hard to the right when entering the water)

* New event - Divert_OutOfScreen. As an example, on the Alex Kidd demo, when Alex Kidd steps outside of the camera bounds, he'll be forced to stay within them. On the Alex Kidd demo, the divert is to a function inside of the Standard Library.
I think.. I really need to do another sample game. A simple shoot-em-up so I can get projectile logic working and tested.
earok is offline  
Old 27 July 2019, 15:50   #103
Retro1234
Boo

Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 4,366
In Alex Kid demo when.you brake a stone or something it just Pastes a tile is it not possible to have a animated sequence like the n the game?
Retro1234 is offline  
Old 28 July 2019, 00:23   #104
Clydos
Registered User

 
Join Date: May 2018
Location: Dresden / Germany
Posts: 156
Would be cool to recreate Team17's canceled "Witchwood" with the Scorpion Engine (if there would be more assets): [ Show youtube player ]
Clydos is offline  
Old 28 July 2019, 05:27   #105
earok
Registered User

 
Join Date: Dec 2013
Location: Auckland
Posts: 2,152
@retro1234 yes, and it's fairly straightforward to replicate that block breaker effect, so I've added that to the latest sample

Other than that, two other changes to the git repo have been made - game.exe has been crunched with cranker, and downloadable LHAs of all of the sample games are in the repo as well.


Witchwood looks pretty cool :O if someone wanted to take up the project, I could maybe help out here and there.
earok is offline  
Old 28 July 2019, 14:38   #106
Retro1234
Boo

Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 4,366
Cool
Retro1234 is offline  
Old 28 July 2019, 18:11   #107
dlfrsilver
CaptainM68K-SPS France
dlfrsilver's Avatar
 
Join Date: Dec 2004
Location: Melun nearby Paris/France
Age: 42
Posts: 8,198
Send a message via MSN to dlfrsilver
Quote:
Originally Posted by earok View Post
@retro1234 yes, and it's fairly straightforward to replicate that block breaker effect, so I've added that to the latest sample

Other than that, two other changes to the git repo have been made - game.exe has been crunched with cranker, and downloadable LHAs of all of the sample games are in the repo as well.


Witchwood looks pretty cool :O if someone wanted to take up the project, I could maybe help out here and there.
Yes, your engine will do the trick i guess
dlfrsilver is offline  
Old 29 July 2019, 02:19   #108
Retro1234
Boo

Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 4,366
Whats the basic way Tiled stores it data? is it Horizontal rows stored in Word? like most Amiga Games?
Retro1234 is offline  
Old 29 July 2019, 02:23   #109
Samurai_Crow
Total Chaos forever!

Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Ft. Collins, CO USA
Age: 45
Posts: 1,307
Send a message via Yahoo to Samurai_Crow
Tiled supports multiple export formats. Its website is mapeditor.org if you need docs.
Samurai_Crow is offline  
Old 29 July 2019, 02:24   #110
Retro1234
Boo

Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 4,366
Well what method does Scorpion use?
Retro1234 is offline  
Old 29 July 2019, 03:23   #111
earok
Registered User

 
Join Date: Dec 2013
Location: Auckland
Posts: 2,152
Tiled's native format is based on XML (with an optional JSON variant), Scorpion converts them to a format along these lines:

- One longword for each tile. The top byte is metadata bits (is the tile solid, does the tile contain an animation etc). The bottom three bytes are the tile ID - the reason why three bytes are used is that these bytes are changed into the absolute chipram address of the tile graphic (for fast lookup when redrawing a tile).

- Then an additional byte for each tile containing the actor ID or block ID that occupies this tile

- Then an additional byte for each tile containing the animation ID (if any)

- Then an additional byte for each tile containing the foreground tile ID (if any)




Having said that, I probably should merge the animation and foreground IDs down to a single byte containing both.
earok is offline  
Old 29 July 2019, 03:45   #112
Samurai_Crow
Total Chaos forever!

Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Ft. Collins, CO USA
Age: 45
Posts: 1,307
Send a message via Yahoo to Samurai_Crow
@Earok
You might also want to free up the most significant byte for addressing space because the Vampire SAGA core makes little distinction between chip and fast RAM. It can access the full 32 bits in other words. (You'll be safe until the full drivers are out for AROS but just to be safer....)
Samurai_Crow is offline  
Old 29 July 2019, 07:19   #113
Retro1234
Boo

Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 4,366
Quote:
Originally Posted by earok View Post
Tiled's native format is based on XML (with an optional JSON variant), Scorpion converts them to a format along these lines:

- One longword for each tile. The top byte is metadata bits (is the tile solid, does the tile contain an animation etc). The bottom three bytes are the tile ID - the reason why three bytes are used is that these bytes are changed into the absolute chipram address of the tile graphic (for fast lookup when redrawing a tile).

- Then an additional byte for each tile containing the actor ID or block ID that occupies this tile

- Then an additional byte for each tile containing the animation ID (if any)

- Then an additional byte for each tile containing the foreground tile ID (if any)




Having said that, I probably should merge the animation and foreground IDs down to a single byte containing both.
Thank you sir
Retro1234 is offline  
Old 29 July 2019, 12:44   #114
earok
Registered User

 
Join Date: Dec 2013
Location: Auckland
Posts: 2,152
Daily update time. As always, these can be grabbed from the Git.

* Added "Number Font" functionality, essentially the ability to track a variable (such as score or money) on a UI counter automatically. Example of this added to Zelda game - collected rupees are shown on the UI. This does need to be better optimised.

* Added ability to set the maximum number of any specific type of object in game at once for performance reasons. Example of this added to the Alex Kidd example, where no more than one pair of "broken blocks" will show up at once.


@Samurai_Crow I'll keep it in mind. If it comes to it, I could do a slightly altered version for vampire.
earok is offline  
Old 29 July 2019, 13:45   #115
malko
Ex nihilo nihil

malko's Avatar
 
Join Date: Oct 2017
Location: CH
Posts: 2,280
earok, would you mind updating the first post so it contains the link to the GitHub repo ?
Actually it is in post #97
malko is offline  
Old 29 July 2019, 21:43   #116
xboxown
Registered User
 
Join Date: Dec 2012
Location: Vancouver/Canada
Posts: 488
Quote:
Originally Posted by earok View Post
@saimon69

The short answer is - I don't see why not. The ink scripting supports a complicated RPG system behind the scenes, including random numbers (dice rolling), storing XP, handling level ups, dialogue and branching decisions.

Cheers @Steril707, I'm also hoping that it gets picked up for a few projects.
earok,

How about we make a kickstarter campaign where we get enough money and hire a power programmers and turn this into a full fledged editor where it compiles the games for Windows, Macintosh, Linux, AROS, MorphOS and Amiga 68k?

I AM SERIOUS!!! I AM NOT JOKING!

You already have the foundations done already! We just write functions or subroutines that uses the script and these subroutines or functions to do certain function and then convert these subroutines/functions in a click and play parameter windows interface and poof. Any person can make games and then decide which platform using the scorpion engine to run your design; Windows, Mac, Linux, Amiga68k, MorphOS or AROS?

What do you think?
xboxown is offline  
Old 29 July 2019, 23:39   #117
Samurai_Crow
Total Chaos forever!

Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Ft. Collins, CO USA
Age: 45
Posts: 1,307
Send a message via Yahoo to Samurai_Crow
Quote:
Originally Posted by xboxown View Post
earok,



How about we make a kickstarter campaign where we get enough money and hire a power programmers and turn this into a full fledged editor where it compiles the games for Windows, Macintosh, Linux, AROS, MorphOS and Amiga 68k?



I AM SERIOUS!!! I AM NOT JOKING!



You already have the foundations done already! We just write functions or subroutines that uses the script and these subroutines or functions to do certain function and then convert these subroutines/functions in a click and play parameter windows interface and poof. Any person can make games and then decide which platform using the scorpion engine to run your design; Windows, Mac, Linux, Amiga68k, MorphOS or AROS?



What do you think?
If you want all of those running, translate the graphics and scripts to Hollywood. Of course you will need a graphics card and 020+ to run it on 68k suddenly. (OOPS!)

Otherwise just distribute it with AROS 68k and run it on UAE as has already been done with AmosPro.
Samurai_Crow is offline  
Old 30 July 2019, 03:51   #118
earok
Registered User

 
Join Date: Dec 2013
Location: Auckland
Posts: 2,152
@malko Good idea, I've gone ahead and done that.

@xboxown I don't really feel comfortable with Kickstarting it. With Scorpion, I'm going to just continue developing it at my own pace and my own way.
earok is offline  
Old 31 July 2019, 12:16   #119
earok
Registered User

 
Join Date: Dec 2013
Location: Auckland
Posts: 2,152
New updates pushed into the GitRepo

Quote:
- Fixed error with forward slashes in the Ink Script.

- Altered "divert_playeroverlap" event (for blocks) so that it can be triggered on a collision with a solid block.

- Added Block_X and Block_Y Ink variables, to get map coordinates of block that triggered an event

-Added XSpeed and YSpeed Ink variables, to get/set player and actor speeds

Those last three, while minor in of themselves, can be used together for some really cool things. For example, I've added a "Mario" style upward block breaking mechanic to the Alex Kidd demo (which was not a feature in the original game, but I wanted to try it here). The code in the ink script that drives it is like this:

Code:
=== BlockHit ===
//If we're horizontally aligned with the block
//(We divide by 16 to convert from pixel co-ordinates to tile co-ordinates)
{ Player1_X / 16 == Block_X:

	//But below it
	{ Player1_Y / 16 == Block_Y + 1:
	
		//Stop the player moving upwards
		~Player1_YSpeed = 0
	
		//Destroy the block
		-> DestroyBlock
	}
}

//Go back to the game
-> GAME

=== DestroyBlock ===
//Make the destroy block sound
~ sound = sndblock

//Spawn the object that represents the broken left half
~ block_spawn = blockbreakleft

//Spawn the object that represents the broken right half
~ block_spawn = blockbreakright

//Delete the block
~ block_type = null

//Go back to the game
-> GAME
earok is offline  
Old 31 July 2019, 13:29   #120
Clydos
Registered User

 
Join Date: May 2018
Location: Dresden / Germany
Posts: 156
Nice!

So, -> DestroyBlock means, "call the Methode DestroyBlock that is declared between ===", right?

I don't get the two ~ block_spawn commands. I mean, doesn't the second one overwrite the first one so that just blockbreakright is "executed"?
Clydos is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
2D Platformer Engine carrion Coders. Blitz Basic 27 06 June 2019 15:35
New Chaos Engine!! arpz Retrogaming General Discussion 75 31 August 2013 23:20
F/S Warp engine 32 mb tabuhuso MarketPlace 0 24 February 2012 16:13
PC Engine CD TodaysForgotten Retrogaming General Discussion 47 14 May 2009 00:57
Scorpion (100% working) andreas request.Old Rare Games 13 01 August 2003 09:48

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 16:31.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.
Page generated in 0.09851 seconds with 14 queries