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 / TGC needs your feedback

Author
Message
AppsMobilis
11
Years of Service
User Offline
Joined: 15th Jan 2013
Location:
Posted: 3rd Apr 2013 01:49
I have lots of ideas and suggestions but I'll limit myself to the most important ones for me:

3D model animation support with the ability to blend multiple animations at the same time (at least four and preferably up to 8)

One click deploy where possible (I appreciate that iOS can't be supported but Android and others definitely can - and this was something that I was really looking forward to with Freedom Engine)

#strict option (it would need to be one of the first commands to be parsed in main.agc) that requires that ALL variables (in all source files) are declared as either "global" or "local" and therefore if a variable is used that has not been declared as either global or local then the compiler spits out an error along the lines of "Variable 'x' at line y has not been declared" and therefore having a "Local" variable declaration that complements the Global option and makes it clear that a variable used within a function is a locally declared one and not a globally defined one.

3D skybox commands that do all the hard work, eg
SetSkybox(frontImageId, backImageId, leftImageId, rightImageId, topImageId, bottomImageId)
SetSkybox("front image filename", "back image filename", "left image filename", "right image filename", "top image filename", "bottom image filename")
RemoveSkybox()

Memory profile commands as I'm trying to make my game scalable from phone to desktop using the same codebase and currently I use three different sized sets of graphics based on the device screen size that is determined at run-time. But because different devices with the same device screeen size can have different amounts of memory available it would be very useful IMHO to have some memory information commands available. That way if I know that a device has a large screen but my level graphics based on that screen size would be close to or exceed the amount of memory available to my game then I could make the decision to use lower res graphics and therefore avoid the possibility of the game erroring while loading a level or even playing. Eg
totalMem = GetTotalAppMemory()
freeMem = GetFreeAppMemory()
usedMem = GetUsedAppMemory()

This would also allow you to profile the efficiency of your game and also possible allow you to speculatively load resources in advance if you knew that the device had lots of memory available.

"The difference between stupidity and genius is that genius has its limits" - Albert Einstein
Digital Awakening
AGK Developer
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Sweden
Posted: 3rd Apr 2013 01:54
With exception of you Bax, there are periods when there are no one else from TGC posting. I really appreciate it when Paul is replying on the board. But having him on an hour every day means an hour less to work on AppGameKit, so that's not a good solution. I think what upsets people is when there are no posts here from TGC, and all we get are updates on other projects (not here but on Facebook, newsletter etc). Morale goes up whenever we get news about updates on AGK.


Demo 3 is out now!
Naphier
14
Years of Service
User Offline
Joined: 2nd Oct 2010
Location: St Petersburg, Florida
Posted: 3rd Apr 2013 03:31
Maybe it's just me and no one is answering my questions other than Ancient Lady and Bax lately. But I look at threads like this:
http://forum.thegamecreators.com/?m=forum_view&b=46&t=203424&p=1
Where people are obviously having issues with the instructions and there is no one from TGC stepping in to help out.
I do really appreciate it when you guys answer stuff. Maybe even if once a month someone took an unresolved question from the forum and discussed it in the newsletter? I'm not sure and I don't mean to say there's no effort being put forth, because there certainly is and it is apparent that there is little time for you guys to give support. Though you indeed do try.

baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 3rd Apr 2013 10:06
Unfortunately we don't have time to answer every question, it's impossible. aGK is not the only product and we do rely on other people answering questions for us sometimes. If there is a question that really needs a TGC answer then email me i will always try to get a definitive answer.


this.mess = abs(sin(times#))
JimHawkins
15
Years of Service
User Offline
Joined: 26th Jul 2009
Location: Hull - UK
Posted: 3rd Apr 2013 12:01
bax - can you please ask about the sound system? Is OpenAL etc?

-- 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: 3rd Apr 2013 12:31
Quote: "bax - can you please ask about the sound system? Is OpenAL etc?"

Waiting to hear back from Paul


this.mess = abs(sin(times#))
Paul Johnston
TGC Developer
22
Years of Service
User Offline
Joined: 16th Nov 2002
Location: United Kingdom
Posted: 3rd Apr 2013 15:37
On Windows we use DirectSound, but on iOS, Android, Mac, and Blackberry we use OpenAL. I looked at using OpenAL on Windows but it required a DLL that would need to be installed on end users machines. Static linking wasn't possible due to the LGPL license. In the interest of keeping distribution as simple as possible we stuck to DirectSound.

Originally when we had Bada 1.2 we were very limited to what we could do on that platform, there was no OpenAL until Bada 2.0, so everything else got held back to keep cross platform compatibility. Now that we mostly use OpenAL we could expand the sound commands, one of the many things that need looking at.
Ancient Lady
Valued Member
20
Years of Service
User Offline
Joined: 17th Mar 2004
Location: Anchorage, Alaska, USA
Posted: 3rd Apr 2013 16:43
Naphier, thank you for the mention. And I would mention that I am not a TGC employee, just an enthusiastic customer.

Cheers,
Ancient Lady
AGK Community Tester and AppGameKit Master
JimHawkins
15
Years of Service
User Offline
Joined: 26th Jul 2009
Location: Hull - UK
Posted: 3rd Apr 2013 17:05
Paul - OpenAL will use DSound internally on Windows. AFAIKS the OpenAL DLL is installed as part of the OpenGL installation. I have never actually installed OpenAL, but the DLL (OpenAL32.dll) is present, and works.

If not - placing it in the installation folder should work fine.

-- Jim DO IT FASTER, EASIER AND BETTER WITH AppGameKit FOR PASCAL
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 3rd Apr 2013 22:49
right now we don't have any 3rd party dll dependencies let's try to keep it that way
lilpissywilly
AGK Developer
14
Years of Service
User Offline
Joined: 10th Sep 2010
Location: Office Chair
Posted: 4th Apr 2013 00:44 Edited at: 4th Apr 2013 00:46
Could this be something? Apparently Nintendo are going to open up for easier creation of apps to their console(s).

Using HTML 5 and javascript, check it out here.

I have a hard time coming up with things I want other than that. I'm not experienced at all with mySQL and PHP so running multiplayer-server and highscore keeping somehow automatically would be sweet.

Otherwise I agree with most of the others, more 3d-commands and that. Just trying to make AppGameKit as close to DBPro as possible would be nice for me.

My hovercraft is full of eels
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 4th Apr 2013 16:10
and the cost of a Wii U devkit... only $5000!

lilpissywilly
AGK Developer
14
Years of Service
User Offline
Joined: 10th Sep 2010
Location: Office Chair
Posted: 4th Apr 2013 16:13
Quote: "and the cost of a Wii U devkit... only $5000!"


Well I thought that was the whole point of the new solution, and that it was their old own native devkit that was $5000 (actually $2500 but yeah)

My hovercraft is full of eels
TheTeenDevs
12
Years of Service
User Offline
Joined: 19th Aug 2012
Location:
Posted: 4th Apr 2013 16:33
Let's be honest guys. I thing AppGameKit needs more updating to keep it up to speed. AppGameKit is not really good with 3d, nor does it have html5, chromebook, blackberry, or windows 8 store support. The UI is not the best like game maker and it can be greatly inproved. I like how AppGameKit tier 2 integrates which is pretty cool, but it needs more work to compete with unity and other game engines.
Alex_Peres
AGK Master
15
Years of Service
User Offline
Joined: 13th May 2009
Location: The Milky Way Galaxy
Posted: 4th Apr 2013 19:10 Edited at: 4th Apr 2013 19:12
1. Fix All previous version bugs (EditBox, StartTextInput...)

2. Play Video from game-window. Use video as sprite.

3. Particles - rotation control on playing, scale control on playing. (similar to color control)
Clonkex
Forum Vice President
14
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 5th Apr 2013 09:16
Quote: "As you said Clonkex there is no one format for plugins that would work on every platform. I'm no expert on the various native languages but I'm pretty sure it's impossible."


Actually I can think of a couple of ways of doing this that would probably work, but it would be very difficult to do. You're welcome to correct me if I'm wrong, though

Quote: "I disagree about DBPro users not being interested in AGK. Quite a few people moved over even before 3D support (including myself) and loved it despite what it couldn't do. I'm speaking as a customer here, not as an employee BTW and you can take it with a pinch of salt if you like but I barely touched DBPro after I picked up AppGameKit long before I started working for TGC."


Well I suppose it depends greatly what you used DBPro for and what you need AppGameKit to do. If you didn't use any advanced commands and used just 2D or basic 3D, then AppGameKit would suffice (and indeed excel in the 2D department) and has the added benefit of being cross-platform. I should learn to speak for myself

Quote: "Ability to edit vertexdata in 3D"

Quote: "vertex data manipulation commands (like as DBP...)"


Seconded!

Quote: "3D model animation support with the ability to blend multiple animations at the same time (at least four and preferably up to 8)"


SECONDED!! Without support for plugins there's no way to achieve this with custom code!

Quote: "On Windows we use DirectSound, but on iOS, Android, Mac, and Blackberry we use OpenAL."


That immediately strikes me as a really silly thing to do.

Quote: "In the interest of keeping distribution as simple as possible we stuck to DirectSound."


But at what cost? The lack of useful sound commands, that's what. Most AppGameKit users will (I hope) agree that the effort of making sure a DLL is inside the app's folder is well worth having a greater range of sound commands.

Quote: "Paul - OpenAL will use DSound internally on Windows. AFAIKS the OpenAL DLL is installed as part of the OpenGL installation. I have never actually installed OpenAL, but the DLL (OpenAL32.dll) is present, and works.

If not - placing it in the installation folder should work fine."


Absolutely. There should be no problem with making the compiler include the necessary DLLs inside the folder, or, even better, inside the exe itself. We really need MUCH better sound commands on all platforms and OpenAL provides exactly this. Since the problem of using OpenAL is limited to the Windows platform, it should be very easy to make the compiler implant the DLL into the exe, as with DBPro, right?

Quote: "right now we don't have any 3rd party dll dependencies let's try to keep it that way"


Why? Neither the user nor you will need to do anything different. The compiler can dump the DLL in the program's folder and it doesn't even need to be installed to System32 or anything.

Quote: "#strict option (it would need to be one of the first commands to be parsed in main.agc) that requires that ALL variables (in all source files) are declared as either "global" or "local" and therefore if a variable is used that has not been declared as either global or local then the compiler spits out an error along the lines of "Variable 'x' at line y has not been declared" and therefore having a "Local" variable declaration that complements the Global option and makes it clear that a variable used within a function is a locally declared one and not a globally defined one."


Brilliant! I totally agree! There are times when I think one or other of my AppGameKit programs would be far easier to debug with forced variable declaration, and I like the look of this implementation.

Quote: "The UI is not the best like game maker and it can be greatly inproved."


What UI? The Placement Editor? You should try my re-written Placement Editor (link in my sig). It's far from finished but it's waaaay better than TGC's Placement Editor.

Clonkex

bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 5th Apr 2013 12:23
Clonex, I use a third party library to play sounds, so having an extra dll for no use makes no sense!
if we can leave out the dll then all is fine!
JimHawkins
15
Years of Service
User Offline
Joined: 26th Jul 2009
Location: Hull - UK
Posted: 5th Apr 2013 15:37
The OpenAL DLL is 130k. So yet another conditional seems to me to be a waste of time. All you need to do is omit it from the build folder.

-- Jim DO IT FASTER, EASIER AND BETTER WITH AppGameKit FOR PASCAL
Clonkex
Forum Vice President
14
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 5th Apr 2013 17:26
Quote: "Clonex, I use a third party library to play sounds, so having an extra dll for no use makes no sense!
if we can leave out the dll then all is fine!"


But that would mean you're using Tier 2, right? In which case the compiler (being the C++ compiler and not the AppGameKit compiler) would NOT automatically place the DLL anywhere and there would be no problem.

Clonkex

Mobiius
Valued Member
21
Years of Service
User Offline
Joined: 27th Feb 2003
Location: The Cold North
Posted: 5th Apr 2013 19:42 Edited at: 5th Apr 2013 19:42
Quote: "Quote: "As you said Clonkex there is no one format for plugins that would work on every platform. I'm no expert on the various native languages but I'm pretty sure it's impossible."

Actually I can think of a couple of ways of doing this that would probably work, but it would be very difficult to do. You're welcome to correct me if I'm wrong, though "

it's already been suggested, (and accepted) to use non-human readable source files, which you #include like normal files. This allows the creation of addins, without any major change to the compiler.
http://code.google.com/p/agk/issues/detail?id=211

I live for video games! (And beers, and football, and cars!)
See what I live for here: [url]http:\\www.TeamDefiant.co.uk[/url]
MobileCreator
13
Years of Service
User Offline
Joined: 1st Jun 2011
Location: Ottawa - Canada
Posted: 5th Apr 2013 19:47
Hi,

I haven't been using AppGameKit for a while, but I'm always checking here for updates and "an excuse to come back"

I can see big improvements, but I still thing important basic stuff are missing:

- Better BASIC IDE, with at least a console window where we can send trace messages to (since fully featured debug is harder)
- Tweener library - One of them main reasons that drove me away from AppGameKit (in favor of AIR) is how hard is to create animations for intro screens, or pause windows, etc..(Think about, for example, make your text change size with a bouncing effect before stops in the right size) it takes a lot of code to do what a tweener library can do in one single line. With C/C++ ports available, I won't think it would be that hard for TGC to implement such important capability.
- It scares me TGC trying to add support for native stuff as needed (Facebook, adverts, etc...) - ALl platforms have its own stuff, and it is impossible to keep AppGameKit up to date. I'd love to see a native plugin solution for Tier 1 (a la Adobe Native extensions) where I can code myself the native features I need and still keep using the lovely BASIC.

Cheers


Paulo

----------
Paulo
http://www.mobilecreators.com
Mobiius
Valued Member
21
Years of Service
User Offline
Joined: 27th Feb 2003
Location: The Cold North
Posted: 5th Apr 2013 21:25
A forumite has already created a Tweener library. How very thoughtful of them. lol

I live for video games! (And beers, and football, and cars!)
See what I live for here: [url]http:\\www.TeamDefiant.co.uk[/url]
MobileCreator
13
Years of Service
User Offline
Joined: 1st Jun 2011
Location: Ottawa - Canada
Posted: 5th Apr 2013 21:31
Who? Where? How?

----------
Paulo
http://www.mobilecreators.com
xCept
21
Years of Service
User Offline
Joined: 15th Dec 2002
Location:
Mobiius
Valued Member
21
Years of Service
User Offline
Joined: 27th Feb 2003
Location: The Cold North
Posted: 5th Apr 2013 23:14
That's the one.

I live for video games! (And beers, and football, and cars!)
See what I live for here: [url]http:\\www.TeamDefiant.co.uk[/url]
Clonkex
Forum Vice President
14
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 6th Apr 2013 16:29
Quote: "it's already been suggested, (and accepted) to use non-human readable source files, which you #include like normal files. This allows the creation of addins, without any major change to the compiler."


Oh I know, and it's a really good idea and I want it to happen, but it's still limited to what you can achieve in Tier 1 of the AppGameKit language. For example, I couldn't create a plugin (non-human readable source file) that would allow me to control a Kinect camera from within Tier 1, which is totally possible using the DBPro plugin system.

Now I'm not saying I actually WANT to access the Kinect (because I don't). All I'm saying is that there would be some great advantages to allowing C++ plugin creation of some sort.

Clonkex

MobileCreator
13
Years of Service
User Offline
Joined: 1st Jun 2011
Location: Ottawa - Canada
Posted: 8th Apr 2013 05:45
xcept, Mobiius, awesome. thanks!

----------
Paulo
http://www.mobilecreators.com
MobileCreator
13
Years of Service
User Offline
Joined: 1st Jun 2011
Location: Ottawa - Canada
Posted: 8th Apr 2013 16:08
BTW,

I forgot to mention/ask about ScoreLoop plans.

Although it is owned by BlackBerry, Scoreloop can be used on Blackberry, Mac, Windows, iOS and Android which is a very interesting cross platform alternative to Gamecenter to be implemented in tier 1 AGK.

The C++ API is very easy to use, so it wouldn't be a problem for Tier2, but Tier1 users like me would have to wait until TGC make it available.

Cheers

----------
Paulo
http://www.mobilecreators.com
Marl
13
Years of Service
User Offline
Joined: 19th Nov 2011
Location: Bradford, UK
Posted: 8th Apr 2013 20:32
Having read through a lot of the ideas, most of which I agree with, the top of the list for me would have to be the sound.

Not every app uses 3D, facebook, adthis or HTML-That.
Sure the Editor needs work, but we can get by for now.
One-click compiling would be great, but it's not needed.
I'd love to see draw commands, but I can code around these.

In fact most issue with AppGameKit can be worked around.

But sound can't - We simply don't have access to the necessary control mechanisms.

So (aside obviously from bug fixes) that has to be my vote for the feature most needing to be expanded upon.

That OpenAL is in there already has to be a bonus all around.
Alien Menace
AGK Developer
19
Years of Service
User Offline
Joined: 11th Jan 2005
Location: Earth (just visiting)
Posted: 8th Apr 2013 21:10 Edited at: 8th Apr 2013 21:24
ENCRYPTION COMMANDS for both loading saving media files and also to encrypt/decrypt a string. Important to protect art/sound assets & save game data. I think this one has been brought up multiple times buy multiple people.

FUNCTIONS LIST IN IDE - I miss having a list of functions on the right side of the screen from the viewed source file to quickly jump to a function.

SOUNDS/MUSIC FADING - Would like to see automated commands for fading music and sound in/out.

DYNAMIC LISTS - Managing everything through arrays probably makes good sense.. if this were still 1985 but no so much today. I and others have asked repeatedly for this to be added. I don't think it is such a crazy request. After coming to DBPRO/AGK from Blitz3D/GLBasic, I have to scratch my head and wonder how the heck this was not part of the language since day 1. I feel it is a remarkable oversight for a language geared to writing games not to support dynamic lists and cycle through using a FOREACH command. This probably has been my biggest single frustration with this language coming from GLBasic to date. Tedious management of arrays to keep track of all game assets in an arcade style game sucks pure and simple. You need to be able to REMOVE array elements from anywhere in the list and have the whole list above that moved down automatically. When you add a new one that element is added to the end of the list. FOREACH would give you a FOR NEXT style loop but the list lengths are kept track of internally. These lists should not have to be dimmed either, they need to grow and shrink as needed. I realize a lot of people came to AppGameKit from DBP and probably do not realize how incredibly useful a system like this is but to those of us who came here from a language that supports it, it is IMMENSELY useful.

DRAWING COMMANDS - Still waiting for DRAWPIXEL and DRAWBOX (filled and unfilled) commands and a command to read a pixel color from the screen. I am a little surprised that you folks are soliciting ideas for what to do next when 2D drawing commands have been brought up over and over and they still aren't done. It makes me wonder if you guys really take these suggestions to heart sometimes.

DBPRO SERVER ADD-ON - This isn't an AppGameKit feature request per se but more of DBPRO add-on. Surprisingly, AppGameKit and DBP's network commands don't apparently work together. I think this is a major oversight and frankly, makes no sense to me at all. DBPRO is a viable platform to write a game server but alas, AppGameKit cannot understand any of it.

SEPARATE FORUMS FOR TIER1 AND TIER2 - It is confusing to have Tier 1 and Tier 2 issue discussions going on simultaneously in the same forum and many times in the same thread. I think it would be quite hard for a new user to know what applies to them and what doesn't.

I'm not trying to be a smart ass but at the same time I am not going to hold my breath for any of this to come to fruition as most of it has already been requested time and again but you asked so here it is... again.

Thanks

Apps published: 3
xCept
21
Years of Service
User Offline
Joined: 15th Dec 2002
Location:
Posted: 9th Apr 2013 02:46
Also, I think the Box2D physics command set could be expanded. A lot of customizable parameters and functionality available in Box2D are not accessible through AppGameKit (e.g., frequency and damping ratio of distance joints, etc).
SoftMotion3D
AGK Developer
19
Years of Service
User Offline
Joined: 24th Aug 2005
Location: Calgary,Alberta
Posted: 9th Apr 2013 05:18
to me it seems most people want the same things for the most part...


3d (animation support)

and for me id like to see that with blackberry.

Also it would be nice to have a good solid format to use for the animation 3d format. eg... (.x support) or somebody needs to make an exporter. Most editors can pop out an animated .x file.....so why not support it.

Clonkex
Forum Vice President
14
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 10th Apr 2013 07:45
@Alien Menace:

SECONDED! Everything you've said, I wish I'd thought of already. Well, except maybe dynamic lists; it really is dead easy to use a dynamic array. Still, I'm not saying we shouldn't have them (indeed, it would make programming games easier), I'm just saying I've never found arrays difficult to use. Just add an "exists" parameter to the array's type, and then expand the array when there's no free (exists=0) index. It's actually (theoretically) quite a lot faster than a dynamic list system, which involves reordering and shifting stuff in memory.

That's just my 2 cents. Ignore me if you like

Something else that we really need, that I hadn't thought of before, is 3D physics (preferably Bullet, because it's open-source and free).

Clonkex

Alien Menace
AGK Developer
19
Years of Service
User Offline
Joined: 11th Jan 2005
Location: Earth (just visiting)
Posted: 10th Apr 2013 09:25 Edited at: 10th Apr 2013 09:31
@Clonkex

I think it would only need to shift things down. If you can show me how to use arrays to manage game assets as easily as using dynamic lists then I am all ears

Essentially, I'd like to do something like this:



So, using arrays...



If you need to exceed the original DIMmed value [100], can you increase the size of the array on the fly while preserving the current array data? Also, when you no longer need an array element, do you manually have to move the whole array list above the current element down to "replace" that array element thereby deleting it? Then you have to have to manage a variable for each array to keep track of how many elements there are so you have an index of where the array ends that needs to be moved down and where you can add a new element.

I ask because these have been points of irritation for me. When you are dealing with dozens of types and potentially hundreds of objects, I have found this kind of manual housekeeping is mighty painful. Is there a better way than what I am thinking?

Thanks

Apps published: 3
Clonkex
Forum Vice President
14
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 10th Apr 2013 13:35 Edited at: 10th Apr 2013 14:53
@Alien Menace:

Ah, I see what you want to do. Well, storing enormous amounts of information in arrays (often with 1000s of objects) is something I do in pretty much every single program I write. One thing you have to remember with both DarkBASIC Professional and the AppGameKit is that neither of them are really Object Oriented languages.

Here's how I would achieve what you need to do:



I'm sure you noticed the much larger code and groaned. There ARE ways of making the code smaller, but it's almost always far less efficient in terms of speed and memory use. However, it IS still quite easy to add new types. You said you sometimes have dozens of types, so I've set the code up in a way that makes it easy to add new types. Just copy-paste the addbulletindex() function and replace all "bullet" with the new type name, dim the new array at the top of the code.

In theory this code will execute faster than a dynamic list system when adding and removing lots of items, because items in memory are not even being shifted down, they are simply not being moved at all. The worst-case scenario would be to add thousands of elements, then remove almost all of them, leaving only some at the end. In that case, since you are not actually removing unused elements (just marking them as exist=0 and leaving them there), you would be iterating over thousands of unused elements just to find the used ones at the end.

With this system, you must remember to initialise new elements to some value. They will sometimes still contain values from when the element was previously used, and this can cause confusing bugs. Don't assume values will be 0, initialise them. Alternatively you could modify the code so when you delete an element, as well as setting exist to 0, you also set all other values in the type back to 0 or "".

This system works well for lots and lots of objects that are added and removed frequently.

It just occurred to me that you might be concerned about allocating new memory with every single bullet (until you reach the point where bullets are being deleted fast enough to not need to expand the array, of course - maybe you hadn't even thought of this, I don't know). Well, there's a very easy way around this too. You just allocate additional memory in blocks (like lists in C++):



Anyway, I have an episode of Spooks (on DVD) to go watch, so if I missed something or forgot something or if that code doesn't actually work (I'm pretty sure it's right, but I didn't test it), don't hesitate to ask me about anything. And really, that's the easiest and quickest way of using arrays with gazillions of bullets. I'm sorry I couldn't make it any simpler for you, I can understand how annoying it is that AppGameKit doesn't have easy OO programming methods.

Clonkex

Marl
13
Years of Service
User Offline
Joined: 19th Nov 2011
Location: Bradford, UK
Posted: 10th Apr 2013 19:55
@Clonkex (Alien Menace)

Very similar to what I do with the addition of a variable to store the top used entry.

In fact all my array processing starts with this small suite of functions;

Using .topObject means the loop for the array only needs to go as high as the top used entry in the various loops.
Clonkex
Forum Vice President
14
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 11th Apr 2013 05:28
Quote: "Very similar to what I do with the addition of a variable to store the top used entry.
...
Using .topObject means the loop for the array only needs to go as high as the top used entry in the various loops."


Ah, now that's a very good idea! That way, if the code needs to check if a particular item exists in the array, and if the array has a hundred empty spaces at the end, and the item needed DOESN'T exist, the code need only iterate as far as .topObject. Very good! I might even use this in my own code to squeeze out that extra few FPS

Clonkex

Mobiius
Valued Member
21
Years of Service
User Offline
Joined: 27th Feb 2003
Location: The Cold North
Posted: 11th Apr 2013 20:55 Edited at: 11th Apr 2013 20:58
@Alien Menace, this is what I'd do with your code.


I live for video games! (And beers, and football, and cars!)
See what I live for here: [url]http:\\www.TeamDefiant.co.uk[/url]
risecreature
12
Years of Service
User Offline
Joined: 10th Oct 2012
Location:
Posted: 12th Apr 2013 11:47
We would like to see some day AppGameKit player on OUYA,that supports controllers and 4 cores of processor. I think, TGC can even put it into OUYA store with price of 1 dollar. This platform looks very promising and I don't think you need much time to improve AppGameKit player for controllers and core support.
Clonkex
Forum Vice President
14
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 12th Apr 2013 17:11
@Mobiius:

That code requires a preset array size. I was trying to avoid that with my code...however your code is considerably simpler (and smaller). That's the only thing better about it,as far as I can see. Its worst-case scenario is the same as mine. Add thousands of items, delete all but those near the end and iterate over thousands of empty spots. It could possibly be faster during initial startup of the game or program, but not by much, and it requires knowing the maximum number of items you'll be using in the array beforehand. Even so, it IS quite a lot simpler than my code...

Just saying...

Quote: "We would like to see some day AppGameKit player on OUYA,that supports controllers and 4 cores of processor. I think, TGC can even put it into OUYA store with price of 1 dollar. This platform looks very promising and I don't think you need much time to improve AppGameKit player for controllers and core support."


I totally agree! I personally don't particularly like the extremely strong pull towards mobile gaming. I'm much more a traditional gamer, with a powerful gaming rig (well... it used to be powerful) and a mouse and keyboard. However, I do love the opportunities the mobile market opens up for the persistent and smart developer.

For me, worlds collide with the OUYA. It's a standardised gaming platform (unlike the many variations on phone/tablet hardware) that anyone can develop for, with fairly powerful hardware inside (have you seen the graphics some games running on Tegra 3 tablets sport?). It's a super-cool, open and cheap gaming console that needs to start some aggressive marketing if it's to rise to fame and fortune.

Anyway.

Just a quick note to those that may have missed it, Rick has compiled a list of basically every single thing on the front page of this thread and in about a week will start a survey to find what stuff is most important to add first.

RICK....

You missed one at least thing: In-game fullscreen switching.

Clonkex

dotnet fireball
18
Years of Service
User Offline
Joined: 25th Feb 2006
Location:
Posted: 12th Apr 2013 22:29
Windows 8 and Windows Phone 8 support should be added they are a new platform and a great opportunity fo games developers.

http://www.dotnetfireball.net
Alien Menace
AGK Developer
19
Years of Service
User Offline
Joined: 11th Jan 2005
Location: Earth (just visiting)
Posted: 14th Apr 2013 01:02
I'd still like to see native support for dynamic lists but you guys presented some really good stuff here. Thanks a lot! Seriously.

Apps published: 3
Ancient Lady
Valued Member
20
Years of Service
User Offline
Joined: 17th Mar 2004
Location: Anchorage, Alaska, USA
Posted: 14th Apr 2013 01:28
Please add all of the Facebook commands to Android (at least). I've successfully tested a couple in iOS and I'd really like to use them when I publish my WIP.

Cheers,
Ancient Lady
AGK Community Tester and AppGameKit Master
Clonkex
Forum Vice President
14
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 14th Apr 2013 04:14
Quote: "I'd still like to see native support for dynamic lists"


Oh definitely! That would drastically simplify things, even if I AM used to using arrays.

Quote: "you guys presented some really good stuff here."


Thanks

Clonkex

Clonkex
Forum Vice President
14
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 21st Apr 2013 04:02
Rick, what's happening with that survey? Nearly ready?

Clonkex

Ancient Lady
Valued Member
20
Years of Service
User Offline
Joined: 17th Mar 2004
Location: Anchorage, Alaska, USA
Posted: 21st Apr 2013 05:51
Clonkex, the survey was started a few days ago. I got an invite via email to my registered address. This is its main thread.

Cheers,
Ancient Lady
AGK Community Tester and AppGameKit Master
Clonkex
Forum Vice President
14
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 21st Apr 2013 07:46
Ah, I expected a notice on this thread. I don't check the forums that often. Thanks for the heads-up

Clonkex

Phaelax
DBPro Master
21
Years of Service
User Offline
Joined: 16th Apr 2003
Location: Metropia
Posted: 21st Apr 2013 22:13
What about adding the DATA command? Would that be possible?

"You're all wrong. You're all idiots." ~Fluffy Rabbit
SoftMotion3D
AGK Developer
19
Years of Service
User Offline
Joined: 24th Aug 2005
Location: Calgary,Alberta
Posted: 21st Apr 2013 22:30
Quote: "wiiu support"

what??

Interesting....

I say if you can get some animation support for the 3d...and a good global easy to use exporter to get our 3d models and animation to convert nicely...

I'd also like to see some commands like what dbp has with a mixture of ians matrix 3d creation commands...eg

make object new
vertex editing commands
limb commands

etc...

that's what I'd wanna see

Arbrakan
14
Years of Service
User Offline
Joined: 10th Oct 2010
Location: Geneva
Posted: 22nd Apr 2013 00:58
Quote: "What about adding the DATA command? Would that be possible?"
+1

Login to post a reply

Server time is: 2024-11-24 13:37:38
Your offset time is: 2024-11-24 13:37:38