Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
UnseenGDK2 Dev - Star Wars Saga
#1
Yo homies! Extract your QB64 folder....

THIS IS NOT A FINAL PRODUCT!!!! I am building it DEV style and as such please do not have a sigh when you peruse the code...The finalised version will be very different as I have aimed GDK2 at being a proper engine and as such created/am creating the tools to take all the loading, animation info, object info, etc...and make it as succinct as possible. As with the original GDK from this small offering, hopefully you can see it can clearly be used for prototyping/rapid dev too...

(To enable cheats press Ctrl + c in the menu)
Cheats are P/S = increase priamary/secondary weapons, H restores health, also if you dont enable cheats onlt the first ship will be available to you, 

In ship selection, press left right to change, enter to choose....enjoy

Also this is just the asteroids portion of the game, Lander, space invaders, R type and more have been prototyped already and will be added...along with a whole host of other games all with the star wars theme.

PLEASE _give me feedback, ideas, plots, help...etc

Unseen


Attached Files
.rar   UnseenGDK.rar (Size: 2.23 MB / Downloads: 21)
Reply
#2
Incorrect number of arguments - Reference: HF_Angle!(X!,Y!) in line 227 oof Unseen\GDK\UnseenGDK.bm... caused by (or after): HF_ANGLE! = HFANGLE!- _PI

I'm using the most recent version of PE, but going by that error it looks like you're using a version from before the handling of Functions changed so that FUNCTION = FUNCTION  + 1 will try to call the function again rather than simply change its value.

Anyways, I changed that function and was able to run the program, but it would still lock up with errors when trying to select a ship or control the ship when I got into to the game. I'm assuming its based on version differences and working fine on your end
Reply
#3
Version 1.8 over here....and yeah works fine for me.....which In my mind means i t SHOULD work fine for anyone using later versions of Qb64 or is legacy support no longer a thing?

Thanks for trying it though. I will get the latest version of QB and see what i can surmise.

Unseen
Reply
#4
I couldn't find anything to say for sure in the wiki and didn't look hard, but the change in Functions was a major one and should go back to version 2.0. It fundamentally changed how Functions are handled so a lot of code has to be rewritten.  QB64PE is at version 4.1 so it has changed quite a lot since then, but I'm a horrible source for summarizing what those changes have been
Reply
#5
(03-21-2025, 07:11 PM)Unseen Machine Wrote: Version 1.8 over here....and yeah works fine for me.....which In my mind means i t SHOULD work fine for anyone using later versions of Qb64 or is legacy support no longer a thing?

Thanks for trying it though. I will get the latest version of QB and see what i can surmise.

Unseen

2.0 made some breaking changes to QB64 with the way FUNCTION worked and all, especially with recursive calls.  We branched off v2.0.2, so all of our versions should run anything 2.0 and above, but since 2.0 broke other prior versions, you'll need to make some modifications to the code to adapt for that.

Let me highlight a quick example of the issue:

FUNCTION foo  (x)
    foo = RND * 100
    foo = foo + x
END FUNCTION

That used to be perfectly valid before version 2.0.  The first line assigns a random number to foo.  The second line looks up that number and adds x to it.  All fine and happy and roses....   <--- This is similar to your current code.



V 2.0 came along and actually *fixed* an issue with recursion.

That second line in version 2.0+??  It now sees that foo on the right side of that equal bar and...  CALLS THE FUNCTION AGAIN.  Which will... call it again... and again... and again.. and again... and... how big is your stack space?  You just broke it!!

So what's the fix??

Remove it from the right side of the equal bar.

FUNCTION foo  (x)
    temp_foo = RND * 100
    temp_foo = temp_foo + x
    foo = temp_foo
END FUNCTION

No calls to foo in there.  Just the one assignment at the last line of code.  No recursive calls, no problemo.

(And you could skip that step with the line above by making that (foo = temp_foo + x).  I was just highlighting the fix for you.)



That's the basic reason for the version change from 1.X to 2.X.
We changed from 2.X to 3.X when swapping over to QB64 Phoenix Edition, to show we were different from the previous guys stuff and branched forward from there.
We changed from 3.X to 4.X when depreciating $NOPREFIX.  (Though we did toss in a built-in auto-convertor so old code should still load and run with it, without having to make changes.

But that's basically the history of where you sit now, compared to where things sat back at v1.8 ages ago.  Smile
Reply
#6
Does the latest version work on XP? As I just get told that its not a valid application...if not what the last version that did that would allow me to make code that functions for you guys and can I have a link please...

Thanks

John
Reply
#7
(03-21-2025, 09:21 PM)Unseen Machine Wrote: Does the latest version work on XP? As I just get told that its not a valid application...if not what the last version that did that would allow me to make code that functions for you guys and can I have a link please...

Thanks

John

From the old Team QB64 Github (which is prior to us, so everything Phoenix Edition has these limits and changes already built in): https://github.com/QB64Team/qb64/releases


What's new in QB64 v2.0.1?
Check out the full changelog at https://www.qb64.org/portal/changelog-for-v2-0/

WARNING: This version contains a breaking change for how function values are returned. Please see this thread for details.

DISCLAIMER
Notice we're at this point officially dropping support for Windows XP.

You guys may have already read the interview Galleon gave to the Pcopy! magazine, issue 70, way back in 2008, talking about the why behind QB64 (if you haven't here's the archived link to it: https://web.archive.org/web/200808211839...ninterview)

Since QB64 was born out of the need to preserve the BASIC language and allow it to run on modern Operating Systems, it makes no sense to keep dedicating extra effort to keep us compatible with an operating system that's not even supported by its maker anymore.

QB64 v1.5 will still run with no issues in Windows XP.
Version 2.0.1 and up will continue to run with no issues in Windows Vista and up.
In Windows XP 32-bit, you will still be able to run v2.0.1 by downloading the separate package below, but we won't be offering support for that platform any longer.

Download links:
Download the right package for your Operating System.

For Windows, both .7z and .zip archives are offered (no difference in contents, but the 7-Zip package is much more compact)
You will need 7-zip to unpack the .7z archive in Windows.
Reply
#8
It works now...i hope it does for you guys too...I've also included another project i just started converting to new GDK.

Star wars - Cheats enabled as standard, p and s upgrade weapons, all ships are avalable, arrow move, ctrl and shift fire

Racing - Up arrow at the start to set revs, space to change gear and enter to boost...

Again, feedback please...

Thanks guys

Unseen

p.s. Ive simply updated the link in the first post on this thread.
Reply
#9
Hey folks, just out of curiosity, did anyone get it to work or do I have to go buy a newer laptop?

John
Reply
#10
I haven't had a chance yet to try it.  Give me a few days.  Tomorrow and Monday are busy for me, but I'll have time Tuesday for testing it out.
Reply




Users browsing this thread: 1 Guest(s)