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 / Language/Engine Selection

Author
Message
Digital Awakening
AGK Developer
21
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Sweden
Posted: 18th Sep 2012 01:01
I would definitely go Unity if I had a company and wanted to do a 3D project. The price is quite hefty but then look at the size of the team behind it.

I don't get why TGC is in such a hurry to add 3D, or why they cut the price of AGK. They have the chance to create one really solid 2D option. And they support the most platforms, well not fully any more. If everything worked on all platforms and with the planned features (sans 3D) AppGameKit would be one amazing product.

If you are working professionally you really need tools you can trust. At this point in time AppGameKit does not deliver. And TGC will continue to add 3D features after 108. 108 will most likely add a bunch of new bugs while not fix all existing ones.


Demo 2 is out! Click the image for more.
MarcoBruti
12
Years of Service
User Offline
Joined: 20th Nov 2011
Location: Caput Mundi
Posted: 18th Sep 2012 01:25
@bj, read well gbison's requirements:
Quote: "I will say one thing, we don't work at the hobby level any more which I miss sometimes (less stress) but to build production apps you need a solid foundation. We do not care to pay for good products and as Indie developers we need a good language and engine in order to keep us running in our production time frame. I can say this and will come back to it later as I'm short on time."

They are not hobbysts, they are willing to pay, they need a tool for production apps, they need a good language/engine. At present AppGameKit lacks support, roadmap and bug fixing. AppGameKit T2 is good for you, but not for someone we have got to concentrate on commercial products...I don't think that EA and Nintendo use C++, unless they were totally mad. They for sure use RAD tools or scripting languages like Unity. Or am I wrong?
JimHawkins
14
Years of Service
User Offline
Joined: 26th Jul 2009
Location: Hull - UK
Posted: 18th Sep 2012 01:27
Quote: "Drag and dropping in my opinion is not programming, but if thats what gets you through the night.. "


No - that's what reduces the tedious overhead and allows one to focus on the actual really important code. Our language lab software is 480,000 lines of code. Without a RAD development system it would be several million.

If you think that the overwhelming majority of programmers in the world who use classes and so on are are merely doing it to show off you need to take a few happy pills. When it comes to "old fart" time I'm probably a much older fart than anybody else here. Glad to hear that programmed Amigas: get a few manuals and you'll found I wrote sections of them.

Anyway - senile tirades aside - there are some things that could enhance AppGameKit Basic in the opinion of quite a few people here, and it's entirely appropriate to discuss them in a serious way.

-- Jim DO IT FASTER, EASIER AND BETTER WITH AppGameKit FOR PASCAL
IronGiant
AGK Bronze Backer
12
Years of Service
User Offline
Joined: 27th Feb 2012
Location: the great state of madness
Posted: 18th Sep 2012 06:01
Damn It Jim...!!!, I'm Doctor, not a Veterinarian, I Cant tell you how that monkey got that banana stuck there!!

Yea I was just yankin your chain about the mouse driven programming James. Some of those programs are actually pretty coool.

And keep away from my happy pills. Doctor says they can cause loss of sleep, prolonged eye itching, and testicle droop-age.

And kodos on the Amiga manuals, one hell of a machine, I fire my old one up from time to time, just to bang on some Amos, or play some Populous II, the right way.

Welp I think we beat this dead horse(topic) into the ground long e'nuff, she aint'a gonna clop no more.

So night all, I got a monkey to help.

It's Bird! , It's Plane!, No its a rocket powered Squirrel holding some acorns and a smile!
gbison
13
Years of Service
User Offline
Joined: 15th Dec 2010
Location: USA
Posted: 18th Sep 2012 08:16
Hello folks,

Finally ventured my way back albeit 12:30 am with coffee in hand, Im not a workaholic...

I won't quote anyone or create a trail for flames, I will only give my opinions on things. First again, great conversation and I'm glad so many have joined in and from the research done thus far on AppGameKit it seems like the consensus is good. Like someone said, for the price why wouldn't you...so in light of that we will purchase AppGameKit and see what she's made of.

We have been asked by our portal publishers to specialize in the M3 genre, so we will be working with it on this type of playing field as well as some arcade action. I look forward to seeing what it can do.

Now about its future. I'm not sure what TGC is looking for in their future. Some of you folks have been programming allot longer than I and obviously I respect that. However, we are well versed in whats needed to get the job done and how fast our ROI will come back to us. If TGC wants AppGameKit to cater to only the hobbiest's then I'd say they are doing a pretty good job thus far by the sounds of the recommended "Buys". That being said, some of you argue the fact of OOP. TGC done something I think was very intuitive in providing you the ability to use BASIC(Proc) or C++(OOP). It gives the hobbiest as well as Indie developers an easy language to get their designs done in. For the more robust, who choose the way of OOP and need more power and control, then you have T2. If you think about it, they already catered to both needs.

Do I think Basic should go OOP, in short, no. Before you shoot me down let me explain. Basic is well....basic. Its a language most of us have come to love for its simplicity. If I was a beginning programmer and someone threw me into the C++ OOP pool especially trying to teach myself, well I'd probably have drowned. I know some of you will say C++ all the way and believe it was easy as pie, well if so you are better than me and I commend you and will pat you on the back for it. No matter how you slice it C++ is not a friendly language, OOP is confusing and obfuscated for most. So pushing AppGameKit out as a pure bred OOP language would have been a shot in the heart for TGC. They cater to too many different classes of programmers to lock themselves into that. Lee and his team knew this I would wager.

In saying that you may think I am opposed to C or OOP in general, that is not the case. Torque2D is our major production platform in 2D development. Its source is all C++ driven and the scripting is all a type-less C derivative. I love the power it gives us in wielding objects, classes, inheritance, polymorphism and more. I also love the fact that its tool-set allows us to produce and structure our games at a much faster pace. I'm not here though to blow any engine/language up, but only to state what I believe is true and factual and I used this as an example to show my personal stance on OOP, I use it daily and I like it.

To that end, my recommendation to TGC for AppGameKit from a production usage standpoint is this. Features are great, especially ones built on a solid platform. I understand you developed a road-map and you should work to deliver that road-map, but not at the cost of stability. You will never get all the bugs out projects like AppGameKit, DBP and many others are just to large to say, BUG FREE. You can though solidify its existance through minor service based updates. Dont make folks wait on that, especially if it blocks them from finishing their masterpiece. Pull out your feature releases once per quarter.

As for OOP in basic, it would be more benefit to your end-users in my opinion to spend your time creating a tool-set for these folks to use in order to enhance the production time and visibility of what they are writing ( level editors, animation builders, particle editors, media managers..... etc.)in an all inclusive package. Then put your price tag back where it needs to be as folks will not care one bit to pay for a quality tool-set that can deliver their product as they seen it.

Just my two cents......but its what I believe.

"The greatest trick the devil ever pulled, was to convince the world he didn't exist."
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 18th Sep 2012 16:53
Quote: ".I don't think that EA and Nintendo use C++, unless they were totally mad. They for sure use RAD tools or scripting languages like Unity. Or am I wrong?"


so people who code games in c++ are mad?
then i guess that a good part of the gaming industry has been mad for years!
Dar13
16
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 18th Sep 2012 19:13
Quote: "I don't think that EA and Nintendo use C++, unless they were totally mad. They for sure use RAD tools or scripting languages like Unity. Or am I wrong?"

Very very wrong. C++ is still the premier game development language, ahead of anything else. Heck, C++ is still one of the top languages used in all programming, not just games programming.

Quote: "No matter how you slice it C++ is not a friendly language, OOP is confusing and obfuscated for most. So pushing AppGameKit out as a pure bred OOP language would have been a shot in the heart for TGC."

But that doesn't mean that TGC can't integrate OOP concepts to be used by those who would want it. I would love to have at least inheritance for UDTs, instead of psuedo-inheritance (
).

IronGiant
AGK Bronze Backer
12
Years of Service
User Offline
Joined: 27th Feb 2012
Location: the great state of madness
Posted: 18th Sep 2012 20:28
Corleone: Just when I thought I was out... they pull me back in!!!

OK, First off, Its mainly C, Not C++ that the game industry has used for years. even now they use very little OOP in game programming,

Only on hobbist websites will you see people that know absolutely nothing about anything spout how important OOP is to game programming.

But who am I to tell you whats what, I'm just a guy that has sold games, programmed with different operating systems in many different programming languages and has an opinion on everything.

But you all do what you want, ruin AppGameKit, turn it into another Visual basic that people say they program in but never use for any real software development.

I am now officially done with this topic!

Dont make me put a horse head in bed with you!!!

It's Bird! , It's Plane!, No its a rocket powered Squirrel holding some acorns and a smile!
IronGiant
AGK Bronze Backer
12
Years of Service
User Offline
Joined: 27th Feb 2012
Location: the great state of madness
Posted: 18th Sep 2012 20:41
And Gbison welcome to the fold, glad you decided to join, sure you'll love the forums lol. I wanted to but that in my last rant, but got carried away, I blame caffeine.

It's Bird! , It's Plane!, No its a rocket powered Squirrel holding some acorns and a smile!
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 18th Sep 2012 20:42
Quote: "Visual basic that people say they program in but never use for any real software development. "


very true
Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 18th Sep 2012 20:49
Quote: "OK, First off, Its mainly C, Not C++ that the game industry has used for years. even now they use very little OOP in game programming"


Get back here IronGiant

Two of my favourite games right now are Battlefield3 and Dirt3. Here is what you need if you want to apply for a job as a programmer:

Dice:
gameplay-code-developer

Codemasters:
senior-game-programmer

Even some scripting languages now use oop, I think unreal-script is oop.

All that said, I would guess that the final layer of most game engines is usually based on a language much easier to use/learn than C++, but it will probably be built with C++. You probably find the final layer is lots of wysiwyg editors along with a scripting language.

IronGiant
AGK Bronze Backer
12
Years of Service
User Offline
Joined: 27th Feb 2012
Location: the great state of madness
Posted: 18th Sep 2012 20:52
you misunderstood, or I wasnt clear, I did not mean they dont use C++ development tools, I mean all IDEs for C/C++ support C++. I was talking in the manner in which they write the code, they only use OOP calls when needed.

It's Bird! , It's Plane!, No its a rocket powered Squirrel holding some acorns and a smile!
IronGiant
AGK Bronze Backer
12
Years of Service
User Offline
Joined: 27th Feb 2012
Location: the great state of madness
Posted: 18th Sep 2012 20:55
and if you want to get really technical, all languages compile down to 10101010. No computer can tell the difference between Atari basic, or C++, to the processor, its all numbers , switches if you will.

It's Bird! , It's Plane!, No its a rocket powered Squirrel holding some acorns and a smile!
IronGiant
AGK Bronze Backer
12
Years of Service
User Offline
Joined: 27th Feb 2012
Location: the great state of madness
Posted: 18th Sep 2012 21:15
Ok, just thought of this, when I was first learning OOP in C++, I used to scan the internet for tutorial sites to see how they did things.

Most of the time, up front in, the first paragraph was, " We Wont be using much OOP, just enough to get our main loop running and then we'll get to real coding!". I sh*t you not, go try lookin around. Google is your friend!
They even knew OOP throws people for a loop!

Now some OOP would be nice, I'll concede, but NO DAMN classes, Just the data manipulations. Types, link lists, but most anything else you do can be handled by Procedures/Functions.

Hell I bet if I had enough time, I could fire up my Atari and write a small Web Browser in Atari basic, Point being, some people will say, "I cant do this in AppGameKit, or that without OOP".

I say bullsh*t. theres always a way. Classes didnt invent passing variables, or using data...., or the first computers out wouldnt have been able to use the internet.

as Stan Lee would say, "Nuff said!!"

It's Bird! , It's Plane!, No its a rocket powered Squirrel holding some acorns and a smile!
Ancient Lady
Valued Member
20
Years of Service
User Offline
Joined: 17th Mar 2004
Location: Anchorage, Alaska, USA
Posted: 18th Sep 2012 21:38
I'll just say that I enjoy using classes. It makes some things much easier to expand on.

I worked in the telecommunications/satellite/rocket world for just over 20 years. Using OOP with class inheritance was an absolute must to add new satellite series to the control systems without having to rewrite whole new things all the time.

But everyone is totally entitled to their opinions about programming languages and practices. This forum is a great example of how people get inflamed on the topic.

Everyone should use what they are comfortable with and what feels like the best tool for the job. It's that simple. I will not discuss what I consider to be the problems with any language/computer/paradigm. A lot of that is pure opinion for anyone and everyone has one (usually different).

Cheers,
Ancient Lady
AGK Community Tester
baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 18th Sep 2012 22:14
Quote: "I think everyone's right, except me. So just forget I spoke alright?"


10 slash points to anyone who can name the show and series number. 20 if you can name the actor. I should say the line is slurred in the show...


this.mess = abs(sin(times#))
Ancient Lady
Valued Member
20
Years of Service
User Offline
Joined: 17th Mar 2004
Location: Anchorage, Alaska, USA
Posted: 18th Sep 2012 22:45
Based on what I found, I think you are talking about Cat in Red Dwarf, but I didn't find the season/episode.

"FISH!"...."FISH!"

Cheers,
Ancient Lady
AGK Community Tester
Cliff Mellangard 3DEGS
Developer
18
Years of Service
User Offline
Joined: 20th Feb 2006
Location: Sweden
Posted: 18th Sep 2012 22:56
Time to calm down people

Everybodys taste is differrent and not everyone drives a volvo

I like the simplicity of basic

Android 2.3 Gingerbread , ZTE Skate , 480x800 , 800 mhz cpu , Samsung Galaxy Y , 240x320 , 832 mhz cpu
Android 4.0 Sandwich , Dmtech 3g 9738B , 1024x768 , 9.7 inches , cortex A8 1.2 cpu , 1 gb ram.
Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 18th Sep 2012 23:22
Quote: "Hell I bet if I had enough time, I could fire up my Atari and write a small Web Browser in Atari basic, Point being, some people will say, "I cant do this in AppGameKit, or that without OOP"."


You may have a point there. I really don't know the best way to structure my program in basic(AGK). I have found something that works but coming from oop it was not obvious at all, perhaps I just can't get away from thinking oop all the time.

Anyway, my game is pretty simple so I thought I would give Tier 1 a go and it's working out ok for now

Here is an example of something that seemed odd to me.

I have a UDT called PattleType, a Pattle is the the thing that hits the ball in a breakout or pong like game, not sure if MoonDog made that name up or not



I get the feeling everyone likes UDT's, we can probably agree they are a powerful tool? But how do I write a function that takes PattleType and does some operations on it, updates ai or movement from the keyboard etc?

If you come up with a function that takes a PattleType in some way then does it not make sense to include that function inside the Type declaration, since it is no use to any other type?

I suppose I am saying I am rubbish at non oop, but surly UDT's are a step in the oop direction?

Ancient Lady
Valued Member
20
Years of Service
User Offline
Joined: 17th Mar 2004
Location: Anchorage, Alaska, USA
Posted: 18th Sep 2012 23:30 Edited at: 18th Sep 2012 23:31
You can pass a PattleType variable as a parameter like this:


You can sort of encapsulate stuff by making each 'class' a separate .agc file.

Any UDTs not needed in other places can be defined in the class.agc file, as well as constants.

Then you can have a function like 'initialiseClassGlobals()' to create an 'static' global objects for the class. Or arrays that will hold UDTs and things specific to the class.

It's not perfect, but you can separate things out for a certain amount of clarity.

UDTs are similar to structs, but not the same.

You can include UDTs inside of other UDTs. But you cannot use arrays within UDTs.

And you cannot include function references in a UDT, like you can in a struct.

And there is no pass-by-reference. You are supposed to be able to return a UDT from a function, but I have not been able to make that work.

Cheers,
Ancient Lady
AGK Community Tester
Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 19th Sep 2012 00:14
Quote: "And there is no pass-by-reference. You are supposed to be able to return a UDT from a function, but I have not been able to make that work."


This is the problem I think. Your example will work since the sprite ID is global to the whole program. If you try to alter data inside the type(for instance increase the sprite ID by one) it has no affect. I ended up keeping everything in global arrays and passing index numbers into functions, it works but does not seem elegant and is bound to be error prone.

But perhaps trying to emulate oop in AppGameKit is where I am going wrong, I just don't know any other way of working

JimHawkins
14
Years of Service
User Offline
Joined: 26th Jul 2009
Location: Hull - UK
Posted: 19th Sep 2012 00:38
I'm beginning to regret raising suggestions for AppGameKit Basic. But language discussions are important and interesting, at least to me!

You might think of an AppGameKit UDT as a kind of crippled class. Time and time again we hear people confused by the fact that you can't declare an array in a UDT; this seems to me to be a language weakness which could be easily fixed, and would ease the over-reliance on global declarations.

IronGiant has ranted quite amusingly about his hatred of the class concept, but never really explained why. As Ancient Lady has rightly pointed out, in the real world classes and objects make life easier, not harder.

The bottom line of this is if you wish to be utterly pure, you write assembler. But these days you will almost never beat a compiler, and you'd be mad to do it in a cross-platform environment. So why not use the incredible power that modern compilers offer? Why use a prop plane when you can use a jet?

I had no desire to create a storm. A reasoned debate, perhaps.

-- Jim DO IT FASTER, EASIER AND BETTER WITH AppGameKit FOR PASCAL
IronGiant
AGK Bronze Backer
12
Years of Service
User Offline
Joined: 27th Feb 2012
Location: the great state of madness
Posted: 19th Sep 2012 01:25
Two cavemen are walking along a small creek, caveman "M"points to fish trapped in a small pool of water along the bank. Grunts,"Fish!".
Caveman "K"" gets a brilliant Idea, Runs to a tree, Breaks off a branch, Pulls all the unwanted material off of said branch and begins to sharpen the tip of the branch on a large rock.

"M" notices the fish starting to work his way out of the pool, he reaches for the large rock and drops it on the fish.

"M", then Lookin up at "K" and pointing the fish encrusted rock in his direction he utters, Fishcakes?.

While walkin away, both eatin the pounded fish offa the rock, "M" takes the half finished spear and aims at his own rear. with a few strokin motions while disappearing over a hillside with "K" he's is heard to say "Nice butt scratcher!!". they both nod and smile, with fish scales between their teeth,

The moral or this tale, whatever it takes to get the job done, make sure you end up with a nice butt scratcher.

Oh and if types are too hard to pass mass variables back and forth, use Arrays, they are faster than types as they dont get created or destroyed during the life cycle of the program. Arrays have been being used since the dawn of computers and you dont even need to pass them to a function, you just access them.

Buttscratcher$[0]="ahhhhh"

function PrintButtNoise()
Print "after using my butt scratcher I said "+Buttscratcher$[0]
Buttscratcher$[0]="man that felt gooooooood"
endfunction

been fun and I know you all knew these facts, just had to make one last comment, now off to program, if I keep coming here how will I create the program that saves the world on 2012 dec 21. jk, bye kids.

It's Bird! , It's Plane!, No its a rocket powered Squirrel holding some acorns and a smile!
baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 19th Sep 2012 01:38
Ancient Lady gets 8 slash points for effort and getting the right character and show


this.mess = abs(sin(times#))
MarcoBruti
12
Years of Service
User Offline
Joined: 20th Nov 2011
Location: Caput Mundi
Posted: 19th Sep 2012 11:33
@bjadams: I am particularly goot at not explaining myself. As you can understand, English is not my mother language. I hardly understand much of what Irongiant writes, it seems written in a sort of US slang that guys like me, who studied English at school and practice a little at work, dont' understand.
Quote: "so people who code games in c++ are mad? then i guess that a good part of the gaming industry has been mad for years! "

I am not so stupid to say that at the heart of a complex software system as a commercial game, there is not C++. And below there is Assembler, and below there is machine code, and below there is microcode, and below there are integrated circuits...and stop
If Nintendo or EA would code their games in C++ FROM SCRATCH, i.e. coding each line, well, they would need seriously a doctor.
For sure they use libraries and scripting tools/languages written in C++ (I agree) to create their games. Otherwise development time would be enormous. Consider that I programmed in a lot a languages, I started programming in C in late '80s when an IBM guy told me (textual words) that C was not the language to consider, but PL/AS, PL/1, etc Of ocurse I wondered at that time, basing on the fact that C was at the earth of UNIX, that IBM supported a similar position (well, mainframe business may be one reason). Then, in 1996 I started working for IBM Italy as a full-time employee, and I become for some months a Java expert/Evangelist (when there was AWT and Event Model 1.0). This to say that I know about things I write, if not in details, at least as concepts.
About Irongiant, he is discussing the validity of OOP, when in IT, Object Modelling and Patterns (see UML growth) are used everywhere everytime especially for code re-usability. For sure he is very smart, but we have to establish a serious talk on facts, not opinions.
Returning to AppGameKit, the tricks from Ancient Lady about UDT parameter passing are interesting, but only a weak palliative. References are the key to pass an UDT, modify it and return to the caller.
Moreover, could you do a "return UDT"? I do not think so.
I repeat, for the 1000th time, that language should be improved. TGC is free to do it or not, as we are free to stick on AppGameKit or not. I think that I'll remain sticked to AppGameKit, even without language improvements, but hopes never die
JimHawkins
14
Years of Service
User Offline
Joined: 26th Jul 2009
Location: Hull - UK
Posted: 19th Sep 2012 11:55
I'm somewhat reminded of the early Amiga DevCons. Long into the night beer-fuelled arguments would rage between those who thought games could only be coded using assembler and those who used the new-fangled C language.

Unfortunately for the metal-bashers, every new Amiga used a new 68xxx processor, updates to the Copper and other support chips, etc. The net result was that they spent half their time writing conditional macros, and eventually gave up and moved to C - with occasional tiny patches of highly-tuned assembler. This became even more sensible with the introduction of hard-disks, as games moved away from simply splatting thousands of triangles onto the video hardware and became more content-based - a situation which became even greater with CDTV and CD32.

ALL modern or updated computer languages are Object-Orientated. Why? Because they make non-trivial programs easier to write and (crucially) debug. Rejecting this is to reject all the discoveries and advances in computer science of the last 40 years.

So my little parable is this: there are two hungry men in a rabbit-warren. The first runs around for five hours chasing rabbits and eventually captures one scrawny slow specimen. The second man takes out a shotgun and shoots half a dozen big plump bunnies. His family will eat well tonight. "Hey!" he shouts to the other man, "Want to use my gun?"

"No way," says the first man. "I've always done it like this."

So if you're going to be a procedural purist, maybe using AppGameKit at all is cheating. Perhaps even OpenGL or DirectX. These are like Classes - they encapsulate operations and provide an abstraction layer over the hardware. Naughty.

-- Jim DO IT FASTER, EASIER AND BETTER WITH AppGameKit FOR PASCAL
JimHawkins
14
Years of Service
User Offline
Joined: 26th Jul 2009
Location: Hull - UK
Posted: 19th Sep 2012 12:13
@Marco - You explain yourself better than many. Your English is very good. And what you say always makes sense.

It would be a shame if people learning to program were influenced into bad practice by the unsupported opinions of a few.

-- 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: 19th Sep 2012 12:27
Ok, let's not get personal here. Everyone is entitled to their opinion and IronGiant is included in that. Commenting on people's intelligence is a little unfair considering this argument has been had for years among far more intelligent people than most of us.

The only thing I really know about programming is that we all do it differently and there will always be better and worse ways to do certain operations in certain languages.

I see both sides as having a pretty valid point here. I loved using OOP concepts in C# and also love the simplicity (yes simplicity) of procedural code too. I would like to see OOP possible a little more in the language in so far as being able to pass and return UDT's as well as being able to declare arrays and UDT's within UDT's but some of these may just be iimpossible to convert into all of the native languages AppGameKit Basic needs to support.

Let's stick to the facts:
Some users like to use OOP
Some users prefer not to use OOP
If OOP concepts such as those mentioned were implemented both could be happy

I am flying the banner for including as the more ways of achieving a goal there are the better.

Let's stick to the purpose of this thread and not get personal like I already said.


this.mess = abs(sin(times#))
Mobiius
Valued Member
21
Years of Service
User Offline
Joined: 27th Feb 2003
Location: The Cold North
Posted: 19th Sep 2012 12:38
I say include OOP, but make it optional, just like OOP is optional in C++.

As for whether or not to buy AppGameKit, I say yes. "Features" aside, it's still a great language, and makes deploying to multiple platforms very easy. (In comparison to other mobile development suites.)

I live for video games! (And beers, and football, and cars!)
See what I live for here: [url]http:\\www.TeamDefiant.co.uk[/url]
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 19th Sep 2012 15:20
Marco, my mother language is not English so you are not alone.

To develop on Nintendo you can either use the official Nintendo NitroSDK or the opensource devPROkit toolset.

Both are C++. You don't use any intermediate scripting.
IronGiant
AGK Bronze Backer
12
Years of Service
User Offline
Joined: 27th Feb 2012
Location: the great state of madness
Posted: 19th Sep 2012 19:54
Jetstrike, Jetstrike AGA, Basejumpers, Vahalla and more, all written in Amos basic, All for the Amiga, and all commercial games.

Not one bit of OOP used, neither was there in most Amiga C's. And I agree, machine language is hard, why only some of us can do it, jk

As for OOP bein added, hey, I have no problem with that, just dont lose the Basic like syntax aspect of it all, and as for adding new UDT components, go for it, I'm sure I'll find a use for them.

See I feel theres a reason Lee and the rest of his crew first created AppGameKit in Basic, because they wanted to program games in the Easiest language ever created. Basic !

They first made AppGameKit as their own tool remember, they could have made it Java Like, the way Monkey did, they didnt, because I believe they wanted to program in Basic, and so do I.

If You Dont Like Basic for cell phone development?, theres always C for the Iphone, and Java for the Droid, C++ for the PC, Not sure what Mac people use these days?(C?), plenty of libraries to get you on your way. and classes out the butthole. so go for it.

We had this same argument on Purebasics forum. thank god he (Fred) was smart enough to listen to the Basic users also, I mean it is called PureBasic, Not PureJava,

SO I dont like Basic because I cant use Java, or Javascript, or AS3, or C#, I know something of all these languages, I have to, its my job. But when I can , I prefer Basic.

And if the creation of AppGameKit is any example, so do Lee and the rest of TGC


. Nuff said, again!!

It's Bird! , It's Plane!, No its a rocket powered Squirrel holding some acorns and a smile!
JimHawkins
14
Years of Service
User Offline
Joined: 26th Jul 2009
Location: Hull - UK
Posted: 19th Sep 2012 19:58
The AppGameKit engine itself is written using C++

I rest my case!

-- Jim DO IT FASTER, EASIER AND BETTER WITH AppGameKit FOR PASCAL
IronGiant
AGK Bronze Backer
12
Years of Service
User Offline
Joined: 27th Feb 2012
Location: the great state of madness
Posted: 19th Sep 2012 20:07
yea, then why didnt they just program games in C++, they didnt have to write AppGameKit Basic, they already had a C++ IDE, all the libraries I suppose.

They did it because once you write the Basic language in C++, its far easier to write the game, worry about your in game logic, and not fight with classes and constructors, and methods, and all that implies.

You can make your little Class point till it pokes you in the eye, you'll never convince me its a better way to make games, maybe IDE's and O.S's because Basic would be too slow, but for games, Basic is the bees knees.

It's Bird! , It's Plane!, No its a rocket powered Squirrel holding some acorns and a smile!
IronGiant
AGK Bronze Backer
12
Years of Service
User Offline
Joined: 27th Feb 2012
Location: the great state of madness
Posted: 19th Sep 2012 20:32
Oh one last note I forgot, wanna know the power of the Basic Language when applied the right way?, the IDE for PureBasic, is written in Purebasic. And look at DarkBasic Pro, you can make 3D games almost by thinkin about it, now thats power!

Now excuse me, Tron and I have to settle the grid down. Programs running amok .Something about a cartoon making fun of the MCP?

It's Bird! , It's Plane!, No its a rocket powered Squirrel holding some acorns and a smile!
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 19th Sep 2012 21:18
they did the basic ide because they wanted to attract their current dbpro userbase. if their was no basic ide only few people like me would have bought agk
JimHawkins
14
Years of Service
User Offline
Joined: 26th Jul 2009
Location: Hull - UK
Posted: 19th Sep 2012 21:26
I'm getting a little bored with this - but I'd like to point out that the PureBasic documentation has about a million references to Objects, uses the dreaded word "Create" rather a lot, and even has some simple garbage-collection. It has enumerated types, pointers, extensible structures, linked-lists and a whole lot more.

In other words, it isn't basic Basic - it has been extended to provide semantic goodies.

Which is what some of us were suggesting.

-- Jim DO IT FASTER, EASIER AND BETTER WITH AppGameKit FOR PASCAL
IronGiant
AGK Bronze Backer
12
Years of Service
User Offline
Joined: 27th Feb 2012
Location: the great state of madness
Posted: 19th Sep 2012 21:52
All I said was dont use Class calls, and the old," you have to recreate code in basic to do anything" line used to defend classes is pure bull, once you make a procedure, its made , at the beginning of code generation by whatever compiler is involved.

Classes are created and destroyed all thru out the life of a program. So how is that not regeneration of code?

I have never once had to recode a program for any system I have made, any more than I would have to in C++ or any other language, thats what libraries are for.. And libraries make any language better, never argued against that.

youre the one that kept insisting this become C++ or Pascal, they already exist, even within AppGameKit tier 2, All I said was I want Tier 1 to retain its basic like feel.

And I know what Purebasic has in it, I use it....
And its still Basic, No constructors, No Class=new class.class; // bull

and I like using AppGameKit just as well, the fact I can get an Idea, pop in a little code, and see it happens right away, without a long compile time appeals to me, I Also came here because of its resemblance to Basic ,

And I never said dont add link lists, or structures, apparently you have only been reading half of what I post!
Sorry my jokes side tracked you, jk

Data manipulation is within all languages. As I stated before, its all numbers to the processor, it doesnt care how it gets there, but I do!.

Todays Basic aint your momma's Basic, its a whole new breed of cool, and is what I hope AppGameKit stays and becomes more of.

so yea, this conversation is over, I think we highjacked this Post enough

It's Bird! , It's Plane!, No its a rocket powered Squirrel holding some acorns and a smile!
JimHawkins
14
Years of Service
User Offline
Joined: 26th Jul 2009
Location: Hull - UK
Posted: 20th Sep 2012 01:54
I can't be bothered any more, and share Marco's lack of understanding, despite the fact that I'm English and have an English degree. So I'm signing out of this discussion before I get seriously cross.

-- Jim DO IT FASTER, EASIER AND BETTER WITH AppGameKit FOR PASCAL
MarcoBruti
12
Years of Service
User Offline
Joined: 20th Nov 2011
Location: Caput Mundi
Posted: 20th Sep 2012 13:44
I think that we are speaking different languages, but not US English, UK English or Italian, but one speaks Chinese, another one speaks Indi, another one some Africa Tutsi dialect and the last one ancient greek. So there is no way to understand each other. I ask the MOD to lock this post, there is no need to continue, we lose time while we could code, work, have some sports or, the luckiest have some fun with a California girl
baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 20th Sep 2012 13:48
There's no need to lock this thread, just stick to the topic. If it's been answered (which I would say it has) then leave it at that and everybody is happy. There are often people who just rub each other up the wrong way and this is one of those occasions.

Does anyone have anything to say on the original topic? If this does press on I'll lock my first thread here as it is just repetition of the same off topic 'argument' at the moment.


this.mess = abs(sin(times#))
Hodgey
14
Years of Service
User Offline
Joined: 10th Oct 2009
Location: Australia
Posted: 20th Sep 2012 14:16
@IronGiant
Quote: "All I said was I want Tier 1 to retain its basic like feel. "

I think TGC want that too.

I've only read a little bit of the conversation but here's my two cents anyway. I think we've been pretty lucky that TGC have supplied three different languages to use AppGameKit with, BASIC, C++ and Pascal. Choosing one of these three pretty much covers what everyone wants in a language. BASIC for its simplicity, C++ for it's OOP and Pascal for its...availability for those who want it (I've never programmed in Pascal so have no idea of its advantages). So hats off to TGC for what they've done so far.

Remember: "If there's a will, there's a way" - Donkey.

gbison
13
Years of Service
User Offline
Joined: 15th Dec 2010
Location: USA
Posted: 20th Sep 2012 18:55
Finally made my way back with coffee yet again

Looks like you guys have been busy and even a little flamey(is that a word??) which I didn't want to happen but sometimes we are strong and persistent in what we believe and rightfully so. Does that make it law, not by any means but it does make for great debate

This topic has been on and off track obviously which is par for the course for anything worth talking about I guess but honestly in a sense even though some are biased to one side or another, I am not. I think you all to some extent make valid points. To that end maybe it might be justified if baxlash or someone could create a running list of features talked about within this topic, since it appears to be of great debate and conversation maybe in some fashion there is a consensus among us/those for features we would wish for TGC to consider in the language itself. I guess my view here is if we do not speak the concerns to them about its evolution then what should we expect and/or why should we complain?

In the end they will do what they will do, but maybe we can help point them in the right direction if you believe AppGameKit is lacking in some fashion currently. I would suggest like I said a consensus based list of features that all would like to see.

To that end, Ill say for me, expanding upon the UDT's is of great importance. Does it need to go completely OOP? Honestly, doesn't matter just keep with the Basic roots as best you can syntactically. Alot choose AppGameKit because they love BASIC, I program in C most of the day and still favor basic because I almost feel relaxed to some degree and I think others share that mentality. Is Basic the mother of game programming languages, I'm sure that's a controversial topic but in my world no, absolutely not but its fun!

Do companies like Bioware, Bethesda or UBISoft live by code in C++? In short the answer is yes, but not like you might think. It was mentioned by one person they didn't think these companies starred at a flashing cursor in their IDE all day long dreaming of structs and classes in their sleep. Truth is they don't, they build tool-sets to work from to increase efficiency and workflow. This is how engines are born....(Consider Crytek, UDK, Source and others) These engines are all born of a collaboration with in the company to find better/faster/efficient ways of making their games as quickly as possible with minimal costs. Will engines like that ever be built in Basic.....you be the judge Could hobbiest build their own engines, sure you can on the smaller scale but their are many things that would help you do that like OOP. For us, its in our best interest to find a genre then construct an engine for our own use to handle that genre so that we can push games out faster. So there are ups and downs to everything, but at the end of the day, its all a matter of choice and preference.

"The greatest trick the devil ever pulled, was to convince the world he didn't exist."
IronGiant
AGK Bronze Backer
12
Years of Service
User Offline
Joined: 27th Feb 2012
Location: the great state of madness
Posted: 20th Sep 2012 19:13
To Hodgey, back ta ya with " I'm a Donkey ON the EDGE!!" lol, nice donkey quote there bud.

To Gibby, spoken eloquently. Maybe if I hadnt been lifting weights before I joined the forum yesterday and filled my brain up with so much testosterone and blood I could have said what I meant as well as you have , good show.

Oh and so you all know, I'm 20 Miles from Pittsburgh, think Steeler fan, I live in the country though, think Farm boy, and I love to learn things and do stuff, like repair houses, do roofing, and help with car repairs along with watching anything on science related topics and programming of course, think Doc Savage, lol

and I have no hard feelings towards James, seems like a nice guy, ( just I always have to be right , jk,)

peace out ya all!

and happy AppGameKit motoring BEEP BEEP!

It's Bird! , It's Plane!, No its a rocket powered Squirrel holding some acorns and a smile!
baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 20th Sep 2012 20:38
gbison, you can report issues and make feature requests here: http://code.google.com/p/agk/issues/list


this.mess = abs(sin(times#))
gbison
13
Years of Service
User Offline
Joined: 15th Dec 2010
Location: USA
Posted: 20th Sep 2012 21:01
Quote: "gbison, you can report issues and make feature requests here: http://code.google.com/p/agk/issues/list"


Hahahah well I'm behind the times huh, didn't know it existed.

Appreciate the link friend...

"The greatest trick the devil ever pulled, was to convince the world he didn't exist."
Ancient Lady
Valued Member
20
Years of Service
User Offline
Joined: 17th Mar 2004
Location: Anchorage, Alaska, USA
Posted: 20th Sep 2012 21:08
gbison, please preface the title in any feature request with 'Request' so that us poor AppGameKit Community Testers know which ones we can ignore (we are not involved with feature requests).

Thank you.

Cheers,
Ancient Lady
AGK Community Tester
gbison
13
Years of Service
User Offline
Joined: 15th Dec 2010
Location: USA
Posted: 20th Sep 2012 22:42
Quote: "gbison, please preface the title in any feature request with 'Request' so that us poor AppGameKit Community Testers know which ones we can ignore (we are not involved with feature requests)."


Will do!

"The greatest trick the devil ever pulled, was to convince the world he didn't exist."
MarcoBruti
12
Years of Service
User Offline
Joined: 20th Nov 2011
Location: Caput Mundi
Posted: 21st Sep 2012 00:10
Quote: "Do companies like Bioware, Bethesda or UBISoft live by code in C++? In short the answer is yes, but not like you might think. It was mentioned by one person they didn't think these companies starred at a flashing cursor in their IDE all day long dreaming of structs and classes in their sleep. Truth is they don't, they build tool-sets to work from to increase efficiency and workflow. "

This is exactly what I meant. I am not in the commercial gaming software business, I am simply an hobbyst (although with a strong experience), but for sure at EA developers do not start with

as we hobbysts often do.
Mobiius
Valued Member
21
Years of Service
User Offline
Joined: 27th Feb 2003
Location: The Cold North
Posted: 21st Sep 2012 00:20
They will start with that when creating new game engines from scratch. But granted, they will utilise code reuse. (I.E. copy & paste) 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]
gbison
13
Years of Service
User Offline
Joined: 15th Dec 2010
Location: USA
Posted: 21st Sep 2012 04:23 Edited at: 21st Sep 2012 04:23
Quote: "(I.E. copy & paste) lol"


Hahahah Copy and Paste FTW!

"The greatest trick the devil ever pulled, was to convince the world he didn't exist."

Login to post a reply

Server time is: 2024-05-18 08:28:27
Your offset time is: 2024-05-18 08:28:27